Compare commits

..

No commits in common. "08bc71c55f335ed85b533f73ac751d0183d7d819" and "619e6f10064f3b5295cce5b1137d6a2056886790" have entirely different histories.

10 changed files with 207 additions and 259 deletions

View File

@ -4,14 +4,15 @@ import cn.hutool.core.collection.CollectionUtil;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.hzs.bonus.achieve.mapper.CuMemberRetailRangeMapper; import com.hzs.bonus.achieve.mapper.CuMemberRetailRangeMapper;
import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService; import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService;
import com.hzs.bonus.achieve.service.ICuMemberTreeService;
import com.hzs.common.core.constant.MagicNumberConstants; import com.hzs.common.core.constant.MagicNumberConstants;
import com.hzs.common.core.enums.EOrderType;
import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail;
import com.hzs.common.domain.member.achieve.CuMemberRetailRange; import com.hzs.common.domain.member.achieve.CuMemberRetailRange;
import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt;
import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.base.CuMember;
import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.member.ext.CuMemberExt;
import com.hzs.common.domain.sale.ext.SaOrderExt; import com.hzs.common.domain.sale.ext.SaOrderExt;
import org.apache.ibatis.annotations.Param;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -26,8 +27,6 @@ public class CuMemberRetailRangeServiceImpl extends ServiceImpl<CuMemberRetailRa
@Autowired @Autowired
private CuMemberBonusSettle cuMemberBonusSettle; private CuMemberBonusSettle cuMemberBonusSettle;
@Autowired
private ICuMemberTreeService iCuMemberTreeService;
@Override @Override
public void mergeMemberRetailRangeByYesterday(String rangeTableName, String yesterdayRangeTableName, Boolean isSameMonth) { public void mergeMemberRetailRangeByYesterday(String rangeTableName, String yesterdayRangeTableName, Boolean isSameMonth) {
@ -43,9 +42,6 @@ public class CuMemberRetailRangeServiceImpl extends ServiceImpl<CuMemberRetailRa
@Override @Override
public void mergeMemberRetailRangeDetailByYesterday(String detailTableName, String yesterdayDetailTableName) { public void mergeMemberRetailRangeDetailByYesterday(String detailTableName, String yesterdayDetailTableName) {
// 清空当前明细表
iCuMemberTreeService.truncateCuMemberTreeTable(detailTableName);
// 用昨天的数据初始化当前明细表
baseMapper.mergeMemberRetailRangeDetailByYesterday(detailTableName, yesterdayDetailTableName); baseMapper.mergeMemberRetailRangeDetailByYesterday(detailTableName, yesterdayDetailTableName);
} }
@ -98,21 +94,15 @@ public class CuMemberRetailRangeServiceImpl extends ServiceImpl<CuMemberRetailRa
Collection<CuMemberRetailDetail> retailDetailColl = new ArrayList<>(); Collection<CuMemberRetailDetail> retailDetailColl = new ArrayList<>();
memberRangeExtMap.forEach((key, value) -> { memberRangeExtMap.forEach((key, value) -> {
if (null != value.getOneDetailMap() && value.getOneDetailMap().size() > 0) { if (null != value.getOneDetailMap() && value.getOneDetailMap().size() > 0) {
Collection<CuMemberRetailDetail> tmpDetailColl = value.getOneDetailMap().values(); retailDetailColl.addAll(value.getOneDetailMap().values());
for (CuMemberRetailDetail cuMemberRetailDetail : tmpDetailColl) {
// 只有需要更新的才进行入库操作
if (null != cuMemberRetailDetail.getUpdateBool()) {
retailDetailColl.add(cuMemberRetailDetail);
}
}
} }
}); });
List<List<?>> list = cuMemberBonusSettle.handleCutList(retailDetailColl); List<List<?>> list = cuMemberBonusSettle.handleCutList(retailDetailColl);
list.forEach(tmpList -> { list.forEach(tmpList -> {
if (CollectionUtil.isNotEmpty(tmpList)) { if (CollectionUtil.isNotEmpty(tmpList)) {
baseMapper.mergeCuMemberRetailDetail(rangeDetailTableName, tmpList); baseMapper.mergeCuMemberRetailDetail(rangeDetailTableName, tmpList);
} }
}); });
} }
@Override @Override

View File

@ -37,12 +37,6 @@ public interface ICuMemberBonusStageService extends IService<CuMemberBonusStage>
*/ */
String fillChildNode(CuMemberRetailDetail cuMemberRetailDetail, CuMemberRetailDetail newRetailDetail); String fillChildNode(CuMemberRetailDetail cuMemberRetailDetail, CuMemberRetailDetail newRetailDetail);
/**
* 填充指定点位
*/
void fillRetailDetail(CuMemberRetailDetail targetRetailDetail, String point,
Long pkMember, Integer childNode);
/** /**
* 处理新点位是推荐第一层 * 处理新点位是推荐第一层
*/ */

View File

@ -278,7 +278,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
Date settleEndDate = DateUtils.afterDate(1, ChronoUnit.DAYS, settleStartDate); Date settleEndDate = DateUtils.afterDate(1, ChronoUnit.DAYS, settleStartDate);
// 新零售订单注册复购 // 新零售订单注册复购
List<SaOrderExt> orderList = iBonusOrderService.listRetailSaOrder(settleStartDate, settleEndDate, null, Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_UPGRADE.getValue(), EOrderType.RETAIL_REPURCHASE.getValue())); List<SaOrderExt> orderList = iBonusOrderService.listRetailSaOrder(settleStartDate, settleEndDate, null, Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_REPURCHASE.getValue()));
// 更新当月会员 将昨天业绩更到到今天更新当月会员考核结果有消费的考核通过 // 更新当月会员 将昨天业绩更到到今天更新当月会员考核结果有消费的考核通过
// 结算期间表 // 结算期间表
@ -371,7 +371,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
} }
// 更新日结数据 // 更新日结数据
iCuMemberRetailRangeService.updateCuMemberRetailRange(rangeTableName, memberRangeExtMap); iCuMemberRetailRangeService.updateCuMemberRetailRange(rangeTableName, memberRangeExtMap);
CuMemberRetailRangeExt tt = memberRangeExtMap.get(20363L);
// 更新日结明细数据 // 更新日结明细数据
iCuMemberRetailRangeService.updateCuMemberRetailDetail(rangeDetailTableName, memberRangeExtMap); iCuMemberRetailRangeService.updateCuMemberRetailDetail(rangeDetailTableName, memberRangeExtMap);
} }
@ -951,8 +950,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
} }
// 当前会员子点位总数 // 当前会员子点位总数
int pointCount = sourceMember.getPointCount(); int pointCount = sourceMember.getPointCount();
newPointInt:
for (int i = 1; i <= newPointInt; i++) { for (int i = 1; i <= newPointInt; i++) {
// 订单会员生成的新点位 // 订单会员生成的新点位
CuMemberRetailDetail newRetailDetail = CuMemberRetailDetail.builder() CuMemberRetailDetail newRetailDetail = CuMemberRetailDetail.builder()
@ -964,7 +961,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
.pointType(EBonusStageType.NORMAL.getValue()) .pointType(EBonusStageType.NORMAL.getValue())
.pointGift(0) .pointGift(0)
.creationTime(settleDate) .creationTime(settleDate)
.updateBool(0)
.build(); .build();
detailList.put(newRetailDetail.getChildNode(), newRetailDetail); detailList.put(newRetailDetail.getChildNode(), newRetailDetail);
@ -984,142 +980,47 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
// 推荐人没有未完成点位继续往上找 // 推荐人没有未完成点位继续往上找
continue; continue;
} }
for (Map.Entry<Integer, CuMemberRetailDetail> integerCuMemberRetailDetailEntry : parentDetailList.entrySet()) { parentDetailList.forEach((key, parentRetailDetail) -> {
// 第一层填充
CuMemberRetailDetail parentRetailDetail = integerCuMemberRetailDetailEntry.getValue();
// 遍历推荐人点位使用第一个未完成的点位进行填充 // 遍历推荐人点位使用第一个未完成的点位进行填充
if (EBonusStageStatus.NO.getValue() == parentRetailDetail.getStageStatus()) { if (EBonusStageStatus.NO.getValue() == parentRetailDetail.getStageStatus()) {
if (null == parentRetailDetail.getPointMember11()) { String newNode = iCuMemberBonusStageService.fillChildNode(parentRetailDetail, newRetailDetail);
iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_11, if (null == newNode) {
newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); return;
// 新点位是推荐人点位的第一层 }
iCuMemberBonusStageService.handlePointFirst(memberRangeExtMap, newRetailDetail, parentRetailDetail, switch (newNode) {
rangeTableName, rangeDetailTableName, BonusConstants.POINT_11); case BonusConstants.POINT_11:
// 当前新子点位填充完成进入下一个新子点位 case BonusConstants.POINT_12:
continue newPointInt; // 新点位是推荐人点位的第一层
} else if (null == parentRetailDetail.getPointMember12()) { iCuMemberBonusStageService.handlePointFirst(memberRangeExtMap, newRetailDetail, parentRetailDetail,
iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_12, rangeTableName, rangeDetailTableName, newNode);
newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); break;
// 新点位是推荐人点位的第一层 case BonusConstants.POINT_21:
iCuMemberBonusStageService.handlePointFirst(memberRangeExtMap, newRetailDetail, parentRetailDetail, case BonusConstants.POINT_22:
rangeTableName, rangeDetailTableName, BonusConstants.POINT_12); case BonusConstants.POINT_23:
// 当前新子点位填充完成进入下一个新子点位 case BonusConstants.POINT_24:
continue newPointInt; // 新点位是推荐人点位的第二层
iCuMemberBonusStageService.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail,
rangeTableName, rangeDetailTableName, newNode);
break;
case BonusConstants.POINT_38:
// 第一个点位已经全部填满更新完成状态和时间
parentRetailDetail.setStageStatus(EBonusStageStatus.YES.getValue());
parentRetailDetail.setStageDate(settleDate);
// TODO 一阶段全满则需要发放一阶段奖金
// TODO 需要记录填满子点位用来处理生成二阶段以及生成赠点
case BonusConstants.POINT_31:
case BonusConstants.POINT_32:
case BonusConstants.POINT_33:
case BonusConstants.POINT_34:
case BonusConstants.POINT_35:
case BonusConstants.POINT_36:
case BonusConstants.POINT_37:
// 新点位是推荐人点位的第三层
iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail,
rangeTableName, rangeDetailTableName, newNode);
} }
} }
} });
for (Map.Entry<Integer, CuMemberRetailDetail> integerCuMemberRetailDetailEntry : parentDetailList.entrySet()) {
// 第二层填充
CuMemberRetailDetail parentRetailDetail = integerCuMemberRetailDetailEntry.getValue();
// 遍历推荐人点位使用第一个未完成的点位进行填充
if (EBonusStageStatus.NO.getValue() == parentRetailDetail.getStageStatus()) {
if (null == parentRetailDetail.getPointMember21()) {
iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_21,
newRetailDetail.getPkMember(), newRetailDetail.getChildNode());
// 新点位是推荐人点位的第二层
iCuMemberBonusStageService.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail,
rangeTableName, rangeDetailTableName, BonusConstants.POINT_21);
// 当前新子点位填充完成进入下一个新子点位
continue newPointInt;
} else if (null == parentRetailDetail.getPointMember22()) {
iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_22,
newRetailDetail.getPkMember(), newRetailDetail.getChildNode());
// 新点位是推荐人点位的第二层
iCuMemberBonusStageService.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail,
rangeTableName, rangeDetailTableName, BonusConstants.POINT_22);
// 当前新子点位填充完成进入下一个新子点位
continue newPointInt;
} else if (null == parentRetailDetail.getPointMember23()) {
iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_23,
newRetailDetail.getPkMember(), newRetailDetail.getChildNode());
// 新点位是推荐人点位的第二层
iCuMemberBonusStageService.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail,
rangeTableName, rangeDetailTableName, BonusConstants.POINT_23);
// 当前新子点位填充完成进入下一个新子点位
continue newPointInt;
} else if (null == parentRetailDetail.getPointMember24()) {
iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_24,
newRetailDetail.getPkMember(), newRetailDetail.getChildNode());
// 新点位是推荐人点位的第二层
iCuMemberBonusStageService.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail,
rangeTableName, rangeDetailTableName, BonusConstants.POINT_24);
// 当前新子点位填充完成进入下一个新子点位
continue newPointInt;
}
}
}
for (Map.Entry<Integer, CuMemberRetailDetail> integerCuMemberRetailDetailEntry : parentDetailList.entrySet()) {
// 第三层填充
CuMemberRetailDetail parentRetailDetail = integerCuMemberRetailDetailEntry.getValue();
// 遍历推荐人点位使用第一个未完成的点位进行填充
if (EBonusStageStatus.NO.getValue() == parentRetailDetail.getStageStatus()) {
if (null == parentRetailDetail.getPointMember31()) {
iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_31,
newRetailDetail.getPkMember(), newRetailDetail.getChildNode());
// 新点位是推荐人点位的第三层
iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail,
rangeTableName, rangeDetailTableName, BonusConstants.POINT_31);
// 当前新子点位填充完成进入下一个新子点位
continue newPointInt;
} else if (null == parentRetailDetail.getPointMember32()) {
iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_32,
newRetailDetail.getPkMember(), newRetailDetail.getChildNode());
// 新点位是推荐人点位的第三层
iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail,
rangeTableName, rangeDetailTableName, BonusConstants.POINT_32);
// 当前新子点位填充完成进入下一个新子点位
continue newPointInt;
} else if (null == parentRetailDetail.getPointMember33()) {
iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_33,
newRetailDetail.getPkMember(), newRetailDetail.getChildNode());
// 新点位是推荐人点位的第三层
iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail,
rangeTableName, rangeDetailTableName, BonusConstants.POINT_33);
// 当前新子点位填充完成进入下一个新子点位
continue newPointInt;
} else if (null == parentRetailDetail.getPointMember34()) {
iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_34,
newRetailDetail.getPkMember(), newRetailDetail.getChildNode());
// 新点位是推荐人点位的第三层
iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail,
rangeTableName, rangeDetailTableName, BonusConstants.POINT_34);
// 当前新子点位填充完成进入下一个新子点位
continue newPointInt;
} else if (null == parentRetailDetail.getPointMember35()) {
iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_35,
newRetailDetail.getPkMember(), newRetailDetail.getChildNode());
// 新点位是推荐人点位的第三层
iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail,
rangeTableName, rangeDetailTableName, BonusConstants.POINT_35);
// 当前新子点位填充完成进入下一个新子点位
continue newPointInt;
} else if (null == parentRetailDetail.getPointMember36()) {
iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_36,
newRetailDetail.getPkMember(), newRetailDetail.getChildNode());
// 新点位是推荐人点位的第三层
iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail,
rangeTableName, rangeDetailTableName, BonusConstants.POINT_36);
// 当前新子点位填充完成进入下一个新子点位
continue newPointInt;
} else if (null == parentRetailDetail.getPointMember37()) {
iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_37,
newRetailDetail.getPkMember(), newRetailDetail.getChildNode());
// 新点位是推荐人点位的第三层
iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail,
rangeTableName, rangeDetailTableName, BonusConstants.POINT_37);
// 当前新子点位填充完成进入下一个新子点位
continue newPointInt;
} else if (null == parentRetailDetail.getPointMember38()) {
iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_38,
newRetailDetail.getPkMember(), newRetailDetail.getChildNode());
// 新点位是推荐人点位的第三层
iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail,
rangeTableName, rangeDetailTableName, BonusConstants.POINT_38);
// 当前新子点位填充完成进入下一个新子点位
continue newPointInt;
}
}
}
} }
} }
} }

View File

@ -47,7 +47,7 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl<CuMemberBonusStag
@Override @Override
public void batchInsertCuMemberBonusStage(List<CuMemberBonusStage> cuMemberBonusStageList, Set<Long> memberIdSet) { public void batchInsertCuMemberBonusStage(List<CuMemberBonusStage> cuMemberBonusStageList, Set<Long> memberIdSet) {
if (CollectionUtil.isEmpty(cuMemberBonusStageList)) { if (cuMemberBonusStageList.size() == 0) {
return; return;
} }
List<CuMemberBonusStage> addMemberBonusStageList = new ArrayList<>(); List<CuMemberBonusStage> addMemberBonusStageList = new ArrayList<>();
@ -89,8 +89,19 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl<CuMemberBonusStag
return cuMemberBonusStage; return cuMemberBonusStage;
} }
private void initFieldMap() {
BonusConstants.FIELD_MAP = new HashMap<>();
for (String suffix : BonusConstants.FIELD_LIST) {
BonusConstants.FIELD_MAP.put(BonusConstants.POINT_MEMBER_FIELD_NAME + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, BonusConstants.POINT_MEMBER_FIELD_NAME + suffix));
BonusConstants.FIELD_MAP.put(BonusConstants.POINT_FIELD_NAME + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, BonusConstants.POINT_FIELD_NAME + suffix));
}
}
@Override @Override
public String fillChildNode(CuMemberRetailDetail cuMemberRetailDetail, CuMemberRetailDetail newRetailDetail) { public String fillChildNode(CuMemberRetailDetail cuMemberRetailDetail, CuMemberRetailDetail newRetailDetail) {
if (ObjectUtil.isEmpty(BonusConstants.FIELD_MAP)) {
initFieldMap();
}
for (String suffix : BonusConstants.FIELD_LIST) { for (String suffix : BonusConstants.FIELD_LIST) {
Field pointMemberField = BonusConstants.FIELD_MAP.get(BonusConstants.POINT_MEMBER_FIELD_NAME + suffix); Field pointMemberField = BonusConstants.FIELD_MAP.get(BonusConstants.POINT_MEMBER_FIELD_NAME + suffix);
Field pointField = BonusConstants.FIELD_MAP.get(BonusConstants.POINT_FIELD_NAME + suffix); Field pointField = BonusConstants.FIELD_MAP.get(BonusConstants.POINT_FIELD_NAME + suffix);
@ -98,7 +109,6 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl<CuMemberBonusStag
if (ObjectUtil.isEmpty(pointFieldValue)) { if (ObjectUtil.isEmpty(pointFieldValue)) {
ReflectUtil.setFieldValue(cuMemberRetailDetail, pointMemberField, newRetailDetail.getPkMember()); ReflectUtil.setFieldValue(cuMemberRetailDetail, pointMemberField, newRetailDetail.getPkMember());
ReflectUtil.setFieldValue(cuMemberRetailDetail, pointField, newRetailDetail.getChildNode()); ReflectUtil.setFieldValue(cuMemberRetailDetail, pointField, newRetailDetail.getChildNode());
ReflectUtil.setFieldValue(cuMemberRetailDetail, BonusConstants.UPDATE_FLAG, 0);
return suffix; return suffix;
} }
} }
@ -108,8 +118,8 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl<CuMemberBonusStag
/** /**
* 向上填充子点位 * 向上填充子点位
*/ */
private void fillUpTargetRetailDetail(CuMemberRetailDetail targetRetailDetail, CuMemberRetailDetail newParentRetailDetail, public void fillUpTargetRetailDetail(CuMemberRetailDetail targetRetailDetail, CuMemberRetailDetail newParentRetailDetail,
CuMemberRetailDetail newRetailDetail, String node) { CuMemberRetailDetail newRetailDetail, String node) {
if (null == targetRetailDetail) { if (null == targetRetailDetail) {
return; return;
} }
@ -122,60 +132,80 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl<CuMemberBonusStag
switch (suffix) { switch (suffix) {
case BonusConstants.POINT_11: case BonusConstants.POINT_11:
if (BonusConstants.POINT_11.equals(node)) { if (BonusConstants.POINT_11.equals(node)) {
this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_21, newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_21, newRetailDetail.getPkMember());
ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_21, newRetailDetail.getChildNode());
} else if (BonusConstants.POINT_12.equals(node)) { } else if (BonusConstants.POINT_12.equals(node)) {
this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_22, newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_22, newRetailDetail.getPkMember());
ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_22, newRetailDetail.getChildNode());
} else if (BonusConstants.POINT_21.equals(node)) { } else if (BonusConstants.POINT_21.equals(node)) {
this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_31, newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_31, newRetailDetail.getPkMember());
ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_31, newRetailDetail.getChildNode());
} else if (BonusConstants.POINT_22.equals(node)) { } else if (BonusConstants.POINT_22.equals(node)) {
this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_32, newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_32, newRetailDetail.getPkMember());
ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_32, newRetailDetail.getChildNode());
} else if (BonusConstants.POINT_23.equals(node)) { } else if (BonusConstants.POINT_23.equals(node)) {
this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_33, newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_33, newRetailDetail.getPkMember());
ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_33, newRetailDetail.getChildNode());
} else if (BonusConstants.POINT_24.equals(node)) { } else if (BonusConstants.POINT_24.equals(node)) {
this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_34, newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_34, newRetailDetail.getPkMember());
ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_34, newRetailDetail.getChildNode());
} }
break; break;
case BonusConstants.POINT_12: case BonusConstants.POINT_12:
if (BonusConstants.POINT_11.equals(node)) { if (BonusConstants.POINT_11.equals(node)) {
this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_23, newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_23, newRetailDetail.getPkMember());
ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_23, newRetailDetail.getChildNode());
} else if (BonusConstants.POINT_12.equals(node)) { } else if (BonusConstants.POINT_12.equals(node)) {
this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_24, newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_24, newRetailDetail.getPkMember());
ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_24, newRetailDetail.getChildNode());
} else if (BonusConstants.POINT_21.equals(node)) { } else if (BonusConstants.POINT_21.equals(node)) {
this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_35, newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_35, newRetailDetail.getPkMember());
ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_35, newRetailDetail.getChildNode());
} else if (BonusConstants.POINT_22.equals(node)) { } else if (BonusConstants.POINT_22.equals(node)) {
this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_36, newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_36, newRetailDetail.getPkMember());
ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_36, newRetailDetail.getChildNode());
} else if (BonusConstants.POINT_23.equals(node)) { } else if (BonusConstants.POINT_23.equals(node)) {
this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_37, newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_37, newRetailDetail.getPkMember());
ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_37, newRetailDetail.getChildNode());
} else if (BonusConstants.POINT_24.equals(node)) { } else if (BonusConstants.POINT_24.equals(node)) {
this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_38, newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_38, newRetailDetail.getPkMember());
ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_38, newRetailDetail.getChildNode());
} }
break; break;
case BonusConstants.POINT_21: case BonusConstants.POINT_21:
if (BonusConstants.POINT_11.equals(node)) { if (BonusConstants.POINT_11.equals(node)) {
this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_31, newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_31, newRetailDetail.getPkMember());
ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_31, newRetailDetail.getChildNode());
} else if (BonusConstants.POINT_12.equals(node)) { } else if (BonusConstants.POINT_12.equals(node)) {
this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_32, newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_32, newRetailDetail.getPkMember());
ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_32, newRetailDetail.getChildNode());
} }
break; break;
case BonusConstants.POINT_22: case BonusConstants.POINT_22:
if (BonusConstants.POINT_11.equals(node)) { if (BonusConstants.POINT_11.equals(node)) {
this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_33, newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_33, newRetailDetail.getPkMember());
ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_33, newRetailDetail.getChildNode());
} else if (BonusConstants.POINT_12.equals(node)) { } else if (BonusConstants.POINT_12.equals(node)) {
this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_34, newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_34, newRetailDetail.getPkMember());
ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_34, newRetailDetail.getChildNode());
} }
break; break;
case BonusConstants.POINT_23: case BonusConstants.POINT_23:
if (BonusConstants.POINT_11.equals(node)) { if (BonusConstants.POINT_11.equals(node)) {
this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_35, newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_35, newRetailDetail.getPkMember());
ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_35, newRetailDetail.getChildNode());
} else if (BonusConstants.POINT_12.equals(node)) { } else if (BonusConstants.POINT_12.equals(node)) {
this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_36, newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_36, newRetailDetail.getPkMember());
ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_36, newRetailDetail.getChildNode());
} }
break; break;
case BonusConstants.POINT_24: case BonusConstants.POINT_24:
if (BonusConstants.POINT_11.equals(node)) { if (BonusConstants.POINT_11.equals(node)) {
this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_37, newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_37, newRetailDetail.getPkMember());
ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_37, newRetailDetail.getChildNode());
} else if (BonusConstants.POINT_12.equals(node)) { } else if (BonusConstants.POINT_12.equals(node)) {
this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_38, newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_38, newRetailDetail.getPkMember());
ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_38, newRetailDetail.getChildNode());
} }
break; break;
} }
@ -187,8 +217,8 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl<CuMemberBonusStag
/** /**
* 向下填充子点位 * 向下填充子点位
*/ */
private void fillDownTargetRetailDetail(CuMemberRetailDetail targetRetailDetail, CuMemberRetailDetail newRetailDetail, public void fillDownTargetRetailDetail(CuMemberRetailDetail targetRetailDetail, CuMemberRetailDetail newRetailDetail,
String node, Integer level) { String node, Integer level) {
if (null == targetRetailDetail) { if (null == targetRetailDetail) {
return; return;
} }
@ -199,43 +229,38 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl<CuMemberBonusStag
|| BonusConstants.POINT_33.equals(node) || BonusConstants.POINT_33.equals(node)
|| BonusConstants.POINT_35.equals(node) || BonusConstants.POINT_35.equals(node)
|| BonusConstants.POINT_37.equals(node)) { || BonusConstants.POINT_37.equals(node)) {
this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_11, newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); targetRetailDetail.setPointMember11(newRetailDetail.getPkMember());
targetRetailDetail.setPoint11(newRetailDetail.getChildNode());
} else if (BonusConstants.POINT_22.equals(node) } else if (BonusConstants.POINT_22.equals(node)
|| BonusConstants.POINT_24.equals(node) || BonusConstants.POINT_24.equals(node)
|| BonusConstants.POINT_32.equals(node) || BonusConstants.POINT_32.equals(node)
|| BonusConstants.POINT_34.equals(node) || BonusConstants.POINT_34.equals(node)
|| BonusConstants.POINT_36.equals(node) || BonusConstants.POINT_36.equals(node)
|| BonusConstants.POINT_38.equals(node)) { || BonusConstants.POINT_38.equals(node)) {
this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_12, newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); targetRetailDetail.setPointMember12(newRetailDetail.getPkMember());
targetRetailDetail.setPoint12(newRetailDetail.getChildNode());
} }
} else if (level.equals(2)) { } else if (level.equals(2)) {
if (BonusConstants.POINT_31.equals(node) if (BonusConstants.POINT_31.equals(node)
|| BonusConstants.POINT_35.equals(node)) { || BonusConstants.POINT_35.equals(node)) {
this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_21, newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); targetRetailDetail.setPointMember21(newRetailDetail.getPkMember());
targetRetailDetail.setPoint21(newRetailDetail.getChildNode());
} else if (BonusConstants.POINT_32.equals(node) } else if (BonusConstants.POINT_32.equals(node)
|| BonusConstants.POINT_36.equals(node)) { || BonusConstants.POINT_36.equals(node)) {
this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_22, newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); targetRetailDetail.setPointMember22(newRetailDetail.getPkMember());
targetRetailDetail.setPoint22(newRetailDetail.getChildNode());
} else if (BonusConstants.POINT_33.equals(node) } else if (BonusConstants.POINT_33.equals(node)
|| BonusConstants.POINT_37.equals(node)) { || BonusConstants.POINT_37.equals(node)) {
this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_23, newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); targetRetailDetail.setPointMember23(newRetailDetail.getPkMember());
targetRetailDetail.setPoint23(newRetailDetail.getChildNode());
} else if (BonusConstants.POINT_34.equals(node) } else if (BonusConstants.POINT_34.equals(node)
|| BonusConstants.POINT_38.equals(node)) { || BonusConstants.POINT_38.equals(node)) {
this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_24, newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); targetRetailDetail.setPointMember24(newRetailDetail.getPkMember());
targetRetailDetail.setPoint24(newRetailDetail.getChildNode());
} }
} }
} }
/**
* 填充点位
*/
@Override
public void fillRetailDetail(CuMemberRetailDetail targetRetailDetail, String point,
Long pkMember, Integer childNode) {
ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + point, pkMember);
ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + point, childNode);
ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.UPDATE_FLAG, 0);
}
@Override @Override
public void handlePointFirst(Map<Long, CuMemberRetailRangeExt> memberRangeExtMap, public void handlePointFirst(Map<Long, CuMemberRetailRangeExt> memberRangeExtMap,
CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail,
@ -267,25 +292,22 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl<CuMemberBonusStag
} }
// 新点位的上第二层 // 新点位的上第二层
newRetailDetail.setPointMemberSecond(newParentRetailDetail.getPointMemberFirst());
newRetailDetail.setPointSecond(newParentRetailDetail.getPointFirst());
CuMemberRetailRangeExt firstMemberRetail = memberRangeExtMap.get(newParentRetailDetail.getPointMemberFirst()); CuMemberRetailRangeExt firstMemberRetail = memberRangeExtMap.get(newParentRetailDetail.getPointMemberFirst());
if (null != firstMemberRetail) { if (null != firstMemberRetail) {
CuMemberRetailDetail memberDetail = firstMemberRetail.getOneDetailMap().get(newParentRetailDetail.getPointFirst()); CuMemberRetailDetail memberDetail = firstMemberRetail.getOneDetailMap().get(newParentRetailDetail.getPointFirst());
if (null != memberDetail) { this.fillUpTargetRetailDetail(memberDetail, newParentRetailDetail, newRetailDetail, newNode);
newRetailDetail.setPointMemberSecond(newParentRetailDetail.getPointMemberFirst());
newRetailDetail.setPointSecond(newParentRetailDetail.getPointFirst());
this.fillUpTargetRetailDetail(memberDetail, newParentRetailDetail, newRetailDetail, newNode);
}
} }
// 新点位的上第三层 // 新点位的上第三层
newRetailDetail.setPointMemberThird(newParentRetailDetail.getPointMemberSecond());
newRetailDetail.setPointThird(newParentRetailDetail.getPointSecond());
CuMemberRetailRangeExt secondMemberRetail = memberRangeExtMap.get(newParentRetailDetail.getPointMemberSecond()); CuMemberRetailRangeExt secondMemberRetail = memberRangeExtMap.get(newParentRetailDetail.getPointMemberSecond());
if (null != secondMemberRetail) { if (null != secondMemberRetail) {
CuMemberRetailDetail memberDetail = secondMemberRetail.getOneDetailMap().get(newParentRetailDetail.getPointSecond()); CuMemberRetailDetail memberDetail = secondMemberRetail.getOneDetailMap().get(newParentRetailDetail.getPointSecond());
if (null != memberDetail) { this.fillUpTargetRetailDetail(memberDetail, newParentRetailDetail, newRetailDetail, newNode);
newRetailDetail.setPointMemberThird(newParentRetailDetail.getPointMemberSecond());
newRetailDetail.setPointThird(newParentRetailDetail.getPointSecond());
this.fillUpTargetRetailDetail(memberDetail, newParentRetailDetail, newRetailDetail, newNode);
}
} }
} }
@ -300,7 +322,7 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl<CuMemberBonusStag
List<Long> queryMemberList = new ArrayList<>(2); List<Long> queryMemberList = new ArrayList<>(2);
// 获取上第三层结算数据 // 获取上第三层结算数据
CuMemberRetailRangeExt memberUpFirst = memberRangeExtMap.get(newParentRetailDetail.getPointMemberFirst()); CuMemberRetailRangeExt memberUpFirst = memberRangeExtMap.get(newParentRetailDetail.getPointMemberFirst());
if (null == memberUpFirst && null != newParentRetailDetail.getPointMemberFirst()) { if (null == memberUpFirst) {
queryMemberList.add(newParentRetailDetail.getPointMemberFirst()); queryMemberList.add(newParentRetailDetail.getPointMemberFirst());
} }
// 获取上第一层结算数据 // 获取上第一层结算数据
@ -319,7 +341,7 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl<CuMemberBonusStag
break; break;
} }
CuMemberRetailRangeExt memberDownFirst = memberRangeExtMap.get(downFirstMember); CuMemberRetailRangeExt memberDownFirst = memberRangeExtMap.get(downFirstMember);
if (null == memberDownFirst && null != downFirstMember) { if (null == memberDownFirst) {
queryMemberList.add(downFirstMember); queryMemberList.add(downFirstMember);
} }
if (CollectionUtil.isNotEmpty(queryMemberList)) { if (CollectionUtil.isNotEmpty(queryMemberList)) {
@ -335,14 +357,12 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl<CuMemberBonusStag
} }
// 新点位的上第三层 // 新点位的上第三层
newRetailDetail.setPointMemberThird(newParentRetailDetail.getPointMemberFirst());
newRetailDetail.setPointThird(newParentRetailDetail.getPointFirst());
CuMemberRetailRangeExt thirdMemberRetail = memberRangeExtMap.get(newParentRetailDetail.getPointMemberFirst()); CuMemberRetailRangeExt thirdMemberRetail = memberRangeExtMap.get(newParentRetailDetail.getPointMemberFirst());
if (null != thirdMemberRetail) { if (null != thirdMemberRetail) {
CuMemberRetailDetail memberDetail = thirdMemberRetail.getOneDetailMap().get(newParentRetailDetail.getPointFirst()); CuMemberRetailDetail memberDetail = thirdMemberRetail.getOneDetailMap().get(newParentRetailDetail.getPointFirst());
if (null != memberDetail) { this.fillUpTargetRetailDetail(memberDetail, newParentRetailDetail, newRetailDetail, newNode);
newRetailDetail.setPointMemberThird(newParentRetailDetail.getPointMemberFirst());
newRetailDetail.setPointThird(newParentRetailDetail.getPointFirst());
this.fillUpTargetRetailDetail(memberDetail, newParentRetailDetail, newRetailDetail, newNode);
}
} }
// 新点位的上第一层 // 新点位的上第一层
@ -405,11 +425,11 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl<CuMemberBonusStag
break; break;
} }
CuMemberRetailRangeExt memberDownSecond = memberRangeExtMap.get(downSecondMember); CuMemberRetailRangeExt memberDownSecond = memberRangeExtMap.get(downSecondMember);
if (null == memberDownSecond && null != downSecondMember) { if (null == memberDownSecond) {
queryMemberList.add(downSecondMember); queryMemberList.add(downSecondMember);
} }
CuMemberRetailRangeExt memberDownFirst = memberRangeExtMap.get(downFirstMember); CuMemberRetailRangeExt memberDownFirst = memberRangeExtMap.get(downFirstMember);
if (null == memberDownFirst && null != downFirstMember) { if (null == memberDownFirst) {
queryMemberList.add(downFirstMember); queryMemberList.add(downFirstMember);
} }
if (CollectionUtil.isNotEmpty(queryMemberList)) { if (CollectionUtil.isNotEmpty(queryMemberList)) {

View File

@ -1,11 +1,7 @@
package com.hzs.bonus.constant; package com.hzs.bonus.constant;
import cn.hutool.core.util.ReflectUtil;
import com.hzs.common.domain.member.achieve.CuMemberRetailDetail;
import java.lang.reflect.Field; import java.lang.reflect.Field;
import java.util.Arrays; import java.util.Arrays;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@ -29,21 +25,9 @@ public class BonusConstants {
public static final List<String> FIELD_LIST = Arrays.asList(POINT_11, POINT_12, POINT_21, POINT_22, POINT_23, POINT_24, public static final List<String> FIELD_LIST = Arrays.asList(POINT_11, POINT_12, POINT_21, POINT_22, POINT_23, POINT_24,
POINT_31, POINT_32, POINT_33, POINT_34, POINT_35, POINT_36, POINT_37, POINT_38); POINT_31, POINT_32, POINT_33, POINT_34, POINT_35, POINT_36, POINT_37, POINT_38);
// 会员ID字段
public static final String POINT_MEMBER_FIELD_NAME = "pointMember";
// 会员子点位字段
public static final String POINT_FIELD_NAME = "point"; public static final String POINT_FIELD_NAME = "point";
// 入库标记字段 public static final String POINT_MEMBER_FIELD_NAME = "pointMember";
public static final String UPDATE_FLAG = "updateBool";
public static Map<String, Field> FIELD_MAP = null; public static Map<String, Field> FIELD_MAP = null;
static {
BonusConstants.FIELD_MAP = new HashMap<>();
for (String suffix : BonusConstants.FIELD_LIST) {
BonusConstants.FIELD_MAP.put(BonusConstants.POINT_MEMBER_FIELD_NAME + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, BonusConstants.POINT_MEMBER_FIELD_NAME + suffix));
BonusConstants.FIELD_MAP.put(BonusConstants.POINT_FIELD_NAME + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, BonusConstants.POINT_FIELD_NAME + suffix));
}
}
} }

View File

@ -299,32 +299,32 @@
stage_status NUMBER(1) default 1 not null, stage_status NUMBER(1) default 1 not null,
stage_date DATE, stage_date DATE,
point_11 NUMBER(8), point_11 NUMBER(8),
point_member_11 NUMBER(20),
point_12 NUMBER(8), point_12 NUMBER(8),
point_member_12 NUMBER(20),
point_21 NUMBER(8), point_21 NUMBER(8),
point_member_21 NUMBER(20),
point_22 NUMBER(8), point_22 NUMBER(8),
point_member_22 NUMBER(20),
point_23 NUMBER(8), point_23 NUMBER(8),
point_member_23 NUMBER(20),
point_24 NUMBER(8), point_24 NUMBER(8),
point_member_24 NUMBER(20),
point_31 NUMBER(8), point_31 NUMBER(8),
point_member_31 NUMBER(20),
point_32 NUMBER(8), point_32 NUMBER(8),
point_member_32 NUMBER(20),
point_33 NUMBER(8), point_33 NUMBER(8),
point_member_33 NUMBER(20),
point_34 NUMBER(8), point_34 NUMBER(8),
point_member_34 NUMBER(20),
point_35 NUMBER(8), point_35 NUMBER(8),
point_member_35 NUMBER(20),
point_36 NUMBER(8), point_36 NUMBER(8),
point_member_36 NUMBER(20),
point_37 NUMBER(8), point_37 NUMBER(8),
point_member_37 NUMBER(20),
point_38 NUMBER(8), point_38 NUMBER(8),
point_member_11 NUMBER(20),
point_member_12 NUMBER(20),
point_member_21 NUMBER(20),
point_member_22 NUMBER(20),
point_member_23 NUMBER(20),
point_member_24 NUMBER(20),
point_member_31 NUMBER(20),
point_member_32 NUMBER(20),
point_member_33 NUMBER(20),
point_member_34 NUMBER(20),
point_member_35 NUMBER(20),
point_member_36 NUMBER(20),
point_member_37 NUMBER(20),
point_member_38 NUMBER(20), point_member_38 NUMBER(20),
point_type NUMBER(1) default 0 not null, point_type NUMBER(1) default 0 not null,
point_gift NUMBER(1) default 0 not null, point_gift NUMBER(1) default 0 not null,

View File

@ -90,7 +90,7 @@
</if> </if>
and so.pay_time >= #{startDate} and so.pay_time >= #{startDate}
and so.pay_time &lt; #{endDate} and so.pay_time &lt; #{endDate}
order by pay_time order by pay_time desc
</select> </select>

View File

@ -10,7 +10,12 @@ import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
/** /**
* <p>
* 统计活跃会员 * 统计活跃会员
* </p>
*
* @author zhangjing
* @since 2023-05-17
*/ */
@Data @Data
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)

View File

@ -0,0 +1,59 @@
package com.hzs.common.domain.member.achieve;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableName;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableField;
import com.hzs.common.core.web.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* <p>
* 极差月新增业绩
* </p>
*
* @author hzs
* @since 2024-10-28
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("CU_MEMBER_RANGE_MONTH")
public class CuMemberRangeMonth extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* 会员ID
*/
@TableField("PK_MEMBER")
private Long pkMember;
/**
* 期数
*/
@TableField("PERIOD")
private Integer period;
/**
* 结算日期
*/
@TableField("SETTLE_DATE")
private Date settleDate;
/**
* 个人新增PV
*/
@TableField("NEW_PV")
private BigDecimal newPv;
/**
* 团队新增PV
*/
@TableField("NEW_TEAM_PV")
private BigDecimal newTeamPv;
}

View File

@ -280,10 +280,5 @@ public class CuMemberRetailDetail {
@TableField("POINT_MEMBER_THIRD") @TableField("POINT_MEMBER_THIRD")
private Long pointMemberThird; private Long pointMemberThird;
/**
* 更新标记不为null则需要入库
*/
@TableField(exist = false)
private Integer updateBool;
} }