Merge remote-tracking branch 'origin/dev' into dev
This commit is contained in:
commit
01d77cdf10
|
@ -37,6 +37,11 @@ public class RetailMemberDataDTO implements Serializable {
|
||||||
*/
|
*/
|
||||||
private Integer pkMaxAwards;
|
private Integer pkMaxAwards;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 分红奖衔
|
||||||
|
*/
|
||||||
|
private Integer pkRangeAwards;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 国家名称
|
* 国家名称
|
||||||
*/
|
*/
|
||||||
|
@ -86,6 +91,15 @@ public class RetailMemberDataDTO implements Serializable {
|
||||||
*/
|
*/
|
||||||
private String maxAwardsIcon;
|
private String maxAwardsIcon;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 分红奖衔名称
|
||||||
|
*/
|
||||||
|
private String rangeAwardsVal;
|
||||||
|
/**
|
||||||
|
* 分红奖衔图标
|
||||||
|
*/
|
||||||
|
private String rangeAwardsIcon;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 币种图标
|
* 币种图标
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -79,7 +79,7 @@ public interface CuMemberRetailRangeMapper extends BaseMapper<CuMemberRetailRang
|
||||||
/**
|
/**
|
||||||
* 更新购买订单的等级
|
* 更新购买订单的等级
|
||||||
*/
|
*/
|
||||||
void mergeMemberRetailGradeByMember(@Param("rangeTableName") String rangeTableName, @Param("pkMember") Long pkMember);
|
void mergeMemberRetailGradeByMember(@Param("rangeTableName") String rangeTableName, @Param("pkMember") Long pkMember, @Param("isToday") Integer isToday);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据会员查询会员上的所有网体
|
* 根据会员查询会员上的所有网体
|
||||||
|
@ -119,7 +119,7 @@ public interface CuMemberRetailRangeMapper extends BaseMapper<CuMemberRetailRang
|
||||||
List<CuMemberRetailRangeExt> queryCuMemberSecondRangeYes(@Param("rangeTableName") String rangeTableName, @Param("pkMember") Long pkMember);
|
List<CuMemberRetailRangeExt> queryCuMemberSecondRangeYes(@Param("rangeTableName") String rangeTableName, @Param("pkMember") Long pkMember);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 推荐推荐人查询推荐人下的所有部门, 该订单日期之前的算他的网体
|
* 秒结:推荐人查询推荐人下的所有部门, 该订单日期之前的算他的网体
|
||||||
*/
|
*/
|
||||||
List<CuMemberRetailRangeExt> queryCuMemberSecondRangeExtByParent(@Param("rangeTableName") String rangeTableName, @Param("secondTableName") String secondTableName, @Param("pkMember") Long pkMember);
|
List<CuMemberRetailRangeExt> queryCuMemberSecondRangeExtByParent(@Param("rangeTableName") String rangeTableName, @Param("secondTableName") String secondTableName, @Param("pkMember") Long pkMember);
|
||||||
|
|
||||||
|
|
|
@ -124,7 +124,7 @@ public interface ICuMemberRetailRangeService extends IService<CuMemberRetailRang
|
||||||
/**
|
/**
|
||||||
* 更新购买订单的等级
|
* 更新购买订单的等级
|
||||||
*/
|
*/
|
||||||
void mergeMemberRetailGradeByMember(String rangeTableName, Long pkMember);
|
void mergeMemberRetailGradeByMember(String rangeTableName, Long pkMember, Integer isToday);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 更新会员树的累计业绩
|
* 更新会员树的累计业绩
|
||||||
|
|
|
@ -177,8 +177,8 @@ public class CuMemberRetailRangeServiceImpl extends ServiceImpl<CuMemberRetailRa
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void mergeMemberRetailGradeByMember(String rangeTableName, Long pkMember) {
|
public void mergeMemberRetailGradeByMember(String rangeTableName, Long pkMember, Integer isToday) {
|
||||||
baseMapper.mergeMemberRetailGradeByMember(rangeTableName, pkMember);
|
baseMapper.mergeMemberRetailGradeByMember(rangeTableName, pkMember, isToday);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -145,13 +145,13 @@ public class CuMemberTreeServiceImpl extends ServiceImpl<CuMemberTreeMapper, CuM
|
||||||
@Override
|
@Override
|
||||||
public void updateBackCuMemberRetailRangeAward(String rangeTableName, Integer period) {
|
public void updateBackCuMemberRetailRangeAward(String rangeTableName, Integer period) {
|
||||||
baseMapper.updateBackCuMemberRetailRangeAward(rangeTableName, period, EAwardsType.RANGE_TYPE.getValue());
|
baseMapper.updateBackCuMemberRetailRangeAward(rangeTableName, period, EAwardsType.RANGE_TYPE.getValue());
|
||||||
// baseMapper.updateBackCuMemberRetailRangeAward(rangeTableName, period, EAwardsType.SHARE_TYPE.getValue());
|
baseMapper.updateBackCuMemberRetailRangeAward(rangeTableName, period, EAwardsType.SHARE_TYPE.getValue());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void updateCuMemberRetailRangeAwardByDate(String rangeTableName, Date settleDate) {
|
public void updateCuMemberRetailRangeAwardByDate(String rangeTableName, Date settleDate) {
|
||||||
baseMapper.updateCuMemberRetailRangeAwardByDate(rangeTableName, settleDate, EAwardsType.RANGE_TYPE.getValue());
|
baseMapper.updateCuMemberRetailRangeAwardByDate(rangeTableName, settleDate, EAwardsType.RANGE_TYPE.getValue());
|
||||||
// baseMapper.updateCuMemberRetailRangeAwardByDate(rangeTableName, settleDate, EAwardsType.SHARE_TYPE.getValue());
|
baseMapper.updateCuMemberRetailRangeAwardByDate(rangeTableName, settleDate, EAwardsType.SHARE_TYPE.getValue());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -41,13 +41,13 @@ public class CuMemberServiceImpl extends ServiceImpl<CuMemberMapper, CuMember> i
|
||||||
@Override
|
@Override
|
||||||
public void updateCuMemberRetailRangeByPeriod(List<CuMemberAwards> cuMemberAwardsList, Integer period) {
|
public void updateCuMemberRetailRangeByPeriod(List<CuMemberAwards> cuMemberAwardsList, Integer period) {
|
||||||
baseMapper.updateCuMemberRetailAwardsByPeriod(period, EAwardsType.RANGE_TYPE.getValue());
|
baseMapper.updateCuMemberRetailAwardsByPeriod(period, EAwardsType.RANGE_TYPE.getValue());
|
||||||
// baseMapper.updateCuMemberRetailAwardsByPeriod(period, EAwardsType.SHARE_TYPE.getValue());
|
baseMapper.updateCuMemberRetailAwardsByPeriod(period, EAwardsType.SHARE_TYPE.getValue());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void updateCuMemberRetailRangeByList(List<CuMemberAwards> cuMemberAwardsList, Integer period) {
|
public void updateCuMemberRetailRangeByList(List<CuMemberAwards> cuMemberAwardsList, Integer period) {
|
||||||
baseMapper.updateCuMemberRetailRangeByList(cuMemberAwardsList, period, EAwardsType.RANGE_TYPE.getValue());
|
baseMapper.updateCuMemberRetailRangeByList(cuMemberAwardsList, period, EAwardsType.RANGE_TYPE.getValue());
|
||||||
// baseMapper.updateCuMemberRetailRangeByList(cuMemberAwardsList, period, EAwardsType.SHARE_TYPE.getValue());
|
baseMapper.updateCuMemberRetailRangeByList(cuMemberAwardsList, period, EAwardsType.SHARE_TYPE.getValue());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -58,6 +58,7 @@ public class CuMemberServiceImpl extends ServiceImpl<CuMemberMapper, CuMember> i
|
||||||
@Override
|
@Override
|
||||||
public void updateCuMemberMinAwardsByList(List<CuMemberAwards> cuMemberAwardsList, Integer period) {
|
public void updateCuMemberMinAwardsByList(List<CuMemberAwards> cuMemberAwardsList, Integer period) {
|
||||||
baseMapper.updateCuMemberRetailRangeByList(cuMemberAwardsList, period, EAwardsType.RANGE_TYPE.getValue());
|
baseMapper.updateCuMemberRetailRangeByList(cuMemberAwardsList, period, EAwardsType.RANGE_TYPE.getValue());
|
||||||
|
baseMapper.updateCuMemberRetailRangeByList(cuMemberAwardsList, period, EAwardsType.SHARE_TYPE.getValue());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -88,13 +89,13 @@ public class CuMemberServiceImpl extends ServiceImpl<CuMemberMapper, CuMember> i
|
||||||
@Override
|
@Override
|
||||||
public void updateBackCuMemberRetailRangeAward(Integer period) {
|
public void updateBackCuMemberRetailRangeAward(Integer period) {
|
||||||
baseMapper.updateBackCuMemberRetailRangeAward(period, EAwardsType.RANGE_TYPE.getValue());
|
baseMapper.updateBackCuMemberRetailRangeAward(period, EAwardsType.RANGE_TYPE.getValue());
|
||||||
// baseMapper.updateBackCuMemberRetailRangeAward(period, EAwardsType.SHARE_TYPE.getValue());
|
baseMapper.updateBackCuMemberRetailRangeAward(period, EAwardsType.SHARE_TYPE.getValue());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void updateCuMemberRetailRangeAwardByDate(Date settleDate) {
|
public void updateCuMemberRetailRangeAwardByDate(Date settleDate) {
|
||||||
baseMapper.updateCuMemberRetailRangeAwardByDate(settleDate, EAwardsType.RANGE_TYPE.getValue());
|
baseMapper.updateCuMemberRetailRangeAwardByDate(settleDate, EAwardsType.RANGE_TYPE.getValue());
|
||||||
// baseMapper.updateCuMemberRetailRangeAwardByDate(settleDate, EAwardsType.SHARE_TYPE.getValue());
|
baseMapper.updateCuMemberRetailRangeAwardByDate(settleDate, EAwardsType.SHARE_TYPE.getValue());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -185,7 +185,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
if (cuMemberAwardsList.size() > 0) {
|
if (cuMemberAwardsList.size() > 0) {
|
||||||
// 插入会员奖衔升级记录
|
// 插入会员奖衔升级记录
|
||||||
iCuMemberAwardsService.saveBatchCuMemberAwards(cuMemberAwardsList);
|
iCuMemberAwardsService.saveBatchCuMemberAwards(cuMemberAwardsList);
|
||||||
// 更新会员奖衔 -- 荣誉级别(旧级差奖衔、旧荣誉奖衔(分红奖衔)
|
// 更新会员奖衔 -- 当月奖衔、分红奖衔
|
||||||
iCuMemberService.updateCuMemberRetailRangeByList(cuMemberAwardsList, currentPeriod);
|
iCuMemberService.updateCuMemberRetailRangeByList(cuMemberAwardsList, currentPeriod);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -197,7 +197,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 实时计算撤单数据(业绩、盒数、等级、奖衔、日奖)
|
* 撤单秒结:实时计算撤单数据(业绩、盒数、等级、奖衔、日奖)
|
||||||
*/
|
*/
|
||||||
void calculateCuMemberBackRetailIncome(SaOrderExt saOrderExt, BonusConfigDTO bonusConfigDTO,
|
void calculateCuMemberBackRetailIncome(SaOrderExt saOrderExt, BonusConfigDTO bonusConfigDTO,
|
||||||
String secondRangeTableName, int beforePeriod, int currentPeriod) {
|
String secondRangeTableName, int beforePeriod, int currentPeriod) {
|
||||||
|
@ -208,9 +208,9 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
if (DateUtils.isSameDay(saOrderExt.getPayTime(), DateUtils.currentDate())) {
|
if (DateUtils.isSameDay(saOrderExt.getPayTime(), DateUtils.currentDate())) {
|
||||||
// 当天撤单
|
// 当天撤单
|
||||||
// 实时网体查询血缘伞上会员,更新秒结表等级、奖衔
|
// 实时网体查询血缘伞上会员,更新秒结表等级、奖衔
|
||||||
iCuMemberRetailRangeService.mergeMemberRetailGradeByMember(secondRangeTableName, saOrderExt.getPkMember());
|
iCuMemberRetailRangeService.mergeMemberRetailGradeByMember(secondRangeTableName, saOrderExt.getPkMember(), EYesNo.YES.getIntValue());
|
||||||
// 恢复秒结表奖衔
|
// 恢复秒结表奖衔
|
||||||
iCuMemberAwardsService.mergeCuMemberBackAwards(secondRangeTableName, saOrderExt.getPkMember(), currentPeriod);
|
iCuMemberAwardsService.mergeCuMemberBackAwards(secondRangeTableName, saOrderExt.getPkMember(), currentPeriod, EYesNo.YES.getIntValue());
|
||||||
// 查询 昨天日结 + 今天秒结 血缘伞上+直推
|
// 查询 昨天日结 + 今天秒结 血缘伞上+直推
|
||||||
memberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeParent(rangeTableName, secondRangeTableName, saOrderExt.getPkMember());
|
memberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeParent(rangeTableName, secondRangeTableName, saOrderExt.getPkMember());
|
||||||
} else {
|
} else {
|
||||||
|
@ -219,9 +219,9 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
List<SaOrderExt> retailOrderList = new ArrayList<>();
|
List<SaOrderExt> retailOrderList = new ArrayList<>();
|
||||||
retailOrderList.add(saOrderExt);
|
retailOrderList.add(saOrderExt);
|
||||||
// 实时网体查询血缘上会员,更新订单支付日结表等级、奖衔
|
// 实时网体查询血缘上会员,更新订单支付日结表等级、奖衔
|
||||||
iCuMemberRetailRangeService.mergeMemberRetailGradeByMember(rangeTableName, saOrderExt.getPkMember());
|
iCuMemberRetailRangeService.mergeMemberRetailGradeByMember(rangeTableName, saOrderExt.getPkMember(), EYesNo.NO.getIntValue());
|
||||||
// 恢复日结表奖衔
|
// 恢复日结表奖衔
|
||||||
iCuMemberAwardsService.mergeCuMemberBackAwards(rangeTableName, saOrderExt.getPkMember(), beforePeriod);
|
iCuMemberAwardsService.mergeCuMemberBackAwards(rangeTableName, saOrderExt.getPkMember(), beforePeriod, EYesNo.NO.getIntValue());
|
||||||
// 查询 订单下单日结 血缘上会员结算数据
|
// 查询 订单下单日结 血缘上会员结算数据
|
||||||
memberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeParent(rangeTableName, retailOrderList);
|
memberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeParent(rangeTableName, retailOrderList);
|
||||||
}
|
}
|
||||||
|
@ -279,13 +279,17 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
Map<String, CuMemberGrade> cuMemberGradeMap = new HashMap<>();
|
Map<String, CuMemberGrade> cuMemberGradeMap = new HashMap<>();
|
||||||
// 会员奖衔map
|
// 会员奖衔map
|
||||||
Map<String, CuMemberAwards> cuMemberAwardsMap = new HashMap<>();
|
Map<String, CuMemberAwards> cuMemberAwardsMap = new HashMap<>();
|
||||||
|
// 会员分红奖衔map
|
||||||
|
Map<String, CuMemberAwards> cuMemberShareAwardsMap = new HashMap<>();
|
||||||
// 计算自己等级、奖衔等
|
// 计算自己等级、奖衔等
|
||||||
calculateBackGrade(currentPeriod, memberRangeExtMap, rangeTableName, saOrderExt, retailTeamGradeMap, retailAwardsMap, secondRangeTableName, cuMemberGradeMap, cuMemberAwardsMap, sourceMemberRangeExt);
|
calculateBackGrade(currentPeriod, memberRangeExtMap, rangeTableName, saOrderExt, retailTeamGradeMap, retailAwardsMap, secondRangeTableName,
|
||||||
|
cuMemberGradeMap, cuMemberAwardsMap, cuMemberShareAwardsMap, sourceMemberRangeExt);
|
||||||
// 计算团队业绩、盒数,计算等级、奖衔
|
// 计算团队业绩、盒数,计算等级、奖衔
|
||||||
List<CuMemberRetailRangeExt> cuMemberRetailRangeExtList = calculateRetailBackRangeGradeAwards(currentPeriod, memberRangeExtMap, rangeTableName, saOrderExt, retailTeamGradeMap, retailAwardsMap, secondRangeTableName, boxNum, cuMemberGradeMap, cuMemberAwardsMap);
|
List<CuMemberRetailRangeExt> cuMemberRetailRangeExtList = calculateRetailBackRangeGradeAwards(currentPeriod, memberRangeExtMap, rangeTableName, saOrderExt, retailTeamGradeMap, retailAwardsMap,
|
||||||
|
secondRangeTableName, boxNum, cuMemberGradeMap, cuMemberAwardsMap, cuMemberShareAwardsMap);
|
||||||
cuMemberRetailRangeExtList.add(sourceMemberRangeExt);
|
cuMemberRetailRangeExtList.add(sourceMemberRangeExt);
|
||||||
|
|
||||||
// 查询期间的等级和奖衔
|
// 查询期间的等级
|
||||||
List<CuMemberGrade> memberGradeList = iCuMemberGradeService.queryCuMemberGrade(cuMemberRetailRangeExtList, currentPeriod);
|
List<CuMemberGrade> memberGradeList = iCuMemberGradeService.queryCuMemberGrade(cuMemberRetailRangeExtList, currentPeriod);
|
||||||
// 查询最大的手动奖衔
|
// 查询最大的手动奖衔
|
||||||
List<CuMemberGrade> cuMemberGradeList1 = iCuMemberGradeService.queryCuMemberGradeByList(currentPeriod, memberRetailRangeExtList);
|
List<CuMemberGrade> cuMemberGradeList1 = iCuMemberGradeService.queryCuMemberGradeByList(currentPeriod, memberRetailRangeExtList);
|
||||||
|
@ -304,8 +308,9 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
cuMemberRetailRangeExt.setGradeValue(bdGrade.getGradeValue());
|
cuMemberRetailRangeExt.setGradeValue(bdGrade.getGradeValue());
|
||||||
}
|
}
|
||||||
BdGrade bdGrade = gradeIdMap.get(cuMemberRetailRangeExt.getPkGrade());
|
BdGrade bdGrade = gradeIdMap.get(cuMemberRetailRangeExt.getPkGrade());
|
||||||
if (bdGrade != null && bdGrade.getGradeValue() == EGrade.S_VIP.getValue() && cuMemberRetailRangeExt.getPkAwards() < 13) {
|
if (bdGrade != null && bdGrade.getGradeValue() == EGrade.S_VIP.getValue() && cuMemberRetailRangeExt.getPkAwards() < 11) {
|
||||||
cuMemberRetailRangeExt.setPkAwards(13);
|
// 如果是合伙人,奖衔肯定得有,不能置为无
|
||||||
|
cuMemberRetailRangeExt.setPkAwards(11);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -330,24 +335,47 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
iCuMemberService.updateCuMemberMinGradeByList(cuMemberGradeList, currentPeriod);
|
iCuMemberService.updateCuMemberMinGradeByList(cuMemberGradeList, currentPeriod);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// 当期的所有奖衔升级记录
|
||||||
List<CuMemberAwards> memberAwardsList = iCuMemberAwardsService.queryCuMemberAwards(cuMemberRetailRangeExtList, currentPeriod);
|
List<CuMemberAwards> memberAwardsList = iCuMemberAwardsService.queryCuMemberAwards(cuMemberRetailRangeExtList, currentPeriod);
|
||||||
if (memberAwardsList.size() > 0) {
|
if (memberAwardsList.size() > 0) {
|
||||||
|
// 当月奖衔升级记录
|
||||||
|
List<CuMemberAwards> pkAwardsList = memberAwardsList.stream().filter(tmpData -> tmpData.getAwardType() == EAwardsType.RANGE_TYPE.getValue()).collect(Collectors.toList());
|
||||||
|
// 分红奖衔升级记录
|
||||||
|
List<CuMemberAwards> pkShareAwardsList = memberAwardsList.stream().filter(tmpData -> tmpData.getAwardType() == EAwardsType.SHARE_TYPE.getValue()).collect(Collectors.toList());
|
||||||
|
|
||||||
List<CuMemberAwards> cuMemberAwardsList = new ArrayList<>();
|
List<CuMemberAwards> cuMemberAwardsList = new ArrayList<>();
|
||||||
for (CuMemberAwards cuMemberAwards : memberAwardsList) {
|
if (CollectionUtil.isNotEmpty(pkAwardsList)) {
|
||||||
String key = cuMemberAwards.getPkMember() + "_" + cuMemberAwards.getNewLevel();
|
for (CuMemberAwards cuMemberAwards : pkAwardsList) {
|
||||||
if (!cuMemberAwardsMap.containsKey(key)) {
|
String key = cuMemberAwards.getPkMember() + "_" + cuMemberAwards.getNewLevel();
|
||||||
CuMemberRetailRangeExt cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberAwards.getPkMember());
|
if (!cuMemberAwardsMap.containsKey(key)) {
|
||||||
if (cuMemberAwards.getOldLevel() < cuMemberRetailRangeExt.getPkAwards()) {
|
CuMemberRetailRangeExt cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberAwards.getPkMember());
|
||||||
cuMemberRetailRangeExt.setPkAwards(cuMemberAwards.getOldLevel());
|
if (cuMemberAwards.getOldLevel() < cuMemberRetailRangeExt.getPkAwards()) {
|
||||||
|
cuMemberRetailRangeExt.setPkAwards(cuMemberAwards.getOldLevel());
|
||||||
|
}
|
||||||
|
if (cuMemberRetailRangeExt.getGradeValue() == EGrade.S_VIP.getValue() && cuMemberRetailRangeExt.getPkAwards() < 11) {
|
||||||
|
// 如果是合伙人,奖衔肯定得有,不能置为无
|
||||||
|
cuMemberRetailRangeExt.setPkAwards(11);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
cuMemberAwards.setNewLevel(cuMemberAwards.getOldLevel());
|
||||||
|
cuMemberAwardsList.add(cuMemberAwards);
|
||||||
}
|
}
|
||||||
if (cuMemberRetailRangeExt.getGradeValue() == EGrade.S_VIP.getValue() && cuMemberRetailRangeExt.getPkAwards() < 13) {
|
|
||||||
cuMemberRetailRangeExt.setPkAwards(13);
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
cuMemberAwards.setNewLevel(cuMemberAwards.getOldLevel());
|
|
||||||
cuMemberAwardsList.add(cuMemberAwards);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (CollectionUtil.isNotEmpty(pkShareAwardsList)) {
|
||||||
|
for (CuMemberAwards cuMemberAwards : pkShareAwardsList) {
|
||||||
|
String key = cuMemberAwards.getPkMember() + "_" + cuMemberAwards.getNewLevel();
|
||||||
|
if (!cuMemberShareAwardsMap.containsKey(key)) {
|
||||||
|
CuMemberRetailRangeExt cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberAwards.getPkMember());
|
||||||
|
if (cuMemberAwards.getOldLevel() < cuMemberRetailRangeExt.getPkShareAwards()) {
|
||||||
|
cuMemberRetailRangeExt.setPkShareAwards(cuMemberAwards.getOldLevel());
|
||||||
|
}
|
||||||
|
cuMemberAwards.setNewLevel(cuMemberAwards.getOldLevel());
|
||||||
|
cuMemberAwardsList.add(cuMemberAwards);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// 处理等级、奖衔
|
// 处理等级、奖衔
|
||||||
if (cuMemberAwardsList.size() > 0) {
|
if (cuMemberAwardsList.size() > 0) {
|
||||||
// 删除会员奖衔记录
|
// 删除会员奖衔记录
|
||||||
|
@ -836,6 +864,9 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
return cuMemberAwardsList;
|
return cuMemberAwardsList;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 计算等级、奖衔
|
||||||
|
*/
|
||||||
private void calculateGradeAwards(Integer period, Map<Long, CuMemberRetailRangeExt> memberRangeExtMap, String rangeTableName,
|
private void calculateGradeAwards(Integer period, Map<Long, CuMemberRetailRangeExt> memberRangeExtMap, String rangeTableName,
|
||||||
SaOrderExt saOrderExt, Map<Integer, BdGrade> retailTeamGradeMap, Map<Integer, BdAwards> retailAwardsMap,
|
SaOrderExt saOrderExt, Map<Integer, BdGrade> retailTeamGradeMap, Map<Integer, BdAwards> retailAwardsMap,
|
||||||
String secondRangeTableName, List<CuMemberGrade> cuMemberGradeList, List<CuMemberAwards> cuMemberAwardsList,
|
String secondRangeTableName, List<CuMemberGrade> cuMemberGradeList, List<CuMemberAwards> cuMemberAwardsList,
|
||||||
|
@ -859,7 +890,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
// 验证小区,计算小区累计盒数 查询伞下会员
|
// 验证小区,计算小区累计盒数 查询伞下会员
|
||||||
List<CuMemberRetailRangeExt> cuMemberRangeExtList;
|
List<CuMemberRetailRangeExt> cuMemberRangeExtList;
|
||||||
if (secondRangeTableName != null) {
|
if (secondRangeTableName != null) {
|
||||||
// 秒结表关联昨日结算表,查询订单会员直推数据
|
// 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据
|
||||||
cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember());
|
cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember());
|
||||||
} else {
|
} else {
|
||||||
// 昨日结算表,查询订单会员直推数据
|
// 昨日结算表,查询订单会员直推数据
|
||||||
|
@ -903,108 +934,103 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// 计算奖衔(荣誉级别)
|
// 计算当月奖衔
|
||||||
while (true) {
|
while (true) {
|
||||||
// 当前实时奖衔值 + 5,获取下一个奖衔值
|
// 当月奖衔值 + 5,获取下一个奖衔值
|
||||||
int awardsValue = targetMemberRangeExt.getAwardsValue() + 5;
|
int awardsValue = targetMemberRangeExt.getAwardsValue() + 5;
|
||||||
if (targetMemberRangeExt.getGradeValue().equals(EGrade.S_VIP.getValue()) && retailAwardsMap.containsKey(awardsValue)) {
|
if (targetMemberRangeExt.getGradeValue().equals(EGrade.S_VIP.getValue()) && retailAwardsMap.containsKey(awardsValue)) {
|
||||||
// 等级达到V5 并且 存在下个奖衔,判断是否能升奖衔
|
// 等级达到V5 并且 存在下个奖衔,判断是否能升奖衔
|
||||||
BdAwards bdAwards = retailAwardsMap.get(awardsValue);
|
BdAwards bdAwards = retailAwardsMap.get(awardsValue);
|
||||||
// 先验证累计业绩
|
// 先验证累计业绩
|
||||||
// new 升级奖衔判断为当月累计业绩,累计业绩为团队业绩 + 个人消费业绩
|
// new 升级奖衔判断: 月累计业绩 = 本人月消费业绩 + 团队月消费业绩
|
||||||
if (ComputeUtil.compareValue(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthPv(), targetMemberRangeExt.getMonthConsumePv()), bdAwards.getTotalCheck())) {
|
if (ComputeUtil.compareValue(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthPv(), targetMemberRangeExt.getMonthConsumePv()), bdAwards.getTotalCheck())) {
|
||||||
// 累计业绩足够,即可升奖衔
|
// 累计业绩足够,即可升奖衔
|
||||||
// BigDecimal consumeBigPv = BigDecimal.ZERO;
|
|
||||||
// if (ComputeUtil.compareValue(bdAwards.getCommunityCheck())) {
|
|
||||||
// // 验证小区,计算小区业绩
|
|
||||||
// List<CuMemberRetailRangeExt> cuMemberRangeExtList;
|
|
||||||
// if (secondRangeTableName != null) {
|
|
||||||
// cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember());
|
|
||||||
// } else {
|
|
||||||
// cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeExtByParent(rangeTableName, targetMemberRangeExt.getPkMember());
|
|
||||||
// }
|
|
||||||
// for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRangeExtList) {
|
|
||||||
// if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) {
|
|
||||||
// cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember());
|
|
||||||
// }
|
|
||||||
// BigDecimal consumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getTeamMonthPv());
|
|
||||||
// if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) {
|
|
||||||
// consumeBigPv = consumePv;
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// BigDecimal smallAreaPv = ComputeUtil.computeSubtract(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthPv(), targetMemberRangeExt.getMonthConsumePv()), consumeBigPv);
|
|
||||||
// if (ComputeUtil.compareValue(smallAreaPv, bdAwards.getCommunityCheck())) {
|
|
||||||
cuMemberAwardsList.add(getCuMemberRetailAwards(targetMemberRangeExt, period, saOrderExt, bdAwards, EAwardsType.RANGE_TYPE.getValue()));
|
cuMemberAwardsList.add(getCuMemberRetailAwards(targetMemberRangeExt, period, saOrderExt, bdAwards, EAwardsType.RANGE_TYPE.getValue()));
|
||||||
targetMemberRangeExt.setPkAwards(bdAwards.getPkId());
|
targetMemberRangeExt.setPkAwards(bdAwards.getPkId());
|
||||||
targetMemberRangeExt.setAwardsValue(bdAwards.getAwardsValue());
|
targetMemberRangeExt.setAwardsValue(bdAwards.getAwardsValue());
|
||||||
targetMemberRangeExt.setAwardsName(bdAwards.getAwardsName());
|
targetMemberRangeExt.setAwardsName(bdAwards.getAwardsName());
|
||||||
continue;
|
continue;
|
||||||
// }
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
// // 计算分红奖衔(秒结不走这个地方)
|
// 计算分红奖衔
|
||||||
// while (true) {
|
while (true) {
|
||||||
// if (null == targetMemberRangeExt.getShareAwardsValue()) {
|
// 当月奖衔值 + 5,获取下一个奖衔值
|
||||||
// break;
|
int awardsValue = targetMemberRangeExt.getShareAwardsValue() + 5;
|
||||||
// }
|
if (targetMemberRangeExt.getGradeValue().equals(EGrade.S_VIP.getValue()) && retailAwardsMap.containsKey(awardsValue)) {
|
||||||
// int awardsValue = targetMemberRangeExt.getShareAwardsValue() + 5;
|
BdAwards bdAwards = retailAwardsMap.get(awardsValue);
|
||||||
// if (targetMemberRangeExt.getGradeValue().equals(EGrade.S_VIP.getValue()) && retailAwardsMap.containsKey(awardsValue)) {
|
// 先验证累计业绩
|
||||||
// BdAwards bdAwards = retailAwardsMap.get(awardsValue);
|
if (ComputeUtil.compareValue(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthPv(), targetMemberRangeExt.getMonthConsumePv()), bdAwards.getShareTotalCheck())) {
|
||||||
// // 先验证累计业绩
|
// 验证小区,计算小区业绩(拉取直推会员数据)
|
||||||
// if (ComputeUtil.compareValue(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthPv(), targetMemberRangeExt.getMonthConsumePv()), bdAwards.getShareTotalCheck())) {
|
List<CuMemberRetailRangeExt> cuMemberRangeExtList;
|
||||||
// // 验证小区,计算小区业绩
|
if (secondRangeTableName != null) {
|
||||||
// List<CuMemberRetailRangeExt> cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeExtByParent(rangeTableName, targetMemberRangeExt.getPkMember());
|
// 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据
|
||||||
// BigDecimal consumeBigPv = targetMemberRangeExt.getMonthConsumePv();
|
cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember());
|
||||||
//// if (ComputeUtil.compareGreaterThan(targetMemberRangeExt.getBigTeamPv(), consumeBigPv)) {
|
} else {
|
||||||
//// consumeBigPv = targetMemberRangeExt.getBigTeamPv();
|
// 昨日结算表,查询订单会员直推数据
|
||||||
//// }
|
cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeExtByParent(rangeTableName, targetMemberRangeExt.getPkMember());
|
||||||
// for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRangeExtList) {
|
}
|
||||||
// if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) {
|
// 本人月消费业绩(默认为大区)
|
||||||
// cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember());
|
BigDecimal consumeBigPv = targetMemberRangeExt.getMonthConsumePv();
|
||||||
// }
|
for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRangeExtList) {
|
||||||
// BigDecimal consumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getTeamMonthPv());
|
if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) {
|
||||||
// if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) {
|
cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember());
|
||||||
// consumeBigPv = consumePv;
|
}
|
||||||
// }
|
// 月累计业绩 = 本人月消费业绩 + 团队月消费业绩
|
||||||
// }
|
BigDecimal consumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getTeamMonthPv());
|
||||||
// BigDecimal smallAreaPv = ComputeUtil.computeAdd(targetMemberRangeExt.getMonthConsumePv(), ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamMonthPv(), consumeBigPv));
|
if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) {
|
||||||
// if (ComputeUtil.compareValue(smallAreaPv, bdAwards.getShareCommunityCheck())) {
|
// 月累计业绩 > 大区业绩,则月累计就成为大区了
|
||||||
// if (bdAwards.getPlaceDeptNum() > 0) {
|
consumeBigPv = consumePv;
|
||||||
// // 验证是否有多个区满足业绩
|
}
|
||||||
// List<CuMemberRetailRangeExt> cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeEnoughAchieve(rangeTableName, targetMemberRangeExt.getPkMember(), bdAwards.getShareCommunityCheck());
|
}
|
||||||
// int enoughNum = 0;
|
|
||||||
// for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRetailRangeExtList) {
|
// 小区业绩 = 本人月消费业绩 + 团队月消费业绩 - 大区业绩
|
||||||
// if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) {
|
BigDecimal smallAreaPv = ComputeUtil.computeAdd(targetMemberRangeExt.getMonthConsumePv(), ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamMonthPv(), consumeBigPv));
|
||||||
// cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember());
|
if (ComputeUtil.compareValue(smallAreaPv, bdAwards.getShareCommunityCheck())) {
|
||||||
// }
|
// 小区业绩 >= 小区考核业绩
|
||||||
// if (ComputeUtil.compareValue(ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getTeamMonthPv()), bdAwards.getShareCommunityCheck())) {
|
if (bdAwards.getPlaceDeptNum() > 0) {
|
||||||
// enoughNum += 1;
|
// 验证是否有多个区满足业绩
|
||||||
// }
|
List<CuMemberRetailRangeExt> cuMemberRetailRangeExtList;
|
||||||
// }
|
if (secondRangeTableName != null) {
|
||||||
// if (bdAwards.getPlaceDeptNum() > enoughNum) {
|
// 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据
|
||||||
// break;
|
cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember());
|
||||||
// }
|
} else {
|
||||||
// }
|
// 昨日结算表,查询订单会员直推数据
|
||||||
// cuMemberAwardsList.add(getCuMemberRetailAwards(targetMemberRangeExt, period, saOrderExt, bdAwards, EAwardsType.SHARE_TYPE.getValue()));
|
cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeEnoughAchieve(rangeTableName, targetMemberRangeExt.getPkMember(), bdAwards.getShareCommunityCheck());
|
||||||
// targetMemberRangeExt.setShareAwardsValue(bdAwards.getAwardsValue());
|
}
|
||||||
// targetMemberRangeExt.setPkShareAwards(bdAwards.getPkId());
|
|
||||||
// continue;
|
int enoughNum = 0;
|
||||||
// }
|
for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRetailRangeExtList) {
|
||||||
// }
|
if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) {
|
||||||
// }
|
cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember());
|
||||||
// break;
|
}
|
||||||
// }
|
if (ComputeUtil.compareValue(ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getTeamMonthPv()), bdAwards.getShareCommunityCheck())) {
|
||||||
|
// 本人月消费业绩 + 团队月消费业绩 >= 小区考核业绩,则满足条件小部门 +1
|
||||||
|
enoughNum += 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (bdAwards.getPlaceDeptNum() > enoughNum) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
cuMemberAwardsList.add(getCuMemberRetailAwards(targetMemberRangeExt, period, saOrderExt, bdAwards, EAwardsType.SHARE_TYPE.getValue()));
|
||||||
|
targetMemberRangeExt.setShareAwardsValue(bdAwards.getAwardsValue());
|
||||||
|
targetMemberRangeExt.setPkShareAwards(bdAwards.getPkId());
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 计算团队极差奖衔
|
* 计算团队极差奖衔
|
||||||
*/
|
*/
|
||||||
public List<CuMemberRetailRangeExt> calculateRetailBackRangeGradeAwards(Integer period, Map<Long, CuMemberRetailRangeExt> memberRangeExtMap, String rangeTableName, SaOrderExt saOrderExt,
|
public List<CuMemberRetailRangeExt> calculateRetailBackRangeGradeAwards(Integer period, Map<Long, CuMemberRetailRangeExt> memberRangeExtMap, String rangeTableName, SaOrderExt saOrderExt,
|
||||||
Map<Integer, BdGrade> retailTeamGradeMap, Map<Integer, BdAwards> retailAwardsMap, String secondRangeTableName,
|
Map<Integer, BdGrade> retailTeamGradeMap, Map<Integer, BdAwards> retailAwardsMap, String secondRangeTableName, Integer boxNum,
|
||||||
Integer boxNum, Map<String, CuMemberGrade> cuMemberGradeMap, Map<String, CuMemberAwards> cuMemberAwardsMap) {
|
Map<String, CuMemberGrade> cuMemberGradeMap, Map<String, CuMemberAwards> cuMemberAwardsMap, Map<String, CuMemberAwards> cuMemberShareAwardsMap) {
|
||||||
List<CuMemberRetailRangeExt> cuMemberRetailRangeExtList = new ArrayList<>();
|
List<CuMemberRetailRangeExt> cuMemberRetailRangeExtList = new ArrayList<>();
|
||||||
// 订单会员
|
// 订单会员
|
||||||
CuMemberRetailRangeExt sourceMemberRangeExt = memberRangeExtMap.get(saOrderExt.getPkMember());
|
CuMemberRetailRangeExt sourceMemberRangeExt = memberRangeExtMap.get(saOrderExt.getPkMember());
|
||||||
|
@ -1029,7 +1055,8 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
targetMemberRangeExt.setTeamBoxNum(targetMemberRangeExt.getTeamBoxNum() - boxNum);
|
targetMemberRangeExt.setTeamBoxNum(targetMemberRangeExt.getTeamBoxNum() - boxNum);
|
||||||
targetMemberRangeExt.setTeamMonthBoxNum(targetMemberRangeExt.getTeamMonthBoxNum() - boxNum);
|
targetMemberRangeExt.setTeamMonthBoxNum(targetMemberRangeExt.getTeamMonthBoxNum() - boxNum);
|
||||||
// 计算等级
|
// 计算等级
|
||||||
calculateBackGrade(period, memberRangeExtMap, rangeTableName, saOrderExt, retailTeamGradeMap, retailAwardsMap, secondRangeTableName, cuMemberGradeMap, cuMemberAwardsMap, targetMemberRangeExt);
|
calculateBackGrade(period, memberRangeExtMap, rangeTableName, saOrderExt, retailTeamGradeMap, retailAwardsMap, secondRangeTableName,
|
||||||
|
cuMemberGradeMap, cuMemberAwardsMap, cuMemberShareAwardsMap, targetMemberRangeExt);
|
||||||
cuMemberRetailRangeExtList.add(targetMemberRangeExt);
|
cuMemberRetailRangeExtList.add(targetMemberRangeExt);
|
||||||
}
|
}
|
||||||
// 计算等级
|
// 计算等级
|
||||||
|
@ -1038,9 +1065,9 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
return cuMemberRetailRangeExtList;
|
return cuMemberRetailRangeExtList;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void calculateBackGrade(Integer period, Map<Long, CuMemberRetailRangeExt> memberRangeExtMap, String rangeTableName,
|
private void calculateBackGrade(Integer period, Map<Long, CuMemberRetailRangeExt> memberRangeExtMap, String rangeTableName, SaOrderExt saOrderExt,
|
||||||
SaOrderExt saOrderExt, Map<Integer, BdGrade> retailTeamGradeMap, Map<Integer, BdAwards> retailAwardsMap,
|
Map<Integer, BdGrade> retailTeamGradeMap, Map<Integer, BdAwards> retailAwardsMap, String secondRangeTableName,
|
||||||
String secondRangeTableName, Map<String, CuMemberGrade> cuMemberGradeMap, Map<String, CuMemberAwards> cuMemberAwardsMap,
|
Map<String, CuMemberGrade> cuMemberGradeMap, Map<String, CuMemberAwards> cuMemberAwardsMap, Map<String, CuMemberAwards> cuMemberShareAwardsMap,
|
||||||
CuMemberRetailRangeExt targetMemberRangeExt) {
|
CuMemberRetailRangeExt targetMemberRangeExt) {
|
||||||
// 遍历团队等级map(V4,V5)
|
// 遍历团队等级map(V4,V5)
|
||||||
for (Integer gradeValue : retailTeamGradeMap.keySet()) {
|
for (Integer gradeValue : retailTeamGradeMap.keySet()) {
|
||||||
|
@ -1053,7 +1080,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
// 验证小区,计算小区累计盒数 查询伞下会员
|
// 验证小区,计算小区累计盒数 查询伞下会员
|
||||||
List<CuMemberRetailRangeExt> cuMemberRangeExtList;
|
List<CuMemberRetailRangeExt> cuMemberRangeExtList;
|
||||||
if (secondRangeTableName != null) {
|
if (secondRangeTableName != null) {
|
||||||
// 秒结表关联昨日结算表,查询订单会员直推数据
|
// 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据
|
||||||
cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember());
|
cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember());
|
||||||
} else {
|
} else {
|
||||||
// 昨日结算表,查询订单会员直推数据
|
// 昨日结算表,查询订单会员直推数据
|
||||||
|
@ -1107,32 +1134,83 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
// new 升级奖衔判断为当月累计业绩,累计业绩为团队业绩 + 个人消费业绩
|
// new 升级奖衔判断为当月累计业绩,累计业绩为团队业绩 + 个人消费业绩
|
||||||
if (ComputeUtil.compareValue(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthPv(), targetMemberRangeExt.getMonthConsumePv()), bdAwards.getTotalCheck())) {
|
if (ComputeUtil.compareValue(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthPv(), targetMemberRangeExt.getMonthConsumePv()), bdAwards.getTotalCheck())) {
|
||||||
// 累计业绩足够,即可升奖衔
|
// 累计业绩足够,即可升奖衔
|
||||||
// // 验证小区,计算小区业绩
|
|
||||||
// List<CuMemberRetailRangeExt> cuMemberRangeExtList;
|
|
||||||
// if (secondRangeTableName != null) {
|
|
||||||
// cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember());
|
|
||||||
// } else {
|
|
||||||
// cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeExtByParent(rangeTableName, targetMemberRangeExt.getPkMember());
|
|
||||||
// }
|
|
||||||
// BigDecimal consumeBigPv = BigDecimal.ZERO;
|
|
||||||
// for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRangeExtList) {
|
|
||||||
// if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) {
|
|
||||||
// cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember());
|
|
||||||
// }
|
|
||||||
// BigDecimal consumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getTeamMonthPv());
|
|
||||||
// if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) {
|
|
||||||
// consumeBigPv = consumePv;
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// BigDecimal smallAreaPv = ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamMonthPv(), consumeBigPv);
|
|
||||||
// if (ComputeUtil.compareValue(smallAreaPv, bdAwards.getCommunityCheck())) {
|
|
||||||
CuMemberAwards cuMemberRetailAwards = getCuMemberRetailAwards(targetMemberRangeExt, period, saOrderExt, bdAwards, EAwardsType.RANGE_TYPE.getValue());
|
CuMemberAwards cuMemberRetailAwards = getCuMemberRetailAwards(targetMemberRangeExt, period, saOrderExt, bdAwards, EAwardsType.RANGE_TYPE.getValue());
|
||||||
cuMemberAwardsMap.put(cuMemberRetailAwards.getPkMember() + "_" + cuMemberRetailAwards.getNewLevel(), cuMemberRetailAwards);
|
cuMemberAwardsMap.put(cuMemberRetailAwards.getPkMember() + "_" + cuMemberRetailAwards.getNewLevel(), cuMemberRetailAwards);
|
||||||
targetMemberRangeExt.setPkAwards(bdAwards.getPkId());
|
targetMemberRangeExt.setPkAwards(bdAwards.getPkId());
|
||||||
targetMemberRangeExt.setAwardsValue(bdAwards.getAwardsValue());
|
targetMemberRangeExt.setAwardsValue(bdAwards.getAwardsValue());
|
||||||
targetMemberRangeExt.setAwardsName(bdAwards.getAwardsName());
|
targetMemberRangeExt.setAwardsName(bdAwards.getAwardsName());
|
||||||
continue;
|
continue;
|
||||||
// }
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 计算分红奖衔
|
||||||
|
while (true) {
|
||||||
|
// 当月奖衔值 + 5,获取下一个奖衔值
|
||||||
|
int awardsValue = targetMemberRangeExt.getShareAwardsValue() + 5;
|
||||||
|
if (targetMemberRangeExt.getGradeValue().equals(EGrade.S_VIP.getValue()) && retailAwardsMap.containsKey(awardsValue)) {
|
||||||
|
BdAwards bdAwards = retailAwardsMap.get(awardsValue);
|
||||||
|
// 先验证累计业绩
|
||||||
|
if (ComputeUtil.compareValue(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthPv(), targetMemberRangeExt.getMonthConsumePv()), bdAwards.getShareTotalCheck())) {
|
||||||
|
// 验证小区,计算小区业绩(拉取直推会员数据)
|
||||||
|
List<CuMemberRetailRangeExt> cuMemberRangeExtList;
|
||||||
|
if (secondRangeTableName != null) {
|
||||||
|
// 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据
|
||||||
|
cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember());
|
||||||
|
} else {
|
||||||
|
// 昨日结算表,查询订单会员直推数据
|
||||||
|
cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeExtByParent(rangeTableName, targetMemberRangeExt.getPkMember());
|
||||||
|
}
|
||||||
|
// 本人月消费业绩(默认为大区)
|
||||||
|
BigDecimal consumeBigPv = targetMemberRangeExt.getMonthConsumePv();
|
||||||
|
for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRangeExtList) {
|
||||||
|
if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) {
|
||||||
|
cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember());
|
||||||
|
}
|
||||||
|
// 月累计业绩 = 本人月消费业绩 + 团队月消费业绩
|
||||||
|
BigDecimal consumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getTeamMonthPv());
|
||||||
|
if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) {
|
||||||
|
// 月累计业绩 > 大区业绩,则月累计就成为大区了
|
||||||
|
consumeBigPv = consumePv;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 小区业绩 = 本人月消费业绩 + 团队月消费业绩 - 大区业绩
|
||||||
|
BigDecimal smallAreaPv = ComputeUtil.computeAdd(targetMemberRangeExt.getMonthConsumePv(), ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamMonthPv(), consumeBigPv));
|
||||||
|
if (ComputeUtil.compareValue(smallAreaPv, bdAwards.getShareCommunityCheck())) {
|
||||||
|
// 小区业绩 >= 小区考核业绩
|
||||||
|
if (bdAwards.getPlaceDeptNum() > 0) {
|
||||||
|
// 验证是否有多个区满足业绩
|
||||||
|
List<CuMemberRetailRangeExt> cuMemberRetailRangeExtList;
|
||||||
|
if (secondRangeTableName != null) {
|
||||||
|
// 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据
|
||||||
|
cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember());
|
||||||
|
} else {
|
||||||
|
// 昨日结算表,查询订单会员直推数据
|
||||||
|
cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeEnoughAchieve(rangeTableName, targetMemberRangeExt.getPkMember(), bdAwards.getShareCommunityCheck());
|
||||||
|
}
|
||||||
|
|
||||||
|
int enoughNum = 0;
|
||||||
|
for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRetailRangeExtList) {
|
||||||
|
if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) {
|
||||||
|
cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember());
|
||||||
|
}
|
||||||
|
if (ComputeUtil.compareValue(ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getTeamMonthPv()), bdAwards.getShareCommunityCheck())) {
|
||||||
|
// 本人月消费业绩 + 团队月消费业绩 >= 小区考核业绩,则满足条件小部门 +1
|
||||||
|
enoughNum += 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (bdAwards.getPlaceDeptNum() > enoughNum) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
CuMemberAwards cuMemberRetailAwards = getCuMemberRetailAwards(targetMemberRangeExt, period, saOrderExt, bdAwards, EAwardsType.SHARE_TYPE.getValue());
|
||||||
|
cuMemberShareAwardsMap.put(cuMemberRetailAwards.getPkMember() + "_" + cuMemberRetailAwards.getNewLevel(), cuMemberRetailAwards);
|
||||||
|
targetMemberRangeExt.setShareAwardsValue(bdAwards.getAwardsValue());
|
||||||
|
targetMemberRangeExt.setPkShareAwards(bdAwards.getPkId());
|
||||||
|
continue;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -54,8 +54,10 @@ public interface CuMemberAwardsMapper extends BaseMapper<CuMemberAwards> {
|
||||||
/**
|
/**
|
||||||
* 回退等级
|
* 回退等级
|
||||||
*/
|
*/
|
||||||
void mergeCuMemberBackAwards(@Param("rangeTableName") String rangeTableName, @Param("pkMember") Long pkMember,
|
void mergeCuMemberBackAwards(@Param("rangeTableName") String rangeTableName,
|
||||||
@Param("period") Integer period);
|
@Param("pkMember") Long pkMember,
|
||||||
|
@Param("period") Integer period,
|
||||||
|
@Param("awardType") Integer awardType);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据结算表更新奖衔
|
* 根据结算表更新奖衔
|
||||||
|
|
|
@ -59,7 +59,7 @@ public interface ICuMemberAwardsService extends IService<CuMemberAwards> {
|
||||||
/**
|
/**
|
||||||
* 回退奖衔
|
* 回退奖衔
|
||||||
*/
|
*/
|
||||||
void mergeCuMemberBackAwards(String rangeTableName, Long pkMember, Integer period);
|
void mergeCuMemberBackAwards(String rangeTableName, Long pkMember, Integer period, Integer isToday);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 删除奖衔升级记录
|
* 删除奖衔升级记录
|
||||||
|
|
|
@ -110,8 +110,12 @@ public class CuMemberAwardsServiceImpl extends ServiceImpl<CuMemberAwardsMapper,
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void mergeCuMemberBackAwards(String rangeTableName, Long pkMember, Integer period) {
|
public void mergeCuMemberBackAwards(String rangeTableName, Long pkMember, Integer period, Integer isToday) {
|
||||||
baseMapper.mergeCuMemberBackAwards(rangeTableName, pkMember, period);
|
baseMapper.mergeCuMemberBackAwards(rangeTableName, pkMember, period, EAwardsType.RANGE_TYPE.getValue());
|
||||||
|
if (EYesNo.YES.getIntValue() == isToday) {
|
||||||
|
// 当天,需要处理秒结的分红奖衔
|
||||||
|
baseMapper.mergeCuMemberBackAwards(rangeTableName, pkMember, period, EAwardsType.SHARE_TYPE.getValue());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private Boolean calculateAwards(Map<String, BdAwards> countryAwardsMap, String settleTableName, Date settleDate, Integer period, List<CuMemberSettleExt> cuMemberSettleExtList) {
|
private Boolean calculateAwards(Map<String, BdAwards> countryAwardsMap, String settleTableName, Date settleDate, Integer period, List<CuMemberSettleExt> cuMemberSettleExtList) {
|
||||||
|
|
|
@ -13,6 +13,7 @@
|
||||||
<result column="PHONE" property="phone"/>
|
<result column="PHONE" property="phone"/>
|
||||||
<result column="PK_GRADE" property="pkGrade"/>
|
<result column="PK_GRADE" property="pkGrade"/>
|
||||||
<result column="PK_AWARDS" property="pkAwards"/>
|
<result column="PK_AWARDS" property="pkAwards"/>
|
||||||
|
<result column="PK_SHARE_AWARDS" property="pkShareAwards"/>
|
||||||
<result column="ACCOUNT_STATUS" property="accountStatus"/>
|
<result column="ACCOUNT_STATUS" property="accountStatus"/>
|
||||||
<result column="PAY_STATUS" property="payStatus"/>
|
<result column="PAY_STATUS" property="payStatus"/>
|
||||||
<result column="PAY_TIME" property="payTime"/>
|
<result column="PAY_TIME" property="payTime"/>
|
||||||
|
@ -80,7 +81,6 @@
|
||||||
team_num = 0,
|
team_num = 0,
|
||||||
enable_status = 1,
|
enable_status = 1,
|
||||||
pk_grade = (select pk_id from bd_grade where del_flag = 0 and grade_value = 20),
|
pk_grade = (select pk_id from bd_grade where del_flag = 0 and grade_value = 20),
|
||||||
pk_share_awards = (select pk_id from BD_AWARDS where awards_value = 0),
|
|
||||||
region_address = 0,
|
region_address = 0,
|
||||||
big_box_num = 0,
|
big_box_num = 0,
|
||||||
small_box_num = 0,
|
small_box_num = 0,
|
||||||
|
@ -91,7 +91,7 @@
|
||||||
<update id="mergeMemberRetailRangeByYesterday">
|
<update id="mergeMemberRetailRangeByYesterday">
|
||||||
merge into ${rangeTableName} a
|
merge into ${rangeTableName} a
|
||||||
using(
|
using(
|
||||||
select pk_member, pk_grade, pk_share_awards, enable_status,
|
select pk_member, pk_grade, pk_awards, pk_share_awards, enable_status,
|
||||||
new_box_num, consume_box_num, month_box_num,
|
new_box_num, consume_box_num, month_box_num,
|
||||||
new_consume_pv, consume_pv, month_consume_pv,
|
new_consume_pv, consume_pv, month_consume_pv,
|
||||||
team_new_box_num, team_box_num, team_month_box_num,
|
team_new_box_num, team_box_num, team_month_box_num,
|
||||||
|
@ -120,7 +120,6 @@
|
||||||
,a.team_month_box_num = b.team_month_box_num
|
,a.team_month_box_num = b.team_month_box_num
|
||||||
,a.team_month_pv = b.team_month_pv
|
,a.team_month_pv = b.team_month_pv
|
||||||
,a.team_month_amount = b.team_month_amount
|
,a.team_month_amount = b.team_month_amount
|
||||||
,a.pk_share_awards = b.pk_share_awards
|
|
||||||
</if>
|
</if>
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
|
@ -157,6 +156,7 @@
|
||||||
a.pk_parent,
|
a.pk_parent,
|
||||||
a.pk_settle_grade pk_grade,
|
a.pk_settle_grade pk_grade,
|
||||||
a.pk_awards,
|
a.pk_awards,
|
||||||
|
a.pk_range_awards,
|
||||||
a.is_activate enable_status,
|
a.is_activate enable_status,
|
||||||
a.system_type
|
a.system_type
|
||||||
from (select *
|
from (select *
|
||||||
|
@ -169,8 +169,8 @@
|
||||||
) b
|
) b
|
||||||
on (a.pk_member = b.pk_member)
|
on (a.pk_member = b.pk_member)
|
||||||
when not matched then
|
when not matched then
|
||||||
insert (pk_member, pk_parent, pk_grade, pk_awards, enable_status, system_type)
|
insert (pk_member, pk_parent, pk_grade, pk_awards, pk_share_awards, enable_status, system_type)
|
||||||
values (b.pk_member, b.pk_parent, b.pk_grade, b.pk_awards, b.enable_status, b.system_type)
|
values (b.pk_member, b.pk_parent, b.pk_grade, b.pk_awards, b.pk_range_awards, b.enable_status, b.system_type)
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
<!-- 更新极差秒接表,用昨天的结算表 -->
|
<!-- 更新极差秒接表,用昨天的结算表 -->
|
||||||
|
@ -181,6 +181,7 @@
|
||||||
a.pk_parent,
|
a.pk_parent,
|
||||||
a.pk_settle_grade pk_grade,
|
a.pk_settle_grade pk_grade,
|
||||||
a.pk_awards,
|
a.pk_awards,
|
||||||
|
a.pk_range_awards,
|
||||||
nvl(b.enable_status, 1) enable_status
|
nvl(b.enable_status, 1) enable_status
|
||||||
from (select *
|
from (select *
|
||||||
from cu_member
|
from cu_member
|
||||||
|
@ -203,7 +204,9 @@
|
||||||
merge into ${secondTableName} a
|
merge into ${secondTableName} a
|
||||||
using (
|
using (
|
||||||
<foreach collection="cuMemberRangeExtList" item="item" open=" " close=" " separator="union">
|
<foreach collection="cuMemberRangeExtList" item="item" open=" " close=" " separator="union">
|
||||||
select #{item.pkMember} pk_member, #{item.pkGrade} pk_grade, #{item.pkAwards} pk_awards,
|
select
|
||||||
|
#{item.pkMember} pk_member, #{item.pkGrade} pk_grade,
|
||||||
|
#{item.pkAwards} pk_awards, #{item.pkShareAwards} pk_share_awards,
|
||||||
#{item.newBoxNum} new_box_num, #{item.newConsumePv} new_consume_pv,
|
#{item.newBoxNum} new_box_num, #{item.newConsumePv} new_consume_pv,
|
||||||
#{item.teamNewBoxNum} team_new_box_num, #{item.teamNewPv} team_new_pv,
|
#{item.teamNewBoxNum} team_new_box_num, #{item.teamNewPv} team_new_pv,
|
||||||
#{item.teamNewAmount} team_new_amount, #{item.enableStatus} enable_status
|
#{item.teamNewAmount} team_new_amount, #{item.enableStatus} enable_status
|
||||||
|
@ -212,7 +215,7 @@
|
||||||
) b
|
) b
|
||||||
on (a.pk_member = b.pk_member)
|
on (a.pk_member = b.pk_member)
|
||||||
when matched then
|
when matched then
|
||||||
update set a.pk_grade = b.pk_grade, a.pk_awards = b.pk_awards,
|
update set a.pk_grade = b.pk_grade, a.pk_awards = b.pk_awards, a.pk_share_awards = b.pk_share_awards,
|
||||||
a.new_box_num = b.new_box_num, a.new_consume_pv = b.new_consume_pv,
|
a.new_box_num = b.new_box_num, a.new_consume_pv = b.new_consume_pv,
|
||||||
a.team_new_box_num = b.team_new_box_num, a.team_new_pv = b.team_new_pv,
|
a.team_new_box_num = b.team_new_box_num, a.team_new_pv = b.team_new_pv,
|
||||||
a.team_new_amount = b.team_new_amount, a.enable_status = b.enable_status
|
a.team_new_amount = b.team_new_amount, a.enable_status = b.enable_status
|
||||||
|
@ -220,14 +223,18 @@
|
||||||
|
|
||||||
<update id="mergeMemberRetailGradeByMember">
|
<update id="mergeMemberRetailGradeByMember">
|
||||||
merge into ${rangeTableName} a
|
merge into ${rangeTableName} a
|
||||||
using (
|
using (
|
||||||
select pk_id pk_member, pk_parent, pk_settle_grade, pk_awards
|
select pk_id pk_member, pk_parent,
|
||||||
from cu_member start with pk_id = #{pkMember}
|
pk_settle_grade, pk_awards, pk_range_awards
|
||||||
connect by prior pk_parent = pk_id
|
from cu_member start with pk_id = #{pkMember}
|
||||||
) b
|
connect by prior pk_parent = pk_id
|
||||||
on (a.pk_member = b.pk_member)
|
) b
|
||||||
when matched then
|
on (a.pk_member = b.pk_member)
|
||||||
update set a.pk_grade = b.pk_settle_grade, a.pk_awards = b.pk_awards
|
when matched then
|
||||||
|
update set a.pk_grade = b.pk_settle_grade, a.pk_awards = b.pk_awards
|
||||||
|
<if test="isToday == 0">
|
||||||
|
, a.pk_share_awards = b.pk_range_awards
|
||||||
|
</if>
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
<update id="mergeMemberRetailRegion">
|
<update id="mergeMemberRetailRegion">
|
||||||
|
@ -305,6 +312,7 @@
|
||||||
a.account_status,
|
a.account_status,
|
||||||
a.pk_grade,
|
a.pk_grade,
|
||||||
a.pk_awards,
|
a.pk_awards,
|
||||||
|
a.pk_share_awards,
|
||||||
a.income_status,
|
a.income_status,
|
||||||
a.consume_pv,
|
a.consume_pv,
|
||||||
a.pay_time,
|
a.pay_time,
|
||||||
|
@ -313,7 +321,6 @@
|
||||||
a.income_status,
|
a.income_status,
|
||||||
a.pk_country,
|
a.pk_country,
|
||||||
a.pk_settle_country,
|
a.pk_settle_country,
|
||||||
a.pk_share_awards,
|
|
||||||
a.enable_status,
|
a.enable_status,
|
||||||
new_box_num,
|
new_box_num,
|
||||||
consume_box_num,
|
consume_box_num,
|
||||||
|
@ -332,7 +339,6 @@
|
||||||
team_month_amount,
|
team_month_amount,
|
||||||
recommend_num,
|
recommend_num,
|
||||||
team_num,
|
team_num,
|
||||||
pk_grade,
|
|
||||||
ba.grade_value,
|
ba.grade_value,
|
||||||
ba.grade_name,
|
ba.grade_name,
|
||||||
bw.awards_value,
|
bw.awards_value,
|
||||||
|
@ -373,6 +379,7 @@
|
||||||
a.account_status,
|
a.account_status,
|
||||||
a.pk_grade,
|
a.pk_grade,
|
||||||
a.pk_awards,
|
a.pk_awards,
|
||||||
|
a.pk_share_awards,
|
||||||
a.income_status,
|
a.income_status,
|
||||||
a.consume_pv,
|
a.consume_pv,
|
||||||
a.pay_time,
|
a.pay_time,
|
||||||
|
@ -380,7 +387,6 @@
|
||||||
a.income_status,
|
a.income_status,
|
||||||
a.pk_country,
|
a.pk_country,
|
||||||
a.pk_settle_country,
|
a.pk_settle_country,
|
||||||
a.pk_share_awards,
|
|
||||||
a.big_box_num,
|
a.big_box_num,
|
||||||
a.small_box_num,
|
a.small_box_num,
|
||||||
a.big_team_pv,
|
a.big_team_pv,
|
||||||
|
@ -407,7 +413,7 @@
|
||||||
ba.grade_name,
|
ba.grade_name,
|
||||||
bw.awards_value,
|
bw.awards_value,
|
||||||
bw.awards_name,
|
bw.awards_name,
|
||||||
bwa.awards_value share_awards_value,
|
bws.awards_value share_awards_value,
|
||||||
bw.range_ratio,
|
bw.range_ratio,
|
||||||
bw.benefit_avg_ratio,
|
bw.benefit_avg_ratio,
|
||||||
bw.benefit_share_ratio,
|
bw.benefit_share_ratio,
|
||||||
|
@ -416,13 +422,12 @@
|
||||||
inner join bd_grade ba
|
inner join bd_grade ba
|
||||||
on a.pk_grade = ba.pk_id
|
on a.pk_grade = ba.pk_id
|
||||||
inner join bd_awards bw
|
inner join bd_awards bw
|
||||||
on bw.pk_id = a.pk_awards
|
on bw.pk_id = a.pk_awards and bw.del_flag = 0
|
||||||
|
inner join bd_awards bws
|
||||||
|
on bws.pk_id = a.pk_share_awards and bws.del_flag = 0
|
||||||
left join bd_area br
|
left join bd_area br
|
||||||
on br.pk_id = a.region_address and br.del_flag = 0
|
on br.pk_id = a.region_address and br.del_flag = 0
|
||||||
left join bd_awards bwa
|
|
||||||
on bwa.pk_id = a.pk_share_awards and bwa.del_flag = 0
|
|
||||||
where ba.del_flag = 0
|
where ba.del_flag = 0
|
||||||
and bw.del_flag = 0
|
|
||||||
and a.pk_parent = #{pkParent}
|
and a.pk_parent = #{pkParent}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
@ -504,9 +509,9 @@
|
||||||
pk_parent,
|
pk_parent,
|
||||||
member_code,
|
member_code,
|
||||||
member_name,
|
member_name,
|
||||||
a.pk_awards,
|
|
||||||
a.pk_grade,
|
|
||||||
a.pk_rate,
|
a.pk_rate,
|
||||||
|
a.pk_grade,
|
||||||
|
a.pk_awards,
|
||||||
a.pk_share_awards,
|
a.pk_share_awards,
|
||||||
a.enable_status,
|
a.enable_status,
|
||||||
a.income_status,
|
a.income_status,
|
||||||
|
@ -518,6 +523,7 @@
|
||||||
bg.grade_name,
|
bg.grade_name,
|
||||||
bw.awards_value,
|
bw.awards_value,
|
||||||
bw.awards_name,
|
bw.awards_name,
|
||||||
|
bwa.awards_value share_awards_value,
|
||||||
a.account_status,
|
a.account_status,
|
||||||
a.category,
|
a.category,
|
||||||
bw.range_ratio,
|
bw.range_ratio,
|
||||||
|
@ -527,6 +533,8 @@
|
||||||
from ${rangeTableName} a
|
from ${rangeTableName} a
|
||||||
inner join bd_awards bw
|
inner join bd_awards bw
|
||||||
on bw.pk_id = a.pk_awards
|
on bw.pk_id = a.pk_awards
|
||||||
|
inner join bd_awards bwa
|
||||||
|
on bwa.pk_id = a.pk_share_awards
|
||||||
inner join bd_grade bg
|
inner join bd_grade bg
|
||||||
on bg.pk_id = a.pk_grade
|
on bg.pk_id = a.pk_grade
|
||||||
inner join bd_area ba
|
inner join bd_area ba
|
||||||
|
@ -595,6 +603,7 @@
|
||||||
cm.account_status,
|
cm.account_status,
|
||||||
a.pk_grade,
|
a.pk_grade,
|
||||||
a.pk_awards,
|
a.pk_awards,
|
||||||
|
a.pk_share_awards,
|
||||||
cm.income_status,
|
cm.income_status,
|
||||||
cm.pay_time,
|
cm.pay_time,
|
||||||
b.pk_rate,
|
b.pk_rate,
|
||||||
|
@ -626,6 +635,7 @@
|
||||||
bw.range_ratio,
|
bw.range_ratio,
|
||||||
bw.benefit_avg_ratio,
|
bw.benefit_avg_ratio,
|
||||||
bw.benefit_share_ratio,
|
bw.benefit_share_ratio,
|
||||||
|
bws.awards_value share_awards_value,
|
||||||
br.name country_name,
|
br.name country_name,
|
||||||
cr.county region_address
|
cr.county region_address
|
||||||
from (
|
from (
|
||||||
|
@ -638,15 +648,16 @@
|
||||||
inner join cu_member cm
|
inner join cu_member cm
|
||||||
on cm.pk_id = a.pk_member
|
on cm.pk_id = a.pk_member
|
||||||
inner join bd_awards bw
|
inner join bd_awards bw
|
||||||
on bw.pk_id = a.pk_awards
|
on bw.pk_id = a.pk_awards and bw.del_flag = 0
|
||||||
|
inner join bd_awards bws
|
||||||
|
on bws.pk_id = a.pk_share_awards and bws.del_flag = 0
|
||||||
inner join bd_grade bg
|
inner join bd_grade bg
|
||||||
on bg.pk_id = a.pk_grade
|
on bg.pk_id = a.pk_grade
|
||||||
left join cu_member_retail_region cr
|
left join cu_member_retail_region cr
|
||||||
on cr.pk_member = cm.pk_id and cr.effective = 0 and cr.del_flag = 0
|
on cr.pk_member = cm.pk_id and cr.effective = 0 and cr.del_flag = 0
|
||||||
left join bd_area br
|
left join bd_area br
|
||||||
on br.pk_id = cr.county and br.del_flag = 0
|
on br.pk_id = cr.county and br.del_flag = 0
|
||||||
where bw.del_flag = 0
|
where bg.del_flag = 0
|
||||||
and bg.del_flag = 0
|
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="queryCuMemberSecondRange" resultMap="CuMemberRetailRangeExt">
|
<select id="queryCuMemberSecondRange" resultMap="CuMemberRetailRangeExt">
|
||||||
|
@ -679,6 +690,9 @@
|
||||||
|
|
||||||
<select id="queryCuMemberSecondRangeExtByParent" resultMap="CuMemberRetailRangeExt">
|
<select id="queryCuMemberSecondRangeExtByParent" resultMap="CuMemberRetailRangeExt">
|
||||||
select cm.pk_id pkMember,
|
select cm.pk_id pkMember,
|
||||||
|
cm.pk_parent,
|
||||||
|
nvl(b.month_consume_pv, 0) + nvl(a.new_consume_pv, 0) month_consume_pv,
|
||||||
|
nvl(b.team_month_pv, 0) + nvl(a.team_new_pv, 0) team_month_pv,
|
||||||
nvl(b.consume_box_num, 0) + nvl(a.new_box_num, 0) consume_box_num,
|
nvl(b.consume_box_num, 0) + nvl(a.new_box_num, 0) consume_box_num,
|
||||||
nvl(b.team_box_num, 0) + nvl(a.team_new_box_num, 0) team_box_num,
|
nvl(b.team_box_num, 0) + nvl(a.team_new_box_num, 0) team_box_num,
|
||||||
nvl(b.big_box_num, 0) big_box_num,
|
nvl(b.big_box_num, 0) big_box_num,
|
||||||
|
@ -766,24 +780,25 @@
|
||||||
<select id="queryCuMemberRetailRangeEnoughAchieve" resultType="com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt">
|
<select id="queryCuMemberRetailRangeEnoughAchieve" resultType="com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt">
|
||||||
select pk_member,
|
select pk_member,
|
||||||
pk_parent,
|
pk_parent,
|
||||||
consume_box_num,
|
|
||||||
new_box_num,
|
new_box_num,
|
||||||
team_box_num,
|
consume_box_num,
|
||||||
month_box_num,
|
month_box_num,
|
||||||
team_new_box_num,
|
new_consume_pv,
|
||||||
consume_pv,
|
consume_pv,
|
||||||
month_consume_pv,
|
month_consume_pv,
|
||||||
new_consume_pv,
|
team_new_box_num,
|
||||||
team_consume_amount,
|
team_box_num,
|
||||||
|
team_month_box_num,
|
||||||
|
team_new_pv,
|
||||||
team_consume_pv,
|
team_consume_pv,
|
||||||
team_month_amount,
|
|
||||||
team_month_pv,
|
team_month_pv,
|
||||||
|
team_new_amount,
|
||||||
|
team_consume_amount,
|
||||||
|
team_month_amount,
|
||||||
big_box_num,
|
big_box_num,
|
||||||
small_box_num,
|
small_box_num,
|
||||||
big_team_pv,
|
big_team_pv,
|
||||||
small_team_pv,
|
small_team_pv
|
||||||
team_new_amount,
|
|
||||||
team_new_pv
|
|
||||||
from ${tableName}
|
from ${tableName}
|
||||||
where pk_parent = #{pkParent}
|
where pk_parent = #{pkParent}
|
||||||
</select>
|
</select>
|
||||||
|
|
|
@ -460,17 +460,17 @@
|
||||||
inner join (
|
inner join (
|
||||||
select a.pk_member,a.new_level pk_awards
|
select a.pk_member,a.new_level pk_awards
|
||||||
from cu_member_awards a
|
from cu_member_awards a
|
||||||
inner join(
|
inner join (
|
||||||
select pk_member, max(pk_id) pk_id
|
select pk_member, max(pk_id) pk_id
|
||||||
from cu_member_awards
|
from cu_member_awards
|
||||||
where del_flag = 0 and up_type=2
|
where del_flag = 0 and up_type = 2
|
||||||
and end_validity_date <= #{settleDate, jdbcType=DATE}
|
and end_validity_date <= #{settleDate, jdbcType=DATE}
|
||||||
and award_type = #{awardType}
|
and award_type = #{awardType}
|
||||||
group by pk_member) b
|
group by pk_member) b
|
||||||
on a.pk_id = b.pk_id
|
on a.pk_id = b.pk_id
|
||||||
where a.del_flag = 0
|
where a.del_flag = 0
|
||||||
) y
|
) y
|
||||||
on x.pk_member=y.pk_member
|
on x.pk_member = y.pk_member
|
||||||
where
|
where
|
||||||
<if test="awardType == 1">
|
<if test="awardType == 1">
|
||||||
x.pk_awards < y.pk_awards
|
x.pk_awards < y.pk_awards
|
||||||
|
@ -486,25 +486,26 @@
|
||||||
a.pk_awards = b.pk_awards
|
a.pk_awards = b.pk_awards
|
||||||
</if>
|
</if>
|
||||||
<if test="awardType == 2">
|
<if test="awardType == 2">
|
||||||
a.pk_share_awards=b.pk_awards
|
a.pk_share_awards = b.pk_awards
|
||||||
</if>
|
</if>
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
<!-- 初始化期间奖衔 -->
|
<!-- 初始化期间奖衔 -->
|
||||||
<update id="updateCuMemberRetailRangeInitAward">
|
<update id="updateCuMemberRetailRangeInitAward">
|
||||||
update ${rangeTableName}
|
update ${rangeTableName}
|
||||||
set pk_awards = (select pk_id from bd_awards where awards_value = 0)
|
set pk_awards = (select pk_id from bd_awards where awards_value = 0),
|
||||||
|
pk_share_awards = (select pk_id from bd_awards where awards_value = 0)
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
<!-- 初始化期间V5奖衔 -->
|
<!-- 初始化期间V5奖衔 -->
|
||||||
<update id="updateCuMemberRetailRangeInitV5Award">
|
<update id="updateCuMemberRetailRangeInitV5Award">
|
||||||
update ${rangeTableName}
|
update ${rangeTableName}
|
||||||
set pk_awards = (select pk_id from bd_awards where awards_value = 5)
|
set pk_awards = (select pk_id from bd_awards where awards_value = 5),
|
||||||
|
pk_share_awards = (select pk_id from bd_awards where awards_value = 5)
|
||||||
where pk_grade = (
|
where pk_grade = (
|
||||||
select pk_id
|
select pk_id
|
||||||
from bd_grade
|
from bd_grade
|
||||||
where grade_value = 70
|
where grade_value = 70 and del_flag = 0
|
||||||
and del_flag = 0
|
|
||||||
)
|
)
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
|
@ -529,7 +530,8 @@
|
||||||
pk_member NUMBER(20) not null,
|
pk_member NUMBER(20) not null,
|
||||||
pk_parent NUMBER(20) not null,
|
pk_parent NUMBER(20) not null,
|
||||||
pk_grade NUMBER(4) not null,
|
pk_grade NUMBER(4) not null,
|
||||||
pk_awards number(4) default 1 not null,
|
pk_awards number(4) default 10 not null,
|
||||||
|
pk_share_awards number(4) default 10 not null,
|
||||||
enable_status number(2) default 1 not null,
|
enable_status number(2) default 1 not null,
|
||||||
system_type NUMBER(2) default 2 not null,
|
system_type NUMBER(2) default 2 not null,
|
||||||
new_box_num number(8) default 0 not null,
|
new_box_num number(8) default 0 not null,
|
||||||
|
@ -550,8 +552,8 @@
|
||||||
customer_type NUMBER(2) not null,
|
customer_type NUMBER(2) not null,
|
||||||
phone VARCHAR2(40) not null,
|
phone VARCHAR2(40) not null,
|
||||||
pk_grade NUMBER(4) not null,
|
pk_grade NUMBER(4) not null,
|
||||||
pk_awards number(4) default 1 not null,
|
pk_awards number(4) default 10 not null,
|
||||||
pk_share_awards number(4) default 12 not null,
|
pk_share_awards number(4) default 10 not null,
|
||||||
enable_status number(2) default 1 not null,
|
enable_status number(2) default 1 not null,
|
||||||
account_status number(1) default 0 not null,
|
account_status number(1) default 0 not null,
|
||||||
pay_status NUMBER(2) default 0 not null,
|
pay_status NUMBER(2) default 0 not null,
|
||||||
|
|
|
@ -195,7 +195,7 @@
|
||||||
using (
|
using (
|
||||||
select pk_member, max(new_level) pk_awards
|
select pk_member, max(new_level) pk_awards
|
||||||
from cu_member_awards
|
from cu_member_awards
|
||||||
where period = #{period} and award_type=#{awardType}
|
where period = #{period} and award_type = #{awardType}
|
||||||
and del_flag = 0
|
and del_flag = 0
|
||||||
group by pk_member
|
group by pk_member
|
||||||
) b
|
) b
|
||||||
|
@ -324,7 +324,8 @@
|
||||||
<update id="updateCuMemberRetailRangeAwardByDate">
|
<update id="updateCuMemberRetailRangeAwardByDate">
|
||||||
merge into cu_member a
|
merge into cu_member a
|
||||||
using (
|
using (
|
||||||
select y.pk_member,y.pk_awards from cu_member x
|
select y.pk_member, y.pk_awards
|
||||||
|
from cu_member x
|
||||||
inner join (
|
inner join (
|
||||||
select a.pk_member,a.new_level pk_awards
|
select a.pk_member,a.new_level pk_awards
|
||||||
from cu_member_awards a
|
from cu_member_awards a
|
||||||
|
@ -363,13 +364,15 @@
|
||||||
<!-- 初始化会员奖衔 -->
|
<!-- 初始化会员奖衔 -->
|
||||||
<update id="updateCuMemberRetailRangeInitAward">
|
<update id="updateCuMemberRetailRangeInitAward">
|
||||||
update cu_member
|
update cu_member
|
||||||
set pk_awards = (select pk_id from bd_awards where awards_value = 0)
|
set pk_awards = (select pk_id from bd_awards where awards_value = 0),
|
||||||
|
pk_range_awards = (select pk_id from bd_awards where awards_value = 0)
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
<!-- 初始化会员V5奖衔 -->
|
<!-- 初始化会员V5奖衔 -->
|
||||||
<update id="updateCuMemberRetailRangeInitV5Award">
|
<update id="updateCuMemberRetailRangeInitV5Award">
|
||||||
update cu_member
|
update cu_member
|
||||||
set pk_awards = (select pk_id from bd_awards where awards_value = 5)
|
set pk_awards = (select pk_id from bd_awards where awards_value = 5),
|
||||||
|
pk_range_awards = (select pk_id from bd_awards where awards_value = 5)
|
||||||
where pk_settle_grade = (
|
where pk_settle_grade = (
|
||||||
select pk_id
|
select pk_id
|
||||||
from bd_grade
|
from bd_grade
|
||||||
|
@ -401,7 +404,11 @@
|
||||||
using (
|
using (
|
||||||
select pk_member, max(pk_awards) pk_awards from (
|
select pk_member, max(pk_awards) pk_awards from (
|
||||||
<foreach item="item" index="index" collection="cuMemberAwardsList" separator=" union ">
|
<foreach item="item" index="index" collection="cuMemberAwardsList" separator=" union ">
|
||||||
select #{item.pkMember} pk_member,#{item.newLevel} pk_awards, #{item.awardType} award_type from dual
|
select
|
||||||
|
#{item.pkMember} pk_member,
|
||||||
|
#{item.newLevel} pk_awards,
|
||||||
|
#{item.awardType} award_type
|
||||||
|
from dual
|
||||||
</foreach>
|
</foreach>
|
||||||
)
|
)
|
||||||
where award_type = #{awardType}
|
where award_type = #{awardType}
|
||||||
|
|
|
@ -69,13 +69,14 @@
|
||||||
inner join (
|
inner join (
|
||||||
select ca.pk_member, min(ca.pk_id) pk_id
|
select ca.pk_member, min(ca.pk_id) pk_id
|
||||||
from cu_member_awards ca
|
from cu_member_awards ca
|
||||||
inner join bd_awards bw
|
inner join bd_awards bw
|
||||||
on ca.new_level = bw.pk_id
|
on ca.new_level = bw.pk_id
|
||||||
|
and bw.del_flag = 0
|
||||||
|
and bw.awards_value >= 5
|
||||||
where ca.del_flag = 0
|
where ca.del_flag = 0
|
||||||
and bw.del_flag = 0
|
|
||||||
and bw.awards_value >= 5
|
|
||||||
and ca.up_type = 1
|
and ca.up_type = 1
|
||||||
and ca.period = #{period}
|
and ca.period = #{period}
|
||||||
|
and ca.award_type = #{awardType}
|
||||||
and ca.pk_member in
|
and ca.pk_member in
|
||||||
(select pk_id
|
(select pk_id
|
||||||
from cu_member start
|
from cu_member start
|
||||||
|
@ -85,7 +86,13 @@
|
||||||
) cx on cw.pk_id = cx.pk_id where cw.del_flag = 0
|
) cx on cw.pk_id = cx.pk_id where cw.del_flag = 0
|
||||||
) b on (a.pk_member = b.pk_member)
|
) b on (a.pk_member = b.pk_member)
|
||||||
when matched then
|
when matched then
|
||||||
update set a.pk_awards = b.old_level
|
update set
|
||||||
|
<if test="awardType == 1">
|
||||||
|
a.pk_awards = b.old_level
|
||||||
|
</if>
|
||||||
|
<if test="awardType == 2">
|
||||||
|
a.pk_share_awards = b.old_level
|
||||||
|
</if>
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
<!-- 删除自动升级的奖衔升级记录 -->
|
<!-- 删除自动升级的奖衔升级记录 -->
|
||||||
|
@ -142,14 +149,15 @@
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="queryCuMemberAwards" resultType="com.hzs.common.domain.member.detail.CuMemberAwards">
|
<select id="queryCuMemberAwards" resultType="com.hzs.common.domain.member.detail.CuMemberAwards">
|
||||||
select ca.* from cu_member_awards ca
|
select ca.*
|
||||||
|
from cu_member_awards ca
|
||||||
inner join bd_awards bw
|
inner join bd_awards bw
|
||||||
on ca.new_level = bw.pk_id
|
on ca.new_level = bw.pk_id
|
||||||
where ca.del_flag = 0
|
where ca.del_flag = 0
|
||||||
and bw.del_flag = 0
|
and bw.del_flag = 0
|
||||||
and bw.awards_value >= 5
|
and bw.awards_value >= 5
|
||||||
and ca.up_type = 1 and ca.period = #{period}
|
and ca.up_type = 1 and ca.period = #{period}
|
||||||
and ca.pk_member in
|
and ca.pk_member in
|
||||||
<foreach collection="cuMemberRetailRangeExtList" item="item" open="(" close=")" separator=",">
|
<foreach collection="cuMemberRetailRangeExtList" item="item" open="(" close=")" separator=",">
|
||||||
#{item.pkMember}
|
#{item.pkMember}
|
||||||
</foreach>
|
</foreach>
|
||||||
|
|
|
@ -881,7 +881,6 @@ public class CuMemberController extends BaseController {
|
||||||
cvo.setIsConsume(EYesNo.NO.getIntValue());
|
cvo.setIsConsume(EYesNo.NO.getIntValue());
|
||||||
}
|
}
|
||||||
cvo.setCategoryVal(transactionMap.get(EnumsPrefixConstants.ENU_CAT + cvo.getCategory()));
|
cvo.setCategoryVal(transactionMap.get(EnumsPrefixConstants.ENU_CAT + cvo.getCategory()));
|
||||||
cvo.setAccountStatusVal(transactionMap.get(EnumsPrefixConstants.ACCOUNT_STATUS + cvo.getAccountStatus()));
|
|
||||||
cvo.setIsRealNameVal(transactionMap.get(EnumsPrefixConstants.YES_NO_ATTESTATION + cvo.getIsRealName()));
|
cvo.setIsRealNameVal(transactionMap.get(EnumsPrefixConstants.YES_NO_ATTESTATION + cvo.getIsRealName()));
|
||||||
cvo.setOrderSourceVal(transactionMap.get(EnumsPrefixConstants.ORDER_SOURCE + cvo.getOrderSource()));
|
cvo.setOrderSourceVal(transactionMap.get(EnumsPrefixConstants.ORDER_SOURCE + cvo.getOrderSource()));
|
||||||
cvo.setMemberAccountVal(getMemberAccountVal(cmvo, transactionMap));
|
cvo.setMemberAccountVal(getMemberAccountVal(cmvo, transactionMap));
|
||||||
|
@ -997,7 +996,6 @@ public class CuMemberController extends BaseController {
|
||||||
cvo.setIsConsume(EYesNo.NO.getIntValue());
|
cvo.setIsConsume(EYesNo.NO.getIntValue());
|
||||||
}
|
}
|
||||||
cvo.setCategoryVal(transactionMap.get(EnumsPrefixConstants.ENU_CAT + cvo.getCategory()));
|
cvo.setCategoryVal(transactionMap.get(EnumsPrefixConstants.ENU_CAT + cvo.getCategory()));
|
||||||
cvo.setAccountStatusVal(transactionMap.get(EnumsPrefixConstants.ACCOUNT_STATUS + cvo.getAccountStatus()));
|
|
||||||
cvo.setIsRealNameVal(transactionMap.get(EnumsPrefixConstants.YES_NO_ATTESTATION + cvo.getIsRealName()));
|
cvo.setIsRealNameVal(transactionMap.get(EnumsPrefixConstants.YES_NO_ATTESTATION + cvo.getIsRealName()));
|
||||||
cvo.setOrderSourceVal(transactionMap.get(EnumsPrefixConstants.ORDER_SOURCE + cvo.getOrderSource()));
|
cvo.setOrderSourceVal(transactionMap.get(EnumsPrefixConstants.ORDER_SOURCE + cvo.getOrderSource()));
|
||||||
cvo.setMemberAccountVal(getMemberAccountVal(cmvo, transactionMap));
|
cvo.setMemberAccountVal(getMemberAccountVal(cmvo, transactionMap));
|
||||||
|
|
|
@ -15,11 +15,7 @@ import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @description: 新零售系统会员后台查询会员的实体vo
|
* 新零售系统会员后台查询会员的实体vo
|
||||||
* @author: zhang jing
|
|
||||||
* @date: 2024/12/9 16:28
|
|
||||||
* @param:
|
|
||||||
* @return:
|
|
||||||
**/
|
**/
|
||||||
@Data
|
@Data
|
||||||
@EqualsAndHashCode(callSuper = false)
|
@EqualsAndHashCode(callSuper = false)
|
||||||
|
@ -69,25 +65,26 @@ public class RetailMemberVO implements Serializable {
|
||||||
private String parMemberName;
|
private String parMemberName;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 级差奖衔
|
* 当月奖衔
|
||||||
*/
|
*/
|
||||||
@Transaction(transactionKey = EnumsPrefixConstants.KEY_AWARD)
|
|
||||||
private Integer pkAwards;
|
private Integer pkAwards;
|
||||||
|
@Excel(name = "当月奖衔")
|
||||||
@Excel(name = "级差奖衔")
|
|
||||||
private String pkAwardsVal;
|
private String pkAwardsVal;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 分红奖衔
|
||||||
|
*/
|
||||||
|
private Integer pkRangeAwards;
|
||||||
|
@Excel(name = "分红奖衔")
|
||||||
|
private String pkRangeAwardsVal;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 荣誉奖衔
|
* 荣誉奖衔
|
||||||
*/
|
*/
|
||||||
@Transaction(transactionKey = EnumsPrefixConstants.KEY_AWARD)
|
private Integer pkMaxAwards;
|
||||||
private Integer pkRangeAwards;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 荣誉奖衔显示
|
|
||||||
*/
|
|
||||||
@Excel(name = "荣誉奖衔")
|
@Excel(name = "荣誉奖衔")
|
||||||
private String pkRangeAwardsVal;
|
private String pkMaxAwardsVal;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 订单来源 (1=实单注册,2=空单注册)订单状态 EOrderSource
|
* 订单来源 (1=实单注册,2=空单注册)订单状态 EOrderSource
|
||||||
|
|
|
@ -37,6 +37,7 @@ public class MemberRetailServiceImpl implements IMemberRetailService {
|
||||||
.pkSettleCountry(CountryConstants.CHINA_COUNTRY)
|
.pkSettleCountry(CountryConstants.CHINA_COUNTRY)
|
||||||
.pkGrade(cuMember.getPkSettleGrade())
|
.pkGrade(cuMember.getPkSettleGrade())
|
||||||
.pkAwards(cuMember.getPkAwards())
|
.pkAwards(cuMember.getPkAwards())
|
||||||
|
.pkRangeAwards(cuMember.getPkRangeAwards())
|
||||||
.pkMaxAwards(cuMember.getPkMaxAwards())
|
.pkMaxAwards(cuMember.getPkMaxAwards())
|
||||||
.build()).getData();
|
.build()).getData();
|
||||||
|
|
||||||
|
@ -79,8 +80,8 @@ public class MemberRetailServiceImpl implements IMemberRetailService {
|
||||||
.awardsIcon(memberDataDTO.getAwardsIcon())
|
.awardsIcon(memberDataDTO.getAwardsIcon())
|
||||||
.pkMaxAwardsVal(memberDataDTO.getMaxAwardsVal())
|
.pkMaxAwardsVal(memberDataDTO.getMaxAwardsVal())
|
||||||
.maxAwardsIcon(memberDataDTO.getMaxAwardsIcon())
|
.maxAwardsIcon(memberDataDTO.getMaxAwardsIcon())
|
||||||
// .pkRangeAwardsVal(memberDataDTO.getRangeAwardsVal())
|
.pkRangeAwardsVal(memberDataDTO.getRangeAwardsVal())
|
||||||
// .rangeAwardsIcon(memberDataDTO.getRangeAwardsIcon())
|
.rangeAwardsIcon(memberDataDTO.getRangeAwardsIcon())
|
||||||
.currencyIcon(memberDataDTO.getCurrencyIcon())
|
.currencyIcon(memberDataDTO.getCurrencyIcon())
|
||||||
.memberSign(memberSign)
|
.memberSign(memberSign)
|
||||||
.control(control)
|
.control(control)
|
||||||
|
|
|
@ -93,14 +93,14 @@ public class RetailMemberInfoVO implements Serializable {
|
||||||
*/
|
*/
|
||||||
private String maxAwardsIcon;
|
private String maxAwardsIcon;
|
||||||
|
|
||||||
// /**
|
/**
|
||||||
// * 荣誉奖衔名称
|
* 分红奖衔名称
|
||||||
// */
|
*/
|
||||||
// private String pkRangeAwardsVal;
|
private String pkRangeAwardsVal;
|
||||||
// /**
|
/**
|
||||||
// * 荣誉奖衔图标
|
* 分红奖衔图标
|
||||||
// */
|
*/
|
||||||
// private String rangeAwardsIcon;
|
private String rangeAwardsIcon;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 币种图标
|
* 币种图标
|
||||||
|
|
|
@ -2291,10 +2291,11 @@
|
||||||
cma.transfer_status as transferstatus,
|
cma.transfer_status as transferstatus,
|
||||||
ver.vertex_name as vertexName,
|
ver.vertex_name as vertexName,
|
||||||
cmt.team_name as teamName,
|
cmt.team_name as teamName,
|
||||||
gr.GRADE_NAME as pkRegisterGradeVal,
|
gr.grade_name as pkRegisterGradeVal,
|
||||||
grr.GRADE_NAME as pkSettleGradeVal,
|
grr.grade_name as pkSettleGradeVal,
|
||||||
awa.AWARDS_NAME as pkAwardsVal,
|
awa.awards_name as pkAwardsVal,
|
||||||
awar.AWARDS_NAME as pkRangeAwardsVal,
|
awar.awards_name as pkRangeAwardsVal,
|
||||||
|
awm.awards_name as pkMaxAwardsVal,
|
||||||
par.member_code parMemberCode,
|
par.member_code parMemberCode,
|
||||||
par.member_name parMemberName,
|
par.member_name parMemberName,
|
||||||
pr.NAME giftProvince,
|
pr.NAME giftProvince,
|
||||||
|
@ -2306,9 +2307,11 @@
|
||||||
left join cu_member par
|
left join cu_member par
|
||||||
ON par.pk_id = cm.pk_parent
|
ON par.pk_id = cm.pk_parent
|
||||||
left join bd_awards awa
|
left join bd_awards awa
|
||||||
on awa.pk_id = cm.PK_AWARDS
|
on awa.pk_id = cm.pk_awards
|
||||||
left join bd_awards awar
|
left join bd_awards awar
|
||||||
on awar.pk_id = cm.PK_RANGE_AWARDS
|
on awar.pk_id = cm.pk_range_awards
|
||||||
|
left join bd_awards awm
|
||||||
|
on awm.pk_id = cm.pk_max_awards
|
||||||
left join bd_grade gr
|
left join bd_grade gr
|
||||||
on gr.pk_id = cm.PK_REGISTER_GRADE
|
on gr.pk_id = cm.PK_REGISTER_GRADE
|
||||||
left join bd_grade grr
|
left join bd_grade grr
|
||||||
|
@ -2318,7 +2321,7 @@
|
||||||
left join cu_member_team cmt
|
left join cu_member_team cmt
|
||||||
on cmt.pk_id = cm.pk_team_code
|
on cmt.pk_id = cm.pk_team_code
|
||||||
left join CU_MEMBER_RETAIL_REGION cmrr
|
left join CU_MEMBER_RETAIL_REGION cmrr
|
||||||
on cm.pk_id = cmrr.PK_MEMBER and cmrr.EFFECTIVE=0 and cmrr.del_flag = 0
|
on cm.pk_id = cmrr.PK_MEMBER and cmrr.effective = 0 and cmrr.del_flag = 0
|
||||||
left join BD_AREA pr
|
left join BD_AREA pr
|
||||||
on pr.pk_id = cmrr.PROVINCE
|
on pr.pk_id = cmrr.PROVINCE
|
||||||
left join BD_AREA cty
|
left join BD_AREA cty
|
||||||
|
@ -2333,18 +2336,12 @@
|
||||||
on cm.pk_id = cma.PK_MEMBER
|
on cm.pk_id = cma.PK_MEMBER
|
||||||
left join cu_member par
|
left join cu_member par
|
||||||
ON par.pk_id = cm.pk_parent
|
ON par.pk_id = cm.pk_parent
|
||||||
left join bd_awards awa
|
|
||||||
on awa.pk_id = cm.PK_AWARDS
|
|
||||||
left join bd_grade gr
|
|
||||||
on gr.pk_id = cm.PK_REGISTER_GRADE
|
|
||||||
left join bd_grade grr
|
|
||||||
on grr.pk_id = cm.PK_SETTLE_GRADE
|
|
||||||
left join bd_vertex ver
|
left join bd_vertex ver
|
||||||
on cm.pk_vertex = ver.pk_id
|
on cm.pk_vertex = ver.pk_id
|
||||||
left join cu_member_team cmt
|
left join cu_member_team cmt
|
||||||
on cmt.pk_id = cm.pk_team_code
|
on cmt.pk_id = cm.pk_team_code
|
||||||
left join CU_MEMBER_RETAIL_REGION cmrr
|
left join CU_MEMBER_RETAIL_REGION cmrr
|
||||||
on cm.pk_id = cmrr.PK_MEMBER and cmrr.EFFECTIVE=0 and cmrr.del_flag = 0
|
on cm.pk_id = cmrr.PK_MEMBER and cmrr.effective = 0 and cmrr.del_flag = 0
|
||||||
WHERE cm.del_flag = 0
|
WHERE cm.del_flag = 0
|
||||||
<if test="isActivate != null">
|
<if test="isActivate != null">
|
||||||
and cm.IS_ACTIVATE = #{isActivate}
|
and cm.IS_ACTIVATE = #{isActivate}
|
||||||
|
@ -2412,19 +2409,22 @@
|
||||||
and cm.member_name like #{memberName}||'%'
|
and cm.member_name like #{memberName}||'%'
|
||||||
</if>
|
</if>
|
||||||
<if test="phone != null and phone != ''">
|
<if test="phone != null and phone != ''">
|
||||||
and cm.phone=#{phone}
|
and cm.phone = #{phone}
|
||||||
</if>
|
</if>
|
||||||
<if test="pkRegisterGrade != null ">
|
<if test="pkRegisterGrade != null ">
|
||||||
and cm.pk_register_grade =#{pkRegisterGrade}
|
and cm.pk_register_grade = #{pkRegisterGrade}
|
||||||
</if>
|
</if>
|
||||||
<if test="pkSettleGrade != null ">
|
<if test="pkSettleGrade != null ">
|
||||||
and cm.PK_SETTLE_GRADE =#{pkSettleGrade}
|
and cm.pk_settle_grade = #{pkSettleGrade}
|
||||||
</if>
|
</if>
|
||||||
<if test="pkAwards != null">
|
<if test="pkAwards != null">
|
||||||
and cm.pk_awards=#{pkAwards}
|
and cm.pk_awards = #{pkAwards}
|
||||||
</if>
|
</if>
|
||||||
<if test="pkRangeAwards != null">
|
<if test="pkRangeAwards != null">
|
||||||
and cm.pk_range_awards=#{pkRangeAwards}
|
and cm.pk_range_awards = #{pkRangeAwards}
|
||||||
|
</if>
|
||||||
|
<if test="pkMaxAwards != null">
|
||||||
|
and cm.pk_max_awards = #{pkMaxAwards}
|
||||||
</if>
|
</if>
|
||||||
<if test="directPushNumber != null">
|
<if test="directPushNumber != null">
|
||||||
and cm.DIRECT_PUSH_NUMBER=#{directPushNumber}
|
and cm.DIRECT_PUSH_NUMBER=#{directPushNumber}
|
||||||
|
|
|
@ -278,11 +278,12 @@
|
||||||
vertexname,
|
vertexname,
|
||||||
creationtime,
|
creationtime,
|
||||||
endvaliditydate
|
endvaliditydate
|
||||||
from (select cm.pk_id as pkmember,
|
from (
|
||||||
|
select cm.pk_id as pkmember,
|
||||||
cma.period,
|
cma.period,
|
||||||
cma.up_type as uptype,
|
cma.up_type as uptype,
|
||||||
cm.member_code as membercode,
|
cm.member_code as membercode,
|
||||||
cm.member_name as membername,
|
cm.member_name as membername,
|
||||||
cm.phone,
|
cm.phone,
|
||||||
baa.awards_name as pkAwardsVal,
|
baa.awards_name as pkAwardsVal,
|
||||||
bam.awards_name as pkMaxAwardsVal,
|
bam.awards_name as pkMaxAwardsVal,
|
||||||
|
@ -326,10 +327,10 @@
|
||||||
AND cma.UP_TYPE = #{upType}
|
AND cma.UP_TYPE = #{upType}
|
||||||
</if>
|
</if>
|
||||||
<if test="pkAwards != null">
|
<if test="pkAwards != null">
|
||||||
AND AW.PK_ID = #{pkAwards}
|
AND baa.PK_ID = #{pkAwards}
|
||||||
</if>
|
</if>
|
||||||
<if test="pkMaxAwards != null">
|
<if test="pkMaxAwards != null">
|
||||||
AND AWW.PK_ID = #{pkMaxAwards}
|
AND bam.PK_ID = #{pkMaxAwards}
|
||||||
</if>
|
</if>
|
||||||
<if test="startDate != null and startDate!='' ">
|
<if test="startDate != null and startDate!='' ">
|
||||||
and cmsp.SETTLE_DATE >= to_date(#{startDate}, 'yyyy-mm-dd')
|
and cmsp.SETTLE_DATE >= to_date(#{startDate}, 'yyyy-mm-dd')
|
||||||
|
|
|
@ -155,6 +155,17 @@ public class CommonServiceProvider implements ICommonServiceApi {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// 分红奖衔
|
||||||
|
if (null != memberDataDTO.getPkRangeAwards()) {
|
||||||
|
BdAwards bdAwards = iBdAwardsService.getBdAwardsOne(memberDataDTO.getPkRangeAwards());
|
||||||
|
if (null != bdAwards) {
|
||||||
|
if (bdAwards.getAwardsValue() > EAwards.HIGH_MANAGER.getValue()) {
|
||||||
|
// 前4级不显示分红奖衔
|
||||||
|
memberDataDTO.setRangeAwardsVal(bdAwards.getAwardsName());
|
||||||
|
memberDataDTO.setRangeAwardsIcon(bdAwards.getImage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
// 币种
|
// 币种
|
||||||
if (null != memberDataDTO.getPkSettleCountry()) {
|
if (null != memberDataDTO.getPkSettleCountry()) {
|
||||||
BdCurrency bdCurrency = iBdCurrencyService.getCurrency(memberDataDTO.getPkSettleCountry());
|
BdCurrency bdCurrency = iBdCurrencyService.getCurrency(memberDataDTO.getPkSettleCountry());
|
||||||
|
|
|
@ -12,14 +12,14 @@ import lombok.Getter;
|
||||||
public enum EAwardsType {
|
public enum EAwardsType {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 级差奖衔(荣誉级别)
|
* 当月奖衔
|
||||||
*/
|
*/
|
||||||
RANGE_TYPE(1, "级差奖衔", 0, EnumsPrefixConstants.AWARDS_TYPE + "1"),
|
RANGE_TYPE(1, "当月奖衔", 0),
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 荣誉奖衔、分红奖衔
|
* 分红奖衔
|
||||||
*/
|
*/
|
||||||
SHARE_TYPE(2, "荣誉奖衔", 0, EnumsPrefixConstants.AWARDS_TYPE + "2"),
|
SHARE_TYPE(2, "分红奖衔", 0),
|
||||||
|
|
||||||
;
|
;
|
||||||
|
|
||||||
|
@ -35,8 +35,4 @@ public enum EAwardsType {
|
||||||
* 是否启用(0=是,1=否) -- 来源EYesNo
|
* 是否启用(0=是,1=否) -- 来源EYesNo
|
||||||
*/
|
*/
|
||||||
private final int enable;
|
private final int enable;
|
||||||
/**
|
|
||||||
* 国际化翻译key值
|
|
||||||
*/
|
|
||||||
private final String key;
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -53,6 +53,9 @@ public class CuMemberRetailRange extends BaseEntity {
|
||||||
@TableField("PK_GRADE")
|
@TableField("PK_GRADE")
|
||||||
private Integer pkGrade;
|
private Integer pkGrade;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 会员奖衔(当月奖衔)
|
||||||
|
*/
|
||||||
@TableField("PK_AWARDS")
|
@TableField("PK_AWARDS")
|
||||||
private Integer pkAwards;
|
private Integer pkAwards;
|
||||||
|
|
||||||
|
|
|
@ -28,6 +28,9 @@ public class CuMemberRetailRangeExt extends CuMemberRetailRange {
|
||||||
*/
|
*/
|
||||||
private Integer awardsValue;
|
private Integer awardsValue;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 分红奖衔值
|
||||||
|
*/
|
||||||
private Integer shareAwardsValue;
|
private Integer shareAwardsValue;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -157,13 +157,13 @@ public class CuMember extends BaseEntity {
|
||||||
private Integer pkSettleGradeValue;
|
private Integer pkSettleGradeValue;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 真实奖衔
|
* 当月奖衔
|
||||||
*/
|
*/
|
||||||
@TableField("PK_AWARDS")
|
@TableField("PK_AWARDS")
|
||||||
private Integer pkAwards;
|
private Integer pkAwards;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 最高奖衔
|
* 最高奖衔(荣誉奖衔)
|
||||||
*/
|
*/
|
||||||
@TableField("PK_MAX_AWARDS")
|
@TableField("PK_MAX_AWARDS")
|
||||||
private Integer pkMaxAwards;
|
private Integer pkMaxAwards;
|
||||||
|
@ -392,13 +392,13 @@ public class CuMember extends BaseEntity {
|
||||||
private Integer systemType;
|
private Integer systemType;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 荣誉奖衔
|
* 分红奖衔
|
||||||
*/
|
*/
|
||||||
@TableField("PK_RANGE_AWARDS")
|
@TableField("PK_RANGE_AWARDS")
|
||||||
private Integer pkRangeAwards;
|
private Integer pkRangeAwards;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 福利奖衔
|
* 福利奖衔(暂时不用)
|
||||||
*/
|
*/
|
||||||
@TableField("PK_BENEFIT_AWARDS")
|
@TableField("PK_BENEFIT_AWARDS")
|
||||||
private Integer pkBenefitAwards;
|
private Integer pkBenefitAwards;
|
||||||
|
|
Loading…
Reference in New Issue