## 阶段奖金计算处理(未完成);
This commit is contained in:
parent
56f9170d4c
commit
f88ccb7cb8
|
@ -15,7 +15,6 @@ import com.hzs.common.core.enums.EOperationBusiness;
|
||||||
import com.hzs.common.core.enums.EOperationMethod;
|
import com.hzs.common.core.enums.EOperationMethod;
|
||||||
import com.hzs.common.core.enums.EOperationModule;
|
import com.hzs.common.core.enums.EOperationModule;
|
||||||
import com.hzs.common.core.utils.DateUtils;
|
import com.hzs.common.core.utils.DateUtils;
|
||||||
import com.hzs.common.core.utils.StringUtils;
|
|
||||||
import com.hzs.common.core.web.controller.BaseController;
|
import com.hzs.common.core.web.controller.BaseController;
|
||||||
import com.hzs.common.core.web.domain.AjaxResult;
|
import com.hzs.common.core.web.domain.AjaxResult;
|
||||||
import com.hzs.common.core.web.page.TableDataInfo;
|
import com.hzs.common.core.web.page.TableDataInfo;
|
||||||
|
@ -37,8 +36,6 @@ public class CuMemberSettleController extends BaseController {
|
||||||
@Autowired
|
@Autowired
|
||||||
private ICuMemberBonusService iCuMemberBonusService;
|
private ICuMemberBonusService iCuMemberBonusService;
|
||||||
@Autowired
|
@Autowired
|
||||||
private IBonusSettleService iBonusSettleService;
|
|
||||||
@Autowired
|
|
||||||
private ICuMemberTreeService iCuMemberTreeService;
|
private ICuMemberTreeService iCuMemberTreeService;
|
||||||
@Autowired
|
@Autowired
|
||||||
private ICuMemberSettlePeriodService iCuMemberSettlePeriodService;
|
private ICuMemberSettlePeriodService iCuMemberSettlePeriodService;
|
||||||
|
@ -48,8 +45,6 @@ public class CuMemberSettleController extends BaseController {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 初始化奖金结算表
|
* 初始化奖金结算表
|
||||||
*
|
|
||||||
* @return AjaxResult
|
|
||||||
*/
|
*/
|
||||||
@GetMapping("/init-table")
|
@GetMapping("/init-table")
|
||||||
public AjaxResult initTable(String settleDate) {
|
public AjaxResult initTable(String settleDate) {
|
||||||
|
@ -59,8 +54,6 @@ public class CuMemberSettleController extends BaseController {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 初始化奖金结算表
|
* 初始化奖金结算表
|
||||||
*
|
|
||||||
* @return AjaxResult
|
|
||||||
*/
|
*/
|
||||||
@GetMapping("/init-period")
|
@GetMapping("/init-period")
|
||||||
public AjaxResult initPeriod(String settleDate) {
|
public AjaxResult initPeriod(String settleDate) {
|
||||||
|
@ -70,8 +63,6 @@ public class CuMemberSettleController extends BaseController {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 奖金计算 - 重新结算
|
* 奖金计算 - 重新结算
|
||||||
*
|
|
||||||
* @return AjaxResult
|
|
||||||
*/
|
*/
|
||||||
@GetMapping("/settle-bonus")
|
@GetMapping("/settle-bonus")
|
||||||
@Log(module = EOperationModule.BONUS_SETTLE, business = EOperationBusiness.BONUS_SETTLE, method = EOperationMethod.INSERT)
|
@Log(module = EOperationModule.BONUS_SETTLE, business = EOperationBusiness.BONUS_SETTLE, method = EOperationMethod.INSERT)
|
||||||
|
@ -86,8 +77,6 @@ public class CuMemberSettleController extends BaseController {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 公布奖金
|
* 公布奖金
|
||||||
*
|
|
||||||
* @return AjaxResult
|
|
||||||
*/
|
*/
|
||||||
@GetMapping("/publish-bonus")
|
@GetMapping("/publish-bonus")
|
||||||
@Log(module = EOperationModule.BONUS_SETTLE, business = EOperationBusiness.BONUS_SETTLE, method = EOperationMethod.PUBLISH)
|
@Log(module = EOperationModule.BONUS_SETTLE, business = EOperationBusiness.BONUS_SETTLE, method = EOperationMethod.PUBLISH)
|
||||||
|
@ -102,8 +91,6 @@ public class CuMemberSettleController extends BaseController {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 不公布奖金
|
* 不公布奖金
|
||||||
*
|
|
||||||
* @return AjaxResult
|
|
||||||
*/
|
*/
|
||||||
@GetMapping("/no-publish-bonus")
|
@GetMapping("/no-publish-bonus")
|
||||||
@Log(module = EOperationModule.BONUS_SETTLE, business = EOperationBusiness.BONUS_SETTLE, method = EOperationMethod.NO_PUBLISH)
|
@Log(module = EOperationModule.BONUS_SETTLE, business = EOperationBusiness.BONUS_SETTLE, method = EOperationMethod.NO_PUBLISH)
|
||||||
|
@ -118,8 +105,6 @@ public class CuMemberSettleController extends BaseController {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 发放奖金
|
* 发放奖金
|
||||||
*
|
|
||||||
* @return AjaxResult
|
|
||||||
*/
|
*/
|
||||||
@GetMapping("/grant-bonus")
|
@GetMapping("/grant-bonus")
|
||||||
@Log(module = EOperationModule.BONUS_SETTLE, business = EOperationBusiness.BONUS_SETTLE, method = EOperationMethod.GRANT)
|
@Log(module = EOperationModule.BONUS_SETTLE, business = EOperationBusiness.BONUS_SETTLE, method = EOperationMethod.GRANT)
|
||||||
|
@ -134,8 +119,6 @@ public class CuMemberSettleController extends BaseController {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 发放奖金
|
* 发放奖金
|
||||||
*
|
|
||||||
* @return AjaxResult
|
|
||||||
*/
|
*/
|
||||||
@GetMapping("/grant-temp-bonus")
|
@GetMapping("/grant-temp-bonus")
|
||||||
public AjaxResult grantTempBonus(Integer pkCountry, String settleDate) {
|
public AjaxResult grantTempBonus(Integer pkCountry, String settleDate) {
|
||||||
|
@ -145,8 +128,6 @@ public class CuMemberSettleController extends BaseController {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 发放奖金
|
* 发放奖金
|
||||||
*
|
|
||||||
* @return AjaxResult
|
|
||||||
*/
|
*/
|
||||||
@GetMapping("/grant-bonus_all")
|
@GetMapping("/grant-bonus_all")
|
||||||
public AjaxResult grantBonusAll() {
|
public AjaxResult grantBonusAll() {
|
||||||
|
@ -156,8 +137,6 @@ public class CuMemberSettleController extends BaseController {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 奖金提现
|
* 奖金提现
|
||||||
*
|
|
||||||
* @return AjaxResult
|
|
||||||
*/
|
*/
|
||||||
@GetMapping("/withdrawal-bonus")
|
@GetMapping("/withdrawal-bonus")
|
||||||
@Log(module = EOperationModule.BONUS_SETTLE, business = EOperationBusiness.BONUS_SETTLE, method = EOperationMethod.WITHDRAWAL)
|
@Log(module = EOperationModule.BONUS_SETTLE, business = EOperationBusiness.BONUS_SETTLE, method = EOperationMethod.WITHDRAWAL)
|
||||||
|
@ -170,20 +149,6 @@ public class CuMemberSettleController extends BaseController {
|
||||||
return AjaxResult.success();
|
return AjaxResult.success();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* 秒接结算业绩,仅用于测试
|
|
||||||
*
|
|
||||||
* @return AjaxResult
|
|
||||||
*/
|
|
||||||
@GetMapping("/settle-second-bonus")
|
|
||||||
public AjaxResult settleSecondBonus(String orderCode) {
|
|
||||||
if (StringUtils.isEmpty(orderCode)) {
|
|
||||||
return AjaxResult.error();
|
|
||||||
}
|
|
||||||
iBonusSettleService.calculateCuMemberRetailRangeBonusBySaOrder(orderCode);
|
|
||||||
return AjaxResult.success();
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* 查询奖金计算期数列表
|
* 查询奖金计算期数列表
|
||||||
**/
|
**/
|
||||||
|
|
|
@ -2,10 +2,20 @@ package com.hzs.bonus.achieve.mapper;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
import com.hzs.common.domain.member.achieve.CuMemberRetailDetail;
|
import com.hzs.common.domain.member.achieve.CuMemberRetailDetail;
|
||||||
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 日结算阶段表 Mapper 接口
|
* 日结算阶段表 Mapper 接口
|
||||||
*/
|
*/
|
||||||
public interface CuMemberRetailDetailMapper extends BaseMapper<CuMemberRetailDetail> {
|
public interface CuMemberRetailDetailMapper extends BaseMapper<CuMemberRetailDetail> {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询明细数据(指定阶段,未完成的)
|
||||||
|
*/
|
||||||
|
List<CuMemberRetailDetail> listMemberRetailDetail(@Param("retailDetailTableName") String retailDetailTableName,
|
||||||
|
@Param("tmpIdList") List<?> tmpIdList,
|
||||||
|
@Param("stage") Integer stage);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,11 +1,21 @@
|
||||||
package com.hzs.bonus.achieve.service;
|
package com.hzs.bonus.achieve.service;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
|
import com.hzs.common.core.enums.EBonusStage;
|
||||||
import com.hzs.common.domain.member.achieve.CuMemberRetailDetail;
|
import com.hzs.common.domain.member.achieve.CuMemberRetailDetail;
|
||||||
|
import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 日结算阶段表 服务类
|
* 日结算阶段表 服务类
|
||||||
*/
|
*/
|
||||||
public interface ICuMemberRetailDetailService extends IService<CuMemberRetailDetail> {
|
public interface ICuMemberRetailDetailService extends IService<CuMemberRetailDetail> {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据结算会员获取对应的点位数据
|
||||||
|
*/
|
||||||
|
void listMemberRetailDetail(String retailDetailTableName, Map<Long, CuMemberRetailRangeExt> memberRangeExtMap, EBonusStage eBonusStage);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,13 +3,43 @@ package com.hzs.bonus.achieve.service.impl;
|
||||||
import com.hzs.bonus.achieve.mapper.CuMemberRetailDetailMapper;
|
import com.hzs.bonus.achieve.mapper.CuMemberRetailDetailMapper;
|
||||||
import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService;
|
import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
import com.hzs.common.core.constant.MagicNumberConstants;
|
||||||
|
import com.hzs.common.core.enums.EBonusStage;
|
||||||
import com.hzs.common.domain.member.achieve.CuMemberRetailDetail;
|
import com.hzs.common.domain.member.achieve.CuMemberRetailDetail;
|
||||||
|
import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.*;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 日结算阶段表 服务实现类
|
* 日结算阶段表 服务实现类
|
||||||
*/
|
*/
|
||||||
@Service
|
@Service
|
||||||
public class CuMemberRetailDetailServiceImpl extends ServiceImpl<CuMemberRetailDetailMapper, CuMemberRetailDetail> implements ICuMemberRetailDetailService {
|
public class CuMemberRetailDetailServiceImpl extends ServiceImpl<CuMemberRetailDetailMapper, CuMemberRetailDetail> implements ICuMemberRetailDetailService {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private CuMemberBonusSettle cuMemberBonusSettle;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void listMemberRetailDetail(String retailDetailTableName, Map<Long, CuMemberRetailRangeExt> memberRangeExtMap, EBonusStage eBonusStage) {
|
||||||
|
List<List<?>> pkMemberList = cuMemberBonusSettle.handleCutList(memberRangeExtMap.keySet(), MagicNumberConstants.BATCH_QUERY_NUM);
|
||||||
|
pkMemberList.forEach(tmpIdList -> {
|
||||||
|
List<CuMemberRetailDetail> tmpList = baseMapper.listMemberRetailDetail(retailDetailTableName, tmpIdList, eBonusStage.getValue());
|
||||||
|
if (tmpList.size() > 0) {
|
||||||
|
// 明细数据放到对应的会员数据中
|
||||||
|
for (CuMemberRetailDetail cuMemberRetailDetail : tmpList) {
|
||||||
|
CuMemberRetailRangeExt cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailDetail.getPkMember());
|
||||||
|
if (EBonusStage.ONE.getValue() == eBonusStage.getValue()) {
|
||||||
|
// 阶段一点位列表
|
||||||
|
if (null == cuMemberRetailRangeExt.getOneDetailList()) {
|
||||||
|
cuMemberRetailRangeExt.setOneDetailList(new ArrayList<>());
|
||||||
|
}
|
||||||
|
cuMemberRetailRangeExt.getOneDetailList().add(cuMemberRetailDetail);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
package com.hzs.bonus.bonus.service.impl;
|
package com.hzs.bonus.bonus.service.impl;
|
||||||
|
|
||||||
import cn.hutool.core.collection.CollectionUtil;
|
import cn.hutool.core.collection.CollectionUtil;
|
||||||
|
import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService;
|
||||||
import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService;
|
import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService;
|
||||||
import com.hzs.bonus.base.service.ICuMemberService;
|
import com.hzs.bonus.base.service.ICuMemberService;
|
||||||
import com.hzs.bonus.bonus.vo.BonusRecordDetailVO;
|
import com.hzs.bonus.bonus.vo.BonusRecordDetailVO;
|
||||||
|
@ -14,6 +15,7 @@ import com.hzs.common.core.enums.*;
|
||||||
import com.hzs.common.core.utils.ComputeUtil;
|
import com.hzs.common.core.utils.ComputeUtil;
|
||||||
import com.hzs.common.core.utils.DateUtils;
|
import com.hzs.common.core.utils.DateUtils;
|
||||||
import com.hzs.common.domain.bonus.BdBonusDeduct;
|
import com.hzs.common.domain.bonus.BdBonusDeduct;
|
||||||
|
import com.hzs.common.domain.member.achieve.CuMemberRetailDetail;
|
||||||
import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt;
|
import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt;
|
||||||
import com.hzs.common.domain.member.bonus.*;
|
import com.hzs.common.domain.member.bonus.*;
|
||||||
import com.hzs.common.domain.member.detail.*;
|
import com.hzs.common.domain.member.detail.*;
|
||||||
|
@ -30,6 +32,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
|
import java.math.RoundingMode;
|
||||||
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;
|
||||||
|
@ -44,6 +47,8 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
@Autowired
|
@Autowired
|
||||||
private ICuMemberRetailRangeService iCuMemberRetailRangeService;
|
private ICuMemberRetailRangeService iCuMemberRetailRangeService;
|
||||||
@Autowired
|
@Autowired
|
||||||
|
private ICuMemberRetailDetailService iCuMemberRetailDetailService;
|
||||||
|
@Autowired
|
||||||
private ICuMemberAwardsService iCuMemberAwardsService;
|
private ICuMemberAwardsService iCuMemberAwardsService;
|
||||||
@Autowired
|
@Autowired
|
||||||
private ICuMemberService iCuMemberService;
|
private ICuMemberService iCuMemberService;
|
||||||
|
@ -269,8 +274,8 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
// 结算期间日期后一天
|
// 结算期间日期后一天
|
||||||
Date settleEndDate = DateUtils.afterDate(1, ChronoUnit.DAYS, settleStartDate);
|
Date settleEndDate = DateUtils.afterDate(1, ChronoUnit.DAYS, settleStartDate);
|
||||||
|
|
||||||
// 新零售订单
|
// 新零售订单(注册、复购)
|
||||||
List<SaOrderExt> orderList = iBonusOrderService.listRetailSaOrder(settleStartDate, settleEndDate, null);
|
List<SaOrderExt> orderList = iBonusOrderService.listRetailSaOrder(settleStartDate, settleEndDate, null, Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_REPURCHASE.getValue()));
|
||||||
|
|
||||||
// 更新当月会员, 将昨天业绩更到到今天,更新当月会员考核结果,有消费的考核通过
|
// 更新当月会员, 将昨天业绩更到到今天,更新当月会员考核结果,有消费的考核通过
|
||||||
// 结算期间表
|
// 结算期间表
|
||||||
|
@ -290,16 +295,16 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
if (orderList.size() > 0) {
|
if (orderList.size() > 0) {
|
||||||
// 按照血缘,查询该会员所有伞上会员
|
// 按照血缘,查询该会员所有伞上会员
|
||||||
List<CuMemberRetailRangeExt> memberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeParent(rangeTableName, orderList);
|
List<CuMemberRetailRangeExt> memberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeParent(rangeTableName, orderList);
|
||||||
|
|
||||||
// 会员结算map(key:会员ID,value:结算扩展)
|
// 会员结算map(key:会员ID,value:结算扩展)
|
||||||
Map<Long, CuMemberRetailRangeExt> memberRangeExtMap = new HashMap<>();
|
Map<Long, CuMemberRetailRangeExt> memberRangeExtMap = new HashMap<>();
|
||||||
|
|
||||||
// 会员转map
|
// 会员转map
|
||||||
for (CuMemberRetailRangeExt cuMemberRetailRangeExt : memberRetailRangeExtList) {
|
for (CuMemberRetailRangeExt cuMemberRetailRangeExt : memberRetailRangeExtList) {
|
||||||
if (!memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) {
|
if (!memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) {
|
||||||
memberRangeExtMap.put(cuMemberRetailRangeExt.getPkMember(), cuMemberRetailRangeExt);
|
memberRangeExtMap.put(cuMemberRetailRangeExt.getPkMember(), cuMemberRetailRangeExt);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// 查询血缘会员明细数据(一阶段)
|
||||||
|
iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, EBonusStage.ONE);
|
||||||
|
|
||||||
// 奖衔
|
// 奖衔
|
||||||
Map<Integer, BdAwards> retailAwardsMap = new HashMap<>();
|
Map<Integer, BdAwards> retailAwardsMap = new HashMap<>();
|
||||||
|
@ -321,7 +326,10 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
// 直推收益 -- 来源订单金额,直推拿金额的10%
|
// 直推收益 -- 来源订单金额,直推拿金额的10%
|
||||||
this.calculateDirectIncome(cuMemberBonusPushList, memberRangeExtMap, saOrderExt,
|
this.calculateDirectIncome(cuMemberBonusPushList, memberRangeExtMap, saOrderExt,
|
||||||
bonusConfigDTO, period, cuMemberBonusMap);
|
bonusConfigDTO, period, cuMemberBonusMap);
|
||||||
|
|
||||||
// TODO 阶段收益 -- 来源订单金额
|
// TODO 阶段收益 -- 来源订单金额
|
||||||
|
this.calculateStageIncome(cuMemberBonusPushList, memberRangeExtMap, saOrderExt,
|
||||||
|
settleStartDate);
|
||||||
|
|
||||||
|
|
||||||
// TODO 领导级差收益 -- 来源PV
|
// TODO 领导级差收益 -- 来源PV
|
||||||
|
@ -818,32 +826,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
cuMemberBonusPushList.add(cuMemberBonusPush);
|
cuMemberBonusPushList.add(cuMemberBonusPush);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* 获取直推、见点收益信息
|
|
||||||
*/
|
|
||||||
CuMemberBonusPush getCuMemberBonusPush(SaOrderExt saOrderExt, CuMemberRetailRangeExt cuMemberRetailRange, CuMemberBonus cuMemberBonus, Integer pkBonusItems) {
|
|
||||||
CuMemberBonusPush cuMemberBonusPush = CuMemberBonusPush.builder()
|
|
||||||
.pkBonus(cuMemberBonus.getPkId())
|
|
||||||
.pkOrder(saOrderExt.getPkId())
|
|
||||||
.pkBonusItems(pkBonusItems)
|
|
||||||
.incomeStatus(cuMemberRetailRange.getIncomeStatus())
|
|
||||||
.calType(ECalType.RATIO.getValue())
|
|
||||||
.calAchieve(BigDecimal.ZERO)
|
|
||||||
.calValue(BigDecimal.ZERO)
|
|
||||||
.pretaxIncome(BigDecimal.ZERO)
|
|
||||||
.incomeTax(BigDecimal.ZERO)
|
|
||||||
.realIncome(BigDecimal.ZERO)
|
|
||||||
.round(-1)
|
|
||||||
.second(-1)
|
|
||||||
.incomeRatio(BigDecimal.ZERO)
|
|
||||||
.incomeDialRatio(BigDecimal.ZERO)
|
|
||||||
.orderDialRatio(BigDecimal.ZERO)
|
|
||||||
.build();
|
|
||||||
cuMemberBonusPush.setPkCountry(cuMemberRetailRange.getPkSettleCountry());
|
|
||||||
cuMemberBonusPush.setPkCreator(MagicNumberConstants.PK_ADMIN);
|
|
||||||
return cuMemberBonusPush;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 计算见点收益 -- 商城专区
|
* 计算见点收益 -- 商城专区
|
||||||
*/
|
*/
|
||||||
|
@ -908,5 +890,98 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取直推、见点收益信息
|
||||||
|
*/
|
||||||
|
CuMemberBonusPush getCuMemberBonusPush(SaOrderExt saOrderExt, CuMemberRetailRangeExt cuMemberRetailRange, CuMemberBonus cuMemberBonus, Integer pkBonusItems) {
|
||||||
|
CuMemberBonusPush cuMemberBonusPush = CuMemberBonusPush.builder()
|
||||||
|
.pkBonus(cuMemberBonus.getPkId())
|
||||||
|
.pkOrder(saOrderExt.getPkId())
|
||||||
|
.pkBonusItems(pkBonusItems)
|
||||||
|
.incomeStatus(cuMemberRetailRange.getIncomeStatus())
|
||||||
|
.calType(ECalType.RATIO.getValue())
|
||||||
|
.calAchieve(BigDecimal.ZERO)
|
||||||
|
.calValue(BigDecimal.ZERO)
|
||||||
|
.pretaxIncome(BigDecimal.ZERO)
|
||||||
|
.incomeTax(BigDecimal.ZERO)
|
||||||
|
.realIncome(BigDecimal.ZERO)
|
||||||
|
.round(-1)
|
||||||
|
.second(-1)
|
||||||
|
.incomeRatio(BigDecimal.ZERO)
|
||||||
|
.incomeDialRatio(BigDecimal.ZERO)
|
||||||
|
.orderDialRatio(BigDecimal.ZERO)
|
||||||
|
.build();
|
||||||
|
cuMemberBonusPush.setPkCountry(cuMemberRetailRange.getPkSettleCountry());
|
||||||
|
cuMemberBonusPush.setPkCreator(MagicNumberConstants.PK_ADMIN);
|
||||||
|
return cuMemberBonusPush;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 计算阶段收益 -- 精品专区
|
||||||
|
*/
|
||||||
|
private void calculateStageIncome(List<CuMemberBonusPush> cuMemberBonusPushList, Map<Long, CuMemberRetailRangeExt> memberRangeExtMap, SaOrderExt saOrderExt,
|
||||||
|
Date settleDate) {
|
||||||
|
// 订单金额除50取整,为新増点位数量
|
||||||
|
int newPointInt = saOrderExt.getOrderAmount().divide(RetailConstants.POINT_VAL, 0, RoundingMode.DOWN).intValue();
|
||||||
|
if (newPointInt == 0) {
|
||||||
|
// 当前精品专区订单不足生成点位
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 订单会员
|
||||||
|
CuMemberRetailRangeExt sourceMember = memberRangeExtMap.get(saOrderExt.getPkMember());
|
||||||
|
// 会员一阶段子点位列表
|
||||||
|
List<CuMemberRetailDetail> detailList = sourceMember.getOneDetailList();
|
||||||
|
if (null == detailList) {
|
||||||
|
detailList = new ArrayList<>();
|
||||||
|
sourceMember.setOneDetailList(detailList);
|
||||||
|
}
|
||||||
|
// 当前会员子点位总数
|
||||||
|
int pointCount = sourceMember.getPointCount();
|
||||||
|
for (int i = 1; i <= newPointInt; i++) {
|
||||||
|
// 订单生成的新点位
|
||||||
|
detailList.add(CuMemberRetailDetail.builder()
|
||||||
|
.pkMember(sourceMember.getPkMember())
|
||||||
|
.childNode(pointCount + i)
|
||||||
|
.pkParent(sourceMember.getPkParent())
|
||||||
|
.stage(EBonusStage.ONE.getValue())
|
||||||
|
.stage(EBonusStageStatus.NO.getValue())
|
||||||
|
.pointType(EBonusStageType.NORMAL.getValue())
|
||||||
|
.pointGift(0)
|
||||||
|
.creationTime(settleDate)
|
||||||
|
.build());
|
||||||
|
}
|
||||||
|
|
||||||
|
// 推荐人
|
||||||
|
Long pkParent = sourceMember.getPkParent();
|
||||||
|
while (true) {
|
||||||
|
CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(pkParent);
|
||||||
|
if (null == targetMember) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 推荐人一阶段子点位列表
|
||||||
|
List<CuMemberRetailDetail> parentDetailList = targetMember.getOneDetailList();
|
||||||
|
if (CollectionUtil.isEmpty(parentDetailList)) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
for (CuMemberRetailDetail cuMemberRetailDetail : parentDetailList) {
|
||||||
|
if (EBonusStageStatus.NO.getValue() == cuMemberRetailDetail.getStageStatus()) {
|
||||||
|
// 推荐人子点位未完成,则进行填充
|
||||||
|
this.fillChildNode(cuMemberRetailDetail);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 填充子点位
|
||||||
|
*/
|
||||||
|
private void fillChildNode(CuMemberRetailDetail cuMemberRetailDetail) {
|
||||||
|
cuMemberRetailDetail.getPointMember11();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -110,7 +110,7 @@ public class BonusSettleServiceImpl implements IBonusSettleService {
|
||||||
// 查询奖金参数
|
// 查询奖金参数
|
||||||
BonusConfigDTO bonusConfigDTO = iBonusItemsServiceApi.queryBonusConfigDTO().getData();
|
BonusConfigDTO bonusConfigDTO = iBonusItemsServiceApi.queryBonusConfigDTO().getData();
|
||||||
// 需要处理的订单
|
// 需要处理的订单
|
||||||
List<SaOrderExt> retailOrderList = iBonusOrderService.listRetailSaOrder(DateUtils.beforeDate(6, ChronoUnit.DAYS), DateUtils.afterDate(1, ChronoUnit.DAYS), orderCode);
|
List<SaOrderExt> retailOrderList = iBonusOrderService.listRetailSaOrder(DateUtils.beforeDate(6, ChronoUnit.DAYS), DateUtils.afterDate(1, ChronoUnit.DAYS), orderCode, null);
|
||||||
|
|
||||||
if (CollectionUtil.isNotEmpty(retailOrderList)) {
|
if (CollectionUtil.isNotEmpty(retailOrderList)) {
|
||||||
// 会员奖金map
|
// 会员奖金map
|
||||||
|
|
|
@ -16,6 +16,7 @@ public interface BonusOrderMapper {
|
||||||
*/
|
*/
|
||||||
List<SaOrderExt> listRetailSaOrder(@Param("startDate") Date startDate,
|
List<SaOrderExt> listRetailSaOrder(@Param("startDate") Date startDate,
|
||||||
@Param("endDate") Date endDate,
|
@Param("endDate") Date endDate,
|
||||||
@Param("orderCode") String orderCode);
|
@Param("orderCode") String orderCode,
|
||||||
|
@Param("orderTypeList") List<Integer> orderTypeList);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -13,6 +13,6 @@ public interface IBonusOrderService {
|
||||||
* @param startDate 开始日期
|
* @param startDate 开始日期
|
||||||
* @param endDate 结束日期
|
* @param endDate 结束日期
|
||||||
*/
|
*/
|
||||||
List<SaOrderExt> listRetailSaOrder(Date startDate, Date endDate, String orderCode);
|
List<SaOrderExt> listRetailSaOrder(Date startDate, Date endDate, String orderCode, List<Integer> orderTypeList);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,8 +15,8 @@ public class BonusOrderServiceImpl implements IBonusOrderService {
|
||||||
private BonusOrderMapper bonusOrderMapper;
|
private BonusOrderMapper bonusOrderMapper;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<SaOrderExt> listRetailSaOrder(Date startDate, Date endDate, String orderCode) {
|
public List<SaOrderExt> listRetailSaOrder(Date startDate, Date endDate, String orderCode, List<Integer> orderTypeList) {
|
||||||
return bonusOrderMapper.listRetailSaOrder(startDate, endDate, orderCode);
|
return bonusOrderMapper.listRetailSaOrder(startDate, endDate, orderCode, orderTypeList);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,5 +2,17 @@
|
||||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
<mapper namespace="com.hzs.bonus.achieve.mapper.CuMemberRetailDetailMapper">
|
<mapper namespace="com.hzs.bonus.achieve.mapper.CuMemberRetailDetailMapper">
|
||||||
|
|
||||||
|
<!-- 查询明细数据 -->
|
||||||
|
<select id="listMemberRetailDetail" resultType="com.hzs.common.domain.member.achieve.CuMemberRetailDetail">
|
||||||
|
select cmrd.*
|
||||||
|
from ${retailDetailTableName} cmrd
|
||||||
|
where cmrd.pk_member in
|
||||||
|
<foreach collection="tmpIdList" item="items" open="(" close=")" separator=",">
|
||||||
|
#{items}
|
||||||
|
</foreach>
|
||||||
|
and cmrd.stage = #{stage}
|
||||||
|
and cmrd.stage_status = 1
|
||||||
|
order by cmrd.pk_member, cmrd.child_node
|
||||||
|
</select>
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
|
@ -292,7 +292,6 @@
|
||||||
<update id="createCuMemberRetailDetail">
|
<update id="createCuMemberRetailDetail">
|
||||||
create table ${tableName}
|
create table ${tableName}
|
||||||
(
|
(
|
||||||
pk_id NUMBER(20) primary key,
|
|
||||||
pk_member NUMBER(20) not null,
|
pk_member NUMBER(20) not null,
|
||||||
child_node NUMBER(8) not null,
|
child_node NUMBER(8) not null,
|
||||||
pk_parent NUMBER(20) not null,
|
pk_parent NUMBER(20) not null,
|
||||||
|
@ -335,10 +334,10 @@
|
||||||
|
|
||||||
<!-- 创建结算明细表会员索引 -->
|
<!-- 创建结算明细表会员索引 -->
|
||||||
<update id="createCuMemberRetailDetailMemberIndex">
|
<update id="createCuMemberRetailDetailMemberIndex">
|
||||||
create index ${tableName}_MEMBER
|
create unique index PK_${tableName}
|
||||||
on ${tableName}
|
on ${tableName}
|
||||||
(
|
(
|
||||||
PK_MEMBER
|
PK_MEMBER, CHILD_NODE
|
||||||
)
|
)
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
|
|
|
@ -82,6 +82,12 @@
|
||||||
<if test="orderCode != null and orderCode != ''">
|
<if test="orderCode != null and orderCode != ''">
|
||||||
and so.order_code=#{orderCode}
|
and so.order_code=#{orderCode}
|
||||||
</if>
|
</if>
|
||||||
|
<if test="orderTypeList != null and orderTypeList.size > 0">
|
||||||
|
and so.order_type in
|
||||||
|
<foreach collection="orderTypeList" item="items" open="(" close=")" separator=",">
|
||||||
|
#{items}
|
||||||
|
</foreach>
|
||||||
|
</if>
|
||||||
and so.pay_time >= #{startDate}
|
and so.pay_time >= #{startDate}
|
||||||
and so.pay_time < #{endDate}
|
and so.pay_time < #{endDate}
|
||||||
order by pay_time desc
|
order by pay_time desc
|
||||||
|
|
|
@ -129,11 +129,8 @@
|
||||||
)
|
)
|
||||||
</update>
|
</update>
|
||||||
<update id="createCuMemberTableUniqueIndex">
|
<update id="createCuMemberTableUniqueIndex">
|
||||||
create
|
create unique index
|
||||||
unique index
|
${tableName}_PK_M
|
||||||
${tableName}
|
|
||||||
_
|
|
||||||
PK_M
|
|
||||||
on
|
on
|
||||||
${tableName}
|
${tableName}
|
||||||
(
|
(
|
||||||
|
|
|
@ -47,16 +47,6 @@ public class MagicNumberConstants {
|
||||||
*/
|
*/
|
||||||
public static final Long PK_ADMIN = 100000000L;
|
public static final Long PK_ADMIN = 100000000L;
|
||||||
|
|
||||||
/**
|
|
||||||
* 开始血缘代
|
|
||||||
*/
|
|
||||||
public static final Integer BLOOD_GENERATION_START = 1;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 结束血缘代
|
|
||||||
*/
|
|
||||||
public static final Integer BLOOD_GENERATION_END = 10;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 老会员编号位数
|
* 老会员编号位数
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -7,6 +7,13 @@ import java.math.BigDecimal;
|
||||||
*/
|
*/
|
||||||
public class RetailConstants {
|
public class RetailConstants {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 精品专区50金额为一个子点位,商城专区50PV为一个子点位
|
||||||
|
* 精品专区计算点位:金额 / 50,余不做处理
|
||||||
|
* 商城专区计算点位:累计业绩 / 50, 剩下的继续累计
|
||||||
|
*/
|
||||||
|
public static final BigDecimal POINT_VAL = new BigDecimal("50");
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 精品专区直推收益订单金额 10%,商城专区见点收益20代订单PV 10%
|
* 精品专区直推收益订单金额 10%,商城专区见点收益20代订单PV 10%
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -0,0 +1,37 @@
|
||||||
|
package com.hzs.common.core.enums;
|
||||||
|
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Getter;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 阶段奖项枚举
|
||||||
|
*/
|
||||||
|
@AllArgsConstructor
|
||||||
|
@Getter
|
||||||
|
public enum EBonusStage {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 一阶段
|
||||||
|
*/
|
||||||
|
ONE(1, "一阶段"),
|
||||||
|
/**
|
||||||
|
* 二阶段
|
||||||
|
*/
|
||||||
|
TWO(2, "二阶段"),
|
||||||
|
/**
|
||||||
|
* 三阶段
|
||||||
|
*/
|
||||||
|
THREE(3, "三阶段"),
|
||||||
|
|
||||||
|
;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 实际值
|
||||||
|
*/
|
||||||
|
private final int value;
|
||||||
|
/**
|
||||||
|
* 显示标签
|
||||||
|
*/
|
||||||
|
private final String label;
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,33 @@
|
||||||
|
package com.hzs.common.core.enums;
|
||||||
|
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Getter;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 阶段状态枚举
|
||||||
|
*/
|
||||||
|
@AllArgsConstructor
|
||||||
|
@Getter
|
||||||
|
public enum EBonusStageStatus {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 已完成
|
||||||
|
*/
|
||||||
|
YES(0, "已完成"),
|
||||||
|
/**
|
||||||
|
* 未完成
|
||||||
|
*/
|
||||||
|
NO(1, "未完成"),
|
||||||
|
|
||||||
|
;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 实际值
|
||||||
|
*/
|
||||||
|
private final int value;
|
||||||
|
/**
|
||||||
|
* 显示标签
|
||||||
|
*/
|
||||||
|
private final String label;
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,33 @@
|
||||||
|
package com.hzs.common.core.enums;
|
||||||
|
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Getter;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 阶段点位类型枚举
|
||||||
|
*/
|
||||||
|
@AllArgsConstructor
|
||||||
|
@Getter
|
||||||
|
public enum EBonusStageType {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 普通点位
|
||||||
|
*/
|
||||||
|
NORMAL(0, "普通点位"),
|
||||||
|
/**
|
||||||
|
* 赠送点位
|
||||||
|
*/
|
||||||
|
GIFT(1, "赠送点位"),
|
||||||
|
|
||||||
|
;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 实际值
|
||||||
|
*/
|
||||||
|
private final int value;
|
||||||
|
/**
|
||||||
|
* 显示标签
|
||||||
|
*/
|
||||||
|
private final String label;
|
||||||
|
|
||||||
|
}
|
|
@ -6,8 +6,6 @@ import lombok.Getter;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 删除标记枚举类
|
* 删除标记枚举类
|
||||||
*
|
|
||||||
* @author hzs
|
|
||||||
*/
|
*/
|
||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
@Getter
|
@Getter
|
||||||
|
|
|
@ -10,24 +10,22 @@ import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
import com.hzs.common.core.annotation.Excel;
|
import com.hzs.common.core.annotation.Excel;
|
||||||
import com.hzs.common.core.web.domain.BaseEntity;
|
import com.hzs.common.core.web.domain.BaseEntity;
|
||||||
import lombok.Data;
|
import lombok.*;
|
||||||
import lombok.EqualsAndHashCode;
|
|
||||||
import lombok.experimental.Accessors;
|
import lombok.experimental.Accessors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 日结算阶段表
|
* 日结算阶段表
|
||||||
*/
|
*/
|
||||||
|
@Builder
|
||||||
|
@AllArgsConstructor
|
||||||
|
@NoArgsConstructor
|
||||||
@Data
|
@Data
|
||||||
@Accessors(chain = true)
|
@Accessors(chain = true)
|
||||||
@KeySequence("CU_MEMBER_RETAIL_DETAIL_SEQ")
|
|
||||||
@TableName("CU_MEMBER_RETAIL_DETAIL")
|
@TableName("CU_MEMBER_RETAIL_DETAIL")
|
||||||
public class CuMemberRetailDetail {
|
public class CuMemberRetailDetail {
|
||||||
|
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
@TableId("PK_ID")
|
|
||||||
private Long pkId;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 会员ID
|
* 会员ID
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -189,4 +189,10 @@ public class CuMemberRetailRange extends BaseEntity {
|
||||||
@TableField("small_team_pv")
|
@TableField("small_team_pv")
|
||||||
private BigDecimal smallTeamPv;
|
private BigDecimal smallTeamPv;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 子点位总数
|
||||||
|
*/
|
||||||
|
@TableField("point_count")
|
||||||
|
private Integer pointCount;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,10 +1,12 @@
|
||||||
package com.hzs.common.domain.member.achieve.ext;
|
package com.hzs.common.domain.member.achieve.ext;
|
||||||
|
|
||||||
|
import com.hzs.common.domain.member.achieve.CuMemberRetailDetail;
|
||||||
import com.hzs.common.domain.member.achieve.CuMemberRetailRange;
|
import com.hzs.common.domain.member.achieve.CuMemberRetailRange;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.EqualsAndHashCode;
|
import lombok.EqualsAndHashCode;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 新零售极差实体
|
* 新零售极差实体
|
||||||
|
@ -134,4 +136,9 @@ public class CuMemberRetailRangeExt extends CuMemberRetailRange {
|
||||||
private BigDecimal repTeamNewPv;
|
private BigDecimal repTeamNewPv;
|
||||||
// 秒结 end
|
// 秒结 end
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 阶段一点位列表
|
||||||
|
*/
|
||||||
|
private List<CuMemberRetailDetail> oneDetailList;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -50,7 +50,7 @@ public class CuMemberBonus extends BaseEntity {
|
||||||
private Integer pkRate;
|
private Integer pkRate;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 注册直推收益
|
* 注册直推收益-康健
|
||||||
*/
|
*/
|
||||||
@TableField("DIRECT_INCOME")
|
@TableField("DIRECT_INCOME")
|
||||||
private BigDecimal directIncome;
|
private BigDecimal directIncome;
|
||||||
|
@ -176,7 +176,7 @@ public class CuMemberBonus extends BaseEntity {
|
||||||
private BigDecimal repurCouponSubtotal;
|
private BigDecimal repurCouponSubtotal;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 复购见点收益
|
* 复购见点收益-康健
|
||||||
*/
|
*/
|
||||||
@TableField("GLOBAL_POINTS")
|
@TableField("GLOBAL_POINTS")
|
||||||
private BigDecimal globalPoints;
|
private BigDecimal globalPoints;
|
||||||
|
@ -188,7 +188,7 @@ public class CuMemberBonus extends BaseEntity {
|
||||||
private BigDecimal carAwardPoints;
|
private BigDecimal carAwardPoints;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 店铺收益
|
* 注册阶段收益-康健
|
||||||
*/
|
*/
|
||||||
@TableField("STORE_INCOME")
|
@TableField("STORE_INCOME")
|
||||||
private BigDecimal storeIncome;
|
private BigDecimal storeIncome;
|
||||||
|
|
Loading…
Reference in New Issue