From 92d840dca526881cf296a75d9af643618141a5b4 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Wed, 14 Jul 2021 16:51:28 +0800
Subject: [PATCH] 202107014
---
gc-user/src/main/java/com/xzx/gc/user/dto/DistribInfoListDto.java | 31 ++++++++++
gc-user/src/main/java/com/xzx/gc/user/service/DistribService.java | 30 ++++++++-
gc-user/src/main/resources/mapper/user/AccountMapper.xml | 37 ++++++++++++
gc-user/src/main/java/com/xzx/gc/user/vo/DistribListVo.java | 2
gc-user/src/main/java/com/xzx/gc/user/vo/DistribInfoListVo.java | 41 +++++++++++++
gc-user/src/main/java/com/xzx/gc/user/mapper/AccountMapper.java | 10 +--
gc-user/src/main/java/com/xzx/gc/user/controller/AdminDistribController.java | 12 +++
7 files changed, 150 insertions(+), 13 deletions(-)
diff --git a/gc-user/src/main/java/com/xzx/gc/user/controller/AdminDistribController.java b/gc-user/src/main/java/com/xzx/gc/user/controller/AdminDistribController.java
index 3f047aa..2c1bff9 100644
--- a/gc-user/src/main/java/com/xzx/gc/user/controller/AdminDistribController.java
+++ b/gc-user/src/main/java/com/xzx/gc/user/controller/AdminDistribController.java
@@ -12,6 +12,7 @@
import com.xzx.gc.user.mapper.AccountMapper;
import com.xzx.gc.user.mapper.RedPaperRuleMapper;
import com.xzx.gc.user.service.DistribService;
+import com.xzx.gc.user.vo.DistribInfoListVo;
import com.xzx.gc.user.vo.DistribListVo;
import com.xzx.gc.user.vo.ViewSettingVo;
import io.swagger.annotations.Api;
@@ -77,7 +78,7 @@
return JsonResult.success("操作成功!");
}
- @ApiOperation(value = "团长列表")
+ @ApiOperation(value = "符合条件待入选团长列表")
@ApiResponses(
@ApiResponse(code = 200, message = "success", response = DistribListVo.class)
)
@@ -116,6 +117,15 @@
return JsonResult.success("操作成功!");
}
+ @ApiOperation(value = "团长列表")
+ @ApiResponses(
+ @ApiResponse(code = 200, message = "success", response = DistribInfoListVo.class)
+ )
+ @PostMapping(value = Constants.ADMIN_VIEW_PREFIX + "/distrib/distribInfoList.json")
+ public JsonResult<Map<String, Object>> distribInfoList(@RequestBody DistribInfoListDto distribInfoListDto) {
+ return JsonResult.success(distribService.distribInfoList(distribInfoListDto));
+ }
+
}
diff --git a/gc-user/src/main/java/com/xzx/gc/user/dto/DistribInfoListDto.java b/gc-user/src/main/java/com/xzx/gc/user/dto/DistribInfoListDto.java
new file mode 100644
index 0000000..012e5a0
--- /dev/null
+++ b/gc-user/src/main/java/com/xzx/gc/user/dto/DistribInfoListDto.java
@@ -0,0 +1,31 @@
+package com.xzx.gc.user.dto;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+
+@Data
+@ApiModel(value = "DistribInfoListDto", description = "加入团长参数接收类")
+public class DistribInfoListDto {
+
+ private String name;
+
+ private String phone;
+
+ @JsonFormat(shape=JsonFormat.Shape.STRING,pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
+ @ApiModelProperty(value="开始时间")
+ private Date reserveTimeStart;
+
+ @JsonFormat(shape=JsonFormat.Shape.STRING,pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
+ @ApiModelProperty(value="结束时间")
+ private Date reserveTimeEnd;
+
+ @ApiModelProperty(value="第几页",required=true)
+ private int page;
+
+ @ApiModelProperty(value="每一页数量",required=true)
+ private int limit;
+}
diff --git a/gc-user/src/main/java/com/xzx/gc/user/mapper/AccountMapper.java b/gc-user/src/main/java/com/xzx/gc/user/mapper/AccountMapper.java
index 4fc4dd8..14236ae 100644
--- a/gc-user/src/main/java/com/xzx/gc/user/mapper/AccountMapper.java
+++ b/gc-user/src/main/java/com/xzx/gc/user/mapper/AccountMapper.java
@@ -3,21 +3,17 @@
import com.xzx.gc.entity.AccountInfo;
import com.xzx.gc.entity.OrderInfo;
import com.xzx.gc.entity.ScoreDetails;
-import com.xzx.gc.entity.UserInfo;
import com.xzx.gc.model.admin.AccountMoneyModel;
import com.xzx.gc.model.admin.UserAccountModel;
-import com.xzx.gc.model.user.AccountReq;
-import com.xzx.gc.model.user.AccountVo;
-import com.xzx.gc.model.user.UserInfoVo;
-import com.xzx.gc.model.user.UserReq;
+import com.xzx.gc.user.dto.DistribInfoListDto;
import com.xzx.gc.user.dto.DistribListDto;
+import com.xzx.gc.user.vo.DistribInfoListVo;
import com.xzx.gc.user.vo.DistribListVo;
import com.xzx.gc.util.GcMapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.List;
-import java.util.Map;
@Repository
public interface AccountMapper extends GcMapper<AccountInfo> {
@@ -54,5 +50,7 @@
AccountInfo selectOneByUserId(@Param("userId")String userId);
List<DistribListVo> selectDsitribListByQueryCol(@Param("record")DistribListDto distribListDto);
+
+ List<DistribInfoListVo> selectDsitribInfoListByQueryCol(@Param("record")DistribInfoListDto distribInfoListDto);
}
diff --git a/gc-user/src/main/java/com/xzx/gc/user/service/DistribService.java b/gc-user/src/main/java/com/xzx/gc/user/service/DistribService.java
index 42cad59..d8eeaed 100644
--- a/gc-user/src/main/java/com/xzx/gc/user/service/DistribService.java
+++ b/gc-user/src/main/java/com/xzx/gc/user/service/DistribService.java
@@ -13,21 +13,19 @@
import com.xzx.gc.entity.UserHeadRelate;
import com.xzx.gc.entity.UserShareInfo;
import com.xzx.gc.user.dto.AdddistribDto;
+import com.xzx.gc.user.dto.DistribInfoListDto;
import com.xzx.gc.user.dto.DistribListDto;
import com.xzx.gc.user.mapper.AccountMapper;
import com.xzx.gc.user.mapper.SysMessageMapper;
import com.xzx.gc.user.mapper.UserHeadRelateMapper;
import com.xzx.gc.user.mapper.UserShareInfoMapper;
-import com.xzx.gc.user.vo.DistribListVo;
-import com.xzx.gc.user.vo.HeadInfoVo;
+import com.xzx.gc.user.vo.*;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.xzx.gc.entity.RedPaperRule;
import com.xzx.gc.model.JsonResult;
import com.xzx.gc.user.dto.UpdateSettingDto;
import com.xzx.gc.user.mapper.RedPaperRuleMapper;
-import com.xzx.gc.user.vo.JhyInfoListVo;
-import com.xzx.gc.user.vo.ViewSettingVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -222,4 +220,28 @@
accountInfo.setIsHead(1);
accountMapper.updateByPrimaryKey(accountInfo);
}
+
+ public Map<String, Object> distribInfoList(DistribInfoListDto distribInfoListDto) {
+ PageHelper.startPage(distribInfoListDto.getPage(), distribInfoListDto.getLimit());
+ if(StrUtil.isNotEmpty(distribInfoListDto.getName())){
+ String decode = StringUtils.encode(distribInfoListDto.getName());
+ distribInfoListDto.setName(decode);
+ }
+ List<DistribInfoListVo> distribInfoListVos = accountMapper.selectDsitribInfoListByQueryCol(distribInfoListDto);
+ if(CollUtil.isNotEmpty(distribInfoListVos)){
+ for(DistribInfoListVo distribInfoListVo : distribInfoListVos){
+ String nickname = distribInfoListVo.getNickname();
+ String decode = StringUtils.decode(nickname);
+ distribInfoListVo.setNickname(decode);
+ }
+ }
+ PageInfo<DistribInfoListVo> pageInfo = new PageInfo<>(distribInfoListVos);
+ Map<String, Object> data = new HashMap<>();
+ int count = Convert.toInt(pageInfo.getTotal());
+ data.put("data", distribInfoListVos);
+ data.put("count", count);
+ data.put("code", 0);
+ return data;
+
+ }
}
diff --git a/gc-user/src/main/java/com/xzx/gc/user/vo/DistribInfoListVo.java b/gc-user/src/main/java/com/xzx/gc/user/vo/DistribInfoListVo.java
new file mode 100644
index 0000000..9de50a0
--- /dev/null
+++ b/gc-user/src/main/java/com/xzx/gc/user/vo/DistribInfoListVo.java
@@ -0,0 +1,41 @@
+package com.xzx.gc.user.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+@ApiModel(value = "DistribInfoListVo", description = "返回参数类")
+public class DistribInfoListVo {
+
+ private String id;
+
+ @ApiModelProperty(value = "名称")
+ private String nickname;
+
+ @ApiModelProperty(value = "手机号码")
+ private String phone;
+
+ @ApiModelProperty(value = "注册时间")
+ private String registTime;
+
+ @ApiModelProperty(value = "团员数量")
+ private Integer cnt;
+
+ @ApiModelProperty(value = "交易单数")
+ private String orderCnt;
+
+ @ApiModelProperty(value = "环保币")
+ private String amount;
+
+ @ApiModelProperty(value = "积分")
+ private String score;
+
+ @ApiModelProperty(value = "是否为团长 1-是 2-否")
+ private String isHead;
+
+ @ApiModelProperty(value = "是否禁用 0:未冻结,1:冻结")
+ private String isProhibit;
+
+
+}
diff --git a/gc-user/src/main/java/com/xzx/gc/user/vo/DistribListVo.java b/gc-user/src/main/java/com/xzx/gc/user/vo/DistribListVo.java
index 38d1e0e..1e2e6e9 100644
--- a/gc-user/src/main/java/com/xzx/gc/user/vo/DistribListVo.java
+++ b/gc-user/src/main/java/com/xzx/gc/user/vo/DistribListVo.java
@@ -5,7 +5,7 @@
import lombok.Data;
@Data
-@ApiModel(value = "DistribListVo", description = "团长返回参数类")
+@ApiModel(value = "DistribListVo", description = "返回参数类")
public class DistribListVo {
private String id;
diff --git a/gc-user/src/main/resources/mapper/user/AccountMapper.xml b/gc-user/src/main/resources/mapper/user/AccountMapper.xml
index 14f9d3d..cdb5525 100644
--- a/gc-user/src/main/resources/mapper/user/AccountMapper.xml
+++ b/gc-user/src/main/resources/mapper/user/AccountMapper.xml
@@ -161,10 +161,45 @@
1=1
<if test="record.queryCol != null and record.queryCol != ''">
and (b.nick_name like concat('%',#{record.name},'%')
- or mobile_phone like concat('%',#{record.phone},'%') )
+ or b.mobile_phone like concat('%',#{record.phone},'%') )
</if>
</where>
order by id desc
</select>
+ <select id="selectDsitribInfoListByQueryCol" resultType="com.xzx.gc.user.vo.DistribInfoListVo">
+ SELECT
+ a.account_id id,
+ b.nick_name nickname,
+ b.mobile_phone phone,
+ b.regist_time registTime,
+ a.is_head isHead,
+ (select IFNULL(count(1), 0) from xzx_user_head_relate where head_user_id = a.user_id GROUP BY head_user_id) cnt,
+ (select IFNULL(count(1), 0) from xzx_user_head_details where head_user_id = a.user_id GROUP BY head_user_id) orderCnt,
+ (select IFNULL(sum(amount), 0) from xzx_user_head_relate where head_user_id = a.user_id GROUP BY head_user_id) amount,
+ (select IFNULL(sum(score), 0) from xzx_user_head_relate where head_user_id = a.user_id GROUP BY head_user_id) score,
+ a.is_prohibit isProhibit
+ FROM
+ xzx_account_info a
+ LEFT JOIN xzx_user_info b on a.user_id = b.user_id
+ <where>
+ 1=1
+ and a.is_head = 1
+ <if test="record.name != null and record.name != ''">
+ and b.nick_name like concat('%',#{record.name},'%')
+ </if>
+ <if test="record.phone != null and record.phone != ''">
+ and b.mobile_phone like concat('%',#{record.phone},'%')
+ </if>
+ <if test="record.reserveTimeStart != null">
+ and b.regist_time >= #{record.reserveTimeStart}
+ </if>
+
+ <if test="record.reserveTimeEnd != null">
+ and b.regist_time <= #{record.reserveTimeEnd}
+ </if>
+ </where>
+ order by id desc
+ </select>
+
</mapper>
--
Gitblit v1.9.1