Pārlūkot izejas kodu

订单状态查询调整

785834757 1 gadu atpakaļ
vecāks
revīzija
33d61c8d71

+ 6 - 0
tenant/insurance/quotation-commons/src/main/java/com/jzg/quotation/commons/entity/vo/aggregated/QuoteEchoVo.java

@@ -49,6 +49,11 @@ public class QuoteEchoVo extends QuoteVo {
 
 
     private OrderBaseVo order;
     private OrderBaseVo order;
 
 
+    /**
+     * 订单id
+     */
+    private String ordersNo;
+
     /**
     /**
      * 费用信息
      * 费用信息
      */
      */
@@ -124,6 +129,7 @@ public class QuoteEchoVo extends QuoteVo {
         if(Objects.isNull(this.getOrder())){
         if(Objects.isNull(this.getOrder())){
             this.setOrder(new OrderBaseVo());
             this.setOrder(new OrderBaseVo());
         }
         }
+        this.setOrdersNo(insOrdersVo.getId());
         this.getOrder().setOrdersNo(insOrdersVo.getId());
         this.getOrder().setOrdersNo(insOrdersVo.getId());
         this.getOrder().setQuoteNo(insOrdersVo.getQuoteNo());
         this.getOrder().setQuoteNo(insOrdersVo.getQuoteNo());
         this.getOrder().setInsuranceCompanyCode(insOrdersVo.getCompanyId());
         this.getOrder().setInsuranceCompanyCode(insOrdersVo.getCompanyId());

+ 6 - 0
tenant/insurance/quotation-summary/pom.xml

@@ -91,6 +91,12 @@
             <version>1.0-SNAPSHOT</version>
             <version>1.0-SNAPSHOT</version>
             <scope>compile</scope>
             <scope>compile</scope>
         </dependency>
         </dependency>
+
+        <!-- thymeleaf 模版类 -->
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-thymeleaf</artifactId>
+        </dependency>
     </dependencies>
     </dependencies>
     <build>
     <build>
         <plugins>
         <plugins>

+ 3 - 2
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/controller/QrCodeController.java

@@ -20,6 +20,7 @@ import io.swagger.v3.oas.annotations.tags.Tag;
 import jakarta.validation.constraints.NotBlank;
 import jakarta.validation.constraints.NotBlank;
 import lombok.RequiredArgsConstructor;
 import lombok.RequiredArgsConstructor;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.servlet.ModelAndView;
 import org.springframework.web.servlet.ModelAndView;
 import org.springframework.web.servlet.view.json.MappingJackson2JsonView;
 import org.springframework.web.servlet.view.json.MappingJackson2JsonView;
@@ -31,7 +32,7 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.List;
 import java.util.Objects;
 import java.util.Objects;
 
 
-@RestController
+@Controller
 @RequestMapping("/order/qrCode")
 @RequestMapping("/order/qrCode")
 @Tag(name = "订单二维码管理")
 @Tag(name = "订单二维码管理")
 @RequiredArgsConstructor
 @RequiredArgsConstructor
@@ -164,7 +165,7 @@ public class QrCodeController extends BaseController {
             // 获取车主.投保人.被保人
             // 获取车主.投保人.被保人
             List<InsOrdersCarUserInfo> userInfos = insOrdersCarUserInfoService.getByOrderId(orderNo);
             List<InsOrdersCarUserInfo> userInfos = insOrdersCarUserInfoService.getByOrderId(orderNo);
             // 获取车辆信息
             // 获取车辆信息
-            InsOrdersCarInfo carInfo = insOrdersCarInfoService.getById(orderNo);
+            InsOrdersCarInfo carInfo = insOrdersCarInfoService.getByOrderId(orderNo);
             // 获取订单险种
             // 获取订单险种
             List<InsOrdersRisk> insOrdersRisks = insOrdersRiskService.list(new LambdaQueryWrapper<InsOrdersRisk>()
             List<InsOrdersRisk> insOrdersRisks = insOrdersRiskService.list(new LambdaQueryWrapper<InsOrdersRisk>()
                     .eq(InsOrdersRisk::getOrderNo, orderNo)
                     .eq(InsOrdersRisk::getOrderNo, orderNo)

+ 20 - 2
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/controller/UnifyOrderManager.java

@@ -14,8 +14,10 @@ import com.jzg.commons.entity.po.EsmInsCompany;
 import com.jzg.commons.entity.po.PtlAgreement;
 import com.jzg.commons.entity.po.PtlAgreement;
 import com.jzg.commons.entity.po.SysUploadFiles;
 import com.jzg.commons.entity.po.SysUploadFiles;
 import com.jzg.commons.exception.SystemException;
 import com.jzg.commons.exception.SystemException;
+import com.jzg.commons.exception.TokenExpireException;
 import com.jzg.commons.util.AssertionUtils;
 import com.jzg.commons.util.AssertionUtils;
 import com.jzg.commons.util.MinioUtils;
 import com.jzg.commons.util.MinioUtils;
+import com.jzg.commons.util.idgen.IdGenerate;
 import com.jzg.quotation.commons.client.OrgClient;
 import com.jzg.quotation.commons.client.OrgClient;
 import com.jzg.quotation.commons.client.PlatformClient;
 import com.jzg.quotation.commons.client.PlatformClient;
 import com.jzg.quotation.commons.constant.enums.base.QuoteRuleCategory;
 import com.jzg.quotation.commons.constant.enums.base.QuoteRuleCategory;
@@ -110,6 +112,9 @@ public class UnifyOrderManager {
     @Autowired
     @Autowired
     InsOrdersPdfUrlService insOrdersPdfUrlService;
     InsOrdersPdfUrlService insOrdersPdfUrlService;
 
 
+    @Autowired
+    InsOrdersQrcodeService insOrdersQrcodeService;
+
     @Value("${minio.bucket-name}")
     @Value("${minio.bucket-name}")
     private String bucketName;
     private String bucketName;
 
 
@@ -298,16 +303,23 @@ public class UnifyOrderManager {
         // 保存支付链接
         // 保存支付链接
         insOrders.setPayLink(paymentLinkResultsVo.getPaymentLink());
         insOrders.setPayLink(paymentLinkResultsVo.getPaymentLink());
         insOrdersService.updateById(insOrders);
         insOrdersService.updateById(insOrders);
+        insOrdersQrcodeService.saveQrCode(insOrders);
         return HttpResult.ok("");
         return HttpResult.ok("");
     }
     }
 
 
+
     @Operation(summary = "影像上传")
     @Operation(summary = "影像上传")
     @PostMapping("/imagesUpload")
     @PostMapping("/imagesUpload")
     public HttpResult imagesUpload(@RequestBody InsuranceUploadImageVo insuranceUploadImageVo) {
     public HttpResult imagesUpload(@RequestBody InsuranceUploadImageVo insuranceUploadImageVo) {
+        if(Objects.isNull(baseController.getToken())){
+            throw new TokenExpireException("登录过期");
+        }
         InsOrders insOrders = insOrdersService.getById(insuranceUploadImageVo.getOrder().getOrdersNo());
         InsOrders insOrders = insOrdersService.getById(insuranceUploadImageVo.getOrder().getOrdersNo());
         HttpResult<EsmInsCompany> esmInsCompanyHttpResult = platformClient.findById(insOrders.getCompanyId(), baseController.getToken());
         HttpResult<EsmInsCompany> esmInsCompanyHttpResult = platformClient.findById(insOrders.getCompanyId(), baseController.getToken());
         String systemCode = getSystemCode();
         String systemCode = getSystemCode();
 
 
+
+
         //先默认第一个协议
         //先默认第一个协议
         HttpResult<List<PtlAgreement>> byCompanyId = orgClient.getByCompanyId(insOrders.getCompanyId(), baseController.getToken(),systemCode);
         HttpResult<List<PtlAgreement>> byCompanyId = orgClient.getByCompanyId(insOrders.getCompanyId(), baseController.getToken(),systemCode);
         if(byCompanyId.getData().isEmpty()){
         if(byCompanyId.getData().isEmpty()){
@@ -329,13 +341,19 @@ public class UnifyOrderManager {
     @PostMapping("/getOrderStatus")
     @PostMapping("/getOrderStatus")
     public HttpResult getOrderStatus(@RequestBody OrderStatusVo orderStatusVo) throws JsonProcessingException {
     public HttpResult getOrderStatus(@RequestBody OrderStatusVo orderStatusVo) throws JsonProcessingException {
 
 
+        InsOrders insOrders = insOrdersService.getById(orderStatusVo.getOrder().getOrdersNo());
+        AssertionUtils.isFail(Objects.isNull(insOrders),"订单不存在");
+        HttpResult<EsmInsCompany> esmInsCompanyHttpResult = platformClient.findById(insOrders.getCompanyId(), baseController.getToken());
+        orderStatusVo.getOrder().setAgreementId(insOrders.getAgreementId());
+        orderStatusVo.getOrder().setInsuranceCompanyCode(esmInsCompanyHttpResult.getData().getCompanyCode());
+        orderStatusVo.getOrder().setCompanyOrderNo(insOrders.getCompanyOrderNo());
+        orderStatusVo.setInsOrders(insOrders);
         //获取保司实体
         //获取保司实体
         QuotationApiBaseService orderStatusService = companyFactory.getOrderStatusService(
         QuotationApiBaseService orderStatusService = companyFactory.getOrderStatusService(
                 orderStatusVo,
                 orderStatusVo,
                 insOrdersService,
                 insOrdersService,
                 baseController);
                 baseController);
-        InsOrders insOrders = insOrdersService.getById(orderStatusVo.getOrder().getOrdersNo());
-        AssertionUtils.isFail(Objects.isNull(insOrders),"订单不存在");
+
         InsOrdersPolicy insOrdersPolicy = insOrdersPolicyService.getById(insOrders.getId());
         InsOrdersPolicy insOrdersPolicy = insOrdersPolicyService.getById(insOrders.getId());
         orderStatusVo.setInsOrdersPolicy(insOrdersPolicy);
         orderStatusVo.setInsOrdersPolicy(insOrdersPolicy);
         OrderStatusResultVo orderStatusResultVo = orderStatusService.queryOrderState(orderStatusVo);
         OrderStatusResultVo orderStatusResultVo = orderStatusService.queryOrderState(orderStatusVo);

+ 2 - 1
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/InsOrdersQrcodeService.java

@@ -41,7 +41,8 @@ public interface InsOrdersQrcodeService extends IService<InsOrdersQrcode> {
                 .eq(InsOrdersQrcode::getQrcodeStatus, 1)
                 .eq(InsOrdersQrcode::getQrcodeStatus, 1)
                 .list();
                 .list();
         if (insOrderQrCodes.isEmpty()) {
         if (insOrderQrCodes.isEmpty()) {
-            throw new SystemException("缴费二维码还未生成请点击二维码生成。");
+//            throw new SystemException("缴费二维码还未生成请点击二维码生成。");
+            return null;
         }
         }
         return insOrderQrCodes.get(0);
         return insOrderQrCodes.get(0);
 
 

+ 3 - 1
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/state/OrderState.java

@@ -59,6 +59,8 @@ public class OrderState {
         // 已承保
         // 已承保
         UNDERWRITED_EVENT,
         UNDERWRITED_EVENT,
         // 订单关闭
         // 订单关闭
-        ORDER_CLOSE_EVENT;
+        ORDER_CLOSE_EVENT,
+        // 人工到待缴费
+        RENG_PAY_PENDING_EVENT;
     }
     }
 }
 }

+ 6 - 1
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/state/config/OrderStateConfig.java

@@ -50,7 +50,12 @@ public class OrderStateConfig extends StateMachineConfigurerAdapter<OrderState.O
                 .and()
                 .and()
                 .withExternal()
                 .withExternal()
                 // 待缴费 -> 已承保
                 // 待缴费 -> 已承保
-                .source(OrderState.OrderStateEnum.PAY_PENDING).target(OrderState.OrderStateEnum.UNDERWRITED).event(OrderState.OrderStateEvent.UNDERWRITED_EVENT);
+                .source(OrderState.OrderStateEnum.PAY_PENDING).target(OrderState.OrderStateEnum.UNDERWRITED).event(OrderState.OrderStateEvent.UNDERWRITED_EVENT)
+                .and()
+                .withExternal()
+                // 人工处理 -> 待缴费
+                .source(OrderState.OrderStateEnum.STAFF_PROCESS).target(OrderState.OrderStateEnum.PAY_PENDING).event(OrderState.OrderStateEvent.RENG_PAY_PENDING_EVENT)
+        ;
 
 
         return builder.build();
         return builder.build();
     }
     }

+ 10 - 1
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/state/listener/OrderStateListener.java

@@ -135,6 +135,10 @@ public class OrderStateListener {
         return callEvent(currentStatus, OrderState.OrderStateEvent.PAY_PENDING_EVENT);
         return callEvent(currentStatus, OrderState.OrderStateEvent.PAY_PENDING_EVENT);
     }
     }
 
 
+    public StateResult rengAuditSuccess(String currentStatus){
+        return callEvent(currentStatus, OrderState.OrderStateEvent.RENG_PAY_PENDING_EVENT);
+    }
+
     /**
     /**
      * 核保失败
      * 核保失败
      * @param currentStatus
      * @param currentStatus
@@ -188,7 +192,12 @@ public class OrderStateListener {
             }
             }
             //核保成功
             //核保成功
             case PAY_PENDING -> {
             case PAY_PENDING -> {
-                stateResult = this.auditSuccess(currentStatus);
+                if(currentStatus.equals(InsOrderStatusEnum.STAFF_PROCESS.getCode()))
+                {
+                    stateResult = this.rengAuditSuccess(currentStatus);
+                }else {
+                    stateResult = this.auditSuccess(currentStatus);
+                }
             }
             }
             default -> {
             default -> {
                 stateResult.setResult(false);
                 stateResult.setResult(false);

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

@@ -200,8 +200,8 @@ public class YongChengApiRequestImpl implements YongChengApiRequest {
                     //人工核保
                     //人工核保
                     underwritingResultsVo.setUnderwritingStatus(InsOrderStatusEnum.STAFF_PROCESS);
                     underwritingResultsVo.setUnderwritingStatus(InsOrderStatusEnum.STAFF_PROCESS);
                     underwritingResultsVo.setUnderwritingResult("人工处理");
                     underwritingResultsVo.setUnderwritingResult("人工处理");
-                    underwritingResultsVo.setJqPolicyno(auditResponse.getPolicyAppNoJQ());
-                    underwritingResultsVo.setSyPolicyno(auditResponse.getPolicyAppNoSY());
+                    underwritingResultsVo.setJqApplyNo(auditResponse.getPolicyAppNoJQ());
+                    underwritingResultsVo.setSyApplyNo(auditResponse.getPolicyAppNoSY());
                 } else if ("3".equals(statusJq) || "3".equals(statusSy)) {
                 } else if ("3".equals(statusJq) || "3".equals(statusSy)) {
                     //核保退回
                     //核保退回
                     underwritingResultsVo.setUnderwritingStatus(InsOrderStatusEnum.AUDIT_FAIL);
                     underwritingResultsVo.setUnderwritingStatus(InsOrderStatusEnum.AUDIT_FAIL);
@@ -223,8 +223,8 @@ public class YongChengApiRequestImpl implements YongChengApiRequest {
                     PaymentLinkResultsVo paymentLinkResultsVo = getPaymentLink(paymentLinkVo);
                     PaymentLinkResultsVo paymentLinkResultsVo = getPaymentLink(paymentLinkVo);
                     underwritingResultsVo.setPaymentLink(paymentLinkResultsVo.getPaymentLink());
                     underwritingResultsVo.setPaymentLink(paymentLinkResultsVo.getPaymentLink());
                     underwritingResultsVo.setUnderwritingStatus(InsOrderStatusEnum.PAY_PENDING);
                     underwritingResultsVo.setUnderwritingStatus(InsOrderStatusEnum.PAY_PENDING);
-                    underwritingResultsVo.setJqPolicyno(auditResponse.getPolicyAppNoJQ());
-                    underwritingResultsVo.setSyPolicyno(auditResponse.getPolicyAppNoSY());
+                    underwritingResultsVo.setJqApplyNo(auditResponse.getPolicyAppNoJQ());
+                    underwritingResultsVo.setSyApplyNo(auditResponse.getPolicyAppNoSY());
                 }
                 }
                 underwritingResultsVo.setCompanyOrderNo(auditResponse.getOrderCode());
                 underwritingResultsVo.setCompanyOrderNo(auditResponse.getOrderCode());
             } else {
             } else {
@@ -272,7 +272,7 @@ public class YongChengApiRequestImpl implements YongChengApiRequest {
         for (InsuranceImageVo imageVo : insuranceUploadImageVo.getImageVoList()) {
         for (InsuranceImageVo imageVo : insuranceUploadImageVo.getImageVoList()) {
             //接口请求
             //接口请求
             for (InsuranceImageVo.ImageDTO imageDTO : imageVo.getImageBase64List()){
             for (InsuranceImageVo.ImageDTO imageDTO : imageVo.getImageBase64List()){
-                ImageRequest iUp = ImageRequest.buildImageUpParam(insuranceUploadImageVo.getCarInfo(), configurationProperties, imageDTO.getImageBase64Str(), imageVo.getImageType());
+                ImageRequest iUp = ImageRequest.buildImageUpParam(insuranceUploadImageVo.getCarInfo(), configurationProperties, imageDTO.getImageBase64Str(), imageVo.getImageCode());
                 try {
                 try {
                     ycRequestApiComponents.newImageUp(iUp);
                     ycRequestApiComponents.newImageUp(iUp);
                     map.put(imageVo.getImageType(), imageDTO.getImageId());
                     map.put(imageVo.getImageType(), imageDTO.getImageId());
@@ -511,7 +511,11 @@ public class YongChengApiRequestImpl implements YongChengApiRequest {
         rd.getCvrgListSY().getCvrgSY().forEach(a -> {
         rd.getCvrgListSY().getCvrgSY().forEach(a -> {
 
 
             String kindcode = a.getCCvrgNo();
             String kindcode = a.getCCvrgNo();
-            int i = ArrayUtil.indexOf(InsuranceTypeCorrespondence.getYongchengConnectInsuranceType(), kindcode);
+            for (KindInfoVo kindInfoVo : kindInfoVos) {
+                if (kindcode.equals(kindInfoVo.getKindCode())) {
+                    kindInfoVo.setPremium(a.getNPrm());
+                }
+            }
 
 
         });
         });
 
 

+ 0 - 9
tenant/organization/src/main/java/com/jzg/organization/service/impl/PtlSchemeServiceImpl.java

@@ -5,26 +5,20 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.jzg.commons.core.page.HttpResult;
 import com.jzg.commons.core.page.HttpResult;
-import com.jzg.commons.entity.dto.AgreementParam;
 import com.jzg.commons.entity.po.EsmInsCompany;
 import com.jzg.commons.entity.po.EsmInsCompany;
 import com.jzg.commons.entity.po.PtlAgreementUndwrtRulesAttr;
 import com.jzg.commons.entity.po.PtlAgreementUndwrtRulesAttr;
-import com.jzg.commons.entity.po.PtlAgreementUndwrtRulesAttrLink;
-import com.jzg.commons.entity.po.PtlAgreementUndwrtRulesDictLabal;
 import com.jzg.commons.entity.scheme.po.*;
 import com.jzg.commons.entity.scheme.po.*;
 import com.jzg.commons.entity.scheme.vo.*;
 import com.jzg.commons.entity.scheme.vo.*;
-import com.jzg.commons.entity.vo.AgreementVo;
 import com.jzg.commons.entity.vo.EsmInsCompanyResVo;
 import com.jzg.commons.entity.vo.EsmInsCompanyResVo;
 import com.jzg.commons.exception.ValidateException;
 import com.jzg.commons.exception.ValidateException;
 import com.jzg.commons.util.AssertionUtils;
 import com.jzg.commons.util.AssertionUtils;
 import com.jzg.commons.util.MinioUtils;
 import com.jzg.commons.util.MinioUtils;
-import com.jzg.commons.util.StringUtils;
 import com.jzg.costsorrule.model.ValidateSchemeRuleVo;
 import com.jzg.costsorrule.model.ValidateSchemeRuleVo;
 import com.jzg.organization.client.CostsRuleClient;
 import com.jzg.organization.client.CostsRuleClient;
 import com.jzg.organization.mapper.*;
 import com.jzg.organization.mapper.*;
 import com.jzg.organization.service.PtlAgreementService;
 import com.jzg.organization.service.PtlAgreementService;
 import com.jzg.organization.service.PtlAgreementUndwrtRulesAttrService;
 import com.jzg.organization.service.PtlAgreementUndwrtRulesAttrService;
 import com.jzg.organization.service.PtlSchemeService;
 import com.jzg.organization.service.PtlSchemeService;
-import com.jzg.quotation.commons.entity.vo.aggregated.QuoteVo;
 import org.redisson.api.RedissonClient;
 import org.redisson.api.RedissonClient;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.beans.factory.annotation.Value;
@@ -32,9 +26,6 @@ import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.annotation.Transactional;
 
 
 import java.util.*;
 import java.util.*;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
 import java.util.stream.Collectors;
 import java.util.stream.Collectors;