소스 검색

业务数据导出增加每月设备来源订单数

zoujiajian 2 년 전
부모
커밋
54267cb7b4

+ 2 - 0
netflix-dao/src/main/java/com/cyksj/mapper/manage/statistics/StatisticsExportMapper.java

@@ -74,4 +74,6 @@ public interface StatisticsExportMapper{
 	List<NatureOrderDataDto> getGroupsOrderData(@Param("startDate") String startDate, @Param("endDate") String endDate);
 
 	List<MonthlyUserOrderDetailDto> getMonthlyUserOrderDetail(@Param("thisMonth") DateTime thisMonth, @Param("nextMonth") DateTime nextMonth);
+
+	Map<String, Long> getEpOrderNumsGroupSource(@Param("startDate") String startDate, @Param("endDate") String endDate);
 }

+ 6 - 0
netflix-dao/src/main/java/com/cyksj/model/excel/ExcelMonthlyDistributeOrderData.java

@@ -63,6 +63,9 @@ public class ExcelMonthlyDistributeOrderData {
 	@ExcelProperty({"下单率","自然流量渠道","自然渠道下单人数"})
 	private Integer natureUserSourceOrderNum;
 
+	@ExcelProperty({"下单率","自然流量渠道","自然渠道设备下单数"})
+	private Integer natureUserSourceEpOrderNum;
+
 	@ExcelProperty({"下单率","自然流量渠道","下单率"})
 	private String natureUserSourceOrderRate;
 
@@ -72,6 +75,9 @@ public class ExcelMonthlyDistributeOrderData {
 	@ExcelProperty({"下单率","分销渠道","分销渠道下单人数"})
 	private Integer channelUserSourceOrderNum;
 
+	@ExcelProperty({"下单率","分销渠道","分销渠道设备下单数"})
+	private Integer channelUserSourceEpOrderNum;
+
 	@ExcelProperty({"下单率","分销渠道","下单率"})
 	private String channelUserSourceOrderRate;
 }

+ 14 - 0
netflix-dao/src/main/resources/mapper/StatisticsExportMapper.xml

@@ -505,4 +505,18 @@
           and o.created_time BETWEEN #{thisMonth} and #{nextMonth}
           and u.created_time BETWEEN #{thisMonth} and #{nextMonth}
     </select>
+
+    <select id="getEpOrderNumsGroupSource" resultType="java.util.Map">
+        select count(if(is_distribute = 0,1,NULL)) naturalEpOrders,count(if(is_distribute = 1,1,NULL)) distributeOrders
+        from order_don
+        where status not in ('close', 'noPayment', 'refund')
+        and goods_id = 15
+        <if test="startDate != null">
+            and created_time >= #{startDate}
+        </if>
+        <if test="endDate != null">
+            and created_time &lt; #{endDate}
+        </if>
+        group by DATE_FORMAT(created_time, '%Y-%m')
+    </select>
 </mapper>

+ 7 - 0
netflix-service/src/main/java/com/cyksj/service/mange/statistics/impl/StatisticsDataServiceImpl.java

@@ -735,6 +735,13 @@ public class StatisticsDataServiceImpl implements StatisticsDataService {
 		excelMonthlyDistributeOrderData.setChannelUserSourceNum(channelUserSourceNum);
 		excelMonthlyDistributeOrderData.setChannelUserSourceOrderNum(channelUserSourceOrderNum);
 		excelMonthlyDistributeOrderData.setChannelUserSourceOrderRate(channelUserSourceOrderRate);
+
+		Map<String, Long> epOrderSourceMap = statisticsExportMapper.getEpOrderNumsGroupSource(startDate, endDate);
+
+		Integer naturalEpOrders = Integer.parseInt(epOrderSourceMap.get("naturalEpOrders").toString());
+		Integer distributeOrders = Integer.parseInt(epOrderSourceMap.get("distributeOrders").toString());
+		excelMonthlyDistributeOrderData.setNatureUserSourceEpOrderNum(naturalEpOrders);
+		excelMonthlyDistributeOrderData.setChannelUserSourceEpOrderNum(distributeOrders);
 		excelSheetDataList.add(new ExcelSheetAndData("每月用户分销数据", List.of(excelMonthlyDistributeOrderData), ExcelMonthlyDistributeOrderData.class, 2));
 	}