## 新复购级差枚举值转换处理;

This commit is contained in:
cabbage 2025-07-10 10:51:07 +08:00
parent ea99ec0bb5
commit 8b4e309f8a
5 changed files with 45 additions and 42 deletions

View File

@ -2101,7 +2101,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
for (SaOrderItemsExt saOrderItemsExt : saOrderItemsExtList) { for (SaOrderItemsExt saOrderItemsExt : saOrderItemsExtList) {
// 级别值比当前等级高的级差数据列表 // 级别值比当前等级高的级差数据列表
Map<Integer, BigDecimal> itemsRangePriceMap = saOrderItemsExt.getWaresRangeTmpList().stream() Map<Integer, BigDecimal> itemsRangePriceMap = saOrderItemsExt.getWaresRangeTmpList().stream()
.filter(tmpData -> tmpData.getRangeValue().compareTo(sourceMemberRangeExt.getGradeValue()) > 0)
.collect(Collectors.toMap(WaresRangeTmp::getRangeValue, WaresRangeTmp::getRangePrice)); .collect(Collectors.toMap(WaresRangeTmp::getRangeValue, WaresRangeTmp::getRangePrice));
// 临时价格跟着每一次变动 // 临时价格跟着每一次变动
@ -2127,7 +2126,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
continue; continue;
} }
// 当前会员等级值 // 当前会员等级值
int calGradeValue = targetMemberRangeExt.getGradeValue(); Integer calGradeValue = EAwards.getGradeValueByValue(targetMemberRangeExt.getGradeValue());
// 当前会员的级差价格 // 当前会员的级差价格
BigDecimal targetRangePrice = itemsRangePriceMap.get(calGradeValue); BigDecimal targetRangePrice = itemsRangePriceMap.get(calGradeValue);
if (targetRangePrice.compareTo(tmpPrice) < 0) { if (targetRangePrice.compareTo(tmpPrice) < 0) {
@ -2168,6 +2167,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
cuMemberBonusRange.setPkRange(targetMemberRangeExt.getPkGrade()); cuMemberBonusRange.setPkRange(targetMemberRangeExt.getPkGrade());
cuMemberBonusRange.setPkBeforeRange(sourceMemberRangeExt.getPkGrade()); cuMemberBonusRange.setPkBeforeRange(sourceMemberRangeExt.getPkGrade());
cuMemberBonusRange.setPkOrder(saOrderExt.getPkId()); cuMemberBonusRange.setPkOrder(saOrderExt.getPkId());
cuMemberBonusRange.setPkOrderItems(0L);
rangeRepurchaseRetailRemark(saOrderExt, cuMemberBonusRange, sourceMemberRangeExt, targetMemberRangeExt); rangeRepurchaseRetailRemark(saOrderExt, cuMemberBonusRange, sourceMemberRangeExt, targetMemberRangeExt);
BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusRange, saOrderExt.getOrderAmount(), saOrderExt.getInExchangeRate()); BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusRange, saOrderExt.getOrderAmount(), saOrderExt.getInExchangeRate());
if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusRange.getIncomeStatus()) { if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusRange.getIncomeStatus()) {

View File

@ -344,7 +344,7 @@
</resultMap> </resultMap>
<!-- 查询商品级差数据 --> <!-- 查询商品级差数据 -->
<select id="listOrderWaresRange" resultType="com.hzs.common.domain.sale.ext.SaOrderItemsExt"> <select id="listOrderWaresRange" resultMap="SaOrderItems">
select soi.pk_order, select soi.pk_order,
soi.pk_id, soi.pk_id,
soi.price, soi.price,

View File

@ -214,7 +214,7 @@ public class EnumsController extends BaseController {
List<EnumEntity> enumEntityList = new ArrayList<>(); List<EnumEntity> enumEntityList = new ArrayList<>();
for (EAwards value : EAwards.values()) { for (EAwards value : EAwards.values()) {
if (value.getEnable() == EYesNo.YES.getIntValue()) { if (value.getEnable() == EYesNo.YES.getIntValue()) {
enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel(), EnumsPrefixConstants.AWARDS)); enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel()));
} }
} }
return AjaxResult.success(enumEntityList); return AjaxResult.success(enumEntityList);
@ -228,7 +228,7 @@ public class EnumsController extends BaseController {
List<EnumEntity> enumEntityList = new ArrayList<>(); List<EnumEntity> enumEntityList = new ArrayList<>();
for (EAwardsLevel value : EAwardsLevel.values()) { for (EAwardsLevel value : EAwardsLevel.values()) {
if (value.getEnable() == EYesNo.YES.getIntValue()) { if (value.getEnable() == EYesNo.YES.getIntValue()) {
enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel(), EnumsPrefixConstants.AWARDS_LEVEL)); enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel()));
} }
} }
return AjaxResult.success(enumEntityList); return AjaxResult.success(enumEntityList);

View File

@ -90,11 +90,7 @@ public class EnumsInitController {
initList.add(this.createData(value.getKey(), value.getLabel())); initList.add(this.createData(value.getKey(), value.getLabel()));
} }
// 奖衔枚举枚举 // 等级枚举枚举
for (EAwards value : EAwards.values()) {
initList.add(this.createData(value.getKey(), value.getLabel()));
}
// 等级枚举枚举
for (EGrade value : EGrade.values()) { for (EGrade value : EGrade.values()) {
initList.add(this.createData(value.getKey(), value.getLabel())); initList.add(this.createData(value.getKey(), value.getLabel()));
} }

View File

@ -1,6 +1,5 @@
package com.hzs.common.core.enums; package com.hzs.common.core.enums;
import com.hzs.common.core.constant.EnumsPrefixConstants;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Getter; import lombok.Getter;
@ -14,77 +13,73 @@ public enum EAwards {
/** /**
* -1=海粉 * -1=海粉
*/ */
SEA_FLOUR(0, -1, "海粉", 1, EnumsPrefixConstants.AWARDS + "-1"), SEA_FLOUR(0, -1, "海粉", 1),
/** /**
* 0= * 0=
*/ */
MEMBER(1, 0, "", 0, EnumsPrefixConstants.AWARDS + 0), MEMBER(1, 0, "", 0),
/** /**
* 黄宝 * 黄宝
*/ */
HEADER(2, 5, "一级", 0, EnumsPrefixConstants.AWARDS + 5), HEADER(2, 5, "一级", 0),
/** /**
* 绿宝 * 绿宝
*/ */
MANAGER(3, 10, "二级", 0, EnumsPrefixConstants.AWARDS + 10), MANAGER(3, 10, "二级", 0),
/** /**
* 蓝宝 * 蓝宝
*/ */
HIGH_MANAGER(4, 15, "三级", 0, EnumsPrefixConstants.AWARDS + 15), HIGH_MANAGER(4, 15, "三级", 0),
/** /**
* 钻石 * 钻石
*/ */
SENIOR_MANAGER(5, 20, "四级", 0, EnumsPrefixConstants.AWARDS + 20), SENIOR_MANAGER(5, 20, "四级", 0),
/** /**
* 黄钻 * 黄钻
*/ */
CHIEF(6, 25, "五级", 0, EnumsPrefixConstants.AWARDS + 25), CHIEF(6, 25, "五级", 0),
/** /**
* 绿钻 * 绿钻
*/ */
HIGH_CHIEF(7, 30, "六级", 0, EnumsPrefixConstants.AWARDS + 30), HIGH_CHIEF(7, 30, "六级", 0),
/** /**
* 星耀蓝钻 * 星耀蓝钻
*/ */
SENIOR_CHIEF(8, 35, "七级", 0, EnumsPrefixConstants.AWARDS + 35), SENIOR_CHIEF(8, 35, "七级", 0),
/** /**
* 王者红钻 * 王者红钻
*/ */
CHAIRMAN(9, 40, "八级", 0, EnumsPrefixConstants.AWARDS + 40), CHAIRMAN(9, 40, "八级", 0),
/** /**
* 传奇紫钻 * 传奇紫钻
*/ */
HONOR_CHAIRMAN(10, 45, "九级", 0, EnumsPrefixConstants.AWARDS + 45), HONOR_CHAIRMAN(10, 45, "九级", 0),
/** /**
* 10 * 10
*/ */
GLOBAL_CHAIRMAN(11, 50, "十级", 0, EnumsPrefixConstants.AWARDS + 50), GLOBAL_CHAIRMAN(11, 50, "十级", 0),
/** /**
* 11 * 11
*/ */
LEVEL_ELEVEN(12, 55, "十一级", 0, EnumsPrefixConstants.AWARDS + 55), LEVEL_ELEVEN(12, 55, "十一级", 0),
/** /**
* 12 * 12
*/ */
LEVEL_TWELVE(13, 60, "十二级", 0, EnumsPrefixConstants.AWARDS + 60), LEVEL_TWELVE(13, 60, "十二级", 0),
/** /**
* 13 * 13
*/ */
LEVEL_THIRTEEN(14, 65, "十三级", 0, EnumsPrefixConstants.AWARDS + 65), LEVEL_THIRTEEN(14, 65, "十三级", 0),
/** /**
* 14 * 14
*/ */
LEVEL_FOURTEEN(15, 70, "十四级", 0, EnumsPrefixConstants.AWARDS + 70), LEVEL_FOURTEEN(15, 70, "十四级", 0),
/** /**
* 15 * 15
*/ */
LEVEL_FIFTEEN(16, 75, "十五级", 0, EnumsPrefixConstants.AWARDS + 75), LEVEL_FIFTEEN(16, 75, "十五级", 0),
; ;
@ -105,17 +100,29 @@ public enum EAwards {
* 是否启用0=,1= -- 来源EYesNo * 是否启用0=,1= -- 来源EYesNo
*/ */
private final int enable; private final int enable;
/**
* 国际化翻译key值
*/
private final String key;
public static String getAwardsLabel(int value) { /**
for (EAwards eAwards : EAwards.values()) { * 根据枚举值获取等级枚举值用于级差枚举值转换
if (eAwards.value == value) { *
return eAwards.label; * @param value
} * @return
*/
public static Integer getGradeValueByValue(int value) {
if (EGrade.START_UP.getValue() == value) {
return EAwards.MEMBER.getValue();
} else if (EGrade.HAI_FAN.getValue() == value) {
return EAwards.HEADER.getValue();
} else if (EGrade.YOU_KE.getValue() == value) {
return EAwards.MANAGER.getValue();
} else if (EGrade.MAKER.getValue() == value) {
return EAwards.HIGH_MANAGER.getValue();
} else if (EGrade.VIP.getValue() == value) {
return EAwards.SENIOR_MANAGER.getValue();
} else if (EGrade.S_VIP.getValue() == value) {
return EAwards.CHIEF.getValue();
} }
return ""; return 0;
} }
} }