3
0
Fork 0

## Opt - 办理业务->修改结算等级,分公司绑定省

This commit is contained in:
sangelxiu1 2025-06-23 14:01:24 +08:00
parent 2b2000d769
commit 9611e6f5b1
8 changed files with 19 additions and 11 deletions

View File

@ -653,5 +653,5 @@ public interface CuMemberMapper extends BaseMapper<CuMember> {
int validateCompanyCount(@Param("gradeValue") Integer gradeValue);
int validateBranchOfficeCount(@Param("areaId") Integer areaId);
int validateBranchOfficeCount(@Param("areaId") Integer areaId, @Param("userId") Long userId);
}

View File

@ -921,5 +921,5 @@ public interface ICuMemberService extends IService<CuMember> {
int validateCompanyCount();
int validateBranchOfficeCount(Integer areaId);
int validateBranchOfficeCount(Integer areaId, Long userId);
}

View File

@ -3175,8 +3175,8 @@ public class CuMemberServiceImpl extends ServiceImpl<CuMemberMapper, CuMember> i
}
@Override
public int validateBranchOfficeCount(Integer areaId) {
return baseMapper.validateBranchOfficeCount(areaId);
public int validateBranchOfficeCount(Integer areaId, Long userId) {
return baseMapper.validateBranchOfficeCount(areaId, userId);
}
}

View File

@ -451,5 +451,7 @@ public class RetailMemberVO implements Serializable {
@Excel(name = "是否激活")
private String isActivateVal;
private Integer areaId;
private String areaName;
}

View File

@ -413,6 +413,8 @@ public class CuHandleBusinessController extends BaseController {
uc.setEndValidityDate(modifiedDate);
}
nuc.setEndValidityDate(uc.getEndValidityDate());
nuc.setAreaId(uc.getAreaId());
cov.setAreaId(uc.getAreaId());
}
}
}
@ -621,6 +623,7 @@ public class CuHandleBusinessController extends BaseController {
if (etv.getBusinessType() == EApprovalBusiness.CHANGE_SETTLEMENT_GRADE.getValue()) {
bum.setOldValue(cov.getPkSettleGrade().toString());
bum.setNewValue(newValue(etv.getBusinessValueList()));
bum.setAreaId(cov.getAreaId());
for (GradeDTO gr : gradeList.getData()) {
if (etv.getBusinessValueList().get(0).intValue() == gr.getPkId().intValue()) {
nbtvo.setNewValue(gr.getGradeName());

View File

@ -741,7 +741,7 @@ public class CuHandleBusinessServiceImpl extends ServiceImpl<CuHandleBusinessMap
private Boolean saveMemberLevel(HandleBusinessVO handleBusinessVO, LoginUser loginUser) {
Integer pkCountry = loginUser.getDataCountry();
R<List<GradeDTO>> gradeList = iGradeServiceApi.queryGradeList(pkCountry);
Map<Integer, GradeDTO> gradesMap = gradeList.getData().stream().collect(Collectors.toMap(GradeDTO::getGradeValue, o -> o));
Map<Integer, GradeDTO> gradesMap = gradeList.getData().stream().collect(Collectors.toMap(GradeDTO::getPkId, o -> o));
List<BusinessTypeValueVO> handleBusinessList = handleBusinessVO.getHandleBusinessList();
//获取期数
String localDate = LocalDate.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));
@ -764,7 +764,7 @@ public class CuHandleBusinessServiceImpl extends ServiceImpl<CuHandleBusinessMap
}
} else if (EGrade.S_VIP.getValue() == gradesMap.get(updateGradeId).getGradeValue()) {
// 2025年6月20日 新等级 分公司验省唯一
int count = cuMemberService.validateBranchOfficeCount(businessMemberVO.getAreaId());
int count = cuMemberService.validateBranchOfficeCount(businessMemberVO.getAreaId(), businessMemberVO.getPkMember());
if (count > 0) {
throw new ServiceException("已存在结算绑定省的分公司用户,不允许重复添加!");
}

View File

@ -853,7 +853,7 @@
</if>
<if test='item.businessType == "113"'>
<foreach collection="item.businessValueList" index="index" item="value">
pk_settle_grade = #{value}
pk_settle_grade = #{value}, pk_area_id = #{businessMemberList[${index}].areaId}
</foreach>
</if>
<if test='item.businessType == "107"'>
@ -2296,7 +2296,9 @@
gr.grade_name as pkRegisterGradeVal,
grr.grade_name as pkSettleGradeVal,
par.member_code parMemberCode,
par.member_name parMemberName
par.member_name parMemberName,
cm.pk_area_id as areaId,
ba.name as areaName
FROM cu_member cm
inner join CU_MEMBER_ACCOUNT cma
on cm.pk_id = cma.PK_MEMBER
@ -2312,6 +2314,7 @@
on cmt.pk_id = cm.pk_team_code
left join CU_MEMBER_RETAIL_REGION cmrr
on cm.pk_id = cmrr.PK_MEMBER and cmrr.effective = 0 and cmrr.del_flag = 0
left join bd_area ba on ba.pk_id = cm.pk_area_id
WHERE cm.del_flag = 0 and cm.pk_id in
(
SELECT cm.PK_ID
@ -2612,10 +2615,10 @@
where rownum = 1
</select>
<select id="validateCompanyCount" resultType="java.lang.Integer">
select count(1) from cu_member where PK_SETTLE_GRADE in (select pk_id from BD_GRADE where GRADE_VALUE = #{gradeValue})
select count(pk_id) from cu_member where PK_SETTLE_GRADE in (select pk_id from BD_GRADE where GRADE_VALUE = #{gradeValue})
</select>
<select id="validateBranchOfficeCount" resultType="java.lang.Integer">
select count(1) from cu_member where PK_AREA_ID = #{areaId}
select count(pk_id) from cu_member where PK_AREA_ID is not null and pk_area_id = #{areaId} and pk_id != #{userId}
</select>
</mapper>

View File

@ -126,7 +126,7 @@ public class BdAreaServiceImpl extends ServiceImpl<BdAreaMapper, BdArea> impleme
LambdaQueryWrapper<BdArea> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(BdArea::getPkCountry, CountryConstants.CHINA_COUNTRY);
queryWrapper.eq(BdArea::getParent, parentId);
queryWrapper.apply("pk_id not in (select PK_AREA_ID from cu_member)");
queryWrapper.apply("pk_id not in (select nvl(PK_AREA_ID, 0) from cu_member)");
queryWrapper.orderByAsc(BdArea::getCode);
return baseMapper.selectList(queryWrapper);
}