785834757 пре 1 година
родитељ
комит
b30650fde3

+ 17 - 39
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/controller/UnifyOrderManager.java

@@ -90,6 +90,15 @@ public class UnifyOrderManager {
     OrderStateListener orderStateListener;
 
 
+    private String getSystemCode(){
+        //如果是APP登录的话 则传递SystemCode的头部字段
+        if(baseController.getUserSystemCode().equals("APP")){
+            HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
+            return request.getHeader("system_code");
+        }
+        return baseController.getUserSystemCode();
+    }
+
     /**
      * 获取报价号
      * @param licenseNo
@@ -138,9 +147,9 @@ public class UnifyOrderManager {
     public HttpResult quote(@RequestBody QuoteVo quoteVo) throws JsonProcessingException {
         HttpResult<EsmInsCompany> esmInsCompanyHttpResult = platformClient.findById(quoteVo.getOrder().getInsuranceCompanyCode(), baseController.getToken());
         AssertionUtils.isFail(esmInsCompanyHttpResult.getCode() != 200,esmInsCompanyHttpResult.getMsg());
-        String systemCode = baseController.getAppSystemCode();
+        String systemCode = getSystemCode();
 
-        String companyName = CompanyConstants.getCompanyNameByCode(quoteVo.getOrder().getInsuranceCompanyCode());
+        String companyName = CompanyConstants.getCompanyNameByCode(esmInsCompanyHttpResult.getData().getCompanyCode());
         //先默认第一个协议
         HttpResult<List<PtlAgreement>> byCompanyId = orgClient.getByCompanyId(esmInsCompanyHttpResult.getData().getId(), baseController.getToken(),systemCode);
         if(byCompanyId.getData().isEmpty()){
@@ -160,9 +169,6 @@ public class UnifyOrderManager {
             QuoteInfoConverter.converterKindInfoVo(quoteVo.getKindInfoVo(), quoteKindMappingMap.get(QuoteRuleCategory.KIND.getCode()));
         }
 
-        //更新用户的区划code
-        setUserAreaCode(quoteVo);
-
         // 生成订单
         String ordersNo = insOrdersService.generateOrders(quoteVo,companyName);
 
@@ -182,32 +188,7 @@ public class UnifyOrderManager {
     }
 
 
-    public void setUserAreaCode(QuoteVo quoteVo){
-        HttpResult<PersonAreaVo> ownerAddress = orgClient.queryByAddress(
-                quoteVo.getOwnersInfo().getAddr(), quoteVo.getOwnersInfo().getIdentifyNumber());
-
-        HttpResult<PersonAreaVo> insuredAddress = quoteVo.getOwnersInfo().getIdentifyNumber()
-                .equals(quoteVo.getInsuredPersonInfo().getIdentifyNumber())
-                ? ownerAddress
-                : orgClient.queryByAddress(quoteVo.getInsuredPersonInfo().getAddr(), quoteVo.getInsuredPersonInfo().getIdentifyNumber());
-
-        HttpResult<PersonAreaVo> policyAddress = quoteVo.getPolicyHolderInfo().getIdentifyNumber()
-                .equals(quoteVo.getOwnersInfo().getIdentifyNumber())
-                ? ownerAddress
-                : quoteVo.getPolicyHolderInfo().getIdentifyNumber().equals(quoteVo.getInsuredPersonInfo().getIdentifyNumber())
-                ? insuredAddress
-                : orgClient.queryByAddress(quoteVo.getPolicyHolderInfo().getAddr(), quoteVo.getPolicyHolderInfo().getIdentifyNumber());
-
-        quoteVo.getOwnersInfo().setProvinceCode(ownerAddress.getData().getProvinceCode());
-        quoteVo.getOwnersInfo().setCityCode(ownerAddress.getData().getCityCode());
-        quoteVo.getOwnersInfo().setCountyCode(ownerAddress.getData().getCountyCode());
-        quoteVo.getInsuredPersonInfo().setProvinceCode(insuredAddress.getData().getProvinceCode());
-        quoteVo.getInsuredPersonInfo().setCityCode(insuredAddress.getData().getCityCode());
-        quoteVo.getInsuredPersonInfo().setCountyCode(insuredAddress.getData().getCountyCode());
-        quoteVo.getPolicyHolderInfo().setProvinceCode(policyAddress.getData().getProvinceCode());
-        quoteVo.getPolicyHolderInfo().setCityCode(policyAddress.getData().getCityCode());
-        quoteVo.getPolicyHolderInfo().setCountyCode(policyAddress.getData().getCountyCode());
-    }
+
 
     @Operation(summary = "统一核保")
     @PostMapping("/underwriting")
@@ -225,6 +206,7 @@ public class UnifyOrderManager {
 
         InsOrdersPolicy insOrdersPolicy = insOrdersPolicyService.getById(insOrders.getId());
 
+        //拼装参数
         underwritingVo.setInsOrders(insOrders);
         underwritingVo.setInsOrdersCarInfo(insOrdersCarInfo);
         underwritingVo.setInsOrdersCarUserInfoList(insOrdersCarUserInfos);
@@ -251,7 +233,7 @@ public class UnifyOrderManager {
      */
     @Operation(summary = "获取支付链接")
     @PostMapping("/getPaymentLink")
-    public HttpResult PaymentLinkService(@RequestBody PaymentLinkVo paymentLinkVo) throws JsonProcessingException {
+    public HttpResult getPaymentLink(@RequestBody PaymentLinkVo paymentLinkVo) throws JsonProcessingException {
         //获取保司实体
         InsOrders insOrders = insOrdersService.getById(paymentLinkVo.getOrder().getOrdersNo());
         AssertionUtils.isFail(Objects.isNull(insOrders),"订单不存在");
@@ -271,7 +253,7 @@ public class UnifyOrderManager {
         // 保存支付链接
         insOrders.setPayLink(paymentLinkResultsVo.getPaymentLink());
         insOrdersService.updateById(insOrders);
-        return HttpResult.ok();
+        return HttpResult.ok("");
     }
 
     @Operation(summary = "影像上传")
@@ -279,12 +261,8 @@ public class UnifyOrderManager {
     public HttpResult imagesUpload(@RequestBody InsuranceUploadImageVo insuranceUploadImageVo) {
         InsOrders insOrders = insOrdersService.getById(insuranceUploadImageVo.getOrder().getOrdersNo());
         HttpResult<EsmInsCompany> esmInsCompanyHttpResult = platformClient.findById(insOrders.getCompanyId(), baseController.getToken());
-        String systemCode = "";
-        //如果是APP登录的话 则传递SystemCode的头部字段
-        if(baseController.getUserSystemCode().equals("APP")){
-            HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
-            systemCode = request.getHeader("system_code");
-        }
+        String systemCode = getSystemCode();
+
         //先默认第一个协议
         HttpResult<List<PtlAgreement>> byCompanyId = orgClient.getByCompanyId(insOrders.getCompanyId(), baseController.getToken(),systemCode);
         if(byCompanyId.getData().isEmpty()){

+ 36 - 0
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/impl/InsOrdersServiceImpl.java

@@ -26,6 +26,7 @@ import com.jzg.commons.entity.quote.vo.*;
 import com.jzg.commons.entity.vo.InsOrdersOtherInfoVo;
 import com.jzg.commons.entity.vo.InsTaskImagesVo;
 import com.jzg.commons.entity.vo.OrdersListVo;
+import com.jzg.commons.entity.vo.PersonAreaVo;
 import com.jzg.commons.util.AssertionUtils;
 import com.jzg.commons.util.MinioUtils;
 import com.jzg.commons.util.StringUtils;
@@ -93,6 +94,9 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
 
     private final OrderStateListener orderStateListener;
 
+    private final OrgClient orgClient;
+
+
 
     @Override
     @Transactional(rollbackFor = Exception.class)
@@ -438,6 +442,33 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
         return true;
     }
 
+    public void setUserAreaCode(QuoteVo quoteVo){
+        HttpResult<PersonAreaVo> ownerAddress = orgClient.queryByAddress(
+                quoteVo.getOwnersInfo().getAddr(), quoteVo.getOwnersInfo().getIdentifyNumber());
+
+        HttpResult<PersonAreaVo> insuredAddress = quoteVo.getOwnersInfo().getIdentifyNumber()
+                .equals(quoteVo.getInsuredPersonInfo().getIdentifyNumber())
+                ? ownerAddress
+                : orgClient.queryByAddress(quoteVo.getInsuredPersonInfo().getAddr(), quoteVo.getInsuredPersonInfo().getIdentifyNumber());
+
+        HttpResult<PersonAreaVo> policyAddress = quoteVo.getPolicyHolderInfo().getIdentifyNumber()
+                .equals(quoteVo.getOwnersInfo().getIdentifyNumber())
+                ? ownerAddress
+                : quoteVo.getPolicyHolderInfo().getIdentifyNumber().equals(quoteVo.getInsuredPersonInfo().getIdentifyNumber())
+                ? insuredAddress
+                : orgClient.queryByAddress(quoteVo.getPolicyHolderInfo().getAddr(), quoteVo.getPolicyHolderInfo().getIdentifyNumber());
+
+        quoteVo.getOwnersInfo().setProvinceCode(ownerAddress.getData().getProvinceCode());
+        quoteVo.getOwnersInfo().setCityCode(ownerAddress.getData().getCityCode());
+        quoteVo.getOwnersInfo().setCountyCode(ownerAddress.getData().getCountyCode());
+        quoteVo.getInsuredPersonInfo().setProvinceCode(insuredAddress.getData().getProvinceCode());
+        quoteVo.getInsuredPersonInfo().setCityCode(insuredAddress.getData().getCityCode());
+        quoteVo.getInsuredPersonInfo().setCountyCode(insuredAddress.getData().getCountyCode());
+        quoteVo.getPolicyHolderInfo().setProvinceCode(policyAddress.getData().getProvinceCode());
+        quoteVo.getPolicyHolderInfo().setCityCode(policyAddress.getData().getCityCode());
+        quoteVo.getPolicyHolderInfo().setCountyCode(policyAddress.getData().getCountyCode());
+    }
+
     @Override
     public void orderAfterUpdateQuote(String ordersNo, QuoteResultsVo quoteResponse) {
 
@@ -553,6 +584,9 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
 
         // 保存订单用户信息
         List<InsOrdersCarUserInfo> insOrdersCarUserInfoList = new ArrayList<>();
+        //更新用户的区划code
+        setUserAreaCode(quoteVo);
+
         // 添加车主信息
         insOrdersCarUserInfoList.add(new InsOrdersCarUserInfo(quoteVo.getOwnersInfo(), insOrders.getId(),1));
         // 添加投保人信息
@@ -581,6 +615,8 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
         return orderNo;
     }
 
+
+
     @Override
     public Page<QuoteEchoVo> queryList(InsOrdersParam insOrdersParam){
         Page<InsOrdersVo> insOrdersVoPage = insOrdersMapper.queryList(insOrdersParam.getPage(), insOrdersParam);

+ 0 - 1
tenant/insurance/quotation-yongcheng/src/main/java/com/jzg/quotation/yongcheng/api/service/impl/YongChengApiRequestImpl.java

@@ -152,7 +152,6 @@ public class YongChengApiRequestImpl implements YongChengApiRequest {
 
         //build参数
         List<String> requestInfoList = new ArrayList<>();
-//        setUserAreaCode(quoteVo,orgClient);
 
         QuoteRequest quoteRequest = this.builderParams(configurationProperties, quoteVo, vehicleInfo, negotiatedPrice.toString());
         QuoteResponse quoteResponse = this.getResponse(quoteRequest,quoteVo, requestInfoList);

+ 6 - 0
tenant/organization/src/main/java/com/jzg/organization/controller/AgreementController.java

@@ -226,4 +226,10 @@ public class AgreementController extends BaseController {
         agreementService.contactEdit(param);
         return HttpResult.ok("修改成功");
     }
+
+    @Operation(summary = "根据保险公司查找协议")
+    @GetMapping("/getByCompanyId")
+    public HttpResult getByCompanyCode(String companyId) {
+        return HttpResult.ok(agreementService.getByCompanyId(companyId));
+    }
 }