From 8c2128317af3e5a2df32150f3684167925ee4508 Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期四, 05 九月 2024 14:07:32 +0800 Subject: [PATCH] 生成数据详情和导出 --- ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOrderMealServiceImpl.java | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 46 insertions(+), 0 deletions(-) diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOrderMealServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOrderMealServiceImpl.java index b71b796..b974d15 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOrderMealServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOrderMealServiceImpl.java @@ -10,6 +10,7 @@ import com.ruoyi.system.dto.*; import com.ruoyi.system.mapper.TOrderMealGoodsMapper; import com.ruoyi.system.mapper.TOrderMealMapper; +import com.ruoyi.system.query.TDataGeneratorMealQuery; import com.ruoyi.system.query.TDataStatisticsQuery; import com.ruoyi.system.query.TOrderMealQuery; import com.ruoyi.system.service.*; @@ -295,4 +296,49 @@ return this.baseMapper.personnelStatistics(query); } + @Override + public PageInfo<TOrderMealVO> pageListGenerator(TDataGeneratorMealQuery query) { + PageInfo<TOrderMealVO> pageInfo = new PageInfo<>(query.getPageNum(),query.getPageSize()); + List<TOrderMealVO> list = this.baseMapper.pageListGenerator(query,pageInfo); + // 查询商品信息 + for (TOrderMealVO tOrderMealVO : list) { + List<TOrderMealGoods> list1 = orderMealGoodsService.list(Wrappers.lambdaQuery(TOrderMealGoods.class) + .eq(TOrderMealGoods::getOrderId, tOrderMealVO.getId())); + tOrderMealVO.setOrderMealGoods(list1); + Map<String, List<TOrderMealGoods>> map = list1.stream().collect(Collectors.groupingBy(TOrderMealGoods::getTypeName)); + List<String> goodsList = new ArrayList<>(); + map.forEach((k,v)->{ + goodsList.add(k+":"+v.stream().map(item->item.getGoodsName()+" "+(item.getGoodsSalePrice().multiply(new BigDecimal(item.getGoodsCount())))).collect(Collectors.joining(","))); + }); + tOrderMealVO.setGoodsList(goodsList); + } + pageInfo.setRecords(list); + return pageInfo; + } + + @Override + public Map<String, BigDecimal> getDataGeneratorMealDetail(TDataGeneratorMealQuery query) { + return this.baseMapper.getDataGeneratorMealDetail(query); + } + + @Override + public List<TOrderMealVO> mealGeneratorExport(TDataGeneratorMealQuery query) { + List<TOrderMealVO> list = this.baseMapper.mealGeneratorExport(query); + List<Long> ids = list.stream().map(TOrderMealVO::getId).collect(Collectors.toList()); + List<TOrderMealGoods> list1 = orderMealGoodsService.list(Wrappers.lambdaQuery(TOrderMealGoods.class) + .in(TOrderMealGoods::getOrderId,ids)); + // 查询商品信息 + for (TOrderMealVO tOrderMealVO : list) { + List<TOrderMealGoods> collect = list1.stream().filter(e -> e.getOrderId().equals(tOrderMealVO.getId())).collect(Collectors.toList()); + tOrderMealVO.setOrderMealGoods(collect); + Map<String, List<TOrderMealGoods>> map = collect.stream().collect(Collectors.groupingBy(TOrderMealGoods::getTypeName)); + List<String> goodsList = new ArrayList<>(); + map.forEach((k,v)->{ + goodsList.add(k+":"+v.stream().map(item->item.getGoodsName()+" "+(item.getGoodsSalePrice().multiply(new BigDecimal(item.getGoodsCount())))).collect(Collectors.joining(","))); + }); + tOrderMealVO.setGoodsList(goodsList); + } + return list; + } + } -- Gitblit v1.7.1