guoyujia 2 月之前
父節點
當前提交
d4ef2e8110
共有 1 個文件被更改,包括 54 次插入53 次删除
  1. 54 53
      src/main/java/cn/ezhizao/project/business/controller/Inc10100Controller.java

+ 54 - 53
src/main/java/cn/ezhizao/project/business/controller/Inc10100Controller.java

@@ -79,8 +79,8 @@ public class Inc10100Controller extends BaseController {
     @Transactional
     public AjaxResult getP2Product() {
         boolean result;
-        result = true;
-//        result = getP2Process();
+//        result = true;
+        result = getP2Process();
         // 先从新系统中的 biz_pull_p2_time 中获取最新数据
         BizPullP2Time pullDetail = new BizPullP2Time();
         pullDetail.setType("product");
@@ -437,57 +437,58 @@ public class Inc10100Controller extends BaseController {
         });
         changeSfc10400.forEach(l -> {
             BizTechnologicalProcess oldTech = processes.stream().filter(v -> v.getTechnologyVersion().trim().equals(l.getPrver().trim()) && v.getProductCode().trim().equals(l.getCpart().trim()) && v.getIsHistory().equals(0)).findFirst().orElse(null);
-            System.out.println("_______________________");
-            System.out.println(processes);
-            System.out.println(oldTech);
-            //            // 判断是否已有新版本 假设已有不更新 没有则更新
-//            Long count = processDetails.stream().filter(v -> v.getTechnologyVersion().equals(l.getPrver().trim()) && v.getProductCode().equals(l.getCpart().trim())).count();
-//            Long newCount = allChangeSfc10401.stream().filter(v -> v.getCpart().trim().equals(l.getCpart().trim()) && v.getPrver().trim().equals(l.getPrver().trim())).count();
-//            if (!saveProcess.stream().anyMatch(t -> t.getProductCode().trim().equals(l.getCpart().trim()) && t.getTechnologyVersion().trim().equals(l.getPrver().trim())) && !count.equals(newCount)) {
-//                oldTech.setIsHistory(1);
-//                updateProcess.add(oldTech);
-//                BizTechnologicalProcess newTech;
-//                // 判断是否已加过对应工艺
-//                newTech = new BizTechnologicalProcess(oldTech);
-//                if (newTech.getProductCode() != null && !newTech.getProductCode().isEmpty()) {
-//                    BizProduct bizProduct = products.stream().filter(v -> v.getProductCode().trim().equals(l.getCpart().trim())).findFirst().orElse(null);
-//                    System.out.println("____________________");
-//                    System.out.println("________________________________________");
-//                    System.out.println(bizProduct.getId());
-//                    if (bizProduct != null) {
-//                        newTech.setProductId(bizProduct.getId());
-//                    }
-//                    bizProduct = newProducts.stream().filter(v -> v.getProductCode().trim().equals(l.getCpart().trim())).findFirst().orElse(null);
-//                    if (bizProduct != null && newTech.getProductId() == null) {
-//                        newTech.setProductId(bizProduct.getId());
-//                    }
-//                }
-//                newTech.setIsHistory(0);
-//                newTech.setId(snowflakeIdWorker.nextId());
-//                saveProcess.add(newTech);
-//                // 添加所有工艺明细
-//                List<Sfc10401> itemProcesses = allChangeSfc10401.stream().filter(v -> v.getCpart().trim().equals(l.getCpart().trim()) && v.getPrver().trim().equals(l.getPrver().trim())).collect(Collectors.toList());
-//                itemProcesses.forEach(e -> {
-//                    BizTechnologicalProcessDetail newItem = new BizTechnologicalProcessDetail(e);
-//                    newItem.setTechnologicalProcessId(newTech.getId());
-//                    if (newTech.getProductCode() != null && !newTech.getProductCode().isEmpty()) {
-//                        BizProduct bizProduct = products.stream().filter(v -> v.getProductCode().trim().equals(l.getCpart().trim())).findFirst().orElse(null);
-//                        if (bizProduct != null) {
-//                            newItem.setProductId(bizProduct.getId());
-//                        }
-//                        bizProduct = newProducts.stream().filter(v -> v.getProductCode().trim().equals(l.getCpart().trim())).findFirst().orElse(null);
-//                        if (bizProduct != null && newItem.getProductId() == null) {
-//                            newItem.setProductId(bizProduct.getId());
-//                        }
-//                    }
-//                    if (newItem.getProcessCode() != null && !newItem.getProcessCode().isEmpty()) {
-//                        BizProcess bizProcess = bases.stream().filter(v -> v.getProcessCode().equals(e.getPrcode().trim())).findFirst().orElse(null);
-//                        newItem.setProcessId(bizProcess == null ? null : bizProcess.getId());
-//                    }
-//                    saveProcessDetail.add(newItem);
-//                });
-//
-//            }
+            // 判断是否已有新版本 假设已有不更新 没有则更新
+            System.out.println("旧数据"+oldTech);
+            System.out.println("proces."+processes);
+
+
+            Long count = processDetails.stream().filter(v -> v.getTechnologyVersion().equals(l.getPrver().trim()) && v.getProductCode().equals(l.getCpart().trim())).count();
+            Long newCount = allChangeSfc10401.stream().filter(v -> v.getCpart().trim().equals(l.getCpart().trim()) && v.getPrver().trim().equals(l.getPrver().trim())).count();
+            if (!saveProcess.stream().anyMatch(t -> t.getProductCode().trim().equals(l.getCpart().trim()) && t.getTechnologyVersion().trim().equals(l.getPrver().trim())) && !count.equals(newCount)) {
+                oldTech.setIsHistory(1);
+                updateProcess.add(oldTech);
+                BizTechnologicalProcess newTech;
+                // 判断是否已加过对应工艺
+                newTech = new BizTechnologicalProcess(oldTech);
+                if (newTech.getProductCode() != null && !newTech.getProductCode().isEmpty()) {
+                    BizProduct bizProduct = products.stream().filter(v -> v.getProductCode().trim().equals(l.getCpart().trim())).findFirst().orElse(null);
+                    System.out.println("____________________");
+                    System.out.println("________________________________________");
+                    System.out.println(bizProduct.getId());
+                    if (bizProduct != null) {
+                        newTech.setProductId(bizProduct.getId());
+                    }
+                    bizProduct = newProducts.stream().filter(v -> v.getProductCode().trim().equals(l.getCpart().trim())).findFirst().orElse(null);
+                    if (bizProduct != null && newTech.getProductId() == null) {
+                        newTech.setProductId(bizProduct.getId());
+                    }
+                }
+                newTech.setIsHistory(0);
+                newTech.setId(snowflakeIdWorker.nextId());
+                saveProcess.add(newTech);
+                // 添加所有工艺明细
+                List<Sfc10401> itemProcesses = allChangeSfc10401.stream().filter(v -> v.getCpart().trim().equals(l.getCpart().trim()) && v.getPrver().trim().equals(l.getPrver().trim())).collect(Collectors.toList());
+                itemProcesses.forEach(e -> {
+                    BizTechnologicalProcessDetail newItem = new BizTechnologicalProcessDetail(e);
+                    newItem.setTechnologicalProcessId(newTech.getId());
+                    if (newTech.getProductCode() != null && !newTech.getProductCode().isEmpty()) {
+                        BizProduct bizProduct = products.stream().filter(v -> v.getProductCode().trim().equals(l.getCpart().trim())).findFirst().orElse(null);
+                        if (bizProduct != null) {
+                            newItem.setProductId(bizProduct.getId());
+                        }
+                        bizProduct = newProducts.stream().filter(v -> v.getProductCode().trim().equals(l.getCpart().trim())).findFirst().orElse(null);
+                        if (bizProduct != null && newItem.getProductId() == null) {
+                            newItem.setProductId(bizProduct.getId());
+                        }
+                    }
+                    if (newItem.getProcessCode() != null && !newItem.getProcessCode().isEmpty()) {
+                        BizProcess bizProcess = bases.stream().filter(v -> v.getProcessCode().equals(e.getPrcode().trim())).findFirst().orElse(null);
+                        newItem.setProcessId(bizProcess == null ? null : bizProcess.getId());
+                    }
+                    saveProcessDetail.add(newItem);
+                });
+
+            }
         });
 //        List<BizTechnologicalProcessDetail> distinctSaveProcessDetail = saveProcessDetail.stream().filter(distinctByKey(e -> e.getProductCode() + e.getProcessCode() + e.getTechnologyVersion() + e.getProcessStepNumber() + e.getTechnologicalProcessId())).collect(Collectors.toList());
 //        if ((saveProcess.isEmpty() || technologicalProcessService.saveBatch(saveProcess)) && (updateProcess.isEmpty() || technologicalProcessService.updateBatchById(updateProcess)) && (distinctSaveProcessDetail.isEmpty() || technologicalProcessDetailService.saveBatch(distinctSaveProcessDetail)) && (updateProcessDetail.isEmpty() || technologicalProcessDetailService.updateBatchById(updateProcessDetail))) {