## 复购辅导收益;奖金明细、奖金汇总添加新字段;
This commit is contained in:
parent
fd310590bf
commit
bb6eb8bf5f
|
@ -355,12 +355,10 @@ public interface CuMemberTreeMapper extends BaseMapper<CuMemberTree> {
|
|||
*
|
||||
* @param settleTableName 结算表
|
||||
* @param period
|
||||
* @param yesterdayPeriod
|
||||
* @param firPurchaseOrderList 首单列表
|
||||
*/
|
||||
List<CuMemberSettleExt> batchQueryCuMemberSettlePlaceParent(@Param("settleTableName") String settleTableName,
|
||||
@Param("period") Integer period,
|
||||
@Param("yesterdayPeriod") Integer yesterdayPeriod,
|
||||
@Param("firPurchaseOrderList") List<?> firPurchaseOrderList);
|
||||
|
||||
/**
|
||||
|
|
|
@ -284,7 +284,7 @@ public interface ICuMemberTreeService extends IService<CuMemberTree> {
|
|||
* @param period
|
||||
* @param firPurchaseOrderList 首单列表
|
||||
*/
|
||||
Map<Long, List<CuMemberSettleExt>> batchQueryCuMemberSettlePlaceParent(String settleTableName, Integer period, Integer yesterdayPeriod, List<SaOrderExt> firPurchaseOrderList);
|
||||
Map<Long, List<CuMemberSettleExt>> batchQueryCuMemberSettlePlaceParent(String settleTableName, Integer period, List<SaOrderExt> firPurchaseOrderList);
|
||||
|
||||
/**
|
||||
* 批量根据量奖信息查询会员结算表中的父级血缘数据
|
||||
|
|
|
@ -382,12 +382,12 @@ public class CuMemberTreeServiceImpl extends ServiceImpl<CuMemberTreeMapper, CuM
|
|||
}
|
||||
|
||||
@Override
|
||||
public Map<Long, List<CuMemberSettleExt>> batchQueryCuMemberSettlePlaceParent(String settleTableName, Integer period, Integer yesterdayPeriod, List<SaOrderExt> firPurchaseOrderList) {
|
||||
public Map<Long, List<CuMemberSettleExt>> batchQueryCuMemberSettlePlaceParent(String settleTableName, Integer period, List<SaOrderExt> firPurchaseOrderList) {
|
||||
// 查询出所有父级安置人
|
||||
List<CuMemberSettleExt> cuMemberSettleExtList = new ArrayList<>();
|
||||
List<List<?>> listList = cuMemberBonusSettle.handleCutList(firPurchaseOrderList, MagicNumberConstants.DELETE_DATA_BATCH_UPDATE_NUM);
|
||||
listList.forEach(list ->
|
||||
cuMemberSettleExtList.addAll(baseMapper.batchQueryCuMemberSettlePlaceParent(settleTableName, period, yesterdayPeriod, list)));
|
||||
cuMemberSettleExtList.addAll(baseMapper.batchQueryCuMemberSettlePlaceParent(settleTableName, period, list)));
|
||||
// key:订单ID,value:订单向上找安置人列表
|
||||
Map<Long, List<CuMemberSettleExt>> memberSettleMap = new HashMap<>(ComputeUtil.mapInitCapacity(firPurchaseOrderList.size()));
|
||||
cuMemberSettleExtList.forEach(cuMemberSettleExt -> {
|
||||
|
|
|
@ -38,12 +38,8 @@ import java.util.List;
|
|||
@Slf4j
|
||||
public class ApiCuMemberBonusController extends BaseController {
|
||||
|
||||
private ICuMemberBonusService cuMemberBonusService;
|
||||
|
||||
@Autowired
|
||||
public void setCuMemberBonusService(ICuMemberBonusService cuMemberBonusService) {
|
||||
this.cuMemberBonusService = cuMemberBonusService;
|
||||
}
|
||||
private ICuMemberBonusService cuMemberBonusService;
|
||||
|
||||
// /**
|
||||
// * 查询会员某个时间段内的奖金,默认查询15天内,查询直推
|
||||
|
@ -115,7 +111,8 @@ public class ApiCuMemberBonusController extends BaseController {
|
|||
memberBonusFirstPurchaseVO.setServiceSpend(cuMemberBonus.getServiceSpend());
|
||||
|
||||
// 拓展收益 = 首购拓展 + 复购拓展 + 复购推荐
|
||||
memberBonusFirstPurchaseVO.setExpandIncome(ComputeUtil.computeAddNum(memberBonusFirstPurchaseVO.getExpandIncome(), memberBonusFirstPurchaseVO.getRepurExpandIncome(), memberBonusFirstPurchaseVO.getRepurPushIncome()));
|
||||
memberBonusFirstPurchaseVO.setExpandIncome(ComputeUtil.computeAddNum(memberBonusFirstPurchaseVO.getExpandIncome(),
|
||||
memberBonusFirstPurchaseVO.getRepurExpandIncome(), memberBonusFirstPurchaseVO.getRepurPushIncome()));
|
||||
// 首购实发小计 = 首购实发小计 + 复购实发小计
|
||||
memberBonusFirstPurchaseVO.setPurRealSubtotal(ComputeUtil.computeAdd(memberBonusFirstPurchaseVO.getPurRealSubtotal(), memberBonusFirstPurchaseVO.getRepurRealSubtotal()));
|
||||
|
||||
|
@ -178,7 +175,8 @@ public class ApiCuMemberBonusController extends BaseController {
|
|||
memberBonusVO.setSettleDate(DateUtils.currentDate());
|
||||
BigDecimal serviceSpend = ComputeUtil.computeSubtract(ComputeUtil.computeAddNum(cuMemberBonus.getDirectIncome(), cuMemberBonus.getExpandIncome(),
|
||||
cuMemberBonus.getCoachIncome(), cuMemberBonus.getServiceIncome(), cuMemberBonus.getShareIncome(),
|
||||
cuMemberBonus.getRepurExpandIncome(), cuMemberBonus.getRepurRangeIncome(), cuMemberBonus.getRepurPushIncome()),
|
||||
cuMemberBonus.getRepurExpandIncome(), cuMemberBonus.getRepurCoachIncome(), cuMemberBonus.getRepurRangeIncome(),
|
||||
cuMemberBonus.getRepurPushIncome()),
|
||||
ComputeUtil.computeAdd(cuMemberBonus.getPurRealSubtotal(), cuMemberBonus.getRepurRealSubtotal()));
|
||||
memberBonusVO.setBackPoints(ComputeUtil.computeMultiplyHalf(serviceSpend));
|
||||
memberBonusVO.setServiceSpend(ComputeUtil.computeMultiplyHalf(serviceSpend));
|
||||
|
|
|
@ -49,36 +49,26 @@ import java.util.stream.Collectors;
|
|||
@RequestMapping("/manage/bonus")
|
||||
public class CuMemberBonusController extends BaseController {
|
||||
|
||||
private ICuMemberBonusService cuMemberBonusService;
|
||||
|
||||
private ITransactionCommonService transactionCommonService;
|
||||
@Autowired
|
||||
private ICuMemberBonusService iCuMemberBonusService;
|
||||
@Autowired
|
||||
private ITransactionCommonService iTransactionCommonService;
|
||||
|
||||
@DubboReference
|
||||
private IUserServiceApi userServiceApi;
|
||||
|
||||
IUserServiceApi userServiceApi;
|
||||
@DubboReference
|
||||
private IMenuColumnServiceApi menuColumnServiceApi;
|
||||
|
||||
@Autowired
|
||||
public void setTransactionCommonService(ITransactionCommonService transactionCommonService) {
|
||||
this.transactionCommonService = transactionCommonService;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
public void setCuMemberBonusService(ICuMemberBonusService cuMemberBonusService) {
|
||||
this.cuMemberBonusService = cuMemberBonusService;
|
||||
}
|
||||
IMenuColumnServiceApi menuColumnServiceApi;
|
||||
|
||||
/**
|
||||
* 分页查询会员某个时间段内的奖金汇总
|
||||
*/
|
||||
@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());
|
||||
|
@ -87,7 +77,7 @@ public class CuMemberBonusController extends BaseController {
|
|||
bonusParam.setPkCountry(SecurityUtils.getPkCountry());
|
||||
packageBonusParam(bonusParam);
|
||||
startPage();
|
||||
List<CuMemberBonusExt> cuMemberBonusList = cuMemberBonusService.queryBonusTotalVoByConditionForServer(bonusParam);
|
||||
List<CuMemberBonusExt> cuMemberBonusList = iCuMemberBonusService.queryBonusTotalVoByConditionForServer(bonusParam);
|
||||
TableDataInfo dataTable = getDataTable(cuMemberBonusList);
|
||||
dataTable.setRows(getBonusTotalVoS(cuMemberBonusList));
|
||||
return dataTable;
|
||||
|
@ -97,10 +87,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());
|
||||
|
@ -108,7 +98,7 @@ public class CuMemberBonusController extends BaseController {
|
|||
bonusParam.setPkVertexList(pkVertex);
|
||||
bonusParam.setPkCountry(SecurityUtils.getPkCountry());
|
||||
packageBonusParam(bonusParam);
|
||||
List<CuMemberBonusExt> cuMemberBonusList = cuMemberBonusService.queryBonusTotalVoByConditionForServer(bonusParam);
|
||||
List<CuMemberBonusExt> cuMemberBonusList = iCuMemberBonusService.queryBonusTotalVoByConditionForServer(bonusParam);
|
||||
List<BonusTotalVO> bonusTotalVoList = getBonusTotalVoS(cuMemberBonusList);
|
||||
Map<String, Integer> sourceBonusList = menuColumnServiceApi.queryMenuColumn("totalBonus", SecurityUtils.getUserId()).getData();
|
||||
ExcelUtil<BonusTotalVO> util = new ExcelUtil<>(BonusTotalVO.class, sourceBonusList);
|
||||
|
@ -119,7 +109,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);
|
||||
|
@ -133,9 +123,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());
|
||||
|
@ -143,16 +133,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 (bonusParam.getStartDate() == null || bonusParam.getEndDate() == null) {
|
||||
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){
|
||||
List<CuMemberBonusExt> cuMemberBonusExtList = iCuMemberBonusService.queryMemberBonusVoByConditionForServer(bonusParam);
|
||||
CuMemberBonusExt cmb = iCuMemberBonusService.queryMemberBonusByConditionForServerSum(bonusParam);
|
||||
if (cmb != null) {
|
||||
cmb.setMemberCode("合计");
|
||||
cuMemberBonusExtList.add(cmb);
|
||||
}
|
||||
|
@ -167,9 +157,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());
|
||||
|
@ -177,23 +167,23 @@ public class CuMemberBonusController extends BaseController {
|
|||
bonusParam.setPkVertexList(pkVertex);
|
||||
bonusParam.setPkCountry(SecurityUtils.getPkCountry());
|
||||
packageBonusParam(bonusParam);
|
||||
List<CuMemberBonusExt> cuMemberBonusExtList = cuMemberBonusService.queryMemberBonusVoByConditionForServer(bonusParam);
|
||||
CuMemberBonusExt cuMemberBonusExt = cuMemberBonusService.initCuMemberBonus();
|
||||
List<CuMemberBonusExt> cuMemberBonusExtList = iCuMemberBonusService.queryMemberBonusVoByConditionForServer(bonusParam);
|
||||
CuMemberBonusExt cuMemberBonusExt = iCuMemberBonusService.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);
|
||||
iCuMemberBonusService.calculateBonusTotal(cuMemberBonusExt, memberBonusExt);
|
||||
}
|
||||
}
|
||||
cuMemberBonusExtList.add(cuMemberBonusExt);
|
||||
List<CuMemberBonusVO> cuMemberBonusVoList = getBonusDetail(cuMemberBonusExtList);
|
||||
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, "奖金明细导出");
|
||||
}
|
||||
|
||||
private List<CuMemberBonusVO> getBonusDetail(List<CuMemberBonusExt> cuMemberBonusExtList) {
|
||||
private List<CuMemberBonusVO> getBonusDetail(List<CuMemberBonusExt> cuMemberBonusExtList) {
|
||||
List<CuMemberBonusVO> cuMemberBonusVoList = new ArrayList<>(cuMemberBonusExtList.size());
|
||||
for (CuMemberBonusExt cuMemberBonusExt : cuMemberBonusExtList) {
|
||||
CuMemberBonusVO cuMemberBonusVO = BeanUtil.copyProperties(cuMemberBonusExt, CuMemberBonusVO.class);
|
||||
|
@ -201,7 +191,7 @@ public class CuMemberBonusController extends BaseController {
|
|||
cuMemberBonusVO.setMemberCode(CommonUtil.getMemberCode(cuMemberBonusExt.getMemberCode(), cuMemberBonusExt.getServiceCode()));
|
||||
cuMemberBonusVO.setMemberName(CommonUtil.getMemberName(cuMemberBonusExt.getPkVertex(), cuMemberBonusExt.getMemberName(), cuMemberBonusExt.getNickName()));
|
||||
|
||||
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);
|
||||
|
@ -215,11 +205,11 @@ 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();
|
||||
return cuMemberBonusService.queryMemberBonusDetailSerVoByCondition(bonusParam);
|
||||
return iCuMemberBonusService.queryMemberBonusDetailSerVoByCondition(bonusParam);
|
||||
}
|
||||
|
||||
|
||||
|
@ -228,29 +218,29 @@ 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);
|
||||
TableDataInfo tableDataInfo = iCuMemberBonusService.queryMemberBonusDetailSerVoByCondition(bonusParam);
|
||||
List<MemberBonusDetailSerVO> memberBonusDetailSerVOList = (List<MemberBonusDetailSerVO>) tableDataInfo.getRows();
|
||||
// 获取需要翻译的枚举翻译
|
||||
Map<String, String> transactionMap = transactionCommonService.exportEnumTransaction(EOrderType.values(), EBonusIncomeStatus.values());
|
||||
Map<Integer, String> transactionLongMap = transactionCommonService.exportEnumTransactionByDB(EnumsPrefixConstants.KEY_GRADE, EnumsPrefixConstants.KEY_AWARD);
|
||||
Map<String, String> transactionMap = iTransactionCommonService.exportEnumTransaction(EOrderType.values(), EBonusIncomeStatus.values());
|
||||
Map<Integer, String> transactionLongMap = iTransactionCommonService.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, "奖金来源导出");
|
||||
}
|
||||
|
||||
|
|
|
@ -9,9 +9,7 @@ import org.apache.ibatis.annotations.Param;
|
|||
import java.util.List;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 会员奖金-辅导收益明细表 Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2022-11-15
|
||||
|
@ -20,37 +18,29 @@ public interface CuMemberBonusCoachMapper extends BaseMapper<CuMemberBonusCoach>
|
|||
|
||||
/**
|
||||
* 删除会员奖金汇总表
|
||||
*
|
||||
* @param period 结算期间
|
||||
* @return: void
|
||||
* @Author: sui q
|
||||
* @Date: 2022/12/13 11:54
|
||||
*/
|
||||
void deleteCuMemberBonusCoach(Integer period);
|
||||
|
||||
/**
|
||||
* 批量插入会员奖金主表
|
||||
*
|
||||
* @param cuMemberBonusCoachList 会员奖金
|
||||
* @return: void
|
||||
* @Author: sui q
|
||||
* @Date: 2022/12/13 13:56
|
||||
*/
|
||||
void batchInsertCuMemberBonusCoach(@Param("cuMemberBonusCoachList") List<?> cuMemberBonusCoachList);
|
||||
|
||||
/**
|
||||
* 根据查询条件查询固定的奖金明细
|
||||
*
|
||||
* @param bonusParam 查询条件
|
||||
* @return: List<CuMemberBonusDetail>
|
||||
* @Author: sui q
|
||||
* @Date: 2023/1/14 11:18
|
||||
*/
|
||||
List<CuMemberBonusCoachExt> queryMemberBonusCoachByBonusItems(BonusParam bonusParam);
|
||||
|
||||
/**
|
||||
* 根据查询条件查询固定的奖金明细
|
||||
*
|
||||
* @param bonusParam 查询条件
|
||||
* @return: List<CuMemberBonusDetail>
|
||||
* @Author: sui q
|
||||
* @Date: 2023/1/14 11:18
|
||||
*/
|
||||
List<CuMemberBonusCoachExt> queryMemberBonusCoachByBonusItemsForServer(@Param("bonusParam") BonusParam bonusParam);
|
||||
}
|
||||
|
|
|
@ -9,9 +9,7 @@ import org.apache.ibatis.annotations.Param;
|
|||
import java.util.List;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 会员奖金-会员奖金汇总表 Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2022-11-11
|
||||
|
@ -22,9 +20,6 @@ public interface CuMemberBonusMapper extends BaseMapper<CuMemberBonus> {
|
|||
* 批量获取cuMemberBonus主键
|
||||
*
|
||||
* @param rowNum 数量
|
||||
* @return: List<Integer>
|
||||
* @Author: sui q
|
||||
* @Date: 2022/12/13 13:47
|
||||
*/
|
||||
List<Long> batchQueryCuMemberBonusSeq(Integer rowNum);
|
||||
|
||||
|
@ -32,9 +27,6 @@ public interface CuMemberBonusMapper extends BaseMapper<CuMemberBonus> {
|
|||
* 根据查询条件查询会员奖金
|
||||
*
|
||||
* @param bonusParam 查询条件
|
||||
* @return: List<MemberBonusVO>
|
||||
* @Author: sui q
|
||||
* @Date: 2023/1/13 11:27
|
||||
*/
|
||||
List<CuMemberBonus> queryMemberBonusTotalByCondition(BonusParam bonusParam);
|
||||
|
||||
|
@ -42,9 +34,6 @@ public interface CuMemberBonusMapper extends BaseMapper<CuMemberBonus> {
|
|||
* 根据查询条件查询会员奖金
|
||||
*
|
||||
* @param bonusParam 查询条件
|
||||
* @return: List<MemberBonusVO>
|
||||
* @Author: sui q
|
||||
* @Date: 2023/1/13 11:27
|
||||
*/
|
||||
List<CuMemberBonusExt> queryMemberBonusByCondition(BonusParam bonusParam);
|
||||
|
||||
|
@ -52,9 +41,6 @@ public interface CuMemberBonusMapper extends BaseMapper<CuMemberBonus> {
|
|||
* 根据查询条件查询会员奖金
|
||||
*
|
||||
* @param bonusParam 查询条件
|
||||
* @return: List<MemberBonusVO>
|
||||
* @Author: sui q
|
||||
* @Date: 2023/1/13 11:27
|
||||
*/
|
||||
List<CuMemberBonusExt> queryMemberBonusByConditionForServer(@Param("bonusParam") BonusParam bonusParam);
|
||||
|
||||
|
@ -67,15 +53,10 @@ public interface CuMemberBonusMapper extends BaseMapper<CuMemberBonus> {
|
|||
**/
|
||||
CuMemberBonusExt queryMemberBonusByConditionForServerSum(@Param("bonusParam") BonusParam bonusParam);
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 根据查询条件查询会员奖金
|
||||
*
|
||||
* @param bonusParam 查询条件
|
||||
* @return: List<MemberBonusVO>
|
||||
* @Author: sui q
|
||||
* @Date: 2023/1/13 11:27
|
||||
*/
|
||||
List<CuMemberBonusExt> queryBonusTotalVoByConditionForServer(@Param("bonusParam") BonusParam bonusParam);
|
||||
|
||||
|
@ -83,9 +64,6 @@ public interface CuMemberBonusMapper extends BaseMapper<CuMemberBonus> {
|
|||
* 删除会员奖金汇总表
|
||||
*
|
||||
* @param period 结算期间
|
||||
* @return: void
|
||||
* @Author: sui q
|
||||
* @Date: 2022/12/13 11:54
|
||||
*/
|
||||
void deleteCuMemberBonus(Integer period);
|
||||
|
||||
|
@ -93,9 +71,6 @@ public interface CuMemberBonusMapper extends BaseMapper<CuMemberBonus> {
|
|||
* 批量插入会员奖金主表
|
||||
*
|
||||
* @param cuMemberBonusList 会员奖金
|
||||
* @return: void
|
||||
* @Author: sui q
|
||||
* @Date: 2022/12/13 13:56
|
||||
*/
|
||||
void batchInsertCuMemberBonus(@Param("cuMemberBonusList") List<?> cuMemberBonusList);
|
||||
|
||||
|
@ -103,9 +78,6 @@ public interface CuMemberBonusMapper extends BaseMapper<CuMemberBonus> {
|
|||
* 批量插入会员奖金主表
|
||||
*
|
||||
* @param cuMemberBonusList 会员奖金
|
||||
* @return: void
|
||||
* @Author: sui q
|
||||
* @Date: 2022/12/13 13:56
|
||||
*/
|
||||
void insertOrUpdateCuMemberBonus(@Param("cuMemberBonusList") List<CuMemberBonus> cuMemberBonusList);
|
||||
|
||||
|
@ -114,19 +86,14 @@ public interface CuMemberBonusMapper extends BaseMapper<CuMemberBonus> {
|
|||
*
|
||||
* @param grantStatus 发放状态
|
||||
* @param oldGrantStatus 原来的发放状态
|
||||
* @return: Boolean
|
||||
* @Author: sui q
|
||||
* @Date: 2023/3/20 17:21
|
||||
*/
|
||||
Integer updateCuMemberBonusStatus(@Param("pkCountry") Integer pkCountry, @Param("grantStatus") Integer grantStatus,
|
||||
@Param("oldGrantStatus") Integer oldGrantStatus, @Param("startPeriod") Integer startPeriod,
|
||||
@Param("endPeriod") Integer endPeriod);
|
||||
|
||||
/*
|
||||
* @description: 查询会员一周周期的拓展累计,复购拓展累计
|
||||
* @author: sui q
|
||||
* @date: 2023/7/15 14:26
|
||||
* @param: null null
|
||||
* 查询会员一周周期的拓展累计,复购拓展累计
|
||||
**/
|
||||
List<CuMemberBonus> queryWeekMemberBonus(@Param("startPeriod") int startPeriod, @Param("endPeriod") int endPeriod);
|
||||
|
||||
}
|
||||
|
|
|
@ -21,4 +21,5 @@ public interface CuMemberRepeatBonusMapper extends BaseMapper<CuMemberRepeatBonu
|
|||
* @param: null null
|
||||
**/
|
||||
void insertCuMemberRepeatBonus(@Param("cuMemberRepeatBonusList") List<CuMemberRepeatBonus> cuMemberRepeatBonusList);
|
||||
|
||||
}
|
||||
|
|
|
@ -7,9 +7,7 @@ import java.util.List;
|
|||
import java.util.Set;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 会员奖金-辅导收益明细表 服务类
|
||||
* </p>
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2022-11-15
|
||||
|
@ -18,19 +16,15 @@ public interface ICuMemberBonusCoachService extends IService<CuMemberBonusCoach>
|
|||
|
||||
/**
|
||||
* 删除会员奖金汇总表
|
||||
*
|
||||
* @param period 结算期间
|
||||
* @return: void
|
||||
* @Author: sui q
|
||||
* @Date: 2022/12/13 11:54
|
||||
*/
|
||||
void deleteCuMemberBonusCoach(Integer period);
|
||||
|
||||
/**
|
||||
* 批量插入会员奖金主表
|
||||
*
|
||||
* @param cuMemberBonusCoachList 会员奖金
|
||||
* @return: void
|
||||
* @Author: sui q
|
||||
* @Date: 2022/12/13 13:56
|
||||
*/
|
||||
void batchInsertCuMemberBonusCoach(List<CuMemberBonusCoach> cuMemberBonusCoachList, Set<Long> memberIdSet);
|
||||
}
|
||||
|
|
|
@ -24,9 +24,6 @@ public interface ICuMemberBonusService extends IService<CuMemberBonus> {
|
|||
* 批量获取cuMemberBonus主键
|
||||
*
|
||||
* @param rowNum 数量
|
||||
* @return: List<Integer>
|
||||
* @Author: sui q
|
||||
* @Date: 2022/12/13 13:47
|
||||
*/
|
||||
List<Long> batchQueryCuMemberBonusSeq(Integer rowNum);
|
||||
|
||||
|
@ -34,9 +31,6 @@ public interface ICuMemberBonusService extends IService<CuMemberBonus> {
|
|||
* 根据查询条件查询会员奖金
|
||||
*
|
||||
* @param bonusParam 查询条件
|
||||
* @return: List<MemberBonusVO>
|
||||
* @Author: sui q
|
||||
* @Date: 2023/1/13 11:27
|
||||
*/
|
||||
List<CuMemberBonusExt> queryMemberBonusVoByCondition(BonusParam bonusParam);
|
||||
|
||||
|
@ -44,9 +38,6 @@ public interface ICuMemberBonusService extends IService<CuMemberBonus> {
|
|||
* 根据查询条件查询会员秒接奖金
|
||||
*
|
||||
* @param bonusParam 查询条件
|
||||
* @return: List<MemberBonusVO>
|
||||
* @Author: sui q
|
||||
* @Date: 2023/1/13 11:27
|
||||
*/
|
||||
List<CuMemberBonusExt> queryMemberSecondBonusVoByCondition(BonusParam bonusParam);
|
||||
|
||||
|
@ -54,9 +45,6 @@ public interface ICuMemberBonusService extends IService<CuMemberBonus> {
|
|||
* 根据查询条件查询会员奖金
|
||||
*
|
||||
* @param bonusParam 查询条件
|
||||
* @return: List<MemberBonusVO>
|
||||
* @Author: sui q
|
||||
* @Date: 2023/1/13 11:27
|
||||
*/
|
||||
List<CuMemberBonusExt> queryMemberBonusTotalByCondition(BonusParam bonusParam);
|
||||
|
||||
|
@ -64,9 +52,6 @@ public interface ICuMemberBonusService extends IService<CuMemberBonus> {
|
|||
* 根据查询条件查询会员奖金
|
||||
*
|
||||
* @param bonusParam 查询条件
|
||||
* @return: List<MemberBonusVO>
|
||||
* @Author: sui q
|
||||
* @Date: 2023/1/13 11:27
|
||||
*/
|
||||
List<CuMemberBonusExt> queryMemberBonusVoByConditionForServer(BonusParam bonusParam);
|
||||
|
||||
|
@ -83,9 +68,6 @@ public interface ICuMemberBonusService extends IService<CuMemberBonus> {
|
|||
* 根据条件查询查询每天奖金汇总
|
||||
*
|
||||
* @param bonusParam 查询条件
|
||||
* @return: List<BonusTotalVO>
|
||||
* @Author: sui q
|
||||
* @Date: 2023/3/6 9:26
|
||||
*/
|
||||
List<CuMemberBonusExt> queryBonusTotalVoByConditionForServer(BonusParam bonusParam);
|
||||
|
||||
|
@ -93,17 +75,11 @@ public interface ICuMemberBonusService extends IService<CuMemberBonus> {
|
|||
* 根据查询条件查询会员明细奖金
|
||||
*
|
||||
* @param bonusParam 查询条件
|
||||
* @return: List<MemberBonusDetailVO>
|
||||
* @Author: sui q
|
||||
* @Date: 2023/1/13 17:27
|
||||
*/
|
||||
TableDataInfo queryMemberBonusDetailVoByCondition(BonusParam bonusParam);
|
||||
|
||||
/*
|
||||
* @description: 查询创客空间奖金来源
|
||||
* @author: sui q
|
||||
* @date: 2024/7/12 10:36
|
||||
* @param: null null
|
||||
**/
|
||||
List<MemberBonusDetailVO> queryMemberMarkBonusDetailSource(BonusParam bonusParam);
|
||||
|
||||
|
@ -111,9 +87,6 @@ public interface ICuMemberBonusService extends IService<CuMemberBonus> {
|
|||
* 后台根据查询条件查询会员奖金明细
|
||||
*
|
||||
* @param bonusParam 查询条件
|
||||
* @return: List<MemberBonusDetailSerVO>
|
||||
* @Author: sui q
|
||||
* @Date: 2023/1/23 14:41
|
||||
*/
|
||||
TableDataInfo queryMemberBonusDetailSerVoByCondition(BonusParam bonusParam);
|
||||
|
||||
|
@ -121,9 +94,6 @@ public interface ICuMemberBonusService extends IService<CuMemberBonus> {
|
|||
* 删除会员奖金汇总表
|
||||
*
|
||||
* @param period 结算期间
|
||||
* @return: void
|
||||
* @Author: sui q
|
||||
* @Date: 2022/12/13 11:54
|
||||
*/
|
||||
void deleteCuMemberBonus(Integer period);
|
||||
|
||||
|
@ -131,9 +101,6 @@ public interface ICuMemberBonusService extends IService<CuMemberBonus> {
|
|||
* 批量插入会员奖金主表
|
||||
*
|
||||
* @param cuMemberBonusList 会员奖金
|
||||
* @return: void
|
||||
* @Author: sui q
|
||||
* @Date: 2022/12/13 13:56
|
||||
*/
|
||||
void batchInsertCuMemberBonus(List<CuMemberBonus> cuMemberBonusList);
|
||||
|
||||
|
@ -141,17 +108,11 @@ public interface ICuMemberBonusService extends IService<CuMemberBonus> {
|
|||
* 批量插入会员奖金主表
|
||||
*
|
||||
* @param cuMemberBonusList 会员奖金
|
||||
* @return: void
|
||||
* @Author: sui q
|
||||
* @Date: 2022/12/13 13:56
|
||||
*/
|
||||
void insertOrUpdateCuMemberBonus(List<CuMemberBonus> cuMemberBonusList);
|
||||
|
||||
/*
|
||||
* @description: 查询会员奖金
|
||||
* @author: sui q
|
||||
* @date: 2023/8/8 11:52
|
||||
* @param: null null
|
||||
**/
|
||||
List<CuMemberBonus> queryCuMemberBonus(int period, List<CuMemberBonus> cuMemberBonusList);
|
||||
|
||||
|
@ -161,9 +122,6 @@ public interface ICuMemberBonusService extends IService<CuMemberBonus> {
|
|||
* @param grantStatus 发放状态
|
||||
* @param oldGrantStatus 原来的发放状态
|
||||
* @param startPeriod 期间
|
||||
* @return: Boolean
|
||||
* @Author: sui q
|
||||
* @Date: 2023/3/20 17:21
|
||||
*/
|
||||
Boolean updateCuMemberBonusStatus(Integer pkCountry, Integer grantStatus, Integer oldGrantStatus, Integer startPeriod, Integer endPeriod);
|
||||
|
||||
|
@ -173,9 +131,6 @@ public interface ICuMemberBonusService extends IService<CuMemberBonus> {
|
|||
* @param grantStatus 发放状态
|
||||
* @param startPeriod 期间
|
||||
* @param endPeriod 期间
|
||||
* @return: List<CuMemberBonus>
|
||||
* @Author: sui q
|
||||
* @Date: 2023/3/21 9:44
|
||||
*/
|
||||
List<CuMemberBonus> queryCuMemberBonusByCondition(Integer pkCountry, Integer grantStatus, Integer startPeriod, Integer endPeriod);
|
||||
|
||||
|
|
|
@ -408,20 +408,19 @@ public class BonusSettleFirstPurchaseHandle extends BonusSettleHandle {
|
|||
*
|
||||
* @param settleTableName 结算表
|
||||
* @param period 期间
|
||||
* @param yesterdayPeriod 昨日期间
|
||||
* @param bonusConfigDTO 参数
|
||||
* @param firPurchaseOrderList 首单
|
||||
* @param cuMemberBonusMap 所有计算出来的奖金汇总
|
||||
*/
|
||||
List<CuMemberBonusExpand> calculateExpandBonus(Map<Long, CuMemberSettleExt> cuMemberSettleExtMap, String settleDate, String settleTableName, BonusConfigDTO bonusConfigDTO,
|
||||
Map<String, String> systemConfigMap, List<SaOrderExt> firPurchaseOrderList,
|
||||
Integer period, Integer yesterdayPeriod, Map<Long, CuMemberBonus> weekMemberBonusMap, Map<Long, CuMemberBonus> cuMemberBonusMap,
|
||||
Integer period, Map<Long, CuMemberBonus> weekMemberBonusMap, Map<Long, CuMemberBonus> cuMemberBonusMap,
|
||||
Map<Long, CuMemberRiskControl> riskControlMap, Map<Long, CuBonusExpandExt> cuBonusExpandExtMap) {
|
||||
// 根据开始期间、结束期间查询
|
||||
List<CuMemberBonusExpand> cuMemberBonusExpandList = new ArrayList<>();
|
||||
// 获取所有订单的上级,根据订单往上一步步计算
|
||||
// key:订单ID,value:订单向上找安置人列表
|
||||
Map<Long, List<CuMemberSettleExt>> memberSettleMap = iCuMemberTreeService.batchQueryCuMemberSettlePlaceParent(settleTableName, period, yesterdayPeriod, firPurchaseOrderList);
|
||||
Map<Long, List<CuMemberSettleExt>> memberSettleMap = iCuMemberTreeService.batchQueryCuMemberSettlePlaceParent(settleTableName, period, firPurchaseOrderList);
|
||||
|
||||
// 获取复购考核结果
|
||||
List<CuMemberSettleExt> queryMemberList = new ArrayList<>();
|
||||
|
@ -672,12 +671,12 @@ public class BonusSettleFirstPurchaseHandle extends BonusSettleHandle {
|
|||
*/
|
||||
List<CuMemberBonusCoach> calculateCoachBonus(Map<Long, CuMemberSettleExt> cuMemberSettleExtMap, String settleTableName, String settleDateStr, BonusConfigDTO bonusConfigDTO,
|
||||
List<SaOrderExt> firPurchaseOrderList, List<CuMemberBonusExpand> cuMemberBonusExpandList, Integer period, Map<Long, CuMemberBonus> cuMemberBonusMap,
|
||||
Map<Long, CuAwardsControl> cuAwardsControlMap, Map<Long, CuMemberRiskControl> riskControlMap, List<BdAwards> awardsList) {
|
||||
Map<Long, CuAwardsControl> cuAwardsControlMap, Map<Long, CuMemberRiskControl> riskControlMap, List<BdAwards> awardsList, boolean firstBool) {
|
||||
Map<Long, SaOrderExt> saOrderExtMap = new HashMap<>(ComputeUtil.mapInitCapacity(firPurchaseOrderList.size()));
|
||||
firPurchaseOrderList.forEach(saOrderExt ->
|
||||
saOrderExtMap.put(saOrderExt.getPkId(), saOrderExt));
|
||||
return calculateCoachBonusOne(cuMemberSettleExtMap, settleTableName, settleDateStr, bonusConfigDTO, cuMemberBonusExpandList, period,
|
||||
cuMemberBonusMap, saOrderExtMap, cuAwardsControlMap, riskControlMap, awardsList);
|
||||
cuMemberBonusMap, saOrderExtMap, cuAwardsControlMap, riskControlMap, awardsList, firstBool);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -686,7 +685,7 @@ public class BonusSettleFirstPurchaseHandle extends BonusSettleHandle {
|
|||
List<CuMemberBonusCoach> calculateCoachBonusOne(Map<Long, CuMemberSettleExt> cuMemberSettleExtMap, String settleTableName, String settleDateStr, BonusConfigDTO bonusConfigDTO,
|
||||
List<CuMemberBonusExpand> cuMemberBonusExpandList, Integer period, Map<Long, CuMemberBonus> cuMemberBonusMap,
|
||||
Map<Long, SaOrderExt> saOrderExtMap, Map<Long, CuAwardsControl> cuAwardsControlMap, Map<Long, CuMemberRiskControl> riskControlMap,
|
||||
List<BdAwards> awardsList) {
|
||||
List<BdAwards> awardsList, boolean firstBool) {
|
||||
// 领导奖数据列表
|
||||
List<CuMemberBonusCoach> cuMemberBonusCoachList = new ArrayList<>();
|
||||
|
||||
|
@ -718,7 +717,7 @@ public class BonusSettleFirstPurchaseHandle extends BonusSettleHandle {
|
|||
// }
|
||||
List<CuMemberBonusCoach> coachBonusList = calculateBonusCoach(cuMemberSettleExtMap, bonusConfigDTO, period, cuMemberBonusMap,
|
||||
saOrderExtMap, cuMemberAssessMap, bonusIdSettleMap, cuMemberBonusExpand, cuAwardsControlMap,
|
||||
riskControlMap, cuMemberBonusNumMap, awardsList);
|
||||
riskControlMap, cuMemberBonusNumMap, awardsList, firstBool);
|
||||
if (coachBonusList.size() > 0) {
|
||||
cuMemberBonusCoachList.addAll(coachBonusList);
|
||||
}
|
||||
|
@ -733,7 +732,7 @@ public class BonusSettleFirstPurchaseHandle extends BonusSettleHandle {
|
|||
private List<CuMemberBonusCoach> calculateBonusCoach(Map<Long, CuMemberSettleExt> cuMemberSettleExtMap, BonusConfigDTO bonusConfigDTO, Integer period,
|
||||
Map<Long, CuMemberBonus> cuMemberBonusMap, Map<Long, SaOrderExt> saOrderExtMap, Map<Long, CuMemberAssess> cuMemberAssessMap,
|
||||
Map<Long, CuMemberSettleExt> bonusIdSettleMap, CuMemberBonusExpand cuMemberBonusExpand, Map<Long, CuAwardsControl> cuAwardsControlMap,
|
||||
Map<Long, CuMemberRiskControl> riskControlMap, Map<Long, CuMemberSettleExt> cuMemberBonusNumMap, List<BdAwards> awardsList) {
|
||||
Map<Long, CuMemberRiskControl> riskControlMap, Map<Long, CuMemberSettleExt> cuMemberBonusNumMap, List<BdAwards> awardsList, boolean firstBool) {
|
||||
// 目前这个会员只用来处理备注会员信息使用
|
||||
CuMemberSettleExt sourceMemberSettleExt = bonusIdSettleMap.get(cuMemberBonusExpand.getPkBonus());
|
||||
// 用于回写血缘总共多少代
|
||||
|
@ -761,13 +760,23 @@ public class BonusSettleFirstPurchaseHandle extends BonusSettleHandle {
|
|||
// 会员状态不正常 或者 停算收益 直接跳过
|
||||
continue;
|
||||
}
|
||||
if (validatePkBonusItems(bonusConfigDTO, targetMemberSettleExt.getPkSettleCountry(), EBonusItems.COACHING_INCOME.getValue())) {
|
||||
// 校验当前国家是否有该奖项
|
||||
continue;
|
||||
if (firstBool) {
|
||||
if (validatePkBonusItems(bonusConfigDTO, targetMemberSettleExt.getPkSettleCountry(), EBonusItems.COACHING_INCOME.getValue())) {
|
||||
// 校验当前国家是否有该奖项
|
||||
continue;
|
||||
}
|
||||
} else {
|
||||
if (validatePkBonusItems(bonusConfigDTO, targetMemberSettleExt.getPkSettleCountry(), EBonusItems.COACHING_INCOME.getValue())) {
|
||||
// 校验当前国家是否有该奖项
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
SaOrderExt saOrderExt = saOrderExtMap.get(cuMemberBonusExpand.getPkOrder());
|
||||
if (null == saOrderExt || !validateSecondOrderExistBonus(saOrderExt, EBonusItems.COACHING_INCOME.getValue())) {
|
||||
// 订单为空 或者 判断二次发货是否有辅导收益
|
||||
if (null == saOrderExt
|
||||
// || !validateSecondOrderExistBonus(saOrderExt, EBonusItems.COACHING_INCOME.getValue())
|
||||
) {
|
||||
// 订单为空 或者 判断二次发货是否有辅导收益 -- 原二次发货判断去掉
|
||||
continue;
|
||||
}
|
||||
|
||||
|
@ -793,7 +802,7 @@ public class BonusSettleFirstPurchaseHandle extends BonusSettleHandle {
|
|||
awardCalRadio = coachAward.getCoachRatio();
|
||||
}
|
||||
// 生成辅导收益明细
|
||||
CuMemberBonusCoach cuMemberBonusCoach = getCuMemberBonusCoach(bonusConfigDTO, cuMemberBonusExpand, i, targetMemberSettleExt, awardCalRadio);
|
||||
CuMemberBonusCoach cuMemberBonusCoach = getCuMemberBonusCoach(bonusConfigDTO, cuMemberBonusExpand, i, targetMemberSettleExt, awardCalRadio, firstBool);
|
||||
// TODO new 如果拓展收益是延缓发放,那么辅导收益也需要延缓发放
|
||||
if (EBonusIncomeStatus.DELAY_GRANT.getValue() == cuMemberBonusExpand.getIncomeStatus()) {
|
||||
cuMemberBonusCoach.setIncomeStatus(EBonusIncomeStatus.DELAY_GRANT.getValue());
|
||||
|
@ -823,11 +832,18 @@ public class BonusSettleFirstPurchaseHandle extends BonusSettleHandle {
|
|||
|
||||
// 收益占比
|
||||
BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusCoach, saOrderExt.getOrderAmount(), saOrderExt.getInExchangeRate());
|
||||
coachRemark(saOrderExt, cuMemberBonusCoach, sourceMemberSettleExt, targetMemberSettleExt);
|
||||
coachRemark(saOrderExt, cuMemberBonusCoach, sourceMemberSettleExt, targetMemberSettleExt, firstBool);
|
||||
|
||||
if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusCoach.getIncomeStatus()) {
|
||||
cuMemberBonus.setCoachIncome(ComputeUtil.computeAdd(cuMemberBonus.getCoachIncome(), cuMemberBonusCoach.getPretaxIncome()));
|
||||
setFirstPurchaseTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusCoach);
|
||||
if (firstBool) {
|
||||
// 首购处理
|
||||
cuMemberBonus.setCoachIncome(ComputeUtil.computeAdd(cuMemberBonus.getCoachIncome(), cuMemberBonusCoach.getPretaxIncome()));
|
||||
setFirstPurchaseTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusCoach);
|
||||
} else {
|
||||
// 复购处理
|
||||
cuMemberBonus.setRepurCoachIncome(ComputeUtil.computeAdd(cuMemberBonus.getRepurCoachIncome(), cuMemberBonusCoach.getPretaxIncome()));
|
||||
setPurchaseTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusCoach);
|
||||
}
|
||||
}
|
||||
backMemberBonusCoachList.add(cuMemberBonusCoach);
|
||||
|
||||
|
@ -867,13 +883,15 @@ public class BonusSettleFirstPurchaseHandle extends BonusSettleHandle {
|
|||
}
|
||||
|
||||
private CuMemberBonusCoach getCuMemberBonusCoach(BonusConfigDTO bonusConfigDTO, CuMemberBonusExpand cuMemberBonusExpand,
|
||||
int i, CuMemberSettleExt targetMemberSettleExt, BigDecimal awardCalRadio) {
|
||||
int i, CuMemberSettleExt targetMemberSettleExt, BigDecimal awardCalRadio, boolean firstBool) {
|
||||
// 奖金项(首购、复购判断)
|
||||
Integer bonusItems = firstBool ? EBonusItems.COACHING_INCOME.getValue() : EBonusItems.REPURCHASE_COACHING_INCOME.getValue();
|
||||
CuMemberBonusCoach cuMemberBonusCoach = CuMemberBonusCoach.builder()
|
||||
.pkBonus(targetMemberSettleExt.getPkMember())
|
||||
.pkOrder(cuMemberBonusExpand.getPkOrder())
|
||||
.pkBonusItems(getPkBonusItems(bonusConfigDTO, targetMemberSettleExt.getPkSettleCountry(), EBonusItems.COACHING_INCOME.getValue()))
|
||||
.calType(ECalType.RATIO.getValue())
|
||||
.pkBonusItems(getPkBonusItems(bonusConfigDTO, targetMemberSettleExt.getPkSettleCountry(), bonusItems))
|
||||
.incomeStatus(cuMemberBonusExpand.getIncomeStatus())
|
||||
.calType(ECalType.RATIO.getValue())
|
||||
.calAchieve(cuMemberBonusExpand.getPretaxIncome())
|
||||
.currentGeneration(i)
|
||||
// 计算比例
|
||||
|
|
|
@ -516,8 +516,9 @@ public abstract class BonusSettleHandle {
|
|||
* @Date: 2022/11/17 11:22
|
||||
*/
|
||||
protected void coachRemark(SaOrderExt saOrderExt, CuMemberBonusCoach cuMemberBonusCoach,
|
||||
CuMemberSettleExt sourceCuMemberSettleExt, CuMemberSettleExt targetCuMemberSettleExt) {
|
||||
String remark = String.format(BonusMsgConstants.COACH, cuMemberBonusCoach.getCurrentGeneration(), saOrderExt.getOrderCode(),
|
||||
CuMemberSettleExt sourceCuMemberSettleExt, CuMemberSettleExt targetCuMemberSettleExt, boolean firstBool) {
|
||||
String remark = String.format(firstBool ? BonusMsgConstants.COACH : BonusMsgConstants.REPURCHASE_COACH,
|
||||
cuMemberBonusCoach.getCurrentGeneration(), saOrderExt.getOrderCode(),
|
||||
sourceCuMemberSettleExt.getMemberCode() + sourceCuMemberSettleExt.getMemberName(),
|
||||
targetCuMemberSettleExt.getMemberCode() + targetCuMemberSettleExt.getMemberName(),
|
||||
cuMemberBonusCoach.getCalAchieve(), cuMemberBonusCoach.getCalValue());
|
||||
|
@ -837,6 +838,7 @@ public abstract class BonusSettleHandle {
|
|||
.repurPushIncome(BigDecimal.ZERO)
|
||||
.repurRangeIncome(BigDecimal.ZERO)
|
||||
.repurExpandIncome(BigDecimal.ZERO)
|
||||
.repurCoachIncome(BigDecimal.ZERO)
|
||||
.repurRealSubtotal(BigDecimal.ZERO)
|
||||
.cloudDirectIncome(BigDecimal.ZERO)
|
||||
.cloudPurIncome(BigDecimal.ZERO)
|
||||
|
@ -1080,7 +1082,9 @@ public abstract class BonusSettleHandle {
|
|||
// 处理扣项
|
||||
setBonusDeduct(bdBonusDeduct, cuMemberBonus, bonusDetail);
|
||||
BigDecimal realIncome = ReflectUtils.invokeGetter(bonusDetail, BonusFieldConstants.REAL_INCOME);
|
||||
// 复购实发小计
|
||||
cuMemberBonus.setRepurRealSubtotal(ComputeUtil.computeAdd(cuMemberBonus.getRepurRealSubtotal(), realIncome));
|
||||
// 实发收益总计
|
||||
cuMemberBonus.setRealIncomeTotal(ComputeUtil.computeAdd(cuMemberBonus.getRealIncomeTotal(), realIncome));
|
||||
}
|
||||
|
||||
|
|
|
@ -139,12 +139,12 @@ public class BonusSettlePurchaseHandle extends BonusSettleHandle {
|
|||
* @param cuMemberBonusMap 所有计算出来的奖金汇总
|
||||
*/
|
||||
List<CuMemberBonusExpand> calculateRepurchaseExpandBonus(Map<Long, CuMemberRiskControl> riskControlMap, Map<Long, CuMemberSettleExt> cuMemberSettleExtMap, String settleTableName, String settleDateStr,
|
||||
BonusConfigDTO bonusConfigDTO, Map<String, String> systemConfigMap, List<SaOrderExt> purchaseOrderList, Integer period, Integer yesterdayPeriod,
|
||||
BonusConfigDTO bonusConfigDTO, Map<String, String> systemConfigMap, List<SaOrderExt> purchaseOrderList, Integer period,
|
||||
Map<Long, CuMemberBonus> weekMemberBonusMap, Map<Long, CuMemberBonus> cuMemberBonusMap, Map<Long, CuBonusExpandExt> cuBonusExpandExtMap) {
|
||||
List<CuMemberBonusExpand> cuMemberBonusExpandList = new ArrayList<>();
|
||||
// 获取所有订单的上级,根据订单往上一步步计算
|
||||
// key:订单ID,value:订单向上找安置人列表
|
||||
Map<Long, List<CuMemberSettleExt>> memberSettleMap = iCuMemberTreeService.batchQueryCuMemberSettlePlaceParent(settleTableName, period, yesterdayPeriod, purchaseOrderList);
|
||||
Map<Long, List<CuMemberSettleExt>> memberSettleMap = iCuMemberTreeService.batchQueryCuMemberSettlePlaceParent(settleTableName, period, purchaseOrderList);
|
||||
|
||||
// 订单安置上找所有会员列表
|
||||
List<CuMemberSettleExt> memberSettleExtList = new ArrayList<>();
|
||||
|
@ -1032,7 +1032,7 @@ public class BonusSettlePurchaseHandle extends BonusSettleHandle {
|
|||
BigDecimal maxIncome = ComputeUtil.computeBonusMultiply(cuMemberBonusExpand.getCalAchieve(), gradeExpandRatio);
|
||||
// actualIncome = 业绩 * 等级扩展比例
|
||||
BigDecimal actualIncome = ComputeUtil.computeBonusMultiply(cuMemberBonusExpand.getCalAchieve(), countryExpandRatio);
|
||||
log.info("复购. maxIncome: {}, actualIncome: {}", maxIncome, actualIncome);
|
||||
log.info("复购. maxIncome: {}, gradeExpandRatio: {}; actualIncome: {}, countryExpandRatio: {}", maxIncome, gradeExpandRatio, actualIncome, countryExpandRatio);
|
||||
|
||||
// 获取等级对应的封顶值(累计复购扩展 + 当前等级对应订单的最大收益)
|
||||
BigDecimal expandIncome = ComputeUtil.computeAdd(ComputeUtil.computeAdd(cuMemberBonus.getRepurExpandIncome(), actualIncome), weekRepExpandIncome);
|
||||
|
|
|
@ -236,7 +236,13 @@ public class BonusSettleServiceImpl implements IBonusSettleService {
|
|||
// 计算领导奖
|
||||
Map<Long, SaOrderExt> saOrderExtMap = new HashMap<>(1);
|
||||
saOrderExtMap.put(saOrderExt.getPkId(), saOrderExt);
|
||||
List<CuMemberBonusCoach> cuMemberBonusCoachList = bonusSettleFirstPurchaseHandle.calculateCoachBonusOne(cuMemberSettleExtMap, settleTableName, settleDate, bonusConfigDTO, cuMemberBonusExpandList, period, cuMemberBonusMap, saOrderExtMap, cuAwardsControlMap, riskControlMap, awardsList);
|
||||
|
||||
// 领导奖现在首购、复购都有,此处需要传入参数区分
|
||||
boolean firstFlag = EOrderType.SPECIAL_REGISTER_ORDER.getValue() == saOrderExt.getOrderType()
|
||||
|| EOrderType.SPECIAL_UPGRADE_ORDER.getValue() == saOrderExt.getOrderType();
|
||||
// 领导奖处理
|
||||
List<CuMemberBonusCoach> cuMemberBonusCoachList = bonusSettleFirstPurchaseHandle.calculateCoachBonusOne(cuMemberSettleExtMap, settleTableName, settleDate, bonusConfigDTO, cuMemberBonusExpandList, period, cuMemberBonusMap, saOrderExtMap, cuAwardsControlMap, riskControlMap, awardsList, firstFlag);
|
||||
|
||||
// 计算报单服务费
|
||||
CuMemberBonusDetail cuMemberBonusDetail = bonusSettleFirstPurchaseHandle.calculateServiceBonusOne(settleDate, cuMemberAssessMap, cuMemberSettleExtMap, bonusConfigDTO, period, cuMemberBonusMap, saOrderExt);
|
||||
// 复购券
|
||||
|
@ -248,9 +254,11 @@ public class BonusSettleServiceImpl implements IBonusSettleService {
|
|||
cuMemberBonusExpandList.forEach(cuMemberBonusExpand ->
|
||||
cuMemberBonusExpand.setPkBonus(cuMemberBonusMap.get(cuMemberBonusExpand.getPkBonus()).getPkId()));
|
||||
iCuMemberBonusExpandService.batchInsertCuMemberBonusExpand(cuMemberBonusExpandList, memberIdSet);
|
||||
|
||||
cuMemberBonusCoachList.forEach(cuMemberBonusCoach ->
|
||||
cuMemberBonusCoach.setPkBonus(cuMemberBonusMap.get(cuMemberBonusCoach.getPkBonus()).getPkId()));
|
||||
iCuMemberBonusCoachService.batchInsertCuMemberBonusCoach(cuMemberBonusCoachList, memberIdSet);
|
||||
|
||||
List<CuMemberBonusDetail> cuMemberBonusDetailList = new ArrayList<>();
|
||||
if (cuMemberBonusDetail != null) {
|
||||
cuMemberBonusDetailList.add(cuMemberBonusDetail);
|
||||
|
@ -678,7 +686,7 @@ public class BonusSettleServiceImpl implements IBonusSettleService {
|
|||
cuBonusExpandExtList.forEach(cuBonusExpandExt -> cuBonusExpandExtMap.put(cuBonusExpandExt.getPkMember(), cuBonusExpandExt));
|
||||
if (firPurchaseOrderList.size() > 0) {
|
||||
calculateFirPurchaseOrder(riskControlMap, cuMemberSettleExtMap, currentSettleTableName, settleDate, systemConfigMap, bonusConfigDTO,
|
||||
firPurchaseOrderList, period, yesterdayPeriod, weekMemberBonusMap, cuMemberBonusMap, recordDetailVO, awardsMap, awardsList, cuAwardsControlMap, cuBonusExpandExtMap);
|
||||
firPurchaseOrderList, period, weekMemberBonusMap, cuMemberBonusMap, recordDetailVO, awardsMap, awardsList, cuAwardsControlMap, cuBonusExpandExtMap);
|
||||
}
|
||||
List<CuMemberRepeatBonus> cuMemberBonusList = new ArrayList<>();
|
||||
for (CuMemberBonus cuMemberBonus : cuMemberBonusMap.values()) {
|
||||
|
@ -827,12 +835,12 @@ public class BonusSettleServiceImpl implements IBonusSettleService {
|
|||
// 计算复购
|
||||
if (repurchaseOrderList.size() > 0) {
|
||||
leXueRangeParam = calculatePurchaseOrder(riskControlMap, cuMemberSettleExtMap, currentSettleTableName, settleDate, systemConfigMap, bonusConfigDTO,
|
||||
repurchaseOrderList, period, yesterdayPeriod, weekMemberBonusMap, cuMemberBonusMap, recordDetailVO, awardsMap, cuAwardsControlMap, cuBonusExpandExtMap, rangeDtoMap);
|
||||
repurchaseOrderList, period, weekMemberBonusMap, cuMemberBonusMap, recordDetailVO, awardsMap, awardsList, cuAwardsControlMap, cuBonusExpandExtMap, rangeDtoMap);
|
||||
}
|
||||
// 计算首购
|
||||
if (firPurchaseOrderList.size() > 0) {
|
||||
calculateFirPurchaseOrder(riskControlMap, cuMemberSettleExtMap, currentSettleTableName, settleDate, systemConfigMap, bonusConfigDTO,
|
||||
firPurchaseOrderList, period, yesterdayPeriod, weekMemberBonusMap, cuMemberBonusMap, recordDetailVO, awardsMap, awardsList, cuAwardsControlMap, cuBonusExpandExtMap);
|
||||
firPurchaseOrderList, period, weekMemberBonusMap, cuMemberBonusMap, recordDetailVO, awardsMap, awardsList, cuAwardsControlMap, cuBonusExpandExtMap);
|
||||
}
|
||||
// 计算商城业绩
|
||||
if (mallOrderList.size() > 0) {
|
||||
|
@ -870,9 +878,6 @@ public class BonusSettleServiceImpl implements IBonusSettleService {
|
|||
*
|
||||
* @param cuMemberBonusMap 奖金主表
|
||||
* @param bonusRecordDetailVO 奖金明细表
|
||||
* @return: void
|
||||
* @Author: sui q
|
||||
* @Date: 2022/12/13 11:52
|
||||
*/
|
||||
void insertCuMemberBonus(String settleDate, Integer period, Map<Long, CuMemberBonus> cuMemberBonusMap, BonusRecordDetailVO bonusRecordDetailVO) {
|
||||
// 删除 直推收益明细表
|
||||
|
@ -885,9 +890,9 @@ public class BonusSettleServiceImpl implements IBonusSettleService {
|
|||
iCuMemberBonusDetailService.deleteCuMemberBonusDetail(period);
|
||||
// 删除 奖金收益明细表(复购极差)
|
||||
iCuMemberBonusRangeService.deleteCuMemberBonusRange(period);
|
||||
// TODO new 删除拓展收益延缓主表
|
||||
// new 删除拓展收益延缓主表
|
||||
iCuMemberBonusDelayService.deleteCuMemberBonusDelay(period);
|
||||
// TODO new 删除拓展收益延缓明细表
|
||||
// new 删除拓展收益延缓明细表
|
||||
iCuMemberBonusDelayDetailService.deleteCuMemberBonusDelayDetail(period);
|
||||
// 删除 会员奖金汇总表
|
||||
iCuMemberBonusService.deleteCuMemberBonus(period);
|
||||
|
@ -979,14 +984,12 @@ public class BonusSettleServiceImpl implements IBonusSettleService {
|
|||
}
|
||||
|
||||
/**
|
||||
* 根据订单类型封装为不同订单列表
|
||||
*
|
||||
* @param firPurchaseOrderList 首购
|
||||
* @param repurchaseOrderList 复购
|
||||
* @param mallOrderList 商城
|
||||
* @param saOrderExt 来源订单
|
||||
* @Description: 根据订单类型封装为不同订单列表
|
||||
* @return: void
|
||||
* @Author: sui q
|
||||
* @Date: 2023/2/13 15:08
|
||||
*/
|
||||
private void packageSaOrderListByType(List<SaOrderExt> firPurchaseOrderList, List<SaOrderExt> repurchaseOrderList,
|
||||
List<SaOrderExt> mallOrderList, SaOrderExt saOrderExt) {
|
||||
|
@ -1018,7 +1021,7 @@ public class BonusSettleServiceImpl implements IBonusSettleService {
|
|||
* @param firPurchaseOrderList 首购订单
|
||||
*/
|
||||
private void calculateFirPurchaseOrder(Map<Long, CuMemberRiskControl> riskControlMap, Map<Long, CuMemberSettleExt> cuMemberSettleExtMap, String settleTableName, String settleDate,
|
||||
Map<String, String> systemConfigMap, BonusConfigDTO bonusConfigDTO, List<SaOrderExt> firPurchaseOrderList, Integer period, Integer yesterdayPeriod,
|
||||
Map<String, String> systemConfigMap, BonusConfigDTO bonusConfigDTO, List<SaOrderExt> firPurchaseOrderList, Integer period,
|
||||
Map<Long, CuMemberBonus> weekMemberBonusMap, Map<Long, CuMemberBonus> cuMemberBonusMap, BonusRecordDetailVO bonusRecordDetailVO,
|
||||
Map<String, BdAwards> awardsMap, List<BdAwards> awardsList, Map<Long, CuAwardsControl> cuAwardsControlMap, Map<Long, CuBonusExpandExt> cuBonusExpandExtMap) {
|
||||
// 获得国家是三单循环还是四单循环
|
||||
|
@ -1031,7 +1034,7 @@ public class BonusSettleServiceImpl implements IBonusSettleService {
|
|||
|
||||
//****************************计算量奖(拓展收益)*****************************/
|
||||
List<CuMemberBonusExpand> cuMemberBonusExpandList = bonusSettleFirstPurchaseHandle.calculateExpandBonus(cuMemberSettleExtMap, settleDate, settleTableName, bonusConfigDTO, systemConfigMap,
|
||||
firPurchaseOrderList, period, yesterdayPeriod, weekMemberBonusMap, cuMemberBonusMap, riskControlMap, cuBonusExpandExtMap);
|
||||
firPurchaseOrderList, period, weekMemberBonusMap, cuMemberBonusMap, riskControlMap, cuBonusExpandExtMap);
|
||||
if (cuMemberBonusExpandList.size() > 0) {
|
||||
if (null == bonusRecordDetailVO.getCuMemberBonusExpandList()) {
|
||||
bonusRecordDetailVO.setCuMemberBonusExpandList(cuMemberBonusExpandList);
|
||||
|
@ -1043,10 +1046,10 @@ public class BonusSettleServiceImpl implements IBonusSettleService {
|
|||
bonusSettlePurchaseHandle.handleFirExpandDelay(cuMemberBonusExpandList, period, bonusRecordDetailVO);
|
||||
}
|
||||
|
||||
//*********************************计算领导奖(辅导收益)************************/
|
||||
//*********************************计算领导奖(首购辅导收益)************************/
|
||||
// 判断是否有量奖,有量奖有辅导奖
|
||||
List<CuMemberBonusCoach> cuMemberBonusCoachList = bonusSettleFirstPurchaseHandle.calculateCoachBonus(cuMemberSettleExtMap, settleTableName, settleDate, bonusConfigDTO, firPurchaseOrderList,
|
||||
cuMemberBonusExpandList, period, cuMemberBonusMap, cuAwardsControlMap, riskControlMap, awardsList);
|
||||
cuMemberBonusExpandList, period, cuMemberBonusMap, cuAwardsControlMap, riskControlMap, awardsList, true);
|
||||
bonusRecordDetailVO.setCuMemberBonusCoachList(cuMemberBonusCoachList);
|
||||
|
||||
//*********************************计算服务奖************************/
|
||||
|
@ -1062,10 +1065,10 @@ public class BonusSettleServiceImpl implements IBonusSettleService {
|
|||
MemberBonusDetailCalVO memberBonusDetailCalVO = calculateOrderRatio(memberBonusDetailCalVoMap, cuMemberBonusExpand);
|
||||
memberBonusDetailCalVO.setExpandIncome(ComputeUtil.computeAdd(memberBonusDetailCalVO.getExpandIncome(), cuMemberBonusExpand.getRealIncome()));
|
||||
});
|
||||
// cuMemberBonusCoachList.forEach(cuMemberBonusCoach -> {
|
||||
// MemberBonusDetailCalVO memberBonusDetailCalVO = calculateOrderRatio(memberBonusDetailCalVoMap, cuMemberBonusCoach);
|
||||
// memberBonusDetailCalVO.setCoachIncome(ComputeUtil.computeAdd(memberBonusDetailCalVO.getCoachIncome(), cuMemberBonusCoach.getRealIncome()));
|
||||
// });
|
||||
cuMemberBonusCoachList.forEach(cuMemberBonusCoach -> {
|
||||
MemberBonusDetailCalVO memberBonusDetailCalVO = calculateOrderRatio(memberBonusDetailCalVoMap, cuMemberBonusCoach);
|
||||
memberBonusDetailCalVO.setCoachIncome(ComputeUtil.computeAdd(memberBonusDetailCalVO.getCoachIncome(), cuMemberBonusCoach.getRealIncome()));
|
||||
});
|
||||
cuMemberBonusDetailList.forEach(cuMemberBonusDetail -> {
|
||||
MemberBonusDetailCalVO memberBonusDetailCalVO = calculateOrderRatio(memberBonusDetailCalVoMap, cuMemberBonusDetail);
|
||||
memberBonusDetailCalVO.setServiceIncome(ComputeUtil.computeAdd(memberBonusDetailCalVO.getServiceIncome(), cuMemberBonusDetail.getRealIncome()));
|
||||
|
@ -1088,12 +1091,12 @@ public class BonusSettleServiceImpl implements IBonusSettleService {
|
|||
cuMemberBonusExpand.setOrderDialRatio(ComputeUtil.computeDivide(memberBonusDetailCalVO.getRealIncome(), saOrderExt.getOrderAmount()));
|
||||
});
|
||||
// 辅导收益
|
||||
// cuMemberBonusCoachList.forEach(cuMemberBonusCoach -> {
|
||||
// MemberBonusDetailCalVO memberBonusDetailCalVO = memberBonusDetailCalVoMap.get(cuMemberBonusCoach.getPkOrder());
|
||||
// SaOrderExt saOrderExt = saOrderExtMap.get(memberBonusDetailCalVO.getPkOrder());
|
||||
// cuMemberBonusCoach.setIncomeDialRatio(ComputeUtil.computeDivide(memberBonusDetailCalVO.getCoachIncome(), memberBonusDetailCalVO.getRealIncome()));
|
||||
// cuMemberBonusCoach.setOrderDialRatio(ComputeUtil.computeDivide(memberBonusDetailCalVO.getRealIncome(), saOrderExt.getOrderAmount()));
|
||||
// });
|
||||
cuMemberBonusCoachList.forEach(cuMemberBonusCoach -> {
|
||||
MemberBonusDetailCalVO memberBonusDetailCalVO = memberBonusDetailCalVoMap.get(cuMemberBonusCoach.getPkOrder());
|
||||
SaOrderExt saOrderExt = saOrderExtMap.get(memberBonusDetailCalVO.getPkOrder());
|
||||
cuMemberBonusCoach.setIncomeDialRatio(ComputeUtil.computeDivide(memberBonusDetailCalVO.getCoachIncome(), memberBonusDetailCalVO.getRealIncome()));
|
||||
cuMemberBonusCoach.setOrderDialRatio(ComputeUtil.computeDivide(memberBonusDetailCalVO.getRealIncome(), saOrderExt.getOrderAmount()));
|
||||
});
|
||||
// 报单服务费
|
||||
cuMemberBonusDetailList.forEach(cuMemberBonusDetail -> {
|
||||
MemberBonusDetailCalVO memberBonusDetailCalVO = memberBonusDetailCalVoMap.get(cuMemberBonusDetail.getPkOrder());
|
||||
|
@ -1140,9 +1143,9 @@ public class BonusSettleServiceImpl implements IBonusSettleService {
|
|||
* @param rangeDtoMap 乐学奖金使用的汇率map
|
||||
*/
|
||||
private LeXueRangeParam calculatePurchaseOrder(Map<Long, CuMemberRiskControl> riskControlMap, Map<Long, CuMemberSettleExt> cuMemberSettleExtMap, String settleTableName, String settleDate,
|
||||
Map<String, String> systemConfigMap, BonusConfigDTO bonusConfigDTO, List<SaOrderExt> purchaseOrderList, Integer period, Integer yesterdayPeriod,
|
||||
Map<String, String> systemConfigMap, BonusConfigDTO bonusConfigDTO, List<SaOrderExt> purchaseOrderList, Integer period,
|
||||
Map<Long, CuMemberBonus> weekMemberBonusMap, Map<Long, CuMemberBonus> cuMemberBonusMap, BonusRecordDetailVO bonusRecordDetailVO,
|
||||
Map<String, BdAwards> awardsMap, Map<Long, CuAwardsControl> cuAwardsControlMap, Map<Long, CuBonusExpandExt> cuBonusExpandExtMap, Map<String, RangeDTO> rangeDtoMap) {
|
||||
Map<String, BdAwards> awardsMap, List<BdAwards> awardsList, Map<Long, CuAwardsControl> cuAwardsControlMap, Map<Long, CuBonusExpandExt> cuBonusExpandExtMap, Map<String, RangeDTO> rangeDtoMap) {
|
||||
//****************************复购直推*****************************
|
||||
// 查找10代血缘,验证复购考核,考核通过的给与奖金 紧缩
|
||||
// List<CuMemberBonusPush> cuMemberBonusPushList = bonusSettlePurchaseHandle.calculateRepurchasePushBonus(cuMemberSettleExtMap, settleTableName, settleDate, bonusConfigDTO, purchaseOrderList, period, cuMemberBonusMap);
|
||||
|
@ -1155,7 +1158,7 @@ public class BonusSettleServiceImpl implements IBonusSettleService {
|
|||
// }
|
||||
//****************************计算量奖(拓展收益)*****************************/
|
||||
List<CuMemberBonusExpand> cuMemberBonusExpandList = bonusSettlePurchaseHandle.calculateRepurchaseExpandBonus(riskControlMap, cuMemberSettleExtMap, settleTableName, settleDate,
|
||||
bonusConfigDTO, systemConfigMap, purchaseOrderList, period, yesterdayPeriod, weekMemberBonusMap, cuMemberBonusMap, cuBonusExpandExtMap);
|
||||
bonusConfigDTO, systemConfigMap, purchaseOrderList, period, weekMemberBonusMap, cuMemberBonusMap, cuBonusExpandExtMap);
|
||||
if (cuMemberBonusExpandList.size() > 0) {
|
||||
if (null == bonusRecordDetailVO.getCuMemberBonusExpandList()) {
|
||||
bonusRecordDetailVO.setCuMemberBonusExpandList(cuMemberBonusExpandList);
|
||||
|
@ -1167,6 +1170,12 @@ public class BonusSettleServiceImpl implements IBonusSettleService {
|
|||
bonusSettlePurchaseHandle.handleRepExpandDelay(cuMemberBonusExpandList, period, bonusRecordDetailVO);
|
||||
}
|
||||
|
||||
//*********************************计算领导奖(复购辅导收益)************************/
|
||||
// 判断是否有量奖,有量奖有辅导奖
|
||||
List<CuMemberBonusCoach> cuMemberBonusCoachList = bonusSettleFirstPurchaseHandle.calculateCoachBonus(cuMemberSettleExtMap, settleTableName, settleDate, bonusConfigDTO, purchaseOrderList,
|
||||
cuMemberBonusExpandList, period, cuMemberBonusMap, cuAwardsControlMap, riskControlMap, awardsList, false);
|
||||
bonusRecordDetailVO.setCuMemberBonusCoachList(cuMemberBonusCoachList);
|
||||
|
||||
//****************************乐学极差(复购)*****************************/
|
||||
LeXueRangeParam leXueRangeParam = new LeXueRangeParam();
|
||||
List<CuMemberBonusRange> cuMemberBonusRangeList = bonusSettlePurchaseHandle.calculateRepurchaseRangeBonus(cuMemberSettleExtMap, settleTableName, settleDate, rangeDtoMap, awardsMap,
|
||||
|
@ -1178,6 +1187,10 @@ public class BonusSettleServiceImpl implements IBonusSettleService {
|
|||
MemberBonusDetailCalVO memberBonusDetailCalVO = calculateOrderRatio(memberBonusDetailCalVoMap, cuMemberBonusExpand);
|
||||
memberBonusDetailCalVO.setRepExpandIncome(ComputeUtil.computeAdd(memberBonusDetailCalVO.getRepExpandIncome(), cuMemberBonusExpand.getRealIncome()));
|
||||
});
|
||||
cuMemberBonusCoachList.forEach(cuMemberBonusCoach -> {
|
||||
MemberBonusDetailCalVO memberBonusDetailCalVO = calculateOrderRatio(memberBonusDetailCalVoMap, cuMemberBonusCoach);
|
||||
memberBonusDetailCalVO.setRepCoachIncome(ComputeUtil.computeAdd(memberBonusDetailCalVO.getRepCoachIncome(), cuMemberBonusCoach.getRealIncome()));
|
||||
});
|
||||
cuMemberBonusRangeList.forEach(cuMemberBonusRange -> {
|
||||
MemberBonusDetailCalVO memberBonusDetailCalVO = calculateOrderRatio(memberBonusDetailCalVoMap, cuMemberBonusRange);
|
||||
memberBonusDetailCalVO.setRepRangeIncome(ComputeUtil.computeAdd(memberBonusDetailCalVO.getRepRangeIncome(), cuMemberBonusRange.getRealIncome()));
|
||||
|
@ -1193,6 +1206,13 @@ public class BonusSettleServiceImpl implements IBonusSettleService {
|
|||
cuMemberBonusExpand.setIncomeDialRatio(ComputeUtil.computeDivide(memberBonusDetailCalVO.getRepExpandIncome(), memberBonusDetailCalVO.getRealIncome()));
|
||||
cuMemberBonusExpand.setOrderDialRatio(ComputeUtil.computeDivide(memberBonusDetailCalVO.getRealIncome(), saOrderExt.getOrderAmount()));
|
||||
});
|
||||
// 辅导收益
|
||||
cuMemberBonusCoachList.forEach(cuMemberBonusCoach -> {
|
||||
MemberBonusDetailCalVO memberBonusDetailCalVO = memberBonusDetailCalVoMap.get(cuMemberBonusCoach.getPkOrder());
|
||||
SaOrderExt saOrderExt = saOrderExtMap.get(memberBonusDetailCalVO.getPkOrder());
|
||||
cuMemberBonusCoach.setIncomeDialRatio(ComputeUtil.computeDivide(memberBonusDetailCalVO.getRepCoachIncome(), memberBonusDetailCalVO.getRealIncome()));
|
||||
cuMemberBonusCoach.setOrderDialRatio(ComputeUtil.computeDivide(memberBonusDetailCalVO.getRealIncome(), saOrderExt.getOrderAmount()));
|
||||
});
|
||||
// 复购极差
|
||||
cuMemberBonusRangeList.forEach(cuMemberBonusRange -> {
|
||||
MemberBonusDetailCalVO memberBonusDetailCalVO = memberBonusDetailCalVoMap.get(cuMemberBonusRange.getPkOrder());
|
||||
|
@ -1324,6 +1344,7 @@ public class BonusSettleServiceImpl implements IBonusSettleService {
|
|||
.coachIncome(BigDecimal.ZERO)
|
||||
.serviceIncome(BigDecimal.ZERO)
|
||||
.repExpandIncome(BigDecimal.ZERO)
|
||||
.repCoachIncome(BigDecimal.ZERO)
|
||||
.repRangeIncome(BigDecimal.ZERO)
|
||||
.hiFunIncome(BigDecimal.ZERO)
|
||||
.haiFunIncome(BigDecimal.ZERO)
|
||||
|
|
|
@ -13,9 +13,7 @@ import java.util.List;
|
|||
import java.util.Set;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 会员奖金-辅导收益明细表 服务实现类
|
||||
* </p>
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2022-11-15
|
||||
|
@ -37,20 +35,19 @@ public class CuMemberBonusCoachServiceImpl extends ServiceImpl<CuMemberBonusCoac
|
|||
|
||||
@Override
|
||||
public void batchInsertCuMemberBonusCoach(List<CuMemberBonusCoach> cuMemberBonusCoachList, Set<Long> memberIdSet) {
|
||||
if(cuMemberBonusCoachList.size() == 0){
|
||||
if (cuMemberBonusCoachList.size() == 0) {
|
||||
return;
|
||||
}
|
||||
List<CuMemberBonusCoach> cuMemberBonusCoaches = new ArrayList<>();
|
||||
for (CuMemberBonusCoach cuMemberBonusCoach : cuMemberBonusCoachList) {
|
||||
if(memberIdSet.contains(cuMemberBonusCoach.getPkBonus())){
|
||||
if (memberIdSet.contains(cuMemberBonusCoach.getPkBonus())) {
|
||||
cuMemberBonusCoaches.add(cuMemberBonusCoach);
|
||||
}
|
||||
}
|
||||
if(cuMemberBonusCoaches.size()==0){
|
||||
if (cuMemberBonusCoaches.size() == 0) {
|
||||
return;
|
||||
}
|
||||
List<List<?>> lists = cuMemberBonusSettle.handleCutList(cuMemberBonusCoaches);
|
||||
lists.forEach(list ->
|
||||
baseMapper.batchInsertCuMemberBonusCoach(list));
|
||||
lists.forEach(list -> baseMapper.batchInsertCuMemberBonusCoach(list));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -592,8 +592,7 @@ public class CuMemberBonusServiceImpl extends ServiceImpl<CuMemberBonusMapper, C
|
|||
return;
|
||||
}
|
||||
List<List<?>> lists = cuMemberBonusSettle.handleCutList(cuMemberBonusList);
|
||||
lists.forEach(list ->
|
||||
baseMapper.batchInsertCuMemberBonus(list));
|
||||
lists.forEach(list -> baseMapper.batchInsertCuMemberBonus(list));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -618,15 +617,15 @@ public class CuMemberBonusServiceImpl extends ServiceImpl<CuMemberBonusMapper, C
|
|||
@Override
|
||||
public List<CuMemberBonus> queryCuMemberBonusByCondition(Integer pkCountry, Integer grantStatus, Integer startPeriod, Integer endPeriod) {
|
||||
QueryWrapper<CuMemberBonus> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.select("pk_member,pk_rate,pk_country,sum(direct_income) direct_income,sum(expand_income) expand_income,sum(expand_no_capping) expand_no_capping," +
|
||||
"sum(expand_capping) expand_capping,sum(coach_income) coach_income,sum(share_income) share_income," +
|
||||
"sum(service_income) service_income,sum(back_points) back_points,sum(service_spend) service_spend," +
|
||||
"sum(pur_real_subtotal) pur_real_subtotal,sum(repur_range_income) repur_range_income,sum(repur_expand_income) repur_expand_income," +
|
||||
"sum(repur_real_subtotal) repur_real_subtotal,sum(cloud_direct_income) cloud_direct_income,sum(cloud_pur_income) cloud_pur_income," +
|
||||
"sum(cloud_repur_income) cloud_repur_income,sum(cloud_real_subtotal) cloud_real_subtotal,sum(repur_coupon) repur_coupon," +
|
||||
"sum(REPUR_COUPON_SHARE) REPUR_COUPON_SHARE,sum(REPUR_COUPON_SUBTOTAL) REPUR_COUPON_SUBTOTAL," +
|
||||
"sum(global_points) global_points,sum(car_award_points) car_award_points,sum(hi_fun_income) hi_fun_income," +
|
||||
"sum(real_income_total) real_income_total");
|
||||
queryWrapper.select("pk_member, pk_rate, pk_country, sum(direct_income) direct_income, " +
|
||||
"sum(expand_income) expand_income, sum(expand_no_capping) expand_no_capping, sum(expand_capping) expand_capping, sum(coach_income) coach_income, " +
|
||||
"sum(share_income) share_income, sum(service_income) service_income, sum(back_points) back_points, sum(service_spend) service_spend, " +
|
||||
"sum(pur_real_subtotal) pur_real_subtotal, sum(repur_range_income) repur_range_income, sum(repur_expand_income) repur_expand_income, sum(repur_coach_income) repur_coach_income, " +
|
||||
"sum(repur_real_subtotal) repur_real_subtotal, sum(cloud_direct_income) cloud_direct_income, sum(cloud_pur_income) cloud_pur_income, " +
|
||||
"sum(cloud_repur_income) cloud_repur_income, sum(cloud_real_subtotal) cloud_real_subtotal, sum(repur_coupon) repur_coupon, " +
|
||||
"sum(REPUR_COUPON_SHARE) REPUR_COUPON_SHARE, sum(REPUR_COUPON_SUBTOTAL) REPUR_COUPON_SUBTOTAL, " +
|
||||
"sum(global_points) global_points, sum(car_award_points) car_award_points, sum(hi_fun_income) hi_fun_income, " +
|
||||
"sum(real_income_total) real_income_total ");
|
||||
queryWrapper.eq(SystemFieldConstants.PK_COUNTRY, pkCountry);
|
||||
queryWrapper.eq(MemberBonusFieldConstants.GRANT_STATUS, grantStatus);
|
||||
queryWrapper.eq(MemberBonusFieldConstants.INCOME_STATUS, ENormalDisable.NORMAL.getValue());
|
||||
|
|
|
@ -26,7 +26,7 @@ public class CuMemberBonusVO implements Serializable {
|
|||
"directIncome", "expandIncome", "expandNoCapping", "expandCapping",
|
||||
"coachIncome", "shareIncome", "serviceIncome", "cloudDirectIncome",
|
||||
"cloudPurIncome", "cloudRepurIncome", "repurPushIncome", "repurRangeIncome", "repurExpandIncome",
|
||||
"repurCoupon", "repurCouponShare", "backPoints", "serviceSpend",
|
||||
"repurCoachIncome", "repurCoupon", "repurCouponShare", "backPoints", "serviceSpend",
|
||||
"globalPoints", "carAwardPoints", "storeIncome", "hiFunIncome",
|
||||
"makerDirectIncome", "makerShareIncome", "makerRealSubtotal", "purRealSubtotal",
|
||||
"cloudRealSubtotal", "repurRealSubtotal", "repurCouponSubtotal", "realIncomeTotal"};
|
||||
|
@ -257,6 +257,17 @@ public class CuMemberBonusVO implements Serializable {
|
|||
@Excel(name = "复购拓展收益($)", scale = 2)
|
||||
private BigDecimal repurExpandIncome;
|
||||
|
||||
/**
|
||||
* 复购拓展收益
|
||||
*/
|
||||
@Excel(name = "复购拓展收益", scale = 2)
|
||||
private BigDecimal repurCoachIncomeOri;
|
||||
/**
|
||||
* 复购拓展收益
|
||||
*/
|
||||
@Excel(name = "复购拓展收益($)", scale = 2)
|
||||
private BigDecimal repurCoachIncome;
|
||||
|
||||
/**
|
||||
* 复购卷
|
||||
*/
|
||||
|
|
|
@ -80,6 +80,11 @@ public class MemberBonusDetailCalVO implements Serializable {
|
|||
*/
|
||||
private BigDecimal repExpandIncome;
|
||||
|
||||
/**
|
||||
* 复购辅导收益
|
||||
*/
|
||||
private BigDecimal repCoachIncome;
|
||||
|
||||
/**
|
||||
* 复购极差收益
|
||||
*/
|
||||
|
|
|
@ -1370,11 +1370,16 @@
|
|||
left join (
|
||||
select cmbd.pk_member, cmbd.after_grant_income
|
||||
from CU_MEMBER_BONUS_DELAY cmbd
|
||||
where exists (select 1
|
||||
from (select cmbd.pk_member, max(cmbd.period) period
|
||||
from cu_member_bonus_delay cmbd
|
||||
where cmbd.del_flag = 0
|
||||
and cmbd.period = #{yesterdayPeriod}
|
||||
group by cmbd.pk_member) t
|
||||
where t.pk_member = cmbd.pk_member
|
||||
and t.period = cmbd.period)
|
||||
) cmb
|
||||
on cmb.pk_member = a.pk_member
|
||||
order by a.pk_order,a.sort
|
||||
order by a.pk_order, a.sort
|
||||
</select>
|
||||
|
||||
<select id="batchQueryCuMemberSettleParent" resultMap="CuMemberSettleExt">
|
||||
|
@ -2317,7 +2322,7 @@
|
|||
nvl(t.b_sum_pv, 0) + nvl(t.rep_b_sum_pv, 0) - nvl(cms.b_sum_pv, 0) - nvl(cms.rep_b_sum_pv, 0) b_sum_pv
|
||||
from (
|
||||
select cms.*, ba.awards_value
|
||||
from (select cms.pk_member, cms.pk_awards
|
||||
from (select cms.pk_member, cms.a_sum_pv, cms.b_sum_pv, cms.rep_a_sum_pv, cms.rep_b_sum_pv, cms.pk_awards
|
||||
from ${settleTableName} cms
|
||||
where cms.pk_member in
|
||||
<foreach collection="pkMemberList" item="item" open="(" close=")" separator=",">
|
||||
|
|
|
@ -51,7 +51,6 @@
|
|||
<result column="SETTLE_COUNTRY" property="settleCountry"/>
|
||||
<result column="PERIOD" property="period"/>
|
||||
<result column="OUT_EXCHANGE_RATE" property="outExchangeRate"/>
|
||||
|
||||
<result column="service_code" property="serviceCode"/>
|
||||
<result column="pk_vertex" property="pkVertex"/>
|
||||
<result column="nick_name" property="nickName"/>
|
||||
|
@ -60,23 +59,28 @@
|
|||
<insert id="batchInsertCuMemberBonusCoach">
|
||||
insert ALL
|
||||
<foreach item="item" index="index" collection="cuMemberBonusCoachList" separator=" ">
|
||||
into cu_member_bonus_coach(pk_bonus,pk_order,pk_bonus_items,income_status,
|
||||
cal_type,cal_achieve,cal_value,pretax_income,
|
||||
income_tax,real_income,current_generation,coach_generation,coach_no_capping,
|
||||
coach_capping,coach_normal_half,coach_normal_real,remark,
|
||||
income_ratio,income_dial_ratio,order_dial_ratio,pk_country,pk_creator)
|
||||
values
|
||||
(
|
||||
#{item.pkBonus},#{item.pkOrder},#{item.pkBonusItems},#{item.incomeStatus},
|
||||
#{item.calType},#{item.calAchieve},#{item.calValue},#{item.pretaxIncome},
|
||||
#{item.incomeTax},#{item.realIncome},#{item.currentGeneration},#{item.coachGeneration},
|
||||
#{item.coachNoCapping},#{item.coachCapping},#{item.coachNormalHalf},#{item.coachNormalReal},
|
||||
#{item.remark},#{item.incomeRatio},#{item.incomeDialRatio},#{item.orderDialRatio},
|
||||
#{item.pkCountry},#{item.pkCreator}
|
||||
into cu_member_bonus_coach (
|
||||
pk_bonus, pk_order, pk_bonus_items, income_status,
|
||||
cal_type, cal_achieve, cal_value,
|
||||
pretax_income, income_tax, real_income, current_generation,
|
||||
coach_generation, coach_no_capping, coach_capping,
|
||||
coach_normal_half, coach_normal_real, remark,
|
||||
income_ratio, income_dial_ratio, order_dial_ratio,
|
||||
pk_country, pk_creator
|
||||
)
|
||||
values (
|
||||
#{item.pkBonus}, #{item.pkOrder}, #{item.pkBonusItems}, #{item.incomeStatus},
|
||||
#{item.calType}, #{item.calAchieve}, #{item.calValue},
|
||||
#{item.pretaxIncome}, #{item.incomeTax}, #{item.realIncome}, #{item.currentGeneration},
|
||||
#{item.coachGeneration}, #{item.coachNoCapping}, #{item.coachCapping},
|
||||
#{item.coachNormalHalf},#{item.coachNormalReal}, #{item.remark},
|
||||
#{item.incomeRatio}, #{item.incomeDialRatio}, #{item.orderDialRatio},
|
||||
#{item.pkCountry}, #{item.pkCreator}
|
||||
)
|
||||
</foreach>
|
||||
SELECT 1 FROM dual
|
||||
</insert>
|
||||
|
||||
<delete id="deleteCuMemberBonusCoach">
|
||||
delete
|
||||
from CU_MEMBER_BONUS_COACH
|
||||
|
@ -89,7 +93,8 @@
|
|||
|
||||
<select id="queryMemberBonusCoachByBonusItems" resultMap="CuMemberBonusCoach">
|
||||
select b.period,cp.settle_date,so.order_code,so.order_type,bt.short_name source_country_name,
|
||||
cu.member_code source_member_code,cu.member_name source_member_name,so.pk_rate,so.pk_country pk_source_country,bc.out_exchange_rate,so.order_amount,
|
||||
cu.member_code source_member_code,cu.member_name source_member_name,so.pk_rate,so.pk_country
|
||||
pk_source_country,bc.out_exchange_rate,so.order_amount,
|
||||
so.order_achieve,b.pk_country,b.pk_bonus_items,b.pretax_income,b.income_tax,b.real_income,b.income_status,
|
||||
tar.member_code,tar.member_name,bg.pk_transaction pk_settle_grade,ba.pk_transaction pk_awards,bv.vertex_name,ct.team_name,
|
||||
b.remark,b.income_ratio,b.income_dial_ratio,b.order_dial_ratio,b.current_generation,b.coach_generation,
|
||||
|
@ -99,7 +104,8 @@
|
|||
cu.nick_name
|
||||
from sa_order so
|
||||
inner join (
|
||||
select cb.pk_member,cc.pk_order,cb.period,cb.pk_country,cc.pk_bonus_items,cc.income_status,cc.CAL_ACHIEVE,cc.pretax_income,cc.income_tax,cc.real_income,
|
||||
select
|
||||
cb.pk_member,cc.pk_order,cb.period,cb.pk_country,cc.pk_bonus_items,cc.income_status,cc.CAL_ACHIEVE,cc.pretax_income,cc.income_tax,cc.real_income,
|
||||
cc.remark,cc.income_ratio,cc.income_dial_ratio,cc.order_dial_ratio,cc.current_generation,cc.coach_generation,cc.coach_no_capping,
|
||||
cc.coach_capping,cc.coach_normal_half,cc.coach_normal_real from
|
||||
cu_member_bonus cb
|
||||
|
@ -153,6 +159,7 @@
|
|||
</where>
|
||||
order by b.period,b.pk_bonus_items,b.real_income desc
|
||||
</select>
|
||||
|
||||
<select id="queryMemberBonusCoachByBonusItemsForServer" resultMap="CuMemberBonusCoach">
|
||||
select b.period,cp.settle_date,so.order_code,so.order_type,bt.short_name source_country_name,
|
||||
cu.member_code source_member_code,cu.member_name source_member_name,so.pk_rate,bc.out_exchange_rate,so.order_amount,
|
||||
|
@ -161,7 +168,8 @@
|
|||
b.remark,b.income_ratio,b.income_dial_ratio,b.order_dial_ratio,b.current_generation,b.coach_generation,
|
||||
b.coach_no_capping,b.coach_capping,b.coach_normal_half,b.coach_normal_real,bct.short_name settle_country from sa_order so
|
||||
inner join (
|
||||
select cb.pk_member,cc.pk_order,cb.period,cb.pk_country,cc.pk_bonus_items,cc.income_status,cc.CAL_ACHIEVE,cc.pretax_income,cc.income_tax,cc.real_income,
|
||||
select
|
||||
cb.pk_member,cc.pk_order,cb.period,cb.pk_country,cc.pk_bonus_items,cc.income_status,cc.CAL_ACHIEVE,cc.pretax_income,cc.income_tax,cc.real_income,
|
||||
cc.remark,cc.income_ratio,cc.income_dial_ratio,cc.order_dial_ratio,cc.current_generation,cc.coach_generation,
|
||||
cc.coach_no_capping,cc.coach_capping,cc.coach_normal_half,cc.coach_normal_real from cu_member_bonus cb
|
||||
inner join cu_member_bonus_coach cc
|
||||
|
|
|
@ -28,6 +28,7 @@
|
|||
<result column="REPUR_PUSH_INCOME" property="repurPushIncome"/>
|
||||
<result column="REPUR_RANGE_INCOME" property="repurRangeIncome"/>
|
||||
<result column="REPUR_EXPAND_INCOME" property="repurExpandIncome"/>
|
||||
<result column="REPUR_COACH_INCOME" property="repurCoachIncome"/>
|
||||
<result column="REPUR_REAL_SUBTOTAL" property="repurRealSubtotal"/>
|
||||
<result column="CLOUD_DIRECT_INCOME" property="cloudDirectIncome"/>
|
||||
<result column="CLOUD_PUR_INCOME" property="cloudPurIncome"/>
|
||||
|
@ -62,7 +63,6 @@
|
|||
<result column="PK_VERTEX" property="pkVertex"/>
|
||||
<result column="SERVICE_CODE" property="serviceCode"/>
|
||||
<result column="NICK_NAME" property="nickName"/>
|
||||
|
||||
</resultMap>
|
||||
|
||||
<update id="updateCuMemberBonusStatus">
|
||||
|
@ -83,56 +83,58 @@
|
|||
and grant_status <= 2
|
||||
</delete>
|
||||
|
||||
<!-- 批量插入会员奖金主表 -->
|
||||
<insert id="batchInsertCuMemberBonus">
|
||||
merge into cu_member_bonus cb
|
||||
using(
|
||||
select pk_id,pk_member,period,pk_rate,direct_income,expand_income,expand_no_capping,
|
||||
expand_capping,coach_income,share_income,service_income,back_points,service_spend,
|
||||
pur_real_subtotal,repur_push_income,repur_range_income,repur_expand_income,repur_real_subtotal,
|
||||
cloud_direct_income,cloud_pur_income,cloud_repur_income,cloud_real_subtotal,
|
||||
repur_coupon,repur_coupon_share,repur_coupon_subtotal,global_points,
|
||||
car_award_points,store_income,hi_fun_income,hai_fun_income,
|
||||
maker_direct_income,maker_share_income,maker_real_subtotal,real_income_total,
|
||||
pk_country,pk_creator,grant_status,income_status from(
|
||||
select pk_id, pk_member, period, pk_rate, direct_income, expand_income, expand_no_capping,
|
||||
expand_capping, coach_income, share_income, service_income, back_points, service_spend,
|
||||
pur_real_subtotal, repur_push_income, repur_range_income, repur_expand_income, repur_coach_income, repur_real_subtotal,
|
||||
cloud_direct_income, cloud_pur_income, cloud_repur_income, cloud_real_subtotal,
|
||||
repur_coupon, repur_coupon_share, repur_coupon_subtotal, global_points,
|
||||
car_award_points, store_income, hi_fun_income, hai_fun_income,
|
||||
maker_direct_income, maker_share_income, maker_real_subtotal, real_income_total,
|
||||
pk_country, pk_creator, grant_status, income_status
|
||||
from (
|
||||
<foreach item="item" index="index" collection="cuMemberBonusList" separator=" union ">
|
||||
select #{item.pkId} pk_id,#{item.pkMember} pk_member,#{item.period} period,#{item.pkRate,jdbcType=INTEGER}
|
||||
pk_rate,
|
||||
#{item.directIncome} direct_income,#{item.expandIncome} expand_income,#{item.expandNoCapping}
|
||||
expand_no_capping,
|
||||
#{item.expandCapping} expand_capping,#{item.coachIncome} coach_income,#{item.shareIncome} share_income,
|
||||
#{item.serviceIncome} service_income,#{item.backPoints} back_points,#{item.serviceSpend} service_spend,
|
||||
#{item.purRealSubtotal} pur_real_subtotal,#{item.repurPushIncome} repur_push_income,#{item.repurRangeIncome}
|
||||
repur_range_income,
|
||||
#{item.repurExpandIncome} repur_expand_income,#{item.repurRealSubtotal} repur_real_subtotal,
|
||||
#{item.cloudDirectIncome} cloud_direct_income,#{item.cloudPurIncome} cloud_pur_income,
|
||||
#{item.cloudRepurIncome} cloud_repur_income,#{item.cloudRealSubtotal} cloud_real_subtotal,
|
||||
#{item.repurCoupon} repur_coupon,#{item.repurCouponShare} repur_coupon_share,
|
||||
#{item.repurCouponSubtotal} repur_coupon_subtotal,#{item.globalPoints} global_points,
|
||||
#{item.carAwardPoints} car_award_points,#{item.storeIncome} store_income,#{item.hiFunIncome} hi_fun_income,
|
||||
#{item.haiFunIncome} hai_fun_income,#{item.makerDirectIncome} maker_direct_income,
|
||||
#{item.makerShareIncome} maker_share_income,#{item.makerRealSubtotal}
|
||||
maker_real_subtotal,#{item.realIncomeTotal} real_income_total,
|
||||
#{item.pkCountry} pk_country,#{item.pkCreator} pk_creator,#{item.grantStatus}
|
||||
grant_status,#{item.incomeStatus} income_status from dual
|
||||
</foreach>) )b
|
||||
on (cb.pk_member=b.pk_member and cb.period=b.period)
|
||||
select
|
||||
#{item.pkId} pk_id, #{item.pkMember} pk_member, #{item.period} period, #{item.pkRate,jdbcType=INTEGER} pk_rate,
|
||||
#{item.directIncome} direct_income, #{item.expandIncome} expand_income, #{item.expandNoCapping} expand_no_capping,
|
||||
#{item.expandCapping} expand_capping, #{item.coachIncome} coach_income, #{item.shareIncome} share_income,
|
||||
#{item.serviceIncome} service_income, #{item.backPoints} back_points, #{item.serviceSpend} service_spend,
|
||||
#{item.purRealSubtotal} pur_real_subtotal, #{item.repurPushIncome} repur_push_income, #{item.repurRangeIncome} repur_range_income,
|
||||
#{item.repurExpandIncome} repur_expand_income, #{item.repurCoachIncome} repur_coach_income, #{item.repurRealSubtotal} repur_real_subtotal,
|
||||
#{item.cloudDirectIncome} cloud_direct_income, #{item.cloudPurIncome} cloud_pur_income,
|
||||
#{item.cloudRepurIncome} cloud_repur_income, #{item.cloudRealSubtotal} cloud_real_subtotal,
|
||||
#{item.repurCoupon} repur_coupon, #{item.repurCouponShare} repur_coupon_share,
|
||||
#{item.repurCouponSubtotal} repur_coupon_subtotal, #{item.globalPoints} global_points,
|
||||
#{item.carAwardPoints} car_award_points, #{item.storeIncome} store_income, #{item.hiFunIncome} hi_fun_income,
|
||||
#{item.haiFunIncome} hai_fun_income, #{item.makerDirectIncome} maker_direct_income,
|
||||
#{item.makerShareIncome} maker_share_income, #{item.makerRealSubtotal} maker_real_subtotal, #{item.realIncomeTotal} real_income_total,
|
||||
#{item.pkCountry} pk_country, #{item.pkCreator} pk_creator, #{item.grantStatus} grant_status, #{item.incomeStatus} income_status
|
||||
from dual
|
||||
</foreach>)
|
||||
)b
|
||||
on (cb.pk_member = b.pk_member and cb.period = b.period)
|
||||
WHEN NOT MATCHED THEN
|
||||
insert(pk_id,pk_member,period,pk_rate,direct_income,expand_income,expand_no_capping,
|
||||
expand_capping,coach_income,share_income,service_income,back_points,service_spend,
|
||||
pur_real_subtotal,repur_push_income,repur_range_income,repur_expand_income,repur_real_subtotal,
|
||||
cloud_direct_income,cloud_pur_income,cloud_repur_income,cloud_real_subtotal,
|
||||
repur_coupon,repur_coupon_share,repur_coupon_subtotal,global_points,
|
||||
car_award_points,store_income,hi_fun_income,hai_fun_income,
|
||||
maker_direct_income,maker_share_income,maker_real_subtotal,real_income_total,
|
||||
pk_country,pk_creator,grant_status,income_status)
|
||||
values(b.pk_id,b.pk_member,b.period,b.pk_rate,b.direct_income,b.expand_income,b.expand_no_capping,
|
||||
b.expand_capping,b.coach_income,b.share_income,b.service_income,b.back_points,b.service_spend,
|
||||
b.pur_real_subtotal,b.repur_push_income,b.repur_range_income,b.repur_expand_income,b.repur_real_subtotal,
|
||||
b.cloud_direct_income,b.cloud_pur_income,b.cloud_repur_income,b.cloud_real_subtotal,
|
||||
b.repur_coupon,b.repur_coupon_share,b.repur_coupon_subtotal,b.global_points,
|
||||
b.car_award_points,b.store_income,b.hi_fun_income,b.hai_fun_income,
|
||||
b.maker_direct_income,b.maker_share_income,b.maker_real_subtotal,b.real_income_total,
|
||||
b.pk_country,b.pk_creator,b.grant_status,b.income_status)
|
||||
insert (
|
||||
pk_id, pk_member, period, pk_rate, direct_income, expand_income, expand_no_capping,
|
||||
expand_capping, coach_income, share_income, service_income, back_points, service_spend,
|
||||
pur_real_subtotal, repur_push_income, repur_range_income, repur_expand_income, repur_coach_income, repur_real_subtotal,
|
||||
cloud_direct_income, cloud_pur_income, cloud_repur_income, cloud_real_subtotal,
|
||||
repur_coupon, repur_coupon_share, repur_coupon_subtotal, global_points,
|
||||
car_award_points, store_income, hi_fun_income, hai_fun_income,
|
||||
maker_direct_income, maker_share_income, maker_real_subtotal, real_income_total,
|
||||
pk_country, pk_creator, grant_status, income_status)
|
||||
values (
|
||||
b.pk_id, b.pk_member, b.period, b.pk_rate, b.direct_income, b.expand_income, b.expand_no_capping,
|
||||
b.expand_capping, b.coach_income, b.share_income, b.service_income, b.back_points, b.service_spend,
|
||||
b.pur_real_subtotal, b.repur_push_income, b.repur_range_income, b.repur_expand_income, b.repur_coach_income, b.repur_real_subtotal,
|
||||
b.cloud_direct_income, b.cloud_pur_income, b.cloud_repur_income, b.cloud_real_subtotal,
|
||||
b.repur_coupon, b.repur_coupon_share, b.repur_coupon_subtotal, b.global_points,
|
||||
b.car_award_points, b.store_income, b.hi_fun_income, b.hai_fun_income,
|
||||
b.maker_direct_income, b.maker_share_income, b.maker_real_subtotal, b.real_income_total,
|
||||
b.pk_country, b.pk_creator, b.grant_status, b.income_status)
|
||||
</insert>
|
||||
|
||||
<insert id="insertOrUpdateCuMemberBonus">
|
||||
|
@ -140,7 +142,7 @@
|
|||
using(
|
||||
select pk_id,pk_member,period,pk_rate,direct_income,expand_income,expand_no_capping,
|
||||
expand_capping,coach_income,share_income,service_income,back_points,service_spend,
|
||||
pur_real_subtotal,repur_push_income,repur_range_income,repur_expand_income,repur_real_subtotal,
|
||||
pur_real_subtotal,repur_push_income,repur_range_income,repur_expand_income, repur_coach_income, repur_real_subtotal,
|
||||
cloud_direct_income,cloud_pur_income,cloud_repur_income,cloud_real_subtotal,
|
||||
repur_coupon,repur_coupon_subtotal,global_points,
|
||||
car_award_points,hi_fun_income,hai_fun_income,
|
||||
|
@ -152,7 +154,7 @@
|
|||
#{item.expandCapping} expand_capping,#{item.coachIncome} coach_income,#{item.shareIncome} share_income,
|
||||
#{item.serviceIncome} service_income,#{item.backPoints} back_points,#{item.serviceSpend} service_spend,
|
||||
#{item.purRealSubtotal} pur_real_subtotal,#{item.repurPushIncome} repur_push_income,
|
||||
#{item.repurRangeIncome} repur_range_income,#{item.repurExpandIncome} repur_expand_income,
|
||||
#{item.repurRangeIncome} repur_range_income,#{item.repurExpandIncome} repur_expand_income, #{item.repurCoachIncome} repur_coach_income,
|
||||
#{item.repurRealSubtotal} repur_real_subtotal,#{item.cloudDirectIncome} cloud_direct_income,
|
||||
#{item.cloudPurIncome} cloud_pur_income,#{item.cloudRepurIncome} cloud_repur_income,
|
||||
#{item.cloudRealSubtotal} cloud_real_subtotal,#{item.repurCoupon} repur_coupon,
|
||||
|
@ -173,6 +175,7 @@
|
|||
a.service_income=a.service_income+b.service_income,a.back_points=a.back_points+b.back_points,a.service_spend=a.service_spend+b.service_spend,
|
||||
a.pur_real_subtotal=a.pur_real_subtotal+b.pur_real_subtotal,a.repur_push_income=a.repur_push_income+b.repur_push_income,
|
||||
a.repur_range_income=a.repur_range_income+b.repur_range_income,a.repur_expand_income=a.repur_expand_income+b.repur_expand_income,
|
||||
a.repur_coach_income=a.repur_coach_income+b.repur_coach_income,
|
||||
a.repur_real_subtotal=a.repur_real_subtotal+b.repur_real_subtotal,a.cloud_direct_income=a.cloud_direct_income+b.cloud_direct_income,
|
||||
a.cloud_pur_income=a.cloud_pur_income+b.cloud_pur_income,a.cloud_repur_income=a.cloud_repur_income+b.cloud_repur_income,
|
||||
a.cloud_real_subtotal=a.cloud_real_subtotal+b.cloud_real_subtotal,a.repur_coupon=a.repur_coupon+b.repur_coupon,
|
||||
|
@ -181,13 +184,13 @@
|
|||
when not matched then
|
||||
insert (pk_id,pk_member,period,pk_rate,direct_income,expand_income,expand_no_capping,
|
||||
expand_capping,coach_income,share_income,service_income,back_points,service_spend,
|
||||
pur_real_subtotal,repur_push_income,repur_range_income,repur_expand_income,repur_real_subtotal,
|
||||
pur_real_subtotal,repur_push_income,repur_range_income,repur_expand_income, repur_coach_income, repur_real_subtotal,
|
||||
cloud_direct_income,cloud_pur_income,cloud_repur_income,cloud_real_subtotal,
|
||||
repur_coupon,global_points,car_award_points,hi_fun_income,real_income_total,
|
||||
pk_country,pk_creator,grant_status,income_status)
|
||||
values(b.pk_id,b.pk_member,b.period,b.pk_rate,b.direct_income,b.expand_income,b.expand_no_capping,
|
||||
b.expand_capping,b.coach_income,b.share_income,b.service_income,b.back_points,b.service_spend,
|
||||
b.pur_real_subtotal,b.repur_push_income,b.repur_range_income,b.repur_expand_income,b.repur_real_subtotal,
|
||||
b.pur_real_subtotal,b.repur_push_income,b.repur_range_income,b.repur_expand_income, b.repur_coach_income, b.repur_real_subtotal,
|
||||
b.cloud_direct_income,b.cloud_pur_income,b.cloud_repur_income,b.cloud_real_subtotal,
|
||||
b.repur_coupon,b.global_points,b.car_award_points,b.hi_fun_income,b.real_income_total,
|
||||
b.pk_country,b.pk_creator,b.grant_status,b.income_status)
|
||||
|
@ -254,19 +257,17 @@
|
|||
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,
|
||||
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,
|
||||
cb.cloud_direct_income,cb.cloud_pur_income,cb.cloud_repur_income,cb.cloud_real_subtotal,
|
||||
cb.repur_coupon,cb.repur_coupon_share,cb.repur_coupon_subtotal,cb.store_income,
|
||||
cb.maker_direct_income,cb.maker_share_income,cb.maker_real_subtotal,cb.hai_fun_income,
|
||||
cb.global_points,cb.car_award_points,cb.hi_fun_income,cb.pk_rate,bc.out_exchange_rate,
|
||||
cb.real_income_total,
|
||||
cm.pk_vertex,
|
||||
cm.service_code,
|
||||
cm.nick_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_coach_income,
|
||||
cb.repur_real_subtotal, cb.cloud_direct_income, cb.cloud_pur_income, cb.cloud_repur_income, cb.cloud_real_subtotal,
|
||||
cb.repur_coupon, cb.repur_coupon_share, cb.repur_coupon_subtotal, cb.store_income,
|
||||
cb.maker_direct_income, cb.maker_share_income, cb.maker_real_subtotal, cb.hai_fun_income,
|
||||
cb.global_points, cb.car_award_points, cb.hi_fun_income, cb.pk_rate,bc.out_exchange_rate,
|
||||
cb.real_income_total, 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
|
||||
|
@ -278,8 +279,8 @@
|
|||
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
|
||||
and cp.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}
|
||||
</if>
|
||||
|
@ -296,13 +297,13 @@
|
|||
and cm.pk_team_code = #{bonusParam.pkTeamCode}
|
||||
</if>
|
||||
<if test="bonusParam.startDate != null">
|
||||
and cp.settle_date >=#{bonusParam.startDate, jdbcType=DATE}
|
||||
and cp.settle_date >= #{bonusParam.startDate, jdbcType=DATE}
|
||||
</if>
|
||||
<if test="bonusParam.endDate != null">
|
||||
and cp.settle_date < #{bonusParam.endDate, jdbcType=DATE}
|
||||
</if>
|
||||
<if test="bonusParam.period != null">
|
||||
and cb.period >=#{bonusParam.period}
|
||||
and cb.period >= #{bonusParam.period}
|
||||
</if>
|
||||
<if test="bonusParam.pkVertexList!=null and bonusParam.pkVertexList.size> 0 ">
|
||||
and cm.PK_VERTEX in
|
||||
|
@ -315,7 +316,7 @@
|
|||
select 1 from (
|
||||
<foreach collection="bonusParam.vertexList" item="item" separator=" union ">
|
||||
select pk_id from cu_member
|
||||
where del_flag=0 and PAY_STATUS=1
|
||||
where del_flag = 0 and PAY_STATUS = 1
|
||||
start with pk_id = #{item}
|
||||
connect by pk_parent = prior pk_id
|
||||
</foreach>
|
||||
|
@ -323,7 +324,7 @@
|
|||
union
|
||||
<foreach collection="bonusParam.teamList" item="item" separator=" union ">
|
||||
select pk_id from cu_member
|
||||
where del_flag=0 and PAY_STATUS=1
|
||||
where del_flag = 0 and PAY_STATUS = 1
|
||||
start with pk_id = #{item}
|
||||
connect by pk_parent = prior pk_id
|
||||
</foreach>
|
||||
|
@ -350,6 +351,7 @@
|
|||
nvl(sum(cb.repur_push_income),0) repur_push_income,
|
||||
nvl(sum(cb.repur_range_income),0) repur_range_income,
|
||||
nvl(sum(cb.repur_expand_income),0) repur_expand_income,
|
||||
nvl(sum(cb.repur_coach_income),0) repur_coach_income,
|
||||
nvl(sum(cb.repur_real_subtotal),0) repur_real_subtotal,
|
||||
nvl(sum(cb.cloud_direct_income),0) cloud_direct_income,
|
||||
nvl(sum(cb.cloud_pur_income),0) cloud_pur_income,
|
||||
|
@ -437,25 +439,28 @@
|
|||
</select>
|
||||
|
||||
<select id="queryBonusTotalVoByConditionForServer" resultMap="CuMemberBonus">
|
||||
select cb.period,cp.settle_date,nvl(min(bc.out_exchange_rate),1) out_exchange_rate,sum(cb.direct_income) direct_income,sum(cb.expand_income) expand_income,
|
||||
sum(cb.expand_no_capping) expand_no_capping,sum(cb.expand_capping) expand_capping,sum(cb.coach_income) coach_income,
|
||||
sum(cb.share_income) share_income,sum(cb.service_income) service_income,sum(cb.back_points) back_points,
|
||||
sum(cb.service_spend) service_spend,sum(cb.pur_real_subtotal) pur_real_subtotal,
|
||||
sum(cb.repur_push_income) repur_push_income,sum(cb.repur_range_income) repur_range_income,
|
||||
sum(cb.repur_expand_income) repur_expand_income,sum(cb.repur_real_subtotal) repur_real_subtotal,sum(cb.cloud_direct_income) cloud_direct_income,
|
||||
sum(cb.cloud_pur_income) cloud_pur_income,sum(cb.cloud_repur_income) cloud_repur_income,sum(cb.cloud_real_subtotal) cloud_real_subtotal,
|
||||
sum(cb.repur_coupon) repur_coupon,sum(repur_coupon_share) repur_coupon_share,
|
||||
sum(cb.repur_coupon_subtotal) repur_coupon_subtotal,sum(cb.global_points) global_points,
|
||||
sum(cb.car_award_points) car_award_points,sum(cb.hi_fun_income) hi_fun_income,
|
||||
sum(store_income) store_income,sum(cb.maker_direct_income) maker_direct_income,
|
||||
sum(cb.maker_share_income) maker_share_income,sum(cb.maker_real_subtotal) maker_real_subtotal,
|
||||
sum(cb.real_income_total) real_income_total from cu_member_bonus cb
|
||||
select cb.period ,cp.settle_date, nvl(min(bc.out_exchange_rate),1) out_exchange_rate,
|
||||
sum(cb.direct_income) direct_income, sum(cb.expand_income) expand_income,
|
||||
sum(cb.expand_no_capping) expand_no_capping, sum(cb.expand_capping) expand_capping, sum(cb.coach_income) coach_income,
|
||||
sum(cb.share_income) share_income, sum(cb.service_income) service_income, sum(cb.back_points) back_points,
|
||||
sum(cb.service_spend) service_spend, sum(cb.pur_real_subtotal) pur_real_subtotal,
|
||||
sum(cb.repur_push_income) repur_push_income, sum(cb.repur_range_income) repur_range_income,
|
||||
sum(cb.repur_expand_income) repur_expand_income, sum(cb.repur_coach_income) repur_coach_income, sum(cb.repur_real_subtotal) repur_real_subtotal,
|
||||
sum(cb.cloud_direct_income) cloud_direct_income, sum(cb.cloud_pur_income) cloud_pur_income,
|
||||
sum(cb.cloud_repur_income) cloud_repur_income, sum(cb.cloud_real_subtotal) cloud_real_subtotal,
|
||||
sum(cb.repur_coupon) repur_coupon, sum(repur_coupon_share) repur_coupon_share,
|
||||
sum(cb.repur_coupon_subtotal) repur_coupon_subtotal, sum(cb.global_points) global_points,
|
||||
sum(cb.car_award_points) car_award_points, sum(cb.hi_fun_income) hi_fun_income,
|
||||
sum(store_income) store_income, sum(cb.maker_direct_income) maker_direct_income,
|
||||
sum(cb.maker_share_income) maker_share_income, sum(cb.maker_real_subtotal) maker_real_subtotal,
|
||||
sum(cb.real_income_total) real_income_total
|
||||
from cu_member_bonus cb
|
||||
inner join cu_member_settle_period cp
|
||||
on cb.period = cp.pk_id
|
||||
left join bd_currency bc
|
||||
on bc.pk_id = cb.pk_rate
|
||||
inner join cu_member cm on cb.PK_MEMBER=cm.pk_id
|
||||
where cb.del_flag=0 and cp.del_flag=0
|
||||
inner join cu_member cm on cb.PK_MEMBER = cm.pk_id
|
||||
where cb.del_flag = 0 and cp.del_flag = 0
|
||||
<if test="bonusParam.pkCountry != null">
|
||||
and cb.pk_country = #{bonusParam.pkCountry}
|
||||
</if>
|
||||
|
@ -466,7 +471,7 @@
|
|||
and cp.settle_date <= #{bonusParam.endDate, jdbcType=DATE}
|
||||
</if>
|
||||
<if test="bonusParam.period != null">
|
||||
and cb.period =#{bonusParam.period}
|
||||
and cb.period = #{bonusParam.period}
|
||||
</if>
|
||||
<if test="bonusParam.pkVertexList!=null and bonusParam.pkVertexList.size> 0 ">
|
||||
and cm.PK_VERTEX in
|
||||
|
@ -479,7 +484,7 @@
|
|||
select 1 from (
|
||||
<foreach collection="bonusParam.vertexList" item="item" separator=" union ">
|
||||
select pk_id from cu_member
|
||||
where del_flag=0 and PAY_STATUS=1
|
||||
where del_flag = 0 and PAY_STATUS = 1
|
||||
start with pk_id = #{item}
|
||||
connect by pk_parent = prior pk_id
|
||||
</foreach>
|
||||
|
|
|
@ -5,16 +5,16 @@
|
|||
<insert id="insertCuMemberRepeatBonus">
|
||||
insert ALL
|
||||
<foreach item="item" index="index" collection="cuMemberRepeatBonusList" separator=" ">
|
||||
into CU_MEMBER_REPEAT_BONUS(pk_member,period,pk_rate,direct_income,expand_income,
|
||||
coach_income,share_income,service_income,back_points,service_spend,
|
||||
pur_real_subtotal,maker_direct_income,maker_share_income,maker_real_subtotal,real_income_total,
|
||||
pk_country,pk_creator)
|
||||
values
|
||||
(#{item.pkMember},#{item.period},#{item.pkRate,jdbcType=INTEGER},#{item.directIncome},
|
||||
#{item.expandIncome},#{item.coachIncome},#{item.shareIncome},#{item.serviceIncome},
|
||||
#{item.backPoints},#{item.serviceSpend},#{item.purRealSubtotal},#{item.makerDirectIncome},
|
||||
#{item.makerShareIncome},#{item.makerRealSubtotal},#{item.realIncomeTotal},
|
||||
#{item.pkCountry},#{item.pkCreator})
|
||||
into CU_MEMBER_REPEAT_BONUS(pk_member, period, pk_rate,
|
||||
direct_income, expand_income, coach_income, share_income, service_income,
|
||||
back_points, service_spend, pur_real_subtotal,
|
||||
maker_direct_income, maker_share_income, maker_real_subtotal, real_income_total,
|
||||
pk_country, pk_creator)
|
||||
values (#{item.pkMember}, #{item.period}, #{item.pkRate, jdbcType=INTEGER},
|
||||
#{item.directIncome}, #{item.expandIncome}, #{item.coachIncome}, #{item.shareIncome}, #{item.serviceIncome},
|
||||
#{item.backPoints}, #{item.serviceSpend}, #{item.purRealSubtotal},
|
||||
#{item.makerDirectIncome}, #{item.makerShareIncome}, #{item.makerRealSubtotal}, #{item.realIncomeTotal},
|
||||
#{item.pkCountry}, #{item.pkCreator})
|
||||
</foreach>
|
||||
SELECT 1 FROM dual
|
||||
</insert>
|
||||
|
|
|
@ -28,6 +28,7 @@
|
|||
<result column="REPUR_PUSH_INCOME" property="repurPushIncome"/>
|
||||
<result column="REPUR_RANGE_INCOME" property="repurRangeIncome"/>
|
||||
<result column="REPUR_EXPAND_INCOME" property="repurExpandIncome"/>
|
||||
<result column="REPUR_COACH_INCOME" property="repurCoachIncome"/>
|
||||
<result column="REPUR_REAL_SUBTOTAL" property="repurRealSubtotal"/>
|
||||
<result column="CLOUD_DIRECT_INCOME" property="cloudDirectIncome"/>
|
||||
<result column="CLOUD_PUR_INCOME" property="cloudPurIncome"/>
|
||||
|
|
|
@ -544,11 +544,11 @@ public class SaOrderHandle {
|
|||
});
|
||||
int level = cuMember.getPkSettleGrade();
|
||||
int rangeType = ERangeType.GRADE.getValue();
|
||||
BdAwards bdAwards = awardsServiceApi.getAwardsOne(cuMember.getPkAwards()).getData();
|
||||
if (bdAwards.getAwardsValue() > EAwards.MEMBER.getValue()) {
|
||||
level = cuMember.getPkAwards();
|
||||
rangeType = ERangeType.AWARDS.getValue();
|
||||
}
|
||||
// BdAwards bdAwards = awardsServiceApi.getAwardsOne(cuMember.getPkAwards()).getData();
|
||||
// if (bdAwards.getAwardsValue() > EAwards.MEMBER.getValue()) {
|
||||
// level = cuMember.getPkAwards();
|
||||
// rangeType = ERangeType.AWARDS.getValue();
|
||||
// }
|
||||
if (specsSkuList.size() == 0) {
|
||||
return;
|
||||
}
|
||||
|
|
|
@ -4,11 +4,9 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
|
||||
import com.hzs.common.core.constant.SystemFieldConstants;
|
||||
import com.hzs.common.core.enums.EAwards;
|
||||
import com.hzs.common.core.enums.ERangeType;
|
||||
import com.hzs.common.domain.member.base.CuMember;
|
||||
import com.hzs.common.domain.sale.wares.BdWaresRange;
|
||||
import com.hzs.common.domain.system.config.BdAwards;
|
||||
import com.hzs.sale.wares.mapper.BdWaresRangeMapper;
|
||||
import com.hzs.sale.wares.service.IBdWaresRangeService;
|
||||
import com.hzs.system.config.IAwardsServiceApi;
|
||||
|
@ -38,11 +36,11 @@ public class BdWaresRangeServiceImpl extends ServiceImpl<BdWaresRangeMapper, BdW
|
|||
public List<BdWaresRange> queryWaresRangeByCondition(CuMember cuMember, List<Integer> pkWareList) {
|
||||
int level = cuMember.getPkSettleGrade();
|
||||
int rangeType = ERangeType.GRADE.getValue();
|
||||
BdAwards bdAwards = awardsServiceApi.getAwardsOne(cuMember.getPkAwards()).getData();
|
||||
if (bdAwards.getAwardsValue() > EAwards.MEMBER.getValue()) {
|
||||
level = cuMember.getPkAwards();
|
||||
rangeType = ERangeType.AWARDS.getValue();
|
||||
}
|
||||
// BdAwards bdAwards = awardsServiceApi.getAwardsOne(cuMember.getPkAwards()).getData();
|
||||
// if (bdAwards.getAwardsValue() > EAwards.MEMBER.getValue()) {
|
||||
// level = cuMember.getPkAwards();
|
||||
// rangeType = ERangeType.AWARDS.getValue();
|
||||
// }
|
||||
RangeDTO rangeDTO = rangeServiceApi.queryRangeDtoByCondition(cuMember.getPkSettleCountry(), rangeType, level).getData();
|
||||
if (rangeDTO == null) {
|
||||
return new ArrayList<>();
|
||||
|
|
|
@ -1,9 +1,8 @@
|
|||
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;
|
||||
|
@ -32,9 +31,7 @@ import java.util.Date;
|
|||
import java.util.List;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 奖项配置 前端控制器
|
||||
* </p>
|
||||
*
|
||||
* @author zhangjing
|
||||
* @since 2022-11-09
|
||||
|
@ -44,16 +41,12 @@ import java.util.List;
|
|||
public class BdBonusItemsController extends BaseController {
|
||||
|
||||
@Autowired
|
||||
private IBdBonusItemsService bonusItemsService;
|
||||
@DubboReference
|
||||
private ITransactionServiceApi iTransactionServiceApi;
|
||||
private IBdBonusItemsService iBdBonusItemsService;
|
||||
@Autowired
|
||||
private RedisService redisService;
|
||||
|
||||
@Autowired
|
||||
public void setRedisService(RedisService redisService) {
|
||||
this.redisService = redisService;
|
||||
}
|
||||
|
||||
@DubboReference
|
||||
ITransactionServiceApi iTransactionServiceApi;
|
||||
|
||||
/**
|
||||
* @description: 查询奖项配置列表
|
||||
|
@ -62,18 +55,18 @@ public class BdBonusItemsController extends BaseController {
|
|||
* @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());
|
||||
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<BdBonusItems> list = iBdBonusItemsService.list(queryWrapper);
|
||||
list.forEach(item -> listExt.add(BeanUtil.copyProperties(item, BdBonusItemsExt.class)));
|
||||
TableDataInfo tableDataInfo = getDataTable(list);
|
||||
tableDataInfo.setRows(listExt);
|
||||
|
@ -87,21 +80,22 @@ public class BdBonusItemsController extends BaseController {
|
|||
* @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<BdBonusItems> list = iBdBonusItemsService.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
|
||||
|
@ -109,17 +103,17 @@ public class BdBonusItemsController extends BaseController {
|
|||
* @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<BdBonusItems> list = iBdBonusItemsService.list(queryWrapper);
|
||||
list.forEach(item -> listVO.add(BeanUtil.copyProperties(item, ApiBdBonusItemsVO.class)));
|
||||
return getDataTable(listVO);
|
||||
}
|
||||
|
@ -131,10 +125,10 @@ public class BdBonusItemsController extends BaseController {
|
|||
* @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));
|
||||
return AjaxResult.success(iBdBonusItemsService.generate(bonusItems));
|
||||
}
|
||||
|
||||
|
||||
|
@ -145,53 +139,50 @@ public class BdBonusItemsController extends BaseController {
|
|||
* @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()){
|
||||
if (null != bonusItems.getPkTransaction()) {
|
||||
R<Boolean> b = iTransactionServiceApi.updateTransaction(pkCountry,
|
||||
bonusItems.getBonusName(),bonusItems.getPkTransaction(), true);
|
||||
}else{
|
||||
bonusItems.getBonusName(), bonusItems.getPkTransaction(), true);
|
||||
} else {
|
||||
//字段翻译保存到数据库
|
||||
R<Integer> pkTransaction= iTransactionServiceApi.createTransaction(pkCountry, ETransactionKey.BD_BONUS_ITEMS,
|
||||
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));
|
||||
return toAjax(iBdBonusItemsService.updateById(bonusItems));
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* @description: 查询单条奖项配置
|
||||
* @author: zhang jing
|
||||
|
@ -199,11 +190,11 @@ public class BdBonusItemsController extends BaseController {
|
|||
* @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);
|
||||
BdBonusItems bonusItems = iBdBonusItemsService.getById(pkId);
|
||||
BdBonusItemsExt bonusItemsExt = BeanUtil.copyProperties(bonusItems, BdBonusItemsExt.class);
|
||||
return AjaxResult.success(bonusItemsExt);
|
||||
}
|
||||
|
||||
|
@ -215,22 +206,22 @@ public class BdBonusItemsController extends BaseController {
|
|||
* @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()){
|
||||
BdBonusItems bdBonusItems = iBdBonusItemsService.getById(pkId);
|
||||
List<Long> pkIdList = new ArrayList<>();
|
||||
if (null != bdBonusItems.getPkTransaction()) {
|
||||
pkIdList.add(bdBonusItems.getPkTransaction().longValue());
|
||||
R<Boolean> b=iTransactionServiceApi.removeTransactionByPkId(pkIdList);
|
||||
R<Boolean> b = iTransactionServiceApi.removeTransactionByPkId(pkIdList);
|
||||
}
|
||||
return toAjax(bonusItemsService.update(updateWrapper));
|
||||
return toAjax(iBdBonusItemsService.update(updateWrapper));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -114,6 +114,7 @@ public class BonusMsgConstants {
|
|||
// public static String REPURCHASE_EXPAND = "MSG_BONUS_016";
|
||||
public static String REPURCHASE_EXPAND = "当前是第%d碰,共%d碰,订单编号%s,%s为%s贡献了复购拓展收益,计算业绩%f,拓展比例%f。";
|
||||
|
||||
public static String REPURCHASE_COACH = "当前是第%d代,共#代,订单编号%s,%s为%s贡献了复购辅导收益,计算业绩%f,辅导比例%f。";
|
||||
|
||||
public static String BONUS_EXPAND_DELAY = "%s,拓展收益延缓发放";
|
||||
|
||||
|
|
|
@ -117,6 +117,11 @@ public enum EBonusItems {
|
|||
*/
|
||||
HELP_EACH_INCOME(24, "互助收益", 0, EnumsPrefixConstants.BONUS_ITEMS + 24),
|
||||
|
||||
/**
|
||||
* 复购辅导收益
|
||||
*/
|
||||
REPURCHASE_COACHING_INCOME(25, "复购辅导收益", 0, EnumsPrefixConstants.BONUS_ITEMS + 25),
|
||||
|
||||
;
|
||||
|
||||
public static EBonusItems getEnumByValue(int value) {
|
||||
|
|
|
@ -12,9 +12,7 @@ import lombok.EqualsAndHashCode;
|
|||
import lombok.experimental.Accessors;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 奖金扣项配置
|
||||
* </p>
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2022-11-04
|
||||
|
|
|
@ -130,6 +130,12 @@ public class CuMemberBonus extends BaseEntity {
|
|||
@TableField("REPUR_EXPAND_INCOME")
|
||||
private BigDecimal repurExpandIncome;
|
||||
|
||||
/**
|
||||
* 复购辅导收益
|
||||
*/
|
||||
@TableField("REPUR_COACH_INCOME")
|
||||
private BigDecimal repurCoachIncome;
|
||||
|
||||
/**
|
||||
* 复购实发小计
|
||||
*/
|
||||
|
|
Loading…
Reference in New Issue