| | |
| | | |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.vincent.rsf.framework.common.Cools; |
| | | import com.vincent.rsf.framework.common.R; |
| | | import com.vincent.rsf.framework.exception.CoolException; |
| | |
| | | private OutStockService outStockService; |
| | | @Autowired |
| | | private WarehouseRoleMenuService warehouseRoleMenuService; |
| | | @Autowired |
| | | private BasContainerService basContainerService; |
| | | |
| | | /** |
| | | * @return |
| | |
| | | if (!asnOrderMapper.updateById(wkOrder)) { |
| | | throw new CoolException("已收货数量修改失败!!"); |
| | | } |
| | | Config config = configService.getOne(new LambdaQueryWrapper<Config>().eq(Config::getFlag, GlobalConfigCode.ALLOW_OVER_CHANGE)); |
| | | Config config = configService |
| | | .getOne(new LambdaQueryWrapper<Config>().eq(Config::getFlag, GlobalConfigCode.ALLOW_OVER_CHANGE)); |
| | | |
| | | List<Map<String, Object>> receipts1 = (List<Map<String, Object>>) params.get("receipts"); |
| | | for (Map<String, Object> rcpt : receipts1) { |
| | |
| | | // if (dto.getReceiptQty().compareTo(dto.getAnfme()) > 0) { |
| | | // throw new CoolException("收货数量不能大于采购数量!!"); |
| | | // } |
| | | // AsnOrderItem orderItem = asnOrderItemMapper.selectOne(new LambdaQueryWrapper<AsnOrderItem>() |
| | | // AsnOrderItem orderItem = asnOrderItemMapper.selectOne(new |
| | | // LambdaQueryWrapper<AsnOrderItem>() |
| | | // .eq(AsnOrderItem::getAsnCode, asnCode) |
| | | // .eq(AsnOrderItem::getId, dto.getId()) |
| | | // .eq(AsnOrderItem::getTrackCode, dto.getBarcode()) |
| | | // .eq(AsnOrderItem::getSplrBatch, dto.getSplrBatch())); |
| | | |
| | | WkOrderItem orderItem = asnOrderItemMapper.selectOne(new LambdaQueryWrapper<WkOrderItem>().eq(WkOrderItem::getId, dto.getId())); |
| | | //asnOrderItemMapper.resultById(new LambdaQueryWrapper<AsnOrderItem>().eq(AsnOrderItem::getId, dto.getId())); |
| | | WkOrderItem orderItem = asnOrderItemMapper |
| | | .selectOne(new LambdaQueryWrapper<WkOrderItem>().eq(WkOrderItem::getId, dto.getId())); |
| | | // asnOrderItemMapper.resultById(new |
| | | // LambdaQueryWrapper<AsnOrderItem>().eq(AsnOrderItem::getId, dto.getId())); |
| | | |
| | | if (Objects.isNull(orderItem)) { |
| | | throw new CoolException("通知单明细不存在!!"); |
| | |
| | | |
| | | // if (!Objects.isNull(rcpt)) { |
| | | // try { |
| | | // if (Objects.isNull(rcpt.get("fieldsindex")) || StringUtils.isBlank(rcpt.get("fieldsindex").toString())) { |
| | | // if (Objects.isNull(rcpt.get("fieldsindex")) || |
| | | // StringUtils.isBlank(rcpt.get("fieldsindex").toString())) { |
| | | // StringBuffer sb = new StringBuffer(); |
| | | // if (!dto.getExtendFields().isEmpty()) { |
| | | // dto.getExtendFields().forEach(field -> { |
| | |
| | | // }); |
| | | // }); |
| | | // } |
| | | // sb.append(dto.getAsnCode() + dto.getMatnr() + dto.getSplrBatch() + orderItem.getIsptResult$()); |
| | | // sb.append(dto.getAsnCode() + dto.getMatnr() + dto.getSplrBatch() + |
| | | // orderItem.getIsptResult$()); |
| | | // //获取16位uuid |
| | | // String uuid16 = Cools.md5Chinese(sb.toString()); |
| | | // rcpt.put("index", uuid16); |
| | |
| | | return R.ok("收货成功!!"); |
| | | } |
| | | |
| | | private void extracted(Long loginUserId, ReceiptDetlsDto dto, WarehouseAreas areasItem, WkOrderItem orderItem, WkOrder wkOrder, Matnr matnr) { |
| | | private void extracted(Long loginUserId, ReceiptDetlsDto dto, WarehouseAreas areasItem, WkOrderItem orderItem, |
| | | WkOrder wkOrder, Matnr matnr) { |
| | | |
| | | Companys companys = new Companys(); |
| | | if (StringUtils.isNoneBlank(orderItem.getSplrCode())) { |
| | | companys = companysService.getOne(new LambdaQueryWrapper<Companys>().eq(Companys::getCode, orderItem.getSplrCode())); |
| | | companys = companysService |
| | | .getOne(new LambdaQueryWrapper<Companys>().eq(Companys::getCode, orderItem.getSplrCode())); |
| | | } |
| | | |
| | | WarehouseAreasItem item = new WarehouseAreasItem(); |
| | |
| | | //库存单位为最小单位 |
| | | .setUnit(orderItem.getStockUnit()) |
| | | .setStockUnit(orderItem.getStockUnit()) |
| | | .setBatch(StringUtils.isBlank(orderItem.getBatch()) ? SerialRuleUtils.generateRuleCode(SerialRuleCode.SYS_RECEIPT_BATCH, dto) : orderItem.getBatch()) |
| | | .setBatch(StringUtils.isBlank(orderItem.getBatch()) |
| | | ? SerialRuleUtils.generateRuleCode(SerialRuleCode.SYS_RECEIPT_BATCH, dto) |
| | | : orderItem.getBatch()) |
| | | .setAnfme(dto.getReceiptQty()) |
| | | .setSplrBatch(dto.getSplrBatch()) |
| | | .setMatnrCode(matnr.getCode()) |
| | |
| | | // } |
| | | // } |
| | | |
| | | |
| | | } |
| | | |
| | | /** |
| | |
| | | throw new CoolException("通知单不能为空!!"); |
| | | } |
| | | |
| | | List<Short> shorts = Arrays.asList(AsnExceStatus.ASN_EXCE_STATUS_TASK_CANCEL.val, AsnExceStatus.ASN_EXCE_STATUS_TASK_CLOSE |
| | | .val, AsnExceStatus.ASN_EXCE_STATUS_TASK_DONE.val); |
| | | List<Short> shorts = Arrays.asList(AsnExceStatus.ASN_EXCE_STATUS_TASK_CANCEL.val, |
| | | AsnExceStatus.ASN_EXCE_STATUS_TASK_CLOSE.val, AsnExceStatus.ASN_EXCE_STATUS_TASK_DONE.val); |
| | | WkOrder order = asnOrderMapper.getOne(new LambdaQueryWrapper<WkOrder>() |
| | | .notIn(WkOrder::getExceStatus, shorts) |
| | | .eq(WkOrder::getCode, params.getAsnCode())); |
| | |
| | | List<WkOrderItem> wkOrderItem = asnOrderItemMapper.selectList(new LambdaQueryWrapper<WkOrderItem>() |
| | | .eq(WkOrderItem::getOrderCode, params.getAsnCode()) |
| | | .eq(!Objects.isNull(params.getTrackCode()), WkOrderItem::getTrackCode, params.getTrackCode()) |
| | | .eq(!Cools.isEmpty(params.getMatnrCode()), WkOrderItem::getMatnrCode, params.getMatnrCode()) |
| | | ); |
| | | .eq(!Cools.isEmpty(params.getMatnrCode()), WkOrderItem::getMatnrCode, params.getMatnrCode())); |
| | | |
| | | if (Objects.isNull(wkOrderItem)) { |
| | | throw new CoolException("单据明细不存在!!"); |
| | |
| | | */ |
| | | @Override |
| | | public List<WkOrder> getAllAsnOrders() { |
| | | List<WkOrder> wkOrders = asnOrderMapper.list(new LambdaQueryWrapper<WkOrder>().eq(WkOrder::getWkType, OrderWorkType.ORDER_WORK_TYPE_PURCHASE.type)); |
| | | List<WkOrder> wkOrders = asnOrderMapper.list( |
| | | new LambdaQueryWrapper<WkOrder>().eq(WkOrder::getWkType, OrderWorkType.ORDER_WORK_TYPE_PURCHASE.type)); |
| | | return wkOrders; |
| | | } |
| | | |
| | |
| | | @Override |
| | | public R getReceiptAreas(User user) { |
| | | Long[] userRoleIds = user.getUserRoleIds(); |
| | | List<WarehouseRoleMenu> warehouseRoleMenus = warehouseRoleMenuService.list(new LambdaQueryWrapper<WarehouseRoleMenu>() |
| | | .in(WarehouseRoleMenu::getRoleId, Arrays.asList(userRoleIds)) |
| | | ); |
| | | List<WarehouseRoleMenu> warehouseRoleMenus = warehouseRoleMenuService |
| | | .list(new LambdaQueryWrapper<WarehouseRoleMenu>() |
| | | .in(WarehouseRoleMenu::getRoleId, Arrays.asList(userRoleIds))); |
| | | Set<WarehouseRoleMenu> warehouseRoleMenusSet = new HashSet<>(warehouseRoleMenus); |
| | | List<Long> longs = warehouseRoleMenusSet.stream().map(WarehouseRoleMenu::getMenuId).collect(Collectors.toList()); |
| | | List<Long> longs = warehouseRoleMenusSet.stream().map(WarehouseRoleMenu::getMenuId) |
| | | .collect(Collectors.toList()); |
| | | List<WarehouseAreas> areas = warehouseAreasService.list(new LambdaQueryWrapper<WarehouseAreas>() |
| | | .eq(WarehouseAreas::getType, WarehouseAreaType.WAREHOUSE_AREA_RECEIPT.type) |
| | | .in(WarehouseAreas::getId, longs) |
| | | ); |
| | | .in(WarehouseAreas::getId, longs)); |
| | | return R.ok(areas); |
| | | } |
| | | |
| | |
| | | @Override |
| | | public R getAreasUserAll(User user) { |
| | | Long[] userRoleIds = user.getUserRoleIds(); |
| | | List<WarehouseRoleMenu> warehouseRoleMenus = warehouseRoleMenuService.list(new LambdaQueryWrapper<WarehouseRoleMenu>() |
| | | .in(WarehouseRoleMenu::getRoleId, Arrays.asList(userRoleIds)) |
| | | ); |
| | | List<WarehouseRoleMenu> warehouseRoleMenus = warehouseRoleMenuService |
| | | .list(new LambdaQueryWrapper<WarehouseRoleMenu>() |
| | | .in(WarehouseRoleMenu::getRoleId, Arrays.asList(userRoleIds))); |
| | | Set<WarehouseRoleMenu> warehouseRoleMenusSet = new HashSet<>(warehouseRoleMenus); |
| | | List<Long> longs = warehouseRoleMenusSet.stream().map(WarehouseRoleMenu::getMenuId).collect(Collectors.toList()); |
| | | List<Long> longs = warehouseRoleMenusSet.stream().map(WarehouseRoleMenu::getMenuId) |
| | | .collect(Collectors.toList()); |
| | | List<WarehouseAreas> areas = warehouseAreasService.list(new LambdaQueryWrapper<WarehouseAreas>() |
| | | .eq(WarehouseAreas::getType, WarehouseAreaType.WAREHOUSE_AREA_COLLECTION.type) |
| | | .in(WarehouseAreas::getId, longs) |
| | | ); |
| | | .in(WarehouseAreas::getId, longs)); |
| | | return R.ok(areas); |
| | | } |
| | | |
| | |
| | | * @param |
| | | * @return |
| | | * @author Ryan |
| | | * @description 获取组盘明细 |
| | | * @description 获取组盘明细(支持分页加载更多) |
| | | * @time 2025/4/7 16:58 |
| | | */ |
| | | @Override |
| | |
| | | .or().eq(!Cools.isEmpty(code), WarehouseAreasItem::getTrackCode, code) |
| | | .or().eq(!Cools.isEmpty(batch), WarehouseAreasItem::getSplrBatch, batch) |
| | | .or().eq(!Cools.isEmpty(matnrCode), WarehouseAreasItem::getMatnrCode, matnrCode) |
| | | .or().eq(!Cools.isEmpty(asnCode), WarehouseAreasItem::getAsnCode, asnCode); |
| | | List<WarehouseAreasItem> list = warehouseAreasItemService.list(queryWrapper); |
| | | list.removeIf(e -> e.getAnfme() <= e.getWorkQty()); |
| | | return R.ok(list); |
| | | .or().eq(!Cools.isEmpty(asnCode), WarehouseAreasItem::getAsnCode, asnCode) |
| | | .apply("anfme > work_qty") |
| | | ; |
| | | |
| | | long pageNum = 1; |
| | | long pageSize = 10; |
| | | if (!Cools.isEmpty(params.get("pageNum"))) { |
| | | pageNum = Long.parseLong(params.get("pageNum").toString()); |
| | | } |
| | | if (!Cools.isEmpty(params.get("pageSize"))) { |
| | | pageSize = Long.parseLong(params.get("pageSize").toString()); |
| | | } |
| | | // 使用 MyBatis-Plus Page 分页 |
| | | Page<WarehouseAreasItem> page = new Page<>(pageNum, pageSize); |
| | | Page<WarehouseAreasItem> resultPage = warehouseAreasItemService.page(page, queryWrapper); |
| | | // List<WarehouseAreasItem> list = warehouseAreasItemService.list(queryWrapper); |
| | | // list.removeIf(e -> e.getAnfme() <= e.getWorkQty()); |
| | | return R.ok(resultPage); |
| | | } |
| | | |
| | | /** |
| | |
| | | } |
| | | InspectDetlDto detlDto = new InspectDetlDto(); |
| | | detlDto.setCode(wkOrders.getCode()).setId(wkOrders.getId()).setPoCode(wkOrders.getPoCode()); |
| | | List<WkOrderItem> orderItems = asnOrderItemMapper.selectList(new LambdaQueryWrapper<WkOrderItem>().eq(WkOrderItem::getOrderCode, code)); |
| | | List<WkOrderItem> orderItems = asnOrderItemMapper |
| | | .selectList(new LambdaQueryWrapper<WkOrderItem>().eq(WkOrderItem::getOrderCode, code)); |
| | | if (orderItems.isEmpty()) { |
| | | detlDto.setItems(new ArrayList<>()); |
| | | } else { |
| | |
| | | orderItems.forEach(dto -> { |
| | | InspectItemDto itemDto = new InspectItemDto(); |
| | | if (!Objects.isNull(dto.getMatnrCode())) { |
| | | Matnr matnr = matnrMapper.selectOne(new LambdaQueryWrapper<Matnr>().eq(Matnr::getCode, dto.getMatnrCode())); |
| | | Matnr matnr = matnrMapper |
| | | .selectOne(new LambdaQueryWrapper<Matnr>().eq(Matnr::getCode, dto.getMatnrCode())); |
| | | itemDto.setGroup(matnr.getGroupCode()); |
| | | } |
| | | itemDto.setMaktx(dto.getMaktx()) |
| | |
| | | detlDto.setItems(itemDtos); |
| | | } |
| | | |
| | | List<IsptHistories> histories = isptHistoriesMapper.selectList(new LambdaQueryWrapper<IsptHistories>().eq(IsptHistories::getAsnId, wkOrders.getId())); |
| | | List<IsptHistories> histories = isptHistoriesMapper |
| | | .selectList(new LambdaQueryWrapper<IsptHistories>().eq(IsptHistories::getAsnId, wkOrders.getId())); |
| | | detlDto.setHistories(histories); |
| | | return R.ok(detlDto); |
| | | } |
| | |
| | | throw new CoolException("质检单据不存在!!"); |
| | | } |
| | | List<QlyIsptItem> isptItems = qlyIsptItemService.list(new LambdaQueryWrapper<QlyIsptItem>() |
| | | .eq(StringUtils.isNotBlank(params.getMatnrCode()), QlyIsptItem::getMatnrCode, StringUtils.isNotBlank(params.getMatnrCode()) ? params.getMatnrCode() : null) |
| | | .eq(StringUtils.isNotBlank(params.getMatnrCode()), QlyIsptItem::getMatnrCode, |
| | | StringUtils.isNotBlank(params.getMatnrCode()) ? params.getMatnrCode() : null) |
| | | .eq(QlyIsptItem::getIspectId, inspect.getId())); |
| | | if (Objects.isNull(isptItems)) { |
| | | throw new CoolException("质检单明细不存在!!"); |
| | |
| | | } |
| | | WaitPakin waitPakin = waitPakinService.getOne(new LambdaQueryWrapper<WaitPakin>() |
| | | .eq(WaitPakin::getBarcode, params.getBarcode()) |
| | | .eq(WaitPakin::getIoStatus, PakinIOStatus.PAKIN_IO_STATUS_DONE.val) |
| | | ); |
| | | .eq(WaitPakin::getIoStatus, PakinIOStatus.PAKIN_IO_STATUS_DONE.val)); |
| | | if (Cools.isEmpty(waitPakin)) { |
| | | throw new CoolException("未找到组托数据,请检查状态"); |
| | | } |
| | | List<WaitPakinItem> waitPakinItems = waitPakinItemService.list(new LambdaQueryWrapper<WaitPakinItem>().eq(WaitPakinItem::getPakinId, waitPakin.getId())); |
| | | List<WaitPakinItem> waitPakinItems = waitPakinItemService |
| | | .list(new LambdaQueryWrapper<WaitPakinItem>().eq(WaitPakinItem::getPakinId, waitPakin.getId())); |
| | | if (Cools.isEmpty(waitPakinItems)) { |
| | | throw new CoolException("数据错误,未找到组托明细"); |
| | | } |
| | | |
| | | |
| | | return R.ok(waitPakinItems); |
| | | } |
| | |
| | | throw new CoolException("非平库单据不可执行人工上架!!"); |
| | | } |
| | | Stock stock = new Stock(); |
| | | // if (!Objects.isNull(order.getPoCode()) && StringUtils.isNotBlank(order.getPoCode())) { |
| | | // Purchase purchase = purchaseService.getOne(new LambdaQueryWrapper<Purchase>().eq(Purchase::getCode, order.getPoCode())); |
| | | // if (!Objects.isNull(order.getPoCode()) && |
| | | // StringUtils.isNotBlank(order.getPoCode())) { |
| | | // Purchase purchase = purchaseService.getOne(new |
| | | // LambdaQueryWrapper<Purchase>().eq(Purchase::getCode, order.getPoCode())); |
| | | // if (!Objects.isNull(purchase)) { |
| | | // stock.setPlatOrderNo(purchase.getPlatCode()).setPlatToken(purchase.getPlatId()); |
| | | // } |
| | |
| | | if (Objects.isNull(task)) { |
| | | throw new CoolException("拖盘任务不存在!!"); |
| | | } |
| | | List<TaskItem> taskItems = taskItemService.list(new LambdaQueryWrapper<TaskItem>().eq(TaskItem::getTaskId, task.getId())); |
| | | List<TaskItem> taskItems = taskItemService |
| | | .list(new LambdaQueryWrapper<TaskItem>().eq(TaskItem::getTaskId, task.getId())); |
| | | if (taskItems.isEmpty()) { |
| | | throw new CoolException("拖盘任务明细不存在!!"); |
| | | } |
| | | TaskQueueDto queueDto = new TaskQueueDto(); |
| | | queueDto.setTask(task).setTaskItems(taskItems); |
| | | List<Long> list = taskItems.stream().map(TaskItem::getMatnrId).collect(Collectors.toList()); |
| | | List<LocAreaMatRela> matRelas = locAreaMatRelaMapper.selectList(new LambdaQueryWrapper<LocAreaMatRela>().in(LocAreaMatRela::getMatnrId, |
| | | List<LocAreaMatRela> matRelas = locAreaMatRelaMapper |
| | | .selectList(new LambdaQueryWrapper<LocAreaMatRela>().in(LocAreaMatRela::getMatnrId, |
| | | list)); |
| | | TaskLocAreaDto locAreaDto = new TaskLocAreaDto(); |
| | | /**判断是否为空*/ |
| | | if (matRelas.isEmpty()) { |
| | | locAreaDto.setLocs(new ArrayList<>()); |
| | | } else { |
| | | Long ids = matRelas.stream().map(LocAreaMatRela::getLocId).collect(Collectors.toList()).stream().findFirst().get(); |
| | | Long ids = matRelas.stream().map(LocAreaMatRela::getLocId).collect(Collectors.toList()).stream().findFirst() |
| | | .get(); |
| | | List<Loc> locs = locService.list(new LambdaQueryWrapper<Loc>().eq(Loc::getId, ids)); |
| | | if (locs.isEmpty()) { |
| | | locAreaDto.setLocs(new ArrayList<>()); |
| | |
| | | if (Objects.isNull(task)) { |
| | | throw new CoolException("拖盘任务不存在!!"); |
| | | } |
| | | List<TaskItem> taskItems = taskItemService.list(new LambdaQueryWrapper<TaskItem>().eq(TaskItem::getTaskId, task.getId())); |
| | | List<TaskItem> taskItems = taskItemService |
| | | .list(new LambdaQueryWrapper<TaskItem>().eq(TaskItem::getTaskId, task.getId())); |
| | | if (!taskItems.isEmpty()) { |
| | | throw new CoolException("拖盘任务明细不存在!!"); |
| | | } |
| | |
| | | |
| | | /** |
| | | * @param |
| | | * @param user |
| | | * @return |
| | | * @author Ryan |
| | | * @description 通过容器获取组拖物料 |
| | | * @time 2025/4/9 16:57 |
| | | */ |
| | | @Override |
| | | public R getItemByContainer(Map<String, Object> params) { |
| | | public R getItemByContainer(Map<String, Object> params, User user) { |
| | | // if (Objects.isNull(params.get("code"))) { |
| | | // throw new CoolException("参数不能为空!!"); |
| | | // } |
| | |
| | | if (!Cools.isEmpty(waitPakin)) { |
| | | throw new CoolException("托盘不可用,在组托中已存在"); |
| | | } |
| | | List<Loc> locs = locService.list(new LambdaQueryWrapper<Loc>().eq(Loc::getBarcode, params.get("barcode").toString())); |
| | | List<Loc> locs = locService |
| | | .list(new LambdaQueryWrapper<Loc>().eq(Loc::getBarcode, params.get("barcode").toString())); |
| | | if (!Cools.isEmpty(locs)) { |
| | | throw new CoolException("托盘不可用,在库位中已存在"); |
| | | } |
| | | return R.ok("托盘可用"); |
| | | List<BasContainer> containers = basContainerService.list(); |
| | | for (BasContainer container : containers) { |
| | | String codeType = container.getCodeType(); // 获取正则表达式 |
| | | if (params.get("barcode").toString().matches(codeType)) { // 判断条码是否符合这个正则 |
| | | List<WarehouseRoleMenu> warehouseRoleMenus = warehouseRoleMenuService |
| | | .list(new LambdaQueryWrapper<WarehouseRoleMenu>() |
| | | .in(WarehouseRoleMenu::getRoleId, Arrays.asList(user.getUserRoleIds()))); |
| | | Set<WarehouseRoleMenu> warehouseRoleMenusSet = new HashSet<>(warehouseRoleMenus); |
| | | // 获取 menuId 集合 |
| | | Set<Long> menuIdSet = warehouseRoleMenusSet.stream() |
| | | .map(WarehouseRoleMenu::getMenuId) |
| | | .collect(Collectors.toSet()); |
| | | // 获取 areaList 并转换为 Long 类型的 Set |
| | | List<Integer> areaList = container.getAreas(); |
| | | Set<Long> areaSet = new HashSet<>(); |
| | | if (areaList != null) { |
| | | areaList.forEach(area -> areaSet.add(area.longValue())); |
| | | } |
| | | // 求两个集合的交集 |
| | | menuIdSet.retainAll(areaSet); |
| | | |
| | | List<WarehouseAreas> areas = warehouseAreasService.list(new LambdaQueryWrapper<WarehouseAreas>() |
| | | .in(WarehouseAreas::getId, menuIdSet)); |
| | | return R.ok(areas); |
| | | |
| | | } |
| | | } |
| | | return R.ok(new ArrayList<>()); |
| | | } |
| | | |
| | | /** |
| | |
| | | throw new CoolException("容器号与组托档编码不能全为空"); |
| | | } |
| | | //获取组拖未生成任务的组拖档 |
| | | // List<Short> asList = Arrays.asList(Short.valueOf(PakinIOStatus.PAKIN_IO_STATUS_DONE.val), Short.valueOf(PakinIOStatus.PAKIN_IO_STATUS_DONE.val)); |
| | | // List<Short> asList = |
| | | // Arrays.asList(Short.valueOf(PakinIOStatus.PAKIN_IO_STATUS_DONE.val), |
| | | // Short.valueOf(PakinIOStatus.PAKIN_IO_STATUS_DONE.val)); |
| | | |
| | | WaitPakin waitPakin = waitPakinService.getOne(new LambdaQueryWrapper<WaitPakin>() |
| | | .eq(!Cools.isEmpty(params.get("barcode")), WaitPakin::getBarcode, params.get("barcode")) |
| | |
| | | // if (pakinItems.isEmpty()) { |
| | | // return R.ok(new ArrayList<>()); |
| | | // } |
| | | // List<Long> list = pakinItems.stream().map(WaitPakinItem::getSource).collect(Collectors.toList()); |
| | | // LambdaQueryWrapper<WarehouseAreasItem> queryWrapper = new LambdaQueryWrapper<WarehouseAreasItem>().in(WarehouseAreasItem::getId, list); |
| | | // List<WarehouseAreasItem> warehouseAreasItems = warehouseAreasItemService.list(queryWrapper); |
| | | // List<Long> list = |
| | | // pakinItems.stream().map(WaitPakinItem::getSource).collect(Collectors.toList()); |
| | | // LambdaQueryWrapper<WarehouseAreasItem> queryWrapper = new |
| | | // LambdaQueryWrapper<WarehouseAreasItem>().in(WarehouseAreasItem::getId, list); |
| | | // List<WarehouseAreasItem> warehouseAreasItems = |
| | | // warehouseAreasItemService.list(queryWrapper); |
| | | // for (int i = 0; i < warehouseAreasItems.size(); i++) { |
| | | // for (WaitPakinItem pakinItem : pakinItems) { |
| | | // if (warehouseAreasItems.get(i).getId().equals(pakinItem.getSource())) { |
| | |
| | | return R.ok(pakinItems); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * @param |
| | | * @return |
| | |
| | | */ |
| | | @Override |
| | | public R defectProducts(String trackCode) { |
| | | WkOrderItem orderItem = asnOrderItemMapper.selectOne(new LambdaQueryWrapper<WkOrderItem>().eq(WkOrderItem::getTrackCode, trackCode)); |
| | | WkOrderItem orderItem = asnOrderItemMapper |
| | | .selectOne(new LambdaQueryWrapper<WkOrderItem>().eq(WkOrderItem::getTrackCode, trackCode)); |
| | | return R.ok(orderItem); |
| | | } |
| | | |
| | |
| | | */ |
| | | @Override |
| | | public R getPakinInStock(String barcode) { |
| | | WaitPakin waitPakin = waitPakinService.getOne(new LambdaQueryWrapper<WaitPakin>().eq(WaitPakin::getBarcode, barcode)); |
| | | WaitPakin waitPakin = waitPakinService |
| | | .getOne(new LambdaQueryWrapper<WaitPakin>().eq(WaitPakin::getBarcode, barcode)); |
| | | if (Objects.isNull(waitPakin)) { |
| | | throw new CoolException("组拖单据不存在!!"); |
| | | } |
| | | List<WaitPakinItem> pakinItems = waitPakinItemService.list(new LambdaQueryWrapper<WaitPakinItem>().eq(WaitPakinItem::getPakinId, waitPakin.getId())); |
| | | List<WaitPakinItem> pakinItems = waitPakinItemService |
| | | .list(new LambdaQueryWrapper<WaitPakinItem>().eq(WaitPakinItem::getPakinId, waitPakin.getId())); |
| | | if (pakinItems.isEmpty()) { |
| | | return R.ok(new ArrayList<>()); |
| | | } |
| | |
| | | @Override |
| | | public synchronized R generateTask(Map<String, Object> map, Long loginUserId) { |
| | | String barcode = map.get("barcode").toString(); |
| | | List<WaitPakin> waitPakins = waitPakinService.list(new LambdaQueryWrapper<WaitPakin>().eq(WaitPakin::getBarcode, barcode)); |
| | | List<WaitPakin> waitPakins = waitPakinService |
| | | .list(new LambdaQueryWrapper<WaitPakin>().eq(WaitPakin::getBarcode, barcode)); |
| | | if (waitPakins.isEmpty()) { |
| | | throw new CoolException("单据不存在 !!"); |
| | | } |
| | |
| | | //SET 物料最大存放数量 |
| | | detlsDto.setMaxQty(matnr.getMaxQty()) |
| | | .setMatnrId(matnr.getId()); |
| | | // QlyInspect inspect = qlyInspectMapper.selectOne(new LambdaQueryWrapper<QlyInspect>() |
| | | // QlyInspect inspect = qlyInspectMapper.selectOne(new |
| | | // LambdaQueryWrapper<QlyInspect>() |
| | | // .eq(QlyInspect::getAsnId, asnOrderItem.getAsnId())); |
| | | // if (!Objects.isNull(inspect)) { |
| | | // //set 质检结果 |
| | |
| | | |
| | | if (!Objects.isNull(asnOrderItem.getPoDetlId())) { |
| | | //获取采购单明细信息 |
| | | PurchaseItem purchaseItem = purchaseItemMapper.selectOne(new LambdaQueryWrapper<PurchaseItem>().eq(PurchaseItem::getId, asnOrderItem.getPoDetlId())); |
| | | PurchaseItem purchaseItem = purchaseItemMapper.selectOne( |
| | | new LambdaQueryWrapper<PurchaseItem>().eq(PurchaseItem::getId, asnOrderItem.getPoDetlId())); |
| | | if (Objects.isNull(purchaseItem)) { |
| | | //SET 平台行号 |
| | | detlsDto.setPlatformId(purchaseItem.getPlatItemId()); |
| | |
| | | |
| | | return R.ok(detlsDtos); |
| | | } |
| | | |
| | | |
| | | } |