From 7a1ab2693de593026b420fd89b977881eee484ff Mon Sep 17 00:00:00 2001
From: Fancy <Fancy.fx@outlook.com>
Date: 星期三, 16 十月 2024 17:10:48 +0800
Subject: [PATCH] command crud
---
pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/process/ProcessSv.java | 55 +++++++++++++++++++++++++++++++++++++++++++------------
1 files changed, 43 insertions(+), 12 deletions(-)
diff --git a/pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/process/ProcessSv.java b/pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/process/ProcessSv.java
index 50c55f4..697912e 100644
--- a/pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/process/ProcessSv.java
+++ b/pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/process/ProcessSv.java
@@ -3,18 +3,12 @@
import com.dy.common.webFilter.UserTokenContext;
import com.dy.common.webUtil.QueryResultVo;
import com.dy.pmsGlobal.daoOth.OthFileMapper;
-import com.dy.pmsGlobal.daoPr.PrAssemblyPlanMapper;
-import com.dy.pmsGlobal.daoPr.PrProductionNodeMapper;
-import com.dy.pmsGlobal.daoPr.PrProductionProcessMapper;
-import com.dy.pmsGlobal.daoPr.PrWorkingInstructionMapper;
+import com.dy.pmsGlobal.daoPr.*;
import com.dy.pmsGlobal.dyFile.FileOperate;
import com.dy.pmsGlobal.dyFile.FileRestVo;
import com.dy.pmsGlobal.pojoBa.BaUser;
import com.dy.pmsGlobal.pojoOth.OthFile;
-import com.dy.pmsGlobal.pojoPr.PrAssemblyPlan;
-import com.dy.pmsGlobal.pojoPr.PrProductionNode;
-import com.dy.pmsGlobal.pojoPr.PrProductionProcess;
-import com.dy.pmsGlobal.pojoPr.PrWorkingInstruction;
+import com.dy.pmsGlobal.pojoPr.*;
import com.dy.pmsGlobal.util.UserUtil;
import com.dy.pmsProduct.taskPlan.PlanStatusEnum;
import lombok.extern.slf4j.Slf4j;
@@ -39,6 +33,7 @@
private PrProductionProcessMapper processDao;
private PrProductionNodeMapper nodeDao;
private PrWorkingInstructionMapper workDao;
+ private PrBillOfMaterialMapper billDao;
private UserUtil userUtil;
private FileOperate fileOperate;
private OthFileMapper othFileMapper;
@@ -79,6 +74,10 @@
public void setOthFileMapper(OthFileMapper othFileMapper) {
this.othFileMapper = othFileMapper;
}
+ @Autowired
+ public void setBillDao(PrBillOfMaterialMapper billDao) {
+ this.billDao = billDao;
+ }
@Transactional
public int save(PrProductionProcess process) {
@@ -107,11 +106,11 @@
if (CollectionUtils.isNotEmpty(planList)) {
if (planList.stream().anyMatch(plan -> plan.getInputNumber() > 0)) { //瀛樺湪浠诲姟宸茬粡鎶曞叆鐢熶骇
if (!originProductionProcess.getProId().equals(process.getProId())) {
- throw new RuntimeException("瀛樺湪宸茬粡鎶曞叆鐢熶骇缁戝畾鐨勪换鍔�,浜у搧涓嶈兘淇敼");
+ throw new RuntimeException("瀛樺湪宸茬粡鎶曞叆鐢熶骇鐨勭粦瀹氫换鍔�,浜у搧涓嶈兘淇敼");
}
//鑺傜偣id涓嶈兘鍒犻櫎
if (!originProductionProcess.getNodes().stream().allMatch(node -> process.getNodes().stream().anyMatch(newNode -> node.getId().equals(newNode.getId())))) {
- throw new RuntimeException("瀛樺湪宸茬粡鎶曞叆鐢熶骇缁戝畾鐨勪换鍔�,鑺傜偣涓嶈兘鍒犻櫎");
+ throw new RuntimeException("宸叉湁缁戝畾鐨勪换鍔℃姇鍏ョ敓浜�,鑺傜偣涓嶈兘鍒犻櫎");
}
} else if (CollectionUtils.isNotEmpty(onlinePlanList)) {
//鍏堝皢缁勮浠诲姟缃负鏆傚仠鐘舵��
@@ -164,7 +163,7 @@
}
});
if (startCount.get() != 1 || endCount.get() != 1) {
- throw new RuntimeException("鑺傜偣寮�濮嬪拰缁撴潫鑺傜偣鏈変笖鍙兘鏈変竴涓�");
+ throw new RuntimeException("寮�濮嬭妭鐐瑰拰缁撴潫鑺傜偣鏈変笖鍙兘鏈変竴涓�");
}
}
@@ -203,6 +202,18 @@
if (CollectionUtils.isNotEmpty(workList)) {
workDao.insertMany(workList);
}
+
+ List<PrBillOfMaterial> billList = process.nodes.stream().map(node -> {
+ if (node.bill != null) {
+ node.bill.nodeId = node.id;
+ return node.bill;
+ }
+ return null;
+ }).filter(bill -> bill != null).toList();
+ if (CollectionUtils.isNotEmpty(billList)) {
+ billDao.deleteByNodeId(billList.stream().map(PrBillOfMaterial::getNodeId).toList());
+ billDao.insertMany(billList);
+ }
}
public int delete(Long id) {
@@ -215,6 +226,9 @@
process.nodes.forEach(node -> {
if (node.instruction != null) {
addUrl(node.instruction);
+ }
+ if (node.bill != null) {
+ addBillUrl(node.bill);
}
});
}
@@ -238,6 +252,9 @@
if (node.instruction != null) {
addUrl(node.instruction);
}
+ if (node.bill != null) {
+ addBillUrl(node.bill);
+ }
});
});
return rsVo;
@@ -256,8 +273,22 @@
return;
}
FileRestVo fileRestVo = fileOperate.parseHashcode(fmUrl, file.hash);
- ins.webUrl = fileRestVo.fileSysRestUrl + fileRestVo.fileWebDownloadPath + ins.fileId;
+ ins.webUrl = fileRestVo.fileWebDownloadPath + ins.fileId;
ins.orgName = file.orgName;
ins.extName = file.extName;
}
+
+ private void addBillUrl(PrBillOfMaterial bill) {
+ if (bill == null || bill.fileId == null) {
+ return;
+ }
+ OthFile file = othFileMapper.selectByPrimaryKey(bill.fileId);
+ if (file == null) {
+ return;
+ }
+ FileRestVo fileRestVo = fileOperate.parseHashcode(fmUrl, file.hash);
+ bill.webUrl = fileRestVo.fileWebDownloadPath + bill.fileId;
+ bill.orgName = file.orgName;
+ bill.extName = file.extName;
+ }
}
--
Gitblit v1.8.0