helixiao 1 жил өмнө
parent
commit
f5b8227a37

+ 76 - 78
src/main/java/com/ydtech/modules/order/service/impl/YongchengOrderApiServiceImpl.java

@@ -871,84 +871,82 @@ public class YongchengOrderApiServiceImpl implements YongchengOrderApiService {
     public HttpResult callbackAnOrder(String quoteOrderNo) {
 
         InsAreaCompany iac = insAreaCompanyService.getById(quoteOrderNo);
-        iac.setOrderstatus(InsOrderStatusEnum.ACCEPT_INSURANCE.getCode());//已承保
-        insAreaCompanyService.updateCompanyAndOrders(iac);
-        return HttpResult.ok("支付成功");
-//        InsOrders order = insOrdersService.getById(iac.getOrderno());
-//        AssertionUtils.isEmpty(iac, "报价订单不存在");
-//
-//        if (StringUtils.isEmpty(iac.getAgreementId())) {
-//            return HttpResult.error("协议号空");
-//        }
-//
-//        // 获取协议配置信息
-//        YcConfigureParameters ycConfigureParameters = gainYcConfigParams(iac.getAgreementId());
-//
-//        //0 支付回调 1核保回调 5直接返回字符串信息
-//        String type = "5";
-//        //组装参数
-//        CallbackAnOrder o = CallbackAnOrder.buildCallbackAnOrderParam(iac, ycConfigureParameters.gainAuthorityDataXml(), type);
-//        //接口请求
-//        try {
-//            submitPolicy(iac.getJypremium(), ycConfigureParameters, iac.getInsOrderNo());
-//            String cleanStr = yongchengRequestApiComponents.payCallback(o);
-//            CallBackRequest param = CallBackRequest.buildCallBackParam(cleanStr);
-//            log.info("永诚API方式 - 补传回调 - 参数:{},车牌号:{}", JSON.toJSONString(param), order.getLicenseno());
-//            //订单原先状态
-//            String oldStatus = iac.getOrderstatus();
-//            //成功
-//            if (param.getResult().equals("0")) {
-//
-//                if (iac.getOrderstatus().equals(InsOrderStatusEnum.WAIT_PAY.getCode())) {
-//                    buildCallBackStatus(iac, param.getJqstatus());
-//                    if (StringUtils.isNotEmpty(param.getBizPolicyNo())) {
-//                        iac.setSypolicyno(param.getBizPolicyNo());
-//                    }
-//
-//                    if (StringUtils.isNotEmpty(param.getCiPolicyNo())) {
-//                        iac.setJqpolicyno(param.getCiPolicyNo());
-//                    }
-//
-//                    if (StringUtils.isNotEmpty(param.getYwPolicyAppNo())) {
-//                        DrivingInsuranceDto drivingInsuranceDto = new DrivingInsuranceDto();
-//                        drivingInsuranceDto.setPolicyNumber(param.getYwPolicyNo());
-//                        drivingInsuranceDto.setApplicationNumber(param.getYwPolicyAppNo());
-//                        JSONArray objects = JSON.parseArray(JSON.toJSONString(Collections.singletonList(drivingInsuranceDto)));
-//                        iac.setCrossInsurance(objects);
-//                    }
-//
-//                    if (StringUtils.isNotEmpty(param.getPay_date()) && !"null".equals(param.getPay_date())) {
-//                        iac.setPayDate(LocalDateTime.parse(param.getPay_date(), DateTimeFormatter.ofPattern("yyyy-MM" + "-dd HH:mm:ss")));
-//                    }
-//
-//                } else {
-//                    iac = buildCallBack(iac, param);
-//                }
-//
-//                if (iac.getOrderstatus().equals(InsOrderStatusEnum.TO_BACK.getCode())) {
-//                    iac.setAuditopinion("交强审核意见:" + param.getJqmessage() + "| 商业审核意见:" + param.getSymessage());
-//                }
-//
-//                StringBuffer sss = new StringBuffer();
-//                sss.append("变更前订单状态:" + order.getOrderstatus());
-//                sss.append("变更前子订单状态:" + iac.getOrderstatus());
-//                sss.append("变更后订单状态:" + order.getOrderstatus());
-//                log.info("-----------订单状态变动----------:" + sss);
-//                //  add  by  hxl  添加自动更新状态
-//                insSubOrderUpdateDetailService.insertData(iac,oldStatus,iac.getOrderstatus(),"1");
-//                insAreaCompanyService.updateCompanyAndOrdersMessage(iac, iac.getAuditopinion());
-//
-//            } else {
-//                //失败原因
-//                log.info(String.format("永诚API方式 - 补传回调 - 失败,交强保单号:{} ,商业保单号:{},类型:{}", param.getCiPolicyNo(), param.getBizPolicyNo(), param.getType()));
-//                return HttpResult.error(param.getMessage());
-//            }
-//            return HttpResult.ok("操作成功,状态已更新。");
-//        } catch (JsonProcessingException jsonProcessingException) {
-//            jsonProcessingException.printStackTrace();
-//        }
-//
-//        throw new SystemException("获取支付连接失败");
+
+        InsOrders order = insOrdersService.getById(iac.getOrderno());
+        AssertionUtils.isEmpty(iac, "报价订单不存在");
+
+        if (StringUtils.isEmpty(iac.getAgreementId())) {
+            return HttpResult.error("协议号空");
+        }
+
+        // 获取协议配置信息
+        YcConfigureParameters ycConfigureParameters = gainYcConfigParams(iac.getAgreementId());
+
+        //0 支付回调 1核保回调 5直接返回字符串信息
+        String type = "5";
+        //组装参数
+        CallbackAnOrder o = CallbackAnOrder.buildCallbackAnOrderParam(iac, ycConfigureParameters.gainAuthorityDataXml(), type);
+        //接口请求
+        try {
+            submitPolicy(iac.getJypremium(), ycConfigureParameters, iac.getInsOrderNo());
+            String cleanStr = yongchengRequestApiComponents.payCallback(o);
+            CallBackRequest param = CallBackRequest.buildCallBackParam(cleanStr);
+            log.info("永诚API方式 - 补传回调 - 参数:{},车牌号:{}", JSON.toJSONString(param), order.getLicenseno());
+            //订单原先状态
+            String oldStatus = iac.getOrderstatus();
+            //成功
+            if (param.getResult().equals("0")) {
+
+                if (iac.getOrderstatus().equals(InsOrderStatusEnum.WAIT_PAY.getCode())) {
+                    buildCallBackStatus(iac, param.getJqstatus());
+                    if (StringUtils.isNotEmpty(param.getBizPolicyNo())) {
+                        iac.setSypolicyno(param.getBizPolicyNo());
+                    }
+
+                    if (StringUtils.isNotEmpty(param.getCiPolicyNo())) {
+                        iac.setJqpolicyno(param.getCiPolicyNo());
+                    }
+
+                    if (StringUtils.isNotEmpty(param.getYwPolicyAppNo())) {
+                        DrivingInsuranceDto drivingInsuranceDto = new DrivingInsuranceDto();
+                        drivingInsuranceDto.setPolicyNumber(param.getYwPolicyNo());
+                        drivingInsuranceDto.setApplicationNumber(param.getYwPolicyAppNo());
+                        JSONArray objects = JSON.parseArray(JSON.toJSONString(Collections.singletonList(drivingInsuranceDto)));
+                        iac.setCrossInsurance(objects);
+                    }
+
+                    if (StringUtils.isNotEmpty(param.getPay_date()) && !"null".equals(param.getPay_date())) {
+                        iac.setPayDate(LocalDateTime.parse(param.getPay_date(), DateTimeFormatter.ofPattern("yyyy-MM" + "-dd HH:mm:ss")));
+                    }
+
+                } else {
+                    iac = buildCallBack(iac, param);
+                }
+
+                if (iac.getOrderstatus().equals(InsOrderStatusEnum.TO_BACK.getCode())) {
+                    iac.setAuditopinion("交强审核意见:" + param.getJqmessage() + "| 商业审核意见:" + param.getSymessage());
+                }
+
+                StringBuffer sss = new StringBuffer();
+                sss.append("变更前订单状态:" + order.getOrderstatus());
+                sss.append("变更前子订单状态:" + iac.getOrderstatus());
+                sss.append("变更后订单状态:" + order.getOrderstatus());
+                log.info("-----------订单状态变动----------:" + sss);
+                //  add  by  hxl  添加自动更新状态
+                insSubOrderUpdateDetailService.insertData(iac,oldStatus,iac.getOrderstatus(),"1");
+                insAreaCompanyService.updateCompanyAndOrdersMessage(iac, iac.getAuditopinion());
+
+            } else {
+                //失败原因
+                log.info(String.format("永诚API方式 - 补传回调 - 失败,交强保单号:{} ,商业保单号:{},类型:{}", param.getCiPolicyNo(), param.getBizPolicyNo(), param.getType()));
+                return HttpResult.error(param.getMessage());
+            }
+            return HttpResult.ok("操作成功,状态已更新。");
+        } catch (JsonProcessingException jsonProcessingException) {
+            jsonProcessingException.printStackTrace();
+        }
+
+        throw new SystemException("获取支付连接失败");
     }