From b2651410b6fd5cd23bad0f984a1aecd57f006503 Mon Sep 17 00:00:00 2001 From: Tankaikai Date: Wed, 12 Mar 2025 19:26:31 +0800 Subject: [PATCH] =?UTF-8?q?=E8=80=97=E6=9D=90=E6=95=B0=E6=8D=AE=E7=BB=9F?= =?UTF-8?q?=E8=AE=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/admin/ConsInfoController.java | 17 ++++++++++ .../czg/product/service/ConsInfoService.java | 9 ++++++ .../product/mapper/ConsStockFlowMapper.java | 4 ++- .../service/impl/ConsInfoServiceImpl.java | 17 +++++++--- .../resources/mapper/ConsStockFlowMapper.xml | 32 +++++++++++++++++++ 5 files changed, 74 insertions(+), 5 deletions(-) diff --git a/cash-api/product-server/src/main/java/com/czg/controller/admin/ConsInfoController.java b/cash-api/product-server/src/main/java/com/czg/controller/admin/ConsInfoController.java index b52af13ef..6a063861b 100644 --- a/cash-api/product-server/src/main/java/com/czg/controller/admin/ConsInfoController.java +++ b/cash-api/product-server/src/main/java/com/czg/controller/admin/ConsInfoController.java @@ -3,9 +3,12 @@ package com.czg.controller; import com.czg.enums.CrudEnum; import com.czg.log.annotation.OperationLog; import com.czg.product.dto.ConsInfoDTO; +import com.czg.product.param.ConsInfoParam; import com.czg.product.param.ConsSubUnitParam; import com.czg.product.service.ConsInfoService; +import com.czg.product.vo.ConsStatisticsVo; import com.czg.resp.CzgResult; +import com.czg.sa.StpKit; import com.czg.utils.AssertUtil; import com.czg.validator.ValidatorUtil; import com.czg.validator.group.DefaultGroup; @@ -55,6 +58,7 @@ public class ConsInfoController { /** * 详情 + * * @param id 耗材信息id */ @GetMapping("{id}") @@ -164,4 +168,17 @@ public class ConsInfoController { consInfoService.modifySubUnit(param); return CzgResult.success(); } + + /** + * 统计 + */ + @GetMapping("statistics") + @OperationLog("耗材信息-统计") + //@SaAdminCheckPermission("consInfo:info") + public CzgResult getConsInfoById(ConsInfoParam param) { + Long shopId = StpKit.USER.getShopId(0L); + param.setShopId(shopId); + ConsStatisticsVo data = consInfoService.statistics(param); + return CzgResult.success(data); + } } \ No newline at end of file diff --git a/cash-common/cash-common-service/src/main/java/com/czg/product/service/ConsInfoService.java b/cash-common/cash-common-service/src/main/java/com/czg/product/service/ConsInfoService.java index c58ff85ee..353515992 100644 --- a/cash-common/cash-common-service/src/main/java/com/czg/product/service/ConsInfoService.java +++ b/cash-common/cash-common-service/src/main/java/com/czg/product/service/ConsInfoService.java @@ -2,7 +2,9 @@ package com.czg.product.service; import com.czg.product.dto.ConsInfoDTO; import com.czg.product.entity.ConsInfo; +import com.czg.product.param.ConsInfoParam; import com.czg.product.param.ConsSubUnitParam; +import com.czg.product.vo.ConsStatisticsVo; import com.mybatisflex.core.paginate.Page; import com.mybatisflex.core.service.IService; @@ -92,4 +94,11 @@ public interface ConsInfoService extends IService { */ void modifySubUnit(ConsSubUnitParam param); + /** + * 耗材数据统计 + * @param param 统计条件 + * @return 统计结果 + */ + ConsStatisticsVo statistics(ConsInfoParam param); + } \ No newline at end of file diff --git a/cash-service/product-service/src/main/java/com/czg/service/product/mapper/ConsStockFlowMapper.java b/cash-service/product-service/src/main/java/com/czg/service/product/mapper/ConsStockFlowMapper.java index 4e16671fb..0b8544e77 100644 --- a/cash-service/product-service/src/main/java/com/czg/service/product/mapper/ConsStockFlowMapper.java +++ b/cash-service/product-service/src/main/java/com/czg/service/product/mapper/ConsStockFlowMapper.java @@ -1,6 +1,8 @@ package com.czg.service.product.mapper; import com.czg.product.entity.ConsStockFlow; +import com.czg.product.param.ConsInfoParam; +import com.czg.product.vo.ConsStatisticsVo; import com.mybatisflex.core.BaseMapper; import org.apache.ibatis.annotations.Mapper; @@ -12,5 +14,5 @@ import org.apache.ibatis.annotations.Mapper; */ @Mapper public interface ConsStockFlowMapper extends BaseMapper { - + ConsStatisticsVo getConsStatistics(ConsInfoParam param); } \ No newline at end of file diff --git a/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ConsInfoServiceImpl.java b/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ConsInfoServiceImpl.java index 0f2d6aeba..30e8335ff 100644 --- a/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ConsInfoServiceImpl.java +++ b/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ConsInfoServiceImpl.java @@ -12,13 +12,12 @@ import com.czg.product.dto.ProductBriefDTO; import com.czg.product.entity.ConsGroup; import com.czg.product.entity.ConsGroupRelation; import com.czg.product.entity.ConsInfo; +import com.czg.product.param.ConsInfoParam; import com.czg.product.param.ConsSubUnitParam; import com.czg.product.service.ConsInfoService; +import com.czg.product.vo.ConsStatisticsVo; import com.czg.sa.StpKit; -import com.czg.service.product.mapper.ConsGroupMapper; -import com.czg.service.product.mapper.ConsGroupRelationMapper; -import com.czg.service.product.mapper.ConsInfoMapper; -import com.czg.service.product.mapper.ProdConsRelationMapper; +import com.czg.service.product.mapper.*; import com.czg.utils.PageUtil; import com.mybatisflex.core.paginate.Page; import com.mybatisflex.core.query.QueryWrapper; @@ -46,6 +45,7 @@ public class ConsInfoServiceImpl extends ServiceImpl i private final ConsGroupRelationMapper consGroupRelationMapper; private final ProdConsRelationMapper prodConsRelationMapper; private final ConsGroupMapper consGroupMapper; + private final ConsStockFlowMapper consStockFlowMapper; private QueryWrapper buildQueryWrapper(ConsInfoDTO param) { QueryWrapper queryWrapper = PageUtil.buildSortQueryWrapper(); @@ -205,4 +205,13 @@ public class ConsInfoServiceImpl extends ServiceImpl i } } + @Override + public ConsStatisticsVo statistics(ConsInfoParam param) { + ConsStatisticsVo data = consStockFlowMapper.getConsStatistics(param); + if (data == null) { + data = new ConsStatisticsVo(); + } + return data; + } + } \ No newline at end of file diff --git a/cash-service/product-service/src/main/resources/mapper/ConsStockFlowMapper.xml b/cash-service/product-service/src/main/resources/mapper/ConsStockFlowMapper.xml index caff5473a..d23ae8c51 100644 --- a/cash-service/product-service/src/main/resources/mapper/ConsStockFlowMapper.xml +++ b/cash-service/product-service/src/main/resources/mapper/ConsStockFlowMapper.xml @@ -3,4 +3,36 @@ + \ No newline at end of file