Merge remote-tracking branch 'origin/test' into test
This commit is contained in:
commit
cdcb13f9a1
|
@ -622,7 +622,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
|||
}
|
||||
|
||||
/**
|
||||
* 计算团队极差奖衔
|
||||
* 计算团队等级、奖衔 -- 秒结、日结
|
||||
*/
|
||||
public List<CuMemberAwards> calculateRetailRangeGradeAwards(Integer period, Map<Long, CuMemberRetailRangeExt> memberRangeExtMap, String rangeTableName, SaOrderExt saOrderExt,
|
||||
Map<Integer, BdGrade> retailTeamGradeMap, Map<Integer, BdAwards> retailAwardsMap, String secondRangeTableName,
|
||||
|
@ -645,19 +645,12 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
|||
}
|
||||
|
||||
// 累计盒数、业绩,不管激活不激活都处理,兼容不激活判断显示有问题
|
||||
if (null != secondRangeTableName) {
|
||||
// 秒结处理
|
||||
targetMemberRangeExt.setAllTeamNewBoxNum(targetMemberRangeExt.getAllTeamNewBoxNum().add(boxNum));
|
||||
targetMemberRangeExt.setAllTeamNewPv(targetMemberRangeExt.getAllTeamNewPv().add(orderAchieve));
|
||||
} else {
|
||||
// 日结处理
|
||||
targetMemberRangeExt.setAllTeamNewBoxNum(targetMemberRangeExt.getAllTeamNewBoxNum().add(boxNum));
|
||||
targetMemberRangeExt.setAllTeamBoxNum(targetMemberRangeExt.getAllTeamBoxNum().add(boxNum));
|
||||
targetMemberRangeExt.setAllTeamMonthBoxNum(targetMemberRangeExt.getAllTeamMonthBoxNum().add(boxNum));
|
||||
targetMemberRangeExt.setAllTeamNewPv(targetMemberRangeExt.getAllTeamNewPv().add(orderAchieve));
|
||||
targetMemberRangeExt.setAllTeamConsumePv(targetMemberRangeExt.getAllTeamConsumePv().add(orderAchieve));
|
||||
targetMemberRangeExt.setAllTeamMonthPv(targetMemberRangeExt.getAllTeamMonthPv().add(orderAchieve));
|
||||
}
|
||||
targetMemberRangeExt.setAllTeamNewBoxNum(targetMemberRangeExt.getAllTeamNewBoxNum().add(boxNum));
|
||||
targetMemberRangeExt.setAllTeamBoxNum(targetMemberRangeExt.getAllTeamBoxNum().add(boxNum));
|
||||
targetMemberRangeExt.setAllTeamMonthBoxNum(targetMemberRangeExt.getAllTeamMonthBoxNum().add(boxNum));
|
||||
targetMemberRangeExt.setAllTeamNewPv(targetMemberRangeExt.getAllTeamNewPv().add(orderAchieve));
|
||||
targetMemberRangeExt.setAllTeamConsumePv(targetMemberRangeExt.getAllTeamConsumePv().add(orderAchieve));
|
||||
targetMemberRangeExt.setAllTeamMonthPv(targetMemberRangeExt.getAllTeamMonthPv().add(orderAchieve));
|
||||
|
||||
// 激活的账号才能累计业绩和盒数(有注册、升级订单)
|
||||
if (targetMemberRangeExt.getEnableStatus() == EYesNo.YES.getIntValue()) {
|
||||
|
@ -751,6 +744,19 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (null != secondRangeTableName) {
|
||||
if (targetMemberRangeExt.getPkMember().equals(saOrderExt.getPkMember())) {
|
||||
// new 兼容购买等级多送2级的问题,秒结处理V4 V5方式不一样,会出现秒结等级和实际等级不匹配
|
||||
CuMemberRetailRangeExt memberRetailLevel = iCuMemberGradeService.getMemberLevel(saOrderExt.getPkMember(), saOrderExt.getPkId());
|
||||
if (null != memberRetailLevel) {
|
||||
if (memberRetailLevel.getGradeValue() > targetMemberRangeExt.getGradeValue()) {
|
||||
targetMemberRangeExt.setPkGrade(memberRetailLevel.getPkGrade());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 计算当月奖衔
|
||||
while (true) {
|
||||
// 当月奖衔值 + 5,获取下一个奖衔值
|
||||
|
@ -771,6 +777,11 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
|||
}
|
||||
break;
|
||||
}
|
||||
|
||||
// 校验大小区会员数据
|
||||
List<CuMemberRetailRangeExt> cuMemberRangeExtList = null;
|
||||
// 校验累计小部门会员数据
|
||||
List<CuMemberRetailRangeExt> cuMemberRetailRangeExtList = null;
|
||||
// 计算分红奖衔
|
||||
while (true) {
|
||||
// 当月奖衔值 + 5,获取下一个奖衔值
|
||||
|
@ -780,13 +791,14 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
|||
// 先验证累计业绩
|
||||
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());
|
||||
if (null == cuMemberRangeExtList) {
|
||||
if (null != secondRangeTableName) {
|
||||
// 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据
|
||||
cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember());
|
||||
} else {
|
||||
// 昨日结算表,查询订单会员直推数据
|
||||
cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeExtByParent(rangeTableName, targetMemberRangeExt.getPkMember());
|
||||
}
|
||||
}
|
||||
// 本人月消费业绩(默认为大区)
|
||||
BigDecimal consumeBigPv = targetMemberRangeExt.getMonthConsumePv();
|
||||
|
@ -808,14 +820,15 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
|||
// 小区业绩 >= 小区考核业绩
|
||||
if (bdAwards.getPlaceDeptNum() > 0) {
|
||||
// 验证是否有多个区满足业绩
|
||||
List<CuMemberRetailRangeExt> cuMemberRetailRangeExtList;
|
||||
// 非秒结需要查询日结相关数据,秒结表使用上面查出的数据就可以
|
||||
if (secondRangeTableName != null) {
|
||||
// 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据
|
||||
cuMemberRetailRangeExtList = cuMemberRangeExtList;
|
||||
} else {
|
||||
// 昨日结算表,查询订单会员直推数据
|
||||
cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeEnoughAchieve(rangeTableName, targetMemberRangeExt.getPkMember(), bdAwards.getShareCommunityCheck());
|
||||
if (null == cuMemberRetailRangeExtList) {
|
||||
// 非秒结需要查询日结相关数据,秒结表使用上面查出的数据就可以
|
||||
if (null != secondRangeTableName) {
|
||||
// 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据
|
||||
cuMemberRetailRangeExtList = cuMemberRangeExtList;
|
||||
} else {
|
||||
// 昨日结算表,查询订单会员直推数据
|
||||
cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeEnoughAchieve(rangeTableName, targetMemberRangeExt.getPkMember(), bdAwards.getShareCommunityCheck());
|
||||
}
|
||||
}
|
||||
|
||||
int enoughNum = 0;
|
||||
|
@ -865,16 +878,16 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
|||
// 累计盒数、业绩,不管激活不激活都处理,兼容不激活判断显示有问题
|
||||
if (isSecond) {
|
||||
// 当天,秒结处理
|
||||
targetMemberRangeExt.setAllTeamNewBoxNum(targetMemberRangeExt.getAllTeamNewBoxNum().add(boxNum));
|
||||
targetMemberRangeExt.setAllTeamNewPv(targetMemberRangeExt.getAllTeamNewPv().add(orderAchieve));
|
||||
targetMemberRangeExt.setAllTeamNewBoxNum(targetMemberRangeExt.getAllTeamNewBoxNum().subtract(boxNum));
|
||||
targetMemberRangeExt.setAllTeamNewPv(targetMemberRangeExt.getAllTeamNewPv().subtract(orderAchieve));
|
||||
} else {
|
||||
// 非当天,日结处理
|
||||
targetMemberRangeExt.setAllTeamNewBoxNum(targetMemberRangeExt.getAllTeamNewBoxNum().add(boxNum));
|
||||
targetMemberRangeExt.setAllTeamBoxNum(targetMemberRangeExt.getAllTeamBoxNum().add(boxNum));
|
||||
targetMemberRangeExt.setAllTeamMonthBoxNum(targetMemberRangeExt.getAllTeamMonthBoxNum().add(boxNum));
|
||||
targetMemberRangeExt.setAllTeamNewPv(targetMemberRangeExt.getAllTeamNewPv().add(orderAchieve));
|
||||
targetMemberRangeExt.setAllTeamConsumePv(targetMemberRangeExt.getAllTeamConsumePv().add(orderAchieve));
|
||||
targetMemberRangeExt.setAllTeamMonthPv(targetMemberRangeExt.getAllTeamMonthPv().add(orderAchieve));
|
||||
targetMemberRangeExt.setAllTeamNewBoxNum(targetMemberRangeExt.getAllTeamNewBoxNum().subtract(boxNum));
|
||||
targetMemberRangeExt.setAllTeamBoxNum(targetMemberRangeExt.getAllTeamBoxNum().subtract(boxNum));
|
||||
targetMemberRangeExt.setAllTeamMonthBoxNum(targetMemberRangeExt.getAllTeamMonthBoxNum().subtract(boxNum));
|
||||
targetMemberRangeExt.setAllTeamNewPv(targetMemberRangeExt.getAllTeamNewPv().subtract(orderAchieve));
|
||||
targetMemberRangeExt.setAllTeamConsumePv(targetMemberRangeExt.getAllTeamConsumePv().subtract(orderAchieve));
|
||||
targetMemberRangeExt.setAllTeamMonthPv(targetMemberRangeExt.getAllTeamMonthPv().subtract(orderAchieve));
|
||||
}
|
||||
|
||||
// 激活的账号才能累计业绩和盒数(有注册、升级订单)
|
||||
|
|
|
@ -39,6 +39,15 @@ public interface CuMemberGradeMapper extends BaseMapper<CuMemberGrade> {
|
|||
*/
|
||||
void updateCuMemberGradeLevel(@Param("rangeTableName") String rangeTableName, @Param("pkOrder") Long pkOrder);
|
||||
|
||||
/**
|
||||
* 查询订单升级记录
|
||||
*
|
||||
* @param pkMember
|
||||
* @param pkOrder
|
||||
* @return
|
||||
*/
|
||||
CuMemberRetailRangeExt getMemberLevel(@Param("pkMember") Long pkMember, @Param("pkOrder") Long pkOrder);
|
||||
|
||||
/**
|
||||
* 删除等级
|
||||
*/
|
||||
|
|
|
@ -36,6 +36,15 @@ public interface ICuMemberGradeService extends IService<CuMemberGrade> {
|
|||
*/
|
||||
void updateCuMemberGrade(String rangeTableName, Long pkOrder);
|
||||
|
||||
/**
|
||||
* 查询订单升级记录
|
||||
*
|
||||
* @param pkMember
|
||||
* @param pkOrder
|
||||
* @return
|
||||
*/
|
||||
CuMemberRetailRangeExt getMemberLevel(Long pkMember, Long pkOrder);
|
||||
|
||||
/**
|
||||
* 插入会员等级升级记录
|
||||
*/
|
||||
|
|
|
@ -7,7 +7,6 @@ import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt;
|
|||
import com.hzs.common.domain.member.detail.CuMemberGrade;
|
||||
import com.hzs.common.domain.member.detail.CuMemberLevel;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
@ -42,7 +41,11 @@ public class CuMemberGradeServiceImpl extends ServiceImpl<CuMemberGradeMapper, C
|
|||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public CuMemberRetailRangeExt getMemberLevel(Long pkMember, Long pkOrder) {
|
||||
return baseMapper.getMemberLevel(pkMember, pkOrder);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void insertCuMemberGrade(List<CuMemberGrade> cuMemberGradeList) {
|
||||
saveBatch(cuMemberGradeList);
|
||||
}
|
||||
|
|
|
@ -85,6 +85,18 @@
|
|||
a.pk_grade = b.pk_grade
|
||||
</update>
|
||||
|
||||
<!-- 查询订单升级记录 -->
|
||||
<select id="getMemberLevel" resultType="com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt">
|
||||
select cml.pk_member, bg.pk_id pk_grade, bg.grade_value
|
||||
from cu_member_level cml
|
||||
left join bd_grade bg
|
||||
on bg.pk_id = cml.new_level
|
||||
where cml.del_flag = 0
|
||||
and cml.up_type = 4
|
||||
and cml.pk_member = #{pkMember}
|
||||
and cml.pk_order = #{pkOrder}
|
||||
</select>
|
||||
|
||||
<!-- 删除等级 -->
|
||||
<delete id="deleteCuMemberGrade">
|
||||
update cu_member_grade
|
||||
|
|
|
@ -24,12 +24,16 @@ public class RetailConstants {
|
|||
public static final List<String> BOX_PRODUCT_LIST = Arrays.asList(
|
||||
// 注册
|
||||
"SP02410001", "SP02410002", "SP02410003", "SP02410004", "SP02410005", "SP02410006",
|
||||
"SP02410007", "SP02410008", "SP02410009", "SP02410010", "SP02410011", "SP02410012",
|
||||
// 升级
|
||||
"SP02420001", "SP02420002", "SP02420003", "SP02420004", "SP02420005", "SP02420006",
|
||||
"SP02420007", "SP02420008", "SP02420009", "SP02420010", "SP02420011", "SP02420012",
|
||||
// 复消
|
||||
"SP02430001", "SP02430002", "SP02430003", "SP02430004", "SP02430005", "SP02430006",
|
||||
"SP02430007", "SP02430008", "SP02430009", "SP02430010", "SP02430011", "SP02430012",
|
||||
// 重消
|
||||
"SP02440001", "SP02440002", "SP02440003", "SP02440005", "SP02440005", "SP02440006"
|
||||
"SP02440001", "SP02440002", "SP02440003", "SP02440005", "SP02440005", "SP02440006",
|
||||
"SP02440007", "SP02440008", "SP02440009", "SP02440010", "SP02440011", "SP02440012"
|
||||
);
|
||||
|
||||
/**
|
||||
|
@ -38,12 +42,16 @@ public class RetailConstants {
|
|||
public static final List<String> ALL_BOX_WARES_LIST = Arrays.asList(
|
||||
// 注册
|
||||
"SP02410001", "SP02410002", "SP02410003", "SP02410004", "SP02410005", "SP02410006",
|
||||
"SP02410007", "SP02410008", "SP02410009", "SP02410010", "SP02410011", "SP02410012",
|
||||
// 升级
|
||||
"SP02420001", "SP02420002", "SP02420003", "SP02420004", "SP02420005", "SP02420006",
|
||||
"SP02420007", "SP02420008", "SP02420009", "SP02420010", "SP02420011", "SP02420012",
|
||||
// 复消
|
||||
"SP02430001", "SP02430002", "SP02430003", "SP02430004", "SP02430005", "SP02430006",
|
||||
"SP02430007", "SP02430008", "SP02430009", "SP02430010", "SP02430011", "SP02430012",
|
||||
// 重消
|
||||
"SP02440001", "SP02440002", "SP02440003", "SP02440005", "SP02440005", "SP02440006"
|
||||
"SP02440001", "SP02440002", "SP02440003", "SP02440005", "SP02440005", "SP02440006",
|
||||
"SP02440007", "SP02440008", "SP02440009", "SP02440010", "SP02440011", "SP02440012"
|
||||
);
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue