refactor(delivery): 优化发货清单导出功能
- 移除手动序号生成逻辑 - 使用服务层方法替代流式处理转换 - 简化数据获取流程 - 提高代码可读性 - 减少内存占用 - 提升性能表现
This commit is contained in:
parent
a2e6a012a9
commit
14fada8fe5
|
|
@ -202,17 +202,17 @@ public class DeliveryController extends BaseController {
|
||||||
public void exportItemToExcel(HttpServletResponse response, @RequestParam Long id) throws IOException {
|
public void exportItemToExcel(HttpServletResponse response, @RequestParam Long id) throws IOException {
|
||||||
WmsShipmentDelivery delivery = deliveryService.getById(id);
|
WmsShipmentDelivery delivery = deliveryService.getById(id);
|
||||||
VUtil.trueThrowBusinessError(Objects.isNull(delivery)).throwMessage("清单不存在");
|
VUtil.trueThrowBusinessError(Objects.isNull(delivery)).throwMessage("清单不存在");
|
||||||
AtomicInteger index = new AtomicInteger(1);
|
// AtomicInteger index = new AtomicInteger(1);
|
||||||
List<ShipmentMaterialCodeItemVO> list = deliveryItemService.lambdaQuery()
|
// List<ShipmentMaterialCodeItemVO> list = deliveryItemService.lambdaQuery()
|
||||||
.eq(WmsShipmentDeliveryItem::getDeliveryId, id)
|
// .eq(WmsShipmentDeliveryItem::getDeliveryId, id)
|
||||||
.orderByAsc(WmsShipmentDeliveryItem::getId)
|
// .orderByAsc(WmsShipmentDeliveryItem::getId)
|
||||||
.list()
|
// .list()
|
||||||
.stream().map(item -> {
|
// .stream().map(item -> {
|
||||||
ShipmentMaterialCodeItemVO vo = Convert.convert(ShipmentMaterialCodeItemVO.class, item);
|
// ShipmentMaterialCodeItemVO vo = Convert.convert(ShipmentMaterialCodeItemVO.class, item);
|
||||||
vo.setIndex(index.getAndIncrement());
|
// vo.setIndex(index.getAndIncrement());
|
||||||
return vo;
|
// return vo;
|
||||||
}).toList();
|
// }).toList();
|
||||||
// List<ShipmentMaterialCodeItemVO> list = deliveryItemService.getItemsVO(id);
|
List<ShipmentMaterialCodeItemVO> list = deliveryItemService.getItemsVO(id);
|
||||||
response.setContentType(MediaType.APPLICATION_OCTET_STREAM_VALUE);
|
response.setContentType(MediaType.APPLICATION_OCTET_STREAM_VALUE);
|
||||||
response.setHeader(HttpHeaders.CONTENT_DISPOSITION, "attachment;filename=" + URLEncoder.encode("发货清单-" + delivery.getNo() + ".xlsx", StandardCharsets.UTF_8));
|
response.setHeader(HttpHeaders.CONTENT_DISPOSITION, "attachment;filename=" + URLEncoder.encode("发货清单-" + delivery.getNo() + ".xlsx", StandardCharsets.UTF_8));
|
||||||
new Workbook()
|
new Workbook()
|
||||||
|
|
|
||||||
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue