| | |
| | | @PostMapping("/out/pakout/auth") |
| | | @ManagerAuth(memo = "订单出库") |
| | | @Transactional |
| | | public synchronized R pakout(@RequestBody List<LocDto> locDtos) throws InterruptedException { |
| | | public synchronized R pakout(@RequestBody List<LocDto> locDtos) throws Exception { |
| | | log.info("订单出库:{}", locDtos); |
| | | //判断是否可以生成出库工作档 |
| | | boolean lack = true; |
| | |
| | | Thread.sleep(500L); |
| | | |
| | | try { |
| | | boolean debugd = false; |
| | | if(debugd){ |
| | | throw new RuntimeException("debug rollback"); |
| | | } |
| | | // 订单预校验 ===>> 1.订单状态; 2.订单带出数量 |
| | | List<OrderDto> orderDtos = orderPreVerification(locDtos); |
| | | |
| | | List<TaskDto> taskDtos = new ArrayList<>(); |
| | | List<TaskDto> agvTaskDtos = new ArrayList<>(); |
| | | generateTaskDto(locDtos, taskDtos, agvTaskDtos); |
| | |
| | | workService.stockOut(staNo, taskDto, getUserId()); |
| | | } |
| | | return R.ok(); |
| | | } catch (CoolException e) { |
| | | throw e; |
| | | } catch (Exception e) { |
| | | log.error("订单出库异常", e); |
| | | String msg = e.getMessage(); |
| | | throw new CoolException("订单出库失败" + (Cools.isEmpty(msg) ? "" : ":" + msg)); |
| | | throw e; |
| | | } |
| | | } |
| | | |