From 70b12dfd3e0810865923252eca8117f0605dce4f Mon Sep 17 00:00:00 2001 From: Chopper Date: Fri, 3 Dec 2021 18:31:14 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=9F=E8=AE=A1=E6=A8=A1=E5=9D=97=E9=9A=94?= =?UTF-8?q?=E7=A6=BB=E4=B8=9A=E5=8A=A1=EF=BC=8C=E9=87=8D=E6=9E=84=E7=BB=9F?= =?UTF-8?q?=E8=AE=A1=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../statistics/MemberStatisticsExecute.java | 12 +- .../impl/view/PageViewStatisticsExecute.java | 6 +- .../service/DistributionCashService.java | 6 - .../DistributionCashServiceImpl.java | 7 -- .../modules/goods/service/GoodsService.java | 15 --- .../goods/serviceimpl/GoodsServiceImpl.java | 27 ----- .../service/MemberEvaluationService.java | 13 -- .../MemberEvaluationServiceImpl.java | 14 --- .../aftersale/service/AfterSaleService.java | 7 -- .../serviceimpl/AfterSaleServiceImpl.java | 11 -- .../mapper/AfterSaleStatisticsMapper.java | 15 +++ .../mapper/BillStatisticsMapper.java | 56 +++++++++ .../DistributionCashStatisticsMapper.java | 14 +++ .../mapper/GoodsStatisticsMapper.java | 24 ++++ .../MemberEvaluationStatisticsMapper.java | 64 ++++++++++ ...apper.java => MemberStatisticsMapper.java} | 2 +- .../OrderComplaintStatisticsMapper.java | 13 ++ ...Mapper.java => OrderStatisticsMapper.java} | 2 +- ...ataMapper.java => PlatformViewMapper.java} | 2 +- ....java => RefundOrderStatisticsMapper.java} | 2 +- .../mapper/SeckillStatisticsMapper.java | 14 +++ ...er.java => StoreFlowStatisticsMapper.java} | 16 ++- ...Mapper.java => StoreStatisticsMapper.java} | 13 +- .../service/AfterSaleStatisticsService.java | 24 ++++ .../service/BillStatisticsService.java | 30 +++++ .../DistributionCashStatisticsService.java | 25 ++++ .../service/GoodsStatisticsService.java | 37 ++++++ .../MemberEvaluationStatisticsService.java | 34 ++++++ ...vice.java => MemberStatisticsService.java} | 2 +- .../OrderComplaintStatisticsService.java | 20 ++++ ...rvice.java => OrderStatisticsService.java} | 2 +- ...aService.java => PlatformViewService.java} | 2 +- .../service/SeckillStatisticsService.java | 26 ++++ ...e.java => StoreFlowStatisticsService.java} | 17 ++- .../service/StoreStatisticsService.java | 37 ++++++ .../AfterSaleStatisticsServiceImpl.java | 38 ++++++ .../BillStatisticsServiceImpl.java | 69 +++++++++++ ...DistributionCashStatisticsServiceImpl.java | 57 +++++++++ .../GoodsStatisticsServiceImpl.java | 56 +++++++++ .../IndexStatisticsServiceImpl.java | 112 ++++++++---------- ...MemberEvaluationStatisticsServiceImpl.java | 78 ++++++++++++ ....java => MemberStatisticsServiceImpl.java} | 6 +- .../OrderComplaintStatisticsServiceImpl.java | 63 ++++++++++ ...l.java => OrderStatisticsServiceImpl.java} | 12 +- ...Impl.java => PlatformViewServiceImpl.java} | 10 +- .../RefundOrderStatisticsServiceImpl.java | 4 +- .../SeckillStatisticsServiceImpl.java | 37 ++++++ ...va => StoreFlowStatisticsServiceImpl.java} | 17 ++- .../StoreStatisticsServiceImpl.java | 46 +++++++ .../modules/store/service/BillService.java | 8 -- .../modules/store/service/StoreService.java | 20 ---- .../store/serviceimpl/BillServiceImpl.java | 9 -- .../store/serviceimpl/StoreServiceImpl.java | 23 ---- .../cn/lili/test/RedisLimiterHelperTest.java | 4 +- .../GoodsStatisticsManagerController.java | 10 +- .../MemberStatisticsManagerController.java | 6 +- .../OrderStatisticsManagerController.java | 8 +- .../ViewStatisticsManagerController.java | 12 +- .../GoodsStatisticsStoreController.java | 6 +- .../IndexStatisticsStoreController.java | 6 +- .../OrderStatisticsStoreController.java | 8 +- .../ViewStatisticsStoreController.java | 6 +- 62 files changed, 1037 insertions(+), 305 deletions(-) create mode 100644 framework/src/main/java/cn/lili/modules/statistics/mapper/AfterSaleStatisticsMapper.java create mode 100644 framework/src/main/java/cn/lili/modules/statistics/mapper/BillStatisticsMapper.java create mode 100644 framework/src/main/java/cn/lili/modules/statistics/mapper/DistributionCashStatisticsMapper.java create mode 100644 framework/src/main/java/cn/lili/modules/statistics/mapper/GoodsStatisticsMapper.java create mode 100644 framework/src/main/java/cn/lili/modules/statistics/mapper/MemberEvaluationStatisticsMapper.java rename framework/src/main/java/cn/lili/modules/statistics/mapper/{MemberStatisticsDataMapper.java => MemberStatisticsMapper.java} (89%) create mode 100644 framework/src/main/java/cn/lili/modules/statistics/mapper/OrderComplaintStatisticsMapper.java rename framework/src/main/java/cn/lili/modules/statistics/mapper/{OrderStatisticsDataMapper.java => OrderStatisticsMapper.java} (93%) rename framework/src/main/java/cn/lili/modules/statistics/mapper/{PlatformViewDataMapper.java => PlatformViewMapper.java} (90%) rename framework/src/main/java/cn/lili/modules/statistics/mapper/{RefundOrderStatisticsDataMapper.java => RefundOrderStatisticsMapper.java} (92%) create mode 100644 framework/src/main/java/cn/lili/modules/statistics/mapper/SeckillStatisticsMapper.java rename framework/src/main/java/cn/lili/modules/statistics/mapper/{GoodsStatisticsDataMapper.java => StoreFlowStatisticsMapper.java} (71%) rename framework/src/main/java/cn/lili/modules/statistics/mapper/{StoreStatisticsDataMapper.java => StoreStatisticsMapper.java} (55%) create mode 100644 framework/src/main/java/cn/lili/modules/statistics/service/AfterSaleStatisticsService.java create mode 100644 framework/src/main/java/cn/lili/modules/statistics/service/BillStatisticsService.java create mode 100644 framework/src/main/java/cn/lili/modules/statistics/service/DistributionCashStatisticsService.java create mode 100644 framework/src/main/java/cn/lili/modules/statistics/service/GoodsStatisticsService.java create mode 100644 framework/src/main/java/cn/lili/modules/statistics/service/MemberEvaluationStatisticsService.java rename framework/src/main/java/cn/lili/modules/statistics/service/{MemberStatisticsDataService.java => MemberStatisticsService.java} (93%) create mode 100644 framework/src/main/java/cn/lili/modules/statistics/service/OrderComplaintStatisticsService.java rename framework/src/main/java/cn/lili/modules/statistics/service/{OrderStatisticsDataService.java => OrderStatisticsService.java} (94%) rename framework/src/main/java/cn/lili/modules/statistics/service/{PlatformViewDataService.java => PlatformViewService.java} (93%) create mode 100644 framework/src/main/java/cn/lili/modules/statistics/service/SeckillStatisticsService.java rename framework/src/main/java/cn/lili/modules/statistics/service/{GoodsStatisticsDataService.java => StoreFlowStatisticsService.java} (61%) create mode 100644 framework/src/main/java/cn/lili/modules/statistics/service/StoreStatisticsService.java create mode 100644 framework/src/main/java/cn/lili/modules/statistics/serviceimpl/AfterSaleStatisticsServiceImpl.java create mode 100644 framework/src/main/java/cn/lili/modules/statistics/serviceimpl/BillStatisticsServiceImpl.java create mode 100644 framework/src/main/java/cn/lili/modules/statistics/serviceimpl/DistributionCashStatisticsServiceImpl.java create mode 100644 framework/src/main/java/cn/lili/modules/statistics/serviceimpl/GoodsStatisticsServiceImpl.java create mode 100644 framework/src/main/java/cn/lili/modules/statistics/serviceimpl/MemberEvaluationStatisticsServiceImpl.java rename framework/src/main/java/cn/lili/modules/statistics/serviceimpl/{MemberStatisticsDataServiceImpl.java => MemberStatisticsServiceImpl.java} (91%) create mode 100644 framework/src/main/java/cn/lili/modules/statistics/serviceimpl/OrderComplaintStatisticsServiceImpl.java rename framework/src/main/java/cn/lili/modules/statistics/serviceimpl/{OrderStatisticsDataServiceImpl.java => OrderStatisticsServiceImpl.java} (96%) rename framework/src/main/java/cn/lili/modules/statistics/serviceimpl/{PlatformViewDataServiceImpl.java => PlatformViewServiceImpl.java} (96%) create mode 100644 framework/src/main/java/cn/lili/modules/statistics/serviceimpl/SeckillStatisticsServiceImpl.java rename framework/src/main/java/cn/lili/modules/statistics/serviceimpl/{GoodsStatisticsDataServiceImpl.java => StoreFlowStatisticsServiceImpl.java} (81%) create mode 100644 framework/src/main/java/cn/lili/modules/statistics/serviceimpl/StoreStatisticsServiceImpl.java diff --git a/consumer/src/main/java/cn/lili/timetask/handler/impl/statistics/MemberStatisticsExecute.java b/consumer/src/main/java/cn/lili/timetask/handler/impl/statistics/MemberStatisticsExecute.java index 63b43f2b..8e34ceca 100644 --- a/consumer/src/main/java/cn/lili/timetask/handler/impl/statistics/MemberStatisticsExecute.java +++ b/consumer/src/main/java/cn/lili/timetask/handler/impl/statistics/MemberStatisticsExecute.java @@ -1,7 +1,7 @@ package cn.lili.timetask.handler.impl.statistics; import cn.lili.modules.statistics.entity.dos.MemberStatisticsData; -import cn.lili.modules.statistics.service.MemberStatisticsDataService; +import cn.lili.modules.statistics.service.MemberStatisticsService; import cn.lili.timetask.handler.EveryDayExecute; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -24,7 +24,7 @@ public class MemberStatisticsExecute implements EveryDayExecute { * 会员统计 */ @Autowired - private MemberStatisticsDataService memberStatisticsDataService; + private MemberStatisticsService memberStatisticsService; @Override public void execute() { @@ -43,11 +43,11 @@ public class MemberStatisticsExecute implements EveryDayExecute { calendar.set(Calendar.DAY_OF_MONTH, calendar.get(Calendar.DAY_OF_MONTH) - 1); startTime = calendar.getTime(); MemberStatisticsData memberStatisticsData = new MemberStatisticsData(); - memberStatisticsData.setMemberCount(memberStatisticsDataService.memberCount(endTime)); + memberStatisticsData.setMemberCount(memberStatisticsService.memberCount(endTime)); memberStatisticsData.setCreateDate(startTime); - memberStatisticsData.setActiveQuantity(memberStatisticsDataService.activeQuantity(startTime)); - memberStatisticsData.setNewlyAdded(memberStatisticsDataService.newlyAdded(startTime, endTime)); - memberStatisticsDataService.save(memberStatisticsData); + memberStatisticsData.setActiveQuantity(memberStatisticsService.activeQuantity(startTime)); + memberStatisticsData.setNewlyAdded(memberStatisticsService.newlyAdded(startTime, endTime)); + memberStatisticsService.save(memberStatisticsData); } catch (Exception e) { log.error("每日会员统计功能异常:", e); } diff --git a/consumer/src/main/java/cn/lili/timetask/handler/impl/view/PageViewStatisticsExecute.java b/consumer/src/main/java/cn/lili/timetask/handler/impl/view/PageViewStatisticsExecute.java index 3821f8b6..0783517b 100644 --- a/consumer/src/main/java/cn/lili/timetask/handler/impl/view/PageViewStatisticsExecute.java +++ b/consumer/src/main/java/cn/lili/timetask/handler/impl/view/PageViewStatisticsExecute.java @@ -5,7 +5,7 @@ import cn.lili.cache.Cache; import cn.lili.cache.CachePrefix; import cn.lili.common.utils.BeanUtil; import cn.lili.modules.statistics.entity.dos.PlatformViewData; -import cn.lili.modules.statistics.service.PlatformViewDataService; +import cn.lili.modules.statistics.service.PlatformViewService; import cn.lili.timetask.handler.EveryDayExecute; import lombok.Data; import lombok.extern.slf4j.Slf4j; @@ -37,7 +37,7 @@ public class PageViewStatisticsExecute implements EveryDayExecute { * 平台PV统计 */ @Autowired - private PlatformViewDataService platformViewDataService; + private PlatformViewService platformViewService; @Override public void execute() { @@ -123,7 +123,7 @@ public class PageViewStatisticsExecute implements EveryDayExecute { @Transactional(rollbackFor = Exception.class) void batchSave(List pvKeys, List uvKeys, List platformViewData) { log.debug("批量保存流量数据,共计【{}】条", platformViewData.size()); - platformViewDataService.saveBatch(platformViewData); + platformViewService.saveBatch(platformViewData); //批量删除缓存key cache.multiDel(pvKeys); cache.multiDel(uvKeys); diff --git a/framework/src/main/java/cn/lili/modules/distribution/service/DistributionCashService.java b/framework/src/main/java/cn/lili/modules/distribution/service/DistributionCashService.java index b5e75c01..2a107b9f 100644 --- a/framework/src/main/java/cn/lili/modules/distribution/service/DistributionCashService.java +++ b/framework/src/main/java/cn/lili/modules/distribution/service/DistributionCashService.java @@ -49,10 +49,4 @@ public interface DistributionCashService extends IService { */ DistributionCash audit(@PathVariable String id, @RequestParam String result); - /** - * 待处理分销员提现申请数量 - * - * @return 待处理分销员提现申请数量 - */ - Integer newDistributionCash(); } \ No newline at end of file diff --git a/framework/src/main/java/cn/lili/modules/distribution/serviceimpl/DistributionCashServiceImpl.java b/framework/src/main/java/cn/lili/modules/distribution/serviceimpl/DistributionCashServiceImpl.java index 5cd142cc..79c056c6 100644 --- a/framework/src/main/java/cn/lili/modules/distribution/serviceimpl/DistributionCashServiceImpl.java +++ b/framework/src/main/java/cn/lili/modules/distribution/serviceimpl/DistributionCashServiceImpl.java @@ -157,11 +157,4 @@ public class DistributionCashServiceImpl extends ServiceImpl { */ boolean auditGoods(List goodsIds, GoodsAuthEnum goodsAuthEnum); - /** - * 获取所有的已上架的商品数量 - * - * @param goodsAuthEnum 商品审核枚举 - * @param goodsStatusEnum 商品状态枚举 - * @return 所有的已上架的商品数量 - */ - Integer goodsNum(GoodsStatusEnum goodsStatusEnum, GoodsAuthEnum goodsAuthEnum); - - /** - * 获取今天的已上架的商品数量 - * - * @return 今天的已上架的商品数量 - */ - Integer todayUpperNum(); /** * 更新商品上架状态状态 diff --git a/framework/src/main/java/cn/lili/modules/goods/serviceimpl/GoodsServiceImpl.java b/framework/src/main/java/cn/lili/modules/goods/serviceimpl/GoodsServiceImpl.java index 8e34532d..265694ad 100644 --- a/framework/src/main/java/cn/lili/modules/goods/serviceimpl/GoodsServiceImpl.java +++ b/framework/src/main/java/cn/lili/modules/goods/serviceimpl/GoodsServiceImpl.java @@ -277,33 +277,6 @@ public class GoodsServiceImpl extends ServiceImpl implements return result; } - @Override - public Integer goodsNum(GoodsStatusEnum goodsStatusEnum, GoodsAuthEnum goodsAuthEnum) { - LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(); - - queryWrapper.eq(Goods::getDeleteFlag, false); - - if (goodsStatusEnum != null) { - queryWrapper.eq(Goods::getMarketEnable, goodsStatusEnum.name()); - } - if (goodsAuthEnum != null) { - queryWrapper.eq(Goods::getIsAuth, goodsAuthEnum.name()); - } - AuthUser currentUser = Objects.requireNonNull(UserContext.getCurrentUser()); - queryWrapper.eq(CharSequenceUtil.equals(currentUser.getRole().name(), UserEnums.STORE.name()), - Goods::getStoreId, currentUser.getStoreId()); - - return this.count(queryWrapper); - } - - @Override - public Integer todayUpperNum() { - LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(); - queryWrapper.eq(Goods::getMarketEnable, GoodsStatusEnum.UPPER.name()); - queryWrapper.ge(Goods::getCreateTime, DateUtil.beginOfDay(new DateTime())); - return this.count(queryWrapper); - } - @Override public Boolean updateGoodsMarketAble(List goodsIds, GoodsStatusEnum goodsStatusEnum, String underReason) { boolean result; diff --git a/framework/src/main/java/cn/lili/modules/member/service/MemberEvaluationService.java b/framework/src/main/java/cn/lili/modules/member/service/MemberEvaluationService.java index 7c5792df..44878063 100644 --- a/framework/src/main/java/cn/lili/modules/member/service/MemberEvaluationService.java +++ b/framework/src/main/java/cn/lili/modules/member/service/MemberEvaluationService.java @@ -88,18 +88,5 @@ public interface MemberEvaluationService extends IService { */ EvaluationNumberVO getEvaluationNumber(String goodsId); - /** - * 获取今天新增的评价数量 - * - * @return 今日评价数量 - */ - Integer todayMemberEvaluation(); - - /** - * 获取等待回复评价数量 - * - * @return 等待回复评价数量 - */ - Integer getWaitReplyNum(); } \ No newline at end of file diff --git a/framework/src/main/java/cn/lili/modules/member/serviceimpl/MemberEvaluationServiceImpl.java b/framework/src/main/java/cn/lili/modules/member/serviceimpl/MemberEvaluationServiceImpl.java index 858bea4e..2fe138a8 100644 --- a/framework/src/main/java/cn/lili/modules/member/serviceimpl/MemberEvaluationServiceImpl.java +++ b/framework/src/main/java/cn/lili/modules/member/serviceimpl/MemberEvaluationServiceImpl.java @@ -195,20 +195,6 @@ public class MemberEvaluationServiceImpl extends ServiceImpl().ge(MemberEvaluation::getCreateTime, DateUtil.beginOfDay(new DateTime()))); - } - - @Override - public Integer getWaitReplyNum() { - QueryWrapper queryWrapper = Wrappers.query(); - queryWrapper.eq(StringUtils.equals(UserContext.getCurrentUser().getRole().name(), UserEnums.STORE.name()), - "store_id", UserContext.getCurrentUser().getStoreId()); - queryWrapper.eq("reply_status", false); - return this.count(queryWrapper); - } - /** * 检测会员评价 * diff --git a/framework/src/main/java/cn/lili/modules/order/aftersale/service/AfterSaleService.java b/framework/src/main/java/cn/lili/modules/order/aftersale/service/AfterSaleService.java index 5c4a87b4..79208722 100644 --- a/framework/src/main/java/cn/lili/modules/order/aftersale/service/AfterSaleService.java +++ b/framework/src/main/java/cn/lili/modules/order/aftersale/service/AfterSaleService.java @@ -129,13 +129,6 @@ public interface AfterSaleService extends IService { */ AfterSale cancel(String afterSaleSn); - /** - * 获取待处理售后数量 - * - * @param serviceType 售后类型 - * @return 待处理售后数量 - */ - Integer applyNum(String serviceType); /** * 根据售后单号获取店铺退货收货地址信息 diff --git a/framework/src/main/java/cn/lili/modules/order/aftersale/serviceimpl/AfterSaleServiceImpl.java b/framework/src/main/java/cn/lili/modules/order/aftersale/serviceimpl/AfterSaleServiceImpl.java index 46bdc735..f89bb196 100644 --- a/framework/src/main/java/cn/lili/modules/order/aftersale/serviceimpl/AfterSaleServiceImpl.java +++ b/framework/src/main/java/cn/lili/modules/order/aftersale/serviceimpl/AfterSaleServiceImpl.java @@ -367,17 +367,6 @@ public class AfterSaleServiceImpl extends ServiceImpl queryWrapper = Wrappers.lambdaQuery(); - queryWrapper.eq(AfterSale::getServiceStatus, AfterSaleStatusEnum.APPLY.name()); - queryWrapper.eq(CharSequenceUtil.isNotEmpty(serviceType), AfterSale::getServiceType, serviceType); - queryWrapper.eq(CharSequenceUtil.equals(authUser.getRole().name(), UserEnums.STORE.name()), - AfterSale::getStoreId, authUser.getStoreId()); - return this.count(queryWrapper); - } - @Override public StoreAfterSaleAddressDTO getStoreAfterSaleAddressDTO(String sn) { return storeDetailService.getStoreAfterSaleAddressDTO(OperationalJudgment.judgment(this.getBySn(sn)).getStoreId()); diff --git a/framework/src/main/java/cn/lili/modules/statistics/mapper/AfterSaleStatisticsMapper.java b/framework/src/main/java/cn/lili/modules/statistics/mapper/AfterSaleStatisticsMapper.java new file mode 100644 index 00000000..786f2abe --- /dev/null +++ b/framework/src/main/java/cn/lili/modules/statistics/mapper/AfterSaleStatisticsMapper.java @@ -0,0 +1,15 @@ +package cn.lili.modules.statistics.mapper; + +import cn.lili.modules.goods.entity.dos.Goods; +import cn.lili.modules.order.aftersale.entity.dos.AfterSale; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * 售后统计数据处理层 + * + * @author Bulbasaur + * @since 2020/11/17 7:34 下午 + */ +public interface AfterSaleStatisticsMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/framework/src/main/java/cn/lili/modules/statistics/mapper/BillStatisticsMapper.java b/framework/src/main/java/cn/lili/modules/statistics/mapper/BillStatisticsMapper.java new file mode 100644 index 00000000..6a1f2cc2 --- /dev/null +++ b/framework/src/main/java/cn/lili/modules/statistics/mapper/BillStatisticsMapper.java @@ -0,0 +1,56 @@ +package cn.lili.modules.statistics.mapper; + + +import cn.lili.modules.store.entity.dos.Bill; +import cn.lili.modules.store.entity.vos.BillListVO; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Constants; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +/** + * 结算单数据处理层 + * + * @author Chopper + * @since 2020/11/17 4:27 下午 + */ +public interface BillStatisticsMapper extends BaseMapper { + + /** + * 查询结算单分页 + * + * @param page 分页 + * @param queryWrapper 查询条件 + * @return 结算单分页 + */ + @Select("select b.id,b.sn,b.start_time,b.end_time,b.bill_status,b.store_name,b.bill_price,b.create_time from li_bill as b ${ew.customSqlSegment}") + IPage queryBillPage(IPage page, @Param(Constants.WRAPPER) Wrapper queryWrapper); + + /** + * 查询订单结算 + * + * @param queryWrapper 查询条件 + * @return 结算单 + */ + @Select("SELECT SUM( final_price ) AS orderPrice,SUM( commission_price ) AS commissionPrice" + + ",SUM( distribution_rebate ) AS distributionCommission,SUM( site_coupon_commission ) AS siteCouponCommission" + + ",SUM( point_settlement_price ) AS pointSettlementPrice " + + ",SUM( kanjia_settlement_price ) AS kanjiaSettlementPrice " + + ",SUM( bill_price ) AS billPrice " + + "FROM li_store_flow ${ew.customSqlSegment}") + Bill getOrderBill(@Param(Constants.WRAPPER) QueryWrapper queryWrapper); + + /** + * 查询退款结算单 + * + * @param queryWrapper 查询条件 + * @return 结算单 + */ + @Select("SELECT SUM( final_price ) AS refundPrice,SUM( commission_price ) AS refundCommissionPrice" + + ",SUM( distribution_rebate ) AS distributionRefundCommission,SUM( site_coupon_commission ) AS siteCouponRefundCommission" + + ",SUM( bill_price ) AS billPrice FROM li_store_flow ${ew.customSqlSegment}") + Bill getRefundBill(@Param(Constants.WRAPPER) QueryWrapper queryWrapper); +} \ No newline at end of file diff --git a/framework/src/main/java/cn/lili/modules/statistics/mapper/DistributionCashStatisticsMapper.java b/framework/src/main/java/cn/lili/modules/statistics/mapper/DistributionCashStatisticsMapper.java new file mode 100644 index 00000000..4506aeb3 --- /dev/null +++ b/framework/src/main/java/cn/lili/modules/statistics/mapper/DistributionCashStatisticsMapper.java @@ -0,0 +1,14 @@ +package cn.lili.modules.statistics.mapper; + +import cn.lili.modules.distribution.entity.dos.DistributionCash; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * 分销佣金数据统计 + * + * @author pikachu + * @since 2020-03-26 18:45:56 + */ +public interface DistributionCashStatisticsMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/framework/src/main/java/cn/lili/modules/statistics/mapper/GoodsStatisticsMapper.java b/framework/src/main/java/cn/lili/modules/statistics/mapper/GoodsStatisticsMapper.java new file mode 100644 index 00000000..e89d3b74 --- /dev/null +++ b/framework/src/main/java/cn/lili/modules/statistics/mapper/GoodsStatisticsMapper.java @@ -0,0 +1,24 @@ +package cn.lili.modules.statistics.mapper; + +import cn.lili.modules.goods.entity.dos.Goods; +import cn.lili.modules.order.order.entity.dos.StoreFlow; +import cn.lili.modules.statistics.entity.vo.CategoryStatisticsDataVO; +import cn.lili.modules.statistics.entity.vo.GoodsStatisticsDataVO; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Constants; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +/** + * 商品统计数据处理层 + * + * @author Bulbasaur + * @since 2020/11/17 7:34 下午 + */ +public interface GoodsStatisticsMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/framework/src/main/java/cn/lili/modules/statistics/mapper/MemberEvaluationStatisticsMapper.java b/framework/src/main/java/cn/lili/modules/statistics/mapper/MemberEvaluationStatisticsMapper.java new file mode 100644 index 00000000..4fe62595 --- /dev/null +++ b/framework/src/main/java/cn/lili/modules/statistics/mapper/MemberEvaluationStatisticsMapper.java @@ -0,0 +1,64 @@ +package cn.lili.modules.statistics.mapper; + +import cn.lili.modules.member.entity.dos.MemberEvaluation; +import cn.lili.modules.member.entity.vo.MemberEvaluationListVO; +import cn.lili.modules.member.entity.vo.StoreRatingVO; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Constants; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; +import java.util.Map; + +/** + * 会员商品评价数据处理层 + * + * @author Bulbasaur + * @since 2020-02-25 14:10:16 + */ +public interface MemberEvaluationStatisticsMapper extends BaseMapper { + + + /** + * 会员评价分页 + * + * @param page 分页 + * @param queryWrapper 查询条件 + * @return 会员评价分页 + */ + @Select("select me.* from li_member_evaluation as me ${ew.customSqlSegment}") + IPage getMemberEvaluationList(IPage page, @Param(Constants.WRAPPER) Wrapper queryWrapper); + + /** + * 评价数量 + * + * @param goodsId 商品ID + * @return 会员评价 + */ + @Select("select grade,count(1) as num from li_member_evaluation Where goods_id=#{goodsId} and status='OPEN' GROUP BY grade") + List> getEvaluationNumber(String goodsId); + + /** + * 获取店铺评分 + * + * @param queryWrapper 查询条件 + * @return 店铺评分 + */ + @Select("SELECT round( AVG( delivery_score ), 2 ) AS delivery_score" + + ",round( AVG( description_score ), 2 ) AS description_score" + + ",round( AVG( service_score ), 2 ) AS service_score " + + "FROM li_member_evaluation ${ew.customSqlSegment}") + StoreRatingVO getStoreRatingVO(@Param(Constants.WRAPPER) Wrapper queryWrapper); + + /** + * 商品会员评价数量 + * + * @param queryWrapper 查询条件 + * @return 评价数量 + */ + @Select("SELECT goods_id,COUNT(goods_id) AS num FROM li_member_evaluation GROUP BY goods_id") + List> memberEvaluationNum(@Param(Constants.WRAPPER) Wrapper queryWrapper); +} \ No newline at end of file diff --git a/framework/src/main/java/cn/lili/modules/statistics/mapper/MemberStatisticsDataMapper.java b/framework/src/main/java/cn/lili/modules/statistics/mapper/MemberStatisticsMapper.java similarity index 89% rename from framework/src/main/java/cn/lili/modules/statistics/mapper/MemberStatisticsDataMapper.java rename to framework/src/main/java/cn/lili/modules/statistics/mapper/MemberStatisticsMapper.java index 685fd906..37b0d782 100644 --- a/framework/src/main/java/cn/lili/modules/statistics/mapper/MemberStatisticsDataMapper.java +++ b/framework/src/main/java/cn/lili/modules/statistics/mapper/MemberStatisticsMapper.java @@ -13,7 +13,7 @@ import org.apache.ibatis.annotations.Select; * @author Bulbasaur * @since 2020/11/17 7:34 下午 */ -public interface MemberStatisticsDataMapper extends BaseMapper { +public interface MemberStatisticsMapper extends BaseMapper { /** * 获取会员统计数量 diff --git a/framework/src/main/java/cn/lili/modules/statistics/mapper/OrderComplaintStatisticsMapper.java b/framework/src/main/java/cn/lili/modules/statistics/mapper/OrderComplaintStatisticsMapper.java new file mode 100644 index 00000000..0b1d1637 --- /dev/null +++ b/framework/src/main/java/cn/lili/modules/statistics/mapper/OrderComplaintStatisticsMapper.java @@ -0,0 +1,13 @@ +package cn.lili.modules.statistics.mapper; + +import cn.lili.modules.order.order.entity.dos.OrderComplaint; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * 订单投诉数据处理层 + * + * @author paulG + * @since 2020/12/5 + **/ +public interface OrderComplaintStatisticsMapper extends BaseMapper { +} diff --git a/framework/src/main/java/cn/lili/modules/statistics/mapper/OrderStatisticsDataMapper.java b/framework/src/main/java/cn/lili/modules/statistics/mapper/OrderStatisticsMapper.java similarity index 93% rename from framework/src/main/java/cn/lili/modules/statistics/mapper/OrderStatisticsDataMapper.java rename to framework/src/main/java/cn/lili/modules/statistics/mapper/OrderStatisticsMapper.java index 69948a49..f8e42a5d 100644 --- a/framework/src/main/java/cn/lili/modules/statistics/mapper/OrderStatisticsDataMapper.java +++ b/framework/src/main/java/cn/lili/modules/statistics/mapper/OrderStatisticsMapper.java @@ -16,7 +16,7 @@ import java.util.List; * @author Bulbasaur * @since 2020/11/17 7:34 下午 */ -public interface OrderStatisticsDataMapper extends BaseMapper { +public interface OrderStatisticsMapper extends BaseMapper { /** * 获取订单统计数据 diff --git a/framework/src/main/java/cn/lili/modules/statistics/mapper/PlatformViewDataMapper.java b/framework/src/main/java/cn/lili/modules/statistics/mapper/PlatformViewMapper.java similarity index 90% rename from framework/src/main/java/cn/lili/modules/statistics/mapper/PlatformViewDataMapper.java rename to framework/src/main/java/cn/lili/modules/statistics/mapper/PlatformViewMapper.java index 3109b05f..6eeea405 100644 --- a/framework/src/main/java/cn/lili/modules/statistics/mapper/PlatformViewDataMapper.java +++ b/framework/src/main/java/cn/lili/modules/statistics/mapper/PlatformViewMapper.java @@ -13,7 +13,7 @@ import org.apache.ibatis.annotations.Select; * @author Bulbasaur * @since 2020/11/17 7:34 下午 */ -public interface PlatformViewDataMapper extends BaseMapper { +public interface PlatformViewMapper extends BaseMapper { /** * UV流量统计 * diff --git a/framework/src/main/java/cn/lili/modules/statistics/mapper/RefundOrderStatisticsDataMapper.java b/framework/src/main/java/cn/lili/modules/statistics/mapper/RefundOrderStatisticsMapper.java similarity index 92% rename from framework/src/main/java/cn/lili/modules/statistics/mapper/RefundOrderStatisticsDataMapper.java rename to framework/src/main/java/cn/lili/modules/statistics/mapper/RefundOrderStatisticsMapper.java index e4843c19..035a0fb3 100644 --- a/framework/src/main/java/cn/lili/modules/statistics/mapper/RefundOrderStatisticsDataMapper.java +++ b/framework/src/main/java/cn/lili/modules/statistics/mapper/RefundOrderStatisticsMapper.java @@ -15,7 +15,7 @@ import org.apache.ibatis.annotations.Select; * @author Bulbasaur * @since 2020/12/10 11:22 */ -public interface RefundOrderStatisticsDataMapper extends BaseMapper { +public interface RefundOrderStatisticsMapper extends BaseMapper { /** * 退款统计 diff --git a/framework/src/main/java/cn/lili/modules/statistics/mapper/SeckillStatisticsMapper.java b/framework/src/main/java/cn/lili/modules/statistics/mapper/SeckillStatisticsMapper.java new file mode 100644 index 00000000..fad7e290 --- /dev/null +++ b/framework/src/main/java/cn/lili/modules/statistics/mapper/SeckillStatisticsMapper.java @@ -0,0 +1,14 @@ +package cn.lili.modules.statistics.mapper; + +import cn.lili.modules.promotion.entity.dos.Seckill; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Update; + +/** + * 秒杀活动统计 + * + * @author Chopper + * @since 2020/8/21 + */ +public interface SeckillStatisticsMapper extends BaseMapper { +} \ No newline at end of file diff --git a/framework/src/main/java/cn/lili/modules/statistics/mapper/GoodsStatisticsDataMapper.java b/framework/src/main/java/cn/lili/modules/statistics/mapper/StoreFlowStatisticsMapper.java similarity index 71% rename from framework/src/main/java/cn/lili/modules/statistics/mapper/GoodsStatisticsDataMapper.java rename to framework/src/main/java/cn/lili/modules/statistics/mapper/StoreFlowStatisticsMapper.java index 226e253d..55496565 100644 --- a/framework/src/main/java/cn/lili/modules/statistics/mapper/GoodsStatisticsDataMapper.java +++ b/framework/src/main/java/cn/lili/modules/statistics/mapper/StoreFlowStatisticsMapper.java @@ -3,6 +3,7 @@ package cn.lili.modules.statistics.mapper; import cn.lili.modules.order.order.entity.dos.StoreFlow; import cn.lili.modules.statistics.entity.vo.CategoryStatisticsDataVO; import cn.lili.modules.statistics.entity.vo.GoodsStatisticsDataVO; +import cn.lili.modules.statistics.entity.vo.StoreStatisticsDataVO; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -18,7 +19,7 @@ import java.util.List; * @author Bulbasaur * @since 2020/11/17 7:34 下午 */ -public interface GoodsStatisticsDataMapper extends BaseMapper { +public interface StoreFlowStatisticsMapper extends BaseMapper { /** * 商品统计 @@ -38,4 +39,17 @@ public interface GoodsStatisticsDataMapper extends BaseMapper { */ @Select("SELECT category_id,category_name,SUM(price) AS price,SUM(num) AS num FROM li_store_flow ${ew.customSqlSegment}") List getCateGoryStatisticsData(@Param(Constants.WRAPPER) Wrapper queryWrapper); + + + + /** + * 店铺统计列表 + * + * @param page 分页 + * @param queryWrapper 查询参数 + * @return 店铺统计列表 + */ + @Select("SELECT store_id AS storeId,store_name AS storeName,SUM(final_price) AS price,SUM(num) AS num FROM li_store_flow ${ew.customSqlSegment}") + List getStoreStatisticsData(IPage page, @Param(Constants.WRAPPER) Wrapper queryWrapper); + } \ No newline at end of file diff --git a/framework/src/main/java/cn/lili/modules/statistics/mapper/StoreStatisticsDataMapper.java b/framework/src/main/java/cn/lili/modules/statistics/mapper/StoreStatisticsMapper.java similarity index 55% rename from framework/src/main/java/cn/lili/modules/statistics/mapper/StoreStatisticsDataMapper.java rename to framework/src/main/java/cn/lili/modules/statistics/mapper/StoreStatisticsMapper.java index 825bbd83..e00ab752 100644 --- a/framework/src/main/java/cn/lili/modules/statistics/mapper/StoreStatisticsDataMapper.java +++ b/framework/src/main/java/cn/lili/modules/statistics/mapper/StoreStatisticsMapper.java @@ -3,6 +3,7 @@ package cn.lili.modules.statistics.mapper; import cn.lili.modules.order.order.entity.dos.StoreFlow; import cn.lili.modules.statistics.entity.vo.GoodsStatisticsDataVO; import cn.lili.modules.statistics.entity.vo.StoreStatisticsDataVO; +import cn.lili.modules.store.entity.dos.Store; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -18,16 +19,6 @@ import java.util.List; * @author Bulbasaur * @since 2020/11/17 7:34 下午 */ -public interface StoreStatisticsDataMapper extends BaseMapper { - - /** - * 店铺统计列表 - * - * @param page 分页 - * @param queryWrapper 查询参数 - * @return 店铺统计列表 - */ - @Select("SELECT store_id AS storeId,store_name AS storeName,SUM(final_price) AS price,SUM(num) AS num FROM li_store_flow ${ew.customSqlSegment}") - List getStoreStatisticsData(IPage page, @Param(Constants.WRAPPER) Wrapper queryWrapper); +public interface StoreStatisticsMapper extends BaseMapper { } \ No newline at end of file diff --git a/framework/src/main/java/cn/lili/modules/statistics/service/AfterSaleStatisticsService.java b/framework/src/main/java/cn/lili/modules/statistics/service/AfterSaleStatisticsService.java new file mode 100644 index 00000000..1ff782f4 --- /dev/null +++ b/framework/src/main/java/cn/lili/modules/statistics/service/AfterSaleStatisticsService.java @@ -0,0 +1,24 @@ +package cn.lili.modules.statistics.service; + +import cn.lili.modules.goods.entity.dos.Goods; +import cn.lili.modules.goods.entity.enums.GoodsAuthEnum; +import cn.lili.modules.goods.entity.enums.GoodsStatusEnum; +import cn.lili.modules.order.aftersale.entity.dos.AfterSale; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * 售后统计业务层 + * + * @author Bulbasaur + * @since 2020/12/9 11:06 + */ +public interface AfterSaleStatisticsService extends IService { + + /** + * 获取待处理售后数量 + * + * @param serviceType 售后类型 + * @return 待处理售后数量 + */ + Integer applyNum(String serviceType); +} \ No newline at end of file diff --git a/framework/src/main/java/cn/lili/modules/statistics/service/BillStatisticsService.java b/framework/src/main/java/cn/lili/modules/statistics/service/BillStatisticsService.java new file mode 100644 index 00000000..12dc07a8 --- /dev/null +++ b/framework/src/main/java/cn/lili/modules/statistics/service/BillStatisticsService.java @@ -0,0 +1,30 @@ +package cn.lili.modules.statistics.service; + +import cn.hutool.core.date.DateTime; +import cn.lili.modules.store.entity.dos.Bill; +import cn.lili.modules.store.entity.dto.BillSearchParams; +import cn.lili.modules.store.entity.enums.BillStatusEnum; +import cn.lili.modules.store.entity.vos.BillListVO; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.service.IService; +import org.springframework.cache.annotation.CacheConfig; + +import javax.servlet.http.HttpServletResponse; +import java.util.Date; + +/** + * 结算单统计 + * + * @author Chopper + * @since 2020/11/17 4:28 下午 + */ +public interface BillStatisticsService extends IService { + + /** + * 商家待结算数量 + * + * @param billStatusEnum 结算单类型 + * @return 待结算商家数量 + */ + Integer billNum(BillStatusEnum billStatusEnum); +} \ No newline at end of file diff --git a/framework/src/main/java/cn/lili/modules/statistics/service/DistributionCashStatisticsService.java b/framework/src/main/java/cn/lili/modules/statistics/service/DistributionCashStatisticsService.java new file mode 100644 index 00000000..07983278 --- /dev/null +++ b/framework/src/main/java/cn/lili/modules/statistics/service/DistributionCashStatisticsService.java @@ -0,0 +1,25 @@ +package cn.lili.modules.statistics.service; + +import cn.lili.common.vo.PageVO; +import cn.lili.modules.distribution.entity.dos.DistributionCash; +import cn.lili.modules.distribution.entity.vos.DistributionCashSearchParams; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.service.IService; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestParam; + +/** + * 分销佣金统计 + * + * @author pikachu + * @since 2020-03-14 23:04:56 + */ +public interface DistributionCashStatisticsService extends IService { + + /** + * 待处理分销员提现申请数量 + * + * @return 待处理分销员提现申请数量 + */ + Integer newDistributionCash(); +} \ No newline at end of file diff --git a/framework/src/main/java/cn/lili/modules/statistics/service/GoodsStatisticsService.java b/framework/src/main/java/cn/lili/modules/statistics/service/GoodsStatisticsService.java new file mode 100644 index 00000000..925a6683 --- /dev/null +++ b/framework/src/main/java/cn/lili/modules/statistics/service/GoodsStatisticsService.java @@ -0,0 +1,37 @@ +package cn.lili.modules.statistics.service; + +import cn.lili.modules.goods.entity.dos.Goods; +import cn.lili.modules.goods.entity.enums.GoodsAuthEnum; +import cn.lili.modules.goods.entity.enums.GoodsStatusEnum; +import cn.lili.modules.order.order.entity.dos.StoreFlow; +import cn.lili.modules.statistics.entity.dto.GoodsStatisticsQueryParam; +import cn.lili.modules.statistics.entity.vo.CategoryStatisticsDataVO; +import cn.lili.modules.statistics.entity.vo.GoodsStatisticsDataVO; +import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.List; + +/** + * 商品统计业务层 + * + * @author Bulbasaur + * @since 2020/12/9 11:06 + */ +public interface GoodsStatisticsService extends IService { + + /** + * 获取所有的已上架的商品数量 + * + * @param goodsAuthEnum 商品审核枚举 + * @param goodsStatusEnum 商品状态枚举 + * @return 所有的已上架的商品数量 + */ + Integer goodsNum(GoodsStatusEnum goodsStatusEnum, GoodsAuthEnum goodsAuthEnum); + + /** + * 获取今天的已上架的商品数量 + * + * @return 今天的已上架的商品数量 + */ + Integer todayUpperNum(); +} \ No newline at end of file diff --git a/framework/src/main/java/cn/lili/modules/statistics/service/MemberEvaluationStatisticsService.java b/framework/src/main/java/cn/lili/modules/statistics/service/MemberEvaluationStatisticsService.java new file mode 100644 index 00000000..8efb56f2 --- /dev/null +++ b/framework/src/main/java/cn/lili/modules/statistics/service/MemberEvaluationStatisticsService.java @@ -0,0 +1,34 @@ +package cn.lili.modules.statistics.service; + +import cn.lili.modules.member.entity.dos.MemberEvaluation; +import cn.lili.modules.member.entity.dto.EvaluationQueryParams; +import cn.lili.modules.member.entity.dto.MemberEvaluationDTO; +import cn.lili.modules.member.entity.vo.EvaluationNumberVO; +import cn.lili.modules.member.entity.vo.MemberEvaluationListVO; +import cn.lili.modules.member.entity.vo.MemberEvaluationVO; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * 会员商品评价统计 + * + * @author Bulbasaur + * @since 2020-02-25 14:10:16 + */ +public interface MemberEvaluationStatisticsService extends IService { + + /** + * 获取今天新增的评价数量 + * + * @return 今日评价数量 + */ + Integer todayMemberEvaluation(); + + /** + * 获取等待回复评价数量 + * + * @return 等待回复评价数量 + */ + Integer getWaitReplyNum(); + +} \ No newline at end of file diff --git a/framework/src/main/java/cn/lili/modules/statistics/service/MemberStatisticsDataService.java b/framework/src/main/java/cn/lili/modules/statistics/service/MemberStatisticsService.java similarity index 93% rename from framework/src/main/java/cn/lili/modules/statistics/service/MemberStatisticsDataService.java rename to framework/src/main/java/cn/lili/modules/statistics/service/MemberStatisticsService.java index 5cfb280f..0f96bb73 100644 --- a/framework/src/main/java/cn/lili/modules/statistics/service/MemberStatisticsDataService.java +++ b/framework/src/main/java/cn/lili/modules/statistics/service/MemberStatisticsService.java @@ -13,7 +13,7 @@ import java.util.List; * @author Bulbasaur * @since 2020/12/9 11:06 */ -public interface MemberStatisticsDataService extends IService { +public interface MemberStatisticsService extends IService { /** * 获取会员数量 diff --git a/framework/src/main/java/cn/lili/modules/statistics/service/OrderComplaintStatisticsService.java b/framework/src/main/java/cn/lili/modules/statistics/service/OrderComplaintStatisticsService.java new file mode 100644 index 00000000..16a896fe --- /dev/null +++ b/framework/src/main/java/cn/lili/modules/statistics/service/OrderComplaintStatisticsService.java @@ -0,0 +1,20 @@ +package cn.lili.modules.statistics.service; + +import cn.lili.modules.order.order.entity.dos.OrderComplaint; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * 交易投诉统计 + * + * @author paulG + * @since 2020/12/4 + **/ +public interface OrderComplaintStatisticsService extends IService { + + /** + * 待处理投诉数量 + * + * @return 待处理投诉数量 + */ + Integer waitComplainNum(); +} diff --git a/framework/src/main/java/cn/lili/modules/statistics/service/OrderStatisticsDataService.java b/framework/src/main/java/cn/lili/modules/statistics/service/OrderStatisticsService.java similarity index 94% rename from framework/src/main/java/cn/lili/modules/statistics/service/OrderStatisticsDataService.java rename to framework/src/main/java/cn/lili/modules/statistics/service/OrderStatisticsService.java index cdc192f5..dc93ef7e 100644 --- a/framework/src/main/java/cn/lili/modules/statistics/service/OrderStatisticsDataService.java +++ b/framework/src/main/java/cn/lili/modules/statistics/service/OrderStatisticsService.java @@ -15,7 +15,7 @@ import java.util.Map; * @author Bulbasaur * @since 2020/12/9 11:06 */ -public interface OrderStatisticsDataService extends IService { +public interface OrderStatisticsService extends IService { /** * 订单统计概览 diff --git a/framework/src/main/java/cn/lili/modules/statistics/service/PlatformViewDataService.java b/framework/src/main/java/cn/lili/modules/statistics/service/PlatformViewService.java similarity index 93% rename from framework/src/main/java/cn/lili/modules/statistics/service/PlatformViewDataService.java rename to framework/src/main/java/cn/lili/modules/statistics/service/PlatformViewService.java index 526ccdb4..789cb119 100644 --- a/framework/src/main/java/cn/lili/modules/statistics/service/PlatformViewDataService.java +++ b/framework/src/main/java/cn/lili/modules/statistics/service/PlatformViewService.java @@ -15,7 +15,7 @@ import java.util.List; * @author Bulbasaur * @since 2020/12/9 11:06 */ -public interface PlatformViewDataService extends IService { +public interface PlatformViewService extends IService { /** diff --git a/framework/src/main/java/cn/lili/modules/statistics/service/SeckillStatisticsService.java b/framework/src/main/java/cn/lili/modules/statistics/service/SeckillStatisticsService.java new file mode 100644 index 00000000..68cb51f0 --- /dev/null +++ b/framework/src/main/java/cn/lili/modules/statistics/service/SeckillStatisticsService.java @@ -0,0 +1,26 @@ +package cn.lili.modules.statistics.service; + +import cn.lili.common.vo.PageVO; +import cn.lili.modules.promotion.entity.dos.Seckill; +import cn.lili.modules.promotion.entity.vos.SeckillSearchParams; +import cn.lili.modules.promotion.entity.vos.SeckillVO; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * 秒杀统计 + * + * @author Chopper + * @since 2020/11/18 9:45 上午 + */ +public interface SeckillStatisticsService extends IService { + + + /** + * 获取当前可参与的活动数量 + * + * @return 可参与活动数量 + */ + Integer getApplyNum(); + +} \ No newline at end of file diff --git a/framework/src/main/java/cn/lili/modules/statistics/service/GoodsStatisticsDataService.java b/framework/src/main/java/cn/lili/modules/statistics/service/StoreFlowStatisticsService.java similarity index 61% rename from framework/src/main/java/cn/lili/modules/statistics/service/GoodsStatisticsDataService.java rename to framework/src/main/java/cn/lili/modules/statistics/service/StoreFlowStatisticsService.java index 0752a97c..6fa7c491 100644 --- a/framework/src/main/java/cn/lili/modules/statistics/service/GoodsStatisticsDataService.java +++ b/framework/src/main/java/cn/lili/modules/statistics/service/StoreFlowStatisticsService.java @@ -1,20 +1,26 @@ package cn.lili.modules.statistics.service; +import cn.lili.modules.goods.entity.dos.Goods; +import cn.lili.modules.goods.entity.enums.GoodsAuthEnum; +import cn.lili.modules.goods.entity.enums.GoodsStatusEnum; import cn.lili.modules.order.order.entity.dos.StoreFlow; import cn.lili.modules.statistics.entity.dto.GoodsStatisticsQueryParam; import cn.lili.modules.statistics.entity.vo.CategoryStatisticsDataVO; import cn.lili.modules.statistics.entity.vo.GoodsStatisticsDataVO; +import cn.lili.modules.statistics.entity.vo.StoreStatisticsDataVO; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; /** - * 商品统计业务层 + * 流水统计业务层 * * @author Bulbasaur * @since 2020/12/9 11:06 */ -public interface GoodsStatisticsDataService extends IService { +public interface StoreFlowStatisticsService extends IService { /** * 查询热卖商品 @@ -35,4 +41,11 @@ public interface GoodsStatisticsDataService extends IService { */ List getCategoryStatisticsData(GoodsStatisticsQueryParam goodsStatisticsQueryParam); + /** + * 店铺流水 根据店铺 统计 + * @param page + * @param queryWrapper + * @return + */ + List getStoreStatisticsData(Page page, QueryWrapper queryWrapper); } \ No newline at end of file diff --git a/framework/src/main/java/cn/lili/modules/statistics/service/StoreStatisticsService.java b/framework/src/main/java/cn/lili/modules/statistics/service/StoreStatisticsService.java new file mode 100644 index 00000000..6fa3af61 --- /dev/null +++ b/framework/src/main/java/cn/lili/modules/statistics/service/StoreStatisticsService.java @@ -0,0 +1,37 @@ +package cn.lili.modules.statistics.service; + +import cn.lili.modules.goods.entity.dos.Goods; +import cn.lili.modules.goods.entity.enums.GoodsAuthEnum; +import cn.lili.modules.goods.entity.enums.GoodsStatusEnum; +import cn.lili.modules.store.entity.dos.Store; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * 店铺统计业务层 + * + * @author Bulbasaur + * @since 2020/12/9 11:06 + */ +public interface StoreStatisticsService extends IService { + + /** + * 获取待审核店铺数量 + * + * @return 待审核店铺数量 + */ + Integer auditNum(); + + /** + * 获取所有店铺数量 + * + * @return 店铺总数 + */ + Integer storeNum(); + + /** + * 获取今天的店铺数量 + * + * @return 今天的店铺数量 + */ + Integer todayStoreNum(); +} \ No newline at end of file diff --git a/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/AfterSaleStatisticsServiceImpl.java b/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/AfterSaleStatisticsServiceImpl.java new file mode 100644 index 00000000..43d7599e --- /dev/null +++ b/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/AfterSaleStatisticsServiceImpl.java @@ -0,0 +1,38 @@ +package cn.lili.modules.statistics.serviceimpl; + +import cn.hutool.core.text.CharSequenceUtil; +import cn.lili.common.security.AuthUser; +import cn.lili.common.security.context.UserContext; +import cn.lili.common.security.enums.UserEnums; +import cn.lili.modules.order.aftersale.entity.dos.AfterSale; +import cn.lili.modules.order.trade.entity.enums.AfterSaleStatusEnum; +import cn.lili.modules.statistics.mapper.AfterSaleStatisticsMapper; +import cn.lili.modules.statistics.service.AfterSaleStatisticsService; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +import java.util.Objects; + +/** + * 售后统计业务层实现 + * + * @author Bulbasaur + * @since 2020/12/9 11:30 + */ +@Service +public class AfterSaleStatisticsServiceImpl extends ServiceImpl implements AfterSaleStatisticsService { + + + @Override + public Integer applyNum(String serviceType) { + AuthUser authUser = Objects.requireNonNull(UserContext.getCurrentUser()); + LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(); + queryWrapper.eq(AfterSale::getServiceStatus, AfterSaleStatusEnum.APPLY.name()); + queryWrapper.eq(CharSequenceUtil.isNotEmpty(serviceType), AfterSale::getServiceType, serviceType); + queryWrapper.eq(CharSequenceUtil.equals(authUser.getRole().name(), UserEnums.STORE.name()), + AfterSale::getStoreId, authUser.getStoreId()); + return this.count(queryWrapper); + } +} diff --git a/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/BillStatisticsServiceImpl.java b/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/BillStatisticsServiceImpl.java new file mode 100644 index 00000000..5af8f636 --- /dev/null +++ b/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/BillStatisticsServiceImpl.java @@ -0,0 +1,69 @@ +package cn.lili.modules.statistics.serviceimpl; + +import cn.hutool.core.date.DateTime; +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.io.IoUtil; +import cn.hutool.poi.excel.ExcelUtil; +import cn.hutool.poi.excel.ExcelWriter; +import cn.lili.common.enums.ResultCode; +import cn.lili.common.exception.ServiceException; +import cn.lili.common.security.context.UserContext; +import cn.lili.common.security.enums.UserEnums; +import cn.lili.common.utils.CurrencyUtil; +import cn.lili.common.utils.SnowFlake; +import cn.lili.common.utils.StringUtils; +import cn.lili.modules.order.order.entity.dos.StoreFlow; +import cn.lili.modules.order.order.entity.enums.FlowTypeEnum; +import cn.lili.modules.order.order.service.StoreFlowService; +import cn.lili.modules.statistics.mapper.BillStatisticsMapper; +import cn.lili.modules.statistics.service.BillStatisticsService; +import cn.lili.modules.store.entity.dos.Bill; +import cn.lili.modules.store.entity.dto.BillSearchParams; +import cn.lili.modules.store.entity.enums.BillStatusEnum; +import cn.lili.modules.store.entity.vos.BillListVO; +import cn.lili.modules.store.entity.vos.StoreDetailVO; +import cn.lili.modules.store.entity.vos.StoreFlowPayDownloadVO; +import cn.lili.modules.store.entity.vos.StoreFlowRefundDownloadVO; +import cn.lili.modules.store.mapper.BillMapper; +import cn.lili.modules.store.service.BillService; +import cn.lili.modules.store.service.StoreDetailService; +import cn.lili.mybatis.util.PageUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Propagation; +import org.springframework.transaction.annotation.Transactional; + +import javax.servlet.ServletOutputStream; +import javax.servlet.http.HttpServletResponse; +import java.net.URLEncoder; +import java.util.Date; +import java.util.List; + +/** + * 结算单统计 + * + * @author Chopper + * @since 2020/11/17 4:28 下午 + */ +@Service +@Transactional(rollbackFor = Exception.class) +public class BillStatisticsServiceImpl extends ServiceImpl implements BillStatisticsService { + + + @Override + public Integer billNum(BillStatusEnum billStatusEnum) { + LambdaUpdateWrapper lambdaUpdateWrapper = Wrappers.lambdaUpdate(); + lambdaUpdateWrapper.eq(Bill::getBillStatus, billStatusEnum.name()); + lambdaUpdateWrapper.eq(StringUtils.equals(UserContext.getCurrentUser().getRole().name(), UserEnums.STORE.name()), + Bill::getStoreId, UserContext.getCurrentUser().getStoreId()); + return this.count(lambdaUpdateWrapper); + } + + +} diff --git a/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/DistributionCashStatisticsServiceImpl.java b/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/DistributionCashStatisticsServiceImpl.java new file mode 100644 index 00000000..bff4139d --- /dev/null +++ b/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/DistributionCashStatisticsServiceImpl.java @@ -0,0 +1,57 @@ +package cn.lili.modules.statistics.serviceimpl; + +import cn.lili.common.enums.ResultCode; +import cn.lili.common.exception.ServiceException; +import cn.lili.common.properties.RocketmqCustomProperties; +import cn.lili.common.utils.CurrencyUtil; +import cn.lili.common.utils.SnowFlake; +import cn.lili.common.vo.PageVO; +import cn.lili.modules.distribution.entity.dos.Distribution; +import cn.lili.modules.distribution.entity.dos.DistributionCash; +import cn.lili.modules.distribution.entity.enums.DistributionStatusEnum; +import cn.lili.modules.distribution.entity.vos.DistributionCashSearchParams; +import cn.lili.modules.distribution.mapper.DistributionCashMapper; +import cn.lili.modules.distribution.service.DistributionCashService; +import cn.lili.modules.distribution.service.DistributionService; +import cn.lili.modules.statistics.mapper.DistributionCashStatisticsMapper; +import cn.lili.modules.statistics.service.DistributionCashStatisticsService; +import cn.lili.modules.wallet.entity.dto.MemberWalletUpdateDTO; +import cn.lili.modules.wallet.entity.dto.MemberWithdrawalMessage; +import cn.lili.modules.wallet.entity.enums.DepositServiceTypeEnum; +import cn.lili.modules.wallet.entity.enums.MemberWithdrawalDestinationEnum; +import cn.lili.modules.wallet.entity.enums.WithdrawStatusEnum; +import cn.lili.modules.wallet.service.MemberWalletService; +import cn.lili.mybatis.util.PageUtil; +import cn.lili.rocketmq.RocketmqSendCallbackBuilder; +import cn.lili.rocketmq.tags.MemberTagsEnum; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.apache.rocketmq.spring.core.RocketMQTemplate; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.Date; + + +/** + * 分销佣金统计层实现 + * + * @author pikachu + * @since 2020-03-126 18:04:56 + */ +@Service +@Transactional(rollbackFor = Exception.class) +public class DistributionCashStatisticsServiceImpl extends ServiceImpl + implements DistributionCashStatisticsService { + + + @Override + public Integer newDistributionCash() { + QueryWrapper queryWrapper = Wrappers.query(); + queryWrapper.eq("distribution_cash_status", WithdrawStatusEnum.APPLY.name()); + return this.count(queryWrapper); + } +} \ No newline at end of file diff --git a/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/GoodsStatisticsServiceImpl.java b/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/GoodsStatisticsServiceImpl.java new file mode 100644 index 00000000..120d9c15 --- /dev/null +++ b/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/GoodsStatisticsServiceImpl.java @@ -0,0 +1,56 @@ +package cn.lili.modules.statistics.serviceimpl; + +import cn.hutool.core.date.DateTime; +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.text.CharSequenceUtil; +import cn.lili.common.security.AuthUser; +import cn.lili.common.security.context.UserContext; +import cn.lili.common.security.enums.UserEnums; +import cn.lili.modules.goods.entity.dos.Goods; +import cn.lili.modules.goods.entity.enums.GoodsAuthEnum; +import cn.lili.modules.goods.entity.enums.GoodsStatusEnum; +import cn.lili.modules.statistics.mapper.GoodsStatisticsMapper; +import cn.lili.modules.statistics.service.GoodsStatisticsService; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +import java.util.Objects; + +/** + * 商品统计业务层实现 + * + * @author Bulbasaur + * @since 2020/12/9 11:30 + */ +@Service +public class GoodsStatisticsServiceImpl extends ServiceImpl implements GoodsStatisticsService { + + @Override + public Integer goodsNum(GoodsStatusEnum goodsStatusEnum, GoodsAuthEnum goodsAuthEnum) { + LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(); + + queryWrapper.eq(Goods::getDeleteFlag, false); + + if (goodsStatusEnum != null) { + queryWrapper.eq(Goods::getMarketEnable, goodsStatusEnum.name()); + } + if (goodsAuthEnum != null) { + queryWrapper.eq(Goods::getIsAuth, goodsAuthEnum.name()); + } + AuthUser currentUser = Objects.requireNonNull(UserContext.getCurrentUser()); + queryWrapper.eq(CharSequenceUtil.equals(currentUser.getRole().name(), UserEnums.STORE.name()), + Goods::getStoreId, currentUser.getStoreId()); + + return this.count(queryWrapper); + } + + @Override + public Integer todayUpperNum() { + LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(); + queryWrapper.eq(Goods::getMarketEnable, GoodsStatusEnum.UPPER.name()); + queryWrapper.ge(Goods::getCreateTime, DateUtil.beginOfDay(new DateTime())); + return this.count(queryWrapper); + } +} diff --git a/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/IndexStatisticsServiceImpl.java b/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/IndexStatisticsServiceImpl.java index 501dbb92..e4982190 100644 --- a/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/IndexStatisticsServiceImpl.java +++ b/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/IndexStatisticsServiceImpl.java @@ -5,18 +5,11 @@ import cn.hutool.core.date.DateTime; import cn.lili.common.security.context.UserContext; import cn.lili.common.security.enums.UserEnums; import cn.lili.common.utils.BeanUtil; -import cn.lili.modules.distribution.service.DistributionCashService; import cn.lili.modules.goods.entity.enums.GoodsAuthEnum; import cn.lili.modules.goods.entity.enums.GoodsStatusEnum; -import cn.lili.modules.goods.service.GoodsService; -import cn.lili.modules.member.service.MemberEvaluationService; import cn.lili.modules.order.order.entity.enums.FlowTypeEnum; import cn.lili.modules.order.order.entity.enums.OrderStatusEnum; -import cn.lili.modules.order.aftersale.service.AfterSaleService; -import cn.lili.modules.order.order.service.OrderComplaintService; import cn.lili.modules.order.trade.entity.enums.AfterSaleTypeEnum; -import cn.lili.modules.promotion.service.SeckillService; -import cn.lili.modules.statistics.mapper.StoreStatisticsDataMapper; import cn.lili.modules.statistics.entity.dto.GoodsStatisticsQueryParam; import cn.lili.modules.statistics.entity.dto.StatisticsQueryParam; import cn.lili.modules.statistics.entity.enums.SearchTypeEnum; @@ -24,8 +17,6 @@ import cn.lili.modules.statistics.entity.vo.*; import cn.lili.modules.statistics.service.*; import cn.lili.modules.statistics.util.StatisticsDateUtil; import cn.lili.modules.store.entity.enums.BillStatusEnum; -import cn.lili.modules.store.service.BillService; -import cn.lili.modules.store.service.StoreService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -50,84 +41,79 @@ public class IndexStatisticsServiceImpl implements IndexStatisticsService { * 订单统计 */ @Autowired - private OrderStatisticsDataService orderStatisticsDataService; + private OrderStatisticsService orderStatisticsService; /** * 会员统计 */ @Autowired - private MemberStatisticsDataService memberStatisticsDataService; + private MemberStatisticsService memberStatisticsService; /** * 商品统计 */ @Autowired - private GoodsStatisticsDataService goodsStatisticsDataService; + private GoodsStatisticsService goodsStatisticsService; /** - * 店铺统计 + * 商品统计 */ @Autowired - private StoreStatisticsDataMapper storeStatisticsDataMapper; - /** - * 商品 - */ - @Autowired - private GoodsService goodsService; + private StoreFlowStatisticsService storeFlowStatisticsService; /** * 店铺 */ @Autowired - private StoreService storeService; + private StoreStatisticsService storeStatisticsService; /** * 店铺 */ @Autowired - private MemberEvaluationService memberEvaluationService; + private MemberEvaluationStatisticsService memberEvaluationStatisticsService; /** * 售后 */ @Autowired - private AfterSaleService afterSaleService; + private AfterSaleStatisticsService afterSaleStatisticsService; /** * 投诉 */ @Autowired - private OrderComplaintService orderComplaintService; + private OrderComplaintStatisticsService orderComplaintStatisticsService; /** * 分销员提现 */ @Autowired - private DistributionCashService distributionCashService; + private DistributionCashStatisticsService distributionCashStatisticsService; /** * 平台PV统计 */ @Autowired - private PlatformViewDataService platformViewDataService; + private PlatformViewService platformViewService; /** * 结算单 */ @Autowired - private BillService billService; + private BillStatisticsService billStatisticsService; /** * 秒杀活动 */ @Autowired - private SeckillService seckillService; + private SeckillStatisticsService seckillStatisticsService; @Override public IndexNoticeVO indexNotice() { IndexNoticeVO indexNoticeVO = new IndexNoticeVO(); //商品审核 - indexNoticeVO.setGoods(goodsService.goodsNum(null, GoodsAuthEnum.TOBEAUDITED)); + indexNoticeVO.setGoods(goodsStatisticsService.goodsNum(null, GoodsAuthEnum.TOBEAUDITED)); //店铺入驻审核 - indexNoticeVO.setStore(storeService.auditNum()); + indexNoticeVO.setStore(storeStatisticsService.auditNum()); //售后申请 - indexNoticeVO.setRefund(afterSaleService.applyNum(null)); + indexNoticeVO.setRefund(afterSaleStatisticsService.applyNum(null)); //投诉审核 - indexNoticeVO.setComplain(orderComplaintService.waitComplainNum()); + indexNoticeVO.setComplain(orderComplaintStatisticsService.waitComplainNum()); //分销员提现审核 - indexNoticeVO.setDistributionCash(distributionCashService.newDistributionCash()); + indexNoticeVO.setDistributionCash(distributionCashStatisticsService.newDistributionCash()); //待处理商家结算 - indexNoticeVO.setWaitPayBill(billService.billNum(BillStatusEnum.CHECK)); + indexNoticeVO.setWaitPayBill(billStatisticsService.billNum(BillStatusEnum.CHECK)); return indexNoticeVO; } @@ -138,31 +124,31 @@ public class IndexStatisticsServiceImpl implements IndexStatisticsService { IndexStatisticsVO indexStatisticsVO = new IndexStatisticsVO(); //获取总订单数量 - indexStatisticsVO.setOrderNum(orderStatisticsDataService.orderNum(null)); + indexStatisticsVO.setOrderNum(orderStatisticsService.orderNum(null)); //获取总会员数量 - indexStatisticsVO.setMemberNum(memberStatisticsDataService.getMemberCount()); + indexStatisticsVO.setMemberNum(memberStatisticsService.getMemberCount()); //获取总上架商品数量 - indexStatisticsVO.setGoodsNum(goodsService.goodsNum(GoodsStatusEnum.UPPER, GoodsAuthEnum.PASS)); + indexStatisticsVO.setGoodsNum(goodsStatisticsService.goodsNum(GoodsStatusEnum.UPPER, GoodsAuthEnum.PASS)); //获取总店铺数量 - indexStatisticsVO.setStoreNum(storeService.storeNum()); + indexStatisticsVO.setStoreNum(storeStatisticsService.storeNum()); //下单统计 - Map map = orderStatisticsDataService.getOrderStatisticsPrice(); + Map map = orderStatisticsService.getOrderStatisticsPrice(); //今日下单数 indexStatisticsVO.setTodayOrderNum(map.get("num") == null ? 0L : (Long) map.get("num")); //今日下单金额 indexStatisticsVO.setTodayOrderPrice(map.get("price") == null ? 0D : (Double) map.get("price")); //今日新增会员数量 - indexStatisticsVO.setTodayMemberNum(memberStatisticsDataService.todayMemberNum()); + indexStatisticsVO.setTodayMemberNum(memberStatisticsService.todayMemberNum()); //今日新增商品数量 - indexStatisticsVO.setTodayGoodsNum(goodsService.todayUpperNum()); + indexStatisticsVO.setTodayGoodsNum(goodsStatisticsService.todayUpperNum()); //今日新增店铺数量 - indexStatisticsVO.setTodayStoreNum(storeService.todayStoreNum()); + indexStatisticsVO.setTodayStoreNum(storeStatisticsService.todayStoreNum()); //今日新增评论数量 - indexStatisticsVO.setTodayMemberEvaluation(memberEvaluationService.todayMemberEvaluation()); + indexStatisticsVO.setTodayMemberEvaluation(memberEvaluationStatisticsService.todayMemberEvaluation()); //当前在线人数 - indexStatisticsVO.setCurrentNumberPeopleOnline(platformViewDataService.online()); + indexStatisticsVO.setCurrentNumberPeopleOnline(platformViewService.online()); //流量统计 @@ -170,19 +156,19 @@ public class IndexStatisticsServiceImpl implements IndexStatisticsService { //今日uv queryParam.setSearchType(SearchTypeEnum.TODAY.name()); - indexStatisticsVO.setTodayUV(platformViewDataService.countUv(queryParam)); + indexStatisticsVO.setTodayUV(platformViewService.countUv(queryParam)); // 昨日访问数UV queryParam.setSearchType(SearchTypeEnum.YESTERDAY.name()); - indexStatisticsVO.setYesterdayUV(platformViewDataService.countUv(queryParam)); + indexStatisticsVO.setYesterdayUV(platformViewService.countUv(queryParam)); // 前七日访问数UV queryParam.setSearchType(SearchTypeEnum.LAST_SEVEN.name()); - indexStatisticsVO.setLastSevenUV(platformViewDataService.countUv(queryParam)); + indexStatisticsVO.setLastSevenUV(platformViewService.countUv(queryParam)); // 三十日访问数UV queryParam.setSearchType(SearchTypeEnum.LAST_THIRTY.name()); - indexStatisticsVO.setLastThirtyUV(platformViewDataService.countUv(queryParam)); + indexStatisticsVO.setLastThirtyUV(platformViewService.countUv(queryParam)); return indexStatisticsVO; @@ -195,9 +181,9 @@ public class IndexStatisticsServiceImpl implements IndexStatisticsService { StoreIndexStatisticsVO storeIndexStatisticsVO = new StoreIndexStatisticsVO(); //商品总数量 - storeIndexStatisticsVO.setGoodsNum(goodsService.goodsNum(GoodsStatusEnum.UPPER, null)); + storeIndexStatisticsVO.setGoodsNum(goodsStatisticsService.goodsNum(GoodsStatusEnum.UPPER, null)); //订单总数量、订单总金额 - Map map = orderStatisticsDataService.getStoreOrderStatisticsPrice(); + Map map = orderStatisticsService.getStoreOrderStatisticsPrice(); storeIndexStatisticsVO.setOrderNum(Convert.toInt(map.get("num").toString())); storeIndexStatisticsVO.setOrderPrice(map.get("price") != null ? Double.parseDouble(map.get("price").toString()) : 0.0); @@ -205,34 +191,34 @@ public class IndexStatisticsServiceImpl implements IndexStatisticsService { StatisticsQueryParam queryParam = new StatisticsQueryParam(); queryParam.setSearchType(SearchTypeEnum.TODAY.name()); queryParam.setStoreId(storeId); - PlatformViewVO platformViewVO = platformViewDataService.list(queryParam).get(0); + PlatformViewVO platformViewVO = platformViewService.list(queryParam).get(0); storeIndexStatisticsVO.setStoreUV(platformViewVO.getUvNum().intValue()); //待付款订单数量 - storeIndexStatisticsVO.setUnPaidOrder(orderStatisticsDataService.orderNum(OrderStatusEnum.UNPAID.name())); + storeIndexStatisticsVO.setUnPaidOrder(orderStatisticsService.orderNum(OrderStatusEnum.UNPAID.name())); //待发货订单数量 - storeIndexStatisticsVO.setUnDeliveredOrder(orderStatisticsDataService.orderNum(OrderStatusEnum.UNDELIVERED.name())); + storeIndexStatisticsVO.setUnDeliveredOrder(orderStatisticsService.orderNum(OrderStatusEnum.UNDELIVERED.name())); //待收货订单数量 - storeIndexStatisticsVO.setDeliveredOrder(orderStatisticsDataService.orderNum(OrderStatusEnum.DELIVERED.name())); + storeIndexStatisticsVO.setDeliveredOrder(orderStatisticsService.orderNum(OrderStatusEnum.DELIVERED.name())); //待处理退货数量 - storeIndexStatisticsVO.setReturnGoods(afterSaleService.applyNum(AfterSaleTypeEnum.RETURN_GOODS.name())); + storeIndexStatisticsVO.setReturnGoods(afterSaleStatisticsService.applyNum(AfterSaleTypeEnum.RETURN_GOODS.name())); //待处理退款数量 - storeIndexStatisticsVO.setReturnMoney(afterSaleService.applyNum(AfterSaleTypeEnum.RETURN_MONEY.name())); + storeIndexStatisticsVO.setReturnMoney(afterSaleStatisticsService.applyNum(AfterSaleTypeEnum.RETURN_MONEY.name())); //待回复评价数量 - storeIndexStatisticsVO.setMemberEvaluation(memberEvaluationService.getWaitReplyNum()); + storeIndexStatisticsVO.setMemberEvaluation(memberEvaluationStatisticsService.getWaitReplyNum()); //待处理投诉数量 - storeIndexStatisticsVO.setComplaint(orderComplaintService.waitComplainNum()); + storeIndexStatisticsVO.setComplaint(orderComplaintStatisticsService.waitComplainNum()); //待上架商品数量 - storeIndexStatisticsVO.setWaitUpper(goodsService.goodsNum(GoodsStatusEnum.DOWN, null)); + storeIndexStatisticsVO.setWaitUpper(goodsStatisticsService.goodsNum(GoodsStatusEnum.DOWN, null)); //待审核商品数量 - storeIndexStatisticsVO.setWaitAuth(goodsService.goodsNum(null, GoodsAuthEnum.TOBEAUDITED)); + storeIndexStatisticsVO.setWaitAuth(goodsStatisticsService.goodsNum(null, GoodsAuthEnum.TOBEAUDITED)); //可参与秒杀活动数量 - storeIndexStatisticsVO.setSeckillNum(seckillService.getApplyNum()); + storeIndexStatisticsVO.setSeckillNum(seckillStatisticsService.getApplyNum()); //待处理商家结算 - storeIndexStatisticsVO.setWaitPayBill(billService.billNum(BillStatusEnum.OUT)); + storeIndexStatisticsVO.setWaitPayBill(billStatisticsService.billNum(BillStatusEnum.OUT)); return storeIndexStatisticsVO; } @@ -240,7 +226,7 @@ public class IndexStatisticsServiceImpl implements IndexStatisticsService { @Override public List goodsStatistics(GoodsStatisticsQueryParam statisticsQueryParam) { //查询商品 - return goodsStatisticsDataService.getGoodsStatisticsData(statisticsQueryParam, 10); + return storeFlowStatisticsService.getGoodsStatisticsData(statisticsQueryParam, 10); } @Override @@ -261,7 +247,7 @@ public class IndexStatisticsServiceImpl implements IndexStatisticsService { //查询前十条记录 Page page = new Page(1, 10); - return storeStatisticsDataMapper.getStoreStatisticsData(page, queryWrapper); + return storeFlowStatisticsService.getStoreStatisticsData(page, queryWrapper); } diff --git a/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/MemberEvaluationStatisticsServiceImpl.java b/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/MemberEvaluationStatisticsServiceImpl.java new file mode 100644 index 00000000..0d1e885f --- /dev/null +++ b/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/MemberEvaluationStatisticsServiceImpl.java @@ -0,0 +1,78 @@ +package cn.lili.modules.statistics.serviceimpl; + +import cn.hutool.core.date.DateTime; +import cn.hutool.core.date.DateUtil; +import cn.hutool.json.JSONUtil; +import cn.lili.common.enums.ResultCode; +import cn.lili.common.enums.SwitchEnum; +import cn.lili.common.exception.ServiceException; +import cn.lili.common.properties.RocketmqCustomProperties; +import cn.lili.common.security.context.UserContext; +import cn.lili.common.security.enums.UserEnums; +import cn.lili.common.sensitive.SensitiveWordsFilter; +import cn.lili.common.utils.StringUtils; +import cn.lili.modules.goods.entity.dos.GoodsSku; +import cn.lili.modules.goods.service.GoodsSkuService; +import cn.lili.modules.member.entity.dos.Member; +import cn.lili.modules.member.entity.dos.MemberEvaluation; +import cn.lili.modules.member.entity.dto.EvaluationQueryParams; +import cn.lili.modules.member.entity.dto.MemberEvaluationDTO; +import cn.lili.modules.member.entity.enums.EvaluationGradeEnum; +import cn.lili.modules.member.entity.vo.EvaluationNumberVO; +import cn.lili.modules.member.entity.vo.MemberEvaluationListVO; +import cn.lili.modules.member.entity.vo.MemberEvaluationVO; +import cn.lili.modules.member.mapper.MemberEvaluationMapper; +import cn.lili.modules.member.service.MemberEvaluationService; +import cn.lili.modules.member.service.MemberService; +import cn.lili.modules.order.order.entity.dos.Order; +import cn.lili.modules.order.order.entity.dos.OrderItem; +import cn.lili.modules.order.order.entity.enums.CommentStatusEnum; +import cn.lili.modules.order.order.service.OrderItemService; +import cn.lili.modules.order.order.service.OrderService; +import cn.lili.modules.statistics.mapper.MemberEvaluationStatisticsMapper; +import cn.lili.modules.statistics.service.MemberEvaluationStatisticsService; +import cn.lili.mybatis.util.PageUtil; +import cn.lili.rocketmq.RocketmqSendCallbackBuilder; +import cn.lili.rocketmq.tags.GoodsTagsEnum; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.apache.rocketmq.spring.core.RocketMQTemplate; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; +import java.util.List; +import java.util.Map; + +/** + * 会员商品评价业务层实现 + * + * @author Bulbasaur + * @since 2020-02-25 14:10:16 + */ +@Service +@Transactional(rollbackFor = Exception.class) +public class MemberEvaluationStatisticsServiceImpl extends ServiceImpl implements MemberEvaluationStatisticsService { + + + @Override + public Integer todayMemberEvaluation() { + return this.count(new LambdaQueryWrapper().ge(MemberEvaluation::getCreateTime, DateUtil.beginOfDay(new DateTime()))); + } + + @Override + public Integer getWaitReplyNum() { + QueryWrapper queryWrapper = Wrappers.query(); + queryWrapper.eq(StringUtils.equals(UserContext.getCurrentUser().getRole().name(), UserEnums.STORE.name()), + "store_id", UserContext.getCurrentUser().getStoreId()); + queryWrapper.eq("reply_status", false); + return this.count(queryWrapper); + } + +} \ No newline at end of file diff --git a/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/MemberStatisticsDataServiceImpl.java b/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/MemberStatisticsServiceImpl.java similarity index 91% rename from framework/src/main/java/cn/lili/modules/statistics/serviceimpl/MemberStatisticsDataServiceImpl.java rename to framework/src/main/java/cn/lili/modules/statistics/serviceimpl/MemberStatisticsServiceImpl.java index e79dae22..c96c0965 100644 --- a/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/MemberStatisticsDataServiceImpl.java +++ b/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/MemberStatisticsServiceImpl.java @@ -1,11 +1,11 @@ package cn.lili.modules.statistics.serviceimpl; import cn.hutool.core.date.DateUtil; -import cn.lili.modules.statistics.mapper.MemberStatisticsDataMapper; +import cn.lili.modules.statistics.mapper.MemberStatisticsMapper; import cn.lili.modules.statistics.entity.dos.MemberStatisticsData; import cn.lili.modules.statistics.entity.dto.StatisticsQueryParam; import cn.lili.modules.statistics.entity.enums.SearchTypeEnum; -import cn.lili.modules.statistics.service.MemberStatisticsDataService; +import cn.lili.modules.statistics.service.MemberStatisticsService; import cn.lili.modules.statistics.util.StatisticsDateUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; @@ -23,7 +23,7 @@ import java.util.List; * @since 2020/12/9 18:33 */ @Service -public class MemberStatisticsDataServiceImpl extends ServiceImpl implements MemberStatisticsDataService { +public class MemberStatisticsServiceImpl extends ServiceImpl implements MemberStatisticsService { @Override public Integer getMemberCount() { diff --git a/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/OrderComplaintStatisticsServiceImpl.java b/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/OrderComplaintStatisticsServiceImpl.java new file mode 100644 index 00000000..0e43ca6b --- /dev/null +++ b/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/OrderComplaintStatisticsServiceImpl.java @@ -0,0 +1,63 @@ +package cn.lili.modules.statistics.serviceimpl; + +import cn.hutool.core.util.StrUtil; +import cn.lili.common.enums.ResultCode; +import cn.lili.common.exception.ServiceException; +import cn.lili.common.security.AuthUser; +import cn.lili.common.security.OperationalJudgment; +import cn.lili.common.security.context.UserContext; +import cn.lili.common.security.enums.UserEnums; +import cn.lili.common.utils.BeanUtil; +import cn.lili.common.utils.StringUtils; +import cn.lili.common.vo.PageVO; +import cn.lili.modules.goods.entity.dos.GoodsSku; +import cn.lili.modules.goods.service.GoodsSkuService; +import cn.lili.modules.order.aftersale.entity.enums.ComplaintStatusEnum; +import cn.lili.modules.order.order.entity.dos.OrderComplaint; +import cn.lili.modules.order.order.entity.dos.OrderComplaintCommunication; +import cn.lili.modules.order.order.entity.dos.OrderItem; +import cn.lili.modules.order.order.entity.dto.OrderComplaintDTO; +import cn.lili.modules.order.order.entity.enums.OrderComplaintStatusEnum; +import cn.lili.modules.order.order.entity.vo.*; +import cn.lili.modules.order.order.mapper.OrderComplaintMapper; +import cn.lili.modules.order.order.service.OrderComplaintCommunicationService; +import cn.lili.modules.order.order.service.OrderComplaintService; +import cn.lili.modules.order.order.service.OrderItemService; +import cn.lili.modules.order.order.service.OrderService; +import cn.lili.modules.statistics.mapper.OrderComplaintStatisticsMapper; +import cn.lili.modules.statistics.service.OrderComplaintStatisticsService; +import cn.lili.mybatis.util.PageUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.Date; +import java.util.List; +import java.util.Objects; + +/** + * 交易投诉业务层实现 + * + * @author paulG + * @since 2020/12/5 + **/ +@Service +public class OrderComplaintStatisticsServiceImpl extends ServiceImpl implements OrderComplaintStatisticsService { + + + @Override + public Integer waitComplainNum() { + QueryWrapper queryWrapper = Wrappers.query(); + queryWrapper.ne("complain_status", ComplaintStatusEnum.COMPLETE.name()); + queryWrapper.eq(StringUtils.equals(UserContext.getCurrentUser().getRole().name(), UserEnums.STORE.name()), + "store_id", UserContext.getCurrentUser().getStoreId()); + return this.count(queryWrapper); + } + + +} diff --git a/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/OrderStatisticsDataServiceImpl.java b/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/OrderStatisticsServiceImpl.java similarity index 96% rename from framework/src/main/java/cn/lili/modules/statistics/serviceimpl/OrderStatisticsDataServiceImpl.java rename to framework/src/main/java/cn/lili/modules/statistics/serviceimpl/OrderStatisticsServiceImpl.java index 12d1187b..148470ad 100644 --- a/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/OrderStatisticsDataServiceImpl.java +++ b/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/OrderStatisticsServiceImpl.java @@ -11,12 +11,12 @@ import cn.lili.modules.order.order.entity.dos.StoreFlow; import cn.lili.modules.order.order.entity.enums.FlowTypeEnum; import cn.lili.modules.order.order.entity.enums.PayStatusEnum; import cn.lili.modules.order.order.service.OrderService; -import cn.lili.modules.statistics.mapper.OrderStatisticsDataMapper; +import cn.lili.modules.statistics.mapper.OrderStatisticsMapper; import cn.lili.modules.statistics.entity.dto.StatisticsQueryParam; import cn.lili.modules.statistics.entity.vo.OrderOverviewVO; import cn.lili.modules.statistics.entity.vo.OrderStatisticsDataVO; -import cn.lili.modules.statistics.service.OrderStatisticsDataService; -import cn.lili.modules.statistics.service.PlatformViewDataService; +import cn.lili.modules.statistics.service.OrderStatisticsService; +import cn.lili.modules.statistics.service.PlatformViewService; import cn.lili.modules.statistics.util.StatisticsDateUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -34,12 +34,12 @@ import java.util.*; * @since 2020/12/9 17:16 */ @Service -public class OrderStatisticsDataServiceImpl extends ServiceImpl implements OrderStatisticsDataService { +public class OrderStatisticsServiceImpl extends ServiceImpl implements OrderStatisticsService { /** * 平台PV统计 */ @Autowired - private PlatformViewDataService platformViewDataService; + private PlatformViewService platformViewService; /** * 订单 */ @@ -52,7 +52,7 @@ public class OrderStatisticsDataServiceImpl extends ServiceImpl implements PlatformViewDataService { +public class PlatformViewServiceImpl extends ServiceImpl implements PlatformViewService { /** * 在线人数统计 */ @@ -62,7 +62,7 @@ public class PlatformViewDataServiceImpl extends ServiceImpl implements RefundOrderStatisticsService { +public class RefundOrderStatisticsServiceImpl extends ServiceImpl implements RefundOrderStatisticsService { @Override public IPage getRefundOrderStatisticsData(PageVO pageVO, StatisticsQueryParam statisticsQueryParam) { diff --git a/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/SeckillStatisticsServiceImpl.java b/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/SeckillStatisticsServiceImpl.java new file mode 100644 index 00000000..e601376f --- /dev/null +++ b/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/SeckillStatisticsServiceImpl.java @@ -0,0 +1,37 @@ +package cn.lili.modules.statistics.serviceimpl; + +import cn.lili.modules.promotion.entity.dos.Seckill; +import cn.lili.modules.promotion.entity.enums.PromotionStatusEnum; +import cn.lili.modules.statistics.mapper.SeckillStatisticsMapper; +import cn.lili.modules.statistics.service.SeckillStatisticsService; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.Date; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 秒杀活动统计 + * + * @author Chopper + * @since 2020/8/21 + */ +@Service +@Transactional(rollbackFor = Exception.class) +public class SeckillStatisticsServiceImpl extends ServiceImpl implements SeckillStatisticsService { + + + @Override + public Integer getApplyNum() { + LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(); + //秒杀申请时间未超过当前时间 + queryWrapper.ge(Seckill::getApplyEndTime, cn.hutool.core.date.DateUtil.date()); + queryWrapper.eq(Seckill::getPromotionStatus, PromotionStatusEnum.NEW.name()); + return this.count(queryWrapper); + } + +} \ No newline at end of file diff --git a/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/GoodsStatisticsDataServiceImpl.java b/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/StoreFlowStatisticsServiceImpl.java similarity index 81% rename from framework/src/main/java/cn/lili/modules/statistics/serviceimpl/GoodsStatisticsDataServiceImpl.java rename to framework/src/main/java/cn/lili/modules/statistics/serviceimpl/StoreFlowStatisticsServiceImpl.java index 3f101189..144e8205 100644 --- a/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/GoodsStatisticsDataServiceImpl.java +++ b/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/StoreFlowStatisticsServiceImpl.java @@ -3,12 +3,13 @@ package cn.lili.modules.statistics.serviceimpl; import cn.lili.common.utils.StringUtils; import cn.lili.modules.order.order.entity.dos.StoreFlow; import cn.lili.modules.order.order.entity.enums.FlowTypeEnum; -import cn.lili.modules.statistics.mapper.GoodsStatisticsDataMapper; import cn.lili.modules.statistics.entity.dto.GoodsStatisticsQueryParam; import cn.lili.modules.statistics.entity.enums.StatisticsQuery; import cn.lili.modules.statistics.entity.vo.CategoryStatisticsDataVO; import cn.lili.modules.statistics.entity.vo.GoodsStatisticsDataVO; -import cn.lili.modules.statistics.service.GoodsStatisticsDataService; +import cn.lili.modules.statistics.entity.vo.StoreStatisticsDataVO; +import cn.lili.modules.statistics.mapper.StoreFlowStatisticsMapper; +import cn.lili.modules.statistics.service.StoreFlowStatisticsService; import cn.lili.modules.statistics.util.StatisticsDateUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; @@ -26,7 +27,7 @@ import java.util.List; * @since 2020/12/9 11:30 */ @Service -public class GoodsStatisticsDataServiceImpl extends ServiceImpl implements GoodsStatisticsDataService { +public class StoreFlowStatisticsServiceImpl extends ServiceImpl implements StoreFlowStatisticsService { @Override public List getGoodsStatisticsData(GoodsStatisticsQueryParam goodsStatisticsQueryParam, Integer num) { @@ -51,7 +52,17 @@ public class GoodsStatisticsDataServiceImpl extends ServiceImpl getStoreStatisticsData(Page page, QueryWrapper queryWrapper) { + return this.baseMapper.getStoreStatisticsData(page, queryWrapper); + } + /** + * 组织查询条件 + * + * @param goodsStatisticsQueryParam + * @return + */ private QueryWrapper getQueryWrapper(GoodsStatisticsQueryParam goodsStatisticsQueryParam) { QueryWrapper queryWrapper = Wrappers.query(); diff --git a/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/StoreStatisticsServiceImpl.java b/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/StoreStatisticsServiceImpl.java new file mode 100644 index 00000000..1fb8c7c9 --- /dev/null +++ b/framework/src/main/java/cn/lili/modules/statistics/serviceimpl/StoreStatisticsServiceImpl.java @@ -0,0 +1,46 @@ +package cn.lili.modules.statistics.serviceimpl; + +import cn.hutool.core.date.DateTime; +import cn.hutool.core.date.DateUtil; +import cn.lili.modules.statistics.mapper.StoreStatisticsMapper; +import cn.lili.modules.statistics.service.StoreStatisticsService; +import cn.lili.modules.store.entity.dos.Store; +import cn.lili.modules.store.entity.enums.StoreStatusEnum; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + * 商品统计业务层实现 + * + * @author Bulbasaur + * @since 2020/12/9 11:30 + */ +@Service +public class StoreStatisticsServiceImpl extends ServiceImpl implements StoreStatisticsService { + + + @Override + public Integer auditNum() { + LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(); + queryWrapper.eq(Store::getStoreDisable, StoreStatusEnum.APPLYING.name()); + return this.count(queryWrapper); + } + + @Override + public Integer storeNum() { + LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(); + queryWrapper.eq(Store::getStoreDisable, StoreStatusEnum.OPEN.name()); + return this.count(queryWrapper); + } + + @Override + public Integer todayStoreNum() { + LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(); + queryWrapper.eq(Store::getStoreDisable, StoreStatusEnum.OPEN.name()); + queryWrapper.ge(Store::getCreateTime, DateUtil.beginOfDay(new DateTime())); + return this.count(queryWrapper); + } + +} diff --git a/framework/src/main/java/cn/lili/modules/store/service/BillService.java b/framework/src/main/java/cn/lili/modules/store/service/BillService.java index c640df26..a068db0b 100644 --- a/framework/src/main/java/cn/lili/modules/store/service/BillService.java +++ b/framework/src/main/java/cn/lili/modules/store/service/BillService.java @@ -66,14 +66,6 @@ public interface BillService extends IService { */ boolean complete(String id); - /** - * 商家待结算数量 - * - * @param billStatusEnum 结算单类型 - * @return 待结算商家数量 - */ - Integer billNum(BillStatusEnum billStatusEnum); - /** * 下载结算单 * @response response diff --git a/framework/src/main/java/cn/lili/modules/store/service/StoreService.java b/framework/src/main/java/cn/lili/modules/store/service/StoreService.java index 578fd291..d25a618d 100644 --- a/framework/src/main/java/cn/lili/modules/store/service/StoreService.java +++ b/framework/src/main/java/cn/lili/modules/store/service/StoreService.java @@ -102,26 +102,6 @@ public interface StoreService extends IService { */ boolean applyThirdStep(StoreOtherInfoDTO storeOtherInfoDTO); - /** - * 获取待审核店铺数量 - * - * @return 待审核店铺数量 - */ - Integer auditNum(); - - /** - * 获取所有店铺数量 - * - * @return 店铺总数 - */ - Integer storeNum(); - - /** - * 获取今天的店铺数量 - * - * @return 今天的店铺数量 - */ - Integer todayStoreNum(); /** * 更新店铺商品数量 diff --git a/framework/src/main/java/cn/lili/modules/store/serviceimpl/BillServiceImpl.java b/framework/src/main/java/cn/lili/modules/store/serviceimpl/BillServiceImpl.java index 3b476fda..5e3a286c 100644 --- a/framework/src/main/java/cn/lili/modules/store/serviceimpl/BillServiceImpl.java +++ b/framework/src/main/java/cn/lili/modules/store/serviceimpl/BillServiceImpl.java @@ -201,15 +201,6 @@ public class BillServiceImpl extends ServiceImpl implements Bi return this.update(lambdaUpdateWrapper); } - @Override - public Integer billNum(BillStatusEnum billStatusEnum) { - LambdaUpdateWrapper lambdaUpdateWrapper = Wrappers.lambdaUpdate(); - lambdaUpdateWrapper.eq(Bill::getBillStatus, billStatusEnum.name()); - lambdaUpdateWrapper.eq(StringUtils.equals(UserContext.getCurrentUser().getRole().name(), UserEnums.STORE.name()), - Bill::getStoreId, UserContext.getCurrentUser().getStoreId()); - return this.count(lambdaUpdateWrapper); - } - @Override public void download(HttpServletResponse response, String id) { diff --git a/framework/src/main/java/cn/lili/modules/store/serviceimpl/StoreServiceImpl.java b/framework/src/main/java/cn/lili/modules/store/serviceimpl/StoreServiceImpl.java index 709d4a60..9a5d1008 100644 --- a/framework/src/main/java/cn/lili/modules/store/serviceimpl/StoreServiceImpl.java +++ b/framework/src/main/java/cn/lili/modules/store/serviceimpl/StoreServiceImpl.java @@ -272,29 +272,6 @@ public class StoreServiceImpl extends ServiceImpl implements store.setStoreLogo(storeOtherInfoDTO.getStoreLogo()); return this.updateById(store); } - - @Override - public Integer auditNum() { - LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(); - queryWrapper.eq(Store::getStoreDisable, StoreStatusEnum.APPLYING.name()); - return this.count(queryWrapper); - } - - @Override - public Integer storeNum() { - LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(); - queryWrapper.eq(Store::getStoreDisable, StoreStatusEnum.OPEN.name()); - return this.count(queryWrapper); - } - - @Override - public Integer todayStoreNum() { - LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(); - queryWrapper.eq(Store::getStoreDisable, StoreStatusEnum.OPEN.name()); - queryWrapper.ge(Store::getCreateTime, DateUtil.beginOfDay(new DateTime())); - return this.count(queryWrapper); - } - @Override public void updateStoreGoodsNum(String storeId) { //获取店铺已上架已审核通过商品数量 diff --git a/framework/src/test/java/cn/lili/test/RedisLimiterHelperTest.java b/framework/src/test/java/cn/lili/test/RedisLimiterHelperTest.java index b329c27c..936bc736 100644 --- a/framework/src/test/java/cn/lili/test/RedisLimiterHelperTest.java +++ b/framework/src/test/java/cn/lili/test/RedisLimiterHelperTest.java @@ -2,7 +2,7 @@ package cn.lili.test; import cn.lili.modules.order.order.entity.dos.OrderItem; import cn.lili.modules.order.order.service.OrderItemService; -import cn.lili.modules.statistics.serviceimpl.OrderStatisticsDataServiceImpl; +import cn.lili.modules.statistics.serviceimpl.OrderStatisticsServiceImpl; import org.junit.Test; import org.junit.jupiter.api.extension.ExtendWith; import org.springframework.beans.factory.annotation.Autowired; @@ -28,7 +28,7 @@ public class RedisLimiterHelperTest { private OrderItemService orderItemService; @Autowired - private OrderStatisticsDataServiceImpl orderStatisticsDataService; + private OrderStatisticsServiceImpl orderStatisticsDataService; @Test diff --git a/manager-api/src/main/java/cn/lili/controller/statistics/GoodsStatisticsManagerController.java b/manager-api/src/main/java/cn/lili/controller/statistics/GoodsStatisticsManagerController.java index 21325245..7849998c 100644 --- a/manager-api/src/main/java/cn/lili/controller/statistics/GoodsStatisticsManagerController.java +++ b/manager-api/src/main/java/cn/lili/controller/statistics/GoodsStatisticsManagerController.java @@ -5,7 +5,7 @@ import cn.lili.common.vo.ResultMessage; import cn.lili.modules.statistics.entity.dto.GoodsStatisticsQueryParam; import cn.lili.modules.statistics.entity.vo.CategoryStatisticsDataVO; import cn.lili.modules.statistics.entity.vo.GoodsStatisticsDataVO; -import cn.lili.modules.statistics.service.GoodsStatisticsDataService; +import cn.lili.modules.statistics.service.StoreFlowStatisticsService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; @@ -21,22 +21,22 @@ import java.util.List; * @author Bulbasaur * @since 2020/12/9 19:04 */ -@Api(tags = "管理端,商品统计接口") +@Api(tags = "管理端,商品流水统计接口") @RestController @RequestMapping("/manager/statistics/goods") public class GoodsStatisticsManagerController { @Autowired - private GoodsStatisticsDataService goodsStatisticsDataService; + private StoreFlowStatisticsService storeFlowStatisticsService; @ApiOperation(value = "获取统计列表,排行前一百的数据") @GetMapping public ResultMessage> getByPage(GoodsStatisticsQueryParam goodsStatisticsQueryParam) { - return ResultUtil.data(goodsStatisticsDataService.getGoodsStatisticsData(goodsStatisticsQueryParam, 100)); + return ResultUtil.data(storeFlowStatisticsService.getGoodsStatisticsData(goodsStatisticsQueryParam, 100)); } @ApiOperation(value = "获取行业统计列表") @GetMapping("/getCategoryByPage") public ResultMessage> getCategoryByPage(GoodsStatisticsQueryParam goodsStatisticsQueryParam) { - return ResultUtil.data(goodsStatisticsDataService.getCategoryStatisticsData(goodsStatisticsQueryParam)); + return ResultUtil.data(storeFlowStatisticsService.getCategoryStatisticsData(goodsStatisticsQueryParam)); } } diff --git a/manager-api/src/main/java/cn/lili/controller/statistics/MemberStatisticsManagerController.java b/manager-api/src/main/java/cn/lili/controller/statistics/MemberStatisticsManagerController.java index 84af4758..30aed609 100644 --- a/manager-api/src/main/java/cn/lili/controller/statistics/MemberStatisticsManagerController.java +++ b/manager-api/src/main/java/cn/lili/controller/statistics/MemberStatisticsManagerController.java @@ -4,7 +4,7 @@ import cn.lili.common.enums.ResultUtil; import cn.lili.common.vo.ResultMessage; import cn.lili.modules.statistics.entity.dos.MemberStatisticsData; import cn.lili.modules.statistics.entity.dto.StatisticsQueryParam; -import cn.lili.modules.statistics.service.MemberStatisticsDataService; +import cn.lili.modules.statistics.service.MemberStatisticsService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; @@ -25,11 +25,11 @@ import java.util.List; @RequestMapping("/manager/statistics/member") public class MemberStatisticsManagerController { @Autowired - private MemberStatisticsDataService memberStatisticsDataService; + private MemberStatisticsService memberStatisticsService; @ApiOperation(value = "获取会员统计") @GetMapping public ResultMessage> getByList(StatisticsQueryParam statisticsQueryParam) { - return ResultUtil.data(memberStatisticsDataService.statistics(statisticsQueryParam)); + return ResultUtil.data(memberStatisticsService.statistics(statisticsQueryParam)); } } diff --git a/manager-api/src/main/java/cn/lili/controller/statistics/OrderStatisticsManagerController.java b/manager-api/src/main/java/cn/lili/controller/statistics/OrderStatisticsManagerController.java index 2812e300..472aed29 100644 --- a/manager-api/src/main/java/cn/lili/controller/statistics/OrderStatisticsManagerController.java +++ b/manager-api/src/main/java/cn/lili/controller/statistics/OrderStatisticsManagerController.java @@ -10,7 +10,7 @@ import cn.lili.modules.order.order.service.OrderService; import cn.lili.modules.statistics.entity.dto.StatisticsQueryParam; import cn.lili.modules.statistics.entity.vo.OrderOverviewVO; import cn.lili.modules.statistics.entity.vo.OrderStatisticsDataVO; -import cn.lili.modules.statistics.service.OrderStatisticsDataService; +import cn.lili.modules.statistics.service.OrderStatisticsService; import com.baomidou.mybatisplus.core.metadata.IPage; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -34,7 +34,7 @@ import java.util.List; @RequestMapping("/manager/statistics/order") public class OrderStatisticsManagerController { @Autowired - private OrderStatisticsDataService orderStatisticsDataService; + private OrderStatisticsService orderStatisticsService; @Autowired private OrderService orderService; @Autowired @@ -44,7 +44,7 @@ public class OrderStatisticsManagerController { @GetMapping("/overview") public ResultMessage overview(StatisticsQueryParam statisticsQueryParam) { try { - return ResultUtil.data(orderStatisticsDataService.overview(statisticsQueryParam)); + return ResultUtil.data(orderStatisticsService.overview(statisticsQueryParam)); } catch (Exception e) { log.error("订单概览统计错误",e); } @@ -55,7 +55,7 @@ public class OrderStatisticsManagerController { @GetMapping public ResultMessage> statisticsChart(StatisticsQueryParam statisticsQueryParam) { try { - return ResultUtil.data(orderStatisticsDataService.statisticsChart(statisticsQueryParam)); + return ResultUtil.data(orderStatisticsService.statisticsChart(statisticsQueryParam)); } catch (Exception e) { log.error("订单图表统计",e); } diff --git a/manager-api/src/main/java/cn/lili/controller/statistics/ViewStatisticsManagerController.java b/manager-api/src/main/java/cn/lili/controller/statistics/ViewStatisticsManagerController.java index 67847cce..01ffd699 100644 --- a/manager-api/src/main/java/cn/lili/controller/statistics/ViewStatisticsManagerController.java +++ b/manager-api/src/main/java/cn/lili/controller/statistics/ViewStatisticsManagerController.java @@ -6,7 +6,7 @@ import cn.lili.modules.member.entity.vo.MemberDistributionVO; import cn.lili.modules.statistics.entity.dto.StatisticsQueryParam; import cn.lili.modules.statistics.entity.vo.OnlineMemberVO; import cn.lili.modules.statistics.entity.vo.PlatformViewVO; -import cn.lili.modules.statistics.service.PlatformViewDataService; +import cn.lili.modules.statistics.service.PlatformViewService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; @@ -27,31 +27,31 @@ import java.util.List; @RequestMapping("/manager/statistics/view") public class ViewStatisticsManagerController { @Autowired - private PlatformViewDataService platformViewDataService; + private PlatformViewService platformViewService; @ApiOperation(value = "流量数据 表单获取") @GetMapping("/list") public ResultMessage> getByPage(StatisticsQueryParam queryParam) { - return ResultUtil.data(platformViewDataService.list(queryParam)); + return ResultUtil.data(platformViewService.list(queryParam)); } @ApiOperation(value = "当前在线人数") @GetMapping("/online/current") public ResultMessage currentNumberPeopleOnline() { - return ResultUtil.data(platformViewDataService.online()); + return ResultUtil.data(platformViewService.online()); } @ApiOperation(value = "会员分布") @GetMapping("/online/distribution") public ResultMessage> memberDistribution() { - return ResultUtil.data(platformViewDataService.memberDistribution()); + return ResultUtil.data(platformViewService.memberDistribution()); } @ApiOperation(value = "在线人数历史(默认48小时)") @GetMapping("/online/history") public ResultMessage> history() { - return ResultUtil.data(platformViewDataService.statisticsOnline()); + return ResultUtil.data(platformViewService.statisticsOnline()); } } diff --git a/seller-api/src/main/java/cn/lili/controller/statistics/GoodsStatisticsStoreController.java b/seller-api/src/main/java/cn/lili/controller/statistics/GoodsStatisticsStoreController.java index e89475e7..75159dd0 100644 --- a/seller-api/src/main/java/cn/lili/controller/statistics/GoodsStatisticsStoreController.java +++ b/seller-api/src/main/java/cn/lili/controller/statistics/GoodsStatisticsStoreController.java @@ -5,7 +5,7 @@ import cn.lili.common.security.context.UserContext; import cn.lili.common.vo.ResultMessage; import cn.lili.modules.statistics.entity.dto.GoodsStatisticsQueryParam; import cn.lili.modules.statistics.entity.vo.GoodsStatisticsDataVO; -import cn.lili.modules.statistics.service.GoodsStatisticsDataService; +import cn.lili.modules.statistics.service.StoreFlowStatisticsService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; @@ -31,13 +31,13 @@ public class GoodsStatisticsStoreController { * 商品统计 */ @Autowired - private GoodsStatisticsDataService goodsStatisticsDataService; + private StoreFlowStatisticsService storeFlowStatisticsService; @ApiOperation(value = "获取统计列表,排行前一百的数据") @GetMapping public ResultMessage> getByPage(GoodsStatisticsQueryParam statisticsQueryParam) { String storeId = Objects.requireNonNull(UserContext.getCurrentUser()).getStoreId(); statisticsQueryParam.setStoreId(storeId); - return ResultUtil.data(goodsStatisticsDataService.getGoodsStatisticsData(statisticsQueryParam, 100)); + return ResultUtil.data(storeFlowStatisticsService.getGoodsStatisticsData(statisticsQueryParam, 100)); } } diff --git a/seller-api/src/main/java/cn/lili/controller/statistics/IndexStatisticsStoreController.java b/seller-api/src/main/java/cn/lili/controller/statistics/IndexStatisticsStoreController.java index 8187062b..32f11e59 100644 --- a/seller-api/src/main/java/cn/lili/controller/statistics/IndexStatisticsStoreController.java +++ b/seller-api/src/main/java/cn/lili/controller/statistics/IndexStatisticsStoreController.java @@ -6,8 +6,8 @@ import cn.lili.common.vo.ResultMessage; import cn.lili.modules.statistics.entity.dto.GoodsStatisticsQueryParam; import cn.lili.modules.statistics.entity.vo.GoodsStatisticsDataVO; import cn.lili.modules.statistics.entity.vo.StoreIndexStatisticsVO; -import cn.lili.modules.statistics.service.GoodsStatisticsDataService; import cn.lili.modules.statistics.service.IndexStatisticsService; +import cn.lili.modules.statistics.service.StoreFlowStatisticsService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; @@ -33,7 +33,7 @@ public class IndexStatisticsStoreController { * 热卖商品统计 */ @Autowired - private GoodsStatisticsDataService goodsStatisticsDataService; + private StoreFlowStatisticsService storeFlowStatisticsService; /** * 首页统计 */ @@ -45,7 +45,7 @@ public class IndexStatisticsStoreController { public ResultMessage> getByPage(GoodsStatisticsQueryParam statisticsQueryParam) { String storeId = Objects.requireNonNull(UserContext.getCurrentUser()).getStoreId(); statisticsQueryParam.setStoreId(storeId); - return ResultUtil.data(goodsStatisticsDataService.getGoodsStatisticsData(statisticsQueryParam, 100)); + return ResultUtil.data(storeFlowStatisticsService.getGoodsStatisticsData(statisticsQueryParam, 100)); } @ApiOperation(value = "获取首页查询数据") diff --git a/seller-api/src/main/java/cn/lili/controller/statistics/OrderStatisticsStoreController.java b/seller-api/src/main/java/cn/lili/controller/statistics/OrderStatisticsStoreController.java index 08035c7b..c36248c6 100644 --- a/seller-api/src/main/java/cn/lili/controller/statistics/OrderStatisticsStoreController.java +++ b/seller-api/src/main/java/cn/lili/controller/statistics/OrderStatisticsStoreController.java @@ -11,7 +11,7 @@ import cn.lili.modules.order.order.service.OrderService; import cn.lili.modules.statistics.entity.dto.StatisticsQueryParam; import cn.lili.modules.statistics.entity.vo.OrderOverviewVO; import cn.lili.modules.statistics.entity.vo.OrderStatisticsDataVO; -import cn.lili.modules.statistics.service.OrderStatisticsDataService; +import cn.lili.modules.statistics.service.OrderStatisticsService; import com.baomidou.mybatisplus.core.metadata.IPage; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -50,7 +50,7 @@ public class OrderStatisticsStoreController { * 订单统计 */ @Autowired - private OrderStatisticsDataService orderStatisticsDataService; + private OrderStatisticsService orderStatisticsService; @ApiOperation(value = "订单概览统计") @GetMapping("/overview") @@ -58,7 +58,7 @@ public class OrderStatisticsStoreController { String storeId = Objects.requireNonNull(UserContext.getCurrentUser()).getStoreId(); try { statisticsQueryParam.setStoreId(storeId); - return ResultUtil.data(orderStatisticsDataService.overview(statisticsQueryParam)); + return ResultUtil.data(orderStatisticsService.overview(statisticsQueryParam)); } catch (Exception e) { log.error("订单概览统计错误", e); } @@ -71,7 +71,7 @@ public class OrderStatisticsStoreController { String storeId = Objects.requireNonNull(UserContext.getCurrentUser()).getStoreId(); try { statisticsQueryParam.setStoreId(storeId); - return ResultUtil.data(orderStatisticsDataService.statisticsChart(statisticsQueryParam)); + return ResultUtil.data(orderStatisticsService.statisticsChart(statisticsQueryParam)); } catch (Exception e) { log.error("订单图表统计错误", e); } diff --git a/seller-api/src/main/java/cn/lili/controller/statistics/ViewStatisticsStoreController.java b/seller-api/src/main/java/cn/lili/controller/statistics/ViewStatisticsStoreController.java index 6ecd7480..dca45408 100644 --- a/seller-api/src/main/java/cn/lili/controller/statistics/ViewStatisticsStoreController.java +++ b/seller-api/src/main/java/cn/lili/controller/statistics/ViewStatisticsStoreController.java @@ -5,7 +5,7 @@ import cn.lili.common.security.context.UserContext; import cn.lili.common.vo.ResultMessage; import cn.lili.modules.statistics.entity.dto.StatisticsQueryParam; import cn.lili.modules.statistics.entity.vo.PlatformViewVO; -import cn.lili.modules.statistics.service.PlatformViewDataService; +import cn.lili.modules.statistics.service.PlatformViewService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; @@ -27,13 +27,13 @@ import java.util.Objects; @RequestMapping("/store/statistics/view") public class ViewStatisticsStoreController { @Autowired - private PlatformViewDataService platformViewDataService; + private PlatformViewService platformViewService; @ApiOperation(value = "流量数据 表单获取") @GetMapping("/list") public ResultMessage> getByPage(StatisticsQueryParam queryParam) { String storeId = Objects.requireNonNull(UserContext.getCurrentUser()).getStoreId(); queryParam.setStoreId(storeId); - return ResultUtil.data(platformViewDataService.list(queryParam)); + return ResultUtil.data(platformViewService.list(queryParam)); } }