浏览代码

工作进度,双工位工作记录

wangxichen 3 天之前
父节点
当前提交
b20d909f67

+ 3 - 3
src/main/java/com/jeesite/modules/mes/service/MesPlanService.java

@@ -110,7 +110,7 @@ public class MesPlanService extends CrudService<MesPlanDao, MesPlan> {
 	}
 
 	// 获取当前班次及计划数完成数
-	public Map getCurShiftPlan(String oprno,String lineSn,String userCode){
+	public Map getCurShiftPlan(String oprno,String lineSn,String userCode,String dualStation){
 		// 获取当前日期时间
 		LocalDateTime now = LocalDateTime.now();
 		// 获取今天的日期
@@ -208,10 +208,10 @@ public class MesPlanService extends CrudService<MesPlanDao, MesPlan> {
 		}
 
 		// 查完成数和NG数
-		String ok = mesProductRecordUserService.getSjOk(oprno,lineSn,curStartStr,curEndStr,userCode);
+		String ok = mesProductRecordUserService.getSjOk(oprno,lineSn,curStartStr,curEndStr,userCode,dualStation);
 		map.put("okNums",ok);
 
-		String ng = mesProductRecordUserService.getSjNg(oprno,lineSn,curStartStr,curEndStr,userCode);
+		String ng = mesProductRecordUserService.getSjNg(oprno,lineSn,curStartStr,curEndStr,userCode,dualStation);
 		map.put("ngNums",ng);
 
 		MesPlan mesPlan = new MesPlan();

+ 24 - 4
src/main/java/com/jeesite/modules/mes/service/MesProductRecordUserService.java

@@ -67,7 +67,7 @@ public class MesProductRecordUserService extends CrudService<MesProductRecordUse
 		return super.findList(mesProductRecord);
 	}
 
-	public String getSjOk(String oprno,String lineSn,String sdate,String edate,String userCode){
+	public String getSjOk(String oprno,String lineSn,String sdate,String edate,String userCode,String dualStation){
 		MesProductRecordUser mesProductRecord = new MesProductRecordUser();
 //		mesProductRecord.setOprno(oprno);
 		mesProductRecord.setLineSn(lineSn);
@@ -77,7 +77,17 @@ public class MesProductRecordUserService extends CrudService<MesProductRecordUse
 		mesProductRecord.setContent("OK");
 		mesProductRecord.setCraft("100000");
 
-		if(CommonUitl.formatOprno(oprno).equals("OP130")){
+		// 双工位处理:一个客户端面板对应两个工位,按机台标志映射
+		if("true".equals(dualStation) && CommonUitl.formatOprno(oprno).equals("OP060")){
+			String[] oprnos = {"OP060A", "OP060B"};
+			if(oprno.equals("OP060B")){
+				oprnos = new String[]{"OP060C", "OP060D"};
+			}else if(oprno.equals("OP060C")){
+				oprnos = new String[]{"OP060E", "OP060F"};
+			}
+			mesProductRecord.setOprno("");
+			mesProductRecord.getSqlMap().getWhere().and("a.oprno", QueryType.IN,oprnos);
+		}else if(CommonUitl.formatOprno(oprno).equals("OP130")){
 			String[] oprnos = {"OP130A", "OP130B"};
 			if(oprno.equals("OP130B")){
 				oprnos = new String[]{"OP130C", "OP130D"};
@@ -98,7 +108,7 @@ public class MesProductRecordUserService extends CrudService<MesProductRecordUse
 		return String.valueOf(jpp1);
 	}
 
-	public String getSjNg(String oprno,String lineSn,String sdate,String edate,String userCode){
+	public String getSjNg(String oprno,String lineSn,String sdate,String edate,String userCode,String dualStation){
 		MesProductRecordUser mesProductRecord = new MesProductRecordUser();
 //		mesProductRecord.setOprno(oprno);
 		mesProductRecord.setLineSn(lineSn);
@@ -107,7 +117,17 @@ public class MesProductRecordUserService extends CrudService<MesProductRecordUse
 		}
 		mesProductRecord.setContent("NG");
 		mesProductRecord.setCraft("100000");
-		if(CommonUitl.formatOprno(oprno).equals("OP130")){
+		// 双工位处理:一个客户端面板对应两个工位,按机台标志映射
+		if("true".equals(dualStation) && CommonUitl.formatOprno(oprno).equals("OP060")){
+			String[] oprnos = {"OP060A", "OP060B"};
+			if(oprno.equals("OP060B")){
+				oprnos = new String[]{"OP060C", "OP060D"};
+			}else if(oprno.equals("OP060C")){
+				oprnos = new String[]{"OP060E", "OP060F"};
+			}
+			mesProductRecord.setOprno("");
+			mesProductRecord.getSqlMap().getWhere().and("a.oprno", QueryType.IN,oprnos);
+		}else if(CommonUitl.formatOprno(oprno).equals("OP130")){
 			String[] oprnos = {"OP130A", "OP130B"};
 			if(oprno.equals("OP130B")){
 				oprnos = new String[]{"OP130C", "OP130D"};

+ 1 - 1
src/main/java/com/jeesite/modules/mes/web/MesDeviceTimeController.java

@@ -180,7 +180,7 @@ public class MesDeviceTimeController extends BaseController {
 	public String olist(MesDeviceTime mesDeviceTime, Model model) {
 		model.addAttribute("mesDeviceTime", mesDeviceTime);
 
-		Map map = mesPlanService.getCurShiftPlan(mesDeviceTime.getOprno(),mesDeviceTime.getProductCate(),"");
+		Map map = mesPlanService.getCurShiftPlan(mesDeviceTime.getOprno(),mesDeviceTime.getProductCate(),"",null);
 		logger.info("map:"+ JSON.toJSONString(map));
 		model.addAttribute("map", map);
 

+ 15 - 2
src/main/java/com/jeesite/modules/mes/web/MesProductRecordController.java

@@ -2795,7 +2795,8 @@ public class MesProductRecordController extends BaseController {
 //		logger.info("count:"+rs.size());
 //		logger.info(JSON.toJSONString(rs));
 
-		Map map = mesPlanService.getCurShiftPlan(mesProductRecord.getOprno(),mesProductRecord.getLineSn(),"");
+		String dualStation = request.getParameter("dualStation");
+		Map map = mesPlanService.getCurShiftPlan(mesProductRecord.getOprno(),mesProductRecord.getLineSn(),"",dualStation);
 		logger.info("map:"+JSON.toJSONString(map));
 		model.addAttribute("map", map);
 
@@ -2834,7 +2835,19 @@ public class MesProductRecordController extends BaseController {
 //			mesProductRecord.getSqlMap().getWhere().and("a.oprno", QueryType.IN,oprnos);
 //		}
 
-		if(mesProductRecord.getOprno().equals("OP130A")){
+		if(mesProductRecord.getOprno().equals("OP060A")){
+			String[] oprnos = {"OP060A", "OP060B"};
+			mesProductRecord.setOprno("");
+			mesProductRecord.getSqlMap().getWhere().and("a.oprno", QueryType.IN,oprnos);
+		}else if(mesProductRecord.getOprno().equals("OP060B")){
+			String[] oprnos = {"OP060C", "OP060D"};
+			mesProductRecord.setOprno("");
+			mesProductRecord.getSqlMap().getWhere().and("a.oprno", QueryType.IN,oprnos);
+		}else if(mesProductRecord.getOprno().equals("OP060C")){
+			String[] oprnos = {"OP060E", "OP060F"};
+			mesProductRecord.setOprno("");
+			mesProductRecord.getSqlMap().getWhere().and("a.oprno", QueryType.IN,oprnos);
+		}else if(mesProductRecord.getOprno().equals("OP130A")){
 			String[] oprnos = {"OP130A", "OP130B"};
 			mesProductRecord.setOprno("");
 			mesProductRecord.getSqlMap().getWhere().and("a.oprno", QueryType.IN,oprnos);