From f14e468492d3ac70dfbe81a8be3a5e0f1ed6d8a4 Mon Sep 17 00:00:00 2001 From: liujiang <569804566@qq.com> Date: Sun, 28 Sep 2025 15:15:20 +0800 Subject: [PATCH] =?UTF-8?q?master=EF=BC=9A=E9=94=80=E5=94=AE/=E5=87=BA?= =?UTF-8?q?=E5=BA=93=20=E8=BF=94=E5=9B=9E=E6=98=AF=E5=90=A6=E6=A0=87?= =?UTF-8?q?=E5=87=86=E5=B0=BA=E7=A0=81=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../xkt/vo/storeSale/StoreSaleResVO.java | 3 ++- .../xkt/dto/storeSale/StoreSaleResDTO.java | 4 +++- .../xkt/service/impl/StoreSaleServiceImpl.java | 18 +++++++++++++----- 3 files changed, 18 insertions(+), 7 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeSale/StoreSaleResVO.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeSale/StoreSaleResVO.java index 8c49c03bc..5ab623cf5 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeSale/StoreSaleResVO.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeSale/StoreSaleResVO.java @@ -16,7 +16,6 @@ import java.util.List; */ @Data @ApiModel - public class StoreSaleResVO { @ApiModelProperty(value = "是否为返单:true 是返单 false 不是返单") @@ -64,6 +63,8 @@ public class StoreSaleResVO { private String colorName; @ApiModelProperty(value = "尺码") private Integer size; + @ApiModelProperty(value = "是否是标准尺码") + private Integer standard; @ApiModelProperty(value = "商品货号") private String prodArtNum; @ApiModelProperty(value = "销售条码") diff --git a/xkt/src/main/java/com/ruoyi/xkt/dto/storeSale/StoreSaleResDTO.java b/xkt/src/main/java/com/ruoyi/xkt/dto/storeSale/StoreSaleResDTO.java index e2cd77766..d887aeebe 100644 --- a/xkt/src/main/java/com/ruoyi/xkt/dto/storeSale/StoreSaleResDTO.java +++ b/xkt/src/main/java/com/ruoyi/xkt/dto/storeSale/StoreSaleResDTO.java @@ -15,7 +15,7 @@ import java.util.List; * @date 2025/3/27 15:12 */ @Data - +@Accessors(chain = true) public class StoreSaleResDTO { @ApiModelProperty(value = "是否为返单:true 是返单 false 不是返单") @@ -63,6 +63,8 @@ public class StoreSaleResDTO { private String colorName; @ApiModelProperty(value = "尺码") private Integer size; + @ApiModelProperty(value = "是否是标准尺码") + private Integer standard; @ApiModelProperty(value = "商品货号") private String prodArtNum; @ApiModelProperty(value = "销售条码") diff --git a/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreSaleServiceImpl.java b/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreSaleServiceImpl.java index f6b0b61d3..acc2a5693 100644 --- a/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreSaleServiceImpl.java +++ b/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreSaleServiceImpl.java @@ -56,6 +56,7 @@ public class StoreSaleServiceImpl implements IStoreSaleService { final StoreSaleRefundRecordDetailMapper refundRecordDetailMapper; final IStoreProductStockService storeProdStockService; final StoreProductMapper storeProdMapper; + final StoreProductColorSizeMapper prodColorSizeMapper; /** * 获取当前档口客户的销售业绩 @@ -383,14 +384,21 @@ public class StoreSaleServiceImpl implements IStoreSaleService { if (!SecurityUtils.isAdmin() && !SecurityUtils.isStoreManagerOrSub(storeSale.getStoreId())) { throw new ServiceException("当前用户非档口管理者或子账号,无权限操作!", HttpStatus.ERROR); } - StoreSaleResDTO storeSaleDTO = BeanUtil.toBean(storeSale, StoreSaleResDTO.class); + StoreSaleResDTO storeSaleDTO = BeanUtil.toBean(storeSale, StoreSaleResDTO.class).setStoreSaleId(storeSaleId); // 查询销售出库明细 List saleDetailList = this.storeSaleDetailMapper.selectList(new LambdaQueryWrapper() .eq(StoreSaleDetail::getStoreSaleId, storeSaleId).eq(StoreSaleDetail::getDelFlag, Constants.UNDELETED)); - List storeProdList = this.storeProdMapper.selectByIds(saleDetailList.stream().map(StoreSaleDetail::getStoreProdId).collect(Collectors.toList())); - Map storeProdMap = storeProdList.stream().collect(Collectors.toMap(StoreProduct::getId, x -> x)); - storeSaleDTO.setDetailList(saleDetailList.stream().map(x -> BeanUtil.toBean(x, StoreSaleResDTO.SSDetailDTO.class)).collect(Collectors.toList())); - return storeSaleDTO; + // 获取有哪些是标准尺码 + List standardSizeList = this.prodColorSizeMapper.selectList(new LambdaQueryWrapper() + .in(StoreProductColorSize::getStoreProdId, saleDetailList.stream().map(StoreSaleDetail::getStoreProdId).collect(Collectors.toList())) + .eq(StoreProductColorSize::getDelFlag, Constants.UNDELETED)); + Map> sizeMap = standardSizeList.stream().collect(Collectors + .groupingBy(StoreProductColorSize::getStoreProdId, Collectors + .toMap(StoreProductColorSize::getSize, StoreProductColorSize::getStandard, (v1, v2) -> v2))); + return storeSaleDTO.setDetailList(saleDetailList.stream().map(x -> { + Map tempSizeMap = sizeMap.getOrDefault(x.getStoreProdId(), new HashMap<>()); + return BeanUtil.toBean(x, StoreSaleResDTO.SSDetailDTO.class).setStandard(tempSizeMap.get(x.getSize())); + }).collect(Collectors.toList())); } /**