Ver código fonte

Merge remote-tracking branch 'origin/test' into test

Qchen 2 anos atrás
pai
commit
716c528ce1
21 arquivos alterados com 270 adições e 18 exclusões
  1. 4 1
      src/main/java/com/ydtech/constants/enums/dict/FeeAuditAuditstatus.java
  2. 38 6
      src/main/java/com/ydtech/modules/fnc/controller/CarSettleController.java
  3. 4 0
      src/main/java/com/ydtech/modules/fnc/entity/InsFeeAudit.java
  4. 5 0
      src/main/java/com/ydtech/modules/fnc/entity/InsPlyIncome.java
  5. 18 0
      src/main/java/com/ydtech/modules/fnc/entity/vo/ProblemOrderQueryVo.java
  6. 9 1
      src/main/java/com/ydtech/modules/fnc/service/InsFeeAuditService.java
  7. 2 1
      src/main/java/com/ydtech/modules/fnc/service/impl/InsFeeAuditServiceImpl.java
  8. 42 0
      src/main/java/com/ydtech/modules/order/controller/ExternalOrderController.java
  9. 8 0
      src/main/java/com/ydtech/modules/order/dao/InsAreaCompanyMapper.java
  10. 6 0
      src/main/java/com/ydtech/modules/order/entity/InsAreaCompany.java
  11. 6 0
      src/main/java/com/ydtech/modules/order/entity/InsOrders.java
  12. 6 0
      src/main/java/com/ydtech/modules/order/entity/vo/AuditOrderFeeVo.java
  13. 9 0
      src/main/java/com/ydtech/modules/order/entity/vo/BaseQuoteVo.java
  14. 3 0
      src/main/java/com/ydtech/modules/order/entity/vo/OrderQueryVo.java
  15. 9 0
      src/main/java/com/ydtech/modules/order/entity/vo/RejectPageQueryVo.java
  16. 22 0
      src/main/java/com/ydtech/modules/order/service/InsAreaCompanyService.java
  17. 55 2
      src/main/java/com/ydtech/modules/order/service/impl/InsAreaCompanyServiceImpl.java
  18. 1 1
      src/main/resources/application-prod.yml
  19. 3 3
      src/main/resources/mapper/modules/admin/SysUserLinkAreaMapper.xml
  20. 1 3
      src/main/resources/mapper/modules/fnc/InsPlyIncomeMapper.xml
  21. 19 0
      src/main/resources/mapper/modules/order/InsAreaCompanyMapper.xml

+ 4 - 1
src/main/java/com/ydtech/constants/enums/dict/FeeAuditAuditstatus.java

@@ -14,7 +14,10 @@ public enum FeeAuditAuditstatus {
 
     PASSED("1","已审核",2,1),
 
-    REJECT("2","驳回",3,1);
+    REJECT("2","驳回",3,1),
+
+    //轨迹中显示 承保信息
+    UNDERWRITING("3","已承保",4,1);
 
     // 编号
     private final String code;

+ 38 - 6
src/main/java/com/ydtech/modules/fnc/controller/CarSettleController.java

@@ -9,6 +9,7 @@ import com.ydtech.modules.base.controller.BaseController;
 import com.ydtech.modules.fee.service.FeeRuleSchemeService;
 import com.ydtech.modules.fnc.entity.InsFeeAudit;
 import com.ydtech.modules.fnc.entity.InsFeeAuditHistory;
+import com.ydtech.modules.fnc.entity.vo.ProblemOrderQueryVo;
 import com.ydtech.modules.fnc.service.InsFeeAuditHistoryService;
 import com.ydtech.modules.fnc.service.InsFeeAuditService;
 import com.ydtech.modules.order.entity.BasePageResult;
@@ -25,6 +26,7 @@ import org.apache.commons.lang3.StringUtils;
 import org.springframework.web.bind.annotation.*;
 
 import javax.validation.Valid;
+import java.util.ArrayList;
 import java.util.List;
 
 @Api(tags = "财务-车险结算")
@@ -108,12 +110,18 @@ public class CarSettleController extends BaseController {
 
         if (areaList != null && !areaList.isEmpty()) {
             try {
-                if ("1".equals(auditOrderFeeVo.getUpdateFlag())) {
-                    String userId = getUserId();
-                    feeRuleSchemeService.compareAndUpdateFeeOrderInfo(areaList.get(0).getId(), auditOrderFeeVo.getJqCostsProportionStr(),
-                            auditOrderFeeVo.getSyCostsProportionStr(), userId);
+//                if ("1".equals(auditOrderFeeVo.getUpdateFlag())) {
+//                    String userId = getUserId();
+//                    feeRuleSchemeService.compareAndUpdateFeeOrderInfo(areaList.get(0).getId(), auditOrderFeeVo.getJqCostsProportionStr(),
+//                            auditOrderFeeVo.getSyCostsProportionStr(), userId);
+//                }
+                //审核通过
+                if(auditOrderFeeVo.getAuditStatus().equals("1")) {
+                    insFeeAuditService.feeAudit(orderNo, areaList.get(0).getId(), false, FeeAuditAuditstatus.PASSED.getCode());
+                }else if(auditOrderFeeVo.getAuditStatus().equals("0") || auditOrderFeeVo.getAuditStatus().equals("2")) {
+                    insFeeAuditService.saveDefaultInsFeeAuditAndHistory(orderNo, areaList.get(0).getId(),
+                            auditOrderFeeVo.getAuditStatus(), auditOrderFeeVo.getRejectinfo());
                 }
-                insFeeAuditService.feeAudit(orderNo, areaList.get(0).getId(), false,FeeAuditAuditstatus.PASSED.getCode());
             } catch (Exception e) {
                 e.printStackTrace();
                 return HttpResult.error("系统异常");
@@ -129,10 +137,34 @@ public class CarSettleController extends BaseController {
     @GetMapping("/getFeeAuditHistory/{orderno}")
     @ApiOperation(value = "获取费用审核轨迹")
     public HttpResult<List<InsFeeAuditHistory>> getFeeAuditHistory(@PathVariable("orderno") String orderno) {
+        InsAreaCompany underWrittenSubOrder = insAreaCompanyService.getById(orderno);
+        if (underWrittenSubOrder == null) {
+            return HttpResult.error("订单号有误-未承保");
+        }
+        List<InsFeeAuditHistory> list = new ArrayList<>();
+        InsFeeAuditHistory insFeeAuditHistory = new InsFeeAuditHistory();
+        insFeeAuditHistory.setOrderno(underWrittenSubOrder.getOrderno());
+        insFeeAuditHistory.setInsOrderNo(underWrittenSubOrder.getId());
+        insFeeAuditHistory.setInsCompany(underWrittenSubOrder.getInscompany());
+        insFeeAuditHistory.setOperator(underWrittenSubOrder.getUserName());
+        insFeeAuditHistory.setOperatorTime(underWrittenSubOrder.getSigningTime());
+        insFeeAuditHistory.setAuditstatus(FeeAuditAuditstatus.UNDERWRITING.getCode());
+        list.add(insFeeAuditHistory);
         LambdaQueryWrapper<InsFeeAuditHistory> wrapper = new LambdaQueryWrapper<>();
         wrapper.eq(InsFeeAuditHistory::getInsOrderNo, orderno);
         wrapper.orderByAsc(InsFeeAuditHistory::getOperatorTime);
-        List<InsFeeAuditHistory> list = insFeeAuditHistoryService.list(wrapper);
+        list.addAll(insFeeAuditHistoryService.list(wrapper));
         return HttpResult.ok("success", list);
     }
+
+    /**
+     * 标注疑问订单
+     * @return
+     */
+    @PostMapping("markProblemOrder")
+    @ApiOperation("标注疑问订单")
+    public HttpResult<Object> markProblemOrder(@RequestBody ProblemOrderQueryVo problemOrderQueryVo){
+        return insAreaCompanyService.markProblemOrder(problemOrderQueryVo) ? HttpResult.ok("标注成功")
+                : HttpResult.error("标注失败");
+    }
 }

+ 4 - 0
src/main/java/com/ydtech/modules/fnc/entity/InsFeeAudit.java

@@ -44,4 +44,8 @@ public class InsFeeAudit implements Serializable {
     @ApiModelProperty("审核人")
     @TableField("audituser")
     private String audituser;
+
+    @ApiModelProperty("驳回详情")
+    @TableField("rejectinfo")
+    private String rejectinfo;
 }

+ 5 - 0
src/main/java/com/ydtech/modules/fnc/entity/InsPlyIncome.java

@@ -463,6 +463,11 @@ public class InsPlyIncome implements Serializable {
     private String operationStatus;
 
 
+    @ApiModelProperty("是否外部订单")
+    @TableField(exist = false)
+    private String isExternal;
+
+
     public InsPlyIncome(String orderno, String policyno, String syPolicyno, String noPolicyno, String settleno, String deptId, String deptName, String riskcode, LocalDateTime payDate, LocalDateTime signDate, String companyId, String companyName, String agreementId, String licenseno, BigDecimal taxamount, BigDecimal noTaxPremium, BigDecimal commissionFeerate, BigDecimal otherFeerate, BigDecimal commissionFeevalue, BigDecimal otherFeevalue, BigDecimal allFeeValue, BigDecimal finalFeeValue, BigDecimal doingFeeValue, LocalDateTime createTime, String voucherNumber, String contractId, String contractFileId, String handlingFeesStatus, String documentaryFeesStatus, String isNotCar, String isNotDocumentary) {
         this.orderno = orderno;
         this.policyno = policyno;

+ 18 - 0
src/main/java/com/ydtech/modules/fnc/entity/vo/ProblemOrderQueryVo.java

@@ -0,0 +1,18 @@
+package com.ydtech.modules.fnc.entity.vo;
+
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+@ApiModel(value = "标注疑问订单")
+public class ProblemOrderQueryVo {
+
+    @ApiModelProperty("子订单号")
+    private String subOrder;
+
+    @ApiModelProperty("标注属性")
+    private String problemOrder;
+}

+ 9 - 1
src/main/java/com/ydtech/modules/fnc/service/InsFeeAuditService.java

@@ -27,7 +27,15 @@ public interface InsFeeAuditService extends IService<InsFeeAudit> {
      InsFeeAudit saveInsFeeAuditAndHistory(String orderNo, String insOrderNo, boolean isAutoAudit, String auditstatus);
 
 
-     InsFeeAudit saveDefaultInsFeeAuditAndHistory(String orderNo, String insOrderNo, String auditstatus);
+     /**
+      * 保存审核状态及历史表
+      * @param orderNo
+      * @param insOrderNo
+      * @param auditstatus
+      * @param rejectInfo
+      * @return
+      */
+     InsFeeAudit saveDefaultInsFeeAuditAndHistory(String orderNo, String insOrderNo, String auditstatus, String rejectInfo);
 
 
 

+ 2 - 1
src/main/java/com/ydtech/modules/fnc/service/impl/InsFeeAuditServiceImpl.java

@@ -808,7 +808,7 @@ public class InsFeeAuditServiceImpl extends ServiceImpl<InsFeeAuditMapper, InsFe
     }
 
     @Override
-    public InsFeeAudit saveDefaultInsFeeAuditAndHistory(String orderNo, String insOrderNo, String auditstatus) {
+    public InsFeeAudit saveDefaultInsFeeAuditAndHistory(String orderNo, String insOrderNo, String auditstatus, String rejectInfo) {
         //查询费用审核表
         InsFeeAudit insFeeAudit = getOne(new LambdaQueryWrapper<InsFeeAudit>().eq(InsFeeAudit::getOrderno, orderNo));
 
@@ -824,6 +824,7 @@ public class InsFeeAuditServiceImpl extends ServiceImpl<InsFeeAuditMapper, InsFe
         } else {
             //状态码为已审核且数据不为空,则更新审核状态
             insFeeAudit.setAuditstatus(auditstatus);
+            insFeeAudit.setRejectinfo(rejectInfo);
             this.update(insFeeAudit, new LambdaUpdateWrapper<InsFeeAudit>().eq(InsFeeAudit::getOrderno, orderNo));
         }
         //复制审核对象的属性

+ 42 - 0
src/main/java/com/ydtech/modules/order/controller/ExternalOrderController.java

@@ -1,21 +1,28 @@
 package com.ydtech.modules.order.controller;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ydtech.core.page.HttpResult;
+import com.ydtech.modules.base.controller.BaseController;
 import com.ydtech.modules.ins.model.vo.QuoteRespVo;
 import com.ydtech.modules.order.aop.QuoteVerification;
 import com.ydtech.modules.order.components.InsOrdersComponents;
 import com.ydtech.modules.order.entity.vo.AccidentalDrivingVo;
 import com.ydtech.modules.order.entity.vo.BaseQuoteInfoVo;
 import com.ydtech.modules.order.entity.vo.BaseQuoteVo;
+import com.ydtech.modules.order.entity.vo.RejectPageQueryVo;
 import com.ydtech.modules.order.service.InsAreaCompanyExternalPolicyService;
 import com.ydtech.modules.order.service.InsAreaCompanyService;
 import com.ydtech.modules.order.service.InsOrdersService;
+import com.ydtech.modules.order.service.InsTaskImagesService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.RequiredArgsConstructor;
+import org.apache.poi.ss.formula.functions.T;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
+import static com.ydtech.modules.base.model.vo.PageVo.buildPageRequest;
+
 @Api(tags = "外部订单 api")
 @RestController
 @RequestMapping("/api/externalOrder")
@@ -31,6 +38,9 @@ public class ExternalOrderController {
     @Autowired
     private InsAreaCompanyExternalPolicyService insAreaCompanyExternalPolicyService;
 
+    @Autowired
+    private InsTaskImagesService insTaskImagesService;
+
     @PostMapping("/saveSubOrder")
     @ApiOperation("保存子订单")
     public HttpResult<QuoteRespVo> saveSubOrder(@RequestBody BaseQuoteVo<AccidentalDrivingVo> quoteVo) {
@@ -39,9 +49,41 @@ public class ExternalOrderController {
         return result ? HttpResult.ok("添加订单成功") : HttpResult.error("添加订单失败");
     }
 
+    @PostMapping("/updateSubOrder")
+    @ApiOperation("更新订单")
+    public HttpResult<Object> updateSubOrder(@RequestBody BaseQuoteVo<AccidentalDrivingVo> quoteVo){
+        BaseQuoteInfoVo quoteInfo = this.insOrdersComponents.getQuoteInfo(quoteVo.getOrderNo(), quoteVo.getAgreementId());
+        boolean result = this.insAreaCompanyService.saveSubOrder(quoteInfo, quoteVo);
+        return result ? HttpResult.ok("添加订单成功") : HttpResult.error("添加订单失败");
+    }
+
+    /**
+     * 获取证件信息
+     * @param quoteNo   报价号
+     * @return
+     */
+    @PostMapping("/getCertificateInfo")
+    @ApiOperation("获取证件信息")
+    public HttpResult getCertificateInfo(String quoteNo){
+        return insTaskImagesService.findByQuoteNo(quoteNo);
+    }
+
+
+
+
     @GetMapping("/getPolicyPrint")
     @ApiOperation("获取保单信息")
     public HttpResult getPolicyPrint(@RequestParam String subOrderNo) {
         return HttpResult.ok(this.insAreaCompanyExternalPolicyService.getPolicyByCompanyId(subOrderNo));
     }
+
+    /**
+     * 驳回分页列表
+     */
+    @PostMapping("/rejectPage")
+    @ApiOperation("驳回分页列表")
+    public HttpResult<Object> getRejectPage(@RequestBody RejectPageQueryVo rejectPageQueryVo){
+        Page page = buildPageRequest(rejectPageQueryVo.getPageDto());
+        return HttpResult.ok(insAreaCompanyService.getRejectOrder(page, BaseController.getUser().getId()));
+    }
 }

+ 8 - 0
src/main/java/com/ydtech/modules/order/dao/InsAreaCompanyMapper.java

@@ -121,6 +121,14 @@ public interface InsAreaCompanyMapper extends BaseMapper<InsAreaCompany> {
      *  @Description: 查询总的签单数
      */
     AllpremiumDto getAllpremium(@Param("year") String year,@Param("userId") String userId);
+
+    /**
+     * 获取审核驳回订单
+     * @param page
+     * @param userId
+     * @return
+     */
+    Page<InsAreaCompany> getRejectOrder(Page page,@Param("userId") String userId);
 }
 
 

+ 6 - 0
src/main/java/com/ydtech/modules/order/entity/InsAreaCompany.java

@@ -447,6 +447,12 @@ public class InsAreaCompany implements Serializable {
     @TableField("sy_claims")
     private String syClaims;
 
+    /**
+     * 疑问订单标注
+     */
+    @TableField("problem_order")
+    private String problemOrder;
+
     /**
      * 非车信息
      */

+ 6 - 0
src/main/java/com/ydtech/modules/order/entity/InsOrders.java

@@ -86,6 +86,9 @@ public class InsOrders implements Serializable {
     @TableField(value = "operatorid")
     private String operatorid;
 
+    @TableField(exist = false)
+    private String operatorName;
+
     /**
      * 用户名称
      */
@@ -266,6 +269,9 @@ public class InsOrders implements Serializable {
     @TableField(exist = false)
     private String taxamount;
 
+    @TableField(exist = false)
+    private String problemOrder;
+
     public InsOrders(SysUser user, SysDept dept, BaseQuoteInfoVo quoteInfoVo) {
         // 2. 组装订单
         this.setQuoteno(String.valueOf(quoteInfoVo.getQuoteno()));

+ 6 - 0
src/main/java/com/ydtech/modules/order/entity/vo/AuditOrderFeeVo.java

@@ -24,4 +24,10 @@ public class AuditOrderFeeVo {
     @ApiModelProperty(value = "是否修改过 修改:1 未修改:0")
     private String updateFlag;
 
+    @ApiModelProperty(value = "审核状态")
+    private String auditStatus;
+
+    @ApiModelProperty(value = "驳回消息")
+    private String rejectinfo;
+
 }

+ 9 - 0
src/main/java/com/ydtech/modules/order/entity/vo/BaseQuoteVo.java

@@ -73,6 +73,15 @@ public class BaseQuoteVo<T> {
     @ApiModelProperty("交强电子标志")
     private String jqSign;
 
+    @ApiModelProperty("评分")
+    private String score;
+
+    @ApiModelProperty("交强续保")
+    private String jqRenewal;
+
+    @ApiModelProperty("商业续保")
+    private String syRenewal;
+
 
     @ApiModelProperty("商业保单号")
     private String sypolicyno;

+ 3 - 0
src/main/java/com/ydtech/modules/order/entity/vo/OrderQueryVo.java

@@ -139,6 +139,9 @@ public class OrderQueryVo {
     @ApiModelProperty(value = "支付结束时间")
     private String payEndDateStr;
 
+    @ApiModelProperty(value = "是否外部订单")
+    private String isExternal;
+
 
     public LocalDate getEndDatePlusOneDay() {
         if(ObjectUtils.isEmpty(endDate)){

+ 9 - 0
src/main/java/com/ydtech/modules/order/entity/vo/RejectPageQueryVo.java

@@ -0,0 +1,9 @@
+package com.ydtech.modules.order.entity.vo;
+
+import com.ydtech.core.page.PageRequest;
+import lombok.Data;
+
+@Data
+public class RejectPageQueryVo extends PageRequest {
+
+}

+ 22 - 0
src/main/java/com/ydtech/modules/order/service/InsAreaCompanyService.java

@@ -3,6 +3,7 @@ package com.ydtech.modules.order.service;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.ydtech.core.page.HttpResult;
+import com.ydtech.modules.fnc.entity.vo.ProblemOrderQueryVo;
 import com.ydtech.modules.order.entity.InsAreaCompany;
 import com.ydtech.modules.order.entity.InsAreaCompanyAccidentalDriving;
 import com.ydtech.modules.order.entity.InsAreaCompanyPosition;
@@ -133,4 +134,25 @@ public interface InsAreaCompanyService extends IService<InsAreaCompany> {
      * @return
      */
     boolean saveSubOrder(BaseQuoteInfoVo quoteInfo, BaseQuoteVo<AccidentalDrivingVo> quoteVo);
+
+    /**
+     * 根据订单id 获取已承保的子订单信息
+     * @param orderno
+     * @return
+     */
+    InsAreaCompany getUnderWrittenSubOrder(String orderno);
+
+    /**
+     * 标注疑问订单
+     * @param problemOrderQueryVo
+     * @return
+     */
+    boolean markProblemOrder(ProblemOrderQueryVo problemOrderQueryVo);
+
+    /**
+     * 获取审核驳回订单
+     * @param userId
+     * @return
+     */
+    Page<InsAreaCompany> getRejectOrder(Page page,String userId);
 }

+ 55 - 2
src/main/java/com/ydtech/modules/order/service/impl/InsAreaCompanyServiceImpl.java

@@ -11,6 +11,7 @@ import com.ydtech.core.page.HttpResult;
 import com.ydtech.exception.SystemException;
 import com.ydtech.modules.base.controller.BaseController;
 import com.ydtech.modules.fee.service.FeeRuleSchemeNewService;
+import com.ydtech.modules.fnc.entity.vo.ProblemOrderQueryVo;
 import com.ydtech.modules.fnc.service.InsFeeAuditService;
 import com.ydtech.modules.ins.model.vo.KindInfoVo;
 import com.ydtech.modules.ins.model.vo.RiskInfoVo;
@@ -115,7 +116,7 @@ public class InsAreaCompanyServiceImpl extends ServiceImpl<InsAreaCompanyMapper,
         }else if(ptlAgreement.getAuditType() == 1 && insAreaCompany.getOrderstatus().equals(InsOrderStatusEnum.ACCEPT_INSURANCE.getCode()))
         {
             //添加默认审核 添加审核表及轨迹信息
-            insFeeAuditService.saveDefaultInsFeeAuditAndHistory(insAreaCompany.getOrderno(), insAreaCompany.getId(), FeeAuditAuditstatus.UNREVICEWED.getCode());
+            insFeeAuditService.saveDefaultInsFeeAuditAndHistory(insAreaCompany.getOrderno(), insAreaCompany.getId(), FeeAuditAuditstatus.UNREVICEWED.getCode(),null);
         }
 
         //添加订单消息
@@ -486,6 +487,16 @@ public class InsAreaCompanyServiceImpl extends ServiceImpl<InsAreaCompanyMapper,
 
         validQuoteVo(quoteVo);
 
+        //校验  保单号
+        LambdaQueryWrapper<InsAreaCompany> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.eq(InsAreaCompany::getJqpolicyno,quoteVo.getJqpolicyno())
+                .or()
+                .eq(InsAreaCompany::getSypolicyno,quoteVo.getSypolicyno());
+        List<InsAreaCompany> list = this.list(queryWrapper);
+        if(list.size() > 0){
+            throw new SystemException("已存在订单");
+        }
+
         InsOrders insOrders = insOrdersService.getById(quoteInfo.getOrderNo());
         PtlAgreement byAgreementIdNew = ptlAgreementService.getByAgreementIdNew(quoteVo.getAgreementId());
         quoteVo = checkQuoteVo(quoteVo);
@@ -523,6 +534,10 @@ public class InsAreaCompanyServiceImpl extends ServiceImpl<InsAreaCompanyMapper,
         insAreaCompany.setSyStartDate(insOrders.getSystartdate());
         insAreaCompany.setSyEndDate(insOrders.getSyenddate());
 
+        insAreaCompany.setJqRenewal(quoteVo.getJqRenewal());
+        insAreaCompany.setSyRenewal(quoteVo.getSyRenewal());
+        insAreaCompany.setScore(quoteVo.getScore());
+
         //设置为已承保状态
         insAreaCompany.setOrderstatus(InsOrderStatusEnum.ACCEPT_INSURANCE.getCode());
         insAreaCompany.setCompanyId(byAgreementIdNew.getInsuranceCompanyId());
@@ -626,10 +641,48 @@ public class InsAreaCompanyServiceImpl extends ServiceImpl<InsAreaCompanyMapper,
         feeRuleSchemeNewService.calcCostsExternal(costsNews.get(0),insAreaCompany);
 
         //审核表数据插入
-        insFeeAuditService.saveDefaultInsFeeAuditAndHistory(insAreaCompany.getOrderno(), insAreaCompany.getId(), FeeAuditAuditstatus.UNREVICEWED.getCode());
+        insFeeAuditService.saveDefaultInsFeeAuditAndHistory(insAreaCompany.getOrderno(), insAreaCompany.getId(), FeeAuditAuditstatus.UNREVICEWED.getCode(),null);
 
         return true;
     }
+
+    /**
+     * 根据订单id 获取已承保的子订单信息
+     * @param orderno
+     * @return
+     */
+    @Override
+    public InsAreaCompany getUnderWrittenSubOrder(String orderno) {
+        LambdaQueryWrapper<InsAreaCompany> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.eq(InsAreaCompany::getOrderno,orderno);
+        queryWrapper.eq(InsAreaCompany::getOrderstatus,InsOrderStatusEnum.ACCEPT_INSURANCE.getCode());
+        return this.getOne(queryWrapper);
+    }
+
+    /**
+     * 标注疑问订单
+     * @param problemOrderQueryVo
+     * @return
+     */
+    @Override
+    public boolean markProblemOrder(ProblemOrderQueryVo problemOrderQueryVo) {
+        LambdaQueryWrapper<InsAreaCompany> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.eq(InsAreaCompany::getId,problemOrderQueryVo.getSubOrder());
+        InsAreaCompany insAreaCompany = this.getOne(queryWrapper);
+        if(insAreaCompany == null){
+            throw new SystemException("订单不存在");
+        }
+        insAreaCompany.setProblemOrder(problemOrderQueryVo.getProblemOrder());
+        return this.updateById(insAreaCompany);
+    }
+
+    @Override
+    public Page<InsAreaCompany> getRejectOrder(Page page,String userId) {
+        Page<InsAreaCompany> rejectOrder = baseMapper.getRejectOrder(page, userId);
+        return rejectOrder;
+    }
+
+
 }
 
 

+ 1 - 1
src/main/resources/application-prod.yml

@@ -246,7 +246,7 @@ agreement:
 huatai:
   api:
     sourceCode: '016'
-    baseUrl: https://gears.pc.ehuatai.com:9003/interFaces/common/AutoInsuranceQuotation.do
+    baseUrl: https://cross.pc.ehuatai.com/interFaces/common/AutoInsuranceQuotation.do
     selfPublicKey: MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCYUuKVmeF5N66v6MQmOR8pt4o33yrio/ZrDf2ehk/kHJ2BYdI+xE9dLrZW5dm0y8yPpIHN39JaLuYOlWz5DVsWJTSPj9eaq0hOiY9BGAHJ3yMHdX3wygpcD11BVc5v4wbX/kyAhmatK69sb4zzAtEve1NS/YwZVuGch0CrkGw3YQIDAQAB
     selfPrivateKey: MIICdQIBADANBgkqhkiG9w0BAQEFAASCAl8wggJbAgEAAoGBAJhS4pWZ4Xk3rq/oxCY5Hym3ijffKuKj9msN/Z6GT+QcnYFh0j7ET10utlbl2bTLzI+kgc3f0lou5g6VbPkNWxYlNI+P15qrSE6Jj0EYAcnfIwd1ffDKClwPXUFVzm/jBtf+TICGZq0rr2xvjPMC0S97U1L9jBlW4ZyHQKuQbDdhAgMBAAECgYAktOyXYoK8RFfbWjtSfrdsxScQub3K6foq6C8y8Wj1LpQiJqGUsJfze5tDK5agA/CiuODy7LnzM5QK9aVSCw7k0r8EeGpHcYRdLYZM0vXVFK2gIQctFemK4c6sg5p0Bn1LNRbJG7rgMMEA/OxcF6vyQahhFtPVtAQwc+dT0PV51QJBANd66rfTuxSRvIC/RE4W6iqzed2YZtx+0kd7KiN78Y4X6spposFCH4ALf4jUeRRXZAm+Qu71cq21m2GsQZ8bZdMCQQC096ilZXEjmEuvopQR3JvPbgAF+MtItusyDDsMR1CWwXq9XGMmxi6GhFY7r7C8b40j1IchVAEY5BcwxJwfjql7AkAp5QYZs5reBu/FgGqBXEcvAjIheW4WVLoBl9q7h2+RlujZbexs8rQ5KwMi0VyxLcSPeGR/HU2spHCPbvRbQPJtAkBANK4tIHSnwFz6D6ChRbgyPEDd3YuiXOPNefFpRdQd6L93d9Pl6eKP71v5CTiXYqyczcaz2G4bOrHPp7IMsD0JAkBO/q3ZMT+Nj2jdMn2AR1h+ngn38JnK46PznU0WoRPx72YoWbLxvaGWpu8scZAhpYeq/n+52NHFfu8ayDRNWjP2
     huaTaiPublicKey: MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCYyF2SBNzLOP5N5fFW2T2eQ5+iaI5wVpsedu+UY290TVuG152tkdtSuTXsx+8BKnd79/PF966/2aSP4EUm7vD9kvQUnX2EDUiMooorGvDTRxoHNXFGqOtxdMiUOuqx19HwNb4gOXZ1WdjWJwSmqC6ZP6OgxKIotCHJwe826Q/w8wIDAQAB

+ 3 - 3
src/main/resources/mapper/modules/admin/SysUserLinkAreaMapper.xml

@@ -82,10 +82,10 @@
            sd.management_source = 2
             <if test="areaCodes != null and areaCodes.size>0" >
                 AND (
-                <foreach collection="areaCodes" item="item" open=" instr( " separator="||" close=") ">
-                   su.dept_id, TRIM( TRAILING '0' FROM #{item} )
+                <foreach collection="areaCodes" item="item" open=" (" separator="or" close=") ">
+                    instr( su.dept_id, TRIM( TRAILING '0' FROM #{item} ))>0
                 </foreach>
-                ) > 0
+                )
             </if>
     </select>
 

+ 1 - 3
src/main/resources/mapper/modules/fnc/InsPlyIncomeMapper.xml

@@ -161,6 +161,7 @@
         pa.agreement_name  as "agreementName",
         pa.agreement_type  as "agreementType",
         pa.docking_person  as "dockingPerson",
+        pa.is_external  as "isExternal",
         upf.url as "imageUrl",
         su.name  as "userName",
         b.name as "deptName",
@@ -198,9 +199,6 @@
             <if test="noReceivableProportion !=null  and  noReceivableProportion  !=''">
                 and a.no_receivable_proportion =#{noReceivableProportion}
             </if>
-
-
-
             <if test="id !=null  and  id  !=''">
                 and a.id =#{id}
             </if>

+ 19 - 0
src/main/resources/mapper/modules/order/InsAreaCompanyMapper.xml

@@ -161,7 +161,9 @@
         iac.sy_end_date as syenddate,
         io.vehicle_and_vessel_tax,
         io.operatorid,
+        iac.operator_name,
         sd.management_source,
+        iac.problem_order,
         CASE ifa.audituser
         WHEN '自动审核' THEN ifa.audituser
         ELSE su2.name END
@@ -259,6 +261,10 @@
         <if test="params.payStartDateStr != null and params.payStartDateStr != '' and params.payEndDateStr != null and params.payEndDateStr != ''">
             and DATE_FORMAT(iac.pay_date, '%Y-%m-%d') between #{params.payStartDateStr} AND #{params.payEndDateStr}
         </if>
+
+        <if test="params.isExternal != null and params.isExternal != ''">
+            and iac.is_external = #{params.isExternal}
+        </if>
         order by iac.createtime desc
     </select>
 
@@ -642,4 +648,17 @@
                 and io.userid=#{userId}
                 AND YEAR (iac.createtime) = #{year}
     </select>
+
+    <select id="getRejectOrder" resultType="com.ydtech.modules.order.entity.InsAreaCompany">
+        select
+            *
+        FROM
+            ins_fee_audit ifa
+        LEFT JOIN
+            ins_area_company iac on iac.id = ifa.ins_order_no
+        WHERE
+            iac.operator_id = #{userId}
+        AND
+            ifa.auditstatus = 2
+    </select>
 </mapper>