xiaoyong931011
2021-07-15 9e519861b32d4ee673b2493af8ce27c6184c3f1c
202107015
8 files added
7 files modified
524 ■■■■■ changed files
gc-user/src/main/java/com/xzx/gc/user/controller/AdminDistribController.java 65 ●●●●● patch | view | raw | blame | history
gc-user/src/main/java/com/xzx/gc/user/dto/DistribDataListDto.java 36 ●●●●● patch | view | raw | blame | history
gc-user/src/main/java/com/xzx/gc/user/dto/DistribListDto.java 2 ●●●●● patch | view | raw | blame | history
gc-user/src/main/java/com/xzx/gc/user/dto/ProhibitDistribDto.java 14 ●●●●● patch | view | raw | blame | history
gc-user/src/main/java/com/xzx/gc/user/dto/UpdateSettingDto.java 2 ●●● patch | view | raw | blame | history
gc-user/src/main/java/com/xzx/gc/user/dto/UserHeadInfoListDto.java 21 ●●●●● patch | view | raw | blame | history
gc-user/src/main/java/com/xzx/gc/user/dto/ViewDistribInfoDto.java 11 ●●●●● patch | view | raw | blame | history
gc-user/src/main/java/com/xzx/gc/user/mapper/AccountMapper.java 15 ●●●● patch | view | raw | blame | history
gc-user/src/main/java/com/xzx/gc/user/service/DistribService.java 109 ●●●● patch | view | raw | blame | history
gc-user/src/main/java/com/xzx/gc/user/vo/DistribDataListVo.java 43 ●●●●● patch | view | raw | blame | history
gc-user/src/main/java/com/xzx/gc/user/vo/OrderItemsVo.java 34 ●●●●● patch | view | raw | blame | history
gc-user/src/main/java/com/xzx/gc/user/vo/UserHeadInfoVo.java 28 ●●●●● patch | view | raw | blame | history
gc-user/src/main/java/com/xzx/gc/user/vo/ViewDistribInfoVo.java 46 ●●●●● patch | view | raw | blame | history
gc-user/src/main/java/com/xzx/gc/user/vo/ViewSettingVo.java 2 ●●● patch | view | raw | blame | history
gc-user/src/main/resources/mapper/user/AccountMapper.xml 96 ●●●●● patch | view | raw | blame | history
gc-user/src/main/java/com/xzx/gc/user/controller/AdminDistribController.java
@@ -12,9 +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 com.xzx.gc.user.vo.*;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
@@ -126,6 +124,67 @@
        return JsonResult.success(distribService.distribInfoList(distribInfoListDto));
    }
    /**
     * 查看团长信息详情-个人信息
     */
    @PostMapping(Constants.ADMIN_VIEW_PREFIX + "/distrib/viewDistribInfo.json")
    @ApiResponses({@ApiResponse( code = 200, message = "success", response = ViewDistribInfoVo.class)})
    @ApiOperation(value="团长列表-个人信息详情", notes="test: 仅0有正确返回")
    public JsonResult<ViewDistribInfoVo> viewDistribInfo(@RequestBody ViewDistribInfoDto viewDistribInfoDto) {
        String id = viewDistribInfoDto.getId();
        AccountInfo accountInfo = accountMapper.selectByPrimaryKey(id);
        if(ObjectUtil.isEmpty(accountInfo)){
            return JsonResult.failMessage("账户不存在!");
        }
        ViewDistribInfoVo viewDistribInfoVo = distribService.viewDistribInfo(id);
        return JsonResult.success(viewDistribInfoVo);
    }
    @ApiOperation(value = "团长列表-团队信息")
    @ApiResponses(
            @ApiResponse(code = 200, message = "success", response = UserHeadInfoVo.class)
    )
    @PostMapping(value = Constants.ADMIN_VIEW_PREFIX + "/distrib/userHeadInfoList.json")
    public JsonResult<Map<String, Object>> userHeadInfoList(@RequestBody UserHeadInfoListDto userHeadInfoListDto) {
        return JsonResult.success(distribService.userHeadInfoList(userHeadInfoListDto));
    }
    @ApiOperation(value = "团长列表-订单详情")
    @ApiResponses(
            @ApiResponse(code = 200, message = "success", response = OrderItemsVo.class)
    )
    @PostMapping(value = Constants.ADMIN_VIEW_PREFIX + "/distrib/orderItemsList.json")
    public JsonResult<Map<String, Object>> orderItemsList(@RequestBody UserHeadInfoListDto userHeadInfoListDto) {
        return JsonResult.success(distribService.orderItemsList(userHeadInfoListDto));
    }
    /**
     * 启用禁用团长
     */
    @PostMapping(Constants.ADMIN_VIEW_PREFIX + "/distrib/prohibitDistrib.json")
    @ApiOperation(value="分銷系統管理--启用禁用团长", notes="test: 仅0有正确返回")
    public JsonResult prohibitDistrib(@RequestBody ProhibitDistribDto model, HttpServletRequest request) {
        String id = model.getId();
        AccountInfo accountInfo = accountMapper.selectByPrimaryKey(id);
        if(ObjectUtil.isEmpty(accountInfo)){
            return JsonResult.failMessage("账户不存在!");
        }
        distribService.prohibitDistrib(model);
        OperationAppLog build = OperationAppLog.builder().appPrograme(CommonEnum.后台.getValue()).opreateName(getAdminName(request))
                .methodName(Constants.USER_MODUL_NAME).operateAction("分銷系統管理--启用禁用团长-"+id).build();
        mqUtil.sendApp(build);
        return  JsonResult.success("操作成功!");
    }
    @ApiOperation(value = "团长数据")
    @ApiResponses(
            @ApiResponse(code = 200, message = "success", response = DistribDataListVo.class)
    )
    @PostMapping(value = Constants.ADMIN_VIEW_PREFIX + "/distrib/distribDataList.json")
    public JsonResult<Map<String, Object>> distribDataList(@RequestBody DistribDataListDto distribDataListDto) {
        return JsonResult.success(distribService.distribDataList(distribDataListDto));
    }
}
gc-user/src/main/java/com/xzx/gc/user/dto/DistribDataListDto.java
New file
@@ -0,0 +1,36 @@
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 = "DistribDataListDto", description = "加入团长参数接收类")
public class DistribDataListDto {
    @ApiModelProperty(value = "第几页", required = true)
    private int page;
    @ApiModelProperty(value = "每一页数量", required = true)
    private int limit;
    @ApiModelProperty(value = "查询字段")
    private String queryCol;
    @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(hidden = true)
    private String name;
    @ApiModelProperty(hidden = true)
    private String Phone;
}
gc-user/src/main/java/com/xzx/gc/user/dto/DistribListDto.java
@@ -17,7 +17,9 @@
    @ApiModelProperty(value = "查询字段")
    private String queryCol;
    @ApiModelProperty(hidden = true)
    private String name;
    @ApiModelProperty(hidden = true)
    private String Phone;
}
gc-user/src/main/java/com/xzx/gc/user/dto/ProhibitDistribDto.java
New file
@@ -0,0 +1,14 @@
package com.xzx.gc.user.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class ProhibitDistribDto {
    @ApiModelProperty(required=true)
    private String Id;
    @ApiModelProperty(value ="是否冻结 0:未冻结,1:冻结 " ,required=true)
    private Integer status;
}
gc-user/src/main/java/com/xzx/gc/user/dto/UpdateSettingDto.java
@@ -23,7 +23,7 @@
    //团员完成(FinishOrderNum)单后,团员每完成一单团长获得(pointReward)积分:
    @ApiModelProperty(value = "团员完成(FinishOrderNum)单后,团员每完成一单团长获得(pointReward)积分:")
    private Integer finishOrderNum;
//    private Integer finishOrderNum;
    private Integer pointReward;
    @ApiModelProperty("0:不启用,1:启用")
gc-user/src/main/java/com/xzx/gc/user/dto/UserHeadInfoListDto.java
New file
@@ -0,0 +1,21 @@
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 = "UserHeadInfoListDto", description = "参数接收类")
public class UserHeadInfoListDto {
    private String id;
    @ApiModelProperty(value="第几页",required=true)
    private int page;
    @ApiModelProperty(value="每一页数量",required=true)
    private int limit;
}
gc-user/src/main/java/com/xzx/gc/user/dto/ViewDistribInfoDto.java
New file
@@ -0,0 +1,11 @@
package com.xzx.gc.user.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class ViewDistribInfoDto {
    @ApiModelProperty("id")
    private String id;
}
gc-user/src/main/java/com/xzx/gc/user/mapper/AccountMapper.java
@@ -1,14 +1,15 @@
package com.xzx.gc.user.mapper;
import com.xzx.gc.entity.AccountInfo;
import com.xzx.gc.entity.JhyOrderItems;
import com.xzx.gc.entity.OrderInfo;
import com.xzx.gc.entity.ScoreDetails;
import com.xzx.gc.model.admin.AccountMoneyModel;
import com.xzx.gc.model.admin.UserAccountModel;
import com.xzx.gc.user.dto.DistribDataListDto;
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.user.vo.*;
import com.xzx.gc.util.GcMapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
@@ -52,5 +53,15 @@
    List<DistribListVo> selectDsitribListByQueryCol(@Param("record")DistribListDto distribListDto);
    List<DistribInfoListVo> selectDsitribInfoListByQueryCol(@Param("record")DistribInfoListDto distribInfoListDto);
    ViewDistribInfoVo selectDistribByAccountId(@Param("id")String id);
    List<UserHeadInfoVo> selectUserHeadInfoByAccountId(@Param("id")String id);
    List<OrderItemsVo> selectOrderItemsByUserId(@Param("userId")String userId);
    List<JhyOrderItems> selectOrderById(@Param("orderId")Long orderId);
    List<DistribDataListVo> distribDataList(DistribDataListDto distribDataListDto);
}
gc-user/src/main/java/com/xzx/gc/user/service/DistribService.java
@@ -8,19 +8,12 @@
import com.github.pagehelper.PageInfo;
import com.xzx.gc.common.exception.RestException;
import com.xzx.gc.common.utils.StringUtils;
import com.xzx.gc.entity.AccountInfo;
import com.xzx.gc.entity.SysMessage;
import com.xzx.gc.entity.UserHeadRelate;
import com.xzx.gc.entity.UserShareInfo;
import com.xzx.gc.user.dto.HeadProfitLitDto;
import com.xzx.gc.user.dto.HeadTeamDto;
import com.xzx.gc.entity.*;
import com.xzx.gc.user.dto.*;
import com.xzx.gc.user.mapper.*;
import com.xzx.gc.user.vo.HeadInfoVo;
import com.xzx.gc.user.vo.HeadProfitListVo;
import com.xzx.gc.user.vo.HeadTeamVo;
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;
@@ -28,9 +21,7 @@
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 org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -71,7 +62,7 @@
            viewSettingVo.setOrderNumFrist(0);
            viewSettingVo.setRegularPoint(0);
            viewSettingVo.setRegularMoneyPercent(BigDecimal.ZERO);
            viewSettingVo.setFinishOrderNum(0);
//            viewSettingVo.setFinishOrderNum(0);
            viewSettingVo.setPointReward(0);
            viewSettingVo.setStatus((short) 0);
        }else{
@@ -84,7 +75,7 @@
                    viewSettingVo.setOrderNumFrist(StrUtil.isEmpty(shareRatios.get(1))?0:Integer.parseInt(shareRatios.get(1)));
                    viewSettingVo.setRegularPoint(StrUtil.isEmpty(shareRatios.get(2))?0:Integer.parseInt(shareRatios.get(2)));
                    viewSettingVo.setRegularMoneyPercent(StrUtil.isEmpty(shareRatios.get(3))?BigDecimal.ZERO:new BigDecimal(shareRatios.get(3)));
                    viewSettingVo.setFinishOrderNum(StrUtil.isEmpty(shareRatios.get(4))?0:Integer.parseInt(shareRatios.get(4)));
//                    viewSettingVo.setFinishOrderNum(StrUtil.isEmpty(shareRatios.get(4))?0:Integer.parseInt(shareRatios.get(4)));
                    viewSettingVo.setPointReward(StrUtil.isEmpty(shareRatios.get(5))?0:Integer.parseInt(shareRatios.get(5)));
                    viewSettingVo.setStatus(redPaperRule.getStatus());
                }
@@ -94,7 +85,7 @@
                viewSettingVo.setOrderNumFrist(0);
                viewSettingVo.setRegularPoint(0);
                viewSettingVo.setRegularMoneyPercent(BigDecimal.ZERO);
                viewSettingVo.setFinishOrderNum(0);
//                viewSettingVo.setFinishOrderNum(0);
                viewSettingVo.setPointReward(0);
                viewSettingVo.setStatus((short) 0);
            }
@@ -174,8 +165,8 @@
        stringBuffer.append(regularPoint+",");
        BigDecimal regularMoneyPercent = ObjectUtil.isEmpty(model.getRegularMoneyPercent()) ? BigDecimal.ZERO : model.getRegularMoneyPercent();
        stringBuffer.append(regularMoneyPercent+",");
        int finishOrderNum = ObjectUtil.isEmpty(model.getFinishOrderNum()) ? 0 : model.getFinishOrderNum();
        stringBuffer.append(finishOrderNum+",");
//        int finishOrderNum = ObjectUtil.isEmpty(model.getFinishOrderNum()) ? 0 : model.getFinishOrderNum();
//        stringBuffer.append(finishOrderNum+",");
        int pointReward = ObjectUtil.isEmpty(model.getPointReward()) ? 0 : model.getPointReward();
        stringBuffer.append(pointReward);
        redPaperRule.setStatus((short) 0);
@@ -197,12 +188,12 @@
            stringBuffer.append(regularPoint+",");
            BigDecimal regularMoneyPercent = ObjectUtil.isEmpty(model.getRegularMoneyPercent()) ? BigDecimal.ZERO : model.getRegularMoneyPercent();
            stringBuffer.append(regularMoneyPercent+",");
            int finishOrderNum = ObjectUtil.isEmpty(model.getFinishOrderNum()) ? 0 : model.getFinishOrderNum();
            stringBuffer.append(finishOrderNum+",");
//            int finishOrderNum = ObjectUtil.isEmpty(model.getFinishOrderNum()) ? 0 : model.getFinishOrderNum();
//            stringBuffer.append(finishOrderNum+",");
            int pointReward = ObjectUtil.isEmpty(model.getPointReward()) ? 0 : model.getPointReward();
            stringBuffer.append(pointReward);
            redPaperRule.setStatus(model.getStatus());
            redPaperRule.setSharingProfitType("frist_reward,order_num_frist,regular_point,regular_money_percent,finish_order_num,point_reward");
            redPaperRule.setSharingProfitType("first_reward,order_num_first,regular_point,regular_money_percent,finish_order_num,point_reward");
            redPaperRule.setShareRatio(stringBuffer.toString());
            redPaperRuleMapper.updateByPrimaryKey(redPaperRule);
        }
@@ -262,4 +253,84 @@
        return data;
    }
    public ViewDistribInfoVo viewDistribInfo(String id) {
        //获取团长基本信息
        return accountMapper.selectDistribByAccountId(id);
    }
    public Map<String, Object> userHeadInfoList(UserHeadInfoListDto userHeadInfoListDto) {
        String id = userHeadInfoListDto.getId();
        AccountInfo accountInfo = accountMapper.selectByPrimaryKey(id);
        String userId = accountInfo.getUserId();
        PageHelper.startPage(userHeadInfoListDto.getPage(), userHeadInfoListDto.getLimit());
        List<UserHeadInfoVo> userHeadInfoVos = accountMapper.selectUserHeadInfoByAccountId(userId);
        if(CollUtil.isNotEmpty(userHeadInfoVos)){
            for(UserHeadInfoVo userHeadInfoVo : userHeadInfoVos){
                String nickname = userHeadInfoVo.getNickname();
                String decode = StringUtils.decode(nickname);
                userHeadInfoVo.setNickname(decode);
            }
        }
        PageInfo<UserHeadInfoVo> pageInfo = new PageInfo<>(userHeadInfoVos);
        Map<String, Object> data = new HashMap<>();
        int count = Convert.toInt(pageInfo.getTotal());
        data.put("data", userHeadInfoVos);
        data.put("count", count);
        data.put("code", 0);
        return data;
    }
    public Map<String, Object> orderItemsList(UserHeadInfoListDto userHeadInfoListDto) {
        String id = userHeadInfoListDto.getId();
        AccountInfo accountInfo = accountMapper.selectByPrimaryKey(id);
        String userId = accountInfo.getUserId();
        PageHelper.startPage(userHeadInfoListDto.getPage(), userHeadInfoListDto.getLimit());
        List<OrderItemsVo> orderItemsVos = accountMapper.selectOrderItemsByUserId(userId);
        if(CollUtil.isNotEmpty(orderItemsVos)){
            for(OrderItemsVo orderItemsVo : orderItemsVos){
                if(ObjectUtil.isNotEmpty(orderItemsVo)){
                    Long orderId = orderItemsVo.getOrderId();
                    List<JhyOrderItems> jhyOrderItems = accountMapper.selectOrderById(orderId);
                    if(CollUtil.isNotEmpty(jhyOrderItems)){
                        orderItemsVo.setOrderItems(jhyOrderItems);
                    }
                }
            }
        }
        PageInfo<OrderItemsVo> pageInfo = new PageInfo<>(orderItemsVos);
        Map<String, Object> data = new HashMap<>();
        int count = Convert.toInt(pageInfo.getTotal());
        data.put("data", orderItemsVos);
        data.put("count", count);
        data.put("code", 0);
        return data;
    }
    public void prohibitDistrib(ProhibitDistribDto model) {
        Integer status = model.getStatus();
        String id = model.getId();
        AccountInfo accountInfo = accountMapper.selectByPrimaryKey(id);
        accountInfo.setIsProhibit(status.toString());
        accountMapper.updateByPrimaryKey(accountInfo);
    }
    public Map<String, Object> distribDataList(DistribDataListDto distribDataListDto) {
        PageHelper.startPage(distribDataListDto.getPage(), distribDataListDto.getLimit());
        List<DistribDataListVo> distribDataListVos = accountMapper.distribDataList(distribDataListDto);
        if(CollUtil.isNotEmpty(distribDataListVos)){
            for(DistribDataListVo distribDataListVo : distribDataListVos){
                if(ObjectUtil.isNotEmpty(distribDataListVo)){
                }
            }
        }
        PageInfo<DistribDataListVo> pageInfo = new PageInfo<>(distribDataListVos);
        Map<String, Object> data = new HashMap<>();
        int count = Convert.toInt(pageInfo.getTotal());
        data.put("data", distribDataListVos);
        data.put("count", count);
        data.put("code", 0);
        return data;
    }
}
gc-user/src/main/java/com/xzx/gc/user/vo/DistribDataListVo.java
New file
@@ -0,0 +1,43 @@
package com.xzx.gc.user.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(value = "DistribDataListVo", description = "返回参数类")
public class DistribDataListVo {
    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 = "累计订单重量")
    private String kg;
    @ApiModelProperty(value = "累计家电数量")
    private String jdsl;
    @ApiModelProperty(value = "是否为团长 1-是 2-否")
    private String isHead;
}
gc-user/src/main/java/com/xzx/gc/user/vo/OrderItemsVo.java
New file
@@ -0,0 +1,34 @@
package com.xzx.gc.user.vo;
import com.xzx.gc.entity.JhyOrderItems;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.List;
@Data
@ApiModel(value = "OrderItemsVo", description = "团员订单")
public class OrderItemsVo {
    private Long orderId;
    @ApiModelProperty(value="订单编号")
    private String orderNo;
    @ApiModelProperty(value="回收品类")
    private List<JhyOrderItems> OrderItems;
    @ApiModelProperty(value="订单金额")
    private BigDecimal amount;
    @ApiModelProperty(value="积分")
    private BigDecimal score;
    @ApiModelProperty(value="积分收益")
    private BigDecimal scoreReward;
    @ApiModelProperty(value="环保币收益")
    private BigDecimal amountReward;
}
gc-user/src/main/java/com/xzx/gc/user/vo/UserHeadInfoVo.java
New file
@@ -0,0 +1,28 @@
package com.xzx.gc.user.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
@Data
@ApiModel(value = "UserHeadInfoVo", description = "团员名单")
public class UserHeadInfoVo {
    @ApiModelProperty(value="名称")
    private String nickname;
    @ApiModelProperty(value="联系方式")
    private String phone;
    @ApiModelProperty(value="绑定时间")
    private String createTime;
    @ApiModelProperty(value="累计金额")
    private BigDecimal amount;
    @ApiModelProperty(value="累计单数")
    private Integer orderCnt;
}
gc-user/src/main/java/com/xzx/gc/user/vo/ViewDistribInfoVo.java
New file
@@ -0,0 +1,46 @@
package com.xzx.gc.user.vo;
import com.xzx.gc.entity.JhyOrder;
import com.xzx.gc.entity.JhyOrderItems;
import com.xzx.gc.entity.UserHeadRelate;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.List;
@Data
@ApiModel(value = "ViewDistribInfoVo", description = "团长详情返回参数类")
public class ViewDistribInfoVo {
    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 Integer orderCnt;
    @ApiModelProperty(value = "环保币")
    private BigDecimal amount;
    @ApiModelProperty(value = "积分")
    private BigDecimal score;
//
//    @ApiModelProperty(value = "团员订单")
//    private List<OrderItemsVo> OrderItemsVos;
//
//    @ApiModelProperty(value = "团员名单")
//    private List<UserHeadInfoVo> userHeadInfos;
}
gc-user/src/main/java/com/xzx/gc/user/vo/ViewSettingVo.java
@@ -24,7 +24,7 @@
    //团员完成(FinishOrderNum)单后,团员每完成一单团长获得(pointReward)积分:
    @ApiModelProperty(value = "团员完成(FinishOrderNum)单后,团员每完成一单团长获得(pointReward)积分:")
    private Integer finishOrderNum;
//    private Integer finishOrderNum;
    private Integer pointReward;
    @ApiModelProperty("开关0:已经关闭,1:正常")
gc-user/src/main/resources/mapper/user/AccountMapper.xml
@@ -174,10 +174,98 @@
        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,
        (select IFNULL(count(1), 0) from xzx_user_head_relate where head_user_id = a.user_id ) cnt,
        (select IFNULL(count(1), 0) from xzx_user_head_details where head_user_id = a.user_id ) orderCnt,
        (select IFNULL(sum(amount), 0) from xzx_user_head_relate where head_user_id = a.user_id ) amount,
        (select IFNULL(sum(score), 0) from xzx_user_head_relate where head_user_id = a.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 &lt;= #{record.reserveTimeEnd}
            </if>
        </where>
         order by id desc
    </select>
    <select id="selectDistribByAccountId" resultType="com.xzx.gc.user.vo.ViewDistribInfoVo">
        SELECT
        a.account_id id,
        b.nick_name nickname,
        b.mobile_phone phone,
        b.regist_time registTime,
        (select IFNULL(count(1), 0) from xzx_user_head_relate where head_user_id = a.user_id ) cnt,
        (select IFNULL(count(1), 0) from xzx_user_head_details where head_user_id = a.user_id ) orderCnt,
        (select IFNULL(sum(amount), 0) from xzx_user_head_relate where head_user_id = a.user_id ) amount,
        (select IFNULL(sum(score), 0) from xzx_user_head_relate where head_user_id = a.user_id ) score
        FROM
        xzx_account_info a
        LEFT JOIN xzx_user_info b on a.user_id = b.user_id
        where a.account_id = #{id}
    </select>
    <select id="selectUserHeadInfoByAccountId" resultType="com.xzx.gc.user.vo.UserHeadInfoVo">
        SELECT
            b.nick_name nickname,
            b.mobile_phone phone,
            a.CREATED_TIME createTime,
            (select IFNULL(count(1), 0) from xzx_user_head_details where user_id = a.user_id and head_user_id = #{id}) orderCnt,
            (select IFNULL(sum(amount), 0) from xzx_user_head_details where user_id = a.user_id and head_user_id = #{id}) amount
        FROM
            xzx_user_head_relate a
                LEFT JOIN xzx_user_info b on a.user_id = b.user_id
        where a.head_user_id = #{id}
    </select>
    <select id="selectOrderItemsByUserId" resultType="com.xzx.gc.user.vo.OrderItemsVo">
        SELECT
            b.id orderId,
            a.order_no orderNo,
            a.score scoreReward,
            a.amount amountReward,
            sum(c.score) amount
        FROM
            xzx_user_head_details a
                LEFT JOIN xzx_jhy_order b on a.order_no = b.order_no
                LEFT JOIN xzx_jhy_order_items c on b.id=c.order_id
        where a.head_user_id = #{userId}
    </select>
    <select id="selectOrderById" resultType="com.xzx.gc.entity.JhyOrderItems">
        SELECT
               *
        FROM
            xzx_jhy_order_items a
        where a.order_id = #{orderId}
    </select>
    <select id="distribDataList" resultType="com.xzx.gc.user.vo.DistribDataListVo">
    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) cnt,
    (select IFNULL(count(1), 0) from xzx_user_head_details where head_user_id = a.user_id) orderCnt,
    (select IFNULL(sum(amount), 0) from xzx_user_head_relate where head_user_id = a.user_id) amount,
    (select IFNULL(sum(score), 0) from xzx_user_head_relate where head_user_id = a.user_id ) score,
        a.is_prohibit isProhibit
        FROM
        xzx_account_info a