Commit 4bc281eb by jianan

新单跟进119

parent 98f2f0ab
......@@ -13,9 +13,11 @@ import com.yd.csf.service.dto.CommissionExpectedAddRequest;
import com.yd.csf.service.dto.CommissionExpectedQueryRequest;
import com.yd.csf.service.dto.CommissionExpectedUpdateRequest;
import com.yd.csf.service.enums.CommissionExpectedStatusEnum;
import com.yd.csf.service.model.Commission;
import com.yd.csf.service.model.CommissionExpected;
import com.yd.csf.service.service.CommissionExpectedService;
import com.yd.csf.service.dao.CommissionExpectedMapper;
import com.yd.csf.service.service.CommissionService;
import com.yd.csf.service.vo.CommissionExpectedVO;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.ObjectUtils;
......@@ -24,6 +26,7 @@ import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.*;
import java.util.stream.Collectors;
......@@ -37,6 +40,9 @@ import java.util.stream.Collectors;
public class CommissionExpectedServiceImpl extends ServiceImpl<CommissionExpectedMapper, CommissionExpected>
implements CommissionExpectedService{
@Resource
private CommissionService commissionService;
@Override
public Page<CommissionExpectedVO> getCommissionExpectedVOPage(Page<CommissionExpected> commissionExpectedPage) {
List<CommissionExpected> CommissionExpectedList = commissionExpectedPage.getRecords();
......@@ -144,6 +150,11 @@ public class CommissionExpectedServiceImpl extends ServiceImpl<CommissionExpecte
if (CollUtil.isEmpty(addDtoList)) {
throw new BusinessException(ResultCode.PARAMS_ERROR.getCode(), "预计来佣列表不能为空");
}
// 查询保单号对应的来佣记录
List<String> policyNoList = addDtoList.stream().map(CommissionExpectedAddDto::getPolicyNo).collect(Collectors.toList());
List<Commission> commissionList = commissionService.list(new QueryWrapper<Commission>().in("policy_no", policyNoList));
Map<String, List<Commission>> commissionMap = commissionList.stream().collect(Collectors.groupingBy(item -> item.getCommissionPeriod() + "-" + item.getTotalPeriod()));
List<CommissionExpected> addList = new ArrayList<>();
List<CommissionExpected> updateList = new ArrayList<>();
......@@ -166,7 +177,6 @@ public class CommissionExpectedServiceImpl extends ServiceImpl<CommissionExpecte
commissionExpected.setUpdateTime(new Date());
updateList.add(commissionExpected);
}
}
// 新增预计来佣
if (CollectionUtils.isNotEmpty(addList)) {
......@@ -182,6 +192,20 @@ public class CommissionExpectedServiceImpl extends ServiceImpl<CommissionExpecte
}
this.updateBatchById(updateList);
}
// 关联预计来佣与来佣记录
addList.addAll(updateList);
boolean isCommissionUpdated = false;
for (CommissionExpected expected : addList) {
List<Commission> commissionListFromDb = commissionMap.get(expected.getCommissionPeriod() + "-" + expected.getTotalPeriod());
if (CollectionUtils.isNotEmpty(commissionListFromDb)) {
// 关联预计来佣与来佣记录
commissionListFromDb.forEach(commission -> commission.setCommissionExpectedBizId(expected.getCommissionExpectedBizId()));
isCommissionUpdated = true;
}
}
if (isCommissionUpdated) {
commissionService.updateBatchById(commissionList);
}
return true;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment