| | |
| | | |
| | | import com.alibaba.excel.util.StringUtils; |
| | | import com.dy.pmsGlobal.daoBa.BaUserMapper; |
| | | import com.dy.pmsGlobal.daoOth.OthFileMapper; |
| | | import com.dy.pmsGlobal.daoPlt.PltProductMapper; |
| | | import com.dy.pmsGlobal.daoPlt.PltStationMapper; |
| | | import com.dy.pmsGlobal.daoPr.PrAssemblyPlanMapper; |
| | | import com.dy.pmsGlobal.daoPr.PrProductionNodeMapper; |
| | | import com.dy.pmsGlobal.daoSta.StaAssemblyWorkHistoryMapper; |
| | | import com.dy.pmsGlobal.daoSta.StaAssemblyWorkLastMapper; |
| | | 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.pojoPlt.PltStation; |
| | | import com.dy.pmsGlobal.pojoPr.PrAssemblyPlan; |
| | | import com.dy.pmsGlobal.pojoPr.PrProductionNode; |
| | | import com.dy.pmsGlobal.pojoPr.PrWorkingInstruction; |
| | | import com.dy.pmsGlobal.pojoSta.StaAssemblyWorkHistory; |
| | | import com.dy.pmsGlobal.pojoSta.StaAssemblyWorkLast; |
| | | 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; |
| | | |
| | |
| | | private PltStationMapper pltStationDao; |
| | | private StaAssemblyWorkLastMapper assemblyWorkLastDao; |
| | | private StaAssemblyWorkHistoryMapper assemblyWorkHistoryDao; |
| | | private FileOperate fileOperate; |
| | | private OthFileMapper othFileMapper; |
| | | @Value("${dy.webFile.fmUrl}") |
| | | private String fmUrl; |
| | | private PrProductionNodeMapper nodeDao; |
| | | private PltProductMapper productDao; |
| | | |
| | | @Autowired |
| | | public void setAssemblyDao(PrAssemblyPlanMapper assemblyDao) { |
| | |
| | | } |
| | | |
| | | @Autowired |
| | | public void setFileOperate(FileOperate fileOperate) { |
| | | this.fileOperate = fileOperate; |
| | | public void setNodeDao(PrProductionNodeMapper nodeDao) { |
| | | this.nodeDao = nodeDao; |
| | | } |
| | | |
| | | @Autowired |
| | | public void setOthFileMapper(OthFileMapper othFileMapper) { |
| | | this.othFileMapper = othFileMapper; |
| | | public void setPltProductDao(PltProductMapper productDao) { |
| | | this.productDao = productDao; |
| | | } |
| | | |
| | | |
| | | public BaUser getUserInfo(String id) { |
| | | Long userId = null; |
| | |
| | | List<StaAssemblyWorkLast> workLasts = assemblyWorkLastDao.selectList(param); |
| | | if (workLasts.size() > 0) { |
| | | BeanUtils.copyProperties(workLasts.get(0), result); |
| | | } else { |
| | | result.setStationId(stationInfo.getId()); |
| | | result.setStationName(stationInfo.getName()); |
| | | result.setLineId(stationInfo.getLineId()); |
| | | result.setLineName(stationInfo.getLineName()); |
| | | //校验planId processId nodeId |
| | | PrAssemblyPlan assyPlan = assemblyDao.selectByPrimaryKey(workLasts.get(0).getPlanId()); |
| | | if (assyPlan == null) { |
| | | //直接删除记录 |
| | | logout(workLasts.get(0).getId().toString()); |
| | | } |
| | | boolean hasNodeId = assyPlan.getProcess().getNodes().stream() |
| | | .anyMatch(node -> node.id.equals(workLasts.get(0).getNodeId())); |
| | | if (!hasNodeId) { |
| | | //直接删除记录 |
| | | logout(workLasts.get(0).getId().toString()); |
| | | } else { |
| | | result.setPlan(assyPlan); |
| | | } |
| | | } |
| | | result.setStationId(stationInfo.getId()); |
| | | result.setStationName(stationInfo.getName()); |
| | | result.setLineId(stationInfo.getLineId()); |
| | | result.setLineName(stationInfo.getLineName()); |
| | | return result; |
| | | } |
| | | |
| | |
| | | StaAssemblyWorkLast checkResult = checkUserAndStationUsed(vo); |
| | | //校验planId processId nodeId |
| | | PrAssemblyPlan assyPlan = assemblyDao.selectByPrimaryKey(vo.getPlanId()); |
| | | if(assyPlan == null){ |
| | | if (assyPlan == null) { |
| | | throw new RuntimeException("组装任务已经在系统中删除请检查,刷新并重新选择任务"); |
| | | } |
| | | boolean hasNodeId = assyPlan.getProcess().getNodes().stream() |
| | |
| | | if (!hasNodeId) { |
| | | throw new RuntimeException("节点信息有误或被其他人员修改,请重新选择节点信息"); |
| | | } |
| | | |
| | | //怎么将只包含这个节点的信息全部回传呢 |
| | | vo.setLineId(checkResult.getLineId()); |
| | | StaAssemblyWorkLast staLast = new StaAssemblyWorkLast(); |
| | |
| | | } else { |
| | | //保存一条history? |
| | | BeanUtils.copyProperties(checkResult, staLast); |
| | | staLast.setPlanId(vo.getPlanId()); |
| | | staLast.setProcessId(vo.getProcessId()); |
| | | staLast.setPlanId(assyPlan.getId()); |
| | | staLast.setProcessId(assyPlan.getProcess().getId()); |
| | | staLast.setNodeId(vo.getNodeId()); |
| | | staLast.setStatus(STATUS_NORMAL); |
| | | staLast.setStartTime(new Date()); |
| | |
| | | throw new RuntimeException("数据库存储失败"); |
| | | } |
| | | StaAssemblyWorkLast result = assemblyWorkLastDao.selectByPrimaryKey(staLast.getId()); |
| | | List<PrProductionNode> nodeInfo =assyPlan.getProcess().getNodes().stream() |
| | | List<PrProductionNode> nodeInfo = assyPlan.getProcess().getNodes().stream() |
| | | .filter(node -> node.id.equals(vo.getNodeId())).collect(Collectors.toList()); |
| | | assyPlan.getProcess().setNodes(nodeInfo); |
| | | result.setPlan(assyPlan); |
| | |
| | | }); |
| | | });*/ |
| | | return planList; |
| | | } |
| | | |
| | | 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; |
| | | } |
| | | |
| | | //workId assistants 传的是单个的userId 必传参数 |
| | |
| | | List<BaUser> assistantList = baUserDao.selectByAssistants(workLast.getAssistants()); |
| | | return assistantList; |
| | | } |
| | | //根据节点的查出节点作业指导书 |
| | | |
| | | // 根据产品查出产品文件 主要技术参数 |
| | | |
| | | } |