Bläddra i källkod

Merge branch 'fix_statistics_export'

zoujiajian 3 år sedan
förälder
incheckning
7d20b9f551

+ 1 - 1
netflix-dao/src/main/java/com/cyksj/mapper/AccountMapper.java

@@ -21,7 +21,7 @@ public interface AccountMapper extends BaseMapper<Account> {
 
 	IPage<ExpiredAccountDataView> getExpiredAccountView(@Param("isCorpWx") Boolean isCorpWx, @Param("customerService") String customerService, @Param("goodsId") Long goodsId, @Param("skuId") Long skuId, @Param("account") String account, @Param("renewStatus") Boolean renewStatus, @Param("handleStatus") Boolean handleStatus, @Param("cnAccount") String cnAccount, @Param("usAccount") String usAccount, @Param("userId") Integer userId, @Param("startTime") String startTime, @Param("endTime") String endTime, @Param("now") String now, @Param("page") Page page);
 
-	List<Account> getNoAppleOneAccount(String appleOne);
+	List<Account> getNoAppleOneAccount(Long appleOneGoodsId);
 
 	List<OrderDon> getNoAppleOneOrderDon(@Param("skuIds") List<Long> skuIds, @Param("yesZeroDate") Date yesZeroDate, @Param("thisZeroDate") Date thisZeroDate, @Param("noOrderStatus") List<String> noOrderStatus);
 

+ 1 - 1
netflix-dao/src/main/java/com/cyksj/mapper/OrderDonMapper.java

@@ -20,7 +20,7 @@ public interface OrderDonMapper extends BaseMapper<OrderDon> {
 
     List<ExcelOrderDonInfo> exportOrderInfo(@Param("promotionId") Long promotionId, @Param("start") String start, @Param("end") String end);
 
-    List<OrderDon> getAppleOneOrderDons(@Param("appleOne") String appleOne, @Param("skuIds") List<Long> skuIds, @Param("goodsIds") List<Long> goodsIds, @Param("noOrderStatus") List<String> noOrderStatus, @Param("yesZeroDate") Date yesZeroDate, @Param("thisZeroDate") Date thisZeroDate);
+	List<OrderDon> getAppleOneOrderDons(@Param("skuIds") List<Long> skuIds, @Param("noOrderStatus") List<String> noOrderStatus, @Param("yesZeroDate") Date yesZeroDate, @Param("thisZeroDate") Date thisZeroDate);
 
 	List<RealGoodsInterestUser> selectNoPaymentRealGoods();
 

+ 5 - 0
netflix-dao/src/main/java/com/cyksj/mapper/manage/statistics/StatisticsFashionGoodsDataMapper.java

@@ -2,6 +2,10 @@ package com.cyksj.mapper.manage.statistics;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.cyksj.model.entity.StatisticsFashionGoodsData;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.Date;
+import java.util.List;
 
 /*
  *项目名: netflix
@@ -10,4 +14,5 @@ import com.cyksj.model.entity.StatisticsFashionGoodsData;
  *创建时间:2023/2/14 11:46
  */
 public interface StatisticsFashionGoodsDataMapper extends BaseMapper<StatisticsFashionGoodsData> {
+	List<StatisticsFashionGoodsData> statisticsFashionGoodsData(@Param("startDate") Date startDate, @Param("endDate") Date endDate);
 }

+ 0 - 9
netflix-dao/src/main/java/com/cyksj/mapper/manage/statistics/StatisticsUserDataMapper.java

@@ -36,20 +36,11 @@ public interface StatisticsUserDataMapper extends BaseMapper<StatisticsUserData>
 	@Select("select count(*) from user_distribute_shared where created_time between #{yesZeroDate} and #{thisZeroDate}")
 	Integer getNumOfDistributeUserToday(@Param("yesZeroDate") Date yesZeroDate, @Param("thisZeroDate") Date thisZeroDate);
 
-	@Select("select goods_id from `streaming_account_data` sd where statistics_date between #{start} and #{end} group by goods_id")
-	List<Long> getAllStreaming(@Param("start") String start, @Param("end") String end);
-
 	ExcelStreamingAccountData getExportStreamingAccountData(@Param("goodsId") Long goodsId, @Param("isDis") Boolean isDis, @Param("isCode") Boolean isCode, @Param("start") String start, @Param("end") String end);
 
 	Integer getTypeData(@Param("goodsId") Long goodsId, @Param("type") String type, @Param("start") String start, @Param("end") String end);
 
-	@Select("select goods_id from `real_goods_data` sd where statistics_date between #{start} and #{end} group by goods_id")
-	List<Long> getAllRealGoods(@Param("start") String start, @Param("end") String end);
-
 	ExcelRealGoodsData getExportGoodsDonDataBySkuId(@Param("skuId") Long skuId, @Param("start") String start, @Param("end") String end);
 
 	List<RegisterOrderDon> getPlatformHasPaymentOrders(@Param("platform") String platform, @Param("start") String start, @Param("end") String end);
-
-	@Select("select goods_id from `statistics_fashion_goods_data` sd where statistics_date between #{start} and #{end} group by goods_id")
-	List<Long> getAllFashionGoods(@Param("start") String start, @Param("end") String end);
 }

+ 1 - 1
netflix-dao/src/main/java/com/cyksj/model/excel/statistics/ExcelStreamingAccountData.java

@@ -18,7 +18,7 @@ public class ExcelStreamingAccountData {
 	/**
 	 * 平台
 	 */
-	@ExcelProperty("name")
+	@ExcelProperty("平台")
 	private String name;
 
 	/**

+ 1 - 1
netflix-dao/src/main/resources/mapper/AccountMapper.xml

@@ -80,7 +80,7 @@
                g.title,
                g.id as goodsId
         from `account` a inner join `goods_don` g on g.id = a.goods_id
-        where g.type = 1 and g.title != #{appleOne}
+        where g.type = 1 and g.id != #{appleOneGoodsId}
     </select>
 
     <select id="getNoAppleOneOrderDon" resultType="com.cyksj.model.entity.OrderDon">

+ 2 - 11
netflix-dao/src/main/resources/mapper/OrderDonMapper.xml

@@ -38,7 +38,7 @@
     </select>
 
     <select id="getAppleOneOrderDons" resultType="com.cyksj.model.entity.OrderDon">
-        select distinct s.* from (select id,sku_id,user_id,money,is_distribute,`type` from `order_don`
+        select id,sku_id,user_id,money,is_distribute,`type` from `order_don`
         where sku_id in
         <foreach collection="skuIds" item="item" open="(" separator="," close=")">
             #{item}
@@ -47,16 +47,7 @@
         <foreach collection="noOrderStatus" item="item" open="(" separator="," close=")">
             #{item}
         </foreach>
-        and created_time between #{yesZeroDate} and #{thisZeroDate})s
-        inner join `groups_relation` gr
-        on gr.user_id = s.user_id
-        inner join `groups_trips` gt
-        on gt.id = gr.groups_id
-        inner join `goods_don` g on g.id in
-        <foreach collection="goodsIds" item="item" open="(" separator="," close=")">
-            #{item}
-        </foreach>
-        where g.title = #{appleOne} and gr.status = 'validity'
+        and created_time between #{yesZeroDate} and #{thisZeroDate}
     </select>
 
     <select id="selectNoPaymentRealGoods" resultType="com.cyksj.model.entity.RealGoodsInterestUser">

+ 24 - 0
netflix-dao/src/main/resources/mapper/StatisticsFashionGoodsDataMapper.xml

@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+
+<mapper namespace="com.cyksj.mapper.manage.statistics.StatisticsFashionGoodsDataMapper">
+    <select id="statisticsFashionGoodsData" resultType="com.cyksj.model.entity.StatisticsFashionGoodsData">
+        select * from (select goods_id,
+        sku_id,
+        max(goods_title) as goods_title,
+        max(spec_val) as spec_val,
+        sum(num_of_user) as num_of_user,
+        sum(num_of_order) as num_of_order,
+        cast(sum(money)/100 as decimal(20,2)) as money
+        from statistics_fashion_goods_data
+        <where>
+            <if test="startDate != null">
+                statistics_date >= #{startDate}
+            </if>
+            <if test="endDate != null">
+                and statistics_date &lt; #{endDate}
+            </if>
+        </where>
+        group by goods_id,sku_id)s where s.num_of_user > 0 and num_of_order > 0 and money > 0
+    </select>
+</mapper>

+ 26 - 6
netflix-dao/src/main/resources/mapper/StatisticsUserDataMapper.xml

@@ -14,7 +14,12 @@
         <if test="isCode!=null and isCode">
             and `type` = 'EX_CODE'
         </if>
-        and created_time between #{start} and #{end}
+        <if test="start != null">
+            and created_time >= #{start}
+        </if>
+        <if test="end != null">
+            and created_time &lt; #{end}
+        </if>
     </select>
 
     <select id="getTypeData" resultType="java.lang.Integer">
@@ -24,15 +29,25 @@
             and spec_val not like '%年%'
         </if>)
         and status not in ('close','noPayment','refund')
-        and created_time between #{start} and #{end}
+        <if test="start != null">
+            and created_time >= #{start}
+        </if>
+        <if test="end != null">
+            and created_time &lt; #{end}
+        </if>
     </select>
 
-    <select id="getExportRealData" resultType="com.cyksj.model.excel.statistics.ExcelRealGoodsData">
+    <select id="getExportGoodsDonDataBySkuId" resultType="com.cyksj.model.excel.statistics.ExcelRealGoodsData">
         select count(distinct user_id) as numOfUser, count(*) as numOfOrder, ifnull(sum(money) / 100, 0) as money
         from `order_don`
         where sku_id = #{skuId}
           and status not in ('close', 'noPayment', 'refund')
-          and created_time between #{start} and #{end}
+        <if test="start != null">
+            and created_time >= #{start}
+        </if>
+        <if test="end != null">
+            and created_time &lt; #{end}
+        </if>
     </select>
 
     <select id="getPlatformHasPaymentOrders" resultType="com.cyksj.model.entity.RegisterOrderDon">
@@ -42,7 +57,12 @@
                user_id
         from `register_order_don`
         where platform = #{platform}
-          and created_time between #{start} and #{end}
-          and status not in ('close', 'noPayment', 'refund')
+        <if test="start != null">
+            and created_time >= #{start}
+        </if>
+        <if test="end != null">
+            and created_time &lt; #{end}
+        </if>
+        and status not in ('close', 'noPayment', 'refund')
     </select>
 </mapper>

+ 1 - 1
netflix-service/src/main/java/com/cyksj/service/mange/CmsAccountService.java

@@ -18,7 +18,7 @@ import java.util.List;
 public interface CmsAccountService extends IService<Account> {
 	IPage<ExpiredAccountDataView> getExpiredAccountView(Boolean isCorpWx, String customerService, Long goodsId, Long skuId, String account, Boolean renewStatus, Boolean handleStatus, String cnAccount, String usAccount, Integer userId, String startTime, String endTime, String now, Long offset, Long limit);
 
-	List<Account> getNoAppleOneAccount(String appleOne);
+	List<Account> getNoAppleOneAccount(Long appleOneGoodsId);
 
 	List<OrderDon> getNoAppleOneOrderDon(List<Long> skuIds, Date yesZeroDate, Date thisZeroDate, List<String> noOrderStatus);
 

+ 2 - 2
netflix-service/src/main/java/com/cyksj/service/mange/account/CmsAccountServiceImpl.java

@@ -38,8 +38,8 @@ public class CmsAccountServiceImpl extends ServiceImpl<AccountMapper, Account> i
 	}
 
 	@Override
-	public List<Account> getNoAppleOneAccount(String appleOne) {
-		return accountMapper.getNoAppleOneAccount(appleOne);
+	public List<Account> getNoAppleOneAccount(Long appleOneGoodsId) {
+		return accountMapper.getNoAppleOneAccount(appleOneGoodsId);
 	}
 
 	@Override

+ 44 - 26
netflix-service/src/main/java/com/cyksj/service/mange/statistics/impl/StatisticsDataServiceImpl.java

@@ -3,16 +3,14 @@ package com.cyksj.service.mange.statistics.impl;
 import cn.hutool.core.date.DateTime;
 import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.cyksj.common.constant.Constant;
 import com.cyksj.dto.Result;
 import com.cyksj.enums.GatewayResponse;
 import com.cyksj.mapper.*;
-import com.cyksj.mapper.manage.statistics.AppleOneDataMapper;
-import com.cyksj.mapper.manage.statistics.RealGoodsDataMapper;
-import com.cyksj.mapper.manage.statistics.StatisticsUserDataMapper;
-import com.cyksj.mapper.manage.statistics.StreamingAccountDataMapper;
+import com.cyksj.mapper.manage.statistics.*;
 import com.cyksj.model.entity.*;
 import com.cyksj.model.excel.ExcelAccountData;
 import com.cyksj.model.excel.ExcelSheetAndData;
@@ -72,6 +70,8 @@ public class StatisticsDataServiceImpl implements StatisticsDataService {
 
 	private final StatisticsUserDataMapper statisticsUserDataMapper;
 
+	private final StatisticsFashionGoodsDataMapper statisticsFashionGoodsDataMapper;
+
 	@Override
 	public Result<BackgroundDataView> getStatisticsByCondition(Long startTime, Long endTime) {
 		BackgroundDataView backgroundDataView = new BackgroundDataView();
@@ -111,8 +111,7 @@ public class StatisticsDataServiceImpl implements StatisticsDataService {
 			}).collect(Collectors.toList());
 			backgroundDataView.setFashionGoodsDataViews(collect);
 		} else {
-			List<StatisticsFashionGoodsData> fashionGoodsData = beanSearcher.searchAll(StatisticsFashionGoodsData.class, MapUtils.builder()
-					.field(StatisticsFashionGoodsData::getCreatedTime, startDate, endDate).op(Operator.Between).build());
+			List<StatisticsFashionGoodsData> fashionGoodsData = statisticsFashionGoodsDataMapper.statisticsFashionGoodsData(startDate, endDate);
 			Optional.ofNullable(fashionGoodsData).ifPresent(list -> list.forEach(data -> {
 				GoodsDon goodsDon = goodsDonMapper.selectOne(Wrappers.lambdaQuery(GoodsDon.class).eq(GoodsDon::getId, data.getGoodsId()).last("limit 1"));
 				if (goodsDon != null) {
@@ -122,7 +121,7 @@ public class StatisticsDataServiceImpl implements StatisticsDataService {
 				if (goodsDonSku != null) {
 					data.setSpecVal(goodsDonSku.getSpecVal());
 				}
-				data.setRefundMoney(getRefundMoney(data.getGoodsId(), null, startDate, endDate));
+				data.setRefundMoney(getRefundMoney(null, data.getSkuId(), startDate, endDate));
 			}));
 			backgroundDataView.setFashionGoodsDataViews(fashionGoodsData);
 		}
@@ -293,7 +292,7 @@ public class StatisticsDataServiceImpl implements StatisticsDataService {
 	}
 
 	private void exportFashionData(List<ExcelSheetAndData> excelSheetDataList, String startDate, String endDate) {
-		List<Long> goodsIds = statisticsUserDataMapper.getAllFashionGoods(startDate, endDate);
+		List<Long> goodsIds = goodsDonMapper.selectList(Wrappers.lambdaQuery(GoodsDon.class).eq(GoodsDon::getType, Constant.realGoodsType.get(1))).stream().map(GoodsDon::getId).collect(Collectors.toList());
 		List<ExcelRealGoodsData> fashionData = new ArrayList<>();
 		goodsIds.forEach(goodsId -> {
 			//查找所有规格
@@ -318,7 +317,7 @@ public class StatisticsDataServiceImpl implements StatisticsDataService {
 	}
 
 	private void exportRealGoodsData(List<ExcelSheetAndData> excelSheetDataList, String startDate, String endDate) {
-		List<Long> goodsIds = statisticsUserDataMapper.getAllRealGoods(startDate, endDate);
+		List<Long> goodsIds = goodsDonMapper.selectList(Wrappers.lambdaQuery(GoodsDon.class).eq(GoodsDon::getType, Constant.realGoodsType.get(0))).stream().map(GoodsDon::getId).collect(Collectors.toList());
 		List<ExcelRealGoodsData> realGoodsData = new ArrayList<>();
 		goodsIds.forEach(goodsId -> {
 			//查找所有规格
@@ -343,11 +342,15 @@ public class StatisticsDataServiceImpl implements StatisticsDataService {
 	}
 
 	private void exportStreamingAccountData(List<ExcelSheetAndData> excelSheetDataList, String startDate, String endDate) {
-		List<Long> goodsIds = statisticsUserDataMapper.getAllStreaming(startDate, endDate);
+		List<Account> accounts = accountService.getNoAppleOneAccount(2l);
+		Map<Long, List<Account>> accountMaps = accounts.stream().collect(Collectors.groupingBy(Account::getGoodsId));
 		List<ExcelStreamingAccountData> streamingAccountData = new ArrayList<>();
-		goodsIds.forEach(goodsId -> {
+		accountMaps.forEach((goodsId, accountList) -> {
 			//订单数据
 			ExcelStreamingAccountData exportData = statisticsUserDataMapper.getExportStreamingAccountData(goodsId, null, null, startDate, endDate);
+			if (exportData == null || exportData.getNumOfUser() == 0) {
+				return;
+			}
 			exportData.setName(goodsDonMapper.selectById(goodsId).getTitle());
 			//兑换单数
 			exportData.setNumOfExCodeOrder(statisticsUserDataMapper.getExportStreamingAccountData(goodsId, null, true, startDate, endDate).getNumOfOrder());
@@ -370,18 +373,23 @@ public class StatisticsDataServiceImpl implements StatisticsDataService {
 	private void exportAppleOneData(List<ExcelSheetAndData> excelSheetDataList, String startDate, String endDate) {
 		Map<String, List<GoodsDonSku>> appleOneMap = statistics.getAppleOneMap();
 		List<ExcelAppleOneData> appleData = new ArrayList<>();
-		appleOneMap.forEach((k, v) -> {
+		appleOneMap.forEach((areaName, goodsDonSkuList) -> {
 			ExcelAppleOneData appleDataExcel = new ExcelAppleOneData();
-			appleDataExcel.setArea(k);
-			Set<Long> skuIds = v.stream().map(GoodsDonSku::getId).collect(Collectors.toSet());
-			List<OrderDon> orderDons = orderDonMapper.selectList(Wrappers.lambdaQuery(OrderDon.class).in(OrderDon::getSkuId, skuIds).notIn(OrderDon::getStatus, Constant.noOrderStatus).between(OrderDon::getCreatedTime, startDate, endDate));
+			appleDataExcel.setArea(areaName);
+			Set<Long> skuIds = goodsDonSkuList.stream().map(GoodsDonSku::getId).collect(Collectors.toSet());
+			List<OrderDon> orderDons = orderDonMapper.selectList(Wrappers.lambdaQuery(OrderDon.class).in(OrderDon::getSkuId, skuIds)
+					.notIn(OrderDon::getStatus, Constant.noOrderAllStatus)
+					.ge(ObjectUtil.isNotNull(startDate), OrderDon::getCreatedTime, startDate)
+					.lt(ObjectUtil.isNotNull(endDate), OrderDon::getCreatedTime, endDate));
 			appleDataExcel.setNumOfOrder(orderDons.size());
 			Set<Long> userSet = Optional.ofNullable(orderDons.stream().map(OrderDon::getUserId).collect(Collectors.toSet())).orElse(new HashSet<>());
 			appleDataExcel.setNumOfUser(userSet.size());
 			List<OrderDon> exCodeOrders = orderDonMapper.selectList(Wrappers.lambdaQuery(OrderDon.class)
 					.eq(OrderDon::getType, OrderDon.Type.EX_CODE)
 					.in(OrderDon::getSkuId, skuIds)
-					.notIn(OrderDon::getStatus, Constant.noOrderStatus).between(OrderDon::getCreatedTime, startDate, endDate));
+					.notIn(OrderDon::getStatus, Constant.noOrderAllStatus)
+					.ge(ObjectUtil.isNotNull(startDate), OrderDon::getCreatedTime, startDate)
+					.lt(ObjectUtil.isNotNull(endDate), OrderDon::getCreatedTime, endDate));
 			if (orderDons.isEmpty()) {
 				return;
 			}
@@ -391,22 +399,32 @@ public class StatisticsDataServiceImpl implements StatisticsDataService {
 			List<OrderDon> distributeOrders = orderDonMapper.selectList(Wrappers.lambdaQuery(OrderDon.class)
 					.eq(OrderDon::getIsDistribute, true)
 					.in(OrderDon::getSkuId, skuIds)
-					.notIn(OrderDon::getStatus, Constant.noOrderStatus).between(OrderDon::getCreatedTime, startDate, endDate));
+					.notIn(OrderDon::getStatus, Constant.noOrderAllStatus)
+					.ge(ObjectUtil.isNotNull(startDate), OrderDon::getCreatedTime, startDate)
+					.lt(ObjectUtil.isNotNull(endDate), OrderDon::getCreatedTime, endDate));
 			appleDataExcel.setDisOrder(distributeOrders.size());
 			Optional<BigDecimal> distributeMoney = distributeOrders.stream().map(OrderDon::getMoney).reduce(BigDecimal::add);
 			appleDataExcel.setDisMoney(distributeMoney.isPresent() ? distributeMoney.get().divide(BigDecimal.valueOf(100)) : BigDecimal.ZERO);
 			Map<Long, List<OrderDon>> skuMaps = orderDons.stream().collect(Collectors.groupingBy(OrderDon::getSkuId));
-			v.forEach(sku -> {
+			Integer monthOrder = 0;
+			Integer searOrder = 0;
+			Integer yearOrder = 0;
+			for (GoodsDonSku sku : goodsDonSkuList) {
 				Long skuId = sku.getId();
-				List<OrderDon> dons = Optional.ofNullable(skuMaps.get(skuId)).orElse(new ArrayList<>());
-				if (sku.getSpecVal().contains(Constant.payType.get(0)) && !sku.getSpecVal().contains(Constant.payType.get(2))) {
-					appleDataExcel.setMonth(dons.size());
-				} else if (sku.getSpecVal().contains(Constant.payType.get(1))) {
-					appleDataExcel.setSeason(dons.size());
-				} else if (!sku.getSpecVal().contains(Constant.payType.get(0)) && sku.getSpecVal().contains(Constant.payType.get(2))) {
-					appleDataExcel.setYear(dons.size());
+				if (StrUtil.isNotBlank(sku.getSpecVal())) {
+					List<OrderDon> dons = Optional.ofNullable(skuMaps.get(skuId)).orElse(new ArrayList<>());
+					if (sku.getSpecVal().contains(Constant.payType.get(0)) && !sku.getSpecVal().contains(Constant.payType.get(2))) {
+						monthOrder += dons.size();
+					} else if (sku.getSpecVal().contains(Constant.payType.get(1))) {
+						searOrder += dons.size();
+					} else if (!sku.getSpecVal().contains(Constant.payType.get(0)) && sku.getSpecVal().contains(Constant.payType.get(2))) {
+						yearOrder += dons.size();
+					}
 				}
-			});
+			}
+			appleDataExcel.setMonth(monthOrder);
+			appleDataExcel.setSeason(searOrder);
+			appleDataExcel.setYear(yearOrder);
 			appleData.add(appleDataExcel);
 		});
 		if (appleData.isEmpty()) {

+ 1 - 1
netflix-service/src/main/java/com/cyksj/service/order/OrderDonService.java

@@ -50,7 +50,7 @@ public interface OrderDonService extends IService<OrderDon> {
 
     OrderDonView getDetail(Long orderId, Long userId);
 
-	List<OrderDon> getAppleOneOrderDons(String appleOne, List<Long> skuIds,List<Long> goodsIds, List<String> noOrderStatus, Date yesZeroDate, Date thisZeroDate);
+    List<OrderDon> getAppleOneOrderDons(List<Long> skuIds, List<String> noOrderStatus, Date yesZeroDate, Date thisZeroDate);
 
     /**
      * 支付宝预支付

+ 2 - 2
netflix-service/src/main/java/com/cyksj/service/order/impl/OrderDonServiceImpl.java

@@ -699,8 +699,8 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
 	}
 
 	@Override
-	public List<OrderDon> getAppleOneOrderDons(String appleOne, List<Long> skuIds, List<Long> goodsIds, List<String> noOrderStatus, Date yesZeroDate, Date thisZeroDate) {
-		return orderDonMapper.getAppleOneOrderDons(appleOne, skuIds, goodsIds, noOrderStatus, yesZeroDate, thisZeroDate);
+	public List<OrderDon> getAppleOneOrderDons(List<Long> skuIds, List<String> noOrderStatus, Date yesZeroDate, Date thisZeroDate) {
+		return orderDonMapper.getAppleOneOrderDons(skuIds, noOrderStatus, yesZeroDate, thisZeroDate);
 	}
 
 	@Override

+ 4 - 7
netflix-service/src/main/java/com/cyksj/task/StatisticsDataScheduler.java

@@ -53,8 +53,6 @@ public class StatisticsDataScheduler {
 
 	private final StreamingAccountDataMapper streamingAccountDataMapper;
 
-	private final static String APPLE_ONE = "Apple One";
-
 	private final GoodsDonMapper goodsDonMapper;
 
 	private final RealGoodsDataMapper realGoodsDataMapper;
@@ -193,8 +191,7 @@ public class StatisticsDataScheduler {
 			appleOne.setAreaName(areaName);
 			//通过skuIds找到对应的appleOne统计数据
 			List<Long> skuIds = skus.stream().map(GoodsDonSku::getId).collect(Collectors.toList());
-			List<Long> goodsId = skus.stream().map(GoodsDonSku::getGoodsId).distinct().collect(Collectors.toList());
-			List<OrderDon> orderDons = Optional.ofNullable(orderDonService.getAppleOneOrderDons(APPLE_ONE, skuIds, goodsId, Constant.noOrderStatus, yesZeroDate, thisZeroDate)).orElse(new ArrayList<>());
+			List<OrderDon> orderDons = Optional.ofNullable(orderDonService.getAppleOneOrderDons(skuIds, Constant.noOrderStatus, yesZeroDate, thisZeroDate)).orElse(new ArrayList<>());
 			appleOneDataStatistics(orderDons, appleOne, appleOneSave);
 		});
 
@@ -242,7 +239,7 @@ public class StatisticsDataScheduler {
 	 * 统计流媒体账号数据
 	 */
 	public List<StreamingAccountData> statisticsStreamingAccountData(Date yesZeroDate, Date thisZeroDate, Boolean today) {
-		List<Account> accounts = accountService.getNoAppleOneAccount(APPLE_ONE);
+		List<Account> accounts = accountService.getNoAppleOneAccount(2l);
 		Map<Long, List<Account>> accountMaps = accounts.stream().collect(Collectors.groupingBy(Account::getGoodsId));
 		List<StreamingAccountData> streamingAccountDataSave = new ArrayList<>(accounts.size());
 		accountMaps.forEach((goodsId, accountList) -> {
@@ -373,7 +370,7 @@ public class StatisticsDataScheduler {
 	 * 获取Apple区域map
 	 */
 	public Map<String, List<GoodsDonSku>> getAppleOneMap() {
-		GoodsDon goodsDon = goodsDonMapper.selectOne(Wrappers.lambdaQuery(GoodsDon.class).eq(GoodsDon::getTitle, APPLE_ONE).last("limit 1"));
+		GoodsDon goodsDon = goodsDonMapper.selectOne(Wrappers.lambdaQuery(GoodsDon.class).eq(GoodsDon::getId, 2).last("limit 1"));
 		List<GoodsDonSku> list = goodsDonSkuService.list(Wrappers.lambdaQuery(GoodsDonSku.class).eq(GoodsDonSku::getGoodsId, goodsDon.getId()).select(GoodsDonSku::getId, GoodsDonSku::getSpecVal));
 		Set<String> area = new HashSet<>();
 		list.forEach(sku -> {
@@ -384,7 +381,7 @@ public class StatisticsDataScheduler {
 		});
 		Map<String, List<GoodsDonSku>> areaDataMap = new HashMap<>();
 		for (String name : area) {
-			List<GoodsDonSku> sku = Optional.ofNullable(goodsDonSkuService.list(Wrappers.lambdaQuery(GoodsDonSku.class).like(GoodsDonSku::getSpecVal, name).select(GoodsDonSku::getId, GoodsDonSku::getGoodsId))).orElse(new ArrayList<>());
+			List<GoodsDonSku> sku = Optional.ofNullable(goodsDonSkuService.list(Wrappers.lambdaQuery(GoodsDonSku.class).like(GoodsDonSku::getSpecVal, name).select(GoodsDonSku::getId, GoodsDonSku::getGoodsId, GoodsDonSku::getSpecVal))).orElse(new ArrayList<>());
 			areaDataMap.put(name, sku);
 		}
 		return areaDataMap;