laoyao 3 anni fa
parent
commit
faf360d550

+ 14 - 2
imcs-admin-boot/imcs-business-biz/src/main/java/com/github/zuihou/business/operationManagementCenter/service/impl/OrderServiceImpl.java

@@ -59,6 +59,7 @@ import java.util.stream.Collectors;
 
 import static com.github.zuihou.utils.BizAssert.isFalse;
 import static java.util.stream.Collectors.groupingBy;
+import static java.util.stream.Collectors.toList;
 
 /**
  * <p>
@@ -129,6 +130,19 @@ public class OrderServiceImpl extends SuperServiceImpl<OrderMapper, Order> imple
     public Order save(Map<String,Object> data) {
         //Order order = BeanPlusUtil.toBean(data, Order.class);
         Order order = new Order();
+
+        //验证是否配置了工序
+        List<Map> detailList = (List<Map>)data.get("orderProductList");
+        List<String>bomList = detailList.stream().map(p -> p.get("bomId").toString()).collect(Collectors.toList());
+        List<BomProcedure>bomProcedureList = bomProcedureService.list(Wraps.<BomProcedure>lbQ().in(BomProcedure::getBomId,bomList));
+
+        Map<Long,List<BomProcedure>> bomProcedureMap = bomProcedureList.stream().collect(groupingBy(BomProcedure::getBomId, LinkedHashMap::new, toList()));
+
+        isFalse(CollectionUtil.isEmpty(bomProcedureList),"零件尚未配置工序,请确认");
+        for(Long l:bomProcedureMap.keySet()){
+            isFalse(bomProcedureMap.get(l).size()==0,"零件尚未配置工序,请确认");
+        }
+
         //根据编码规则
         String no = codeRuleService.getBillCode(CodeRuleModule.CODE_RULE_ORDER);
         order.setOrderNo(no);
@@ -141,8 +155,6 @@ public class OrderServiceImpl extends SuperServiceImpl<OrderMapper, Order> imple
         order.setOrderTime(DateUtil.stringToDate3(data.get("orderTime").toString()));
         super.save(order);
 
-        //新增明细
-        List<Map> detailList = (List<Map>)data.get("orderProductList");
         int productNum = 0;
         if(detailList != null && detailList.size() > 0){
             for(Map map:detailList){