xiaoyong931011
2021-07-16 d1068115eccec5ab657f3fcfd6750bb4028eda80
gc-user/src/main/java/com/xzx/gc/user/service/DistribService.java
@@ -23,6 +23,7 @@
import cn.hutool.core.util.StrUtil;
import com.xzx.gc.model.JsonResult;
import com.xzx.gc.user.mapper.RedPaperRuleMapper;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -37,6 +38,7 @@
import java.util.List;
import java.util.Map;
@Slf4j
@Service
@Transactional
public class DistribService {
@@ -76,7 +78,7 @@
                    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.setPointReward(StrUtil.isEmpty(shareRatios.get(5))?0:Integer.parseInt(shareRatios.get(5)));
                    viewSettingVo.setPointReward(StrUtil.isEmpty(shareRatios.get(4))?0:Integer.parseInt(shareRatios.get(4)));
                    viewSettingVo.setStatus(redPaperRule.getStatus());
                }
            }else{
@@ -95,6 +97,7 @@
    public void join(String headId, String userId) {
        log.info("#加入团队:{}, {}#", headId, userId);
        AccountInfo headInfo = accountMapper.selectOneByUserId(headId);
        if (AccountInfo.IS_HEAD_N.equals(headInfo.getIsHead())) {
            throw new RestException(-3, "不是团长");
@@ -110,6 +113,10 @@
        }
        AccountInfo accountInfo = accountMapper.selectOneByUserId(userId);
        if (AccountInfo.IS_HEAD_Y.equals(accountInfo.getIsHead())) {
            throw new RestException(-3, "团长不能加入团队");
        }
        UserShareInfo userShareInfo = userShareInfoMapper.selectByRegistPhone(accountInfo.getAccountName());
        if (userShareInfo != null) {
            throw new RestException(-3, "您已与推广员绑定, 无法加入");
@@ -130,7 +137,7 @@
        sysMessage.setMobilePhone(accountInfo.getAccountName());
        sysMessage.setMessageType("4");
        sysMessage.setMessageSubTypeName("团队消息");
        sysMessage.setMessage("手机号:" + accountInfo.getAccountName() + "的用户, 成功加入您的团队");
        sysMessage.setMessage("手机号:" + accountInfo.getAccountName().replaceAll("(\\w{3})\\w*(\\w{4})", "$1****$2") + "的用户, 成功加入您的团队");
        sysMessage.setFlag("2");
        sysMessageMapper.insert(sysMessage);
    }
@@ -174,7 +181,7 @@
        stringBuffer.append(pointReward);
        redPaperRule.setStatus((short) 0);
        redPaperRule.setRuleName("分销规则");
        redPaperRule.setSharingProfitType("frist_reward,order_num_frist,regular_point,regular_money_percent,finish_order_num,point_reward");
        redPaperRule.setSharingProfitType("frist_reward,order_num_frist,regular_point,regular_money_percent,point_reward");
        redPaperRule.setShareRatio(stringBuffer.toString());
        redPaperRuleMapper.insert(redPaperRule);
    }
@@ -196,7 +203,7 @@
            int pointReward = ObjectUtil.isEmpty(model.getPointReward()) ? 0 : model.getPointReward();
            stringBuffer.append(pointReward);
            redPaperRule.setStatus(model.getStatus());
            redPaperRule.setSharingProfitType("first_reward,order_num_first,regular_point,regular_money_percent,finish_order_num,point_reward");
            redPaperRule.setSharingProfitType("first_reward,order_num_first,regular_point,regular_money_percent,point_reward");
            redPaperRule.setShareRatio(stringBuffer.toString());
            redPaperRuleMapper.updateByPrimaryKey(redPaperRule);
        }
@@ -259,6 +266,11 @@
    public ViewDistribInfoVo viewDistribInfo(String id) {
        //获取团长基本信息
        ViewDistribInfoVo viewDistribInfoVo = accountMapper.selectDistribByAccountId(id);
        if(StrUtil.isNotEmpty(viewDistribInfoVo.getNickname())){
            String decode = StringUtils.decode(viewDistribInfoVo.getNickname());
            viewDistribInfoVo.setNickname(decode);
        }
        return accountMapper.selectDistribByAccountId(id);
    }
@@ -293,6 +305,9 @@
        if(CollUtil.isNotEmpty(orderItemsVos)){
            for(OrderItemsVo orderItemsVo : orderItemsVos){
                if(ObjectUtil.isNotEmpty(orderItemsVo)){
                    String nickname = orderItemsVo.getNickname();
                    String decode = StringUtils.decode(nickname);
                    orderItemsVo.setNickname(decode);
                    Long orderId = orderItemsVo.getOrderId();
                    List<JhyOrderItems> jhyOrderItems = accountMapper.selectOrderById(orderId);
                    if(CollUtil.isNotEmpty(jhyOrderItems)){
@@ -320,15 +335,23 @@
    public Map<String, Object> distribDataList(DistribDataListDto distribDataListDto) {
        if(StrUtil.isNotEmpty(distribDataListDto.getQueryCol())){
            String decode = StringUtils.encode(distribDataListDto.getQueryCol());
            distribDataListDto.setName(decode);
            distribDataListDto.setPhone(distribDataListDto.getQueryCol());
        }
        PageHelper.startPage(distribDataListDto.getPage(), distribDataListDto.getLimit());
        List<DistribDataListVo> distribDataListVos = accountMapper.distribDataList(distribDataListDto);
        if(CollUtil.isNotEmpty(distribDataListVos)){
            for(DistribDataListVo distribDataListVo : distribDataListVos){
                if(ObjectUtil.isNotEmpty(distribDataListVo)){
                    String nickname = distribDataListVo.getNickname();
                    String decode = StringUtils.decode(nickname);
                    distribDataListVo.setNickname(decode);
                    String id = distribDataListVo.getId();
                    String kg = accountMapper.selectOrderByHeadUserId(id);
                    String kg = accountMapper.selectOrderByHeadUserId(id,distribDataListDto);
                    distribDataListVo.setKg(kg);
                    String jdsl = accountMapper.selectJDSLByHeadUserId(id);
                    String jdsl = accountMapper.selectJDSLByHeadUserId(id,distribDataListDto);
                    distribDataListVo.setJdsl(jdsl);
                }
            }
@@ -345,4 +368,35 @@
    public DistribDataInfoVo distribDataInfo(DistribDataInfoDto distribDataInfoDto) {
        return accountMapper.selectDistribDataInfoVo();
    }
    public Map<String, Object> distribDataExport(ExportDistribDataListDto distribDataListDto) {
        if(StrUtil.isNotEmpty(distribDataListDto.getQueryCol())){
            String decode = StringUtils.encode(distribDataListDto.getQueryCol());
            distribDataListDto.setName(decode);
            distribDataListDto.setPhone(distribDataListDto.getQueryCol());
        }
        List<DistribDataListVo> distribDataListVos = accountMapper.distribDataExport(distribDataListDto);
        if(CollUtil.isNotEmpty(distribDataListVos)){
            for(DistribDataListVo distribDataListVo : distribDataListVos){
                if(ObjectUtil.isNotEmpty(distribDataListVo)){
                    String nickname = distribDataListVo.getNickname();
                    String decode = StringUtils.decode(nickname);
                    distribDataListVo.setNickname(decode);
                    String id = distribDataListVo.getId();
                    String kg = accountMapper.selectOrderExportByHeadUserId(id,distribDataListDto);
                    distribDataListVo.setKg(kg);
                    String jdsl = accountMapper.selectJDSLExportByHeadUserId(id,distribDataListDto);
                    distribDataListVo.setJdsl(jdsl);
                }
            }
        }
        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;
    }
}