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.daoPlt.PltStationMapper; import com.dy.pmsGlobal.daoPr.PrAssemblyPlanMapper; import com.dy.pmsGlobal.daoSta.StaAssemblyWorkLastMapper; import com.dy.pmsGlobal.pojoBa.BaUser; import com.dy.pmsGlobal.pojoPlt.PltStation; import com.dy.pmsGlobal.pojoPr.PrAssemblyPlan; import com.dy.pmsGlobal.pojoSta.StaAssemblyWorkLast; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; @Slf4j @Service public class WorkOrderSv { private PrAssemblyPlanMapper assemblyDao; private BaUserMapper baUserDao; private PltStationMapper pltStationDao; private StaAssemblyWorkLastMapper assemblyWorkLastDao; @Autowired public void setAssemblyDao(PrAssemblyPlanMapper assemblyDao) { this.assemblyDao = assemblyDao; } @Autowired private void setBaUserDao(BaUserMapper baUserDao){ this.baUserDao = baUserDao; } @Autowired private void setPltStationDao(PltStationMapper pltStationDao){ this.pltStationDao = pltStationDao; } @Autowired private void setStaAssemblyWorkLastDao(StaAssemblyWorkLastMapper assemblyWorkLastDao){ this.assemblyWorkLastDao = assemblyWorkLastDao; } public String checkUser(String id){ Long userId = null; String message = "USER"; if(StringUtils.isBlank(id)){ message = "FALSE^员工编码不能为空"; return message; } //工站103 if((!StringUtils.isBlank(id)) && id.toString().startsWith("103")){ message = checkStation(id); return message; } //用户101 if(id.toString().startsWith("101")){ userId = Long.parseLong(id.toString().substring(3)); }else{ userId = Long.parseLong(id.toString()); } BaUser userInfo = baUserDao.selectByPrimaryKey(userId); if(userInfo == null){ message = "FALSE^员工编码:"+ userId +"不在系统中,请先维护员工信息"; return message; } message += "^"+ userId; return message; } public String checkStation(String id){ Long stationId = null; String message = "STATION"; if(StringUtils.isBlank(id)){ message = "FALSE^工站编码不能为空"; return message; } //用户101 if((!StringUtils.isBlank(id)) && id.toString().startsWith("101")){ message = checkUser(id); return message; } //工站103 if(id.toString().startsWith("103")){ stationId = Long.parseLong(id.toString().substring(3)); }else{ stationId = Long.parseLong(id.toString()); } PltStation record = new PltStation(); record.setId(stationId); List stationInfo = pltStationDao.selectStationList(record); if(stationInfo.size() == 0){ message = "FALSE^工站编码:"+ stationId +"不在系统中,请先维护工站信息"; return message; } //检查工站 message += "^"+ stationId; return message; } public String checkStationUsed(QueryVo last){ String message = "OK"; Long userId = null; Long stationId = null; String userMsg = checkUser(last.getUserId()); String stationMsg = checkStation(last.getStationId()); if(userMsg.startsWith("FALSE") || stationMsg.startsWith("FALSE")){ if(userMsg.startsWith("FALSE") && stationMsg.startsWith("FALSE")){ message = userMsg +","+ stationMsg.split("\\^")[1]; }else if(userMsg.startsWith("FALSE")){ message = userMsg; }else if(stationMsg.startsWith("FALSE")){ message = stationMsg; } return message; }else{//根据结果 找到对应的ID值 if(userMsg.startsWith("USER")){ userId = Long.parseLong(userMsg.split("\\^")[1]); }else if(userMsg.startsWith("STATION")){ stationId = Long.parseLong(userMsg.split("\\^")[1]); } if(stationMsg.startsWith("USER")){ userId = Long.parseLong(stationMsg.split("\\^")[1]); }else if(stationMsg.startsWith("STATION")){ stationId = Long.parseLong(stationMsg.split("\\^")[1]); } } if(userId == null || stationId == null){ message = "FALSE^员工编码:"+ last.getUserId() + "或工站编码:" + last.getStationId() + "不正确,请检查"; return message; } //检查表中stationId是否已经存在 StaAssemblyWorkLast param = new StaAssemblyWorkLast(); param.setStationId(stationId); param.setStatus(1); List userStationList = assemblyWorkLastDao.selectList(param); if(userStationList.size() > 0){ message = "FALSE^员工编码:"+ userStationList.get(0).getUserId() + "已经绑定该工站编码:" + userStationList.get(0).getStationId() + ".请先让其解绑"; }//message = "OK^员工编码:"+ userId+ "已经绑定该工站编码:" + stationId + ".验证通过"; return message; } public List selectList(PrAssemblyPlan params){ List planList = assemblyDao.selectList(params); return planList; } }