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