Merge branch 'master' of https://gitee.com/beijing_hongye_huicheng/lilishop
This commit is contained in:
commit
b842daa609
@ -1,5 +1,7 @@
|
||||
package cn.lili.modules.statistics.service;
|
||||
|
||||
import cn.lili.modules.statistics.model.dto.GoodsStatisticsQueryParam;
|
||||
import cn.lili.modules.statistics.model.dto.StatisticsQueryParam;
|
||||
import cn.lili.modules.statistics.model.vo.*;
|
||||
|
||||
import java.util.List;
|
||||
@ -38,14 +40,14 @@ public interface IndexStatisticsService {
|
||||
*
|
||||
* @return 热卖商品TOP10
|
||||
*/
|
||||
List<GoodsStatisticsDataVO> goodsStatisticsOfMonth();
|
||||
List<GoodsStatisticsDataVO> goodsStatistics(GoodsStatisticsQueryParam statisticsQueryParam);
|
||||
|
||||
/**
|
||||
* 查询热卖店铺TOP10
|
||||
*
|
||||
* @return 当月的热卖店铺TOP10
|
||||
*/
|
||||
List<StoreStatisticsDataVO> storeStatisticsOfMonth();
|
||||
List<StoreStatisticsDataVO> storeStatistics(StatisticsQueryParam statisticsQueryParam);
|
||||
|
||||
|
||||
}
|
||||
|
@ -14,7 +14,6 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@ -45,8 +44,9 @@ public class GoodsStatisticsDataServiceImpl extends ServiceImpl<GoodsStatisticsD
|
||||
queryWrapper.groupBy("goods_name");
|
||||
|
||||
queryWrapper.eq(!StringUtils.isEmpty(goodsStatisticsQueryParam.getStoreId()), "store_id", goodsStatisticsQueryParam.getStoreId());
|
||||
//查询前一百条记录
|
||||
//查询前X记录
|
||||
Page page = new Page<GoodsStatisticsDataVO>(1, num);
|
||||
|
||||
return goodsStatisticsDataMapper.getGoodsStatisticsData(page, queryWrapper);
|
||||
}
|
||||
|
||||
@ -68,10 +68,10 @@ public class GoodsStatisticsDataServiceImpl extends ServiceImpl<GoodsStatisticsD
|
||||
queryWrapper.between("create_time", date[0], date[1]);
|
||||
|
||||
//判断是按照数量统计还是按照金额统计
|
||||
if (goodsStatisticsQueryParam.getType().equals(StatisticsQuery.NUM.name())) {
|
||||
queryWrapper.orderByDesc("num");
|
||||
} else {
|
||||
if (goodsStatisticsQueryParam.getType().equals(StatisticsQuery.PRICE.name())) {
|
||||
queryWrapper.orderByDesc("price");
|
||||
} else {
|
||||
queryWrapper.orderByDesc("num");
|
||||
}
|
||||
//设置为付款查询
|
||||
queryWrapper.eq("flow_type", FlowTypeEnum.PAY.name());
|
||||
|
@ -19,9 +19,9 @@ import cn.lili.modules.statistics.mapper.StoreStatisticsDataMapper;
|
||||
import cn.lili.modules.statistics.model.dto.GoodsStatisticsQueryParam;
|
||||
import cn.lili.modules.statistics.model.dto.StatisticsQueryParam;
|
||||
import cn.lili.modules.statistics.model.enums.SearchTypeEnum;
|
||||
import cn.lili.modules.statistics.model.enums.StatisticsQuery;
|
||||
import cn.lili.modules.statistics.model.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;
|
||||
@ -31,6 +31,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@ -146,7 +147,7 @@ public class IndexStatisticsServiceImpl implements IndexStatisticsService {
|
||||
//下单统计
|
||||
Map<String, Object> map = orderStatisticsDataService.getOrderStatisticsPrice();
|
||||
//今日下单数
|
||||
indexStatisticsVO.setTodayOrderNum(map.get("num") == null ? 0L : (Long)map.get("num"));
|
||||
indexStatisticsVO.setTodayOrderNum(map.get("num") == null ? 0L : (Long) map.get("num"));
|
||||
//今日下单金额
|
||||
indexStatisticsVO.setTodayOrderPrice(map.get("price") == null ? 0D : (Double) map.get("price"));
|
||||
|
||||
@ -234,20 +235,19 @@ public class IndexStatisticsServiceImpl implements IndexStatisticsService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<GoodsStatisticsDataVO> goodsStatisticsOfMonth() {
|
||||
//获取查询参数
|
||||
GoodsStatisticsQueryParam goodsStatisticsQueryParam = getGoodsStatisticsQueryParam();
|
||||
public List<GoodsStatisticsDataVO> goodsStatistics(GoodsStatisticsQueryParam statisticsQueryParam) {
|
||||
//查询商品
|
||||
return goodsStatisticsDataService.getGoodsStatisticsData(goodsStatisticsQueryParam, 10);
|
||||
return goodsStatisticsDataService.getGoodsStatisticsData(statisticsQueryParam, 10);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<StoreStatisticsDataVO> storeStatisticsOfMonth() {
|
||||
public List<StoreStatisticsDataVO> storeStatistics(StatisticsQueryParam statisticsQueryParam) {
|
||||
|
||||
QueryWrapper queryWrapper = Wrappers.query();
|
||||
|
||||
queryWrapper.between("create_time", cn.hutool.core.date.DateUtil.beginOfYear(new DateTime()),
|
||||
cn.hutool.core.date.DateUtil.endOfYear(new DateTime()));
|
||||
Date[] dates = StatisticsDateUtil.getDateArray(statisticsQueryParam);
|
||||
Date startTime = dates[0], endTime = dates[1];
|
||||
queryWrapper.between("create_time", startTime, endTime);
|
||||
|
||||
queryWrapper.orderByDesc("price");
|
||||
|
||||
@ -288,7 +288,6 @@ public class IndexStatisticsServiceImpl implements IndexStatisticsService {
|
||||
if (UserContext.getCurrentUser().getRole().equals(UserEnums.STORE)) {
|
||||
goodsStatisticsQueryParam.setStoreId(UserContext.getCurrentUser().getStoreId());
|
||||
}
|
||||
goodsStatisticsQueryParam.setType(StatisticsQuery.PRICE.name());
|
||||
DateTime dateTime = new DateTime();
|
||||
goodsStatisticsQueryParam.setYear(dateTime.year());
|
||||
goodsStatisticsQueryParam.setMonth(dateTime.monthBaseOne());
|
||||
|
@ -4,14 +4,15 @@ import cn.hutool.core.date.DateUtil;
|
||||
import cn.lili.modules.statistics.mapper.MemberStatisticsDataMapper;
|
||||
import cn.lili.modules.statistics.model.dos.MemberStatisticsData;
|
||||
import cn.lili.modules.statistics.model.dto.StatisticsQueryParam;
|
||||
import cn.lili.modules.statistics.model.enums.SearchTypeEnum;
|
||||
import cn.lili.modules.statistics.service.MemberStatisticsDataService;
|
||||
import cn.lili.modules.statistics.util.StatisticsDateUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
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.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
@ -24,31 +25,26 @@ import java.util.List;
|
||||
@Service
|
||||
public class MemberStatisticsDataServiceImpl extends ServiceImpl<MemberStatisticsDataMapper, MemberStatisticsData> implements MemberStatisticsDataService {
|
||||
|
||||
/**
|
||||
* 会员统计
|
||||
*/
|
||||
@Autowired
|
||||
private MemberStatisticsDataMapper memberStatisticsDataMapper;
|
||||
|
||||
@Override
|
||||
public Integer getMemberCount() {
|
||||
QueryWrapper queryWrapper = new QueryWrapper();
|
||||
queryWrapper.eq("disabled", true);
|
||||
return memberStatisticsDataMapper.customSqlQuery(queryWrapper);
|
||||
return this.baseMapper.customSqlQuery(queryWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer todayMemberNum() {
|
||||
QueryWrapper queryWrapper = Wrappers.query();
|
||||
queryWrapper.gt("create_time", DateUtil.beginOfDay(new Date()));
|
||||
return memberStatisticsDataMapper.customSqlQuery(queryWrapper);
|
||||
return this.baseMapper.customSqlQuery(queryWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer memberCount(Date endTime) {
|
||||
QueryWrapper queryWrapper = Wrappers.query();
|
||||
queryWrapper.lt("create_time", endTime);
|
||||
return memberStatisticsDataMapper.customSqlQuery(queryWrapper);
|
||||
return this.baseMapper.customSqlQuery(queryWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -56,20 +52,35 @@ public class MemberStatisticsDataServiceImpl extends ServiceImpl<MemberStatistic
|
||||
|
||||
QueryWrapper queryWrapper = Wrappers.query();
|
||||
queryWrapper.ge("last_login_date", startTime);
|
||||
return memberStatisticsDataMapper.customSqlQuery(queryWrapper);
|
||||
return this.baseMapper.customSqlQuery(queryWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer newlyAdded(Date startTime, Date endTime) {
|
||||
QueryWrapper queryWrapper = Wrappers.query();
|
||||
queryWrapper.between("create_time", startTime, endTime);
|
||||
return memberStatisticsDataMapper.customSqlQuery(queryWrapper);
|
||||
return this.baseMapper.customSqlQuery(queryWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<MemberStatisticsData> statistics(StatisticsQueryParam statisticsQueryParam) {
|
||||
|
||||
Date[] dates = StatisticsDateUtil.getDateArray(statisticsQueryParam);
|
||||
Date startTime = dates[0], endTime = dates[1];
|
||||
|
||||
//如果统计今天,则自行构造数据
|
||||
if(statisticsQueryParam.getSearchType().equals(SearchTypeEnum.TODAY.name())){
|
||||
//构建数据,然后返回集合,提供给前端展示
|
||||
MemberStatisticsData memberStatisticsData = new MemberStatisticsData();
|
||||
memberStatisticsData.setMemberCount(this.memberCount(endTime));
|
||||
memberStatisticsData.setCreateDate(startTime);
|
||||
memberStatisticsData.setActiveQuantity(this.activeQuantity(startTime));
|
||||
memberStatisticsData.setNewlyAdded(this.newlyAdded(startTime, endTime));
|
||||
List result = new ArrayList<MemberStatisticsData>();
|
||||
result.add(memberStatisticsData);
|
||||
return result;
|
||||
}
|
||||
|
||||
QueryWrapper queryWrapper = Wrappers.query();
|
||||
queryWrapper.between("create_date", startTime, endTime);
|
||||
|
||||
|
@ -2,6 +2,9 @@ package cn.lili.controller.statistics;
|
||||
|
||||
import cn.lili.common.enums.ResultUtil;
|
||||
import cn.lili.common.vo.ResultMessage;
|
||||
import cn.lili.modules.statistics.model.dto.GoodsStatisticsQueryParam;
|
||||
import cn.lili.modules.statistics.model.dto.StatisticsQueryParam;
|
||||
import cn.lili.modules.statistics.model.enums.StatisticsQuery;
|
||||
import cn.lili.modules.statistics.model.vo.GoodsStatisticsDataVO;
|
||||
import cn.lili.modules.statistics.model.vo.IndexNoticeVO;
|
||||
import cn.lili.modules.statistics.model.vo.IndexStatisticsVO;
|
||||
@ -46,14 +49,17 @@ public class IndexStatisticsManagerController {
|
||||
|
||||
@ApiOperation(value = "获取首页查询热卖商品TOP10")
|
||||
@GetMapping("/goodsStatistics")
|
||||
public ResultMessage<List<GoodsStatisticsDataVO>> goodsStatistics() {
|
||||
return ResultUtil.data(indexStatisticsService.goodsStatisticsOfMonth());
|
||||
public ResultMessage<List<GoodsStatisticsDataVO>> goodsStatistics(GoodsStatisticsQueryParam goodsStatisticsQueryParam) {
|
||||
|
||||
//按照金额查询
|
||||
goodsStatisticsQueryParam.setType(StatisticsQuery.PRICE.name());
|
||||
return ResultUtil.data(indexStatisticsService.goodsStatistics(goodsStatisticsQueryParam));
|
||||
}
|
||||
|
||||
@ApiOperation(value = "获取首页查询热卖店铺TOP10")
|
||||
@GetMapping("/storeStatistics")
|
||||
public ResultMessage<List<StoreStatisticsDataVO>> storeStatistics() {
|
||||
return ResultUtil.data(indexStatisticsService.storeStatisticsOfMonth());
|
||||
public ResultMessage<List<StoreStatisticsDataVO>> storeStatistics(StatisticsQueryParam statisticsQueryParam) {
|
||||
return ResultUtil.data(indexStatisticsService.storeStatistics(statisticsQueryParam));
|
||||
}
|
||||
|
||||
@ApiOperation(value = "通知提示信息")
|
||||
|
Loading…
x
Reference in New Issue
Block a user