gc-user/src/main/java/com/xzx/gc/user/controller/AdminDistribController.java | ●●●●● patch | view | raw | blame | history | |
gc-user/src/main/java/com/xzx/gc/user/dto/DistribInfoListDto.java | ●●●●● patch | view | raw | blame | history | |
gc-user/src/main/java/com/xzx/gc/user/mapper/AccountMapper.java | ●●●●● patch | view | raw | blame | history | |
gc-user/src/main/java/com/xzx/gc/user/service/DistribService.java | ●●●●● patch | view | raw | blame | history | |
gc-user/src/main/java/com/xzx/gc/user/vo/DistribInfoListVo.java | ●●●●● patch | view | raw | blame | history | |
gc-user/src/main/java/com/xzx/gc/user/vo/DistribListVo.java | ●●●●● patch | view | raw | blame | history | |
gc-user/src/main/resources/mapper/user/AccountMapper.xml | ●●●●● patch | view | raw | blame | history |
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)); } } gc-user/src/main/java/com/xzx/gc/user/dto/DistribInfoListDto.java
New file @@ -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; } 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); } 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; } } gc-user/src/main/java/com/xzx/gc/user/vo/DistribInfoListVo.java
New file @@ -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; } 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; 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>