From bcb19e8c93c3cabf0d8eb3ee34ed819b3c5a10ef Mon Sep 17 00:00:00 2001 From: whycq <913841844@qq.com> Date: 星期一, 25 十一月 2024 13:14:11 +0800 Subject: [PATCH] #优化地图 --- src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java | 65 ++++++++++++++++++++++++++++++-- 1 files changed, 60 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java b/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java index f10654e..7c0f98f 100644 --- a/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java +++ b/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java @@ -61,11 +61,25 @@ @Autowired private AgvWrkMastService agvWrkMastService; + public void updateWrkStsByWrkNo(int wrkNo, long wrkSts) { AgvWrkMast agvWrkMast = this.selectById(wrkNo); //鍒ゆ柇瑕佷慨鏀圭殑宸ヤ綔妗g姸鎬佹槸鍚﹀悎鐞嗭紝濡傛灉涓嶅悎鐞嗗垯鎶涘嚭寮傚父 checkWrkSts(agvWrkMast,wrkSts); agvWrkMast.setWrkSts(wrkSts); + agvWrkMast.setModiTime(new Date()); + this.updateById(agvWrkMast); + } + + public void updateWrkStsByWrkNo(int wrkNo, long wrkSts,String manuType,long userId) { + Date now = new Date(); + AgvWrkMast agvWrkMast = this.selectById(wrkNo); + //鍒ゆ柇瑕佷慨鏀圭殑宸ヤ綔妗g姸鎬佹槸鍚﹀悎鐞嗭紝濡傛灉涓嶅悎鐞嗗垯鎶涘嚭寮傚父 + checkWrkSts(agvWrkMast,wrkSts); + agvWrkMast.setWrkSts(wrkSts); + agvWrkMast.setManuType(manuType); + agvWrkMast.setModiTime(now); + agvWrkMast.setModiUser(userId); this.updateById(agvWrkMast); } @@ -92,10 +106,15 @@ public int startAllcationIn(AgvWrkMast agvWrkMast) throws IOException { AgvBasDevp basDevp = agvBasDevpService.selectByDevNo(agvWrkMast.getSourceLocNo()); //妫�绱㈠簱浣嶏紝閫夋嫨鍚堥�傜殑搴撲綅 - AgvLocMast locMast = agvCommonService.getLocNo(basDevp.getLocType1(),basDevp.getFloor()); + AgvLocMast locMast = agvCommonService.getLocNo(basDevp.getLocType1(),basDevp.getFloor(),false,true); agvWrkMast.setLocNo(locMast.getLocNo()); agvWrkMast.setWrkSts(201L); + agvWrkMast.setLogErrMemo("startAllcationIn"); + agvWrkMast.setModiTime(new Date()); agvWrkMastService.updateById(agvWrkMast); + // 鏇寸洰鏍囧簱浣� + locMast.setLocSts("S"); + agvLocMastService.updateById(locMast); return 0; } @@ -205,10 +224,46 @@ agvWrkMast.setWrkNo(-agvWrkMast.getWrkNo()); } agvTaskCreateParam.setTaskCode(agvWrkMast.getWrkNo().toString()); - if (agvWrkMast.getIoType() == 108 || (agvWrkMast.getIoType() == 109 && agvWrkMast.getWrkSts() == 201) || agvWrkMast.getIoType() == 12) { - agvTaskCreateParam.setTaskTyp("F06"); - } else { - agvTaskCreateParam.setTaskTyp("F01"); + switch (agvWrkMast.getIoType()) { + case 114: + case 108: + case 12: + agvTaskCreateParam.setTaskTyp("F06"); + break; + case 109: + if (agvWrkMast.getWrkSts() == 201) { + agvTaskCreateParam.setTaskTyp("F06"); + } else { + agvTaskCreateParam.setTaskTyp("F01"); + } + break; + case 1: + case 57: + // 鍏ュ簱浠诲姟鏄彧鏈� 鎺ラ┏浣� -- > 搴撲綅 + AgvLocMast loc = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_no", agvWrkMast.getLocNo())); + String locSub = loc.getLocNo().substring(loc.getLocNo().length() - 4).substring(0, 2).substring(0, 2); + AgvBasDevp agvBasDevp = agvBasDevpService.selectByDevNo(agvWrkMast.getSourceLocNo()); + if ("02".equals(locSub)) { + if (agvBasDevp.getFloor() == 4) { + agvTaskCreateParam.setTaskTyp("F01"); + } else { + agvTaskCreateParam.setTaskTyp("F06"); + } + + } else { + // 鐩爣妤煎眰浣�1妤� 浣嗘簮搴撲綅锛堟帴椹充綅锛夊湪鍚稿浜屾ゼ + if (agvBasDevp.getFloor() == 4) { + agvTaskCreateParam.setTaskTyp("F06"); + } else { + agvTaskCreateParam.setTaskTyp("F01"); + } + + + } + break; + default: + agvTaskCreateParam.setTaskTyp("F01"); + break; } agvTaskCreateParam.setPositionCodePath(agvTaskParamList); -- Gitblit v1.9.1