3
0
Fork 0

## Feat - 设置收益区域

This commit is contained in:
sangelxiu1 2025-07-10 16:31:10 +08:00
parent 9b65d2bc58
commit 43fd4cb92b
4 changed files with 34 additions and 15 deletions

View File

@ -22,6 +22,7 @@ import com.hzs.common.domain.member.detail.CuMemberLevel;
import com.hzs.common.domain.member.detail.CuMemberServiceLog;
import com.hzs.common.domain.member.ext.CuMemberExt;
import com.hzs.common.domain.member.handleBusiness.CuHandleBusiness;
import com.hzs.common.domain.retail.member.CuMemberRetailRegion;
import com.hzs.common.domain.system.base.BdCountry;
import com.hzs.common.domain.system.config.BdAwards;
import com.hzs.common.security.utils.SecurityUtils;
@ -40,6 +41,7 @@ import com.hzs.member.handlebusiness.vo.BusinessMemberVO;
import com.hzs.member.handlebusiness.vo.BusinessTypeValueVO;
import com.hzs.member.handlebusiness.vo.HandleBusinessShowVO;
import com.hzs.member.handlebusiness.vo.HandleBusinessVO;
import com.hzs.retail.member.service.ICuMemberRetailRegionService;
import com.hzs.system.base.ICountryServiceApi;
import com.hzs.system.config.IAwardsServiceApi;
import com.hzs.system.config.IGradeServiceApi;
@ -93,6 +95,8 @@ public class CuHandleBusinessServiceImpl extends ServiceImpl<CuHandleBusinessMap
private ICuMemberBusinessLicenseService cuMemberBusinessLicenseService;
@Autowired
private ICuMemberSettlePeriodService cuMemberSettlePeriodService;
@Autowired
private ICuMemberRetailRegionService cuMemberRetailRegionService;
@DubboReference
IGradeServiceApi iGradeServiceApi;
@ -752,19 +756,19 @@ public class CuHandleBusinessServiceImpl extends ServiceImpl<CuHandleBusinessMap
if (CollUtil.isNotEmpty(businessMemberListUpdate)) {
for (BusinessMemberVO businessMemberVO : businessMemberListUpdate) {
Integer updateGradeId = Integer.parseInt(businessMemberVO.getNewValue());
if (EGrade.COMPANY.getValue() == gradesMap.get(updateGradeId).getGradeValue()) {
// 2025年6月20日 新等级 公司验全唯一
int count = cuMemberService.validateCompanyCount();
if (count > 0) {
throw new ServiceException("已存在结算等级为公司的用户,不允许重复添加!");
}
} else if (EGrade.S_VIP.getValue() == gradesMap.get(updateGradeId).getGradeValue()) {
// 2025年6月20日 新等级 分公司验省唯一
int count = cuMemberService.validateBranchOfficeCount(businessMemberVO.getAreaId(), businessMemberVO.getPkMember());
if (count > 0) {
throw new ServiceException("已存在结算绑定省的分公司用户,不允许重复添加!");
}
}
// if (EGrade.COMPANY.getValue() == gradesMap.get(updateGradeId).getGradeValue()) {
// // 2025年6月20日 新等级 公司验全唯一
// int count = cuMemberService.validateCompanyCount();
// if (count > 0) {
// throw new ServiceException("已存在结算等级为公司的用户,不允许重复添加!");
// }
// } else if (EGrade.S_VIP.getValue() == gradesMap.get(updateGradeId).getGradeValue()) {
// // 2025年6月20日 新等级 分公司验省唯一
// int count = cuMemberService.validateBranchOfficeCount(businessMemberVO.getAreaId(), businessMemberVO.getPkMember());
// if (count > 0) {
// throw new ServiceException("已存在结算绑定省的分公司用户,不允许重复添加!");
// }
// }
// 记录升级历史
cuMemberLevel = CuMemberLevel.builder()
.pkMember(businessMemberVO.getPkMember())
@ -773,6 +777,17 @@ public class CuHandleBusinessServiceImpl extends ServiceImpl<CuHandleBusinessMap
.newLevel(Integer.parseInt(businessMemberVO.getNewValue()))
.upgradeTime(new Date())
.build();
boolean delFlag = true;
if((EGrade.VIP.getValue() != Integer.parseInt(businessMemberVO.getOldValue()) && (EGrade.S_VIP.getValue() != Integer.parseInt(businessMemberVO.getOldValue())))
|| (EGrade.S_VIP.getValue() != Integer.parseInt(businessMemberVO.getOldValue()) && (EGrade.VIP.getValue() != Integer.parseInt(businessMemberVO.getOldValue())))
){
delFlag = false;
}
if(delFlag){
LambdaQueryWrapper<CuMemberRetailRegion> delWrapper = new LambdaQueryWrapper<>();
delWrapper.eq(CuMemberRetailRegion::getPkMember, businessMemberVO.getPkMember());
cuMemberRetailRegionService.remove(delWrapper);
}
cuMemberLevel.setPkCountry(handleBusinessVO.getPkCountry());
cuMemberLevel.setPkCreator(loginUser.getUserId());
cuMemberLevelList.add(cuMemberLevel);

View File

@ -1,6 +1,7 @@
package com.hzs.retail.member.controller.manage;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.hzs.common.core.annotation.Log;
@ -152,6 +153,9 @@ public class CuMemberRetailRegionController extends BaseController {
return AjaxResult.error(ConfigMsgConstants.MEMBER_RETAIL_REGION_REPEAT);
}
// 校验区域是否被占用
if(ObjectUtil.isEmpty(mrrExt.getCounty())){
mrrExt.setCounty(-1);
}
int cuMemberRetailRegion = cuMemberRetailRegionService.count(Wrappers.<CuMemberRetailRegion>lambdaQuery()
.eq(CuMemberRetailRegion::getProvince, mrrExt.getProvince())
.eq(CuMemberRetailRegion::getCity, mrrExt.getCity())

View File

@ -30,7 +30,7 @@ public class RetailMemberRegionParam implements Serializable {
/**
*
*/
@NotNull(message = "请选择收益区域")
// @NotNull(message = "请选择收益区域")
private Integer county;
/**

View File

@ -856,7 +856,7 @@
</if>
<if test='item.businessType == "113"'>
<foreach collection="item.businessValueList" index="index" item="value">
pk_settle_grade = #{value}, pk_area_id = #{businessMemberList[${index}].areaId}
pk_settle_grade = #{value}
</foreach>
</if>
<if test='item.businessType == "107"'>