| | |
| | | public R inLocCallAgv(String sta, String inSta) { |
| | | |
| | | BasDevp basDevp = basDevpMapper.selectById(inSta); |
| | | // 0.出库模式,1.agv入库中,2.生成入库任务 |
| | | if (basDevp.getDevMk().equals("0")) { // 是出库 |
| | | // 判断是否有出库任务 |
| | | Wrapper<WrkMast> wrapper = new EntityWrapper<WrkMast>().lt("wrk_sts", 14).in("io_type", 101, 103, 107, 110); |
| | | switch (inSta) { |
| | | case "1040": wrapper.in("source_sta_no","1043","1044");break; |
| | | case "2010": wrapper.in("source_sta_no","2013","2014"); break; |
| | | case "2000": wrapper.in("source_sta_no","2003","2004");break; |
| | | case "3010": wrapper.in("source_sta_no","3013","3014");break; |
| | | default: |
| | | } |
| | | int count = wrkMastService.selectCount(wrapper); |
| | | if (count == 0) { |
| | | // 没有出库任务,更改为入库模式 |
| | | basDevp.setDevMk("1"); |
| | | basDevpMapper.updateById(basDevp); |
| | | } else { |
| | | return R.parse(inSta + "站点存在出库任务"); |
| | | } |
| | | |
| | | // 判断是否有出库任务 |
| | | Wrapper<WrkMast> wrapper = new EntityWrapper<WrkMast>().lt("wrk_sts", 14).in("io_type", 101, 103, 107, 110); |
| | | |
| | | switch (inSta) { |
| | | case "1040": |
| | | wrapper.in("source_sta_no", "1043", "1044"); |
| | | break; |
| | | case "2010": |
| | | wrapper.in("source_sta_no", "2013", "2014"); |
| | | break; |
| | | case "2000": |
| | | wrapper.in("source_sta_no", "2003", "2004"); |
| | | break; |
| | | case "3010": |
| | | wrapper.in("source_sta_no", "3013", "3014"); |
| | | break; |
| | | default: |
| | | } |
| | | int count = wrkMastService.selectCount(wrapper); |
| | | log.info("入库呼叫agv呼叫站点:{},目标站点:{},出库任务数:{}",sta,inSta,count); |
| | | if (count != 0) { |
| | | return R.parse(inSta + "站点存在出库任务"); |
| | | } |
| | | |
| | | // 先绑定 |
| | |
| | | .build() |
| | | .doPost(); |
| | | JSONObject jsonObject = JSON.parseObject(response); |
| | | jsonObject.getString("message"); |
| | | if (jsonObject.getInteger("code").equals(0)) { |
| | | success = true; |
| | | // 入库暂存+1 |
| | | basDevp.setInQty(basDevp.getInQty() + 1); |
| | | basDevpMapper.updateById(basDevp); |
| | | } else { |
| | | message = jsonObject.getString("message"); |
| | | log.error("入库呼叫agv失败!!!url:{};request:{};response:{}", ApiInterfaceConstant.AGV_IP + ApiInterfaceConstant.AGV_CALL_IN_PATH, body, response); |
| | | } |
| | | } catch (Exception e) { |
| | |
| | | Date now = new Date(); |
| | | for(OrderDetl orderDetl : orderDetls){ |
| | | //查询所有库位状态为F的库位信息 |
| | | List<LocDetl> locDetls = locDetlService.queryStock(orderDetl.getMatnr(),orderDetl.getBatch(),null,null,null); |
| | | List<LocDetl> locDetls = locDetlService.queryStock(orderDetl.getMatnr(),orderDetl.getBatch(),null,null,orderDetl.getSupp(),orderDetl.getTemp1(),orderDetl.getTemp2()); |
| | | if (locDetls.size() == 0) { |
| | | throw new CoolException("库存中没有该物料"); |
| | | } |