|  |  |  | 
|---|
|  |  |  | throw new CoolException("波次不能为空"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //获取出库订单 | 
|---|
|  |  |  | List<Long> orderIds = new ArrayList<>(); | 
|---|
|  |  |  | List<Order> orders = orderService.list(new LambdaQueryWrapper<Order>().eq(Order::getWaveId, waveId)); | 
|---|
|  |  |  | for (Order order : orders) { | 
|---|
|  |  |  | orderIds.add(order.getId()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //获取订单波次明细 | 
|---|
|  |  |  | List<MergePreviewDto> dtos = new ArrayList<>(); | 
|---|
|  |  |  | List<WaveDetl> waveDetls = waveDetlService.list(new LambdaQueryWrapper<WaveDetl>().eq(WaveDetl::getWaveId, waveId)); | 
|---|
|  |  |  | for (WaveDetl waveDetl : waveDetls) { | 
|---|
|  |  |  | MergePreviewDto dto = new MergePreviewDto(); | 
|---|
|  |  |  | dtos.add(dto); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | double anfme = waveDetl.getAnfme() - waveDetl.getWorkQty(); | 
|---|
|  |  |  | double anfme = Math.round((waveDetl.getAnfme() - waveDetl.getWorkQty()) * 1000) / 1000.0; | 
|---|
|  |  |  | dto.setMatnr(waveDetl.getMatnr()); | 
|---|
|  |  |  | dto.setBatch(waveDetl.getBatch()); | 
|---|
|  |  |  | dto.setStatus(0); | 
|---|
|  |  |  | dto.setWorkQty(0.0); | 
|---|
|  |  |  | dto.setAnfme(anfme); | 
|---|
|  |  |  | dto.setOrderIds(orderIds); | 
|---|
|  |  |  | dto.setFieldParams(JSON.parseArray(waveDetl.getFieldParams(), FieldParam.class)); | 
|---|
|  |  |  | dto.setFieldParamsEncode(waveDetl.getFieldParams()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //获取波次明细库位信息 | 
|---|
|  |  |  | List<MergePreviewResultDto> resultDtos = outManage.orderOutMergeLocPreview(dtos); | 
|---|
|  |  |  | return R.ok().add(resultDtos); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @PostMapping("/out/orderOut/merge/wave") | 
|---|
|  |  |  | @OperationLog("波次合并订单出库") | 
|---|
|  |  |  | @OperationLog("生成波次任务") | 
|---|
|  |  |  | @Transactional | 
|---|
|  |  |  | public R orderOutMerge(@RequestBody OrderOutMergeParamDto param) { | 
|---|
|  |  |  | outManage.orderOutMergeWave(param); | 
|---|