From 1e8e849c1cbd576dde8dc01efc63f80cf602e2eb Mon Sep 17 00:00:00 2001 From: Fancy <Fancy.fx@outlook.com> Date: 星期六, 06 七月 2024 10:00:00 +0800 Subject: [PATCH] station name can not have the same name --- pms-parent/pms-web-station/src/main/java/com/dy/pmsStation/assemblyStep/AssemblyStepSv.java | 142 +++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 136 insertions(+), 6 deletions(-) diff --git a/pms-parent/pms-web-station/src/main/java/com/dy/pmsStation/assemblyStep/AssemblyStepSv.java b/pms-parent/pms-web-station/src/main/java/com/dy/pmsStation/assemblyStep/AssemblyStepSv.java index 44c26a6..674443e 100644 --- a/pms-parent/pms-web-station/src/main/java/com/dy/pmsStation/assemblyStep/AssemblyStepSv.java +++ b/pms-parent/pms-web-station/src/main/java/com/dy/pmsStation/assemblyStep/AssemblyStepSv.java @@ -2,23 +2,25 @@ import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.baomidou.mybatisplus.core.toolkit.StringUtils; -import com.dy.pmsGlobal.daoPlt.PltProductMapper; -import com.dy.pmsGlobal.daoPlt.PltProductQualityInspectionItemsMapper; -import com.dy.pmsGlobal.daoPlt.PltProductTestInspectionItemsMapper; +import com.dy.pmsGlobal.daoOth.OthFileMapper; +import com.dy.pmsGlobal.daoPlt.*; import com.dy.pmsGlobal.daoPr.PrAssemblyPlanMapper; import com.dy.pmsGlobal.daoPr.PrProductionNodeMapper; import com.dy.pmsGlobal.daoSta.*; -import com.dy.pmsGlobal.pojoPlt.PltProduct; -import com.dy.pmsGlobal.pojoPlt.PltProductQualityInspectionItems; -import com.dy.pmsGlobal.pojoPlt.PltProductTestInspectionItems; +import com.dy.pmsGlobal.dyFile.FileOperate; +import com.dy.pmsGlobal.dyFile.FileRestVo; +import com.dy.pmsGlobal.pojoOth.OthFile; +import com.dy.pmsGlobal.pojoPlt.*; import com.dy.pmsGlobal.pojoPr.PrAssemblyPlan; import com.dy.pmsGlobal.pojoPr.PrProductionNode; +import com.dy.pmsGlobal.pojoPr.PrWorkingInstruction; import com.dy.pmsGlobal.pojoSta.*; import com.dy.pmsGlobal.util.DeviceStatus; import com.dy.pmsGlobal.util.QrCodeConstant; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -44,6 +46,12 @@ private PltProductQualityInspectionItemsMapper qualityItemsDao; private PltProductTestInspectionItemsMapper testItemsDao; private PltProductMapper productDao; + private PltProParamsMapper paramsDao; + private PltProductFileMapper productFileDao; + private FileOperate fileOperate; + private OthFileMapper othFileMapper; + @Value("${dy.webFile.fmUrl}") + private String fmUrl; @Autowired public void setDeviceLastDao(StaDeviceLastMapper deviceLastDao) { this.deviceLastDao = deviceLastDao; @@ -87,6 +95,26 @@ @Autowired public void setProductDao(PltProductMapper productDao) { this.productDao = productDao; + } + + @Autowired + public void setParamsDao(PltProParamsMapper paramsDao) { + this.paramsDao = paramsDao; + } + + @Autowired + public void setProductFileDao(PltProductFileMapper productFileDao) { + this.productFileDao = productFileDao; + } + + @Autowired + public void setFileOperate(FileOperate fileOperate) { + this.fileOperate = fileOperate; + } + + @Autowired + public void setOthFileMapper(OthFileMapper othFileMapper) { + this.othFileMapper = othFileMapper; } @Transactional @@ -166,6 +194,7 @@ record.updatedBy = workLast.userId; record.assistants = params.assistants; + record.errorMsg = params.errorMsg; PrProductionNode node = nodeDao.selectByPrimaryKey(workLast.nodeId); record.nodeContent = node.content; @@ -258,6 +287,46 @@ saveDeviceProductionLog(deviceLast); return count; } + //鏍规嵁鑺傜偣鏌ュ嚭鑺傜偣浣滀笟鎸囧涔� + public PrProductionNode getSopByNodeId(String nodeId) { + if(com.alibaba.excel.util.StringUtils.isBlank(nodeId)){ + throw new RuntimeException("鑺傜偣ID涓嶈兘涓虹┖"); + } + PrProductionNode node = nodeDao.selectByPrimaryKey(Long.parseLong(nodeId)); + if(node == null){ + throw new RuntimeException("鑺傜偣ID涓嶅瓨鍦�,璇锋鏌�"); + } + if(node.instruction != null){ + addUrl(node.instruction); + } + return node; + } + //涓昏鎶�鏈弬鏁� 淇╀釜鏂规硶鍚� platform-->product-->productSv + public List<PltProductParams> getParamsByProId(String proId) { + if(StringUtils.isBlank(proId)){ + throw new RuntimeException("浜у搧ID涓嶈兘涓虹┖"); + } + List<PltProductParams> proParams = paramsDao.selectParams(Long.parseLong(proId)); + return proParams; + } + // 鏍规嵁浜у搧鏌ュ嚭浜у搧鏂囦欢 + public List<PltProductFile> getFileByProId(String proId) { + if(StringUtils.isBlank(proId)){ + throw new RuntimeException("浜у搧ID涓嶈兘涓虹┖"); + } + List<PltProductFile> proFiles = productFileDao.selectDocuments(Long.parseLong(proId)); + proFiles.stream().forEach(doc -> { + OthFile file = othFileMapper.selectByPrimaryKey(doc.fileId); + if (file == null) { + return; + } + FileRestVo fileRestVo = fileOperate.parseHashcode(fmUrl, file.hash); + doc.webUrl = fileRestVo.fileSysRestUrl + fileRestVo.fileWebDownloadPath + doc.fileId; + doc.orgName = file.orgName; + doc.extName = file.extName; + }); + return proFiles; + } public List<PltProductQualityInspectionItems> getQualityItems(String proId) { Map<String, Object> params = new HashMap<>(); @@ -282,4 +351,65 @@ } return false; } + private void addUrl(PrWorkingInstruction ins) { + if (ins == null || ins.fileId == null) { + return; + } + OthFile file = othFileMapper.selectByPrimaryKey(ins.fileId); + if (file == null) { + return; + } + FileRestVo fileRestVo = fileOperate.parseHashcode(fmUrl, file.hash); + ins.webUrl = fileRestVo.fileSysRestUrl + fileRestVo.fileWebDownloadPath + ins.fileId; + ins.orgName = file.orgName; + ins.extName = file.extName; + } + private PltProduct addWebUrl(PltProduct pro) { + if (pro != null) { + if (pro.image != null) { + String filePathWithWebUrl = getFilePathWithWebUrl(pro.image); + pro.imageWebPath = filePathWithWebUrl; + pro.imageWebPathZip = fileOperate.getImgFileZipPath(filePathWithWebUrl); + } + + pro.proFiles.stream().forEach(doc -> { + OthFile file = othFileMapper.selectByPrimaryKey(doc.fileId); + if (file == null) { + return; + } + FileRestVo fileRestVo = fileOperate.parseHashcode(fmUrl, file.hash); + doc.webUrl = fileRestVo.fileSysRestUrl + fileRestVo.fileWebDownloadPath + doc.fileId; + doc.orgName = file.orgName; + doc.extName = file.extName; + }); + } + return pro; + } + private String getFilePathWithWebUrl(Long fileId) { + OthFile file = othFileMapper.selectByPrimaryKey(fileId); + FileRestVo fileRestVo = fileOperate.parseHashcode(fmUrl, file.hash); + return fileRestVo.fileWebUrl + file.filePath; + } + + public Map<String,String> queryByDeviceNo(String deviceNo) { + Map<String,String> map = new HashMap<>(); + map.put("deviceNo", deviceNo); + map.put("proName", "-"); + map.put("proType", "-"); + + PltProduct product = productDao.selectByCode(deviceNo.substring(3,6)); + if(product != null){ + map.put("proName", product.getName()); + map.put("proType", product.getType()); + } + return map; + } + + public List<StaDeviceLife> queryLifeByDeviceNo(String deviceNo) { + return deviceLifeDao.selectByEquipNo(deviceNo); + } + + public List<StaDeviceProductionLog> queryLogByDeviceNo(String devoiceNo) { + return deviceProductionLogDao.selectByEquipNo(devoiceNo); + } } -- Gitblit v1.8.0