From 5780c58879296cfced72012c8831c1d3cf4dafb2 Mon Sep 17 00:00:00 2001 From: wu <731351411@qq.com> Date: 星期四, 14 十一月 2024 00:33:13 +0800 Subject: [PATCH] 增加任务队列 任务日志,客户名称字段 --- springboot-vue3/src/main/java/com/example/springboot/service/StorageCageService.java | 242 ++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 204 insertions(+), 38 deletions(-) diff --git a/springboot-vue3/src/main/java/com/example/springboot/service/StorageCageService.java b/springboot-vue3/src/main/java/com/example/springboot/service/StorageCageService.java index 5c78fef..47c8255 100644 --- a/springboot-vue3/src/main/java/com/example/springboot/service/StorageCageService.java +++ b/springboot-vue3/src/main/java/com/example/springboot/service/StorageCageService.java @@ -16,10 +16,13 @@ import com.example.springboot.component.S7control; import com.example.springboot.entity.Flowcard; import com.example.springboot.entity.GlassInfo; +import com.example.springboot.entity.MeasureSetting; import com.example.springboot.entity.Queue; import com.example.springboot.entity.StorageCage; import com.example.springboot.entity.StorageTask; import com.example.springboot.entity.device.PlcParameterObject; +import com.example.springboot.mapper.AlbaniaMapper; +import com.example.springboot.mapper.GlassInfoMapper; import com.example.springboot.mapper.HomeMapper; import com.example.springboot.mapper.QueueMapper; import com.fasterxml.jackson.databind.ObjectMapper; @@ -37,6 +40,10 @@ @Autowired private SpianService spianService; + @Autowired + private AlbaniaMapper albaniaMapper; + @Autowired + private GlassInfoMapper glassInfoMapper; public void EndTask(int types) { String A01glassid1 = spianService.queGlassid("DB103.128", 14).toString(); @@ -200,6 +207,7 @@ } else { if (id == 1) { // 璋冪敤浼嶅瓨鍌ㄨ繃绋� + System.out.println("璋冪敤涓婄墖鍑芥暟"); zhi = spianService.selectAll(queue.getglassId()); if (zhi == 200) { homeMapper.InsertQueueGlassId(queue, id); @@ -230,10 +238,27 @@ return Result.success(map); } + // 鎸囧畾鏍煎瓙鍑虹墖 + public Result AddOutGlass(Integer cell,Integer glasstype) { + GlassInfo glass = albaniaMapper.SelectGlassInfo(glasstype); + Map<String, Object> map = new HashMap<>(); + if(glass!=null){ + albaniaMapper.AddFinishNumber(glass.getFlowcard(),glass.getMateid(), glass.getTier()); + UpdateStroageCageByCell(cell, -1);// 鐜荤拑鏁伴噺-1 + // 澧炲姞鍑虹墖闃熷垪鐨勪换鍔� + albaniaMapper.InsertOutTask(1, 0, cell, 2001,glass.getGlassid(), + glass.getGlasstype(), glass.getFlowcard(),glass.getMateid(),glass.getTier()); + map.put("message", "200"); + }else{ + map.put("message", "300"); + } + return Result.success(map); + } + // 鏌ヨ杩�/鍑虹墖浠诲姟 public List<StorageTask> SelectStorageTask(int task_type) { List<StorageTask> storageTasks = new ArrayList<>(); - String loadrack="0"; + String loadrack = "0"; if (task_type == 0) { storageTasks = homeMapper.SelectStorageTask(task_type); } else { @@ -241,30 +266,123 @@ } for (StorageTask storageTask : storageTasks) { if (task_type == 0) { - loadrack=storageTask.getLoadrack(); - }else{ - loadrack=storageTask.getShelfRack(); + loadrack = storageTask.getLoadrack(); + } else { + loadrack = storageTask.getShelfRack(); } - storageTask.setstorageCage(homeMapper.SelectStorageByCell(loadrack)); + // storageTask.setstorageCage(homeMapper.SelectStorageByCell(loadrack)); + storageTask.setstorageCage(homeMapper.SelectStorageByCellGlass(storageTask.getId())); + } return storageTasks; } + + //鏌ヨ鍑虹墖闃熷垪 + public List<Map> SelectOutTask() { + return homeMapper.SelectOutTask(); + } + //鏌ヨ鍑虹墖闃熷垪 + public List<Map> SelectOutLog() { + return homeMapper.SelectOutLog(); + } + + // 鏌ヨ杩�/鍑虹墖浠诲姟 + public List<GlassInfo> SelectMeasure() { + return homeMapper.SelectMeasure(); + } + + // 鏌ヨ褰撳墠鑶滅郴鍘氬害 + public MeasureSetting SelectSetting() { + return homeMapper.SelectMeasureSetting(); + } + + // 鏌ヨ娴嬮噺瀹介珮鍘氳啘绯� + public Map StorageCageForm() { + return homeMapper.SelectMeasureWidthHeight(); + } + + // 鎵嬪姩缁撴潫浠诲姟 + public Result TerminateTask(int id) { + for (int i = 1; i < 7; i++) { + int taskcont = albaniaMapper.SelectTaskcount(); // 姝e湪杩涜鐨勪换鍔℃暟閲� + System.out.println("浠诲姟鏁伴噺:" + taskcont); + if (taskcont == 0) { + break; + } + StorageTask storageTask = homeMapper.SelectStorageTaskById();// 鑾峰彇浠诲姟淇℃伅 + if (storageTask.getTaskType().equals("0")) { + System.out.println("缁撴潫杩涚墖浠诲姟:" + storageTask.getId()); + homeMapper.FinishTask(storageTask.getId(), 2);// 瀹屾垚浠诲姟 + homeMapper.DeletequeueByGlassid(storageTask.getGlasstype().toString()); + glassInfoMapper.updateGlassNumber(storageTask.getGlasstype());// 鍑忓皯鎵弿娆℃暟 + } else { + System.out.println("缁撴潫鍑虹墖浠诲姟:" + storageTask.getId()); + homeMapper.FinishTask(storageTask.getId(), 2);// 瀹屾垚浠诲姟 + UpdateStroageCageByCell(Integer.parseInt(storageTask.getShelfRack()), 1);// 鐜荤拑鏁伴噺+1 + homeMapper.OutGlassNo(storageTask.getGlasstype());// 杩樺師鍑虹墖瀹屾垚鏁伴噺 + } + } + Map<String, Object> map = new HashMap<>(); + return Result.success(map); + } // 鎵嬪姩瀹屾垚浠诲姟 - public Result FinishTask(Integer id) { - StorageTask storageTask = homeMapper.SelectStorageTaskById(id);// 鑾峰彇浠诲姟淇℃伅 - homeMapper.FinishTask(storageTask.getId());// 瀹屾垚浠诲姟 - if (storageTask.getTaskType().equals("0")) { - UpdateStroageCageByCell(Integer.parseInt(storageTask.getLoadrack()), 1);// 鐜荤拑鏁伴噺+1 - homeMapper.DeletequeueByGlassid(storageTask.getGlassId()); - } else { - StorageCage storageCage = homeMapper.SelectStorageByCell(storageTask.getShelfRack()); - if (storageCage.getNumber() > 1) { - UpdateStroageCageByCell(Integer.parseInt(storageTask.getShelfRack()), -1);// 鐜荤拑鏁伴噺-1 - } else { - UpdateStroageCageByCell(Integer.parseInt(storageTask.getShelfRack()), 0);// 娓呴櫎鏍煎唴淇℃伅 + public Result FinishTask() { + for (int i = 1; i < 7; i++) { + int taskcont = albaniaMapper.SelectTaskcount(); // 姝e湪杩涜鐨勪换鍔℃暟閲� + System.out.println("浠诲姟鏁伴噺:" + taskcont); + if (taskcont == 0) { + break; } - homeMapper.AddGlassNo(storageTask.getFlowcard(), storageTask.getMateid(), storageTask.geTier());// 娣诲姞鍑虹墖瀹屾垚鏁伴噺 + StorageTask storageTask = homeMapper.SelectStorageTaskById();// 鑾峰彇浠诲姟淇℃伅 + if (storageTask.getTaskType().equals("0")) { + System.out.println("瀹屾垚杩涚墖浠诲姟:" + storageTask.getId()); + homeMapper.FinishTask(storageTask.getId(), 1);// 瀹屾垚浠诲姟 + UpdateStroageCageByCell(Integer.parseInt(storageTask.getLoadrack()), 1);// 鐜荤拑鏁伴噺+1 + homeMapper.DeletequeueByGlassid(storageTask.getGlasstype().toString()); + } else { + System.out.println("瀹屾垚鍑虹墖浠诲姟:" + storageTask.getId()); + homeMapper.FinishTask(storageTask.getId(), 1);// 瀹屾垚浠诲姟 + StorageCage storageCage = homeMapper.SelectStorageByCell(storageTask.getShelfRack()); + if (storageCage.getNumber() == null || storageCage.getNumber() == 0) { + UpdateStroageCageByCell(Integer.parseInt(storageTask.getShelfRack()), 0);// 娓呴櫎鏍煎唴淇℃伅 + } + // homeMapper.AddGlassNo(storageTask.getFlowcard(), storageTask.getMateid(), + // storageTask.geTier());// 娣诲姞鍑虹墖瀹屾垚鏁伴噺 + + } + } + Map<String, Object> map = new HashMap<>(); + map.put("message", "200"); + return Result.success(map); + } + + // 鑷姩瀹屾垚浠诲姟 + public Result LoseTask() { + for (int i = 1; i < 7; i++) { + int taskcont = albaniaMapper.SelectTaskcount(); // 姝e湪杩涜鐨勪换鍔℃暟閲� + System.out.println("浠诲姟鏁伴噺:" + taskcont); + if (taskcont == 0) { + break; + } + StorageTask storageTask = homeMapper.SelectStorageTaskById();// 鑾峰彇浠诲姟淇℃伅 + if (storageTask.getTaskType().equals("0")) { + System.out.println("瀹屾垚杩涚墖浠诲姟:" + storageTask.getId()); + homeMapper.FinishTask(storageTask.getId(), 1);// 瀹屾垚浠诲姟 + UpdateStroageCageByCell(Integer.parseInt(storageTask.getLoadrack()), 1);// 鐜荤拑鏁伴噺+1 + homeMapper.DeletequeueByGlassid(storageTask.getGlasstype().toString()); + } else { + System.out.println("瀹屾垚鍑虹墖浠诲姟:" + storageTask.getId()); + homeMapper.FinishTask(storageTask.getId(), 1);// 瀹屾垚浠诲姟 + StorageCage storageCage = homeMapper.SelectStorageByCell(storageTask.getShelfRack()); + if (storageCage.getNumber() > 1) { + UpdateStroageCageByCell(Integer.parseInt(storageTask.getShelfRack()), -1);// 鐜荤拑鏁伴噺-1 + } else { + UpdateStroageCageByCell(Integer.parseInt(storageTask.getShelfRack()), 0);// 娓呴櫎鏍煎唴淇℃伅 + } + homeMapper.AddGlassNo(storageTask.getFlowcard(), storageTask.getMateid(), storageTask.geTier());// 娣诲姞鍑虹墖瀹屾垚鏁伴噺 + + } } Map<String, Object> map = new HashMap<>(); map.put("message", "200"); @@ -297,21 +415,21 @@ return OrderTask; } - // 寮�濮嬩换鍔� + // 寮�濮嬪嚭鐗� public Result ClaimTasks(String flowcard, Integer state, Integer line) { - int count=homeMapper.SelectTaskCount(flowcard,line); + int count = homeMapper.SelectTaskCount(flowcard, line); Map<String, Object> map = new HashMap<>(); - if(count==0){ + if (count == 0) { if (state == 1) { homeMapper.ClaimTasks(flowcard, 0, line); } else { homeMapper.ClaimTasks(flowcard, 1, line); } map.put("message", "200"); - }else{ + } else { map.put("message", "300"); } - + return Result.success(map); } @@ -327,14 +445,22 @@ return Result.success(map); } - // 淇敼娴嬮噺淇℃伅 + // 浜哄伐鍖归厤淇敼娴嬮噺淇℃伅 public Result UpdateQueue(GlassInfo glassInfo) { - homeMapper.UpdateQueue(glassInfo.getFlowcard(), glassInfo.getWidth(), glassInfo.getHeight(), - glassInfo.getGlasstype(), glassInfo.getThickness(), glassInfo.getTier()); + // 鍒犻櫎鏁版嵁 Map<String, Object> map = new HashMap<>(); - PlcParameterObject plcmes = PLCAutoMes.PlcMesObject; - S7control.getinstance().WriteWord(plcmes.getPlcParameter("MESToGaStatus").getAddress(), (short) 1); - map.put("message", "200"); + // QueueMapper.DeleteQueue(); + System.out.println("浜哄伐鍖归厤ID锛�"+glassInfo.getMateid()+"鑶滅郴:"+glassInfo.getFilms()); + int count = homeMapper.SelectQueue(); + if (count > 0) { + homeMapper.UpdateQueue(glassInfo.getFlowcard(), glassInfo.getWidth(), glassInfo.getHeight(), + glassInfo.getGlasstype(), glassInfo.getThickness(), glassInfo.getTier(), glassInfo.getMateid()); + PlcParameterObject plcmes = PLCAutoMes.PlcMesObject; + S7control.getinstance().WriteWord(plcmes.getPlcParameter("MESToGaStatus").getAddress(), (short) 1); + map.put("message", "200"); + } else { + map.put("message", "300"); + } return Result.success(map); } @@ -357,11 +483,45 @@ return Result.success(map); } - // 寮�濮嬪伐绋� - public Result StartChange(String flowcard) { - homeMapper.StartChange(flowcard, 1); + // 寮�濮嬩笂鐗� + public Result StartChange(String flowcard, int orderstate) { + homeMapper.StartChange(flowcard, orderstate); + Map<String, Object> map = new HashMap<>(); + int state = homeMapper.selectStartChange(flowcard); + map.put("message", "200"); + return Result.success(map); + } + // 寮�濮�/鏆傚仠鍑虹墖闃熷垪 + public Result UpdateOutTask(Integer id, Integer state) { + homeMapper.UpdateOutTask(id, state); Map<String, Object> map = new HashMap<>(); map.put("message", "200"); + return Result.success(map); + } + //鍒犻櫎鍑虹墖闃熷垪 + public Result DeleteOutTask(Integer id) { + homeMapper.DeleteOutTask(id); + Map<String, Object> map = new HashMap<>(); + map.put("message", "200"); + return Result.success(map); + } + + // 鍒犻櫎宸ョ▼ + public Result deleteTasks(Map num) { + String flowcard = (String) num.get("num"); + int aa = homeMapper.deleteFlowcard(flowcard.trim()); + homeMapper.deleteGlassinfo(flowcard.trim()); + System.out.println(flowcard); + Map<String, Object> map = new HashMap<>(); + map.put("message", flowcard.trim()); + return Result.success(map); + } + + // 淇濆瓨娴嬮噺璁剧疆 + public Result SaveMeasure(String films, Integer thickness) { + int Measure = homeMapper.SaveMeasure(films, thickness); + Map<String, Object> map = new HashMap<>(); + map.put("message", Measure); return Result.success(map); } @@ -389,11 +549,11 @@ Map<String, Integer> OrderFinishedProduct = new HashMap<String, Integer>(); // 寰楀埌澶勭悊瀹屽悗璁㈠崟鎴愬搧鎬绘暟閲�; // "order zong 0 1 10 2 10" List<Map> RemoveErrorData = IportDataStr.stream() - .filter(item -> (item.get("order") != null && item.get("glasstype") != null && item.get("tier") != null + .filter(item -> (item.get("order") != null && item.get("tier") != null && item.get("films") != null && item.get("base") != null && item.get("height") != null && item.get("thickness") != null && item.get("quantity") != null - && item.get("matching") != null)) + && item.get("matching") != null)&& item.get("Customer") != null) .collect(Collectors.toList()); TypeDatas.forEach(item -> { @@ -428,14 +588,20 @@ int count = 1; for (Map map : RemoveErrorData) { String key = map.get("base").toString() + "_" + map.get("height").toString() + "_" - + map.get("thickness").toString() + "_" + map.get("films").toString(); + + map.get("thickness").toString() + "_" + map.get("films").toString() + "_" + + map.get("order").toString() + "_" + map.get("matching").toString(); String tierkey = map.get("order").toString() + "_" + map.get("matching").toString(); String value = TypeData.get(key); Integer glasstype; + System.out.println(key + ":" + TypeData.get(key)); if (TypeData.get(key) == null) { - glasstype = homeMapper.SelectMaxType(); + + glasstype = homeMapper.SelectMaxTypes(key); + if (glasstype == null) { + glasstype = homeMapper.SelectMaxType(); + } if (glasstype == null) { glasstype = 1; } @@ -449,9 +615,9 @@ , Integer.parseInt(map.get("tier").toString()), map.get("films").toString(), Double.parseDouble(map.get("base").toString()), Double.parseDouble(map.get("height").toString()), Double.parseDouble(map.get("thickness").toString()), - Integer.parseInt(map.get("quantity").toString()), groupby.get(tierkey));// 闇�瑕佽绠楁�诲眰鏁� + Integer.parseInt(map.get("quantity").toString()), groupby.get(tierkey),map.get("Customer").toString());// 闇�瑕佽绠楁�诲眰鏁� // 璁㈠崟鍐呮�诲眰鏁� - homeMapper.InsertFlowcard(map.get("order").toString(), OrderFinishedProduct.get(tierkey + "_Sum")); + homeMapper.InsertFlowcard(map.get("order").toString(), OrderFinishedProduct.get(tierkey + "_Sum"), map.get("Customer").toString()); count++; } Map<String, Object> ResultCode = new HashMap<>(); -- Gitblit v1.8.0