Ver código fonte

订单编辑修改

wks 2 anos atrás
pai
commit
fac6f9b20e

+ 0 - 1
src/main/java/com/ydtech/modules/ins/model/vo/QuoteRespVo.java

@@ -26,7 +26,6 @@ public class QuoteRespVo {
     @ApiModelProperty("车船税")
     private double taxAmount;
 
-
     @ApiModelProperty("提示信息")
     private String tips;
 

+ 2 - 2
src/main/java/com/ydtech/modules/order/controller/InsOrdersController.java

@@ -74,8 +74,8 @@ public class InsOrdersController extends BaseController {
 
     @PostMapping("/revise")
     @ApiOperation(value = "查询订单和子订单")
-    public HttpResult<InsOrders> revise(@RequestSingleParam(value = "orderNo") String orderNo) {
-        InsOrders insOrders = this.insOrdersService.revise(orderNo);
+    public HttpResult<InsOrdersEditingVo> revise(@RequestSingleParam(value = "orderNo") String orderNo) {
+        InsOrdersEditingVo insOrders = this.insOrdersService.revise(orderNo);
         return HttpResult.ok("success", insOrders);
     }
 

+ 4 - 5
src/main/java/com/ydtech/modules/order/controller/ZijinOrderApiController.java

@@ -1,8 +1,6 @@
 package com.ydtech.modules.order.controller;
 
 
-import cn.hutool.http.server.HttpServerRequest;
-import cn.hutool.http.server.HttpServerResponse;
 import com.ydtech.aop.request.RequestSingleParam;
 import com.ydtech.core.page.HttpResult;
 import com.ydtech.modules.ins.model.vo.QuoteRespVo;
@@ -21,10 +19,11 @@ import com.ydtech.modules.order.entity.vo.zj.ZjVehicleProductsQueryVo;
 import com.ydtech.modules.order.service.ZijinOrderApiService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
 
-import javax.servlet.http.HttpServletResponse;
-import java.io.IOException;
 import java.util.List;
 
 @Api(tags = "紫金财险 Api")

+ 161 - 0
src/main/java/com/ydtech/modules/order/entity/vo/InsOrdersEditingVo.java

@@ -0,0 +1,161 @@
+package com.ydtech.modules.order.entity.vo;
+
+
+import com.ydtech.modules.ins.model.vo.AccidentResponseVo;
+import com.ydtech.modules.ins.model.vo.QuoteKindRespVo;
+import com.ydtech.modules.ins.model.vo.QuoteRiskRespVo;
+import com.ydtech.modules.order.entity.InsAreaCompany;
+import com.ydtech.modules.order.entity.InsOrders;
+import com.ydtech.modules.order.entity.TaxArrears;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.io.Serializable;
+import java.util.List;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class InsOrdersEditingVo extends InsOrders implements Serializable {
+
+    private static final long serialVersionUID = 8245987503764357200L;
+
+    private List<InsAreaCompanyEditingDto> insAreaCompanyEditingDtos;
+
+    @Data
+    public static class InsAreaCompanyEditingDto implements Serializable {
+
+        private static final long serialVersionUID = 5819731807013343817L;
+
+        @ApiModelProperty("订单状态")
+        private final String orderstatus;
+
+        @ApiModelProperty("保险公司名称")
+        private final String inscompany;
+
+        @ApiModelProperty("交强险和车船税合计")
+        private double ciSumPermium;
+
+        @ApiModelProperty("保费合计")
+        private double sumPermium;
+
+        @ApiModelProperty("车船税")
+        private double taxAmount;
+
+        @ApiModelProperty("提示信息")
+        private String tips;
+
+        @ApiModelProperty("商业险险种")
+        private List<QuoteKindRespVo> kindList;
+
+        @ApiModelProperty("交强险和商业险")
+        private List<QuoteRiskRespVo> riskList;
+
+        //add 警告信息 lig 2023-09-12
+        @ApiModelProperty("警告信息")
+        private List<String> warnMessageList;
+
+        //add 交强商业开始结束起保日期 lig 2023-09-12
+        @ApiModelProperty("开始起保日期交强")
+        private String startDateJq;
+
+        @ApiModelProperty("结束起保日期交强")
+        private String endDateJq;
+
+        @ApiModelProperty("开始起保日期交强")
+        private String startDateSy;
+
+        @ApiModelProperty("结束起保日期交强")
+        private String endDateSy;
+
+        //add end 交强商业开始结束起保日期 lig 2023-09-12
+
+        @ApiModelProperty("驾意险信息")
+        private List<AccidentResponseVo> accident;
+
+        @ApiModelProperty("订单号")
+        private String orderno;
+
+        @ApiModelProperty("是否真单交")
+        private String iszdj;
+
+        @ApiModelProperty("交强险保费")
+        private double jqPremium;
+
+        @ApiModelProperty("商业险保费")
+        private double syPremium;
+
+        @ApiModelProperty("驾意险保费")
+        private double jyPremium;
+
+        @ApiModelProperty("子订单ID")
+        private String companyId;
+
+        @ApiModelProperty("总折扣率")
+        private double totalAdjustRate;
+
+        @ApiModelProperty("交强险折扣率")
+        private String jqAdjustRate;
+
+        @ApiModelProperty("商业险折扣率")
+        private String syAdjustRate;
+
+        @ApiModelProperty("欠税明细")
+        private List<TaxArrears> taxArrears;
+
+        //add 增加返回出险信息  lig 2023-09-14
+        @ApiModelProperty("出险信息")
+        private String accidentInfoStr;
+
+        @ApiModelProperty("扩展字段")
+        private Object extendInfo;
+
+        @ApiModelProperty("交强投保单号")
+        private String jqApplyNo;
+
+        @ApiModelProperty("商业投保单号")
+        private String syApplyNo;
+
+        @ApiModelProperty("评分")
+        private String iLogPreUdwMess;
+
+        @ApiModelProperty("交强类型评分")
+        private String jqScore;
+
+        @ApiModelProperty("商业类型评分")
+        private String syScore;
+
+        @ApiModelProperty("总赔付率")
+        private double lossRation;
+
+        @ApiModelProperty("交强赔付率")
+        private double jqLossRation;
+
+        @ApiModelProperty("商业赔付率")
+        private double syLossRation;
+
+        public InsAreaCompanyEditingDto(InsAreaCompany insAreaCompany) {
+            this.orderno = insAreaCompany.getOrderno();
+            this.orderstatus = insAreaCompany.getOrderstatus();
+            this.companyId = insAreaCompany.getId();
+            this.inscompany = insAreaCompany.getInscompany();
+            this.kindList = insAreaCompany.getKindinfo().toJavaList(QuoteKindRespVo.class);
+            this.jqPremium = insAreaCompany.getJqpremium().doubleValue();
+            this.syPremium = insAreaCompany.getSypremium().doubleValue();
+            this.jyPremium = insAreaCompany.getJypremium().doubleValue();
+            this.taxAmount = insAreaCompany.getTaxamount().doubleValue();
+            this.sumPermium = insAreaCompany.getSumpremium().doubleValue();
+            this.startDateJq = insAreaCompany.getJqStartDate();
+            this.endDateJq = insAreaCompany.getJqEndDate();
+            this.startDateSy = insAreaCompany.getSyStartDate();
+            this.endDateSy = insAreaCompany.getSyEndDate();
+            this.iLogPreUdwMess = insAreaCompany.getScore();
+            this.jqScore = insAreaCompany.getJqScore();
+            this.syScore = insAreaCompany.getSyScore();
+            this.lossRation = insAreaCompany.getLossRation();
+            this.jqLossRation = insAreaCompany.getJqLossRation();
+            this.syLossRation = insAreaCompany.getSyLossRation();
+        }
+    }
+
+}

+ 2 - 5
src/main/java/com/ydtech/modules/order/service/InsOrdersService.java

@@ -7,10 +7,7 @@ import com.ydtech.modules.order.entity.BasePageResult;
 import com.ydtech.modules.order.entity.InsAreaCompany;
 import com.ydtech.modules.order.entity.InsOrders;
 import com.ydtech.modules.order.entity.dto.InsAreaCompanyQueryDto;
-import com.ydtech.modules.order.entity.vo.BaseQuoteInfoVo;
-import com.ydtech.modules.order.entity.vo.OrderQueryVo;
-import com.ydtech.modules.order.entity.vo.OrderVo;
-import com.ydtech.modules.order.entity.vo.VerifyOrdersVo;
+import com.ydtech.modules.order.entity.vo.*;
 import com.ydtech.modules.protocol.entity.dto.PtlAgreementInsCompanyDto;
 
 import java.util.List;
@@ -83,7 +80,7 @@ public interface InsOrdersService extends IService<InsOrders> {
      * @param orderNo
      * @return
      */
-    InsOrders revise(String orderNo);
+    InsOrdersEditingVo revise(String orderNo);
 
     /**
      * 验证近期是否出过单子

+ 17 - 10
src/main/java/com/ydtech/modules/order/service/impl/InsOrdersServiceImpl.java

@@ -41,6 +41,7 @@ import com.ydtech.modules.protocol.service.PtlAgreementService;
 import com.ydtech.utils.SnowFlakeUtil;
 import com.ydtech.utils.idgen.IdGenerate;
 import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.BeanUtils;
 import org.springframework.context.annotation.Lazy;
 import org.springframework.data.redis.core.StringRedisTemplate;
 import org.springframework.stereotype.Service;
@@ -173,21 +174,20 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
     }
 
     /**
-     *
-     * @param userId  当前登录人id
+     * @param userId      当前登录人id
      * @param quoteInfoVo 报价信息
      * @return
      */
     @Override
     public InsOrders generateOrder(String userId, BaseQuoteInfoVo quoteInfoVo) {
 
-        String realUserId=userId;//实际跟单业务人默认登录人
-        boolean daikeFlag=false;//是否代客录单业务
+        String realUserId = userId;//实际跟单业务人默认登录人
+        boolean daikeFlag = false;//是否代客录单业务
         //如果传递的业务归属人且与登录人不一致,则是代客录单业务
-        if(StringUtils.isNotEmpty(quoteInfoVo.getUserId())&&!userId.equals(quoteInfoVo.getUserId())){
+        if (StringUtils.isNotEmpty(quoteInfoVo.getUserId()) && !userId.equals(quoteInfoVo.getUserId())) {
             //实际跟单业务人变更为手工选择的人
-            realUserId=quoteInfoVo.getUserId();
-            daikeFlag=true;
+            realUserId = quoteInfoVo.getUserId();
+            daikeFlag = true;
         }
         // 1. 验证订单参数
         orderComponents.checkEmpty(quoteInfoVo);
@@ -195,7 +195,7 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
         SysDept dept = sysDeptService.getById(user.getDeptId());
         // 2 构造订单
         InsOrders insOrders = new InsOrders(user, dept, quoteInfoVo);
-        if(daikeFlag){//当时代客录单业务时,才需要赋值该字段
+        if (daikeFlag) {//当时代客录单业务时,才需要赋值该字段
             insOrders.setOperatorid(userId);//赋值代客录单操作人为登录人
         }
         InsOrders insOrders1 = baseMapper.selectById(quoteInfoVo.getOrderNo());
@@ -363,7 +363,7 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
     }
 
     @Override
-    public InsOrders revise(String orderNo) {
+    public InsOrdersEditingVo revise(String orderNo) {
         InsOrders insOrders = getById(orderNo);
         List<InsAreaCompany> insAreaCompanyList =
                 insAreaCompanyService.lambdaQuery()
@@ -371,7 +371,14 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
                         .orderByDesc(InsAreaCompany::getCreatetime)
                         .list();
         insOrders.setInsAreaCompanyList(insAreaCompanyList);
-        return insOrders;
+        InsOrdersEditingVo insOrdersEditingVo = new InsOrdersEditingVo();
+
+        BeanUtils.copyProperties(insOrders, insOrdersEditingVo);
+        List<InsAreaCompanyQueryDto> insAreaCompanyQueryDtos = insAreaCompanyService.getByOrderNo(orderNo);
+        List<InsOrdersEditingVo.InsAreaCompanyEditingDto> insAreaCompanyEditingDtos =
+                insAreaCompanyQueryDtos.stream().map(InsOrdersEditingVo.InsAreaCompanyEditingDto::new).collect(Collectors.toList());
+        insOrdersEditingVo.setInsAreaCompanyEditingDtos(insAreaCompanyEditingDtos);
+        return insOrdersEditingVo;
     }
 
     @Override