From 3f68c7a7f117eda92eed81c8951317429e6a9a0c Mon Sep 17 00:00:00 2001 From: whycq <123456> Date: 星期五, 02 二月 2024 12:01:48 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/task/TaskLogScheduler.java | 35 +++----- src/main/webapp/static/wms/js/locMast/locMast.js | 1 src/main/java/com/zy/asrs/controller/OpenController.java | 36 ++++---- src/main/java/com/zy/asrs/controller/TaskWrkController.java | 108 +++++++++----------------- src/main/resources/mapper/TaskWrkMapper.xml | 4 src/main/java/com/zy/asrs/entity/param/WMSAndAGVInterfaceParam.java | 3 6 files changed, 78 insertions(+), 109 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java index 57bde1d..283d0c7 100644 --- a/src/main/java/com/zy/asrs/controller/OpenController.java +++ b/src/main/java/com/zy/asrs/controller/OpenController.java @@ -96,9 +96,15 @@ if (Cools.isEmpty(param.getBarcode())) { return R.error("鏉$爜[barcode]涓嶈兘涓虹┖"); } + String locNo=null; + if(param.getIoType()==1){ + locNo=param.getTargetPoint(); + }else{ + locNo=param.getStartPoint(); + } LocMast locMast=locMastService.selectOne(new EntityWrapper<LocMast>() .eq("loc_sts","F") - .eq("loc_no",param.getTargetPoint()) + .eq("loc_no",locNo) .eq("barcode",param.getBarcode())); if(Cools.isEmpty(locMast)){ return R.error("璇ュ簱浣嶄笉婊′綇鍑哄簱鏉′欢"+param.getTargetPoint()); @@ -319,35 +325,29 @@ return R.error("鍙傛暟涓虹┖锛�"); } else if (Cools.isEmpty(param.getTaskNo())){ return R.error("宸ヤ綔鍙蜂负绌猴紒"); - } else if (Cools.isEmpty(param.getTaskStatus())){ + } else if (Cools.isEmpty(param.getIoType())){ return R.error("鎿嶄綔绫诲瀷涓虹┖锛�"); + } else if (Cools.isEmpty(param.getBarcode())){ + return R.error("鎵樼洏鐮佷笉鑳戒负绌猴紒"); } -// else if (Cools.isEmpty(param.getWarehouseId())){ -// return R.error("浠撳簱鏍囪瘑涓虹┖锛�"); -// } - TaskWrk taskWrk = taskWrkService.selectOne(new EntityWrapper<TaskWrk>().eq("task_no", param.getTaskNo())); + TaskWrk taskWrk = taskWrkService.selectOne(new EntityWrapper<TaskWrk>() + .eq("task_no", param.getTaskNo()) + .eq("io_type",param.getIoType()) + .eq("barcode",param.getBarcode())); if (Cools.isEmpty(taskWrk)){ - return R.error("鏈煡鍒板綋鍓嶄换鍔�"); + return R.error("鏈煡鍒板綋鍓嶄换鍔�---"+param); } boolean sign =false; switch (param.getTaskStatus()){ case 1://姝e父鍙栨秷 - if (taskWrk.getWrkSts()>1){ + if (taskWrk.getStatus()>1){ return R.error("浠诲姟宸插紑濮嬫墽琛�"); - } - case 2://寮哄埗鍙栨秷 - if (taskWrk.getWrkSts()>3){ - return R.error("浠诲姟宸叉墽琛屽畬鎴�"); } break; - case 3://姝e父瀹屾垚 - if (taskWrk.getWrkSts()>11){ + case 2://姝e父瀹屾垚 + if (taskWrk.getStatus()>1){ return R.error("浠诲姟宸插紑濮嬫墽琛�"); - } - case 4://寮哄埗瀹屾垚 - if (taskWrk.getWrkSts()>14){ - return R.error("浠诲姟宸叉墽琛屽畬鎴�"); } sign=true; break; diff --git a/src/main/java/com/zy/asrs/controller/TaskWrkController.java b/src/main/java/com/zy/asrs/controller/TaskWrkController.java index 00a2fbf..81e2ddf 100644 --- a/src/main/java/com/zy/asrs/controller/TaskWrkController.java +++ b/src/main/java/com/zy/asrs/controller/TaskWrkController.java @@ -8,9 +8,11 @@ import com.core.common.DateUtils; import com.zy.asrs.domain.enums.TaskStatusType; import com.zy.asrs.entity.CommandInfo; +import com.zy.asrs.entity.LocMast; import com.zy.asrs.entity.TaskWrk; import com.zy.asrs.entity.param.TaskOverToWms; import com.zy.asrs.service.CommandInfoService; +import com.zy.asrs.service.LocMastService; import com.zy.asrs.service.TaskWrkService; import com.core.annotations.ManagerAuth; import com.core.common.BaseRes; @@ -37,6 +39,9 @@ @Autowired private CommandInfoService commandInfoService; + + @Autowired + private LocMastService locMastService; @RequestMapping(value = "/taskWrk/{wrkNo}/auth") @ManagerAuth @@ -163,78 +168,43 @@ @ManagerAuth(memo = "鎵嬪姩瀹屾垚浠诲姟") public R complete(@RequestParam String taskNo) { TaskWrk taskWrk = taskWrkService.selectByTaskNo(taskNo); + LocMast locMast=new LocMast(); + if(taskWrk.getIoType()==1){//鍏ュ簱浠诲姟瀹屾垚搴撲綅涓篎 + locMast=locMastService.selectByLocNo(taskWrk.getTargetPoint()); + if(Cools.isEmpty(locMast)){ + R.error("娌℃湁鎵惧埌璇ュ簱浣�") ; + } + locMast.setLocSts("F"); + locMast.setModiTime(new Date()); + locMast.setBarcode(taskWrk.getBarcode()); + }else if(taskWrk.getIoType()==2){//鍑哄簱浠诲姟瀹屾垚搴撲綅涓篛 + locMast=locMastService.selectByLocNo(taskWrk.getStartPoint()); + if(Cools.isEmpty(locMast)){ + R.error("娌℃湁鎵惧埌璇ュ簱浣�") ; + } + locMast.setLocSts("O"); + locMast.setModiTime(new Date()); + }else if(taskWrk.getIoType()==3){ + locMast=locMastService.selectByLocNo(taskWrk.getStartPoint()); + if(Cools.isEmpty(locMast)){ + R.error("娌℃湁鎵惧埌璇ュ簱浣�") ; + } + locMast.setLocSts("O"); + locMast.setModiTime(new Date()); + locMastService.updateById(locMast); + locMast=locMastService.selectByLocNo(taskWrk.getTargetPoint()); + if(Cools.isEmpty(locMast)){ + R.error("娌℃湁鎵惧埌璇ュ簱浣�") ; + } + locMast.setLocSts("F"); + locMast.setModiTime(new Date()); + locMast.setBarcode(taskWrk.getBarcode()); - - Map<String, Object> map = new HashMap<>(); - map.put("x-api-key","7a15b5db-29b6-552c-8cff-0cfec3756da2"); - TaskOverToWms taskOverToWms = new TaskOverToWms(); - taskOverToWms.setFeedbackFrom("WCS"); //鏉ユ簮 - taskOverToWms.setWarehouseId("1688469798893297665"); //浠撳簱鏍囪瘑 - taskOverToWms.setTaskNo(taskWrk.getTaskNo()); //浠诲姟鍙� - taskOverToWms.setTaskType(getTaskType(taskWrk.getIoType())); // 浠诲姟绫诲瀷 - taskOverToWms.setContainerCode(taskWrk.getBarcode()); // 瀹瑰櫒缂栫爜 - if (taskWrk.getIoType() ==1 ){ - taskOverToWms.setEquipmentCode(String.valueOf(taskWrk.getCrnNo())); //璁惧缂栫爜 - taskOverToWms.setTargetLocationCode(taskWrk.getOriginTargetPoint()); //鐩爣搴撲綅 - }else if (taskWrk.getIoType() ==2){ - Map<Integer,String> map1 = new HashMap<>(); - map1.put(102,"J-1101"); - map1.put(106,"J-1103"); - map1.put(110,"J-1105"); - map1.put(114,"J-1107"); - map1.put(118,"J-1109"); - map1.put(122,"J-1111"); - taskOverToWms.setEquipmentCode(map1.get(taskWrk.getTargetPoint())); //璁惧缂栫爜 - taskOverToWms.setSourceLocationCode(taskWrk.getOriginStartPoint()); //婧愬簱浣� - } - - taskOverToWms.setTaskStatus("handle"); //浠诲姟鐘舵�� - String response = null; - try { - response = new HttpHandler.Builder() - .setHeaders(map) - .setUri(wmsUrl) - .setPath("wcsManager/wcsInterface/taskStatusFeedback") - .setJson(JSON.toJSONString(taskOverToWms)) - .build() - .doPost(); - }catch (Exception e){ - log.error("wms杩炴帴澶辫触"); - } - - JSONObject jsonObject = JSON.parseObject(response); - if (jsonObject.getInteger("code").equals(200)){ - if (taskWrk == null) { - return R.error(); } - if (taskWrk.getStatus().equals(TaskStatusType.COMPLETE.id)) { - return R.error(taskWrk.getTaskNo() + "宸插畬缁�"); - } - Date now = new Date(); - taskWrk.setStatus(TaskStatusType.COMPLETE.id); - taskWrk.setModiTime(now);//鎿嶄綔鏃堕棿 - try{ - taskWrk.setModiUser(getUserId());//鎿嶄綔鍛� - }catch (Exception e){ - taskWrk.setModiUser(9999L);//鎿嶄綔鍛� - } - taskWrk.setCompleteTime(now);//瀹岀粨鏃堕棿 + locMastService.updateById(locMast); + taskWrk.setStatus(7);//鎵嬪姩瀹屾垚浠诲姟 + taskWrk.setModiTime(new Date()); taskWrkService.updateById(taskWrk); - - - if (taskWrkService.saveToHistory(taskWrk.getTaskNo()) > 0) { - //浠诲姟宸茬粡杞棩蹇楋紝灏嗚浠诲姟涓嬮潰鐨勬寚浠よ浆鏃ュ織 - commandInfoService.saveToHistory(taskWrk.getTaskNo()); - - //鍒犻櫎浠诲姟 - taskWrkService.delete(new EntityWrapper<TaskWrk>().eq("task_no", taskWrk.getTaskNo())); - //鍒犻櫎鎸囦护 - commandInfoService.delete(new EntityWrapper<CommandInfo>().eq("task_no", taskWrk.getTaskNo())); - } - }else { - return R.error("wms閫氳澶辫触"); - } - return R.ok(); } diff --git a/src/main/java/com/zy/asrs/entity/param/WMSAndAGVInterfaceParam.java b/src/main/java/com/zy/asrs/entity/param/WMSAndAGVInterfaceParam.java index c0c9225..225eccd 100644 --- a/src/main/java/com/zy/asrs/entity/param/WMSAndAGVInterfaceParam.java +++ b/src/main/java/com/zy/asrs/entity/param/WMSAndAGVInterfaceParam.java @@ -13,6 +13,9 @@ //鍏ュ嚭搴撶被鍨� private int ioType; + //鎵樼洏鐮� + private String barcode; + //private String taskNo; //浠诲姟鍙� private String warehouseId; //浠撳簱鏍囪瘑 diff --git a/src/main/java/com/zy/asrs/task/TaskLogScheduler.java b/src/main/java/com/zy/asrs/task/TaskLogScheduler.java index 327ca4c..8463ff2 100644 --- a/src/main/java/com/zy/asrs/task/TaskLogScheduler.java +++ b/src/main/java/com/zy/asrs/task/TaskLogScheduler.java @@ -55,30 +55,25 @@ @Scheduled(cron = "0/3 * * * * ? ") public void execute() throws IOException { for (TaskWrk taskWrk : taskWrkService.selectToBeHistoryData()) { - TaskStatusFeedbackParam taskStatusFeedbackParam = new TaskStatusFeedbackParam(taskWrk); - if (taskWrk.getStatus().equals(TaskStatusType.OVER.id)) {//瀹屾垚 + if (taskWrk.getStatus().equals(TaskStatusType.OVER.id)||taskWrk.getStatus()==7) {//瀹屾垚 //鍖哄垎鍏ュ嚭搴� - TaskWrkLog taskWrkLog=new TaskWrkLog(taskWrk); - if(!wrkLogService.insert(taskWrkLog)){ - throw new CoolException("杞巻鍙叉。澶辫触"+taskWrkLog); - } - if(!taskWrkService.deleteById(taskWrk)){ - throw new CoolException("浠诲姟妗e垹闄ゅけ璐�"+taskWrkLog); - } + TaskWrkLog taskWrkLog = new TaskWrkLog(taskWrk); + if (!wrkLogService.insert(taskWrkLog)) { + throw new CoolException("杞巻鍙叉。澶辫触" + taskWrkLog); + } + if (!taskWrkService.deleteById(taskWrk)) { + throw new CoolException("浠诲姟妗e垹闄ゅけ璐�" + taskWrkLog); + } } else if (taskWrk.getStatus().equals(TaskStatusType.CANCEL.id)) { - taskStatusFeedbackParam.setTaskStatus("cancelled"); - //new PostMesDataUtils().postMesData("鍙栨秷浠诲姟瀹屾垚",wmsUrl,movePath,taskWrk); + TaskWrkLog taskWrkLog=new TaskWrkLog(taskWrk); + if(!wrkLogService.insert(taskWrkLog)){ + throw new CoolException("杞巻鍙叉。澶辫触"+taskWrkLog); + } + if(!taskWrkService.deleteById(taskWrk)){ + throw new CoolException("浠诲姟妗e垹闄ゅけ璐�"+taskWrkLog); + } } - if (taskWrkService.saveToHistory(taskWrk.getTaskNo()) > 0) { - //浠诲姟宸茬粡杞棩蹇楋紝灏嗚浠诲姟涓嬮潰鐨勬寚浠よ浆鏃ュ織 - commandInfoService.saveToHistory(taskWrk.getTaskNo()); - - //鍒犻櫎浠诲姟 - taskWrkService.delete(new EntityWrapper<TaskWrk>().eq("task_no", taskWrk.getTaskNo())); - //鍒犻櫎鎸囦护 - commandInfoService.delete(new EntityWrapper<CommandInfo>().eq("task_no", taskWrk.getTaskNo())); - } } } diff --git a/src/main/resources/mapper/TaskWrkMapper.xml b/src/main/resources/mapper/TaskWrkMapper.xml index 7e8c685..8c6800e 100644 --- a/src/main/resources/mapper/TaskWrkMapper.xml +++ b/src/main/resources/mapper/TaskWrkMapper.xml @@ -118,12 +118,12 @@ <select id="selectToBeHistoryData" resultMap="BaseResultMap"> select * from dbo.wcs_task_wrk where 1=1 - and ((wrk_sts=14 and status=5) or status=4 or (wrk_sts=4 and status=5)) + and ((wrk_sts=14 and status=5) or status=7 or status=4 or (wrk_sts=4 and status=5)) order by io_pri desc,create_time,wrk_no ASC </select> <insert id="saveToHistory"> - insert into wcs_task_wrk_log select * from wcs_task_wrk where task_no = #{taskNo} and (status=5 or status=4) + insert into wcs_task_wrk_log select * from wcs_task_wrk where task_no = #{taskNo} and (status=5 or status=4 or status=6) </insert> <select id="selectWorkingTask" resultMap="BaseResultMap"> diff --git a/src/main/webapp/static/wms/js/locMast/locMast.js b/src/main/webapp/static/wms/js/locMast/locMast.js index 7f33483..f7cc2e2 100644 --- a/src/main/webapp/static/wms/js/locMast/locMast.js +++ b/src/main/webapp/static/wms/js/locMast/locMast.js @@ -32,6 +32,7 @@ ,{field: 'row1', align: 'center',title: '鎺�', sort:true} ,{field: 'bay1', align: 'center',title: '鍒�', sort:true} ,{field: 'lev1', align: 'center',title: '灞�', sort:true} + ,{field: 'barcode', align: 'center',title: '鎵樼洏鐮�', sort:true} // ,{field: 'fullPlt', align: 'center',title: '婊℃澘', templet:function(row){ // var html = "<input value='fullPlt' type='checkbox' lay-skin='primary' lay-filter='tableCheckbox' disabled table-index='"+row.LAY_TABLE_INDEX+"'"; // if(row.fullPlt === 'Y'){html += " checked ";} -- Gitblit v1.9.1