Commit 5fca208a by jianan

新单跟进54

parent e845e3c1
...@@ -324,7 +324,7 @@ public class ApiPolicyFollowController { ...@@ -324,7 +324,7 @@ public class ApiPolicyFollowController {
if (CollectionUtils.isEmpty(addToPolicyRequest.getPolicyNoList())) { if (CollectionUtils.isEmpty(addToPolicyRequest.getPolicyNoList())) {
return Result.fail(ErrorCode.PARAMS_ERROR.getCode(), "保单号列表不能为空"); return Result.fail(ErrorCode.PARAMS_ERROR.getCode(), "保单号列表不能为空");
} }
return Result.success(policyFollowService.addToPolicy(addToPolicyRequest)); return Result.success(policyFollowService.addToPolicy(addToPolicyRequest.getPolicyNoList()));
} }
/** /**
......
...@@ -9,6 +9,7 @@ import com.yd.csf.service.model.PolicyFollow; ...@@ -9,6 +9,7 @@ import com.yd.csf.service.model.PolicyFollow;
import com.yd.csf.service.vo.PolicyFollowDetailVO; import com.yd.csf.service.vo.PolicyFollowDetailVO;
import com.yd.csf.service.vo.PolicyFollowVO; import com.yd.csf.service.vo.PolicyFollowVO;
import java.util.List;
import java.util.Map; import java.util.Map;
/** /**
...@@ -30,7 +31,7 @@ public interface PolicyFollowService extends IService<PolicyFollow> { ...@@ -30,7 +31,7 @@ public interface PolicyFollowService extends IService<PolicyFollow> {
Map<String, Object> addPolicyFollow(PolicyFollowAddRequest policyFollowAddRequest); Map<String, Object> addPolicyFollow(PolicyFollowAddRequest policyFollowAddRequest);
Boolean addToPolicy(AddToPolicyRequest addToPolicyRequest); Boolean addToPolicy(List<String> policyNoList);
Boolean changePolicyFollowStatus(ChangePolicyFollowStatusRequest changePolicyFollowStatusRequest); Boolean changePolicyFollowStatus(ChangePolicyFollowStatusRequest changePolicyFollowStatusRequest);
......
...@@ -199,9 +199,11 @@ public class CommissionServiceImpl extends ServiceImpl<CommissionMapper, Commiss ...@@ -199,9 +199,11 @@ public class CommissionServiceImpl extends ServiceImpl<CommissionMapper, Commiss
public Boolean addCommission(CommissionAddRequest commissionAddRequest) { public Boolean addCommission(CommissionAddRequest commissionAddRequest) {
// 校验来佣所属保单是否存在 // 校验来佣所属保单是否存在
String policyNo = commissionAddRequest.getPolicyNo(); String policyNo = commissionAddRequest.getPolicyNo();
Policy policy = policyService.getOne(new QueryWrapper<Policy>().eq("policy_no", policyNo)); boolean exists = policyService.exists(new QueryWrapper<Policy>().eq("policy_no", policyNo));
if (policy == null) { // 校验来佣所属保单跟进是否存在
throw new BusinessException(ResultCode.NULL_ERROR.getCode(), "该保单不存在"); boolean policyFollowExists = policyFollowService.exists(new QueryWrapper<PolicyFollow>().eq("policy_no", policyNo));
if (!exists && !policyFollowExists) {
throw new BusinessException(ResultCode.NULL_ERROR.getCode(), "该保单号不存在,不能添加来佣");
} }
// 获取当前登录用户 // 获取当前登录用户
......
...@@ -9,6 +9,7 @@ import com.yd.auth.core.utils.SecurityUtil; ...@@ -9,6 +9,7 @@ import com.yd.auth.core.utils.SecurityUtil;
import com.yd.common.enums.CommonEnum; import com.yd.common.enums.CommonEnum;
import com.yd.common.enums.ResultCode; import com.yd.common.enums.ResultCode;
import com.yd.common.exception.BusinessException; import com.yd.common.exception.BusinessException;
import com.yd.common.result.Result;
import com.yd.common.utils.RandomStringGenerator; import com.yd.common.utils.RandomStringGenerator;
import com.yd.csf.service.common.ErrorCode; import com.yd.csf.service.common.ErrorCode;
import com.yd.csf.service.dto.*; import com.yd.csf.service.dto.*;
...@@ -20,6 +21,7 @@ import com.yd.csf.service.utils.AsyncQueryUtil; ...@@ -20,6 +21,7 @@ import com.yd.csf.service.utils.AsyncQueryUtil;
import com.yd.csf.service.vo.PolicyFollowDetailVO; import com.yd.csf.service.vo.PolicyFollowDetailVO;
import com.yd.csf.service.vo.PolicyFollowVO; import com.yd.csf.service.vo.PolicyFollowVO;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
...@@ -249,42 +251,44 @@ public class PolicyFollowServiceImpl extends ServiceImpl<PolicyFollowMapper, Pol ...@@ -249,42 +251,44 @@ public class PolicyFollowServiceImpl extends ServiceImpl<PolicyFollowMapper, Pol
return Collections.singletonMap("policyBizId", policyBizId); return Collections.singletonMap("policyBizId", policyBizId);
} }
@Override @Override
public Boolean addToPolicy(AddToPolicyRequest addToPolicyRequest) { public Boolean addToPolicy(List<String> policyNoList) {
// 获取当前登录用户 if (CollectionUtils.isEmpty(policyNoList)) {
AuthUserDto currentLoginUser = SecurityUtil.getCurrentLoginUser(); throw new BusinessException(ErrorCode.PARAMS_ERROR.getCode(), "保单号列表不能为空");
String loginUserId = currentLoginUser.getId().toString(); }
// 获取当前登录用户
List<String> policyNoList = addToPolicyRequest.getPolicyNoList(); AuthUserDto currentLoginUser = SecurityUtil.getCurrentLoginUser();
// 查询所有跟进记录 String loginUserId = currentLoginUser.getId().toString();
List<PolicyFollow> policyFollowList = list(new QueryWrapper<PolicyFollow>().in("policy_no", policyNoList));
for (PolicyFollow policyFollow : policyFollowList) { // 查询所有跟进记录
// 查询保单是否存在 List<PolicyFollow> policyFollowList = list(new QueryWrapper<PolicyFollow>().in("policy_no", policyNoList));
String policyBizId = policyFollow.getPolicyBizId(); for (PolicyFollow policyFollow : policyFollowList) {
Policy policy = policyService.getOne(new QueryWrapper<Policy>().eq("policy_biz_id", policyBizId)); // 查询保单是否存在
if (policy != null) { String policyBizId = policyFollow.getPolicyBizId();
// 更新 Policy policy = policyService.getOne(new QueryWrapper<Policy>().eq("policy_biz_id", policyBizId));
BeanUtils.copyProperties(policyFollow, policy, "id"); if (policy != null) {
policy.setUpdaterId(loginUserId); // 更新
policy.setUpdateTime(new Date()); BeanUtils.copyProperties(policyFollow, policy, "id");
policy.setUpdaterId(loginUserId);
policyService.updateById(policy); policy.setUpdateTime(new Date());
} else {
// 不存在则创建 policyService.updateById(policy);
policy = new Policy(); } else {
BeanUtils.copyProperties(policyFollow, policy, "id"); // 不存在则创建
policy.setId(null); policy = new Policy();
policy.setPolicyBizId(policyBizId); BeanUtils.copyProperties(policyFollow, policy, "id");
policy.setCreatorId(loginUserId); policy.setId(null);
policy.setCreateTime(new Date()); policy.setPolicyBizId(policyBizId);
policy.setUpdaterId(loginUserId); policy.setCreatorId(loginUserId);
policy.setUpdateTime(new Date()); policy.setCreateTime(new Date());
policy.setUpdaterId(loginUserId);
policyService.save(policy); policy.setUpdateTime(new Date());
}
} policyService.save(policy);
return true; }
} }
return true;
}
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
...@@ -334,6 +338,11 @@ public class PolicyFollowServiceImpl extends ServiceImpl<PolicyFollowMapper, Pol ...@@ -334,6 +338,11 @@ public class PolicyFollowServiceImpl extends ServiceImpl<PolicyFollowMapper, Pol
policyFollow.setUpdaterId(loginUserId); policyFollow.setUpdaterId(loginUserId);
policyFollowService.updateById(policyFollow); policyFollowService.updateById(policyFollow);
// 如果是已完成状态,同步到保单库
if (PolicyFollowStatusEnum.FINISHED.equals(policyFollowStatusEnum)) {
addToPolicy(Collections.singletonList(policyFollow.getPolicyNo()));
}
// 新增新单状态记录 // 新增新单状态记录
PolicyFollowRecord policyFollowRecord = new PolicyFollowRecord(); PolicyFollowRecord policyFollowRecord = new PolicyFollowRecord();
policyFollowRecord.setId(null); policyFollowRecord.setId(null);
......
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