Merge remote-tracking branch 'refs/remotes/origin/dev' into test

This commit is contained in:
sangelxiu1 2025-06-19 13:39:56 +08:00
commit 6647920be4
1 changed files with 63 additions and 2 deletions

View File

@ -2,6 +2,7 @@ package com.hzs.member.handlebusiness.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@ -18,6 +19,7 @@ import com.hzs.common.domain.member.detail.CuMemberAwards;
import com.hzs.common.domain.member.detail.CuMemberGrade;
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.system.base.BdCountry;
import com.hzs.common.domain.system.config.BdAwards;
@ -824,10 +826,69 @@ public class CuHandleBusinessServiceImpl extends ServiceImpl<CuHandleBusinessMap
cuMemberAwardsList.add(cuMemberAwards);
}
}
return cuMemberAwardsService.saveBatch(cuMemberAwardsList);
cuMemberAwardsService.saveBatch(cuMemberAwardsList);
}
// 2025年6月19日 手改注册等级为合伙人时,如奖衔为空,则改为黄宝 start
if(businessType.equals(EApprovalBusiness.CHANGE_SETTLEMENT_GRADE.getValue())){
// 拿本次办理业务的类型
List<Integer> businessTypeList = handleBusinessList.stream()
.map(BusinessTypeValueVO::getBusinessType)
.collect(Collectors.toList());
if(!businessTypeList.contains(EApprovalBusiness.CHANGE_AWARDS.getValue())){
List<BusinessMemberVO> businessMemberList = handleBusinessVO.getBusinessMemberList();
List<BusinessMemberVO> businessMemberListUpdate = getBusinessMemberByBusinessType(businessMemberList, EApprovalBusiness.CHANGE_SETTLEMENT_GRADE.getValue());
String localDate = LocalDate.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));
Integer period = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(localDate).getPkId();
Integer pkCountry = loginUser.getDataCountry();
R<List<BdAwards>> awardsList = iAwardsServiceApi.queryAwards(pkCountry);
Map<Integer, BdAwards> awardsMap = awardsList.getData().stream().collect(Collectors.toMap(BdAwards::getAwardsValue, o -> o));
int newLevel = awardsMap.get(EAwards.HEADER.getValue()).getPkId();
List<CuMemberAwards> cuMemberAwardsList = new ArrayList<>();
HandleBusinessVO businessVO = new HandleBusinessVO();
businessVO.setHandleBusinessList(Arrays.asList(
BusinessTypeValueVO.builder()
.businessValueList(Arrays.asList(newLevel))
.businessType(EApprovalBusiness.CHANGE_AWARDS.getValue()).build())
);
businessVO.setUpdatePkMember(loginUser.getUserId());
List<BusinessMemberVO> businessMemberVOList = new ArrayList<>();
businessVO.setBusinessMemberList(businessMemberVOList);
for (BusinessMemberVO memberVO : businessMemberListUpdate) {
CuMemberExt memberExt = cuMemberService.getMemberById(memberVO.getPkMember());
// 没有奖衔
Integer memberAwardsValue = awardsList.getData().stream().filter(o -> o.getPkId().equals(memberExt.getPkAwards())).findFirst().get().getAwardsValue();
if(ObjectUtil.isNotEmpty(memberExt) && EAwards.HEADER.getValue() > memberAwardsValue){
businessMemberVOList.add(BusinessMemberVO.builder().pkMember(memberExt.getPkId()).build());
int oldLevel = awardsMap.get(memberAwardsValue).getPkId();
Long pkMember = memberExt.getPkId();
// 记录升级历史
CuMemberAwards cuMemberAwards = CuMemberAwards.builder()
.pkMember(pkMember)
.period(period)
.upType(EUpgradeType.MANUAL_UPGRADE.getValue())
.oldLevel(oldLevel)
.newLevel(newLevel)
.purchaseStatus(getPurchaseStatus(pkMember, oldLevel))
.endValidityDate(memberVO.getEndValidityDate())
.build();
cuMemberAwards.setPkCountry(handleBusinessVO.getPkCountry());
cuMemberAwards.setPkCreator(loginUser.getUserId());
cuMemberAwardsList.add(cuMemberAwards);
}
}
// 改奖衔
if(CollUtil.isNotEmpty(businessVO.getHandleBusinessList()) && CollUtil.isNotEmpty(businessVO.getBusinessMemberList())){
cuMemberService.batchUpdateMemberByBusinessType(businessVO);
}
// 插入升级记录
if(CollUtil.isNotEmpty(cuMemberAwardsList)){
cuMemberAwardsService.saveBatch(cuMemberAwardsList);
}
}
}
// 2025年6月19日 手改注册等级为合伙人时,如奖衔为空,则改为黄宝 end
}
return Boolean.FALSE;
return Boolean.TRUE;
}
/**