| | |
| | | package com.dy.pmsStation.workOrder; |
| | | |
| | | import com.alibaba.excel.util.StringUtils; |
| | | import com.dy.common.webUtil.BaseResponseUtils; |
| | | import com.dy.pmsGlobal.daoBa.BaUserMapper; |
| | | import com.dy.pmsGlobal.daoOth.OthFileMapper; |
| | | import com.dy.pmsGlobal.daoPlt.PltStationMapper; |
| | | import com.dy.pmsGlobal.daoPr.PrAssemblyPlanMapper; |
| | | 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.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; |
| | |
| | | private BaUserMapper baUserDao; |
| | | private PltStationMapper pltStationDao; |
| | | private StaAssemblyWorkLastMapper assemblyWorkLastDao; |
| | | private StaAssemblyWorkHistoryMapper assemblyWorkHistoryDao; |
| | | private FileOperate fileOperate; |
| | | private OthFileMapper othFileMapper; |
| | | @Value("${dy.webFile.fmUrl}") |
| | |
| | | @Autowired |
| | | private void setPltStationDao(PltStationMapper pltStationDao){ |
| | | this.pltStationDao = pltStationDao; |
| | | } |
| | | @Autowired |
| | | private void setStaAssemblyWorkHistoryDao(StaAssemblyWorkHistoryMapper assemblyWorkHistoryDao){ |
| | | this.assemblyWorkHistoryDao = assemblyWorkHistoryDao; |
| | | } |
| | | @Autowired |
| | | private void setStaAssemblyWorkLastDao(StaAssemblyWorkLastMapper assemblyWorkLastDao){ |
| | |
| | | } |
| | | return userInfo; |
| | | } |
| | | |
| | | public PltStation getStationInfo(String id){ |
| | | //仅检查工站信息以及工站占用情况 |
| | | Long stationId = null; |
| | | if(StringUtils.isBlank(id)){ |
| | | throw new RuntimeException("工站编码不能为空"); |
| | |
| | | } |
| | | return stationInfo; |
| | | } |
| | | public StaAssemblyWorkLast checkStationUsed(QueryVo last){ |
| | | public StaAssemblyWorkLast checkStationUsed(String id){ |
| | | StaAssemblyWorkLast result = new StaAssemblyWorkLast(); |
| | | PltStation stationInfo = null; |
| | | if(StringUtils.isBlank(id)){ |
| | | throw new RuntimeException("工站编码不能为空,请检查"); |
| | | } |
| | | stationInfo = getStationInfo(id); |
| | | //检查表中stationId是否已经存在 |
| | | StaAssemblyWorkLast param = new StaAssemblyWorkLast(); |
| | | param.setStationId(stationInfo.getId()); |
| | | param.setStatus(1); |
| | | 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()); |
| | | } |
| | | return result; |
| | | } |
| | | |
| | | public StaAssemblyWorkLast checkUserAndStationUsed(QueryVo last){ |
| | | StaAssemblyWorkLast result = new StaAssemblyWorkLast(); |
| | | PltStation stationInfo = null; |
| | | BaUser userInfo = null; |
| | |
| | | return result; |
| | | } |
| | | @Transactional |
| | | public int save(QueryVo last) { |
| | | public StaAssemblyWorkLast save(QueryVo last) { |
| | | //先check |
| | | StaAssemblyWorkLast checkResult = checkStationUsed(last); |
| | | StaAssemblyWorkLast checkResult = checkUserAndStationUsed(last); |
| | | //校验planId processId nodeId |
| | | PrAssemblyPlan params = new PrAssemblyPlan(); |
| | | params.setStatus(1); |
| | |
| | | staLast.setStartTime(new Date()); |
| | | count = assemblyWorkLastDao.insertSelective(staLast); |
| | | }else{ |
| | | //保存一条history? |
| | | BeanUtils.copyProperties(checkResult,staLast); |
| | | staLast.setPlanId(last.getPlanId()); |
| | | staLast.setProcessId(last.getProcessId()); |
| | |
| | | staLast.setStartTime(new Date()); |
| | | count = assemblyWorkLastDao.updateByPrimaryKeySelective(staLast); |
| | | } |
| | | if (count <= 0) { |
| | | throw new RuntimeException("数据库存储失败"); |
| | | } |
| | | StaAssemblyWorkLast result = assemblyWorkLastDao.selectByPrimaryKey(staLast.getId()); |
| | | return result; |
| | | } |
| | | @Transactional |
| | | public int logout(String id) { |
| | | //找到登录记录 |
| | | StaAssemblyWorkLast workLast = assemblyWorkLastDao.selectByPrimaryKey(Long.parseLong(id)); |
| | | if(workLast == null){ |
| | | throw new RuntimeException("系统中没有该条登录信息"); |
| | | } |
| | | //更新登录记录 |
| | | workLast.setStatus(2); |
| | | workLast.setEndTime(new Date()); |
| | | // 保存history |
| | | StaAssemblyWorkHistory history = new StaAssemblyWorkHistory(); |
| | | BeanUtils.copyProperties(workLast,history); |
| | | history.setId(null); |
| | | int count = assemblyWorkHistoryDao.insertSelective(history); |
| | | //删除last |
| | | assemblyWorkLastDao.deleteByPrimaryKey(Long.parseLong(id)); |
| | | return count; |
| | | } |
| | | public List<PrAssemblyPlan> selectAssyPlanList(PrAssemblyPlan params){ |
| | |
| | | ins.orgName = file.orgName; |
| | | ins.extName = file.extName; |
| | | } |
| | | |
| | | } |