| | |
| | | import cn.iocoder.yudao.module.mdm.api.item.dto.MdmItemRespDTO; |
| | | |
| | | import cn.iocoder.yudao.module.mes.dal.dataobject.wm.returnsales.MesWmReturnSalesLineDO; |
| | | import cn.iocoder.yudao.module.mes.dal.dataobject.wm.batch.MesWmBatchDO; |
| | | import cn.iocoder.yudao.module.mes.service.wm.batch.MesWmBatchService; |
| | | import cn.iocoder.yudao.module.mdm.api.unit.MdmUnitMeasureApi; |
| | | import cn.iocoder.yudao.module.mdm.api.unit.dto.MdmUnitMeasureRespDTO; |
| | | |
| | |
| | | private MdmItemApi mdmItemApi; |
| | | @Resource |
| | | private MdmUnitMeasureApi mdmUnitMeasureApi; |
| | | @Resource |
| | | private MesWmBatchService batchService; |
| | | |
| | | @PostMapping("/create") |
| | | @Operation(summary = "创建销售退货单行") |
| | |
| | | @GetMapping("/get") |
| | | @Operation(summary = "获得销售退货单行") |
| | | @Parameter(name = "id", description = "编号", required = true, example = "1024") |
| | | @PreAuthorize("@ss.hasPermission('mes:wm-return-sales:query')") |
| | | public CommonResult<MesWmReturnSalesLineRespVO> getReturnSalesLine(@RequestParam("id") Long id) { |
| | | MesWmReturnSalesLineDO line = returnSalesLineService.getReturnSalesLine(id); |
| | | if (line == null) { |
| | |
| | | |
| | | @GetMapping("/page") |
| | | @Operation(summary = "获得销售退货单行分页") |
| | | @PreAuthorize("@ss.hasPermission('mes:wm-return-sales:query')") |
| | | public CommonResult<PageResult<MesWmReturnSalesLineRespVO>> getReturnSalesLinePage( |
| | | @Valid MesWmReturnSalesLinePageReqVO pageReqVO) { |
| | | PageResult<MesWmReturnSalesLineDO> pageResult = returnSalesLineService.getReturnSalesLinePage(pageReqVO); |
| | |
| | | @GetMapping("/list-by-return-sales") |
| | | @Operation(summary = "获得销售退货单行列表(按退货单编号)") |
| | | @Parameter(name = "returnId", description = "退货单编号", required = true, example = "1024") |
| | | @PreAuthorize("@ss.hasPermission('mes:wm-return-sales:query')") |
| | | public CommonResult<List<MesWmReturnSalesLineRespVO>> getReturnSalesLineListByReturnId( |
| | | @RequestParam("returnId") Long returnId) { |
| | | List<MesWmReturnSalesLineDO> list = returnSalesLineService.getReturnSalesLineListByReturnId(returnId); |
| | |
| | | Map<Long, MdmUnitMeasureRespDTO> unitMeasureMap = mdmUnitMeasureApi.getUnitMeasureList( |
| | | convertSet(itemMap.values(), MdmItemRespDTO::getUnitMeasureId)).getCheckedData() |
| | | .stream().collect(Collectors.toMap(MdmUnitMeasureRespDTO::getId, e -> e)); |
| | | Map<Long, MesWmBatchDO> batchMap = batchService.getBatchMap( |
| | | convertSet(list, MesWmReturnSalesLineDO::getBatchId)); |
| | | // 2. 构建结果 |
| | | return BeanUtils.toBean(list, MesWmReturnSalesLineRespVO.class, vo -> |
| | | return BeanUtils.toBean(list, MesWmReturnSalesLineRespVO.class, vo -> { |
| | | MapUtils.findAndThen(batchMap, vo.getBatchId(), batch -> vo.setReelNo(batch.getReelNo())); |
| | | MapUtils.findAndThen(itemMap, vo.getItemId(), item -> { |
| | | vo.setItemCode(item.getCode()).setItemName(item.getName()).setItemSpecification(item.getSpecification()); |
| | | MapUtils.findAndThen(unitMeasureMap, item.getUnitMeasureId(), |
| | | unitMeasure -> vo.setItemUnit(unitMeasure.getName())); |
| | | })); |
| | | }); |
| | | }); |
| | | } |
| | | |
| | | } |