From 4ee6f2b0af36344a67f83b3a62c0e8b91862a1d3 Mon Sep 17 00:00:00 2001 From: liujiang <569804566@qq.com> Date: Sat, 12 Jul 2025 14:23:48 +0800 Subject: [PATCH] =?UTF-8?q?master=EF=BC=9A=E6=A1=A3=E5=8F=A3=E9=94=80?= =?UTF-8?q?=E5=94=AE=E6=A6=82=E8=A7=88=E8=B0=83=E6=95=B4=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/controller/xkt/StoreController.java | 26 +++++-- .../vo/store/StoreIndexTodayCusSaleResVO.java | 25 +++++++ .../vo/store/StoreIndexTodaySaleResVO.java | 21 ++---- .../store/StoreIndexTodaySaleTop5ResVO.java | 34 +++++++++ .../xkt/vo/store/StoreIndexTodaySaleVO.java | 24 +++++++ .../store/StoreIndexTodayCusSaleResDTO.java | 27 +++++++ .../xkt/dto/store/StoreIndexTodaySaleDTO.java | 21 ++++++ .../dto/store/StoreIndexTodaySaleResDTO.java | 22 ++---- .../store/StoreIndexTodaySaleTop5ResDTO.java | 37 ++++++++++ .../com/ruoyi/xkt/service/IStoreService.java | 17 ++++- .../xkt/service/impl/StoreServiceImpl.java | 72 ++++++++++++++++--- 11 files changed, 280 insertions(+), 46 deletions(-) create mode 100644 ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/store/StoreIndexTodayCusSaleResVO.java create mode 100644 ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/store/StoreIndexTodaySaleTop5ResVO.java create mode 100644 ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/store/StoreIndexTodaySaleVO.java create mode 100644 xkt/src/main/java/com/ruoyi/xkt/dto/store/StoreIndexTodayCusSaleResDTO.java create mode 100644 xkt/src/main/java/com/ruoyi/xkt/dto/store/StoreIndexTodaySaleDTO.java create mode 100644 xkt/src/main/java/com/ruoyi/xkt/dto/store/StoreIndexTodaySaleTop5ResDTO.java diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/StoreController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/StoreController.java index f24fb815b..d6258552a 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/StoreController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/StoreController.java @@ -131,17 +131,31 @@ public class StoreController extends XktBaseController { } @PreAuthorize("@ss.hasAnyRoles('admin,general_admin,store')") - @ApiOperation(value = "获取档口首页 销售额 ", httpMethod = "POST", response = R.class) - @PostMapping(value = "/index/sale-revenue") + @ApiOperation(value = "获取档口首页 按月销售额 ", httpMethod = "POST", response = R.class) + @PostMapping(value = "/index/month/sale") public R> indexSaleRevenue(@Validated @RequestBody StoreSaleRevenueVO revenueVO) { return R.ok(BeanUtil.copyToList(storeService.indexSaleRevenue(BeanUtil.toBean(revenueVO, StoreSaleRevenueDTO.class)), StoreIndexSaleRevenueResVO.class)); } @PreAuthorize("@ss.hasAnyRoles('admin,general_admin,store')") - @ApiOperation(value = "获取档口首页 今日销售额 ", httpMethod = "GET", response = R.class) - @GetMapping(value = "/index/today/sale-revenue/{storeId}") - public R indexTodaySaleRevenue(@PathVariable Long storeId) { - return R.ok(BeanUtil.toBean(storeService.indexTodaySaleRevenue(storeId), StoreIndexTodaySaleResVO.class)); + @ApiOperation(value = "获取档口首页 今日商品销售额前5 ", httpMethod = "GET", response = R.class) + @GetMapping(value = "/index/today/prod/sale/top5/{storeId}") + public R indexTodayProdSaleRevenueTop5(@PathVariable Long storeId) { + return R.ok(BeanUtil.toBean(storeService.indexTodayProdSaleRevenueTop5(storeId), StoreIndexTodaySaleTop5ResVO.class)); + } + + @PreAuthorize("@ss.hasAnyRoles('admin,general_admin,store')") + @ApiOperation(value = "获取档口首页 今日商品销售额 ", httpMethod = "GET", response = R.class) + @GetMapping(value = "/index/today/prod/sale/{storeId}") + public R> indexTodayProdSaleRevenue(@PathVariable Long storeId) { + return R.ok(BeanUtil.copyToList(storeService.indexTodayProdSaleRevenue(storeId), StoreIndexTodaySaleResVO.class)); + } + + @PreAuthorize("@ss.hasAnyRoles('admin,general_admin,store')") + @ApiOperation(value = "获取档口首页 今日客户销售额 ", httpMethod = "GET", response = R.class) + @GetMapping(value = "/index/today/cus/sale/{storeId}") + public R> indexTodayCusSaleRevenue(@PathVariable Long storeId) { + return R.ok(BeanUtil.copyToList(storeService.indexTodayCusSaleRevenue(storeId), StoreIndexTodayCusSaleResVO.class)); } @PreAuthorize("@ss.hasAnyRoles('admin,general_admin,store')") diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/store/StoreIndexTodayCusSaleResVO.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/store/StoreIndexTodayCusSaleResVO.java new file mode 100644 index 000000000..2bcd3fef9 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/store/StoreIndexTodayCusSaleResVO.java @@ -0,0 +1,25 @@ +package com.ruoyi.web.controller.xkt.vo.store; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author liujiang + * @version v1.0 + * @date 2025/3/27 15:12 + */ +@ApiModel("档口首页今日销售额") +@Data +public class StoreIndexTodayCusSaleResVO { + + @ApiModelProperty(value = "档口客户ID") + private Long storeCusId; + @ApiModelProperty(value = "档口客户名称") + private String storeCusName; + @ApiModelProperty(value = "销售数量") + private Integer saleNum; + @ApiModelProperty(value = "销售额") + private Long saleAmount; + +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/store/StoreIndexTodaySaleResVO.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/store/StoreIndexTodaySaleResVO.java index d6c214534..c1218b413 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/store/StoreIndexTodaySaleResVO.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/store/StoreIndexTodaySaleResVO.java @@ -5,7 +5,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.math.BigDecimal; -import java.util.List; /** * @author liujiang @@ -16,19 +15,11 @@ import java.util.List; @Data public class StoreIndexTodaySaleResVO { - @ApiModelProperty(value = "档口ID") - private Long storeId; - @ApiModelProperty(value = "其它销售额") - private BigDecimal otherAmount; - @ApiModelProperty(value = "档口商品销售额列表") - List saleList; - - @Data - public static class SITSProdSaleVO { - @ApiModelProperty(value = "货号") - private String prodArtNum; - @ApiModelProperty(value = "销售额") - private Long saleAmount; - } + @ApiModelProperty(value = "货号") + private String prodArtNum; + @ApiModelProperty(value = "销售数量") + private Integer saleNum; + @ApiModelProperty(value = "销售金额") + private BigDecimal saleAmount; } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/store/StoreIndexTodaySaleTop5ResVO.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/store/StoreIndexTodaySaleTop5ResVO.java new file mode 100644 index 000000000..05281f58a --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/store/StoreIndexTodaySaleTop5ResVO.java @@ -0,0 +1,34 @@ +package com.ruoyi.web.controller.xkt.vo.store; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.List; + +/** + * @author liujiang + * @version v1.0 + * @date 2025/3/27 15:12 + */ +@ApiModel("档口首页今日销售额") +@Data +public class StoreIndexTodaySaleTop5ResVO { + + @ApiModelProperty(value = "档口ID") + private Long storeId; + @ApiModelProperty(value = "其它销售额") + private BigDecimal otherAmount; + @ApiModelProperty(value = "档口商品销售额列表") + List saleList; + + @Data + public static class SITSProdSaleVO { + @ApiModelProperty(value = "货号") + private String prodArtNum; + @ApiModelProperty(value = "销售额") + private Long saleAmount; + } + +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/store/StoreIndexTodaySaleVO.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/store/StoreIndexTodaySaleVO.java new file mode 100644 index 000000000..06b22cba2 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/store/StoreIndexTodaySaleVO.java @@ -0,0 +1,24 @@ +package com.ruoyi.web.controller.xkt.vo.store; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author liujiang + * @version v1.0 + * @date 2025/3/27 15:12 + */ +@ApiModel("档口首页今日销售额入参model") +@Data +public class StoreIndexTodaySaleVO { + + @NotNull(message = "档口ID不能为空!") + @ApiModelProperty(value = "档口ID", required = true) + private Long storeId; + @ApiModelProperty(value = "查询数量") + private Integer limit; + +} diff --git a/xkt/src/main/java/com/ruoyi/xkt/dto/store/StoreIndexTodayCusSaleResDTO.java b/xkt/src/main/java/com/ruoyi/xkt/dto/store/StoreIndexTodayCusSaleResDTO.java new file mode 100644 index 000000000..3644497ab --- /dev/null +++ b/xkt/src/main/java/com/ruoyi/xkt/dto/store/StoreIndexTodayCusSaleResDTO.java @@ -0,0 +1,27 @@ +package com.ruoyi.xkt.dto.store; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * @author liujiang + * @version v1.0 + * @date 2025/3/27 15:12 + */ +@ApiModel("档口首页今日销售额") +@Data +@Accessors(chain = true) +public class StoreIndexTodayCusSaleResDTO { + + @ApiModelProperty(value = "档口客户ID") + private Long storeCusId; + @ApiModelProperty(value = "档口客户名称") + private String storeCusName; + @ApiModelProperty(value = "销售数量") + private Integer saleNum; + @ApiModelProperty(value = "销售额") + private Long saleAmount; + +} diff --git a/xkt/src/main/java/com/ruoyi/xkt/dto/store/StoreIndexTodaySaleDTO.java b/xkt/src/main/java/com/ruoyi/xkt/dto/store/StoreIndexTodaySaleDTO.java new file mode 100644 index 000000000..a85af0b6c --- /dev/null +++ b/xkt/src/main/java/com/ruoyi/xkt/dto/store/StoreIndexTodaySaleDTO.java @@ -0,0 +1,21 @@ +package com.ruoyi.xkt.dto.store; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author liujiang + * @version v1.0 + * @date 2025/3/27 15:12 + */ +@ApiModel("档口首页今日销售额入参model") +@Data +public class StoreIndexTodaySaleDTO { + + @ApiModelProperty(value = "档口ID") + private Long storeId; + @ApiModelProperty(value = "查询数量") + private Integer limit; + +} diff --git a/xkt/src/main/java/com/ruoyi/xkt/dto/store/StoreIndexTodaySaleResDTO.java b/xkt/src/main/java/com/ruoyi/xkt/dto/store/StoreIndexTodaySaleResDTO.java index 8625b4e02..7a95ab519 100644 --- a/xkt/src/main/java/com/ruoyi/xkt/dto/store/StoreIndexTodaySaleResDTO.java +++ b/xkt/src/main/java/com/ruoyi/xkt/dto/store/StoreIndexTodaySaleResDTO.java @@ -6,7 +6,6 @@ import lombok.Data; import lombok.experimental.Accessors; import java.math.BigDecimal; -import java.util.List; /** * @author liujiang @@ -18,20 +17,11 @@ import java.util.List; @Accessors(chain = true) public class StoreIndexTodaySaleResDTO { - @ApiModelProperty(value = "档口ID") - private Long storeId; - @ApiModelProperty(value = "其它销售额") - private BigDecimal otherAmount; - @ApiModelProperty(value = "档口商品销售额列表") - List saleList; - - @Data - @Accessors(chain = true) - public static class SITSProdSaleDTO { - @ApiModelProperty(value = "货号") - private String prodArtNum; - @ApiModelProperty(value = "销售额") - private BigDecimal saleAmount; - } + @ApiModelProperty(value = "货号") + private String prodArtNum; + @ApiModelProperty(value = "销售数量") + private Integer saleNum; + @ApiModelProperty(value = "销售金额") + private BigDecimal saleAmount; } diff --git a/xkt/src/main/java/com/ruoyi/xkt/dto/store/StoreIndexTodaySaleTop5ResDTO.java b/xkt/src/main/java/com/ruoyi/xkt/dto/store/StoreIndexTodaySaleTop5ResDTO.java new file mode 100644 index 000000000..999e37bb2 --- /dev/null +++ b/xkt/src/main/java/com/ruoyi/xkt/dto/store/StoreIndexTodaySaleTop5ResDTO.java @@ -0,0 +1,37 @@ +package com.ruoyi.xkt.dto.store; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; +import java.util.List; + +/** + * @author liujiang + * @version v1.0 + * @date 2025/3/27 15:12 + */ +@ApiModel("档口首页今日销售额") +@Data +@Accessors(chain = true) +public class StoreIndexTodaySaleTop5ResDTO { + + @ApiModelProperty(value = "档口ID") + private Long storeId; + @ApiModelProperty(value = "其它销售额") + private BigDecimal otherAmount; + @ApiModelProperty(value = "档口商品销售额列表") + List saleList; + + @Data + @Accessors(chain = true) + public static class SITSProdSaleDTO { + @ApiModelProperty(value = "货号") + private String prodArtNum; + @ApiModelProperty(value = "销售额") + private BigDecimal saleAmount; + } + +} diff --git a/xkt/src/main/java/com/ruoyi/xkt/service/IStoreService.java b/xkt/src/main/java/com/ruoyi/xkt/service/IStoreService.java index bb6ef3a62..b2d3fe398 100644 --- a/xkt/src/main/java/com/ruoyi/xkt/service/IStoreService.java +++ b/xkt/src/main/java/com/ruoyi/xkt/service/IStoreService.java @@ -108,7 +108,7 @@ public interface IStoreService { * @param storeId 档口ID * @return StoreIndexTodaySaleResDTO */ - StoreIndexTodaySaleResDTO indexTodaySaleRevenue(Long storeId); + List indexTodayProdSaleRevenue(Long storeId); /** * 档口商品销售额前10 @@ -157,4 +157,19 @@ public interface IStoreService { * @return Integer */ Integer updateStoreWeight(StoreWeightUpdateDTO storeWeightUpdateDTO); + + /** + * 获取今日客户销售额 + * + * @param storeId 档口ID + * @return StoreIndexTodayCusSaleResDTO + */ + List indexTodayCusSaleRevenue(Long storeId); + + /** + * 获取今日商品销售额前5 + * @param storeId 档口ID + * @return StoreIndexTodaySaleResDTO + */ + StoreIndexTodaySaleTop5ResDTO indexTodayProdSaleRevenueTop5(Long storeId); } diff --git a/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreServiceImpl.java b/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreServiceImpl.java index 196c362f5..17bf819a0 100644 --- a/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreServiceImpl.java +++ b/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreServiceImpl.java @@ -301,19 +301,19 @@ public class StoreServiceImpl implements IStoreService { } /** - * 档口首页今日销售额 + * 获取今日商品销售额前5 * * @param storeId 档口ID * @return StoreIndexTodaySaleResDTO */ @Override @Transactional(readOnly = true) - public StoreIndexTodaySaleResDTO indexTodaySaleRevenue(Long storeId) { + public StoreIndexTodaySaleTop5ResDTO indexTodayProdSaleRevenueTop5(Long storeId) { List detailList = this.saleDetailMapper.selectList(new LambdaQueryWrapper() .eq(StoreSaleDetail::getStoreId, storeId).eq(StoreSaleDetail::getDelFlag, Constants.UNDELETED) .eq(StoreSaleDetail::getVoucherDate, java.sql.Date.valueOf(LocalDate.now()))); if (CollectionUtils.isEmpty(detailList)) { - return new StoreIndexTodaySaleResDTO(); + return new StoreIndexTodaySaleTop5ResDTO(); } List storeProdList = storeProdMapper.selectList(new LambdaQueryWrapper() .in(StoreProduct::getId, detailList.stream().map(StoreSaleDetail::getStoreProdId).collect(Collectors.toList())) @@ -321,9 +321,9 @@ public class StoreServiceImpl implements IStoreService { Map storeProdMap = storeProdList.stream().collect(Collectors.toMap(StoreProduct::getId, x -> x)); Map saleMap = detailList.stream().collect(Collectors .groupingBy(StoreSaleDetail::getStoreProdId, CollectorsUtil.summingBigDecimal(StoreSaleDetail::getAmount))); - List saleList = new ArrayList<>(); + List saleList = new ArrayList<>(); saleMap.forEach((storeProdId, amount) -> { - StoreIndexTodaySaleResDTO.SITSProdSaleDTO saleDTO = new StoreIndexTodaySaleResDTO.SITSProdSaleDTO(); + StoreIndexTodaySaleTop5ResDTO.SITSProdSaleDTO saleDTO = new StoreIndexTodaySaleTop5ResDTO.SITSProdSaleDTO(); saleDTO.setProdArtNum(ObjectUtils.isNotEmpty(storeProdMap.get(storeProdId)) ? storeProdMap.get(storeProdId).getProdArtNum() : "") .setSaleAmount(amount); saleList.add(saleDTO); @@ -331,12 +331,67 @@ public class StoreServiceImpl implements IStoreService { // 总的金额 final BigDecimal totalAmount = detailList.stream().map(StoreSaleDetail::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add); // 销售额排名前5的列表 - List top5List = saleList.stream().sorted(Comparator.comparing(StoreIndexTodaySaleResDTO.SITSProdSaleDTO::getSaleAmount).reversed()).limit(5).collect(Collectors.toList()); + List top5List = saleList.stream().sorted(Comparator.comparing(StoreIndexTodaySaleTop5ResDTO.SITSProdSaleDTO::getSaleAmount).reversed()).limit(5).collect(Collectors.toList()); // 其它款式的销售额 - final BigDecimal otherAmount = totalAmount.subtract(top5List.stream().map(StoreIndexTodaySaleResDTO.SITSProdSaleDTO::getSaleAmount).reduce(BigDecimal.ZERO, BigDecimal::add)); - return new StoreIndexTodaySaleResDTO().setStoreId(storeId).setOtherAmount(otherAmount).setSaleList(top5List); + final BigDecimal otherAmount = totalAmount.subtract(top5List.stream().map(StoreIndexTodaySaleTop5ResDTO.SITSProdSaleDTO::getSaleAmount).reduce(BigDecimal.ZERO, BigDecimal::add)); + return new StoreIndexTodaySaleTop5ResDTO().setStoreId(storeId).setOtherAmount(otherAmount).setSaleList(top5List); } + /** + * 档口首页今日销售额 + * + * @param storeId 档口ID + * @return StoreIndexTodaySaleResDTO + */ + @Override + @Transactional(readOnly = true) + public List indexTodayProdSaleRevenue(Long storeId) { + List detailList = this.saleDetailMapper.selectList(new LambdaQueryWrapper() + .eq(StoreSaleDetail::getStoreId, storeId).eq(StoreSaleDetail::getDelFlag, Constants.UNDELETED) + .eq(StoreSaleDetail::getVoucherDate, java.sql.Date.valueOf(LocalDate.now()))); + if (CollectionUtils.isEmpty(detailList)) { + return new ArrayList<>(); + } + Map> todaySaleMap = detailList.stream().collect(Collectors.groupingBy(StoreSaleDetail::getProdArtNum)); + List saleList = new ArrayList<>(); + todaySaleMap.forEach((prodArtNum, list) -> { + final Integer saleNum = list.stream().map(x -> ObjectUtils.defaultIfNull(x.getQuantity(), 0)).reduce(0, Integer::sum); + final BigDecimal saleAmount = list.stream().map(x -> ObjectUtils.defaultIfNull(x.getAmount(), BigDecimal.ZERO)).reduce(BigDecimal.ZERO, BigDecimal::add); + saleList.add(new StoreIndexTodaySaleResDTO().setProdArtNum(prodArtNum).setSaleNum(saleNum).setSaleAmount(saleAmount)); + }); + // 按照销售金额倒序排 + saleList.sort(Comparator.comparing(StoreIndexTodaySaleResDTO::getSaleAmount).reversed()); + return saleList; + } + + /** + * 获取今日客户销售额 + * + * @param storeId 档口ID + * @return StoreIndexTodayCusSaleResDTO + */ + @Override + @Transactional(readOnly = true) + public List indexTodayCusSaleRevenue(Long storeId) { + List detailList = this.saleDetailMapper.selectList(new LambdaQueryWrapper() + .eq(StoreSaleDetail::getStoreId, storeId).eq(StoreSaleDetail::getDelFlag, Constants.UNDELETED) + .eq(StoreSaleDetail::getVoucherDate, java.sql.Date.valueOf(LocalDate.now()))); + if (CollectionUtils.isEmpty(detailList)) { + return new ArrayList<>(); + } + Map storeCusMap = detailList.stream().collect(Collectors.toMap(StoreSaleDetail::getStoreCusId, StoreSaleDetail::getStoreCusName, (s1, s2) -> s2)); + Map> cusSaleMap = detailList.stream().collect(Collectors.groupingBy(StoreSaleDetail::getStoreCusId)); + List saleList = new ArrayList<>(); + cusSaleMap.forEach((storeCusId, list) -> { + final Integer saleNum = list.stream().map(x -> ObjectUtils.defaultIfNull(x.getQuantity(), 0)).reduce(0, Integer::sum); + final Long saleAmount = list.stream().map(x -> ObjectUtils.defaultIfNull(x.getAmount(), BigDecimal.ZERO)).reduce(BigDecimal.ZERO, BigDecimal::add).longValue(); + saleList.add(new StoreIndexTodayCusSaleResDTO().setStoreCusId(storeCusId).setSaleNum(saleNum).setSaleAmount(saleAmount) + .setStoreCusName(ObjectUtils.defaultIfNull(storeCusMap.get(storeCusId), ""))); + }); + return saleList; + } + + /** * 档口商品销售额前10 * @@ -423,4 +478,5 @@ public class StoreServiceImpl implements IStoreService { return this.storeMapper.updateById(store); } + }