forked from angelo/java-retail-app
Merge remote-tracking branch 'refs/remotes/origin/dev' into test
This commit is contained in:
commit
6647920be4
|
@ -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;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
Loading…
Reference in New Issue