From 2f328c198aa83fa274c91fa70cf955abbe336c07 Mon Sep 17 00:00:00 2001 From: whycq <10027870+whycq@user.noreply.gitee.com> Date: 星期四, 13 六月 2024 09:57:54 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/controller/AgvMobileController.java | 99 ++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 97 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/AgvMobileController.java b/src/main/java/com/zy/asrs/controller/AgvMobileController.java index 5f00b40..6f5929e 100644 --- a/src/main/java/com/zy/asrs/controller/AgvMobileController.java +++ b/src/main/java/com/zy/asrs/controller/AgvMobileController.java @@ -12,6 +12,8 @@ import com.zy.common.web.BaseController; import io.swagger.models.auth.In; import lombok.Synchronized; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; @@ -27,6 +29,8 @@ @RequestMapping("agvMobile") public class AgvMobileController extends BaseController { + + private static final Logger log = LoggerFactory.getLogger(AgvMobileController.class); @Autowired private AgvMobileService agvMobileService; @Autowired @@ -185,7 +189,8 @@ String matnr = params.get("matnr"); String floor = params.get("floor"); - Wrapper<AgvLocDetl> wrapper = new EntityWrapper<AgvLocDetl>().eq("matnr", matnr); + Wrapper<AgvLocDetl> wrapper = new EntityWrapper<AgvLocDetl>().eq("matnr", matnr).ne("process_sts",1); + // wrapper.eq("orderNo",orderNo); @@ -201,7 +206,58 @@ if (Cools.isEmpty(floor)) { agvLocMast = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_no", agvLocDetl.getLocNo()).notLike("loc_no","F1")); } else { - agvLocMast = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_no", agvLocDetl.getLocNo()).like("loc_no",floor)); + // 濡傛灉鏄姞宸ュ崟 鍙湪 lev1 = 1 鏌ュ簱瀛� + if ("JG".equals(orderNo.substring(0,2))) { + agvLocMast = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("lev1",1).eq("loc_no", agvLocDetl.getLocNo()).like("loc_no",floor)); + } else { + agvLocMast = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_no", agvLocDetl.getLocNo()).like("loc_no",floor)); + } + } + + if (Cools.isEmpty(agvLocMast)) continue; + agvLocDetl.setLocSts(agvLocMast.getLocSts()); + agvLocDetl.setLocSts$(agvLocMast.getLocSts$()); + locDetls.add(agvLocDetl); + } + + + return R.ok(locDetls); + } + + /* + 鏌ヨ搴撳瓨 鍏ュ簱璁㈠崟涓庨攢鍞崟鍙� + */ + @PostMapping("/query/locDetl/v2") + public R queryAgvLocDetl2(@RequestBody HashMap<String,String> params){ + + String orderNo = params.get("orderNo"); + String threeCode = params.get("threeCode"); + String matnr = params.get("matnr"); + String floor = params.get("floor"); + + Wrapper<AgvLocDetl> wrapper = new EntityWrapper<AgvLocDetl>().eq("matnr", matnr); + + +// wrapper.eq("orderNo",orderNo); + + wrapper = Cools.isEmpty(threeCode) ? wrapper.isNull("three_code") : wrapper.eq("three_code",threeCode); + + if (threeCode.substring(0,2).equals(30)) { + wrapper.isNull("specs").or().eq("specs","").eq("floor",1); + } + List<AgvLocDetl> agvLocDetls = agvLocDetlService.selectList(wrapper); + List<AgvLocDetl> locDetls = new ArrayList<>(); + for (AgvLocDetl agvLocDetl : agvLocDetls) { + AgvLocMast agvLocMast = new AgvLocMast(); + if (Cools.isEmpty(floor)) { + agvLocMast = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_no", agvLocDetl.getLocNo()).notLike("loc_no","F1")); + } else { + // 濡傛灉鏄姞宸ュ崟 鍙湪 lev1 = 1 鏌ュ簱瀛� + if ("JG".equals(orderNo.substring(0,2))) { + agvLocMast = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("lev1",1).eq("loc_no", agvLocDetl.getLocNo()).like("loc_no",floor)); + } else { + agvLocMast = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_no", agvLocDetl.getLocNo()).like("loc_no",floor)); + } } if (Cools.isEmpty(agvLocMast)) continue; @@ -421,6 +477,11 @@ if (mT.equals("unAuto")) { moveType = "2"; ioType = 111; + //int count = agvWrkMastService.selectCount(new EntityWrapper<AgvWrkMast>().eq("io_type", ioType)); + //if (count>3){ + // log.equals("111浠诲姟鍫靛锛岀◢鍚庡啀璇曪紒锛侊紒褰撳墠闄愬埗鏁伴噺3鏉★紝闄愬埗鏉′欢锛歩o_type = 111"); + // throw new CoolException("111浠诲姟鍫靛锛岀◢鍚庡啀璇曪紒"); + //} } else { moveType = "1"; ioType = 108; @@ -431,6 +492,10 @@ AgvWrkMast source_loc_no = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>().eq("source_loc_no", locNo)); if (!Cools.isEmpty(source_loc_no)) { throw new CoolException("褰撳墠搴撲綅宸茬敓鎴愪换鍔★紒"); + } + AgvLocMast locMastS = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_no", locNo).eq("loc_sts","F")); + if (Cools.isEmpty(locMastS)) { + throw new CoolException("褰撳墠搴撲綅闈炲湪搴撶姸鎬侊紒搴撲綅鍙�="+locNo); } AgvWrkMast wrkMast = createWrkMast(ioType, 22L, locNo, "", barcode, now, getUserId(), 30,floor); // 鍚屾璋冩嫧鍗� @@ -490,11 +555,32 @@ return R.ok(); } + @PostMapping("/hand/control/empOut") + @Transactional + @ManagerAuth(memo = "绌烘灦绂诲満") + @Synchronized + public R empOut(@RequestBody AgvMobileStartPakin param){ + agvMobileService.empOut(param, getUserId()); + return R.ok(); + } + + @PostMapping("/hand/control/empIn") + @Transactional + @ManagerAuth(memo = "绌烘灦杩涘満") + @Synchronized + public R empIn(@RequestBody AgvMobileStartPakin param){ + agvMobileService.empIn(param, getUserId()); + return R.ok(); + } + @PostMapping("/hand/control/doBack") @Transactional @ManagerAuth(memo = "绔欑偣鍥為��") @Synchronized public R doBack(@RequestBody AgvMobileStartPakin param){ + if (Cools.isEmpty(param)){ + return R.error("鍙傛暟涓虹┖"); + } agvMobileService.doBack(param, getUserId()); return R.ok(); } @@ -508,6 +594,15 @@ return R.ok(); } + @PostMapping("/hand/control/processed") + @Transactional + @ManagerAuth(memo = "纭鍔犲伐瀹屾垚") + @Synchronized + public R processed(@RequestBody AgvMobileStartPakin param){ + agvMobileService.processed(param, getUserId()); + return R.ok(); + } + public static void main(String[] args) { List<AgvLocDetl> agvLocDetls1 = new ArrayList<>(); List<AgvLocDetl> agvLocDetls2 = new ArrayList<>(); -- Gitblit v1.9.1