guoyujia 2 tháng trước cách đây
mục cha
commit
ae5ab93bc6

+ 33 - 48
src/main/java/cn/ezhizao/project/business/controller/Inc10100Controller.java

@@ -76,7 +76,6 @@ public class Inc10100Controller extends BaseController {
      */
     @PreAuthorize("@ss.hasPermi('business:product:sync')")
     @GetMapping(value = "/getP2Product")
-    @Transactional
     public AjaxResult getP2Product() {
         boolean result;
 //        result = true;
@@ -107,8 +106,7 @@ public class Inc10100Controller extends BaseController {
             queryWrapper.apply("modate IS NOT NULL  AND modate > {0}", newCondition);
         }
         List<Inc10100> inc10100List = IInc10100Service.getList(queryWrapper);
-//        List<BizProduct> products = productService.query().list();
-        List<BizProduct> products = productService.getList(new BizProduct());
+        List<BizProduct> products = productService.query().list();
         List<BizProduct> newProducts = new ArrayList<>();
         List<BizProduct> changeProducts = new ArrayList<>();
         List<SysUser> userList = sysUserService.getList();
@@ -389,6 +387,7 @@ public class Inc10100Controller extends BaseController {
                 }
             } else {
                 BizTechnologicalProcessDetail old = processDetails.stream().filter(v -> v.getTechnologyVersion().equals(l.getPrver().trim()) && v.getProductCode().equals(l.getCpart().trim()) && v.getProcessCode().equals(l.getPrcode().trim()) && v.getTechnologicalProcessId().equals(oldTech.getId())).findFirst().orElse(null);
+
                 Long count = processDetails.stream().filter(v -> v.getTechnologyVersion().equals(l.getPrver().trim()) && v.getProductCode().equals(l.getCpart().trim())).count();
                 Long newCount = all10401List.stream().filter(v -> v.getCpart().trim().equals(l.getCpart().trim()) && v.getPrver().trim().equals(l.getPrver().trim())).count();
                 if (old == null || !old.getProcessStepNumber().trim().equals(l.getPrseq().trim()) || !newCount.equals(count)) {
@@ -437,11 +436,10 @@ 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(oldTech);
+            System.out.println(processes);
             // 判断是否已有新版本 假设已有不更新 没有则更新
-            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)) {
@@ -450,19 +448,6 @@ public class Inc10100Controller extends BaseController {
                 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);
@@ -490,36 +475,36 @@ public class Inc10100Controller extends BaseController {
 
             }
         });
-//        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))) {
-//            BizPullP2Time bizPullP2Time = new BizPullP2Time();
-//            // 将当前时间赋值给 pullTime 属性
-//            bizPullP2Time.setPullTime(new Date());
-//            bizPullP2Time.setType("productProcess");
-//            // 保存数据
-//            pullP2TimeService.saveOrUpdate(bizPullP2Time);
+        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))) {
+            BizPullP2Time bizPullP2Time = new BizPullP2Time();
+            // 将当前时间赋值给 pullTime 属性
+            bizPullP2Time.setPullTime(new Date());
+            bizPullP2Time.setType("productProcess");
+            // 保存数据
+            pullP2TimeService.saveOrUpdate(bizPullP2Time);
+
+            BizPullP2Time bizPullP2Tech = new BizPullP2Time();
+            // 将当前时间赋值给 pullTime 属性
+            bizPullP2Tech.setPullTime(new Date());
+            bizPullP2Tech.setType("productTech");
+            // 保存数据
+//            pullP2TimeService.saveOrUpdate(bizPullP2Tech);
+            result = result && pullP2TimeService.saveOrUpdate(bizPullP2Tech);
+        } else {
+            result = false;
+        }
 //
-//            BizPullP2Time bizPullP2Tech = new BizPullP2Time();
-//            // 将当前时间赋值给 pullTime 属性
-//            bizPullP2Tech.setPullTime(new Date());
-//            bizPullP2Tech.setType("productTech");
-//            // 保存数据
-////            pullP2TimeService.saveOrUpdate(bizPullP2Tech);
-//            result = result && pullP2TimeService.saveOrUpdate(bizPullP2Tech);
-//        } else {
-//            result = false;
+//        QueryWrapper<Sfc10401> test = new QueryWrapper<>();
+//        if (lastPullProcess != null) {
+//            Date newCondition = lastPullProcess.getPullTime();
+//            /*
+//             * 这里应该根据新系统中记录的最大的拉取日期
+//             * modate:P2中的修改日期,为了避免重复拉取,需要做条件判断。modate必须大于上一次拉取时间
+//             */
+//            test.apply("modate IS NOT NULL  AND modate > {0}", new DateTime(newCondition).toString("yyyy-MM-dd HH:mm:ss"));
 //        }
-////
-////        QueryWrapper<Sfc10401> test = new QueryWrapper<>();
-////        if (lastPullProcess != null) {
-////            Date newCondition = lastPullProcess.getPullTime();
-////            /*
-////             * 这里应该根据新系统中记录的最大的拉取日期
-////             * modate:P2中的修改日期,为了避免重复拉取,需要做条件判断。modate必须大于上一次拉取时间
-////             */
-////            test.apply("modate IS NOT NULL  AND modate > {0}", new DateTime(newCondition).toString("yyyy-MM-dd HH:mm:ss"));
-////        }
-////        sfc10401Service.getList(test);
+//        sfc10401Service.getList(test);
         return toAjax(result);
     }