统计模块隔离业务,重构统计模块
This commit is contained in:
parent
79e4386d1e
commit
70b12dfd3e
@ -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);
|
||||
}
|
||||
|
@ -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<String> pvKeys, List<String> uvKeys, List<PlatformViewData> platformViewData) {
|
||||
log.debug("批量保存流量数据,共计【{}】条", platformViewData.size());
|
||||
platformViewDataService.saveBatch(platformViewData);
|
||||
platformViewService.saveBatch(platformViewData);
|
||||
//批量删除缓存key
|
||||
cache.multiDel(pvKeys);
|
||||
cache.multiDel(uvKeys);
|
||||
|
@ -49,10 +49,4 @@ public interface DistributionCashService extends IService<DistributionCash> {
|
||||
*/
|
||||
DistributionCash audit(@PathVariable String id, @RequestParam String result);
|
||||
|
||||
/**
|
||||
* 待处理分销员提现申请数量
|
||||
*
|
||||
* @return 待处理分销员提现申请数量
|
||||
*/
|
||||
Integer newDistributionCash();
|
||||
}
|
@ -157,11 +157,4 @@ public class DistributionCashServiceImpl extends ServiceImpl<DistributionCashMap
|
||||
throw new ServiceException(ResultCode.DISTRIBUTION_CASH_NOT_EXIST);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer newDistributionCash() {
|
||||
QueryWrapper queryWrapper = Wrappers.query();
|
||||
queryWrapper.eq("distribution_cash_status", WithdrawStatusEnum.APPLY.name());
|
||||
return this.count(queryWrapper);
|
||||
}
|
||||
}
|
@ -93,21 +93,6 @@ public interface GoodsService extends IService<Goods> {
|
||||
*/
|
||||
boolean auditGoods(List<String> goodsIds, GoodsAuthEnum goodsAuthEnum);
|
||||
|
||||
/**
|
||||
* 获取所有的已上架的商品数量
|
||||
*
|
||||
* @param goodsAuthEnum 商品审核枚举
|
||||
* @param goodsStatusEnum 商品状态枚举
|
||||
* @return 所有的已上架的商品数量
|
||||
*/
|
||||
Integer goodsNum(GoodsStatusEnum goodsStatusEnum, GoodsAuthEnum goodsAuthEnum);
|
||||
|
||||
/**
|
||||
* 获取今天的已上架的商品数量
|
||||
*
|
||||
* @return 今天的已上架的商品数量
|
||||
*/
|
||||
Integer todayUpperNum();
|
||||
|
||||
/**
|
||||
* 更新商品上架状态状态
|
||||
|
@ -277,33 +277,6 @@ public class GoodsServiceImpl extends ServiceImpl<GoodsMapper, Goods> implements
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer goodsNum(GoodsStatusEnum goodsStatusEnum, GoodsAuthEnum goodsAuthEnum) {
|
||||
LambdaQueryWrapper<Goods> 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<Goods> 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<String> goodsIds, GoodsStatusEnum goodsStatusEnum, String underReason) {
|
||||
boolean result;
|
||||
|
@ -88,18 +88,5 @@ public interface MemberEvaluationService extends IService<MemberEvaluation> {
|
||||
*/
|
||||
EvaluationNumberVO getEvaluationNumber(String goodsId);
|
||||
|
||||
/**
|
||||
* 获取今天新增的评价数量
|
||||
*
|
||||
* @return 今日评价数量
|
||||
*/
|
||||
Integer todayMemberEvaluation();
|
||||
|
||||
/**
|
||||
* 获取等待回复评价数量
|
||||
*
|
||||
* @return 等待回复评价数量
|
||||
*/
|
||||
Integer getWaitReplyNum();
|
||||
|
||||
}
|
@ -195,20 +195,6 @@ public class MemberEvaluationServiceImpl extends ServiceImpl<MemberEvaluationMap
|
||||
return evaluationNumberVO;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer todayMemberEvaluation() {
|
||||
return this.count(new LambdaQueryWrapper<MemberEvaluation>().ge(MemberEvaluation::getCreateTime, DateUtil.beginOfDay(new DateTime())));
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer getWaitReplyNum() {
|
||||
QueryWrapper<MemberEvaluation> 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);
|
||||
}
|
||||
|
||||
/**
|
||||
* 检测会员评价
|
||||
*
|
||||
|
@ -129,13 +129,6 @@ public interface AfterSaleService extends IService<AfterSale> {
|
||||
*/
|
||||
AfterSale cancel(String afterSaleSn);
|
||||
|
||||
/**
|
||||
* 获取待处理售后数量
|
||||
*
|
||||
* @param serviceType 售后类型
|
||||
* @return 待处理售后数量
|
||||
*/
|
||||
Integer applyNum(String serviceType);
|
||||
|
||||
/**
|
||||
* 根据售后单号获取店铺退货收货地址信息
|
||||
|
@ -367,17 +367,6 @@ public class AfterSaleServiceImpl extends ServiceImpl<AfterSaleMapper, AfterSale
|
||||
throw new ServiceException(ResultCode.AFTER_SALES_CANCEL_ERROR);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer applyNum(String serviceType) {
|
||||
AuthUser authUser = Objects.requireNonNull(UserContext.getCurrentUser());
|
||||
LambdaQueryWrapper<AfterSale> 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());
|
||||
|
@ -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<AfterSale> {
|
||||
|
||||
}
|
@ -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<Bill> {
|
||||
|
||||
/**
|
||||
* 查询结算单分页
|
||||
*
|
||||
* @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<BillListVO> queryBillPage(IPage<BillListVO> page, @Param(Constants.WRAPPER) Wrapper<BillListVO> 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<Bill> 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<Bill> queryWrapper);
|
||||
}
|
@ -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<DistributionCash> {
|
||||
|
||||
}
|
@ -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<Goods> {
|
||||
|
||||
}
|
@ -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<MemberEvaluation> {
|
||||
|
||||
|
||||
/**
|
||||
* 会员评价分页
|
||||
*
|
||||
* @param page 分页
|
||||
* @param queryWrapper 查询条件
|
||||
* @return 会员评价分页
|
||||
*/
|
||||
@Select("select me.* from li_member_evaluation as me ${ew.customSqlSegment}")
|
||||
IPage<MemberEvaluationListVO> getMemberEvaluationList(IPage<MemberEvaluationListVO> page, @Param(Constants.WRAPPER) Wrapper<MemberEvaluationListVO> 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<Map<String, Object>> 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<MemberEvaluation> queryWrapper);
|
||||
|
||||
/**
|
||||
* 商品会员评价数量
|
||||
*
|
||||
* @param queryWrapper 查询条件
|
||||
* @return 评价数量
|
||||
*/
|
||||
@Select("SELECT goods_id,COUNT(goods_id) AS num FROM li_member_evaluation GROUP BY goods_id")
|
||||
List<Map<String, Object>> memberEvaluationNum(@Param(Constants.WRAPPER) Wrapper<MemberEvaluation> queryWrapper);
|
||||
}
|
@ -13,7 +13,7 @@ import org.apache.ibatis.annotations.Select;
|
||||
* @author Bulbasaur
|
||||
* @since 2020/11/17 7:34 下午
|
||||
*/
|
||||
public interface MemberStatisticsDataMapper extends BaseMapper<MemberStatisticsData> {
|
||||
public interface MemberStatisticsMapper extends BaseMapper<MemberStatisticsData> {
|
||||
|
||||
/**
|
||||
* 获取会员统计数量
|
@ -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<OrderComplaint> {
|
||||
}
|
@ -16,7 +16,7 @@ import java.util.List;
|
||||
* @author Bulbasaur
|
||||
* @since 2020/11/17 7:34 下午
|
||||
*/
|
||||
public interface OrderStatisticsDataMapper extends BaseMapper<StoreFlow> {
|
||||
public interface OrderStatisticsMapper extends BaseMapper<StoreFlow> {
|
||||
|
||||
/**
|
||||
* 获取订单统计数据
|
@ -13,7 +13,7 @@ import org.apache.ibatis.annotations.Select;
|
||||
* @author Bulbasaur
|
||||
* @since 2020/11/17 7:34 下午
|
||||
*/
|
||||
public interface PlatformViewDataMapper extends BaseMapper<PlatformViewData> {
|
||||
public interface PlatformViewMapper extends BaseMapper<PlatformViewData> {
|
||||
/**
|
||||
* UV流量统计
|
||||
*
|
@ -15,7 +15,7 @@ import org.apache.ibatis.annotations.Select;
|
||||
* @author Bulbasaur
|
||||
* @since 2020/12/10 11:22
|
||||
*/
|
||||
public interface RefundOrderStatisticsDataMapper extends BaseMapper<StoreFlow> {
|
||||
public interface RefundOrderStatisticsMapper extends BaseMapper<StoreFlow> {
|
||||
|
||||
/**
|
||||
* 退款统计
|
@ -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<Seckill> {
|
||||
}
|
@ -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<StoreFlow> {
|
||||
public interface StoreFlowStatisticsMapper extends BaseMapper<StoreFlow> {
|
||||
|
||||
/**
|
||||
* 商品统计
|
||||
@ -38,4 +39,17 @@ public interface GoodsStatisticsDataMapper extends BaseMapper<StoreFlow> {
|
||||
*/
|
||||
@Select("SELECT category_id,category_name,SUM(price) AS price,SUM(num) AS num FROM li_store_flow ${ew.customSqlSegment}")
|
||||
List<CategoryStatisticsDataVO> getCateGoryStatisticsData(@Param(Constants.WRAPPER) Wrapper<CategoryStatisticsDataVO> 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<StoreStatisticsDataVO> getStoreStatisticsData(IPage<GoodsStatisticsDataVO> page, @Param(Constants.WRAPPER) Wrapper<GoodsStatisticsDataVO> queryWrapper);
|
||||
|
||||
}
|
@ -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<StoreFlow> {
|
||||
|
||||
/**
|
||||
* 店铺统计列表
|
||||
*
|
||||
* @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<StoreStatisticsDataVO> getStoreStatisticsData(IPage<GoodsStatisticsDataVO> page, @Param(Constants.WRAPPER) Wrapper<GoodsStatisticsDataVO> queryWrapper);
|
||||
public interface StoreStatisticsMapper extends BaseMapper<Store> {
|
||||
|
||||
}
|
@ -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<AfterSale> {
|
||||
|
||||
/**
|
||||
* 获取待处理售后数量
|
||||
*
|
||||
* @param serviceType 售后类型
|
||||
* @return 待处理售后数量
|
||||
*/
|
||||
Integer applyNum(String serviceType);
|
||||
}
|
@ -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<Bill> {
|
||||
|
||||
/**
|
||||
* 商家待结算数量
|
||||
*
|
||||
* @param billStatusEnum 结算单类型
|
||||
* @return 待结算商家数量
|
||||
*/
|
||||
Integer billNum(BillStatusEnum billStatusEnum);
|
||||
}
|
@ -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<DistributionCash> {
|
||||
|
||||
/**
|
||||
* 待处理分销员提现申请数量
|
||||
*
|
||||
* @return 待处理分销员提现申请数量
|
||||
*/
|
||||
Integer newDistributionCash();
|
||||
}
|
@ -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<Goods> {
|
||||
|
||||
/**
|
||||
* 获取所有的已上架的商品数量
|
||||
*
|
||||
* @param goodsAuthEnum 商品审核枚举
|
||||
* @param goodsStatusEnum 商品状态枚举
|
||||
* @return 所有的已上架的商品数量
|
||||
*/
|
||||
Integer goodsNum(GoodsStatusEnum goodsStatusEnum, GoodsAuthEnum goodsAuthEnum);
|
||||
|
||||
/**
|
||||
* 获取今天的已上架的商品数量
|
||||
*
|
||||
* @return 今天的已上架的商品数量
|
||||
*/
|
||||
Integer todayUpperNum();
|
||||
}
|
@ -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<MemberEvaluation> {
|
||||
|
||||
/**
|
||||
* 获取今天新增的评价数量
|
||||
*
|
||||
* @return 今日评价数量
|
||||
*/
|
||||
Integer todayMemberEvaluation();
|
||||
|
||||
/**
|
||||
* 获取等待回复评价数量
|
||||
*
|
||||
* @return 等待回复评价数量
|
||||
*/
|
||||
Integer getWaitReplyNum();
|
||||
|
||||
}
|
@ -13,7 +13,7 @@ import java.util.List;
|
||||
* @author Bulbasaur
|
||||
* @since 2020/12/9 11:06
|
||||
*/
|
||||
public interface MemberStatisticsDataService extends IService<MemberStatisticsData> {
|
||||
public interface MemberStatisticsService extends IService<MemberStatisticsData> {
|
||||
|
||||
/**
|
||||
* 获取会员数量
|
@ -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<OrderComplaint> {
|
||||
|
||||
/**
|
||||
* 待处理投诉数量
|
||||
*
|
||||
* @return 待处理投诉数量
|
||||
*/
|
||||
Integer waitComplainNum();
|
||||
}
|
@ -15,7 +15,7 @@ import java.util.Map;
|
||||
* @author Bulbasaur
|
||||
* @since 2020/12/9 11:06
|
||||
*/
|
||||
public interface OrderStatisticsDataService extends IService<StoreFlow> {
|
||||
public interface OrderStatisticsService extends IService<StoreFlow> {
|
||||
|
||||
/**
|
||||
* 订单统计概览
|
@ -15,7 +15,7 @@ import java.util.List;
|
||||
* @author Bulbasaur
|
||||
* @since 2020/12/9 11:06
|
||||
*/
|
||||
public interface PlatformViewDataService extends IService<PlatformViewData> {
|
||||
public interface PlatformViewService extends IService<PlatformViewData> {
|
||||
|
||||
|
||||
/**
|
@ -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<Seckill> {
|
||||
|
||||
|
||||
/**
|
||||
* 获取当前可参与的活动数量
|
||||
*
|
||||
* @return 可参与活动数量
|
||||
*/
|
||||
Integer getApplyNum();
|
||||
|
||||
}
|
@ -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<StoreFlow> {
|
||||
public interface StoreFlowStatisticsService extends IService<StoreFlow> {
|
||||
|
||||
/**
|
||||
* 查询热卖商品
|
||||
@ -35,4 +41,11 @@ public interface GoodsStatisticsDataService extends IService<StoreFlow> {
|
||||
*/
|
||||
List<CategoryStatisticsDataVO> getCategoryStatisticsData(GoodsStatisticsQueryParam goodsStatisticsQueryParam);
|
||||
|
||||
/**
|
||||
* 店铺流水 根据店铺 统计
|
||||
* @param page
|
||||
* @param queryWrapper
|
||||
* @return
|
||||
*/
|
||||
List<StoreStatisticsDataVO> getStoreStatisticsData(Page page, QueryWrapper queryWrapper);
|
||||
}
|
@ -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<Store> {
|
||||
|
||||
/**
|
||||
* 获取待审核店铺数量
|
||||
*
|
||||
* @return 待审核店铺数量
|
||||
*/
|
||||
Integer auditNum();
|
||||
|
||||
/**
|
||||
* 获取所有店铺数量
|
||||
*
|
||||
* @return 店铺总数
|
||||
*/
|
||||
Integer storeNum();
|
||||
|
||||
/**
|
||||
* 获取今天的店铺数量
|
||||
*
|
||||
* @return 今天的店铺数量
|
||||
*/
|
||||
Integer todayStoreNum();
|
||||
}
|
@ -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<AfterSaleStatisticsMapper, AfterSale> implements AfterSaleStatisticsService {
|
||||
|
||||
|
||||
@Override
|
||||
public Integer applyNum(String serviceType) {
|
||||
AuthUser authUser = Objects.requireNonNull(UserContext.getCurrentUser());
|
||||
LambdaQueryWrapper<AfterSale> 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);
|
||||
}
|
||||
}
|
@ -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<BillStatisticsMapper, Bill> implements BillStatisticsService {
|
||||
|
||||
|
||||
@Override
|
||||
public Integer billNum(BillStatusEnum billStatusEnum) {
|
||||
LambdaUpdateWrapper<Bill> 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);
|
||||
}
|
||||
|
||||
|
||||
}
|
@ -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<DistributionCashStatisticsMapper, DistributionCash>
|
||||
implements DistributionCashStatisticsService {
|
||||
|
||||
|
||||
@Override
|
||||
public Integer newDistributionCash() {
|
||||
QueryWrapper queryWrapper = Wrappers.query();
|
||||
queryWrapper.eq("distribution_cash_status", WithdrawStatusEnum.APPLY.name());
|
||||
return this.count(queryWrapper);
|
||||
}
|
||||
}
|
@ -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<GoodsStatisticsMapper, Goods> implements GoodsStatisticsService {
|
||||
|
||||
@Override
|
||||
public Integer goodsNum(GoodsStatusEnum goodsStatusEnum, GoodsAuthEnum goodsAuthEnum) {
|
||||
LambdaQueryWrapper<Goods> 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<Goods> queryWrapper = Wrappers.lambdaQuery();
|
||||
queryWrapper.eq(Goods::getMarketEnable, GoodsStatusEnum.UPPER.name());
|
||||
queryWrapper.ge(Goods::getCreateTime, DateUtil.beginOfDay(new DateTime()));
|
||||
return this.count(queryWrapper);
|
||||
}
|
||||
}
|
@ -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<String, Object> map = orderStatisticsDataService.getOrderStatisticsPrice();
|
||||
Map<String, Object> 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<String, Object> map = orderStatisticsDataService.getStoreOrderStatisticsPrice();
|
||||
Map<String, Object> 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<GoodsStatisticsDataVO> 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<StoreStatisticsDataVO>(1, 10);
|
||||
|
||||
return storeStatisticsDataMapper.getStoreStatisticsData(page, queryWrapper);
|
||||
return storeFlowStatisticsService.getStoreStatisticsData(page, queryWrapper);
|
||||
}
|
||||
|
||||
|
||||
|
@ -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<MemberEvaluationStatisticsMapper, MemberEvaluation> implements MemberEvaluationStatisticsService {
|
||||
|
||||
|
||||
@Override
|
||||
public Integer todayMemberEvaluation() {
|
||||
return this.count(new LambdaQueryWrapper<MemberEvaluation>().ge(MemberEvaluation::getCreateTime, DateUtil.beginOfDay(new DateTime())));
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer getWaitReplyNum() {
|
||||
QueryWrapper<MemberEvaluation> 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);
|
||||
}
|
||||
|
||||
}
|
@ -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<MemberStatisticsDataMapper, MemberStatisticsData> implements MemberStatisticsDataService {
|
||||
public class MemberStatisticsServiceImpl extends ServiceImpl<MemberStatisticsMapper, MemberStatisticsData> implements MemberStatisticsService {
|
||||
|
||||
@Override
|
||||
public Integer getMemberCount() {
|
@ -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<OrderComplaintStatisticsMapper, OrderComplaint> 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);
|
||||
}
|
||||
|
||||
|
||||
}
|
@ -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<OrderStatisticsDataMapper, StoreFlow> implements OrderStatisticsDataService {
|
||||
public class OrderStatisticsServiceImpl extends ServiceImpl<OrderStatisticsMapper, StoreFlow> implements OrderStatisticsService {
|
||||
/**
|
||||
* 平台PV统计
|
||||
*/
|
||||
@Autowired
|
||||
private PlatformViewDataService platformViewDataService;
|
||||
private PlatformViewService platformViewService;
|
||||
/**
|
||||
* 订单
|
||||
*/
|
||||
@ -52,7 +52,7 @@ public class OrderStatisticsDataServiceImpl extends ServiceImpl<OrderStatisticsD
|
||||
|
||||
OrderOverviewVO orderOverviewVO = new OrderOverviewVO();
|
||||
//访客数
|
||||
orderOverviewVO.setUvNum(platformViewDataService.countUv(statisticsQueryParam));
|
||||
orderOverviewVO.setUvNum(platformViewService.countUv(statisticsQueryParam));
|
||||
|
||||
//下单统计
|
||||
initOrder(dates, orderOverviewVO, statisticsQueryParam);
|
@ -10,13 +10,13 @@ import cn.lili.common.properties.StatisticsProperties;
|
||||
import cn.lili.common.enums.ClientTypeEnum;
|
||||
import cn.lili.modules.member.entity.vo.MemberDistributionVO;
|
||||
import cn.lili.modules.member.service.MemberService;
|
||||
import cn.lili.modules.statistics.mapper.PlatformViewDataMapper;
|
||||
import cn.lili.modules.statistics.mapper.PlatformViewMapper;
|
||||
import cn.lili.modules.statistics.entity.dos.PlatformViewData;
|
||||
import cn.lili.modules.statistics.entity.dto.StatisticsQueryParam;
|
||||
import cn.lili.modules.statistics.entity.enums.SearchTypeEnum;
|
||||
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 cn.lili.modules.statistics.util.StatisticsDateUtil;
|
||||
import cn.lili.modules.statistics.util.StatisticsSuffix;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
@ -42,7 +42,7 @@ import java.util.List;
|
||||
* 2021/1/18 12:07
|
||||
*/
|
||||
@Service
|
||||
public class PlatformViewDataServiceImpl extends ServiceImpl<PlatformViewDataMapper, PlatformViewData> implements PlatformViewDataService {
|
||||
public class PlatformViewServiceImpl extends ServiceImpl<PlatformViewMapper, PlatformViewData> implements PlatformViewService {
|
||||
/**
|
||||
* 在线人数统计
|
||||
*/
|
||||
@ -62,7 +62,7 @@ public class PlatformViewDataServiceImpl extends ServiceImpl<PlatformViewDataMap
|
||||
* 平台流量统计
|
||||
*/
|
||||
@Resource
|
||||
private PlatformViewDataMapper platformViewDataMapper;
|
||||
private PlatformViewMapper platformViewMapper;
|
||||
|
||||
@Override
|
||||
public Long online() {
|
||||
@ -249,7 +249,7 @@ public class PlatformViewDataServiceImpl extends ServiceImpl<PlatformViewDataMap
|
||||
} else {
|
||||
queryWrapper.eq("store_id", -1);
|
||||
}
|
||||
return platformViewDataMapper.count(queryWrapper);
|
||||
return platformViewMapper.count(queryWrapper);
|
||||
}
|
||||
}
|
||||
|
@ -6,7 +6,7 @@ import cn.lili.common.utils.StringUtils;
|
||||
import cn.lili.common.vo.PageVO;
|
||||
import cn.lili.modules.order.order.entity.dos.StoreFlow;
|
||||
import cn.lili.modules.order.order.entity.enums.FlowTypeEnum;
|
||||
import cn.lili.modules.statistics.mapper.RefundOrderStatisticsDataMapper;
|
||||
import cn.lili.modules.statistics.mapper.RefundOrderStatisticsMapper;
|
||||
import cn.lili.modules.statistics.entity.dto.StatisticsQueryParam;
|
||||
import cn.lili.modules.statistics.entity.enums.TimeTypeEnum;
|
||||
import cn.lili.modules.statistics.entity.vo.RefundOrderStatisticsDataVO;
|
||||
@ -24,7 +24,7 @@ import org.springframework.stereotype.Service;
|
||||
* @since 2020/12/10 11:30
|
||||
*/
|
||||
@Service
|
||||
public class RefundOrderStatisticsServiceImpl extends ServiceImpl<RefundOrderStatisticsDataMapper, StoreFlow> implements RefundOrderStatisticsService {
|
||||
public class RefundOrderStatisticsServiceImpl extends ServiceImpl<RefundOrderStatisticsMapper, StoreFlow> implements RefundOrderStatisticsService {
|
||||
|
||||
@Override
|
||||
public IPage<RefundOrderStatisticsDataVO> getRefundOrderStatisticsData(PageVO pageVO, StatisticsQueryParam statisticsQueryParam) {
|
||||
|
@ -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<SeckillStatisticsMapper, Seckill> implements SeckillStatisticsService {
|
||||
|
||||
|
||||
@Override
|
||||
public Integer getApplyNum() {
|
||||
LambdaQueryWrapper<Seckill> queryWrapper = Wrappers.lambdaQuery();
|
||||
//秒杀申请时间未超过当前时间
|
||||
queryWrapper.ge(Seckill::getApplyEndTime, cn.hutool.core.date.DateUtil.date());
|
||||
queryWrapper.eq(Seckill::getPromotionStatus, PromotionStatusEnum.NEW.name());
|
||||
return this.count(queryWrapper);
|
||||
}
|
||||
|
||||
}
|
@ -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<GoodsStatisticsDataMapper, StoreFlow> implements GoodsStatisticsDataService {
|
||||
public class StoreFlowStatisticsServiceImpl extends ServiceImpl<StoreFlowStatisticsMapper, StoreFlow> implements StoreFlowStatisticsService {
|
||||
|
||||
@Override
|
||||
public List<GoodsStatisticsDataVO> getGoodsStatisticsData(GoodsStatisticsQueryParam goodsStatisticsQueryParam, Integer num) {
|
||||
@ -51,7 +52,17 @@ public class GoodsStatisticsDataServiceImpl extends ServiceImpl<GoodsStatisticsD
|
||||
return this.baseMapper.getCateGoryStatisticsData(queryWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<StoreStatisticsDataVO> getStoreStatisticsData(Page page, QueryWrapper queryWrapper) {
|
||||
return this.baseMapper.getStoreStatisticsData(page, queryWrapper);
|
||||
}
|
||||
|
||||
/**
|
||||
* 组织查询条件
|
||||
*
|
||||
* @param goodsStatisticsQueryParam
|
||||
* @return
|
||||
*/
|
||||
private QueryWrapper getQueryWrapper(GoodsStatisticsQueryParam goodsStatisticsQueryParam) {
|
||||
|
||||
QueryWrapper queryWrapper = Wrappers.query();
|
@ -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<StoreStatisticsMapper, Store> implements StoreStatisticsService {
|
||||
|
||||
|
||||
@Override
|
||||
public Integer auditNum() {
|
||||
LambdaQueryWrapper<Store> queryWrapper = Wrappers.lambdaQuery();
|
||||
queryWrapper.eq(Store::getStoreDisable, StoreStatusEnum.APPLYING.name());
|
||||
return this.count(queryWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer storeNum() {
|
||||
LambdaQueryWrapper<Store> queryWrapper = Wrappers.lambdaQuery();
|
||||
queryWrapper.eq(Store::getStoreDisable, StoreStatusEnum.OPEN.name());
|
||||
return this.count(queryWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer todayStoreNum() {
|
||||
LambdaQueryWrapper<Store> queryWrapper = Wrappers.lambdaQuery();
|
||||
queryWrapper.eq(Store::getStoreDisable, StoreStatusEnum.OPEN.name());
|
||||
queryWrapper.ge(Store::getCreateTime, DateUtil.beginOfDay(new DateTime()));
|
||||
return this.count(queryWrapper);
|
||||
}
|
||||
|
||||
}
|
@ -66,14 +66,6 @@ public interface BillService extends IService<Bill> {
|
||||
*/
|
||||
boolean complete(String id);
|
||||
|
||||
/**
|
||||
* 商家待结算数量
|
||||
*
|
||||
* @param billStatusEnum 结算单类型
|
||||
* @return 待结算商家数量
|
||||
*/
|
||||
Integer billNum(BillStatusEnum billStatusEnum);
|
||||
|
||||
/**
|
||||
* 下载结算单
|
||||
* @response response
|
||||
|
@ -102,26 +102,6 @@ public interface StoreService extends IService<Store> {
|
||||
*/
|
||||
boolean applyThirdStep(StoreOtherInfoDTO storeOtherInfoDTO);
|
||||
|
||||
/**
|
||||
* 获取待审核店铺数量
|
||||
*
|
||||
* @return 待审核店铺数量
|
||||
*/
|
||||
Integer auditNum();
|
||||
|
||||
/**
|
||||
* 获取所有店铺数量
|
||||
*
|
||||
* @return 店铺总数
|
||||
*/
|
||||
Integer storeNum();
|
||||
|
||||
/**
|
||||
* 获取今天的店铺数量
|
||||
*
|
||||
* @return 今天的店铺数量
|
||||
*/
|
||||
Integer todayStoreNum();
|
||||
|
||||
/**
|
||||
* 更新店铺商品数量
|
||||
|
@ -201,15 +201,6 @@ public class BillServiceImpl extends ServiceImpl<BillMapper, Bill> implements Bi
|
||||
return this.update(lambdaUpdateWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer billNum(BillStatusEnum billStatusEnum) {
|
||||
LambdaUpdateWrapper<Bill> 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) {
|
||||
|
||||
|
@ -272,29 +272,6 @@ public class StoreServiceImpl extends ServiceImpl<StoreMapper, Store> implements
|
||||
store.setStoreLogo(storeOtherInfoDTO.getStoreLogo());
|
||||
return this.updateById(store);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer auditNum() {
|
||||
LambdaQueryWrapper<Store> queryWrapper = Wrappers.lambdaQuery();
|
||||
queryWrapper.eq(Store::getStoreDisable, StoreStatusEnum.APPLYING.name());
|
||||
return this.count(queryWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer storeNum() {
|
||||
LambdaQueryWrapper<Store> queryWrapper = Wrappers.lambdaQuery();
|
||||
queryWrapper.eq(Store::getStoreDisable, StoreStatusEnum.OPEN.name());
|
||||
return this.count(queryWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer todayStoreNum() {
|
||||
LambdaQueryWrapper<Store> 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) {
|
||||
//获取店铺已上架已审核通过商品数量
|
||||
|
@ -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
|
||||
|
@ -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<List<GoodsStatisticsDataVO>> getByPage(GoodsStatisticsQueryParam goodsStatisticsQueryParam) {
|
||||
return ResultUtil.data(goodsStatisticsDataService.getGoodsStatisticsData(goodsStatisticsQueryParam, 100));
|
||||
return ResultUtil.data(storeFlowStatisticsService.getGoodsStatisticsData(goodsStatisticsQueryParam, 100));
|
||||
}
|
||||
|
||||
@ApiOperation(value = "获取行业统计列表")
|
||||
@GetMapping("/getCategoryByPage")
|
||||
public ResultMessage<List<CategoryStatisticsDataVO>> getCategoryByPage(GoodsStatisticsQueryParam goodsStatisticsQueryParam) {
|
||||
return ResultUtil.data(goodsStatisticsDataService.getCategoryStatisticsData(goodsStatisticsQueryParam));
|
||||
return ResultUtil.data(storeFlowStatisticsService.getCategoryStatisticsData(goodsStatisticsQueryParam));
|
||||
}
|
||||
}
|
||||
|
@ -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<List<MemberStatisticsData>> getByList(StatisticsQueryParam statisticsQueryParam) {
|
||||
return ResultUtil.data(memberStatisticsDataService.statistics(statisticsQueryParam));
|
||||
return ResultUtil.data(memberStatisticsService.statistics(statisticsQueryParam));
|
||||
}
|
||||
}
|
||||
|
@ -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<OrderOverviewVO> 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<List<OrderStatisticsDataVO>> statisticsChart(StatisticsQueryParam statisticsQueryParam) {
|
||||
try {
|
||||
return ResultUtil.data(orderStatisticsDataService.statisticsChart(statisticsQueryParam));
|
||||
return ResultUtil.data(orderStatisticsService.statisticsChart(statisticsQueryParam));
|
||||
} catch (Exception e) {
|
||||
log.error("订单图表统计",e);
|
||||
}
|
||||
|
@ -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<List<PlatformViewVO>> getByPage(StatisticsQueryParam queryParam) {
|
||||
return ResultUtil.data(platformViewDataService.list(queryParam));
|
||||
return ResultUtil.data(platformViewService.list(queryParam));
|
||||
}
|
||||
|
||||
@ApiOperation(value = "当前在线人数")
|
||||
@GetMapping("/online/current")
|
||||
public ResultMessage<Long> currentNumberPeopleOnline() {
|
||||
return ResultUtil.data(platformViewDataService.online());
|
||||
return ResultUtil.data(platformViewService.online());
|
||||
}
|
||||
|
||||
|
||||
@ApiOperation(value = "会员分布")
|
||||
@GetMapping("/online/distribution")
|
||||
public ResultMessage<List<MemberDistributionVO>> memberDistribution() {
|
||||
return ResultUtil.data(platformViewDataService.memberDistribution());
|
||||
return ResultUtil.data(platformViewService.memberDistribution());
|
||||
}
|
||||
|
||||
@ApiOperation(value = "在线人数历史(默认48小时)")
|
||||
@GetMapping("/online/history")
|
||||
public ResultMessage<List<OnlineMemberVO>> history() {
|
||||
return ResultUtil.data(platformViewDataService.statisticsOnline());
|
||||
return ResultUtil.data(platformViewService.statisticsOnline());
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -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<List<GoodsStatisticsDataVO>> 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));
|
||||
}
|
||||
}
|
||||
|
@ -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<List<GoodsStatisticsDataVO>> 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 = "获取首页查询数据")
|
||||
|
@ -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);
|
||||
}
|
||||
|
@ -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<List<PlatformViewVO>> 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));
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user