forked from angelo/java-retail-app
## 高级店主、董事代理撤单处理;
This commit is contained in:
parent
08fdaf709f
commit
d299b38890
|
@ -608,12 +608,12 @@ public interface CuMemberMapper extends BaseMapper<CuMember> {
|
||||||
CuMember getShopkeeperMember(@Param("pkMember") Long pkMember, @Param("gradeValue") Integer gradeValue);
|
CuMember getShopkeeperMember(@Param("pkMember") Long pkMember, @Param("gradeValue") Integer gradeValue);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询高级店主
|
* 查询会员等级
|
||||||
*
|
*
|
||||||
* @param pkMember
|
* @param pkMember
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
CuMember getGradeSvipMember(@Param("pkMember") Long pkMember);
|
CuMemberExt getGradeSvipMember(@Param("pkMember") Long pkMember, @Param("gradeValue") Integer gradeValue);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询会员直推大于博羚店主的注册、升级订单查询会员直推大于博羚店主的注册、升级订单
|
* 查询会员直推大于博羚店主的注册、升级订单查询会员直推大于博羚店主的注册、升级订单
|
||||||
|
@ -622,7 +622,7 @@ public interface CuMemberMapper extends BaseMapper<CuMember> {
|
||||||
* @param orderCode
|
* @param orderCode
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
SaOrder listRecommendVipOrder(@Param("pkMember") Long pkMember, @Param("orderCode") String orderCode);
|
SaOrder listRecommendVipOrder(@Param("pkMember") Long pkMember, @Param("orderCode") String orderCode, @Param("gradeValue") Integer gradeValue);
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -878,12 +878,12 @@ public interface ICuMemberService extends IService<CuMember> {
|
||||||
CuMember getShopkeeperMember(Long pkMember, Integer gradeValue);
|
CuMember getShopkeeperMember(Long pkMember, Integer gradeValue);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询高级店主
|
* 查询会员等级
|
||||||
*
|
*
|
||||||
* @param pkMember
|
* @param pkMember
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
CuMember getGradeSvipMember(Long pkMember);
|
CuMemberExt getGradeSvipMember(Long pkMember, Integer gradeValue);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询会员直推大于博羚店主的注册、升级订单查询会员直推大于博羚店主的注册、升级订单
|
* 查询会员直推大于博羚店主的注册、升级订单查询会员直推大于博羚店主的注册、升级订单
|
||||||
|
@ -892,7 +892,7 @@ public interface ICuMemberService extends IService<CuMember> {
|
||||||
* @param orderCode
|
* @param orderCode
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
SaOrder listRecommendVipOrder(Long pkMember, String orderCode);
|
SaOrder listRecommendVipOrder(Long pkMember, String orderCode, Integer gradeValue);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询汇总
|
* 查询汇总
|
||||||
|
|
|
@ -1674,38 +1674,47 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService {
|
||||||
memberLevelQuery.eq(CuMemberLevel::getUpType, EUpgradeType.AUTO_UPGRADE.getValue());
|
memberLevelQuery.eq(CuMemberLevel::getUpType, EUpgradeType.AUTO_UPGRADE.getValue());
|
||||||
CuMemberLevel parentLevel = iCuMemberLevelService.getOne(memberLevelQuery);
|
CuMemberLevel parentLevel = iCuMemberLevelService.getOne(memberLevelQuery);
|
||||||
if (null != parentLevel) {
|
if (null != parentLevel) {
|
||||||
// 查询推荐人信息(必须是高级店主)
|
// 查询推荐人及等级信息
|
||||||
CuMember parentMember = iCuMemberService.getGradeSvipMember(parentLevel.getPkMember());
|
CuMemberExt parentMember = iCuMemberService.getGradeSvipMember(parentLevel.getPkMember(), null);
|
||||||
if (null != parentMember) {
|
if (null != parentMember) {
|
||||||
// 推荐是高级店主,查询直推博羚店主以上订单
|
SaOrder parentOrder = null;
|
||||||
SaOrder parentOrder = iCuMemberService.listRecommendVipOrder(parentMember.getPkId(), saOrder.getOrderCode());
|
if (parentMember.getGradeValue() == EGrade.DIRECTOR.getValue()) {
|
||||||
if (null != parentOrder) {
|
// 推荐人是董事代理,查询直推区域代理以上订单
|
||||||
// 存在其它博羚店主订单,重新处理升级记录
|
parentOrder = iCuMemberService.listRecommendVipOrder(parentMember.getPkId(), saOrder.getOrderCode(), EGrade.REGION.getValue());
|
||||||
CuMemberLevel parentNewLevel = BeanUtil.copyProperties(parentLevel, CuMemberLevel.class);
|
} else if (parentMember.getGradeValue() == EGrade.S_VIP.getValue()) {
|
||||||
parentNewLevel.setPkId(null);
|
// 推荐人是高级店主,查询直推博羚店主以上订单
|
||||||
parentNewLevel.setPkOrder(parentOrder.getPkId());
|
parentOrder = iCuMemberService.listRecommendVipOrder(parentMember.getPkId(), saOrder.getOrderCode(), EGrade.VIP.getValue());
|
||||||
parentNewLevel.setUpgradeTime(parentOrder.getPayTime());
|
|
||||||
parentNewLevel.setModifiedTime(parentOrder.getPayTime());
|
|
||||||
parentNewLevel.setPkModified(parentOrder.getPkMember());
|
|
||||||
iCuMemberLevelService.save(parentNewLevel);
|
|
||||||
} else {
|
|
||||||
// 不存在其它博羚店主订单,会员需要降级处理
|
|
||||||
LambdaUpdateWrapper<CuMember> parentMemberUpdate = new LambdaUpdateWrapper<>();
|
|
||||||
parentMemberUpdate.eq(CuMember::getPkId, parentMember.getPkId());
|
|
||||||
parentMemberUpdate.set(CuMember::getPkSettleGrade, parentLevel.getOldLevel());
|
|
||||||
parentMemberUpdate.set(CuMember::getModifiedTime, currentDateTime);
|
|
||||||
iCuMemberService.update(parentMemberUpdate);
|
|
||||||
}
|
}
|
||||||
// 删除原来升级记录
|
this.handleParentLevelUpdate(parentOrder, parentLevel, parentMember, currentDateTime);
|
||||||
LambdaUpdateWrapper<CuMemberLevel> updateMemberLevel = new LambdaUpdateWrapper<>();
|
|
||||||
updateMemberLevel.eq(CuMemberLevel::getPkId, parentLevel.getPkId());
|
|
||||||
updateMemberLevel.set(CuMemberLevel::getDelFlag, EDelFlag.DELETE.getValue());
|
|
||||||
updateMemberLevel.set(CuMemberLevel::getModifiedTime, currentDateTime);
|
|
||||||
iCuMemberLevelService.update(updateMemberLevel);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void handleParentLevelUpdate(SaOrder parentOrder, CuMemberLevel parentLevel, CuMemberExt parentMember, Date currentDateTime) {
|
||||||
|
if (null != parentOrder) {
|
||||||
|
// 存在其它博羚店主订单,重新处理升级记录
|
||||||
|
CuMemberLevel parentNewLevel = BeanUtil.copyProperties(parentLevel, CuMemberLevel.class);
|
||||||
|
parentNewLevel.setPkId(null);
|
||||||
|
parentNewLevel.setPkOrder(parentOrder.getPkId());
|
||||||
|
parentNewLevel.setUpgradeTime(parentOrder.getPayTime());
|
||||||
|
parentNewLevel.setModifiedTime(parentOrder.getPayTime());
|
||||||
|
parentNewLevel.setPkModified(parentOrder.getPkMember());
|
||||||
|
iCuMemberLevelService.save(parentNewLevel);
|
||||||
|
} else {
|
||||||
|
// 不存在其它博羚店主订单,会员需要降级处理
|
||||||
|
LambdaUpdateWrapper<CuMember> parentMemberUpdate = new LambdaUpdateWrapper<>();
|
||||||
|
parentMemberUpdate.eq(CuMember::getPkId, parentMember.getPkId());
|
||||||
|
parentMemberUpdate.set(CuMember::getPkSettleGrade, parentLevel.getOldLevel());
|
||||||
|
parentMemberUpdate.set(CuMember::getModifiedTime, currentDateTime);
|
||||||
|
iCuMemberService.update(parentMemberUpdate);
|
||||||
|
}
|
||||||
|
// 删除原来升级记录
|
||||||
|
LambdaUpdateWrapper<CuMemberLevel> updateMemberLevel = new LambdaUpdateWrapper<>();
|
||||||
|
updateMemberLevel.eq(CuMemberLevel::getPkId, parentLevel.getPkId());
|
||||||
|
updateMemberLevel.set(CuMemberLevel::getDelFlag, EDelFlag.DELETE.getValue());
|
||||||
|
updateMemberLevel.set(CuMemberLevel::getModifiedTime, currentDateTime);
|
||||||
|
iCuMemberLevelService.update(updateMemberLevel);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -3250,13 +3250,13 @@ public class CuMemberServiceImpl extends ServiceImpl<CuMemberMapper, CuMember> i
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public CuMember getGradeSvipMember(Long pkMember) {
|
public CuMemberExt getGradeSvipMember(Long pkMember, Integer gradeValue) {
|
||||||
return baseMapper.getGradeSvipMember(pkMember);
|
return baseMapper.getGradeSvipMember(pkMember, gradeValue);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public SaOrder listRecommendVipOrder(Long pkMember, String orderCode) {
|
public SaOrder listRecommendVipOrder(Long pkMember, String orderCode, Integer gradeValue) {
|
||||||
return baseMapper.listRecommendVipOrder(pkMember, orderCode);
|
return baseMapper.listRecommendVipOrder(pkMember, orderCode, gradeValue);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -2382,16 +2382,18 @@
|
||||||
and bg.grade_value = #{gradeValue}
|
and bg.grade_value = #{gradeValue}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<!-- 查询高级店主 -->
|
<!-- 查询会员等级 -->
|
||||||
<select id="getGradeSvipMember" resultType="com.hzs.common.domain.member.base.CuMember">
|
<select id="getGradeSvipMember" resultType="com.hzs.common.domain.member.ext.CuMemberExt">
|
||||||
select cm.*
|
select cm.*, bg.grade_value gradeValue
|
||||||
from cu_member cm
|
from cu_member cm
|
||||||
left join bd_grade bg
|
left join bd_grade bg
|
||||||
on bg.pk_id = cm.pk_settle_grade
|
on bg.pk_id = cm.pk_settle_grade
|
||||||
where cm.del_flag = 0
|
where cm.del_flag = 0
|
||||||
and cm.category = 0
|
and cm.category = 0
|
||||||
and cm.pk_id = #{pkMember}
|
and cm.pk_id = #{pkMember}
|
||||||
and bg.grade_value = 70
|
<!--
|
||||||
|
and bg.grade_value = #{gradeValue}
|
||||||
|
-->
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<!-- 查询会员直推大于博羚店主的注册、升级订单 -->
|
<!-- 查询会员直推大于博羚店主的注册、升级订单 -->
|
||||||
|
@ -2416,7 +2418,7 @@
|
||||||
<if test="orderCode != null and orderCode != ''">
|
<if test="orderCode != null and orderCode != ''">
|
||||||
and so.order_code != #{orderCode}
|
and so.order_code != #{orderCode}
|
||||||
</if>
|
</if>
|
||||||
and bg.grade_value >= 60) so
|
and bg.grade_value >= #{gradeValue}) so
|
||||||
where rownum = 1
|
where rownum = 1
|
||||||
</select>
|
</select>
|
||||||
<select id="getMemberCountWithGradeAndParent" resultType="java.lang.Integer">
|
<select id="getMemberCountWithGradeAndParent" resultType="java.lang.Integer">
|
||||||
|
|
Loading…
Reference in New Issue