瀏覽代碼

合并订单

785834757 1 年之前
父節點
當前提交
2a106dd8af

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

@@ -100,6 +100,7 @@ public class InsOrdersController extends BaseController {
         if(Objects.isNull(quoteInfoVo.getKindList())){
             quoteInfoVo.setKindList(new ArrayList<>());
         }
+
         InsOrders insOrders = this.insOrdersService.generateOrder(user, quoteInfoVo);
         return HttpResult.ok("success", insOrders);
     }

+ 19 - 1
src/main/java/com/ydtech/modules/order/service/impl/InsOrdersServiceImpl.java

@@ -278,7 +278,7 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
     }
 
     /**
-     * @param sysUser        当前登录人
+     * @param sysUser     当前登录人
      * @param quoteInfoVo 报价信息
      * @return
      */
@@ -325,6 +325,24 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
 
         // 1. 验证订单参数
         orderComponents.checkEmpty(quoteInfoVo);
+
+        // 1.1 查看是否有订单
+        //一个月内的订单
+        LocalDateTime now = LocalDateTime.now();
+        LocalDateTime oneMonthAgo = now.minus(1, ChronoUnit.MONTHS);
+        List<InsOrders> insOrdersList = this.list(new LambdaQueryWrapper<InsOrders>()
+                .eq(InsOrders::getProductid,quoteInfoVo.getProductId())
+                .eq(InsOrders::getLicenseno,quoteInfoVo.getCarInfo().getLicenseNo())
+                .ge(InsOrders::getCreatetime, oneMonthAgo)
+                .le(InsOrders::getCreatetime, now));
+
+        if(!insOrdersList.isEmpty()){
+            // 修改订单
+            insOrdersList.get(0).setOrderno(quoteInfoVo.getOrderNo());
+            this.updateById(insOrdersList.get(0));
+            return insOrdersList.get(0);
+        }
+
         SysUser user = sysUserService.getById(realUserId);
         SysDept dept = sysDeptService.getById(user.getDeptId());
         // 2 构造订单