wangxiaoming před 7 roky
rodič
revize
d23721b59a

+ 36 - 7
watero-rst-service/src/main/java/com/iamberry/rst/service/pts/ProduceServiceImpl.java

@@ -5,6 +5,7 @@ import com.iamberry.rst.core.pts.Produce;
 import com.iamberry.rst.core.pts.ProduceProcess;
 import com.iamberry.rst.faces.pts.ProduceService;
 import com.iamberry.rst.service.pts.mapper.ProduceMapper;
+import com.iamberry.rst.util.ProduceNumberUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -37,6 +38,11 @@ public class ProduceServiceImpl implements ProduceService {
         return produceMapper.getProduce(produceNo);
     }
 
+    //获取单个产品
+    public Produce getProduce(Produce produce){
+        return produceMapper.getProduceByPro(produce);
+    }
+
     @Override
     public ProduceProcess getProduceProcess(Integer produceId,String processNo) {
         ProduceProcess produceProcess = new ProduceProcess();
@@ -54,26 +60,49 @@ public class ProduceServiceImpl implements ProduceService {
     }
 
     @Override
-    public List<ProduceProcess> listProduceProcess(Integer produceId) {
-        return produceMapper.listProduceProcess(produceId);
-    }
-
-    @Override
     public List<ProduceProcess> listProduceProcess(ProduceProcess produceProcess) {
         return produceMapper.selectProcessList(produceProcess);
     }
 
     //添加产品
     public Integer saveProduce(Produce produce){
+        produce.setProduceNo(ProduceNumberUtil.getProduceNo());
+        produce.setProduceStatus(1);
         int flag = produceMapper.saveProduce(produce);
+        Integer produceId = produce.getProduceId(); // 获取产品主键
+
+        for (int i=0; i<produce.getProcess().size();i++){
+            produce.getProcess().get(i).setProduceId(produceId);    //产品id
+            produce.getProcess().get(i).setProcessNo(ProduceNumberUtil.getProcessNo(i));  //工序编号
+            produce.getProcess().get(i).setProcessStatus(1);    //状态
+            produce.getProcess().get(i).setProcessSort(i);  //排序字段
+
+            ProduceProcess produceProcess = produce.getProcess().get(i);
+            this.saveProduceProcess(produceProcess);
+            Integer processId = produceProcess.getProcessId();  //获取工序主键
+            for(int j=0; j<produceProcess.getNodes().size();j++){
+                produceProcess.getNodes().get(j).setProduceId(produceId);
+                produceProcess.getNodes().get(j).setProcessId(processId);
+                produceProcess.getNodes().get(j).setNodeNo(ProduceNumberUtil.getNodeNo(j)); //节点编号
+            }
+            this.saveProcessNodeList(produceProcess.getNodes());
+        }
         return flag;
     }
 
     //添加产品工序
-    private Integer saveProduceProcess(List<ProduceProcess> produceProcessesList){
-        int flag = produceMapper.saveProduceProcessList(produceProcessesList);
+    public Integer saveProduceProcess(ProduceProcess produceProcesses){
+        int flag = produceMapper.saveProduceProcess(produceProcesses);
         return flag;
     }
 
+    //添加产品工序操作
+    public Integer saveProcessNodeList(List<ProcessNode> processNodeList){
+        int flag = produceMapper.saveProcessNodeList(processNodeList);
+        return flag;
+    }
+
+
+
 
 }