| | |
| | | // .eq("matnr", record.getMatnr()) |
| | | // .in("source", docIds)); |
| | | // } else { |
| | | OrderDetl orderDetl = orderDetlService.selectOne(new EntityWrapper<OrderDetl>() |
| | | List<OrderDetl> orderDetls = orderDetlService.selectList(new EntityWrapper<OrderDetl>() |
| | | .eq("three_code", record.getThreeCode()) |
| | | .eq("matnr", record.getMatnr()) |
| | | .in("source", docIds) |
| | | .orderBy("qty", false) |
| | | .orderBy("qty", true) |
| | | .orderBy("anfme", false) |
| | | .orderBy("create_time", true)); |
| | | OrderDetl orderDetl = null; |
| | | if (!orderDetls.isEmpty()) { |
| | | for (OrderDetl o : orderDetls) { |
| | | if (o.getAnfme() - o.getQty() > 0) { |
| | | orderDetl = o; |
| | | break; |
| | | } |
| | | } |
| | | } |
| | | |
| | | // } |
| | | // if (orderDetl.getAnfme() - orderDetl.getQty() > 0) { |
| | | // record.setStock(orderDetl.getAnfme() - orderDetl.getQty()); |
| | |
| | | } |
| | | } else { |
| | | if (station.endsWith("F4") && locType == 3) { |
| | | agvLocMast = agvCommonService.getLocNo(locType, 1, false, false); |
| | | agvLocMast = agvCommonService.getLocNoOnXiSuer(locType, 1); |
| | | } else { |
| | | List<AgvWrkMast> agvWrkMasts = agvWrkMastService.selectList(new EntityWrapper<AgvWrkMast>().like("loc_no", "02F1").like("source_loc_no", "F1")); |
| | | if (Integer.parseInt(config.getValue()) <= agvWrkMasts.size()) { |
| | |
| | | |
| | | |
| | | for (AgvLocMast agvLocMast : agvLocMasts) { |
| | | if (agvLocMast.getLocNo().contains("F4")) { |
| | | if (agvLocMast.getLocNo().contains("02F1")) { |
| | | Config config = configService.selectOne(new EntityWrapper<Config>().eq("code", "RETURN_3_TIME")); |
| | | boolean flag = false; |
| | | if (config != null && !Cools.isEmpty(config.getValue())) { |
| | |
| | | throw new CoolException("搜索库位时,楼层出错。"); |
| | | } |
| | | |
| | | public AgvLocMast getLocNoOnXiSuer(int type, int floor) { |
| | | EntityWrapper<AgvLocMast> wrapper = new EntityWrapper<>(); |
| | | wrapper.eq("loc_sts", "O").eq("loc_type1", type); |
| | | wrapper.eq("floor", floor).orderBy("lev1", false); |
| | | List<AgvLocMast> agvLocMasts = agvLocMastService.selectList(wrapper); |
| | | if (Cools.isEmpty(agvLocMasts)) { |
| | | return null; |
| | | } else { |
| | | for (AgvLocMast agvLocMast : agvLocMasts) { |
| | | AgvLocMast agvLocMast1 = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_no", agvLocMast.getLocNo())); |
| | | if (agvLocMast1.getLocSts().equals("O")) { |
| | | return agvLocMast1; |
| | | } |
| | | } |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | |
| | | //随机取一个货位 |
| | | private AgvLocMast getLocNoRule(int type, int floor, boolean isEmpty, boolean isCurrLev) { |