diff --git a/cms-modules/cms-policy/cms-policy-api/pom.xml b/cms-modules/cms-policy/cms-policy-api/pom.xml index 816f12e..455e612 100644 --- a/cms-modules/cms-policy/cms-policy-api/pom.xml +++ b/cms-modules/cms-policy/cms-policy-api/pom.xml @@ -30,6 +30,12 @@ cms-common 1.0-SNAPSHOT + + com.qs + cms-framework-mybatis-plus + 1.0-SNAPSHOT + compile + diff --git a/cms-modules/cms-policy/cms-policy-api/src/main/java/com/qs/serve/modules/tzc/entity/TzcRebate.java b/cms-modules/cms-policy/cms-policy-api/src/main/java/com/qs/serve/modules/tzc/entity/TzcRebate.java index 1a10adc..dc52907 100644 --- a/cms-modules/cms-policy/cms-policy-api/src/main/java/com/qs/serve/modules/tzc/entity/TzcRebate.java +++ b/cms-modules/cms-policy/cms-policy-api/src/main/java/com/qs/serve/modules/tzc/entity/TzcRebate.java @@ -52,15 +52,13 @@ public class TzcRebate implements Serializable { /** 返利开始时间 */ @Length(max = 0,message = "返利开始时间长度不能超过0字") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") - private LocalDateTime activityStartTime; + @DateTimeFormat(pattern = "yyyy-MM-dd") + private LocalDate activityStartTime; /** 返利结束时间 */ @Length(max = 0,message = "返利结束时间长度不能超过0字") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") - private LocalDateTime activityEndTime; + @DateTimeFormat(pattern = "yyyy-MM-dd") + private LocalDate activityEndTime; /** 核销模式:0-人工复核;1-自动核销 */ private Integer checkModel; diff --git a/cms-modules/cms-policy/cms-policy-api/src/main/java/com/qs/serve/modules/tzc/entity/TzcRebateLevelsConfig.java b/cms-modules/cms-policy/cms-policy-api/src/main/java/com/qs/serve/modules/tzc/entity/TzcRebateLevelsConfig.java index 2e2539c..1c21f1e 100644 --- a/cms-modules/cms-policy/cms-policy-api/src/main/java/com/qs/serve/modules/tzc/entity/TzcRebateLevelsConfig.java +++ b/cms-modules/cms-policy/cms-policy-api/src/main/java/com/qs/serve/modules/tzc/entity/TzcRebateLevelsConfig.java @@ -9,7 +9,9 @@ import com.baomidou.mybatisplus.annotation.*; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonProperty; +import com.qs.serve.mbp.handler.SplitStringTypeHandler; import lombok.Data; +import org.apache.ibatis.type.JdbcType; import org.hibernate.validator.constraints.Length; import org.springframework.format.annotation.DateTimeFormat; @@ -22,7 +24,7 @@ import javax.validation.constraints.NotBlank; * @since 2025-04-15 */ @Data -@TableName("tzc_rebate_levels_config") +@TableName(value = "tzc_rebate_levels_config",autoResultMap = true) public class TzcRebateLevelsConfig implements Serializable { private static final long serialVersionUID = 1L; @@ -40,7 +42,8 @@ public class TzcRebateLevelsConfig implements Serializable { private Integer levelNum; /** 叠加配置 */ - private String levelConfigs; + @TableField(typeHandler = SplitStringTypeHandler.class,jdbcType= JdbcType.VARCHAR) + private String[] levelConfigs; /** 备注 */ @Length(max = 255,message = "备注长度不能超过255字") diff --git a/cms-modules/cms-policy/cms-policy-api/src/main/java/com/qs/serve/modules/tzc/entity/TzcRebatePeriod.java b/cms-modules/cms-policy/cms-policy-api/src/main/java/com/qs/serve/modules/tzc/entity/TzcRebatePeriod.java index df7946b..a7a5501 100644 --- a/cms-modules/cms-policy/cms-policy-api/src/main/java/com/qs/serve/modules/tzc/entity/TzcRebatePeriod.java +++ b/cms-modules/cms-policy/cms-policy-api/src/main/java/com/qs/serve/modules/tzc/entity/TzcRebatePeriod.java @@ -57,23 +57,9 @@ public class TzcRebatePeriod implements Serializable { /** 总目标达标补偿 */ private Integer compensationFlag; - /** 基于目标销量金额:0-总理;1-增量 */ - private Integer sumAddFlag; - - /** 选择的策略:0-基于比例;基于固定金额 */ - private Integer rateAmtFlag; - - /** 总量百分比 */ - private BigDecimal sumRateVal; - - /** 总量固定金额 */ - private BigDecimal sumAmtVal; - - /** 增量百分比 */ - private BigDecimal addRateVal; - - /** 增量固定金额 */ - private BigDecimal addAmtVal; + /** 补偿说明 */ + @Length(max = 255,message = "备注长度不能超过255字") + private String extRemark; /** 备注 */ @Length(max = 255,message = "备注长度不能超过255字") diff --git a/cms-modules/cms-policy/cms-policy-api/src/main/java/com/qs/serve/modules/tzc/entity/bo/TzcRebateLevelsConfigParam.java b/cms-modules/cms-policy/cms-policy-api/src/main/java/com/qs/serve/modules/tzc/entity/bo/TzcRebateLevelsConfigParam.java index 67c8c19..d2c605c 100644 --- a/cms-modules/cms-policy/cms-policy-api/src/main/java/com/qs/serve/modules/tzc/entity/bo/TzcRebateLevelsConfigParam.java +++ b/cms-modules/cms-policy/cms-policy-api/src/main/java/com/qs/serve/modules/tzc/entity/bo/TzcRebateLevelsConfigParam.java @@ -25,7 +25,7 @@ public class TzcRebateLevelsConfigParam implements Serializable { private Integer levelNum; /** 坎级设置;格式如:1,3,5 */ - private String levelConfigs; + private String[] levelConfigs; /** 前端用于绑定模板id */ private String tmpUk; diff --git a/cms-modules/cms-policy/cms-policy-api/src/main/java/com/qs/serve/modules/tzc/entity/bo/TzcRebateParam.java b/cms-modules/cms-policy/cms-policy-api/src/main/java/com/qs/serve/modules/tzc/entity/bo/TzcRebateParam.java index 437c0dd..6416833 100644 --- a/cms-modules/cms-policy/cms-policy-api/src/main/java/com/qs/serve/modules/tzc/entity/bo/TzcRebateParam.java +++ b/cms-modules/cms-policy/cms-policy-api/src/main/java/com/qs/serve/modules/tzc/entity/bo/TzcRebateParam.java @@ -31,12 +31,12 @@ public class TzcRebateParam{ private String rebateName; /** 返利开始时间 */ - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime activityStartTime; + @DateTimeFormat(pattern = "yyyy-MM-dd") + private LocalDate activityStartTime; /** 返利结束时间 */ - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime activityEndTime; + @DateTimeFormat(pattern = "yyyy-MM-dd") + private LocalDate activityEndTime; /** 核销模式:0-人工复核;1-自动核销 */ private Integer checkModel; diff --git a/cms-modules/cms-policy/cms-policy-api/src/main/java/com/qs/serve/modules/tzc/entity/bo/TzcRebatePeriodParam.java b/cms-modules/cms-policy/cms-policy-api/src/main/java/com/qs/serve/modules/tzc/entity/bo/TzcRebatePeriodParam.java index a4ffd57..70cf115 100644 --- a/cms-modules/cms-policy/cms-policy-api/src/main/java/com/qs/serve/modules/tzc/entity/bo/TzcRebatePeriodParam.java +++ b/cms-modules/cms-policy/cms-policy-api/src/main/java/com/qs/serve/modules/tzc/entity/bo/TzcRebatePeriodParam.java @@ -49,6 +49,9 @@ public class TzcRebatePeriodParam implements Serializable { private Integer compensationFlag; /** 补充说明 */ + @Length(max = 255,message = "备注长度不能超过255字") + private String extRemark; + @Length(max = 255,message = "备注长度不能超过255字") private String remark; diff --git a/cms-modules/cms-policy/cms-policy-bus/src/main/java/com/qs/serve/modules/tzc/service/impl/TzcRebateApplicationServiceImpl.java b/cms-modules/cms-policy/cms-policy-bus/src/main/java/com/qs/serve/modules/tzc/service/impl/TzcRebateApplicationServiceImpl.java index b9887f3..4d109dd 100644 --- a/cms-modules/cms-policy/cms-policy-bus/src/main/java/com/qs/serve/modules/tzc/service/impl/TzcRebateApplicationServiceImpl.java +++ b/cms-modules/cms-policy/cms-policy-bus/src/main/java/com/qs/serve/modules/tzc/service/impl/TzcRebateApplicationServiceImpl.java @@ -80,7 +80,6 @@ public class TzcRebateApplicationServiceImpl implements TzcRebateApplicationServ rebate.setRebateStatus(TzcRebateStatus.DRAFT.getStatus()); rebate.setActivityStartTime(param.getActivityStartTime()); rebate.setActivityEndTime(param.getActivityEndTime()); - rebate.setAutoDispatchFlag(param.getAutoDispatchFlag()); rebate.setCheckModel(param.getCheckModel()); rebate.setCheckMaxAmount(param.getCheckMaxAmount()); rebate.setCheckAutoDateType(param.getCheckAutoDateType()); @@ -90,7 +89,6 @@ public class TzcRebateApplicationServiceImpl implements TzcRebateApplicationServ rebate.setSupplierCode(supplier.getCode()); rebate.setSupplierName(supplier.getName()); rebate.setRebateAmount(param.getRebateAmount()); - rebate.setOverlayFlag(param.getOverlayFlag()); rebate.setRemark(param.getRemark()); // 返利的商品 @@ -210,18 +208,11 @@ public class TzcRebateApplicationServiceImpl implements TzcRebateApplicationServ Assert.throwEx("["+period.getPeriodTitle()+"]与["+period2.getPeriodTitle()+"],时间段存在交集"); } } - if(ResultFlag.isTrue(period.getCompensationFlag())){ - if(period.getArgumentParam()==null){ - Assert.throwEx("["+period.getPeriodTitle()+"]返利补偿不能为空"); - } - } } // 校验坎级叠加 - if(ResultFlag.isTrue(param.getOverlayFlag())){ - if(CollUtil.isEmpty(param.getConfigList())){ - Assert.throwEx("坎级叠加标识为1时,坎级配置不能为空"); - } + if(CollUtil.isEmpty(param.getConfigList())){ + Assert.throwEx("坎级叠加标识为1时,坎级配置不能为空"); } } diff --git a/cms-modules/cms-system/src/main/java/com/qs/serve/modules/tzc/service/impl/TzcRebateApplication4CostServiceImpl.java b/cms-modules/cms-system/src/main/java/com/qs/serve/modules/tzc/service/impl/TzcRebateApplication4CostServiceImpl.java index 02c03ff..30d2290 100644 --- a/cms-modules/cms-system/src/main/java/com/qs/serve/modules/tzc/service/impl/TzcRebateApplication4CostServiceImpl.java +++ b/cms-modules/cms-system/src/main/java/com/qs/serve/modules/tzc/service/impl/TzcRebateApplication4CostServiceImpl.java @@ -276,14 +276,13 @@ public class TzcRebateApplication4CostServiceImpl implements TzcRebateApplicatio List argumentList, List configList){ int level = 0; - String configString = ""; + String[] configArr = null; for (TzcRebateLevelsConfig config: configList) { if(config.getLevelNum()>level){ level = config.getLevelNum(); - configString = config.getLevelConfigs(); + configArr = config.getLevelConfigs(); } } - String[] configArr = configString.split(","); BigDecimal maxAmount = BigDecimal.ZERO; for (TzcRebateLevels levels : levelsList) { String lvNum = levels.getLevelNum()+""; diff --git a/cms-modules/cms-system/src/main/java/com/qs/serve/modules/tzc/service/impl/TzcRebateApplicationServiceImpl.java b/cms-modules/cms-system/src/main/java/com/qs/serve/modules/tzc/service/impl/TzcRebateApplicationServiceImpl.java index 1079f62..db2443d 100644 --- a/cms-modules/cms-system/src/main/java/com/qs/serve/modules/tzc/service/impl/TzcRebateApplicationServiceImpl.java +++ b/cms-modules/cms-system/src/main/java/com/qs/serve/modules/tzc/service/impl/TzcRebateApplicationServiceImpl.java @@ -207,12 +207,23 @@ public class TzcRebateApplicationServiceImpl implements TzcRebateApplicationServ configList.add(config); } // 建立费用 - Long costApplyId = tzcRebateApplication4CostService.buildCostAndActivity(rebate, argumentList, tzcRebateSubjectList, periodList, tzcRebateGoodsList, configList, rebateCenterList, levelsList); + Long costApplyId = tzcRebateApplication4CostService.buildCostAndActivity( + rebate, + argumentList, + tzcRebateSubjectList, + periodList, + tzcRebateGoodsList, + configList, + rebateCenterList, + levelsList + ); // 绑定费用id tzcRebateService.update( - new LambdaUpdateWrapper().eq(TzcRebate::getId,rebateId) - .set(TzcRebate::getCostApplyId,costApplyId)); + new LambdaUpdateWrapper() + .eq(TzcRebate::getId,rebateId) + .set(TzcRebate::getCostApplyId,costApplyId) + ); return rebate; } @@ -287,14 +298,13 @@ public class TzcRebateApplicationServiceImpl implements TzcRebateApplicationServ */ public BigDecimal getMaxLevelsAmount(TzcRebateParam param){ int level = 0; - String configString = ""; + String[] configArr = null; for (TzcRebateLevelsConfigParam configParam : param.getConfigList()) { if(configParam.getLevelNum()>level){ level = configParam.getLevelNum(); - configString = configParam.getLevelConfigs(); + configArr = configParam.getLevelConfigs(); } } - String[] configArr = configString.split(","); BigDecimal maxAmount = BigDecimal.ZERO; for (TzcRebateLevelsParam levelsParam : param.getLevelsList()) { String lvNum = levelsParam.getLevelNum()+""; @@ -394,6 +404,7 @@ public class TzcRebateApplicationServiceImpl implements TzcRebateApplicationServ period.setSamePeriodAmount(periodParam.getSamePeriodAmount()); period.setCompensationFlag(periodParam.getCompensationFlag()); period.setRemark(periodParam.getRemark()); + period.setExtRemark(periodParam.getExtRemark()); period.setTmpUk(periodParam.getTmpUk()); tzcRebatePeriodService.save(period); periodList.add(period);