xiaoyong931011
2021-08-02 8269efac48716a328c12a4e836a4efb4a5f277d9
20210802
3 files added
2 files modified
159 ■■■■■ changed files
gc-user/src/main/java/com/xzx/gc/user/controller/AdminDistribController.java 37 ●●●●● patch | view | raw | blame | history
gc-user/src/main/java/com/xzx/gc/user/dto/UpdateScoreSetting.java 27 ●●●●● patch | view | raw | blame | history
gc-user/src/main/java/com/xzx/gc/user/dto/ViewScoreSettingDto.java 7 ●●●●● patch | view | raw | blame | history
gc-user/src/main/java/com/xzx/gc/user/service/DistribService.java 66 ●●●●● patch | view | raw | blame | history
gc-user/src/main/java/com/xzx/gc/user/vo/ViewScoreSettingVo.java 22 ●●●●● patch | view | raw | blame | history
gc-user/src/main/java/com/xzx/gc/user/controller/AdminDistribController.java
@@ -56,6 +56,43 @@
    private UserHeadRelateMapper userHeadRelateMapper;
    /**
     * 查看积分运行设置详情
     */
    @PostMapping(Constants.ADMIN_VIEW_PREFIX + "/distrib/scoreSetting.json")
    @ApiResponses({@ApiResponse( code = 200, message = "success", response = ViewScoreSettingVo.class)})
    @ApiOperation(value="运营管理-查看积分运行设置详情", notes="test: 仅0有正确返回")
    public JsonResult<ViewScoreSettingVo> viewScoreSetting(@RequestBody ViewScoreSettingDto viewScoreSettingDto) {
        ViewScoreSettingVo viewScoreSettingVo = distribService.viewScoreSetting("积分运行设置");
        return JsonResult.success(viewScoreSettingVo);
    }
    /**
     * 更新积分运行设置
     */
    @PostMapping(Constants.ADMIN_VIEW_PREFIX + "/distrib/updateScoreSetting.json")
    @ApiOperation(value="运营管理--更新积分运行设置", notes="test: 仅0有正确返回")
    public JsonResult updateScoreSetting(@RequestBody UpdateScoreSetting model, HttpServletRequest request) {
        RedPaperRule redPaperRule = redPaperRuleMapper.selectByRuleName("积分运行设置");
        if(ObjectUtil.isEmpty(redPaperRule)){
            distribService.addScoreSetting(model);
            OperationAppLog build = OperationAppLog.builder().appPrograme(CommonEnum.后台.getValue()).opreateName(getAdminName(request))
                    .methodName(Constants.USER_MODUL_NAME).operateAction("运营管理--新增积分运行设置").build();
            mqUtil.sendApp(build);
        }else{
            Integer id = model.getId();
            if(redPaperRule.getId() != id){
                return JsonResult.failMessage("规则不存在!");
            }
            distribService.updateScoreSetting(model);
            OperationAppLog build = OperationAppLog.builder().appPrograme(CommonEnum.后台.getValue()).opreateName(getAdminName(request))
                    .methodName(Constants.USER_MODUL_NAME).operateAction("运营管理--更新积分运行设置-" + model.getId()).build();
            mqUtil.sendApp(build);
        }
        return  JsonResult.success("操作成功!");
    }
    /**
     * 查看分銷系統设置详情
     */
    @PostMapping(Constants.ADMIN_VIEW_PREFIX + "/distrib/setting.json")
gc-user/src/main/java/com/xzx/gc/user/dto/UpdateScoreSetting.java
New file
@@ -0,0 +1,27 @@
package com.xzx.gc.user.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
@Data
public class UpdateScoreSetting {
    @ApiModelProperty(value = "Id,没有可以不传")
    private Integer id;
    @ApiModelProperty(value = "邀请新用户首次注册得(registerScore)积分/人 不限次数")
    private Integer registerScore;
    @ApiModelProperty(value = "邀请用户首次下单可得(firstScore)积分")
    private Integer firstScore;
    @ApiModelProperty(value = "分享朋友圈得(shareScore)积分/次 单日上限次数(shareScoreTime)次")
    private Integer shareScore;
    private Integer shareScoreTime;
    @ApiModelProperty("0:不启用,1:启用")
    private Short status;
}
gc-user/src/main/java/com/xzx/gc/user/dto/ViewScoreSettingDto.java
New file
@@ -0,0 +1,7 @@
package com.xzx.gc.user.dto;
import lombok.Data;
@Data
public class ViewScoreSettingDto {
}
gc-user/src/main/java/com/xzx/gc/user/service/DistribService.java
@@ -398,4 +398,70 @@
        return data;
    }
    public ViewScoreSettingVo viewScoreSetting(String ruleStr) {
        ViewScoreSettingVo viewScoreSettingVo = new ViewScoreSettingVo();
        RedPaperRule redPaperRule = redPaperRuleMapper.selectByRuleName(ruleStr);
        if(ObjectUtil.isEmpty(redPaperRule)){
            viewScoreSettingVo.setRegisterScore(0);
            viewScoreSettingVo.setShareScore(0);
            viewScoreSettingVo.setShareScoreTime(0);
            viewScoreSettingVo.setFirstScore(0);
        }else{
            String shareRatio = redPaperRule.getShareRatio();
            if(StrUtil.isNotEmpty(shareRatio)){
                List<String> shareRatios = StrUtil.split(shareRatio,',',false,false);
                if(ObjectUtil.isNotEmpty(shareRatios)){
                    viewScoreSettingVo.setId(redPaperRule.getId());
                    viewScoreSettingVo.setRegisterScore(StrUtil.isEmpty(shareRatios.get(0))?0:Integer.parseInt(shareRatios.get(0)));
                    viewScoreSettingVo.setShareScore(StrUtil.isEmpty(shareRatios.get(1))?0:Integer.parseInt(shareRatios.get(1)));
                    viewScoreSettingVo.setShareScoreTime(StrUtil.isEmpty(shareRatios.get(2))?0:Integer.parseInt(shareRatios.get(2)));
                    viewScoreSettingVo.setFirstScore(StrUtil.isEmpty(shareRatios.get(3))?0:Integer.parseInt(shareRatios.get(3)));
                }
            }else{
                viewScoreSettingVo.setId(redPaperRule.getId());
                viewScoreSettingVo.setRegisterScore(0);
                viewScoreSettingVo.setShareScore(0);
                viewScoreSettingVo.setShareScoreTime(0);
                viewScoreSettingVo.setFirstScore(0);
            }
        }
        return viewScoreSettingVo;
    }
    public void addScoreSetting(UpdateScoreSetting model) {
        RedPaperRule redPaperRule = new RedPaperRule();
        StringBuffer stringBuffer = new StringBuffer();
        int registerScore = ObjectUtil.isEmpty(model.getRegisterScore()) ? 0 : model.getRegisterScore();
        stringBuffer.append(registerScore+",");
        int shareScore = ObjectUtil.isEmpty(model.getShareScore()) ? 0 : model.getShareScore();
        stringBuffer.append(shareScore+",");
        int shareScoreTime = ObjectUtil.isEmpty(model.getShareScoreTime()) ? 0 : model.getShareScoreTime();
        stringBuffer.append(shareScoreTime+",");
        int firstScore = ObjectUtil.isEmpty(model.getFirstScore()) ? 0 : model.getFirstScore();
        stringBuffer.append(firstScore+",");
        redPaperRule.setStatus((short) 0);
        redPaperRule.setRuleName("积分运行设置");
        redPaperRule.setSharingProfitType("register_score,share_score,share_score_time");
        redPaperRule.setShareRatio(stringBuffer.toString());
        redPaperRuleMapper.insert(redPaperRule);
    }
    public void updateScoreSetting(UpdateScoreSetting model) {
        RedPaperRule redPaperRule = redPaperRuleMapper.selectByPrimaryKey(model.getId());
        if(ObjectUtil.isNotEmpty(redPaperRule)){
            StringBuffer stringBuffer = new StringBuffer();
            int registerScore = ObjectUtil.isEmpty(model.getRegisterScore()) ? 0 : model.getRegisterScore();
            stringBuffer.append(registerScore+",");
            int shareScore = ObjectUtil.isEmpty(model.getShareScore()) ? 0 : model.getShareScore();
            stringBuffer.append(shareScore+",");
            int shareScoreTime = ObjectUtil.isEmpty(model.getShareScoreTime()) ? 0 : model.getShareScoreTime();
            stringBuffer.append(shareScoreTime+",");
            int firstScore = ObjectUtil.isEmpty(model.getFirstScore()) ? 0 : model.getFirstScore();
            stringBuffer.append(firstScore+",");
            redPaperRule.setStatus(model.getStatus());
            redPaperRule.setSharingProfitType("register_score,share_score,share_score_time,first_score");
            redPaperRule.setShareRatio(stringBuffer.toString());
            redPaperRuleMapper.updateByPrimaryKey(redPaperRule);
        }
    }
}
gc-user/src/main/java/com/xzx/gc/user/vo/ViewScoreSettingVo.java
New file
@@ -0,0 +1,22 @@
package com.xzx.gc.user.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(value = "ViewScoreSettingVo", description = "返回参数类")
public class ViewScoreSettingVo {
    private Integer id;
    @ApiModelProperty(value = "邀请新用户首次注册得(registerScore)积分/人 不限次数")
    private Integer registerScore;
    @ApiModelProperty(value = "邀请用户首次下单可得(firstScore)积分")
    private Integer firstScore;
    @ApiModelProperty(value = "分享朋友圈得(shareScore)积分/次 单日上限次数(shareScoreTime)次")
    private Integer shareScore;
    private Integer shareScoreTime;
}