|
@@ -76,6 +76,7 @@ public class Inc10100Controller extends BaseController {
|
|
|
*/
|
|
|
@PreAuthorize("@ss.hasPermi('business:product:sync')")
|
|
|
@GetMapping(value = "/getP2Product")
|
|
|
+ @Transactional
|
|
|
public AjaxResult getP2Product() {
|
|
|
boolean result;
|
|
|
// result = true;
|
|
@@ -436,85 +437,88 @@ 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);
|
|
|
- // 判断是否已有新版本 假设已有不更新 没有则更新
|
|
|
- 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("_______________________");
|
|
|
+ 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);
|
|
|
+// });
|
|
|
+//
|
|
|
+// }
|
|
|
});
|
|
|
- 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;
|
|
|
- }
|
|
|
+// 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);
|
|
|
//
|
|
|
-// 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"));
|
|
|
+// BizPullP2Time bizPullP2Tech = new BizPullP2Time();
|
|
|
+// // 将当前时间赋值给 pullTime 属性
|
|
|
+// bizPullP2Tech.setPullTime(new Date());
|
|
|
+// bizPullP2Tech.setType("productTech");
|
|
|
+// // 保存数据
|
|
|
+//// pullP2TimeService.saveOrUpdate(bizPullP2Tech);
|
|
|
+// result = result && pullP2TimeService.saveOrUpdate(bizPullP2Tech);
|
|
|
+// } else {
|
|
|
+// result = false;
|
|
|
// }
|
|
|
-// sfc10401Service.getList(test);
|
|
|
+////
|
|
|
+//// 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);
|
|
|
return toAjax(result);
|
|
|
}
|
|
|
|