## 直推收益、平级收益处理;
This commit is contained in:
parent
cd3c17c6dc
commit
bbb91a7428
|
@ -76,11 +76,11 @@ public class CuMemberBonusController extends BaseController {
|
|||
*/
|
||||
@AccessPermissions("totalBonus")
|
||||
@PostMapping("/query-bonus-total")
|
||||
@Log(module = EOperationModule.BONUS_TOTAL,business = EOperationBusiness.BONUS_TOTAL , method = EOperationMethod.SELECT)
|
||||
@Log(module = EOperationModule.BONUS_TOTAL, business = EOperationBusiness.BONUS_TOTAL, method = EOperationMethod.SELECT)
|
||||
@ColumnAuthority(perms = "totalBonus")
|
||||
public TableDataInfo listBonusTotal(@RequestBody BonusParam bonusParam){
|
||||
List<Integer> pkVertex=new ArrayList<>();
|
||||
if(StringUtils.isNotEmpty(bonusParam.getPkBdVertexStr())){
|
||||
public TableDataInfo listBonusTotal(@RequestBody BonusParam bonusParam) {
|
||||
List<Integer> pkVertex = new ArrayList<>();
|
||||
if (StringUtils.isNotEmpty(bonusParam.getPkBdVertexStr())) {
|
||||
pkVertex = Arrays.stream(bonusParam.getPkBdVertexStr().split(","))
|
||||
.map(Integer::parseInt)
|
||||
.collect(Collectors.toList());
|
||||
|
@ -99,10 +99,10 @@ public class CuMemberBonusController extends BaseController {
|
|||
* 分页查询会员某个时间段内的奖金汇总
|
||||
*/
|
||||
@PostMapping("/export-bonus-total")
|
||||
@Log(module = EOperationModule.BONUS_TOTAL,business = EOperationBusiness.BONUS_TOTAL , method = EOperationMethod.EXPORT)
|
||||
public void exportBonusTotal(HttpServletResponse response, BonusParam bonusParam){
|
||||
List<Integer> pkVertex=new ArrayList<>();
|
||||
if(StringUtils.isNotEmpty(bonusParam.getPkBdVertexStr())){
|
||||
@Log(module = EOperationModule.BONUS_TOTAL, business = EOperationBusiness.BONUS_TOTAL, method = EOperationMethod.EXPORT)
|
||||
public void exportBonusTotal(HttpServletResponse response, BonusParam bonusParam) {
|
||||
List<Integer> pkVertex = new ArrayList<>();
|
||||
if (StringUtils.isNotEmpty(bonusParam.getPkBdVertexStr())) {
|
||||
pkVertex = Arrays.stream(bonusParam.getPkBdVertexStr().split(","))
|
||||
.map(Integer::parseInt)
|
||||
.collect(Collectors.toList());
|
||||
|
@ -121,7 +121,7 @@ public class CuMemberBonusController extends BaseController {
|
|||
List<BonusTotalVO> totalVoList = new ArrayList<>();
|
||||
cuMemberBonusList.forEach(cuMemberBonus -> {
|
||||
BonusTotalVO bonusTotalVO = BeanUtil.copyProperties(cuMemberBonus, BonusTotalVO.class);
|
||||
for(String key : CuMemberBonusVO.INCOME_ARRAY){
|
||||
for (String key : CuMemberBonusVO.INCOME_ARRAY) {
|
||||
ReflectUtils.invokeSetter(bonusTotalVO, key + BonusFieldConstants.INCOME_SUFFIX, ComputeUtil.computeMultiply(ReflectUtils.invokeGetter(cuMemberBonus, key), cuMemberBonus.getOutExchangeRate()));
|
||||
}
|
||||
totalVoList.add(bonusTotalVO);
|
||||
|
@ -135,9 +135,9 @@ public class CuMemberBonusController extends BaseController {
|
|||
@AccessPermissions("BonusDetail")
|
||||
@PostMapping("/query-bonus-detail")
|
||||
@Log(module = EOperationModule.BONUS_DETAIL, method = EOperationMethod.SELECT)
|
||||
public TableDataInfo listBonus(@RequestBody BonusParam bonusParam){
|
||||
List<Integer> pkVertex=new ArrayList<>();
|
||||
if(StringUtils.isNotEmpty(bonusParam.getPkBdVertexStr())){
|
||||
public TableDataInfo listBonus(@RequestBody BonusParam bonusParam) {
|
||||
List<Integer> pkVertex = new ArrayList<>();
|
||||
if (StringUtils.isNotEmpty(bonusParam.getPkBdVertexStr())) {
|
||||
pkVertex = Arrays.stream(bonusParam.getPkBdVertexStr().split(","))
|
||||
.map(Integer::parseInt)
|
||||
.collect(Collectors.toList());
|
||||
|
@ -145,16 +145,16 @@ public class CuMemberBonusController extends BaseController {
|
|||
bonusParam.setPkVertexList(pkVertex);
|
||||
bonusParam.setPkCountry(SecurityUtils.getPkCountry());
|
||||
//获取管理员权限《角色地区范围、 体系列表、团队列表)
|
||||
Date date=DateUtils.currentDate();
|
||||
if(bonusParam.getStartDate()==null||bonusParam.getEndDate()==null){
|
||||
Date date = DateUtils.currentDate();
|
||||
if (null == bonusParam.getStartDate() || null == bonusParam.getEndDate()) {
|
||||
bonusParam.setStartDate(DateUtils.currentMonthFirstDate());
|
||||
bonusParam.setEndDate(DateUtils.beforeDate(1, ChronoUnit.DAYS,date));
|
||||
bonusParam.setEndDate(DateUtils.beforeDate(1, ChronoUnit.DAYS, date));
|
||||
}
|
||||
packageBonusParam(bonusParam);
|
||||
startPage();
|
||||
List<CuMemberBonusExt> cuMemberBonusExtList = cuMemberBonusService.queryMemberBonusVoByConditionForServer(bonusParam);
|
||||
CuMemberBonusExt cmb =cuMemberBonusService.queryMemberBonusByConditionForServerSum(bonusParam);
|
||||
if(cmb!=null){
|
||||
CuMemberBonusExt cmb = cuMemberBonusService.queryMemberBonusByConditionForServerSum(bonusParam);
|
||||
if (cmb != null) {
|
||||
cmb.setMemberCode("合计");
|
||||
cuMemberBonusExtList.add(cmb);
|
||||
}
|
||||
|
@ -169,9 +169,9 @@ public class CuMemberBonusController extends BaseController {
|
|||
*/
|
||||
@PostMapping("/export-bonus-detail")
|
||||
@Log(module = EOperationModule.BONUS_DETAIL, method = EOperationMethod.SELECT)
|
||||
public void exportBonusDetail(HttpServletResponse response, BonusParam bonusParam){
|
||||
List<Integer> pkVertex=new ArrayList<>();
|
||||
if(StringUtils.isNotEmpty(bonusParam.getPkBdVertexStr())){
|
||||
public void exportBonusDetail(HttpServletResponse response, BonusParam bonusParam) {
|
||||
List<Integer> pkVertex = new ArrayList<>();
|
||||
if (StringUtils.isNotEmpty(bonusParam.getPkBdVertexStr())) {
|
||||
pkVertex = Arrays.stream(bonusParam.getPkBdVertexStr().split(","))
|
||||
.map(Integer::parseInt)
|
||||
.collect(Collectors.toList());
|
||||
|
@ -182,7 +182,7 @@ public class CuMemberBonusController extends BaseController {
|
|||
List<CuMemberBonusExt> cuMemberBonusExtList = cuMemberBonusService.queryMemberBonusVoByConditionForServer(bonusParam);
|
||||
CuMemberBonusExt cuMemberBonusExt = cuMemberBonusService.initCuMemberBonus();
|
||||
cuMemberBonusExt.setMemberCode("小计:");
|
||||
if(CollectionUtil.isNotEmpty(cuMemberBonusExtList)) {
|
||||
if (CollectionUtil.isNotEmpty(cuMemberBonusExtList)) {
|
||||
cuMemberBonusExt.setOutExchangeRate(cuMemberBonusExtList.get(0).getOutExchangeRate());
|
||||
for (CuMemberBonusExt memberBonusExt : cuMemberBonusExtList) {
|
||||
cuMemberBonusService.calculateBonusTotal(cuMemberBonusExt, memberBonusExt);
|
||||
|
@ -191,7 +191,7 @@ public class CuMemberBonusController extends BaseController {
|
|||
cuMemberBonusExtList.add(cuMemberBonusExt);
|
||||
List<CuMemberBonusVO> cuMemberBonusVoList = getBonusDetail(cuMemberBonusExtList);
|
||||
Map<String, Integer> bonusDetail = menuColumnServiceApi.queryMenuColumn("BonusDetail", SecurityUtils.getUserId()).getData();
|
||||
ExcelUtil<CuMemberBonusVO> util = new ExcelUtil<>(CuMemberBonusVO.class,bonusDetail);
|
||||
ExcelUtil<CuMemberBonusVO> util = new ExcelUtil<>(CuMemberBonusVO.class, bonusDetail);
|
||||
util.exportExcel(response, cuMemberBonusVoList, "奖金明细导出");
|
||||
}
|
||||
|
||||
|
@ -203,7 +203,7 @@ public class CuMemberBonusController extends BaseController {
|
|||
cuMemberBonusVO.setMemberCode(cuMemberBonusExt.getMemberCode());
|
||||
cuMemberBonusVO.setMemberName(cuMemberBonusExt.getMemberName());
|
||||
|
||||
for(String key :CuMemberBonusVO.INCOME_ARRAY){
|
||||
for (String key : CuMemberBonusVO.INCOME_ARRAY) {
|
||||
ReflectUtils.invokeSetter(cuMemberBonusVO, key + BonusFieldConstants.INCOME_SUFFIX, ComputeUtil.computeMultiply(ReflectUtils.invokeGetter(cuMemberBonusExt, key), cuMemberBonusExt.getOutExchangeRate()));
|
||||
}
|
||||
cuMemberBonusVoList.add(cuMemberBonusVO);
|
||||
|
@ -217,7 +217,7 @@ public class CuMemberBonusController extends BaseController {
|
|||
@AccessPermissions("sourceBonus")
|
||||
@PostMapping("/query-bonus-source")
|
||||
@Log(module = EOperationModule.BONUS_SOURCE, business = EOperationBusiness.BONUS_SOURCE, method = EOperationMethod.SELECT)
|
||||
public TableDataInfo listBonusSource(@RequestBody BonusParam bonusParam){
|
||||
public TableDataInfo listBonusSource(@RequestBody BonusParam bonusParam) {
|
||||
bonusParam.setPkCountry(SecurityUtils.getPkCountry());
|
||||
packageBonusParam(bonusParam);
|
||||
startPage();
|
||||
|
@ -230,7 +230,7 @@ public class CuMemberBonusController extends BaseController {
|
|||
*/
|
||||
@PostMapping("/export-bonus-source")
|
||||
@Log(module = EOperationModule.BONUS_SOURCE, business = EOperationBusiness.BONUS_SOURCE, method = EOperationMethod.EXPORT)
|
||||
public void exportBonusSource(HttpServletResponse response, BonusParam bonusParam){
|
||||
public void exportBonusSource(HttpServletResponse response, BonusParam bonusParam) {
|
||||
bonusParam.setPkCountry(SecurityUtils.getPkCountry());
|
||||
packageBonusParam(bonusParam);
|
||||
TableDataInfo tableDataInfo = cuMemberBonusService.queryMemberBonusDetailSerVoByCondition(bonusParam);
|
||||
|
@ -239,20 +239,20 @@ public class CuMemberBonusController extends BaseController {
|
|||
Map<String, String> transactionMap = transactionCommonService.exportEnumTransaction(EOrderType.values(), EBonusIncomeStatus.values());
|
||||
Map<Integer, String> transactionLongMap = transactionCommonService.exportEnumTransactionByDB(EnumsPrefixConstants.KEY_GRADE, EnumsPrefixConstants.KEY_AWARD);
|
||||
for (MemberBonusDetailSerVO memberBonusDetailSerVO : memberBonusDetailSerVOList) {
|
||||
if(transactionMap.containsKey(EnumsPrefixConstants.ORDER_TYPE + memberBonusDetailSerVO.getOrderType().toString())) {
|
||||
if (transactionMap.containsKey(EnumsPrefixConstants.ORDER_TYPE + memberBonusDetailSerVO.getOrderType().toString())) {
|
||||
memberBonusDetailSerVO.setOrderTypeVal(transactionMap.get(EnumsPrefixConstants.ORDER_TYPE + memberBonusDetailSerVO.getOrderType()));
|
||||
}
|
||||
if(transactionMap.containsKey(EnumsPrefixConstants.BONUS_INCOME_STATUS + memberBonusDetailSerVO.getIncomeStatus())){
|
||||
if (transactionMap.containsKey(EnumsPrefixConstants.BONUS_INCOME_STATUS + memberBonusDetailSerVO.getIncomeStatus())) {
|
||||
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()));
|
||||
}
|
||||
if(transactionLongMap.containsKey(memberBonusDetailSerVO.getPkAwards())){
|
||||
if (transactionLongMap.containsKey(memberBonusDetailSerVO.getPkAwards())) {
|
||||
memberBonusDetailSerVO.setPkAwardsVal(transactionLongMap.get(memberBonusDetailSerVO.getPkAwards()));
|
||||
}
|
||||
}
|
||||
ExcelUtil<MemberBonusDetailSerVO> util = new ExcelUtil<>(MemberBonusDetailSerVO.class,menuColumnServiceApi.queryMenuColumn("sourceBonus", SecurityUtils.getUserId()).getData());
|
||||
ExcelUtil<MemberBonusDetailSerVO> util = new ExcelUtil<>(MemberBonusDetailSerVO.class, menuColumnServiceApi.queryMenuColumn("sourceBonus", SecurityUtils.getUserId()).getData());
|
||||
util.exportExcel(response, memberBonusDetailSerVOList, "奖金来源导出");
|
||||
}
|
||||
|
||||
|
|
|
@ -45,11 +45,11 @@ import java.util.*;
|
|||
public abstract class BonusSettleHandle {
|
||||
|
||||
@DubboReference
|
||||
protected ISaOrderServiceApi saOrderServiceApi;
|
||||
ISaOrderServiceApi saOrderServiceApi;
|
||||
@DubboReference
|
||||
protected IBonusItemsServiceApi bonusItemsServiceApi;
|
||||
IBonusItemsServiceApi bonusItemsServiceApi;
|
||||
@DubboReference
|
||||
private ICurrencyServiceApi currencyServiceApi;
|
||||
ICurrencyServiceApi currencyServiceApi;
|
||||
|
||||
protected ICuMemberTreeService cuMemberTreeService;
|
||||
|
||||
|
@ -655,33 +655,12 @@ public abstract class BonusSettleHandle {
|
|||
}
|
||||
|
||||
/**
|
||||
* 获得 直推级差收益的备注
|
||||
*
|
||||
* @param saOrderExt 订单编号
|
||||
* @param cuMemberBonusRange 报单服务费
|
||||
* @param sourceMemberRangeExt 提供奖金的人
|
||||
* @param targetMemberRangeExt 获得奖金的人
|
||||
* @Description: 获得 报单服务费收益的备注
|
||||
* @return: String
|
||||
* @Author: sui q
|
||||
* @Date: 2022/11/17 11:22
|
||||
*/
|
||||
protected void rangeRemark(SaOrderExt saOrderExt, CuMemberBonusRange cuMemberBonusRange, CuMemberRangeExt sourceMemberRangeExt,
|
||||
CuMemberRangeExt targetMemberRangeExt) {
|
||||
String remark = String.format(BonusMsgConstants.RANGE, saOrderExt.getOrderCode(),
|
||||
sourceMemberRangeExt.getMemberCode() + sourceMemberRangeExt.getMemberName(),
|
||||
targetMemberRangeExt.getMemberCode() + targetMemberRangeExt.getMemberName(),
|
||||
cuMemberBonusRange.getCalAchieve(), sourceMemberRangeExt.getRangeAwardsValue(), targetMemberRangeExt.getRangeAwardsValue());
|
||||
cuMemberBonusRange.setRemark(remark);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param saOrderExt 订单编号
|
||||
* @param cuMemberBonusRange 报单服务费
|
||||
* @param sourceMemberRangeExt 提供奖金的人
|
||||
* @param targetMemberRangeExt 获得奖金的人
|
||||
* @Description: 获得 报单服务费收益的备注
|
||||
* @return: String
|
||||
* @Author: sui q
|
||||
* @Date: 2022/11/17 11:22
|
||||
*/
|
||||
protected void rangeRetailRemark(SaOrderExt saOrderExt, CuMemberBonusRange cuMemberBonusRange, CuMemberRetailRangeExt sourceMemberRangeExt,
|
||||
CuMemberRetailRangeExt targetMemberRangeExt) {
|
||||
|
@ -710,32 +689,13 @@ public abstract class BonusSettleHandle {
|
|||
}
|
||||
|
||||
/**
|
||||
* 获得 报单服务费收益的备注
|
||||
* 获得 平级收益的备注
|
||||
*
|
||||
* @param saOrderExt 订单编号
|
||||
* @param cuMemberBonusRange 报单服务费
|
||||
* @param sourceMemberRangeExt 提供奖金的人
|
||||
* @param targetMemberRangeExt 获得奖金的人
|
||||
*/
|
||||
protected void oriRangeRemark(SaOrderExt saOrderExt, CuMemberBonusRange cuMemberBonusRange, CuMemberRangeExt sourceMemberRangeExt,
|
||||
CuMemberRangeExt targetMemberRangeExt) {
|
||||
String remark = String.format(BonusMsgConstants.ORI_RANGE, saOrderExt.getOrderCode(),
|
||||
sourceMemberRangeExt.getMemberCode() + sourceMemberRangeExt.getMemberName(),
|
||||
targetMemberRangeExt.getMemberCode() + targetMemberRangeExt.getMemberName(),
|
||||
cuMemberBonusRange.getCalAchieve(), targetMemberRangeExt.getRangeAwardsValue());
|
||||
cuMemberBonusRange.setRemark(remark);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param saOrderExt 订单编号
|
||||
* @param cuMemberBonusRange 报单服务费
|
||||
* @param sourceMemberRangeExt 提供奖金的人
|
||||
* @param targetMemberRangeExt 获得奖金的人
|
||||
* @Description: 获得 报单服务费收益的备注
|
||||
* @return: String
|
||||
* @Author: sui q
|
||||
* @Date: 2022/11/17 11:22
|
||||
*/
|
||||
protected void oriRetailRangeRemark(SaOrderExt saOrderExt, CuMemberBonusRange cuMemberBonusRange, CuMemberRetailRangeExt sourceMemberRangeExt,
|
||||
CuMemberRetailRangeExt targetMemberRangeExt) {
|
||||
String remark = String.format(BonusMsgConstants.ORI_RANGE, saOrderExt.getOrderCode(),
|
||||
|
|
|
@ -1278,10 +1278,10 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
|||
// // 直推级差收益
|
||||
// BigDecimal calBonusIncome = BigDecimal.ZERO;
|
||||
|
||||
// 商品价格(没有乘商品数量)
|
||||
// 商品最终价格
|
||||
BigDecimal waresPrice = saOrderItems.getWaresPrice();
|
||||
// 商品数量
|
||||
Integer waresQuantity = saOrderItems.getWaresQuantity();
|
||||
BigDecimal waresQuantityBig = new BigDecimal(saOrderItems.getWaresQuantity());
|
||||
// 前一个会员等级
|
||||
int beforeGradeValue = 0;
|
||||
// 前一个会员等级的平级收益人数
|
||||
|
@ -1320,19 +1320,19 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
|||
// 前一个会员等级为0,肯定为第一次处理,直接处理直推级差收益
|
||||
if (EGrade.HAI_FAN.getValue() == calGradeValue) {
|
||||
// VIP,拿1份40
|
||||
rangeBonusIncome = RetailConstants.RANGE_BONUS;
|
||||
rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresQuantityBig);
|
||||
} else if (EGrade.YOU_KE.getValue() == calGradeValue) {
|
||||
// SVIP,拿2份40
|
||||
rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(new BigDecimal("2"));
|
||||
rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresQuantityBig).multiply(new BigDecimal("2"));
|
||||
} else if (EGrade.MAKER.getValue() == calGradeValue) {
|
||||
// 卓越,拿3份40
|
||||
rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(new BigDecimal("3"));
|
||||
rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresQuantityBig).multiply(new BigDecimal("3"));
|
||||
} else if (EGrade.VIP.getValue() == calGradeValue) {
|
||||
// 首席,拿4份40
|
||||
rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(new BigDecimal("4"));
|
||||
rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresQuantityBig).multiply(new BigDecimal("4"));
|
||||
} else if (EGrade.S_VIP.getValue() == calGradeValue) {
|
||||
// 合伙人,拿5份40
|
||||
rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(new BigDecimal("5"));
|
||||
rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresQuantityBig).multiply(new BigDecimal("5"));
|
||||
}
|
||||
// 赋值前一个会员等级
|
||||
beforeGradeValue = calGradeValue;
|
||||
|
@ -1361,7 +1361,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
|||
int tmpGradeVal = (calGradeValue - beforeGradeValue) / 10;
|
||||
|
||||
// 新等级的直推级差收益
|
||||
rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(new BigDecimal(tmpGradeVal));
|
||||
rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresQuantityBig).multiply(new BigDecimal(tmpGradeVal));
|
||||
// 直推级差收益 = 新等级的直推级差收益 - 上一等级的平级收益
|
||||
rangeBonusIncome = rangeBonusIncome.subtract(beforeSameBonus);
|
||||
|
||||
|
@ -1382,7 +1382,8 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
|||
int pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMemberRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_RANGE_INCOME.getValue());
|
||||
CuMemberBonusRange cuMemberBonusRange = getCuMemberRetailBonusRange(saOrderExt, targetMemberRangeExt, cuMemberBonus, pkBonusItems);
|
||||
cuMemberBonusRange.setCalValue(BigDecimal.ZERO);
|
||||
cuMemberBonusRange.setPretaxIncome(rangeBonusIncome.multiply(new BigDecimal(waresQuantity)));
|
||||
cuMemberBonusRange.setCalAchieve(waresPrice);
|
||||
cuMemberBonusRange.setPretaxIncome(rangeBonusIncome);
|
||||
cuMemberBonusRange.setPkRange(targetMemberRangeExt.getPkGrade());
|
||||
cuMemberBonusRange.setPkBeforeRange(sourceMemberRangeExt.getPkGrade());
|
||||
cuMemberBonusRange.setPkOrderItems(saOrderItems.getPkId());
|
||||
|
@ -1400,8 +1401,9 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
|||
targetMemberRangeExt.getIncomeStatus(), targetMemberRangeExt.getPkSettleCountry(), targetMemberRangeExt.getPkRate() == null ? saOrderExt.getPkRate() : targetMemberRangeExt.getPkRate());
|
||||
int pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMemberRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_SAME_LEVEL_INCOME.getValue());
|
||||
CuMemberBonusRange oriMemberBonusRange = getCuMemberRetailBonusRange(saOrderExt, targetMemberRangeExt, cuMemberBonus, pkBonusItems);
|
||||
oriMemberBonusRange.setCalValue(BigDecimal.valueOf(2));
|
||||
oriMemberBonusRange.setPretaxIncome(sameBonusIncome.multiply(new BigDecimal(waresQuantity)));
|
||||
oriMemberBonusRange.setCalValue(RetailConstants.SAME_RATIO);
|
||||
oriMemberBonusRange.setCalAchieve(waresPrice);
|
||||
oriMemberBonusRange.setPretaxIncome(sameBonusIncome);
|
||||
oriMemberBonusRange.setPkRange(targetMemberRangeExt.getPkGrade());
|
||||
oriMemberBonusRange.setPkBeforeRange(sourceMemberRangeExt.getPkGrade());
|
||||
oriMemberBonusRange.setPkOrderItems(saOrderItems.getPkId());
|
||||
|
|
|
@ -9,27 +9,11 @@ import java.math.BigDecimal;
|
|||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* @description: 奖金明细表
|
||||
* @author: sui q
|
||||
* @time: 2023/5/20 15:31
|
||||
* @classname: CuMemberBonusVO
|
||||
* @package_name: com.hzs.member.bonus.vo
|
||||
* version 1.0.0
|
||||
* 奖金明细表
|
||||
*/
|
||||
@Data
|
||||
public class CuMemberBonusVO implements Serializable {
|
||||
|
||||
// /**
|
||||
// * 需要转换人民币的
|
||||
// */
|
||||
// public static final String[] INCOME_ARRAY = new String[]{
|
||||
// "directIncome", "expandIncome", "expandNoCapping", "expandCapping",
|
||||
// "coachIncome", "shareIncome", "serviceIncome", "cloudDirectIncome",
|
||||
// "cloudPurIncome", "cloudRepurIncome", "repurPushIncome", "repurRangeIncome", "repurExpandIncome",
|
||||
// "repurCoupon", "repurCouponShare", "backPoints", "serviceSpend",
|
||||
// "globalPoints", "carAwardPoints", "storeIncome", "hiFunIncome",
|
||||
// "makerDirectIncome", "makerShareIncome", "makerRealSubtotal", "purRealSubtotal",
|
||||
// "cloudRealSubtotal", "repurRealSubtotal", "repurCouponSubtotal", "realIncomeTotal"};
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
|
@ -102,185 +86,60 @@ public class CuMemberBonusVO implements Serializable {
|
|||
*/
|
||||
private Integer grantStatus;
|
||||
|
||||
// /**
|
||||
// * 直推收益
|
||||
// */
|
||||
// @Excel(name = "直推收益", scale = 2)
|
||||
// private BigDecimal directIncomeOri;
|
||||
//
|
||||
// /**
|
||||
// * 直推收益
|
||||
// */
|
||||
// @Excel(name = "直推收益($)", scale = 2)
|
||||
// private BigDecimal directIncome;
|
||||
//
|
||||
// /**
|
||||
// * 拓展收益
|
||||
// */
|
||||
// @Excel(name = "拓展收益", scale = 2)
|
||||
// private BigDecimal expandIncomeOri;
|
||||
//
|
||||
// /**
|
||||
// * 拓展收益
|
||||
// */
|
||||
// @Excel(name = "拓展收益($)", scale = 2)
|
||||
// private BigDecimal expandIncome;
|
||||
//
|
||||
// /**
|
||||
// * 拓展无封 (拓展收益按等级正常比例结算,并 拓展收益按等级正常比例结算 无封顶)
|
||||
// */
|
||||
// private BigDecimal expandNoCapping;
|
||||
//
|
||||
// /**
|
||||
// * 拓展封顶 (拓展收益按等级正常比例结算,不按4-N结算,根据配置的封顶值限制最大收益)
|
||||
// */
|
||||
// private BigDecimal expandCapping;
|
||||
//
|
||||
//
|
||||
// /**
|
||||
// * 拓展无封 (拓展收益按等级正常比例结算,并 拓展收益按等级正常比例结算 无封顶)
|
||||
// */
|
||||
// private BigDecimal expandNoCappingOri;
|
||||
//
|
||||
// /**
|
||||
// * 拓展封顶 (拓展收益按等级正常比例结算,不按4-N结算,根据配置的封顶值限制最大收益)
|
||||
// */
|
||||
// private BigDecimal expandCappingOri;
|
||||
//
|
||||
// /**
|
||||
// * 辅导收益
|
||||
// */
|
||||
// @Excel(name = "辅导收益", scale = 2)
|
||||
// private BigDecimal coachIncomeOri;
|
||||
//
|
||||
// /**
|
||||
// * 辅导收益
|
||||
// */
|
||||
// @Excel(name = "辅导收益($)", scale = 2)
|
||||
// private BigDecimal coachIncome;
|
||||
//
|
||||
// /**
|
||||
// * 分红收益
|
||||
// */
|
||||
// @Excel(name = "分红收益", scale = 2)
|
||||
// private BigDecimal shareIncomeOri;
|
||||
//
|
||||
// /**
|
||||
// * 分红收益
|
||||
// */
|
||||
// @Excel(name = "分红收益($)", scale = 2)
|
||||
// private BigDecimal shareIncome;
|
||||
//
|
||||
// /**
|
||||
// * 报单收益
|
||||
// */
|
||||
// @Excel(name = "报单收益", scale = 2)
|
||||
// private BigDecimal serviceIncomeOri;
|
||||
//
|
||||
// /**
|
||||
// * 报单收益
|
||||
// */
|
||||
// @Excel(name = "服务收益($)", scale = 2)
|
||||
// private BigDecimal serviceIncome;
|
||||
//
|
||||
//
|
||||
// /**
|
||||
// * 云代直推收益
|
||||
// */
|
||||
// @Excel(name = "云代直推收益", scale = 2)
|
||||
// private BigDecimal cloudDirectIncomeOri;
|
||||
//
|
||||
// /**
|
||||
// * 云代直推收益
|
||||
// */
|
||||
// @Excel(name = "云代直推收益($)", scale = 2)
|
||||
// private BigDecimal cloudDirectIncome;
|
||||
//
|
||||
// /**
|
||||
// * 云代首购收益
|
||||
// */
|
||||
// @Excel(name = "云代首购收益", scale = 2)
|
||||
// private BigDecimal cloudPurIncomeOri;
|
||||
//
|
||||
// /**
|
||||
// * 云代首购收益
|
||||
// */
|
||||
// @Excel(name = "云代首购收益($)", scale = 2)
|
||||
// private BigDecimal cloudPurIncome;
|
||||
//
|
||||
// /**
|
||||
// * 云代复购收益
|
||||
// */
|
||||
// @Excel(name = "云代复购收益", scale = 2)
|
||||
// private BigDecimal cloudRepurIncomeOri;
|
||||
//
|
||||
// /**
|
||||
// * 云代复购收益
|
||||
// */
|
||||
// @Excel(name = "云代复购收益($)", scale = 2)
|
||||
// private BigDecimal cloudRepurIncome;
|
||||
//
|
||||
// /**
|
||||
// * 复购级差收益
|
||||
// */
|
||||
// @Excel(name = "复购推荐收益", scale = 2)
|
||||
// private BigDecimal repurPushIncomeOri;
|
||||
//
|
||||
// /**
|
||||
// * 复购级差收益
|
||||
// */
|
||||
// @Excel(name = "复购推荐收益", scale = 2)
|
||||
// private BigDecimal repurPushIncome;
|
||||
//
|
||||
// /**
|
||||
// * 复购级差收益
|
||||
// */
|
||||
// @Excel(name = "复购级差收益", scale = 2)
|
||||
// private BigDecimal repurRangeIncomeOri;
|
||||
//
|
||||
// /**
|
||||
// * 复购级差收益
|
||||
// */
|
||||
// @Excel(name = "复购级差收益($)", scale = 2)
|
||||
// private BigDecimal repurRangeIncome;
|
||||
//
|
||||
//
|
||||
// /**
|
||||
// * 复购拓展收益
|
||||
// */
|
||||
// @Excel(name = "复购拓展收益", scale = 2)
|
||||
// private BigDecimal repurExpandIncomeOri;
|
||||
//
|
||||
// /**
|
||||
// * 复购拓展收益
|
||||
// */
|
||||
// @Excel(name = "复购拓展收益($)", scale = 2)
|
||||
// private BigDecimal repurExpandIncome;
|
||||
//
|
||||
// /**
|
||||
// * 复购卷
|
||||
// */
|
||||
// @Excel(name = "复购卷", scale = 2)
|
||||
// private BigDecimal repurCouponOri;
|
||||
//
|
||||
// /**
|
||||
// * 复购卷
|
||||
// */
|
||||
// @Excel(name = "复购卷($)", scale = 2)
|
||||
// private BigDecimal repurCoupon;
|
||||
//
|
||||
// /**
|
||||
// * 复购券均分收益
|
||||
// */
|
||||
// @Excel(name = "复购券均分", scale = 2)
|
||||
// private BigDecimal repurCouponShareOri;
|
||||
//
|
||||
// /**
|
||||
// * 复购券均分收益
|
||||
// */
|
||||
// @Excel(name = "复购券均分($)", scale = 2)
|
||||
// private BigDecimal repurCouponShare;
|
||||
//
|
||||
/**
|
||||
* 需要转换人民币的
|
||||
*/
|
||||
public static final String[] INCOME_ARRAY = new String[]{
|
||||
"backPoints", "retailRangeIncome", "retailSameLevelIncome", "retailAreaIncome",
|
||||
"retailBenefitRangeIncome", "retailBenefitAvgIncome",
|
||||
"retailBenefitIncome", "retailRealSubtotal", "realIncomeTotal"};
|
||||
|
||||
|
||||
private BigDecimal retailRangeIncome;
|
||||
/**
|
||||
* 直推收益
|
||||
*/
|
||||
@Excel(name = "直推收益", scale = 2)
|
||||
private BigDecimal retailRangeIncomeOri;
|
||||
|
||||
private BigDecimal retailSameLevelIncome;
|
||||
/**
|
||||
* 平级收益
|
||||
*/
|
||||
@Excel(name = "平级收益", scale = 2)
|
||||
private BigDecimal retailSameLevelIncomeOri;
|
||||
|
||||
private BigDecimal retailAreaIncome;
|
||||
/**
|
||||
* 区域分红
|
||||
*/
|
||||
@Excel(name = "区域分红", scale = 2)
|
||||
private BigDecimal retailAreaIncomeOri;
|
||||
|
||||
/**
|
||||
* 新零售福利极差收益
|
||||
*/
|
||||
private BigDecimal retailBenefitRangeIncome;
|
||||
|
||||
@Excel(name = " 福利极差收益", scale = 2)
|
||||
private BigDecimal retailBenefitRangeIncomeOri;
|
||||
|
||||
/**
|
||||
* 新零售福利平均收益
|
||||
*/
|
||||
private BigDecimal retailBenefitAvgIncome;
|
||||
|
||||
@Excel(name = " 福利平均收益", scale = 2)
|
||||
private BigDecimal retailBenefitAvgIncomeOri;
|
||||
|
||||
/**
|
||||
* 新零售福利加权收益
|
||||
*/
|
||||
private BigDecimal retailBenefitIncome;
|
||||
|
||||
@Excel(name = " 福利加权收益", scale = 2)
|
||||
private BigDecimal retailBenefitIncomeOri;
|
||||
|
||||
/**
|
||||
* 商城重消
|
||||
*/
|
||||
|
@ -290,184 +149,11 @@ public class CuMemberBonusVO implements Serializable {
|
|||
/**
|
||||
* 商城重消
|
||||
*/
|
||||
@Excel(name = "商城重消($)", scale = 2)
|
||||
private BigDecimal backPoints;
|
||||
//
|
||||
// /**
|
||||
// * 平台服务费
|
||||
// */
|
||||
// @Excel(name = "平台服务费", scale = 2)
|
||||
// private BigDecimal serviceSpendOri;
|
||||
//
|
||||
// /**
|
||||
// * 平台服务费
|
||||
// */
|
||||
// @Excel(name = "平台服务费($)", scale = 2)
|
||||
// private BigDecimal serviceSpend;
|
||||
//
|
||||
// /**
|
||||
// * 环球积分
|
||||
// */
|
||||
// @Excel(name = "直推极差", scale = 2)
|
||||
// private BigDecimal globalPointsOri;
|
||||
//
|
||||
// /**
|
||||
// * 环球积分
|
||||
// */
|
||||
// @Excel(name = "直推极差($)", scale = 2)
|
||||
// private BigDecimal globalPoints;
|
||||
//
|
||||
// /**
|
||||
// * 车奖积分
|
||||
// */
|
||||
// @Excel(name = "车奖积分", scale = 2)
|
||||
// private BigDecimal carAwardPointsOri;
|
||||
//
|
||||
//
|
||||
// /**
|
||||
// * 车奖积分
|
||||
// */
|
||||
// @Excel(name = "车奖积分($)", scale = 2)
|
||||
// private BigDecimal carAwardPoints;
|
||||
//
|
||||
// /**
|
||||
// * 店铺收益
|
||||
// */
|
||||
// @Excel(name = "店铺收益", scale = 2)
|
||||
// private BigDecimal storeIncomeOri;
|
||||
//
|
||||
// /**
|
||||
// * 店铺收益
|
||||
// */
|
||||
// @Excel(name = "店铺收益($)", scale = 2)
|
||||
// private BigDecimal storeIncome;
|
||||
//
|
||||
// /**
|
||||
// * 嗨粉推荐收益
|
||||
// */
|
||||
// @Excel(name = "嗨粉推荐收益", scale = 2)
|
||||
// private BigDecimal hiFunIncomeOri;
|
||||
//
|
||||
// /**
|
||||
// * 嗨粉推荐收益
|
||||
// */
|
||||
// @Excel(name = "嗨粉推荐收益($)", scale = 2)
|
||||
// private BigDecimal hiFunIncome;
|
||||
//
|
||||
// /**
|
||||
// * 首购实发小计
|
||||
// */
|
||||
// @Excel(name = "首购实发小计", scale = 2)
|
||||
// private BigDecimal purRealSubtotalOri;
|
||||
//
|
||||
// /**
|
||||
// * 首购实发小计
|
||||
// */
|
||||
// @Excel(name = "首购实发小计($)", scale = 2)
|
||||
// private BigDecimal purRealSubtotal;
|
||||
//
|
||||
// /**
|
||||
// * 云代实发小计
|
||||
// */
|
||||
// @Excel(name = "云代实发小计", scale = 2)
|
||||
// private BigDecimal cloudRealSubtotalOri;
|
||||
//
|
||||
// /**
|
||||
// * 云代实发小计
|
||||
// */
|
||||
// @Excel(name = "云代实发小计($)", scale = 2)
|
||||
// private BigDecimal cloudRealSubtotal;
|
||||
//
|
||||
// /**
|
||||
// * 复购实发小计
|
||||
// */
|
||||
// @Excel(name = "复购实发小计", scale = 2)
|
||||
// private BigDecimal repurRealSubtotalOri;
|
||||
//
|
||||
// /**
|
||||
// * 复购实发小计
|
||||
// */
|
||||
// @Excel(name = "复购实发小计($)", scale = 2)
|
||||
// private BigDecimal repurRealSubtotal;
|
||||
//
|
||||
// /**
|
||||
// * 复购券小计
|
||||
// */
|
||||
// @Excel(name = "复购券实发小计", scale = 2)
|
||||
// private BigDecimal repurCouponSubtotalOri;
|
||||
//
|
||||
// /**
|
||||
// * 复购券小计
|
||||
// */
|
||||
// @Excel(name = "复购券实发小计($)", scale = 2)
|
||||
// private BigDecimal repurCouponSubtotal;
|
||||
|
||||
/**
|
||||
* 需要转换人民币的
|
||||
*/
|
||||
public static final String[] INCOME_ARRAY = new String[]{
|
||||
"backPoints","retailRangeIncome", "retailSameLevelIncome", "retailAreaIncome",
|
||||
"retailBenefitRangeIncome","retailBenefitAvgIncome",
|
||||
"retailBenefitIncome","retailRealSubtotal","realIncomeTotal"};
|
||||
|
||||
/**
|
||||
* 新零售极差收益
|
||||
*/
|
||||
@Excel(name = "新零售极差收益($)", scale = 2)
|
||||
private BigDecimal retailRangeIncome;
|
||||
|
||||
@Excel(name = " 新零售极差收益", scale = 2)
|
||||
private BigDecimal retailRangeIncomeOri;
|
||||
|
||||
/**
|
||||
* 新零售平级收益
|
||||
*/
|
||||
@Excel(name = "平级收益($)", scale = 2)
|
||||
private BigDecimal retailSameLevelIncome;
|
||||
|
||||
@Excel(name = " 平级收益", scale = 2)
|
||||
private BigDecimal retailSameLevelIncomeOri;
|
||||
|
||||
/**
|
||||
* 新零售区域收益
|
||||
*/
|
||||
@Excel(name = "区域收益($)", scale = 2)
|
||||
private BigDecimal retailAreaIncome;
|
||||
|
||||
@Excel(name = " 区域收益", scale = 2)
|
||||
private BigDecimal retailAreaIncomeOri;
|
||||
|
||||
/**
|
||||
* 新零售福利极差收益
|
||||
*/
|
||||
@Excel(name = "福利极差收益($)", scale = 2)
|
||||
private BigDecimal retailBenefitRangeIncome;
|
||||
|
||||
@Excel(name = " 福利极差收益", scale = 2)
|
||||
private BigDecimal retailBenefitRangeIncomeOri;
|
||||
|
||||
/**
|
||||
* 新零售福利平均收益
|
||||
*/
|
||||
@Excel(name = "福利平均收益($)", scale = 2)
|
||||
private BigDecimal retailBenefitAvgIncome;
|
||||
|
||||
@Excel(name = " 福利平均收益", scale = 2)
|
||||
private BigDecimal retailBenefitAvgIncomeOri;
|
||||
|
||||
/**
|
||||
* 新零售福利加权收益
|
||||
*/
|
||||
@Excel(name = "福利加权收益($)", scale = 2)
|
||||
private BigDecimal retailBenefitIncome;
|
||||
|
||||
@Excel(name = " 福利加权收益", scale = 2)
|
||||
private BigDecimal retailBenefitIncomeOri;
|
||||
|
||||
/**
|
||||
* 新零售收益小计
|
||||
*/
|
||||
@Excel(name = "收益小计($)", scale = 2)
|
||||
private BigDecimal retailRealSubtotal;
|
||||
|
||||
@Excel(name = " 收益小计", scale = 2)
|
||||
|
@ -479,10 +165,8 @@ public class CuMemberBonusVO implements Serializable {
|
|||
@Excel(name = "实发收益总计", scale = 2)
|
||||
private BigDecimal realIncomeTotalOri;
|
||||
|
||||
|
||||
/**
|
||||
* 实发收益总计
|
||||
*/
|
||||
@Excel(name = "实发收益总计($)", scale = 2)
|
||||
private BigDecimal realIncomeTotal;
|
||||
}
|
||||
|
|
|
@ -298,8 +298,11 @@
|
|||
</if>
|
||||
order by cp.settle_date desc
|
||||
</select>
|
||||
|
||||
<select id="queryMemberBonusByConditionForServer" resultMap="CuMemberBonus">
|
||||
select cm.member_code,cm.member_name,cm.pk_settle_grade,cm.pk_awards,bv.vertex_name,ct.team_name,
|
||||
select cm.member_code, cm.member_name,
|
||||
cm.pk_settle_grade, cm.pk_awards,
|
||||
bv.vertex_name, ct.team_name,
|
||||
cb.period,cp.settle_date,cb.direct_income,cb.expand_income,cb.expand_no_capping,
|
||||
cb.expand_capping,cb.coach_income,cb.share_income,cb.service_income,cb.back_points,cb.service_spend,
|
||||
cb.pur_real_subtotal,cb.repur_push_income,cb.repur_range_income,cb.repur_expand_income,cb.repur_real_subtotal,
|
||||
|
@ -311,9 +314,7 @@
|
|||
cb.retail_benefit_range_income,cb.retail_benefit_avg_income,
|
||||
cb.retail_benefit_income,cb.retail_real_subtotal,
|
||||
cb.real_income_total,
|
||||
cm.pk_vertex,
|
||||
cm.service_code,
|
||||
cm.nick_name
|
||||
cm.pk_vertex, cm.service_code, cm.nick_name
|
||||
from cu_member_bonus cb
|
||||
inner join cu_member cm
|
||||
on cb.pk_member = cm.pk_id
|
||||
|
@ -325,7 +326,7 @@
|
|||
on ct.pk_id = cm.pk_team_code
|
||||
left join bd_currency bc
|
||||
on bc.pk_country = cb.pk_country
|
||||
where cb.del_flag=0 and cm.del_flag=0
|
||||
where cb.del_flag = 0 and cm.del_flag = 0
|
||||
and cp.del_flag=0
|
||||
<if test="bonusParam.pkCountry != null">
|
||||
and cm.pk_settle_country = #{bonusParam.pkCountry}
|
||||
|
|
|
@ -1,13 +1,11 @@
|
|||
package com.hzs.system.config.controller.manage;
|
||||
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.hzs.common.core.annotation.Log;
|
||||
import com.hzs.common.core.constant.CacheConstants;
|
||||
import com.hzs.common.core.constant.msg.ConfigMsgConstants;
|
||||
import com.hzs.common.core.domain.R;
|
||||
import com.hzs.common.core.enums.*;
|
||||
import com.hzs.common.core.service.RedisService;
|
||||
import com.hzs.common.core.utils.StringUtils;
|
||||
|
@ -19,10 +17,8 @@ import com.hzs.common.domain.system.config.BdBonusItems;
|
|||
import com.hzs.common.domain.system.config.ext.BdBonusItemsExt;
|
||||
import com.hzs.common.security.utils.SecurityUtils;
|
||||
import com.hzs.common.util.TransactionUtils;
|
||||
import com.hzs.system.base.ITransactionServiceApi;
|
||||
import com.hzs.system.config.service.IBdBonusItemsService;
|
||||
import com.hzs.system.config.vo.ApiBdBonusItemsVO;
|
||||
import org.apache.dubbo.config.annotation.DubboReference;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
|
@ -32,12 +28,7 @@ import java.util.Date;
|
|||
import java.util.List;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 奖项配置 前端控制器
|
||||
* </p>
|
||||
*
|
||||
* @author zhangjing
|
||||
* @since 2022-11-09
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/manage/bd-bonus-items")
|
||||
|
@ -45,79 +36,63 @@ public class BdBonusItemsController extends BaseController {
|
|||
|
||||
@Autowired
|
||||
private IBdBonusItemsService bonusItemsService;
|
||||
@DubboReference
|
||||
private ITransactionServiceApi iTransactionServiceApi;
|
||||
@Autowired
|
||||
private RedisService redisService;
|
||||
|
||||
@Autowired
|
||||
public void setRedisService(RedisService redisService) {
|
||||
this.redisService = redisService;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @description: 查询奖项配置列表
|
||||
* @author: zhang jing
|
||||
* @date: 2022/8/30 10:20
|
||||
* @param: [bonusItems]
|
||||
* @return: com.hzs.common.core.web.page.TableDataInfo
|
||||
* 查询奖项配置列表
|
||||
**/
|
||||
@Log(module = EOperationModule.BONUS_CONFIG, business=EOperationBusiness.BONUS_ITEMS, method = EOperationMethod.SELECT)
|
||||
@Log(module = EOperationModule.BONUS_CONFIG, business = EOperationBusiness.BONUS_ITEMS, method = EOperationMethod.SELECT)
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo list(BdBonusItems bonusItems) {
|
||||
startPage();
|
||||
QueryWrapper<BdBonusItems> queryWrapper = new QueryWrapper();
|
||||
queryWrapper.eq("PK_COUNTRY", SecurityUtils.getPkCountry());
|
||||
if(StringUtils.isNotNull(bonusItems.getBonusName())){
|
||||
queryWrapper.eq("BONUS_NAME",bonusItems.getBonusName());
|
||||
}
|
||||
queryWrapper.orderByAsc("PK_ID");
|
||||
List<BdBonusItemsExt> listExt = new ArrayList<>();
|
||||
|
||||
startPage();
|
||||
LambdaQueryWrapper<BdBonusItems> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(BdBonusItems::getPkCountry, SecurityUtils.getPkCountry());
|
||||
if (StringUtils.isNotNull(bonusItems.getBonusName())) {
|
||||
queryWrapper.eq(BdBonusItems::getBonusName, bonusItems.getBonusName());
|
||||
}
|
||||
queryWrapper.orderByAsc(BdBonusItems::getPkId);
|
||||
List<BdBonusItems> list = bonusItemsService.list(queryWrapper);
|
||||
list.forEach(item -> listExt.add(BeanUtil.copyProperties(item, BdBonusItemsExt.class)));
|
||||
|
||||
TableDataInfo tableDataInfo = getDataTable(list);
|
||||
tableDataInfo.setRows(listExt);
|
||||
return tableDataInfo;
|
||||
}
|
||||
|
||||
/**
|
||||
* @description: 导出
|
||||
* @author: zhang jing
|
||||
* @date: 2023/4/4 9:56
|
||||
* @param: [response, bonusItems]
|
||||
* @return: void
|
||||
* 导出
|
||||
**/
|
||||
@Log(module = EOperationModule.BONUS_CONFIG, business=EOperationBusiness.BONUS_ITEMS, method = EOperationMethod.EXPORT)
|
||||
@Log(module = EOperationModule.BONUS_CONFIG, business = EOperationBusiness.BONUS_ITEMS, method = EOperationMethod.EXPORT)
|
||||
@PostMapping("/export")
|
||||
public void export(HttpServletResponse response, BdBonusItems bonusItems) {
|
||||
QueryWrapper<BdBonusItems> queryWrapper = new QueryWrapper();
|
||||
queryWrapper.eq("PK_COUNTRY", SecurityUtils.getPkCountry());
|
||||
if(StringUtils.isNotNull(bonusItems.getBonusName())){
|
||||
queryWrapper.eq("BONUS_NAME",bonusItems.getBonusName());
|
||||
LambdaQueryWrapper<BdBonusItems> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(BdBonusItems::getPkCountry, SecurityUtils.getPkCountry());
|
||||
if (StringUtils.isNotNull(bonusItems.getBonusName())) {
|
||||
queryWrapper.eq(BdBonusItems::getBonusName, bonusItems.getBonusName());
|
||||
}
|
||||
queryWrapper.orderByAsc("PK_ID");
|
||||
queryWrapper.orderByAsc(BdBonusItems::getPkId);
|
||||
List<BdBonusItemsExt> listExt = new ArrayList<>();
|
||||
List<BdBonusItems> list = bonusItemsService.list(queryWrapper);
|
||||
list.forEach(item -> listExt.add(BeanUtil.copyProperties(item, BdBonusItemsExt.class)));
|
||||
ExcelUtil<BdBonusItemsExt> util = new ExcelUtil<>(BdBonusItemsExt.class);
|
||||
util.exportExcel(response, listExt, "奖项配置");
|
||||
}
|
||||
|
||||
/**
|
||||
* @description: 查询奖项配置列表(下拉选)
|
||||
* @author: zhang jing
|
||||
* @date: 2022/8/30 10:20
|
||||
* @param: [bonusItems]
|
||||
* @return: com.hzs.common.core.web.page.TableDataInfo
|
||||
* 查询奖项配置列表(下拉选)
|
||||
**/
|
||||
@Log(module = EOperationModule.BONUS_CONFIG, business=EOperationBusiness.BONUS_ITEMS, method = EOperationMethod.SELECT)
|
||||
@Log(module = EOperationModule.BONUS_CONFIG, business = EOperationBusiness.BONUS_ITEMS, method = EOperationMethod.SELECT)
|
||||
@GetMapping("/listNoPage")
|
||||
public TableDataInfo listNoPage(BdBonusItems bonusItems) {
|
||||
QueryWrapper<BdBonusItems> queryWrapper = new QueryWrapper();
|
||||
queryWrapper.eq("PK_COUNTRY", SecurityUtils.getPkCountry());
|
||||
if(StringUtils.isNotNull(bonusItems.getBonusName())){
|
||||
queryWrapper.eq("BONUS_NAME",bonusItems.getBonusName());
|
||||
LambdaQueryWrapper<BdBonusItems> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(BdBonusItems::getPkCountry, SecurityUtils.getPkCountry());
|
||||
if (StringUtils.isNotNull(bonusItems.getBonusName())) {
|
||||
queryWrapper.eq(BdBonusItems::getBonusName, bonusItems.getBonusName());
|
||||
}
|
||||
queryWrapper.orderByAsc("PK_ID");
|
||||
queryWrapper.orderByAsc(BdBonusItems::getPkId);
|
||||
List<ApiBdBonusItemsVO> listVO = new ArrayList<>();
|
||||
List<BdBonusItems> list = bonusItemsService.list(queryWrapper);
|
||||
list.forEach(item -> listVO.add(BeanUtil.copyProperties(item, ApiBdBonusItemsVO.class)));
|
||||
|
@ -125,112 +100,71 @@ public class BdBonusItemsController extends BaseController {
|
|||
}
|
||||
|
||||
/**
|
||||
* @description: 生成奖项
|
||||
* @author: zhang jing
|
||||
* @date: 2022/10/22 9:54
|
||||
* @param: [grade]
|
||||
* @return: com.hzs.common.core.web.domain.AjaxResult
|
||||
* 生成奖项
|
||||
**/
|
||||
@Log(module = EOperationModule.BONUS_CONFIG, business=EOperationBusiness.BONUS_ITEMS, method = EOperationMethod.INSERT)
|
||||
@Log(module = EOperationModule.BONUS_CONFIG, business = EOperationBusiness.BONUS_ITEMS, method = EOperationMethod.INSERT)
|
||||
@PostMapping("/generate")
|
||||
public AjaxResult generate(@RequestBody BdBonusItems bonusItems) {
|
||||
return AjaxResult.success(bonusItemsService.generate(bonusItems));
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @description: 修改奖项配置
|
||||
* @author: zhang jing
|
||||
* @date: 2022/8/30 10:21
|
||||
* @param: [bonusItems]
|
||||
* @return: com.hzs.common.core.web.domain.AjaxResult
|
||||
* 修改奖项配置
|
||||
**/
|
||||
@Log(module = EOperationModule.BONUS_CONFIG, business=EOperationBusiness.BONUS_ITEMS, method = EOperationMethod.UPDATE)
|
||||
@Log(module = EOperationModule.BONUS_CONFIG, business = EOperationBusiness.BONUS_ITEMS, method = EOperationMethod.UPDATE)
|
||||
@PostMapping("/update")
|
||||
public AjaxResult update(@RequestBody BdBonusItems bonusItems) {
|
||||
Integer pkCountry=SecurityUtils.getPkCountry();
|
||||
if(StringUtils.isEmpty(bonusItems.getBonusName())){
|
||||
Integer pkCountry = SecurityUtils.getPkCountry();
|
||||
if (StringUtils.isEmpty(bonusItems.getBonusName())) {
|
||||
return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.BONUS_NAME_NOT_NULL));
|
||||
}
|
||||
if(StringUtils.isNull(bonusItems.getEnableState())){
|
||||
if (StringUtils.isNull(bonusItems.getEnableState())) {
|
||||
return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.ENABLE_STATE_NOT_NULL));
|
||||
}
|
||||
if(StringUtils.isNull(bonusItems.getSettleType())){
|
||||
if (StringUtils.isNull(bonusItems.getSettleType())) {
|
||||
return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.SETTLE_TYPE_NOT_NULL));
|
||||
}
|
||||
if(StringUtils.isNull(bonusItems.getPublishTime())){
|
||||
if (StringUtils.isNull(bonusItems.getPublishTime())) {
|
||||
return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.PUBLISH_TIME_NOT_NULL));
|
||||
}
|
||||
if(StringUtils.isNull(bonusItems.getPublishDate())){
|
||||
if (StringUtils.isNull(bonusItems.getPublishDate())) {
|
||||
return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.PUBLISH_DATE_NOT_NULL));
|
||||
}
|
||||
if(StringUtils.isNull(bonusItems.getGrantDate())){
|
||||
if (StringUtils.isNull(bonusItems.getGrantDate())) {
|
||||
return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.GRANT_DATE_NOT_NULL));
|
||||
}
|
||||
if(StringUtils.isNull(bonusItems.getWithdrawalDate())){
|
||||
if (StringUtils.isNull(bonusItems.getWithdrawalDate())) {
|
||||
return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.WITHDRAWAL_DATE_NOT_NULL));
|
||||
}
|
||||
|
||||
|
||||
//字段翻译保存到数据库
|
||||
if(null!=bonusItems.getPkTransaction()){
|
||||
R<Boolean> b = iTransactionServiceApi.updateTransaction(pkCountry,
|
||||
bonusItems.getBonusName(),bonusItems.getPkTransaction(), true);
|
||||
}else{
|
||||
//字段翻译保存到数据库
|
||||
R<Integer> pkTransaction= iTransactionServiceApi.createTransaction(pkCountry, ETransactionKey.BD_BONUS_ITEMS,
|
||||
bonusItems.getBonusName(), EYesNo.YES, EYesNo.NO);
|
||||
bonusItems.setPkTransaction(pkTransaction.getData());
|
||||
}
|
||||
bonusItems.setPkModified(SecurityUtils.getUserId());
|
||||
bonusItems.setModifiedTime(new Date());
|
||||
redisService.deleteObject(CacheConstants.BD_BONUS_ITEMS + pkCountry);
|
||||
return toAjax(bonusItemsService.updateById(bonusItems));
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* @description: 查询单条奖项配置
|
||||
* @author: zhang jing
|
||||
* @date: 2022/8/30 10:21
|
||||
* @param: [pkId]
|
||||
* @return: com.hzs.common.core.web.domain.AjaxResult
|
||||
* 查询单条奖项配置
|
||||
**/
|
||||
@Log(module = EOperationModule.BONUS_CONFIG, business=EOperationBusiness.BONUS_ITEMS, method = EOperationMethod.SELECT)
|
||||
@Log(module = EOperationModule.BONUS_CONFIG, business = EOperationBusiness.BONUS_ITEMS, method = EOperationMethod.SELECT)
|
||||
@GetMapping("/getOne/{pkId}")
|
||||
public AjaxResult getOne(@PathVariable Long pkId) {
|
||||
BdBonusItems bonusItems = bonusItemsService.getById(pkId);
|
||||
BdBonusItemsExt bonusItemsExt=BeanUtil.copyProperties(bonusItems, BdBonusItemsExt.class);
|
||||
BdBonusItemsExt bonusItemsExt = BeanUtil.copyProperties(bonusItems, BdBonusItemsExt.class);
|
||||
return AjaxResult.success(bonusItemsExt);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @description: 删除奖项配置
|
||||
* @author: zhang jing
|
||||
* @date: 2022/8/30 10:21
|
||||
* @param: [pkId]
|
||||
* @return: com.hzs.common.core.web.domain.AjaxResult
|
||||
* 删除奖项配置
|
||||
**/
|
||||
@Log(module = EOperationModule.BONUS_CONFIG, business=EOperationBusiness.BONUS_ITEMS, method = EOperationMethod.DELETE)
|
||||
@Log(module = EOperationModule.BONUS_CONFIG, business = EOperationBusiness.BONUS_ITEMS, method = EOperationMethod.DELETE)
|
||||
@DeleteMapping("/{pkId}")
|
||||
public AjaxResult delete(@PathVariable Long pkId) {
|
||||
UpdateWrapper<BdBonusItems> updateWrapper = new UpdateWrapper<>();
|
||||
updateWrapper.eq("PK_ID", pkId);
|
||||
updateWrapper.set("DEL_FLAG", EDelFlag.DELETE.getValue());
|
||||
updateWrapper.set("PK_MODIFIED", SecurityUtils.getUserId());
|
||||
updateWrapper.set("MODIFIED_TIME", new Date());
|
||||
LambdaUpdateWrapper<BdBonusItems> updateWrapper = new LambdaUpdateWrapper<>();
|
||||
updateWrapper.eq(BdBonusItems::getPkId, pkId);
|
||||
updateWrapper.set(BdBonusItems::getDelFlag, EDelFlag.DELETE.getValue());
|
||||
updateWrapper.set(BdBonusItems::getPkModified, SecurityUtils.getUserId());
|
||||
updateWrapper.set(BdBonusItems::getModifiedTime, new Date());
|
||||
redisService.deleteObject(CacheConstants.BD_BONUS_ITEMS + SecurityUtils.getPkCountry());
|
||||
//删除翻译
|
||||
BdBonusItems bdBonusItems=bonusItemsService.getById(pkId);
|
||||
List<Long> pkIdList=new ArrayList<>();
|
||||
if(null!=bdBonusItems.getPkTransaction()){
|
||||
pkIdList.add(bdBonusItems.getPkTransaction().longValue());
|
||||
R<Boolean> b=iTransactionServiceApi.removeTransactionByPkId(pkIdList);
|
||||
}
|
||||
return toAjax(bonusItemsService.update(updateWrapper));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -52,7 +52,10 @@ public class BonusMsgConstants {
|
|||
|
||||
public static String RETAIL_BENEFIT_AVG_INCOME = "获得%f月福利平均收益,结算月%s。";
|
||||
|
||||
public static String RETAIL_AREA_INCOME = "订单编号%s,%s为%s贡献了区域收益,区域收益%f,收益县%s。";
|
||||
/**
|
||||
* 区域分红说明
|
||||
*/
|
||||
public static String RETAIL_AREA_INCOME = "订单编号%s,%s为%s贡献了区域分红,区域分红%f,收益县%s。";
|
||||
|
||||
public static String RETAIL_BENEFIT_INCOME = "获得%f月福利加权收益,结算月%s。";
|
||||
|
||||
|
@ -110,10 +113,16 @@ public class BonusMsgConstants {
|
|||
// public static String SHARE_RANGE = "MSG_BONUS_017";
|
||||
public static String SHARE_RANGE = "订单编号%s,%s为%s贡献了复购极差收益,计算业绩%f,前一极差等级名称%s,当前极差等级名称%s。";
|
||||
|
||||
public static String RANGE = "订单编号%s,%s为%s贡献了极差收益,计算业绩%f,前一极差等级名称%s,当前极差等级名称%s。";
|
||||
|
||||
public static String RETAIL_RANGE = "订单编号%s,%s为%s贡献了福利极差收益,计算业绩%f,前一极差等级名称%s,当前极差等级名称%s。";
|
||||
|
||||
/**
|
||||
* 直推级差收益说明
|
||||
*/
|
||||
public static String RANGE = "订单编号%s,%s为%s贡献了直推级差收益,计算金额%f,前一级差等级名称%s,当前级差等级名称%s。";
|
||||
|
||||
/**
|
||||
* 平级收益
|
||||
*/
|
||||
public static String ORI_RANGE = "订单编号%s,%s为%s贡献了平级收益,计算业绩%f,等级名称%s。";
|
||||
|
||||
public static String LE_SHARE_RANGE = "订单编号%s,%s为%s贡献了复购极差收益,收益%f。";
|
||||
|
|
|
@ -5,18 +5,14 @@ import lombok.AllArgsConstructor;
|
|||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* @Description: 奖金收益状态 奖金明细表
|
||||
* @Author: sui q
|
||||
* @Time: 2022/11/10 16:03
|
||||
* @Classname: EBonusIncomeStatus
|
||||
* @PackageName: com.hzs.common.core.enums
|
||||
* 奖金收益状态 奖金明细表
|
||||
*/
|
||||
@AllArgsConstructor
|
||||
@Getter
|
||||
public enum EBonusIncomeStatus {
|
||||
|
||||
/**
|
||||
*正常
|
||||
* 正常
|
||||
*/
|
||||
NORMAL(0, "正常", 0, EnumsPrefixConstants.BONUS_INCOME_STATUS + "0"),
|
||||
|
||||
|
|
|
@ -224,7 +224,7 @@ public class CuMemberBonus extends BaseEntity {
|
|||
private BigDecimal makerRealSubtotal;
|
||||
|
||||
/**
|
||||
* 新零售极差收益
|
||||
* 新零售直推收益
|
||||
*/
|
||||
@TableField("RETAIL_RANGE_INCOME")
|
||||
private BigDecimal retailRangeIncome;
|
||||
|
@ -236,7 +236,7 @@ public class CuMemberBonus extends BaseEntity {
|
|||
private BigDecimal retailSameLevelIncome;
|
||||
|
||||
/**
|
||||
* 新零售区域收益
|
||||
* 新零售区域分红
|
||||
*/
|
||||
@TableField("RETAIL_AREA_INCOME")
|
||||
private BigDecimal retailAreaIncome;
|
||||
|
|
|
@ -381,7 +381,7 @@ public class CuBonusVertexStatis extends BaseEntity {
|
|||
private BigDecimal retailConsumePv;
|
||||
|
||||
/**
|
||||
* 新零售极差收益
|
||||
* 新零售直推收益
|
||||
*/
|
||||
@TableField("RETAIL_RANGE_INCOME")
|
||||
private BigDecimal retailRangeIncome;
|
||||
|
|
|
@ -6,12 +6,7 @@ import lombok.Data;
|
|||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 奖项配置
|
||||
* </p>
|
||||
*
|
||||
* @author zhangjing
|
||||
* @since 2022-11-09
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
|
@ -22,28 +17,25 @@ public class BdBonusItemsExt extends BdBonusItems {
|
|||
/**
|
||||
* 结算周期
|
||||
*/
|
||||
@Excel(name = "结算周期",sort=2)
|
||||
@Excel(name = "结算周期", sort = 2)
|
||||
private String settleTypeVal;
|
||||
|
||||
/**
|
||||
* 公布日期
|
||||
*/
|
||||
@Excel(name = "公布日期",sort=4)
|
||||
@Excel(name = "公布日期", sort = 4)
|
||||
private String publishDateVal;
|
||||
|
||||
/**
|
||||
* 发布日期
|
||||
*/
|
||||
@Excel(name = "公布日期",sort=5)
|
||||
@Excel(name = "公布日期", sort = 5)
|
||||
private String grantDateVal;
|
||||
|
||||
/**
|
||||
* 可提现日期
|
||||
*/
|
||||
@Excel(name = "可提现日期",sort=6)
|
||||
@Excel(name = "可提现日期", sort = 6)
|
||||
private String withdrawalDateVal;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue