|
@@ -279,6 +279,11 @@ public class MesLineProcessController extends BaseController {
|
|
|
@ResponseBody
|
|
@ResponseBody
|
|
|
public CommonResp processList(HttpServletRequest req) {
|
|
public CommonResp processList(HttpServletRequest req) {
|
|
|
CommonResp<Map<String, Object>> resp = new CommonResp<>();
|
|
CommonResp<Map<String, Object>> resp = new CommonResp<>();
|
|
|
|
|
+ String lineSn = req.getParameter("lineSn");
|
|
|
|
|
+ String sn = req.getParameter("sn");//工件碼
|
|
|
|
|
+ MesLine mesLine = new MesLine();
|
|
|
|
|
+ mesLine.setSn(lineSn);
|
|
|
|
|
+ mesLine = mesLineService.findInfo(mesLine);
|
|
|
// User user = UserUtils.getUser();
|
|
// User user = UserUtils.getUser();
|
|
|
// MesLineProcessUser mesLineProcessUser = new MesLineProcessUser();
|
|
// MesLineProcessUser mesLineProcessUser = new MesLineProcessUser();
|
|
|
// mesLineProcessUser.setUserCode(user.getUserCode());
|
|
// mesLineProcessUser.setUserCode(user.getUserCode());
|
|
@@ -300,17 +305,86 @@ public class MesLineProcessController extends BaseController {
|
|
|
Map<String, Object> map = MapUtils.newHashMap();
|
|
Map<String, Object> map = MapUtils.newHashMap();
|
|
|
MesLineProcess mesLineProcess = new MesLineProcess();
|
|
MesLineProcess mesLineProcess = new MesLineProcess();
|
|
|
mesLineProcess.setStatus("0");
|
|
mesLineProcess.setStatus("0");
|
|
|
|
|
+ mesLineProcess.setLineId(mesLine.getId());
|
|
|
mesLineProcess.getSqlMap().getWhere().and("a.pid",QueryType.IS_NOT_NULL,"");
|
|
mesLineProcess.getSqlMap().getWhere().and("a.pid",QueryType.IS_NOT_NULL,"");
|
|
|
List<MesLineProcess> lists = mesLineProcessService.findList(mesLineProcess);
|
|
List<MesLineProcess> lists = mesLineProcessService.findList(mesLineProcess);
|
|
|
- if(ListUtils.isEmpty(lists)){
|
|
|
|
|
- List<MesLineProcess> list1 = new ArrayList<>();
|
|
|
|
|
- map.put("lists", list1);
|
|
|
|
|
- }else{
|
|
|
|
|
- map.put("lists", lists);
|
|
|
|
|
|
|
+
|
|
|
|
|
+ if(sn!= null){
|
|
|
|
|
+//先查所有加工结果,查询记录为OK
|
|
|
|
|
+ List<String> strings = mesProductRecordService.selectOprno("OK", "100000", sn,lineSn);
|
|
|
|
|
+
|
|
|
|
|
+ if (strings != null && !strings.isEmpty()){
|
|
|
|
|
+
|
|
|
|
|
+ //需要过滤MesLineProcess中的oprno与strings中的oprno对比,如果存在就添加进列不存在就直接过滤掉
|
|
|
|
|
+ // 过滤MesLineProcess,只保留oprno在finishedOprnos中的工序
|
|
|
|
|
+ List<MesLineProcess> filteredLists = new ArrayList<>();
|
|
|
|
|
+ for (MesLineProcess process : lists) {
|
|
|
|
|
+ if (strings.contains(process.getOprno())) {
|
|
|
|
|
+ filteredLists.add(process);
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+// 按照oprno中的数字部分从小到大排序
|
|
|
|
|
+ if (filteredLists.size() > 0){
|
|
|
|
|
+ filteredLists.sort((p1, p2) -> {
|
|
|
|
|
+ String oprno1 = p1.getOprno();
|
|
|
|
|
+ String oprno2 = p2.getOprno();
|
|
|
|
|
+
|
|
|
|
|
+ // 提取oprno中的数字部分
|
|
|
|
|
+ int num1 = extractNumberFromOprno(oprno1);
|
|
|
|
|
+ int num2 = extractNumberFromOprno(oprno2);
|
|
|
|
|
+
|
|
|
|
|
+ return Integer.compare(num1, num2);
|
|
|
|
|
+ });
|
|
|
|
|
+ }
|
|
|
|
|
+ map.put("lists", filteredLists);
|
|
|
|
|
+ }else {
|
|
|
|
|
+ map.put("lists", lists);
|
|
|
|
|
+ }
|
|
|
|
|
+ resp.setData(map);
|
|
|
|
|
+ resp.setResult(Global.TRUE);
|
|
|
|
|
+ return resp;
|
|
|
|
|
+ }else {
|
|
|
|
|
+ if(ListUtils.isEmpty(lists)){
|
|
|
|
|
+ List<MesLineProcess> list1 = new ArrayList<>();
|
|
|
|
|
+ map.put("lists", list1);
|
|
|
|
|
+ }else{
|
|
|
|
|
+ map.put("lists", lists);
|
|
|
|
|
+ }
|
|
|
|
|
+ resp.setData(map);
|
|
|
|
|
+ resp.setResult(Global.TRUE);
|
|
|
|
|
+ return resp;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+// if(ListUtils.isEmpty(lists)){
|
|
|
|
|
+// List<MesLineProcess> list1 = new ArrayList<>();
|
|
|
|
|
+// map.put("lists", list1);
|
|
|
|
|
+// }else{
|
|
|
|
|
+// map.put("lists", lists);
|
|
|
|
|
+// }
|
|
|
|
|
+// resp.setData(map);
|
|
|
|
|
+// resp.setResult(Global.TRUE);
|
|
|
|
|
+// return resp;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ private int extractNumberFromOprno(String oprno) {
|
|
|
|
|
+ if (oprno == null || oprno.isEmpty()) {
|
|
|
|
|
+ return 0;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ StringBuilder numberBuilder = new StringBuilder();
|
|
|
|
|
+ for (char c : oprno.toCharArray()) {
|
|
|
|
|
+ if (Character.isDigit(c)) {
|
|
|
|
|
+ numberBuilder.append(c);
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ try {
|
|
|
|
|
+ return numberBuilder.length() > 0 ? Integer.parseInt(numberBuilder.toString()) : 0;
|
|
|
|
|
+ } catch (NumberFormatException e) {
|
|
|
|
|
+ return 0;
|
|
|
}
|
|
}
|
|
|
- resp.setData(map);
|
|
|
|
|
- resp.setResult(Global.TRUE);
|
|
|
|
|
- return resp;
|
|
|
|
|
}
|
|
}
|
|
|
@RequiresPermissions("mes:mesLineProcess:api")
|
|
@RequiresPermissions("mes:mesLineProcess:api")
|
|
|
@PostMapping(value = "editDevices")
|
|
@PostMapping(value = "editDevices")
|
|
@@ -539,4 +613,4 @@ public class MesLineProcessController extends BaseController {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
-}
|
|
|
|
|
|
|
+}
|