| | |
| | | import com.vincent.rsf.server.common.domain.KeyValVo; |
| | | import com.vincent.rsf.server.common.domain.PageParam; |
| | | import com.vincent.rsf.server.common.utils.ExcelUtil; |
| | | import com.vincent.rsf.server.manager.entity.AsnOrderItem; |
| | | import com.vincent.rsf.server.manager.entity.WkOrderItem; |
| | | import com.vincent.rsf.server.manager.entity.Companys; |
| | | import com.vincent.rsf.server.manager.entity.excel.AsnOrderTemplate; |
| | | import com.vincent.rsf.server.manager.entity.excel.OutStockTemplate; |
| | | import com.vincent.rsf.server.manager.enums.CompanysType; |
| | | import com.vincent.rsf.server.manager.service.AsnOrderItemService; |
| | | import com.vincent.rsf.server.manager.service.CompanysService; |
| | | import com.vincent.rsf.server.manager.service.OutStockItemService; |
| | | import com.vincent.rsf.server.system.controller.BaseController; |
| | |
| | | @PostMapping("/outStockItem/page") |
| | | public R page(@RequestBody Map<String, Object> map) { |
| | | BaseParam baseParam = buildParam(map, BaseParam.class); |
| | | PageParam<AsnOrderItem, BaseParam> pageParam = new PageParam<>(baseParam, AsnOrderItem.class); |
| | | QueryWrapper<AsnOrderItem> queryWrapper = pageParam.buildWrapper(true); |
| | | if (!Objects.isNull(map.get("poDetlId"))) { |
| | | queryWrapper.in("po_detl_id", JSONArray.parseArray(JSONArray.toJSONString(map.get("poDetlId")), Long.class)); |
| | | } |
| | | return R.ok().add(outStockItemService.listByAsnId(pageParam, queryWrapper)); |
| | | } |
| | | |
| | | |
| | | @PreAuthorize("hasAuthority('manager:outStockItem:list')") |
| | | @ApiOperation("分页获取列表") |
| | | @PostMapping("/outStockItem/edit/page") |
| | | public R byPoIdspage(@RequestBody Map<String, Object> map) { |
| | | List<Long> poDetlIds = new ArrayList<>(); |
| | | if (!Objects.isNull(map.get("poDetlId"))) { |
| | | poDetlIds = JSONArray.parseArray(JSONArray.toJSONString(map.get("poDetlId")), Long.class); |
| | | map.remove("poDetlId"); |
| | | } |
| | | BaseParam baseParam = buildParam(map, BaseParam.class); |
| | | PageParam<AsnOrderItem, BaseParam> pageParam = new PageParam<>(baseParam, AsnOrderItem.class); |
| | | QueryWrapper<AsnOrderItem> queryWrapper = pageParam.buildWrapper(true); |
| | | if (!poDetlIds.isEmpty()) { |
| | | queryWrapper.in("po_detl_id", poDetlIds); |
| | | } else { |
| | | return R.ok(); |
| | | } |
| | | PageParam<WkOrderItem, BaseParam> pageParam = new PageParam<>(baseParam, WkOrderItem.class); |
| | | QueryWrapper<WkOrderItem> queryWrapper = pageParam.buildWrapper(true); |
| | | return R.ok().add(outStockItemService.listByAsnId(pageParam, queryWrapper)); |
| | | } |
| | | |
| | |
| | | @PreAuthorize("hasAuthority('manager:outStockItem:update')") |
| | | @OperationLog("Update 出库单明细") |
| | | @PostMapping("/outStockItem/update") |
| | | public R update(@RequestBody AsnOrderItem asnOrderItem) { |
| | | asnOrderItem.setUpdateBy(getLoginUserId()); |
| | | asnOrderItem.setUpdateTime(new Date()); |
| | | if (!Objects.isNull(asnOrderItem.getSplrName()) && StringUtils.isNotBlank(asnOrderItem.getSplrName())) { |
| | | public R update(@RequestBody WkOrderItem wkOrderItem) { |
| | | wkOrderItem.setUpdateBy(getLoginUserId()); |
| | | wkOrderItem.setUpdateTime(new Date()); |
| | | if (!Objects.isNull(wkOrderItem.getSplrName()) && StringUtils.isNotBlank(wkOrderItem.getSplrName())) { |
| | | Companys companys = companysService.getOne(new LambdaQueryWrapper<Companys>() |
| | | .eq(Companys::getType, CompanysType.COMPANYS_TYPE_SUPPLIER.val) |
| | | .eq(Companys::getId, asnOrderItem.getSplrName())); |
| | | .eq(Companys::getId, wkOrderItem.getSplrName())); |
| | | if (!Objects.isNull(companys)) { |
| | | asnOrderItem.setSplrCode(companys.getCode()).setSplrName(companys.getName()); |
| | | wkOrderItem.setSplrCode(companys.getCode()).setSplrName(companys.getName()); |
| | | } |
| | | } |
| | | if (!outStockItemService.updateById(asnOrderItem)) { |
| | | if (!outStockItemService.updateById(wkOrderItem)) { |
| | | return R.error("Update Fail"); |
| | | } |
| | | return R.ok("Update Success").add(asnOrderItem); |
| | | return R.ok("Update Success").add(wkOrderItem); |
| | | } |
| | | |
| | | |
| | |
| | | @PostMapping("/outStockItem/query") |
| | | public R query(@RequestParam(required = false) String condition) { |
| | | List<KeyValVo> vos = new ArrayList<>(); |
| | | LambdaQueryWrapper<AsnOrderItem> wrapper = new LambdaQueryWrapper<>(); |
| | | LambdaQueryWrapper<WkOrderItem> wrapper = new LambdaQueryWrapper<>(); |
| | | if (!Cools.isEmpty(condition)) { |
| | | wrapper.like(AsnOrderItem::getId, condition); |
| | | wrapper.like(WkOrderItem::getId, condition); |
| | | } |
| | | outStockItemService.page(new Page<>(1, 30), wrapper).getRecords().forEach( |
| | | item -> vos.add(new KeyValVo(item.getId(), item.getId())) |
| | |
| | | return R.ok().add(vos); |
| | | } |
| | | |
| | | |
| | | @PreAuthorize("hasAuthority('manager:outStockItem:list')") |
| | | @PostMapping("/outStockItem/export") |
| | | @ApiOperation("导出出库单明细") |
| | | public void export(@RequestBody Map<String, Object> map, HttpServletResponse response) throws Exception { |
| | | List<AsnOrderItem> orderItems = new ArrayList<>(); |
| | | List<WkOrderItem> orderItems = new ArrayList<>(); |
| | | if (!Objects.isNull(map.get("ids"))) { |
| | | List<Long> ids = JSONArray.parseArray(JSONObject.toJSONString(map.get("ids")), Long.class); |
| | | if (!ids.isEmpty()) { |
| | | orderItems = outStockItemService.list(new LambdaQueryWrapper<AsnOrderItem>() |
| | | .in(AsnOrderItem::getId, ids) |
| | | .eq(AsnOrderItem::getStatus, 1)); |
| | | orderItems = outStockItemService.list(new LambdaQueryWrapper<WkOrderItem>() |
| | | .in(WkOrderItem::getId, ids) |
| | | .eq(WkOrderItem::getStatus, 1)); |
| | | } else { |
| | | orderItems = outStockItemService.list(new LambdaQueryWrapper<>()); |
| | | } |
| | |
| | | orderItems = outStockItemService.list(new LambdaQueryWrapper<>()); |
| | | } |
| | | |
| | | ExcelUtil.build(ExcelUtil.create(orderItems, AsnOrderItem.class, true), response); |
| | | ExcelUtil.build(ExcelUtil.create(orderItems, WkOrderItem.class, true), response); |
| | | } |
| | | |
| | | /** |
| | |
| | | return outStockItemService.excelImport(file, hashMap, getLoginUserId()); |
| | | } |
| | | |
| | | /** |
| | | * @author Ryan |
| | | * @description 下载模板 |
| | | * @param |
| | | * @return |
| | | * @time 2025/4/18 08:17 |
| | | */ |
| | | @PostMapping("/outStockItem/template/download") |
| | | @ApiOperation("下载收货单模板") |
| | | @PreAuthorize("hasAuthority('manager:outStockItem:update')") |
| | | public void downloadTemplate(@RequestBody Map<String, Object> map, HttpServletResponse response) throws Exception { |
| | | OutStockTemplate template = ExcelUtil.mockData(OutStockTemplate.class); |
| | | List<OutStockTemplate> list = Arrays.asList(template); |
| | | ExcelUtil.build(ExcelUtil.create(list, OutStockTemplate.class, true), response); |
| | | } |
| | | |
| | | |
| | | } |