Procházet zdrojové kódy

添加补录暂存订单删除

785834757 před 1 rokem
rodič
revize
72a2fa3215

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

@@ -15,6 +15,7 @@ import com.ydtech.modules.order.components.InsOrdersComponents;
 import com.ydtech.modules.order.entity.vo.*;
 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 com.ydtech.modules.protocol.entity.po.PtlAgreement;
 import com.ydtech.modules.protocol.service.PtlAgreementService;
@@ -43,6 +44,9 @@ public class ExternalOrderController {
     @Autowired
     private InsOrdersComponents insOrdersComponents;
 
+    @Autowired
+    private InsOrdersService insOrdersService;
+
     @Autowired
     private InsAreaCompanyExternalPolicyService insAreaCompanyExternalPolicyService;
 
@@ -203,4 +207,11 @@ public class ExternalOrderController {
 
         return HttpResult.ok(resultExternalOrderFeeVo);
     }
+
+    @PostMapping("/delExternalOrder")
+    @ApiOperation("删除暂存的外部订单")
+    public HttpResult<Object> delExternalOrder(@RequestBody InsOrdersEditingVo insOrdersEditingVo){
+
+        return insOrdersService.delExternalOrder(insOrdersEditingVo)? HttpResult.ok("删除成功") : HttpResult.error("删除失败");
+    }
 }

+ 7 - 0
src/main/java/com/ydtech/modules/order/dao/InsOrdersMapper.java

@@ -134,6 +134,13 @@ public interface InsOrdersMapper extends BaseMapper<InsOrders> {
     List<AuditExportVo> getAuditExportList(@Param("param") AuditExportQueryVo auditExportQueryVo);
 
 
+    /**
+     * 查找未删除的外部订单
+     * @param insOrdersEditingVo
+     * @return
+     */
+    InsOrders getExternalOrder(@Param("param") InsOrdersEditingVo insOrdersEditingVo);
+
     List<QueryHxOrdersCountExcel> queryHxOrdersCount(@Param("queryHxOrdersCountVo") QueryHxOrdersCountVo queryHxOrdersCountVo);
 
     /**

+ 14 - 0
src/main/java/com/ydtech/modules/order/service/InsOrdersService.java

@@ -288,4 +288,18 @@ public interface InsOrdersService extends IService<InsOrders> {
      *  @Description: 查詢已承保的保单数据
      */
     BasePageResult<InsOrders> queryPageOrderCB(OrderQueryVo orderQueryVo);
+
+
+    /**
+     * 查找未删除的外部订单
+     * @param insOrdersEditingVo
+     * @return
+     */
+    InsOrders getExternalOrder(InsOrdersEditingVo insOrdersEditingVo);
+
+    /**
+     * 删除外部暂存订单
+     * @return
+     */
+    boolean delExternalOrder(InsOrdersEditingVo insOrdersEditingVo);
 }

+ 11 - 7
src/main/java/com/ydtech/modules/order/service/impl/InsAreaCompanyServiceImpl.java

@@ -534,13 +534,17 @@ 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.isEmpty()) {
+
+//        LambdaQueryWrapper<InsAreaCompany> queryWrapper = new LambdaQueryWrapper<>();
+//        queryWrapper.eq(InsAreaCompany::getJqpolicyno, quoteVo.getJqpolicyno())
+//                .or()
+//                .eq(InsAreaCompany::getSypolicyno, quoteVo.getSypolicyno());
+        //校验订单是否存在
+        InsOrdersEditingVo insOrdersEditingVo = new InsOrdersEditingVo();
+        insOrdersEditingVo.setJqpolicyno(quoteVo.getJqpolicyno());
+        insOrdersEditingVo.setSypolicyno(quoteVo.getSypolicyno());
+        InsOrders externalOrder = insOrdersService.getExternalOrder(insOrdersEditingVo);
+        if (!Objects.isNull(externalOrder)) {
             throw new SystemException("已存在订单");
         }
 

+ 21 - 0
src/main/java/com/ydtech/modules/order/service/impl/InsOrdersServiceImpl.java

@@ -2335,6 +2335,27 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
                 resultOrders.getRecords());
     }
 
+    @Override
+    public InsOrders getExternalOrder(InsOrdersEditingVo insOrdersEditingVo) {
+        return baseMapper.getExternalOrder(insOrdersEditingVo);
+    }
+
+    @Override
+    public boolean delExternalOrder(InsOrdersEditingVo insOrdersEditingVo) {
+        InsOrders externalOrder = baseMapper.selectOne(new LambdaQueryWrapper<InsOrders>()
+                .eq(InsOrders::getOrderno,insOrdersEditingVo.getOrderno())
+                .isNull(InsOrders::getDelFlag)
+                .eq(InsOrders::getOrderstatus,"0")
+                .eq(InsOrders::getEntryStatus,"3"));
+
+        if(externalOrder == null){
+            throw new SystemException("未找到暂存订单");
+        }
+        //设置删除标识
+        externalOrder.setDelFlag("1");
+        return baseMapper.updateById(externalOrder) > 0;
+    }
+
     /**
      * 更新订单的起保与终保时间
      */

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

@@ -1046,6 +1046,8 @@
               AND
                 iac.orderstatus = 0
                 and agree.is_external =1
+              AND
+                io.del_flag is null
             <if test="vo.id  != null  and  vo.id!='' ">
                 and  iac.id = #{vo.id}
             </if>

+ 17 - 0
src/main/resources/mapper/modules/order/InsOrdersMapper.xml

@@ -1669,6 +1669,23 @@
 
     </select>
 
+    <select id="getExternalOrder" resultType="com.ydtech.modules.order.entity.InsOrders">
+        SELECT
+            *
+        FROM
+            ins_orders io
+                LEFT JOIN ins_area_company iac ON io.orderno = iac.orderno
+        WHERE
+            io.entry_status = 3
+          AND io.del_flag IS NULL
+          <if test="param.jqpolicyno != null and param.jqpolicyno != ''">
+              AND iac.jqpolicyno = #{param.jqpolicyno}
+          </if>
+        <if test="param.sypolicyno != null and param.sypolicyno != ''">
+            AND iac.sypolicyno = #{sypolicyno}
+        </if>
+    </select>
+
     <resultMap id="hxOrderCountMap" type="com.ydtech.modules.order.entity.vo.QueryHxOrdersCountVo">
         <result property="operatorId" column="operatorid" jdbcType="VARCHAR"/>
         <result property="name" column="name" jdbcType="VARCHAR"/>