From 1f8a1de1f58c2378a380df412b92136dd4a7a970 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=85=95=E4=B8=8B?= <484014559@qq.com> Date: Fri, 23 Aug 2024 13:37:57 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E6=9F=A5=E8=AF=A2=E5=90=84?= =?UTF-8?q?=E4=B8=AA=E4=BA=A7=E5=93=81=E7=B1=BB=E5=9E=8B=E7=9A=84=E8=B4=AD?= =?UTF-8?q?=E7=A5=A8=E4=BA=BA=E6=95=B0=E5=A4=A7=E5=B1=8F=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/app/saledata/SaleDataApi.java | 6 ++++++ .../app/saledata/vo/SaleDataItemTypeVo.java | 9 +++++++++ .../mongodb/saledata/SaleDataRepository.java | 4 ++++ .../service/saledata/SaleDataService.java | 6 ++++++ .../service/saledata/SaleDataServiceImpl.java | 19 +++++++++++++++++++ 5 files changed, 44 insertions(+) create mode 100644 ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/controller/app/saledata/vo/SaleDataItemTypeVo.java diff --git a/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/controller/app/saledata/SaleDataApi.java b/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/controller/app/saledata/SaleDataApi.java index 3426a0720..a901d838f 100644 --- a/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/controller/app/saledata/SaleDataApi.java +++ b/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/controller/app/saledata/SaleDataApi.java @@ -79,6 +79,12 @@ public class SaleDataApi { return saleDataService.findBySaleMethod(); } + @GetMapping("/itemType") + @Operation(summary = "查询各个产品类型的购票人数") + public List> findByItemType() { + return saleDataService.findByDoItemType(); + } + @GetMapping("/wuyi/{x}") @Operation(summary = "查询最近前几年当年的五一期间的数据") public List> findByWuyi(@PathVariable("x") int x) { diff --git a/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/controller/app/saledata/vo/SaleDataItemTypeVo.java b/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/controller/app/saledata/vo/SaleDataItemTypeVo.java new file mode 100644 index 000000000..aa1e904b5 --- /dev/null +++ b/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/controller/app/saledata/vo/SaleDataItemTypeVo.java @@ -0,0 +1,9 @@ +package cn.iocoder.yudao.module.datacenter.controller.app.saledata.vo; + +import lombok.Data; + +@Data +public class SaleDataItemTypeVo { +// private String itemtype; + private String itemtypename; +} diff --git a/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/dal/mongodb/saledata/SaleDataRepository.java b/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/dal/mongodb/saledata/SaleDataRepository.java index 7be78301c..19f421667 100644 --- a/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/dal/mongodb/saledata/SaleDataRepository.java +++ b/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/dal/mongodb/saledata/SaleDataRepository.java @@ -3,6 +3,7 @@ package cn.iocoder.yudao.module.datacenter.dal.mongodb.saledata; import cn.iocoder.yudao.module.datacenter.controller.app.saledata.vo.AgeVo; import cn.iocoder.yudao.module.datacenter.controller.app.saledata.vo.AggregationVO; +import cn.iocoder.yudao.module.datacenter.controller.app.saledata.vo.SaleDataItemTypeVo; import cn.iocoder.yudao.module.datacenter.dal.dataobject.saledata.SaleData; import org.springframework.data.mongodb.repository.Aggregation; import org.springframework.data.mongodb.repository.MongoRepository; @@ -41,4 +42,7 @@ public interface SaleDataRepository extends MongoRepository { }) AgeVo findByAge(); + @Query(value = "{}", fields = "{ 'itemtypename': 1 }") + List findAllByItemtypename(); + } diff --git a/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/service/saledata/SaleDataService.java b/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/service/saledata/SaleDataService.java index 224560916..a05bfa5e4 100644 --- a/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/service/saledata/SaleDataService.java +++ b/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/service/saledata/SaleDataService.java @@ -65,6 +65,12 @@ public interface SaleDataService { */ public List> findBySaleMethod(); + /** + * 查询各个产品类型的购票人数 + * @return + */ + public List> findByDoItemType(); + /** * 查询最近前x年五一期间的数据 * @param x 前几年 diff --git a/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/service/saledata/SaleDataServiceImpl.java b/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/service/saledata/SaleDataServiceImpl.java index 5879730a7..c04d16a65 100644 --- a/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/service/saledata/SaleDataServiceImpl.java +++ b/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/service/saledata/SaleDataServiceImpl.java @@ -6,6 +6,7 @@ import cn.iocoder.yudao.framework.common.util.ticket.IdCardUtil; import cn.iocoder.yudao.module.datacenter.controller.app.saledata.vo.AgeVo; import cn.iocoder.yudao.module.datacenter.controller.app.saledata.vo.AggregationVO; +import cn.iocoder.yudao.module.datacenter.controller.app.saledata.vo.SaleDataItemTypeVo; import cn.iocoder.yudao.module.datacenter.dal.dataobject.saledata.SaleData; import cn.iocoder.yudao.module.datacenter.dal.mongodb.saledata.SaleDataRepository; import org.springframework.beans.factory.annotation.Autowired; @@ -17,6 +18,7 @@ import java.text.SimpleDateFormat; import java.time.LocalDate; import java.time.format.DateTimeFormatter; import java.util.*; +import java.util.stream.Collectors; /** @@ -210,6 +212,23 @@ public class SaleDataServiceImpl implements SaleDataService { return mapList; } + @Override + public List> findByDoItemType() { + List list = saleDataRepository.findAllByItemtypename(); + Map countMap = list.stream() + .collect(Collectors.groupingBy(SaleDataItemTypeVo::getItemtypename, Collectors.counting())); + List> mapArrayList = new ArrayList<>(); + for (String s : countMap.keySet()) { + Map map = new HashMap<>(); + map.put("TypeName",s); + map.put("count",countMap.get(s).toString()); + mapArrayList.add(map); +// map.clear(); + } + + return mapArrayList; + } + @Override public List> findWuyi(int x) { DateTimeFormatter date = DateTimeFormatter.ofPattern("yyyyMMdd"); -- 2.47.2