## 奖金来源添加重消收益、平台服务费(102);

This commit is contained in:
cabbage 2025-05-20 14:28:13 +08:00
parent 5670f715cd
commit c1322696c8
19 changed files with 77 additions and 87 deletions

View File

@ -14,9 +14,6 @@ import java.util.Set;
/** /**
* 会员网体历史记录 服务类 * 会员网体历史记录 服务类
*
* @author hzs
* @since 2022-10-31
*/ */
public interface ICuMemberTreeService extends IService<CuMemberTree> { public interface ICuMemberTreeService extends IService<CuMemberTree> {
@ -144,7 +141,6 @@ public interface ICuMemberTreeService extends IService<CuMemberTree> {
/* /*
* @description: 回退会员奖衔 * @description: 回退会员奖衔
* @param: null null
**/ **/
void updateBackCuMemberSettleRangeAward(String rangeTableName, Integer period); void updateBackCuMemberSettleRangeAward(String rangeTableName, Integer period);

View File

@ -35,15 +35,13 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.math.BigDecimal;
import java.time.temporal.ChronoUnit; import java.time.temporal.ChronoUnit;
import java.util.*; import java.util.*;
import java.util.stream.Collectors; import java.util.stream.Collectors;
/** /**
* 会员奖金-会员奖金汇总表 前端控制器 * 会员奖金-会员奖金汇总表 前端控制器
*
* @author hzs
* @since 2022-11-11
*/ */
@RestController @RestController
@RequestMapping("/manage/bonus") @RequestMapping("/manage/bonus")
@ -224,15 +222,13 @@ public class CuMemberBonusController extends BaseController {
TableDataInfo tableDataInfo = iCuMemberBonusService.queryMemberBonusDetailSerVoByCondition(bonusParam); TableDataInfo tableDataInfo = iCuMemberBonusService.queryMemberBonusDetailSerVoByCondition(bonusParam);
List<MemberBonusDetailSerVO> memberBonusDetailSerVOList = (List<MemberBonusDetailSerVO>) tableDataInfo.getRows(); List<MemberBonusDetailSerVO> memberBonusDetailSerVOList = (List<MemberBonusDetailSerVO>) tableDataInfo.getRows();
// 获取需要翻译的枚举翻译 // 获取需要翻译的枚举翻译
Map<String, String> transactionMap = iTransactionCommonService.exportEnumTransaction(EOrderType.values(), EBonusIncomeStatus.values());
Map<Integer, String> transactionLongMap = iTransactionCommonService.exportEnumTransactionByDB(EnumsPrefixConstants.KEY_GRADE, EnumsPrefixConstants.KEY_AWARD); Map<Integer, String> transactionLongMap = iTransactionCommonService.exportEnumTransactionByDB(EnumsPrefixConstants.KEY_GRADE, EnumsPrefixConstants.KEY_AWARD);
for (MemberBonusDetailSerVO memberBonusDetailSerVO : memberBonusDetailSerVOList) { for (MemberBonusDetailSerVO memberBonusDetailSerVO : memberBonusDetailSerVOList) {
if (transactionMap.containsKey(EnumsPrefixConstants.ORDER_TYPE + memberBonusDetailSerVO.getOrderType().toString())) { memberBonusDetailSerVO.setOrderTypeVal(EOrderType.getLabelByValue(memberBonusDetailSerVO.getOrderType()));
memberBonusDetailSerVO.setOrderTypeVal(transactionMap.get(EnumsPrefixConstants.ORDER_TYPE + memberBonusDetailSerVO.getOrderType())); memberBonusDetailSerVO.setIncomeStatusVal(EBonusIncomeStatus.getLabelByValue(memberBonusDetailSerVO.getIncomeStatus()));
} memberBonusDetailSerVO.setBackPoints(memberBonusDetailSerVO.getIncomeTax().divide(new BigDecimal("2")));
if (transactionMap.containsKey(EnumsPrefixConstants.BONUS_INCOME_STATUS + memberBonusDetailSerVO.getIncomeStatus())) { memberBonusDetailSerVO.setServiceSpend(memberBonusDetailSerVO.getIncomeTax().divide(new BigDecimal("2")));
memberBonusDetailSerVO.setIncomeStatusVal(transactionMap.get(EnumsPrefixConstants.BONUS_INCOME_STATUS + memberBonusDetailSerVO.getIncomeStatus()));
}
if (transactionLongMap.containsKey(memberBonusDetailSerVO.getPkSettleGrade())) { if (transactionLongMap.containsKey(memberBonusDetailSerVO.getPkSettleGrade())) {
memberBonusDetailSerVO.setPkSettleGradeVal(transactionLongMap.get(memberBonusDetailSerVO.getPkSettleGrade())); memberBonusDetailSerVO.setPkSettleGradeVal(transactionLongMap.get(memberBonusDetailSerVO.getPkSettleGrade()));
} }

View File

@ -27,6 +27,14 @@ public interface CuMemberBonusExpandMapper extends BaseMapper<CuMemberBonusExpan
*/ */
void batchInsertCuMemberBonusExpand(@Param("cuMemberBonusExpandList") List<?> cuMemberBonusExpandList); void batchInsertCuMemberBonusExpand(@Param("cuMemberBonusExpandList") List<?> cuMemberBonusExpandList);
/**
* 批量插入会员奖金,拓展
*
* @param cuMemberBonusExpandList 会员奖金
*/
void insertCuMemberBonusExpand(List<CuMemberBonusExpand> cuMemberBonusExpandList);
/** /**
* 根据查询条件查询固定的奖金明细 * 根据查询条件查询固定的奖金明细
* *

View File

@ -5,9 +5,7 @@ import com.hzs.common.domain.sale.ext.SaOrderExt;
import java.util.List; import java.util.List;
/** /**
* @Description: 奖金结算服务类 * 奖金结算服务类
* @Classname: IBonusSettleService
* @PackageName: com.hzs.member.achieve.service
*/ */
public interface IBonusSettleService { public interface IBonusSettleService {
@ -29,13 +27,11 @@ public interface IBonusSettleService {
/* /*
* @description: 根据订单实时计算奖衔 * @description: 根据订单实时计算奖衔
* @param: null null
**/ **/
void calculateCuMemberRangAwardsBySaOrder(String orderCode); void calculateCuMemberRangAwardsBySaOrder(String orderCode);
/* /*
* @description: 4-n配置修改后重算首购奖金 * @description: 4-n配置修改后重算首购奖金
* @param: null null
**/ **/
void repeatCuMemberBonusByExpand(String settleDate, List<SaOrderExt> saOrderExtList); void repeatCuMemberBonusByExpand(String settleDate, List<SaOrderExt> saOrderExtList);
} }

View File

@ -16,17 +16,14 @@ import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
/** /**
* @Description: 返回后端用户端查询奖金明细vo * 返回后端用户端查询奖金明细vo
* @Author: sui q
* @Time: 2022/12/20 9:56
* @Classname: MemberBonusDetailVO
* @PackageName: com.hzs.member.bonus.vo
*/ */
@Data @Data
@Builder @Builder
@AllArgsConstructor @AllArgsConstructor
@NoArgsConstructor @NoArgsConstructor
public class MemberBonusDetailSerVO implements Serializable { public class MemberBonusDetailSerVO implements Serializable {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
/** /**
@ -65,7 +62,6 @@ public class MemberBonusDetailSerVO implements Serializable {
/** /**
* 来源国家名称 * 来源国家名称
*/ */
@Excel(name = "来源国家")
private String sourceCountryName; private String sourceCountryName;
/** /**
@ -106,19 +102,16 @@ public class MemberBonusDetailSerVO implements Serializable {
/** /**
* 订单金额 * 订单金额
*/ */
@Excel(name = "来源金额($)", scale = 2)
private BigDecimal orderAmountDollar; private BigDecimal orderAmountDollar;
/** /**
* 订单业绩 * 订单业绩
*/ */
@Excel(name = "来源业绩($)", scale = 2)
private BigDecimal orderAchieve; private BigDecimal orderAchieve;
/** /**
* 结算国家 * 结算国家
*/ */
@Excel(name = "结算国家")
private String settleCountry; private String settleCountry;
/** /**
@ -206,6 +199,17 @@ public class MemberBonusDetailSerVO implements Serializable {
@Excel(name = "税前收益", scale = 2) @Excel(name = "税前收益", scale = 2)
private BigDecimal pretaxIncomeOri; private BigDecimal pretaxIncomeOri;
/**
* 重消收益
*/
@Excel(name = "重消收益", scale = 2)
private BigDecimal backPoints;
/**
* 平台服务费
*/
@Excel(name = "平台服务费", scale = 2)
private BigDecimal serviceSpend;
/** /**
* 实际收益 * 实际收益
*/ */
@ -215,34 +219,28 @@ public class MemberBonusDetailSerVO implements Serializable {
/** /**
* 拓展无封 (拓展收益按等级正常比例结算拓展收益按等级正常比例结算 无封顶) * 拓展无封 (拓展收益按等级正常比例结算拓展收益按等级正常比例结算 无封顶)
*/ */
@Excel(name = "拓展无封($)", scale = 2)
private BigDecimal expandNoCapping; private BigDecimal expandNoCapping;
/** /**
* 拓展封顶 (拓展收益按等级正常比例结算不按4-N结算根据配置的封顶值限制最大收益) * 拓展封顶 (拓展收益按等级正常比例结算不按4-N结算根据配置的封顶值限制最大收益)
*/ */
@Excel(name = "拓展封顶($)", scale = 2)
private BigDecimal expandCapping; private BigDecimal expandCapping;
/** /**
* 拓展正常减半 (拓展收益按等级正常比例结算不按4-N结算根据配置的封顶值限制最大收益拓展封顶/2) * 拓展正常减半 (拓展收益按等级正常比例结算不按4-N结算根据配置的封顶值限制最大收益拓展封顶/2)
*/ */
@Excel(name = "拓展正常减半($)", scale = 2)
private BigDecimal expandNormalHalf; private BigDecimal expandNormalHalf;
/** /**
* 拓展实际减半 (拓展收益按4-结算根据配置的封顶值限制最大收益税前收益/2) * 拓展实际减半 (拓展收益按4-结算根据配置的封顶值限制最大收益税前收益/2)
*/ */
@Excel(name = "拓展实际减半($)", scale = 2)
private BigDecimal expandNormalReal; private BigDecimal expandNormalReal;
/** /**
* 税前收益 * 税前收益
*/ */
@Excel(name = "税前收益($)", scale = 2)
private BigDecimal pretaxIncome; private BigDecimal pretaxIncome;
/** /**
* 实际收益 * 实际收益
*/ */
@Excel(name = "实际收益($)", scale = 2)
private BigDecimal realIncome; private BigDecimal realIncome;
/** /**
@ -362,4 +360,12 @@ public class MemberBonusDetailSerVO implements Serializable {
public BigDecimal getOrderAchieve() { public BigDecimal getOrderAchieve() {
return null != orderAchieve ? orderAchieve : BigDecimal.ZERO; return null != orderAchieve ? orderAchieve : BigDecimal.ZERO;
} }
public BigDecimal getBackPoints() {
return incomeTax.divide(new BigDecimal("2"));
}
public BigDecimal getServiceSpend() {
return incomeTax.divide(new BigDecimal("2"));
}
} }

View File

@ -54,4 +54,23 @@ public enum EBonusIncomeStatus {
* 国际化翻译key值 * 国际化翻译key值
*/ */
private final String key; private final String key;
/**
* 根据值返回名称
*
* @param value
* @return
*/
public static String getLabelByValue(Integer value) {
if (null == value) {
return "";
}
for (EBonusIncomeStatus enums : EBonusIncomeStatus.values()) {
if (enums.getValue() == value) {
return enums.getLabel();
}
}
return "";
}
} }

View File

@ -95,14 +95,32 @@ public enum EOrderType {
* @return * @return
*/ */
public static EOrderType getEnumByValue(int value) { public static EOrderType getEnumByValue(int value) {
for (EOrderType eOrderType : EOrderType.values()) { for (EOrderType enums : EOrderType.values()) {
if (eOrderType.getValue() == value) { if (enums.getValue() == value) {
return eOrderType; return enums;
} }
} }
return null; return null;
} }
/**
* 根据值返回名称
*
* @param value
* @return
*/
public static String getLabelByValue(Integer value) {
if (null == value) {
return "";
}
for (EOrderType enums : EOrderType.values()) {
if (enums.getValue() == value) {
return enums.getLabel();
}
}
return "";
}
public static List<EOrderType> getOrderTypeSpecial() { public static List<EOrderType> getOrderTypeSpecial() {
List<EOrderType> resultList = new ArrayList<>(); List<EOrderType> resultList = new ArrayList<>();

View File

@ -12,12 +12,7 @@ import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
/** /**
* <p>
* 特殊商品分配奖金 * 特殊商品分配奖金
* </p>
*
* @author hzs
* @since 2024-10-30
*/ */
@Data @Data
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)

View File

@ -12,12 +12,7 @@ import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
/** /**
* <p>
* 特殊商品分配ev奖金明细 * 特殊商品分配ev奖金明细
* </p>
*
* @author hzs
* @since 2024-10-30
*/ */
@Data @Data
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)

View File

@ -12,9 +12,6 @@ import lombok.experimental.Accessors;
/** /**
* 会员奖金-辅导收益明细表 * 会员奖金-辅导收益明细表
*
* @author hzs
* @since 2022-11-15
*/ */
@Data @Data
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)

View File

@ -12,9 +12,6 @@ import lombok.experimental.Accessors;
/** /**
* 会员奖金-拓展收益延缓表 * 会员奖金-拓展收益延缓表
*
* @author bd
* @since 2025-04-16
*/ */
@Builder @Builder
@AllArgsConstructor @AllArgsConstructor

View File

@ -12,9 +12,6 @@ import lombok.experimental.Accessors;
/** /**
* 会员奖金-拓展收益延缓明细表 * 会员奖金-拓展收益延缓明细表
*
* @author bd
* @since 2025-04-16
*/ */
@Builder @Builder
@AllArgsConstructor @AllArgsConstructor

View File

@ -11,12 +11,7 @@ import lombok.*;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
/** /**
* <p>
* 会员奖金-奖金收益明细表(报单费分红嗨粉) * 会员奖金-奖金收益明细表(报单费分红嗨粉)
* </p>
*
* @author hzs
* @since 2022-11-17
*/ */
@Data @Data
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)

View File

@ -12,9 +12,6 @@ import lombok.experimental.Accessors;
/** /**
* 会员奖金-直推收益明细表 * 会员奖金-直推收益明细表
*
* @author hzs
* @since 2022-11-10
*/ */
@Data @Data
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)

View File

@ -12,12 +12,7 @@ import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
/** /**
* <p>
* 会员奖金-直推历史轮次记录 * 会员奖金-直推历史轮次记录
* </p>
*
* @author hzs
* @since 2023-09-10
*/ */
@Data @Data
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)

View File

@ -12,9 +12,6 @@ import lombok.experimental.Accessors;
/** /**
* 会员奖金-奖金收益明细表(复购极差) * 会员奖金-奖金收益明细表(复购极差)
*
* @author hzs
* @since 2022-12-30
*/ */
@Data @Data
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)

View File

@ -1,6 +1,7 @@
package com.hzs.common.domain.member.bonus; package com.hzs.common.domain.member.bonus;
import java.math.BigDecimal; import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.hzs.common.core.web.domain.BaseEntity; import com.hzs.common.core.web.domain.BaseEntity;
@ -9,12 +10,7 @@ import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
/** /**
* <p>
* 会员奖金-4-n碰次重算奖金表 * 会员奖金-4-n碰次重算奖金表
* </p>
*
* @author hzs
* @since 2024-07-23
*/ */
@Data @Data
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)

View File

@ -12,12 +12,7 @@ import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
/** /**
* <p>
* 会员奖金-分红奖金配置 * 会员奖金-分红奖金配置
* </p>
*
* @author hzs
* @since 2023-07-03
*/ */
@Data @Data
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)

View File

@ -13,12 +13,7 @@ import lombok.*;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
/** /**
* <p>
* 会员奖金-分红奖金配置明细 * 会员奖金-分红奖金配置明细
* </p>
*
* @author hzs
* @since 2023-07-03
*/ */
@Data @Data
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)