From fb6eb1e6b9df772d243b5ade8b9e3dd08028e935 Mon Sep 17 00:00:00 2001
From: Administrator <Administrator@MS-20170306HGUF>
Date: 星期二, 25 二月 2020 20:05:56 +0800
Subject: [PATCH] 刷单标识

---
 fanli/src/main/java/com/yeshi/fanli/mapping/order/CommonOrderCountMapper.xml |  654 ++++++++++++++++++++++++++++++-----------------------------
 1 files changed, 331 insertions(+), 323 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/mapping/order/CommonOrderCountMapper.xml b/fanli/src/main/java/com/yeshi/fanli/mapping/order/CommonOrderCountMapper.xml
index 5e9a09d..0773862 100644
--- a/fanli/src/main/java/com/yeshi/fanli/mapping/order/CommonOrderCountMapper.xml
+++ b/fanli/src/main/java/com/yeshi/fanli/mapping/order/CommonOrderCountMapper.xml
@@ -1,323 +1,331 @@
-<?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.yeshi.fanli.dao.mybatis.order.CommonOrderCountMapper">
-    <resultMap id="ChartMap" type="com.yeshi.fanli.dto.ChartTDO">
-		<result column="showDate" property="showDate" jdbcType="VARCHAR" />
-		<result column="showValue" property="showValue" jdbcType="VARCHAR" />
-	</resultMap>
-
- 	<resultMap id="CountOrderMap" type="com.yeshi.fanli.dto.order.CountOrderDTO">
-		<result column="uid" property="uid" jdbcType="BIGINT" />
-		<result column="totalOrder" property="totalOrder" jdbcType="INTEGER" />
-		<result column="commission" property="commission" jdbcType="DECIMAL" />
-	</resultMap>
-	
-	<sql id="Column_DateType">
-		<if test="dateType == 1">
-			DATE_FORMAT(t.`co_third_create_time`,'%Y-%m-%d') AS 'showDate'
-		</if>
-		<if test="dateType == 2">
-			DATE_FORMAT(t.`co_third_create_time`,'%m') AS 'showDate'
-		</if>
-		<if test="dateType == 3">
-			DATE_FORMAT(t.`co_third_create_time`,'%Y') AS 'showDate'
-		</if>
-	</sql>
-
-	<sql id="Count_Select_DateType">
-		<if test="startTime != null and startTime != '' ">
-			AND DATE_FORMAT(t.`co_third_create_time`,'%Y-%m-%d')<![CDATA[ >= ]]>'${startTime}'
-		</if>
-		<if test="endTime != null and endTime != '' ">
-			AND DATE_FORMAT(t.`co_third_create_time`,'%Y-%m-%d') <![CDATA[ <= ]]>'${endTime}'
-		</if>
-		<if test="year != null and year != '' ">
-			AND DATE_FORMAT(t.`co_third_create_time`,'%Y') = '${year}'
-		</if>
-	</sql>
-
-	<sql id="Count_Group_DateType">
-		<if test="dateType == 1">
-			GROUP BY DATE_FORMAT(t.`co_third_create_time`,'%Y-%m-%d')
-		</if>
-		<if test="dateType == 2">
-			GROUP BY DATE_FORMAT(t.`co_third_create_time`,'%Y-%m')
-		</if>
-		<if test="dateType == 3">
-			GROUP BY DATE_FORMAT(t.`co_third_create_time`,'%Y')
-		</if>
-	</sql>
-
-	<select id="countByState" resultType="java.lang.Long">
-		SELECT IFNULL(COUNT(t.`co_id`),0) FROM  `yeshi_ec_common_order` t 
-		WHERE 1=1 
-			<if test="type != null"> 
-				AND t.`co_state` = #{state}
-			</if>
-	</select>
-	
-	<select id="countOrderBySourceTypeAndDay" resultType="java.lang.Long">
-		SELECT COUNT(t.`co_id`) FROM `yeshi_ec_common_order` t 
-		WHERE t.co_source_type=#{sourceType} AND DATE_FORMAT(t.`co_third_create_time`,'%Y-%m-%d') = #{preDay}
-	</select>
-	
-	
-	<select id="countOrderNumberBySettleTime" resultType="java.util.HashMap">
-		<!-- 缁熻鍘嗗彶璁㈠崟鏁伴噺  鏍规嵁缁撶畻鏃堕棿 -->
-		SELECT SUM(A.self)AS totalSelf,SUM(A.shared)AS totalShared,SUM(A.invite)AS totalInvite
-		FROM ( 
-			<!-- 杩斿埄璁㈠崟 -->
-			SELECT IFNULL(COUNT(ho_id),0) AS self,0 AS shared,0 AS invite
-			FROM  (SELECT ho.`ho_id` FROM yeshi_ec_hongbao_order ho 
-				LEFT JOIN ( 
-					SELECT * FROM yeshi_ec_hongbao_v2 v2 
-					WHERE v2.`hb_uid`= ${uid} and v2.hb_state!=4 AND (v2.`hb_type` = 1 OR v2.`hb_type` = 2)
-					) hb  ON hb.hb_id=ho.`ho_hongbao_id` <!-- 鑷喘璁㈠崟 -->
-			LEFT JOIN yeshi_ec_common_order co ON co.`co_id`=ho.`ho_order_id`
-			WHERE hb.hb_id IS NOT NULL 
-		 		<if test="state != null"> 
-					AND co.`co_state` = ${state} 
-				</if>
-				
-				<if test="day != null and day == 1"> <!-- 浠婂ぉ -->
-					AND TO_DAYS(co.`co_settle_time`) = TO_DAYS(NOW())
-				</if>
-				<if test="day != null and day == 2">  <!-- 鏄ㄥぉ -->
-					AND TO_DAYS(NOW()) - TO_DAYS(co.co_settle_time) = 1
-				</if>
-				<if test="day != null and day == 3">  <!-- 鏈湀 -->
-					AND DATE_FORMAT(co.`co_settle_time`,'%Y%m') =
-					DATE_FORMAT(CURDATE(),'%Y%m')
-				</if>
-				<if test="day != null and day == 4">  <!-- 涓婃湀 -->
-					AND PERIOD_DIFF(DATE_FORMAT(NOW(), '%Y%m'),
-					DATE_FORMAT(co.`co_settle_time`, '%Y%m')) = 1
-				</if>
-			GROUP BY co.`co_order_no`, co.`co_source_type`)YX
-			
-			UNION ALL
-			<!-- 鍒嗕韩璁㈠崟 -->
-			SELECT 0 AS self,IFNULL(COUNT(ho_id),0) AS shared,0 AS invite
-			FROM  (SELECT ho.`ho_id` FROM yeshi_ec_hongbao_order ho 
-					LEFT JOIN ( 
-						SELECT * FROM yeshi_ec_hongbao_v2 v2 
-						WHERE v2.`hb_uid`= ${uid} AND v2.`hb_type` = 20 and v2.hb_state!=4
-					) hb  ON hb.hb_id=ho.`ho_hongbao_id`  <!-- 鍒嗕韩璁㈠崟 -->
-	
-				LEFT JOIN yeshi_ec_common_order co ON co.`co_id`=ho.`ho_order_id`
-				WHERE hb.hb_id IS NOT NULL and hb.hb_state!=4
-					<if test="state != null"> 
-						AND co.`co_state` = ${state} 
-					</if>
-					
-					<if test="day != null and day == 1"> <!-- 浠婂ぉ -->
-						AND TO_DAYS(co.`co_settle_time`) = TO_DAYS(NOW())
-					</if>
-					<if test="day != null and day == 2">  <!-- 鏄ㄥぉ -->
-						AND TO_DAYS(NOW()) - TO_DAYS(co.`co_settle_time`) = 1
-					</if>
-					<if test="day != null and day == 3">  <!-- 鏈湀 -->
-						AND DATE_FORMAT(co.`co_settle_time`,'%Y%m') =
-						DATE_FORMAT(CURDATE(),'%Y%m')
-					</if>
-					<if test="day != null and day == 4">  <!-- 涓婃湀 -->
-						AND PERIOD_DIFF(DATE_FORMAT(NOW(), '%Y%m'),
-						DATE_FORMAT(co.`co_settle_time`, '%Y%m')) = 1
-					</if>
-				GROUP BY co.`co_order_no`, co.`co_source_type`)WQ
-				
-			UNION ALL
-			<!-- 閭�璇疯鍗� -->
-			SELECT 0 AS self,0 AS shared,IFNULL(COUNT(ho_id),0) AS invite 
-			FROM  (SELECT ho.`ho_id` FROM yeshi_ec_hongbao_order ho 	
-				LEFT JOIN ( 
-					SELECT * FROM yeshi_ec_hongbao_v2 v2 
-					WHERE v2.`hb_uid`= ${uid}
-						 AND (v2.`hb_type` = 5 OR v2.`hb_type` = 6 OR v2.`hb_type` = 7
-							   OR v2.`hb_type` = 21 OR v2.`hb_type` = 22 ) and v2.hb_state!=4
-					) hbp  ON hbp.hb_pid=ho.`ho_hongbao_id`
-				LEFT JOIN yeshi_ec_common_order co ON co.`co_id`=ho.`ho_order_id`
-				WHERE  hbp.hb_id IS NOT NULL and hbp.hb_state!=4
-					<if test="state != null"> 
-						AND co.`co_state` = ${state} 
-					</if>
-					<if test="day != null and day == 1"> <!-- 浠婂ぉ -->
-						AND TO_DAYS(co.`co_settle_time`) = TO_DAYS(NOW())
-					</if>
-					<if test="day != null and day == 2">  <!-- 鏄ㄥぉ -->
-						AND TO_DAYS(NOW()) - TO_DAYS(co.`co_settle_time`) = 1
-					</if>
-					<if test="day != null and day == 3">  <!-- 鏈湀 -->
-						AND DATE_FORMAT(co.`co_settle_time`,'%Y%m') =
-						DATE_FORMAT(CURDATE(),'%Y%m')
-					</if>
-					<if test="day != null and day == 4">  <!-- 涓婃湀 -->
-						AND PERIOD_DIFF(DATE_FORMAT(NOW(), '%Y%m'),
-						DATE_FORMAT(co.`co_settle_time`, '%Y%m')) = 1
-					</if>
-				GROUP BY co.`co_order_no`, co.`co_source_type`)SX
-		)A
-	</select>
-	
-	<select id="countValidOrder" resultType="java.lang.Long">
-		SELECT IFNULL(COUNT(co.`co_id`),0) FROM yeshi_ec_hongbao_order ho 
-		LEFT JOIN (SELECT * FROM yeshi_ec_hongbao_v2 v2 
-			WHERE v2.`hb_uid`= #{uid}  AND v2.`hb_type` IN(1,20))hb 
-			ON IF(hb.hb_pid IS NULL,hb.hb_id,hb.hb_pid)=ho.`ho_hongbao_id`
-		LEFT JOIN yeshi_ec_common_order co ON co.`co_id`=ho.`ho_order_id`
-		WHERE hb.hb_id IS NOT NULL AND <![CDATA[co.`co_state` <> 4]]>
-	</select>
-	
-	<select id="getMoneyByOrderNo" resultType="java.math.BigDecimal">
-		SELECT SUM(v2.`hb_money`) FROM yeshi_ec_common_order co 
-		LEFT JOIN  yeshi_ec_hongbao_order ho ON co.`co_id`=ho.`ho_order_id`
-		LEFT JOIN yeshi_ec_hongbao_v2 v2 ON  v2.hb_id=ho.`ho_hongbao_id` 
-		WHERE co.`co_order_no` = #{orderNo}
-	</select>
-	
-	<select id="countValidOrderByDate" resultType="Long">
-		SELECT IFNULL(COUNT(co_order_no),0) FROM
-			(SELECT DISTINCT co.co_order_no FROM yeshi_ec_common_order co 
-			 LEFT JOIN  yeshi_ec_hongbao_order ho ON co.`co_id`=ho.`ho_order_id`
-			 LEFT JOIN yeshi_ec_hongbao_v2 v2 ON  v2.hb_id=ho.`ho_hongbao_id` 
-			 WHERE co.`co_uid` = #{uid} AND v2.`hb_type` = 1 
-				   AND v2.`hb_state` = 3 AND  AND co.`co_third_create_time` <![CDATA[>]]> #{dateTime})A
-	</select>
-	
-	<select id="countSameShopOrderByUidAndHongBaoType" resultType="Long">
-		SELECT COUNT(*) FROM
-		(
-			SELECT a.*,COUNT(*) AS num FROM 
-			(
-				SELECT co.*,COUNT(*) AS c,g.`cog_shop_id` AS shopId FROM yeshi_ec_common_order co 
-				LEFT JOIN yeshi_ec_hongbao_order ho ON co.`co_id`=ho.`ho_order_id` 
-				LEFT JOIN yeshi_ec_hongbao_v2 v ON v.`hb_id`=ho.`ho_hongbao_id` 
-				LEFT JOIN yeshi_ec_common_order_goods g  ON co.`co_order_goods_id`=g.`cog_id` 
-				WHERE  co.`co_uid`=#{uid}  AND g.`cog_shop_id` <![CDATA[<>]]> 725677994  <!-- 澶╃尗瓒呭競 -->
-				<if test="typeList!=null">
-					<foreach collection="typeList" item="type" open=" and (" separator=" or " close=")">
-						v.`hb_type`=#{type}
-					</foreach>
-				</if>
-				AND v.`hb_id` IS NOT NULL 
-				AND (co.`co_state`=1 OR  co.`co_state`=2 OR co.`co_state`=3)  
-				AND g.`cog_shop_id`>0 GROUP BY co.`co_order_no`,co.`co_source_type`
-			) a GROUP BY a.shopId
-		) b WHERE b.num>=#{minSameShopGoodsCount};
-	</select>
-	
-	
-	<select id="countSameGoodsOrderByUidAndHongBaoType" resultType="Long">
-		SELECT COUNT(*) FROM
-		(
-			SELECT a.goodsId,COUNT(*) AS c FROM
-			(
-				SELECT co.`co_order_goods_id` AS goodsId,co.`co_order_no` FROM yeshi_ec_common_order co 
-				LEFT JOIN yeshi_ec_hongbao_order ho ON co.`co_id`=ho.`ho_order_id` 
-				LEFT JOIN yeshi_ec_hongbao_v2 v ON v.`hb_id`=ho.`ho_hongbao_id` 
-				LEFT JOIN yeshi_ec_common_order_goods g  ON co.`co_order_goods_id`=g.`cog_id`  
-				WHERE co.`co_uid`=#{uid} AND g.`cog_shop_id` <![CDATA[<>]]> 725677994  <!-- 澶╃尗瓒呭競 -->
-				<if test="typeList!=null">
-					<foreach collection="typeList" item="type" open=" and (" separator=" or " close=")">
-						v.`hb_type`=#{type}
-					</foreach>
-				</if>
-				AND v.`hb_id` IS NOT NULL
-				AND (co.`co_state`=1 OR  co.`co_state`=2 OR co.`co_state`=3) 
-				GROUP BY co.`co_order_no`,co.`co_order_goods_id`
-			) a GROUP BY goodsId 
-		) b WHERE b.c>=#{minSameGoodsOrderCount}
-	</select>
-	
-	
-	
-	<select id="getSameShopOrderByUidAndHongBaoType" resultType="Long">
-		SELECT b.shopId FROM
-		(
-			SELECT a.*,COUNT(*) AS num FROM 
-			(
-				SELECT co.*,COUNT(*) AS c,g.`cog_shop_id` AS shopId FROM yeshi_ec_common_order co 
-				LEFT JOIN yeshi_ec_hongbao_order ho ON co.`co_id`=ho.`ho_order_id` 
-				LEFT JOIN yeshi_ec_hongbao_v2 v ON v.`hb_id`=ho.`ho_hongbao_id` 
-				LEFT JOIN yeshi_ec_common_order_goods g  ON co.`co_order_goods_id`=g.`cog_id` 
-				WHERE  co.`co_uid`=#{uid} AND g.`cog_shop_id` <![CDATA[<>]]> 725677994  <!-- 澶╃尗瓒呭競 -->
-				<if test="typeList!=null">
-					<foreach collection="typeList" item="type" open=" and (" separator=" or " close=")">
-						v.`hb_type`=#{type}
-					</foreach>
-				</if>
-				AND v.`hb_id` IS NOT NULL 
-				AND (co.`co_state`=1 OR  co.`co_state`=2 OR co.`co_state`=3)  
-				AND g.`cog_shop_id`>0 GROUP BY co.`co_order_no`,co.`co_source_type`
-			) a GROUP BY a.shopId
-		) b WHERE b.num>=#{minSameShopGoodsCount};
-	</select>
-	
-	
-	<select id="getSameGoodsOrderByUidAndHongBaoType" resultType="Long">
-		SELECT b.goodsId FROM
-		(
-			SELECT a.goodsId,COUNT(*) AS c FROM
-			(
-				SELECT co.`co_order_goods_id` AS goodsId,co.`co_order_no` FROM yeshi_ec_common_order co 
-				LEFT JOIN yeshi_ec_hongbao_order ho ON co.`co_id`=ho.`ho_order_id` 
-				LEFT JOIN yeshi_ec_hongbao_v2 v ON v.`hb_id`=ho.`ho_hongbao_id` 
-				LEFT JOIN yeshi_ec_common_order_goods g  ON co.`co_order_goods_id`=g.`cog_id`  
-				WHERE co.`co_uid`=#{uid} AND g.`cog_shop_id` <![CDATA[<>]]> 725677994  <!-- 澶╃尗瓒呭競 -->
-				<if test="typeList!=null">
-					<foreach collection="typeList" item="type" open=" and (" separator=" or " close=")">
-						v.`hb_type`=#{type}
-					</foreach>
-				</if>
-				AND v.`hb_id` IS NOT NULL
-				AND (co.`co_state`=1 OR  co.`co_state`=2 OR co.`co_state`=3) 
-				GROUP BY co.`co_order_no`,co.`co_order_goods_id`
-			) a GROUP BY goodsId 
-		) b WHERE b.c>=#{minSameGoodsOrderCount}
-	</select>
-	
-	<select id="countOderByUidAndDate" resultType="Integer">
-		SELECT COUNT(1) FROM (SELECT d.`co_id` FROM `yeshi_ec_common_order` d
-		WHERE d.`co_third_create_time`<![CDATA[<=]]> #{preDay} AND d.`co_uid` = #{uid} 
-			  AND (d.`co_state`=1 OR d.`co_state`=2) 
-		GROUP BY d.`co_order_no`,d.`co_source_type`)A
-	</select>
-	
-	<select id="countValidOrderByDay" resultMap="CountOrderMap">
-		SELECT co_uid AS uid ,totalOrder FROM (
-			SELECT COUNT(d.`co_id`) AS totalOrder,d.`co_uid` FROM `yeshi_ec_common_order` d
-			WHERE DATE_FORMAT(d.`co_third_create_time`,'%Y-%m-%d') = '2019-11-11'  AND (d.`co_state`=1 OR d.`co_state`=2)  
-			GROUP BY d.`co_order_no`,d.`co_source_type`)A
-		GROUP BY co_uid
-	</select>
-	
-	<select id="countDownOrderUserByUidAndDate" resultType="Integer">
-		SELECT COUNT(DISTINCT d.`co_uid`) FROM `yeshi_ec_common_order` d
-		WHERE  d.`co_third_create_time`<![CDATA[<=]]> #{preDay} AND (d.`co_state`=1 OR d.`co_state`=2)  
-		<foreach collection="list" item="uid" open="AND (" separator="OR" close=")" >
-			d.`co_uid` = #{uid} 
-		</foreach>
-	</select>
-	
-	<select id="countCommissionByDay" resultMap="CountOrderMap">
-	SELECT co_uid AS uid ,commission FROM (
-			SELECT SUM(IFNULL(d.`co_eIncome`,d.`co_estimate`)) AS commission,d.`co_uid` FROM `yeshi_ec_common_order` d
-			WHERE DATE_FORMAT(d.`co_third_create_time`,'%Y-%m-%d') = '2019-11-11'  AND (d.`co_state`=1 OR d.`co_state`=2)  
-			GROUP BY d.`co_order_no`,d.`co_source_type`)A
-		GROUP BY co_uid
-	</select>
-	
-	<select id="countOderByDate" resultType="Integer">
-		SELECT COUNT(1) FROM (SELECT d.`co_id` FROM `yeshi_ec_common_order` d
-		WHERE DATE_FORMAT(d.`co_third_create_time`,'%Y-%m-%d') = #{preDay} AND (d.`co_state`=1 OR d.`co_state`=2) 
-		GROUP BY d.`co_order_no`,d.`co_source_type`)A
-	</select>
-	
-	
-	<select id="countCommissionByDate" resultType="BigDecimal">
-		SELECT SUM(IFNULL(d.`co_eIncome`,d.`co_estimate`)) FROM `yeshi_ec_common_order` d
-		WHERE d.`co_third_create_time`= #{preDay} AND (d.`co_state`=1 OR d.`co_state`=2)  
-	</select>
-	
-</mapper>
+<?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.yeshi.fanli.dao.mybatis.order.CommonOrderCountMapper">
+    <resultMap id="ChartMap" type="com.yeshi.fanli.dto.ChartTDO">
+		<result column="showDate" property="showDate" jdbcType="VARCHAR" />
+		<result column="showValue" property="showValue" jdbcType="VARCHAR" />
+	</resultMap>
+
+ 	<resultMap id="CountOrderMap" type="com.yeshi.fanli.dto.order.CountOrderDTO">
+		<result column="uid" property="uid" jdbcType="BIGINT" />
+		<result column="totalOrder" property="totalOrder" jdbcType="INTEGER" />
+		<result column="commission" property="commission" jdbcType="DECIMAL" />
+	</resultMap>
+	
+	<sql id="Column_DateType">
+		<if test="dateType == 1">
+			DATE_FORMAT(t.`co_third_create_time`,'%Y-%m-%d') AS 'showDate'
+		</if>
+		<if test="dateType == 2">
+			DATE_FORMAT(t.`co_third_create_time`,'%m') AS 'showDate'
+		</if>
+		<if test="dateType == 3">
+			DATE_FORMAT(t.`co_third_create_time`,'%Y') AS 'showDate'
+		</if>
+	</sql>
+
+	<sql id="Count_Select_DateType">
+		<if test="startTime != null and startTime != '' ">
+			AND DATE_FORMAT(t.`co_third_create_time`,'%Y-%m-%d')<![CDATA[ >= ]]>'${startTime}'
+		</if>
+		<if test="endTime != null and endTime != '' ">
+			AND DATE_FORMAT(t.`co_third_create_time`,'%Y-%m-%d') <![CDATA[ <= ]]>'${endTime}'
+		</if>
+		<if test="year != null and year != '' ">
+			AND DATE_FORMAT(t.`co_third_create_time`,'%Y') = '${year}'
+		</if>
+	</sql>
+
+	<sql id="Count_Group_DateType">
+		<if test="dateType == 1">
+			GROUP BY DATE_FORMAT(t.`co_third_create_time`,'%Y-%m-%d')
+		</if>
+		<if test="dateType == 2">
+			GROUP BY DATE_FORMAT(t.`co_third_create_time`,'%Y-%m')
+		</if>
+		<if test="dateType == 3">
+			GROUP BY DATE_FORMAT(t.`co_third_create_time`,'%Y')
+		</if>
+	</sql>
+
+	<select id="countByState" resultType="java.lang.Long">
+		SELECT IFNULL(COUNT(t.`co_id`),0) FROM  `yeshi_ec_common_order` t 
+		WHERE 1=1 
+			<if test="type != null"> 
+				AND t.`co_state` = #{state}
+			</if>
+	</select>
+	
+	<select id="countOrderBySourceTypeAndDay" resultType="java.lang.Long">
+		SELECT COUNT(t.`co_id`) FROM `yeshi_ec_common_order` t 
+		WHERE t.co_source_type=#{sourceType} AND DATE_FORMAT(t.`co_third_create_time`,'%Y-%m-%d') = #{preDay}
+	</select>
+	
+	
+	<select id="countOrderNumberBySettleTime" resultType="java.util.HashMap">
+		<!-- 缁熻鍘嗗彶璁㈠崟鏁伴噺  鏍规嵁缁撶畻鏃堕棿 -->
+		SELECT SUM(A.self)AS totalSelf,SUM(A.shared)AS totalShared,SUM(A.invite)AS totalInvite
+		FROM ( 
+			<!-- 杩斿埄璁㈠崟 -->
+			SELECT IFNULL(COUNT(ho_id),0) AS self,0 AS shared,0 AS invite
+			FROM  (SELECT ho.`ho_id` FROM yeshi_ec_hongbao_order ho 
+				LEFT JOIN ( 
+					SELECT * FROM yeshi_ec_hongbao_v2 v2 
+					WHERE v2.`hb_uid`= ${uid} and v2.hb_state!=4 AND (v2.`hb_type` = 1 OR v2.`hb_type` = 2)
+					) hb  ON hb.hb_id=ho.`ho_hongbao_id` <!-- 鑷喘璁㈠崟 -->
+			LEFT JOIN yeshi_ec_common_order co ON co.`co_id`=ho.`ho_order_id`
+			WHERE hb.hb_id IS NOT NULL 
+		 		<if test="state != null"> 
+					AND co.`co_state` = ${state} 
+				</if>
+				
+				<if test="day != null and day == 1"> <!-- 浠婂ぉ -->
+					AND TO_DAYS(co.`co_settle_time`) = TO_DAYS(NOW())
+				</if>
+				<if test="day != null and day == 2">  <!-- 鏄ㄥぉ -->
+					AND TO_DAYS(NOW()) - TO_DAYS(co.co_settle_time) = 1
+				</if>
+				<if test="day != null and day == 3">  <!-- 鏈湀 -->
+					AND DATE_FORMAT(co.`co_settle_time`,'%Y%m') =
+					DATE_FORMAT(CURDATE(),'%Y%m')
+				</if>
+				<if test="day != null and day == 4">  <!-- 涓婃湀 -->
+					AND PERIOD_DIFF(DATE_FORMAT(NOW(), '%Y%m'),
+					DATE_FORMAT(co.`co_settle_time`, '%Y%m')) = 1
+				</if>
+			GROUP BY co.`co_order_no`, co.`co_source_type`)YX
+			
+			UNION ALL
+			<!-- 鍒嗕韩璁㈠崟 -->
+			SELECT 0 AS self,IFNULL(COUNT(ho_id),0) AS shared,0 AS invite
+			FROM  (SELECT ho.`ho_id` FROM yeshi_ec_hongbao_order ho 
+					LEFT JOIN ( 
+						SELECT * FROM yeshi_ec_hongbao_v2 v2 
+						WHERE v2.`hb_uid`= ${uid} AND v2.`hb_type` = 20 and v2.hb_state!=4
+					) hb  ON hb.hb_id=ho.`ho_hongbao_id`  <!-- 鍒嗕韩璁㈠崟 -->
+	
+				LEFT JOIN yeshi_ec_common_order co ON co.`co_id`=ho.`ho_order_id`
+				WHERE hb.hb_id IS NOT NULL and hb.hb_state!=4
+					<if test="state != null"> 
+						AND co.`co_state` = ${state} 
+					</if>
+					
+					<if test="day != null and day == 1"> <!-- 浠婂ぉ -->
+						AND TO_DAYS(co.`co_settle_time`) = TO_DAYS(NOW())
+					</if>
+					<if test="day != null and day == 2">  <!-- 鏄ㄥぉ -->
+						AND TO_DAYS(NOW()) - TO_DAYS(co.`co_settle_time`) = 1
+					</if>
+					<if test="day != null and day == 3">  <!-- 鏈湀 -->
+						AND DATE_FORMAT(co.`co_settle_time`,'%Y%m') =
+						DATE_FORMAT(CURDATE(),'%Y%m')
+					</if>
+					<if test="day != null and day == 4">  <!-- 涓婃湀 -->
+						AND PERIOD_DIFF(DATE_FORMAT(NOW(), '%Y%m'),
+						DATE_FORMAT(co.`co_settle_time`, '%Y%m')) = 1
+					</if>
+				GROUP BY co.`co_order_no`, co.`co_source_type`)WQ
+				
+			UNION ALL
+			<!-- 閭�璇疯鍗� -->
+			SELECT 0 AS self,0 AS shared,IFNULL(COUNT(ho_id),0) AS invite 
+			FROM  (SELECT ho.`ho_id` FROM yeshi_ec_hongbao_order ho 	
+				LEFT JOIN ( 
+					SELECT * FROM yeshi_ec_hongbao_v2 v2 
+					WHERE v2.`hb_uid`= ${uid}
+						 AND (v2.`hb_type` = 5 OR v2.`hb_type` = 6 OR v2.`hb_type` = 7
+							   OR v2.`hb_type` = 21 OR v2.`hb_type` = 22 ) and v2.hb_state!=4
+					) hbp  ON hbp.hb_pid=ho.`ho_hongbao_id`
+				LEFT JOIN yeshi_ec_common_order co ON co.`co_id`=ho.`ho_order_id`
+				WHERE  hbp.hb_id IS NOT NULL and hbp.hb_state!=4
+					<if test="state != null"> 
+						AND co.`co_state` = ${state} 
+					</if>
+					<if test="day != null and day == 1"> <!-- 浠婂ぉ -->
+						AND TO_DAYS(co.`co_settle_time`) = TO_DAYS(NOW())
+					</if>
+					<if test="day != null and day == 2">  <!-- 鏄ㄥぉ -->
+						AND TO_DAYS(NOW()) - TO_DAYS(co.`co_settle_time`) = 1
+					</if>
+					<if test="day != null and day == 3">  <!-- 鏈湀 -->
+						AND DATE_FORMAT(co.`co_settle_time`,'%Y%m') =
+						DATE_FORMAT(CURDATE(),'%Y%m')
+					</if>
+					<if test="day != null and day == 4">  <!-- 涓婃湀 -->
+						AND PERIOD_DIFF(DATE_FORMAT(NOW(), '%Y%m'),
+						DATE_FORMAT(co.`co_settle_time`, '%Y%m')) = 1
+					</if>
+				GROUP BY co.`co_order_no`, co.`co_source_type`)SX
+		)A
+	</select>
+	
+	<select id="countValidOrder" resultType="java.lang.Long">
+		SELECT IFNULL(COUNT(co.`co_id`),0) FROM yeshi_ec_hongbao_order ho 
+		LEFT JOIN (SELECT * FROM yeshi_ec_hongbao_v2 v2 
+			WHERE v2.`hb_uid`= #{uid}  AND v2.`hb_type` IN(1,20))hb 
+			ON IF(hb.hb_pid IS NULL,hb.hb_id,hb.hb_pid)=ho.`ho_hongbao_id`
+		LEFT JOIN yeshi_ec_common_order co ON co.`co_id`=ho.`ho_order_id`
+		WHERE hb.hb_id IS NOT NULL AND <![CDATA[co.`co_state` <> 4]]>
+	</select>
+	
+	<select id="getMoneyByOrderNo" resultType="java.math.BigDecimal">
+		SELECT SUM(v2.`hb_money`) FROM yeshi_ec_common_order co 
+		LEFT JOIN  yeshi_ec_hongbao_order ho ON co.`co_id`=ho.`ho_order_id`
+		LEFT JOIN yeshi_ec_hongbao_v2 v2 ON  v2.hb_id=ho.`ho_hongbao_id` 
+		WHERE co.`co_order_no` = #{orderNo}
+	</select>
+	
+	<select id="countValidOrderByDate" resultType="Long">
+		SELECT IFNULL(COUNT(co_order_no),0) FROM
+			(SELECT DISTINCT co.co_order_no FROM yeshi_ec_common_order co 
+			 LEFT JOIN  yeshi_ec_hongbao_order ho ON co.`co_id`=ho.`ho_order_id`
+			 LEFT JOIN yeshi_ec_hongbao_v2 v2 ON  v2.hb_id=ho.`ho_hongbao_id` 
+			 WHERE co.`co_uid` = #{uid} AND v2.`hb_type` = 1 
+				   AND v2.`hb_state` = 3 AND  AND co.`co_third_create_time` <![CDATA[>]]> #{dateTime})A
+	</select>
+	
+	<select id="countSameShopOrderByUidAndHongBaoType" resultType="Long">
+		SELECT COUNT(*) FROM
+		(
+			SELECT a.*,COUNT(*) AS num FROM 
+			(
+				SELECT co.*,COUNT(*) AS c,g.`cog_shop_id` AS shopId FROM yeshi_ec_common_order co 
+				LEFT JOIN yeshi_ec_hongbao_order ho ON co.`co_id`=ho.`ho_order_id` 
+				LEFT JOIN yeshi_ec_hongbao_v2 v ON v.`hb_id`=ho.`ho_hongbao_id` 
+				LEFT JOIN yeshi_ec_common_order_goods g  ON co.`co_order_goods_id`=g.`cog_id` 
+				WHERE  co.`co_uid`=#{uid}  AND g.`cog_shop_id` <![CDATA[<>]]> 725677994  <!-- 澶╃尗瓒呭競 -->
+				<if test="typeList!=null">
+					<foreach collection="typeList" item="type" open=" and (" separator=" or " close=")">
+						v.`hb_type`=#{type}
+					</foreach>
+				</if>
+				AND v.`hb_id` IS NOT NULL 
+				AND (co.`co_state`=1 OR  co.`co_state`=2 OR co.`co_state`=3)  
+				AND g.`cog_shop_id`>0 GROUP BY co.`co_order_no`,co.`co_source_type`
+			) a GROUP BY a.shopId
+		) b WHERE b.num>=#{minSameShopGoodsCount};
+	</select>
+	
+	
+	<select id="countSameGoodsOrderByUidAndHongBaoType" resultType="Long">
+		SELECT COUNT(*) FROM
+		(
+			SELECT a.goodsId,COUNT(*) AS c FROM
+			(
+				SELECT co.`co_order_goods_id` AS goodsId,co.`co_order_no` FROM yeshi_ec_common_order co 
+				LEFT JOIN yeshi_ec_hongbao_order ho ON co.`co_id`=ho.`ho_order_id` 
+				LEFT JOIN yeshi_ec_hongbao_v2 v ON v.`hb_id`=ho.`ho_hongbao_id` 
+				LEFT JOIN yeshi_ec_common_order_goods g  ON co.`co_order_goods_id`=g.`cog_id`  
+				WHERE co.`co_uid`=#{uid} AND g.`cog_shop_id` <![CDATA[<>]]> 725677994  <!-- 澶╃尗瓒呭競 -->
+				<if test="typeList!=null">
+					<foreach collection="typeList" item="type" open=" and (" separator=" or " close=")">
+						v.`hb_type`=#{type}
+					</foreach>
+				</if>
+				AND v.`hb_id` IS NOT NULL
+				AND (co.`co_state`=1 OR  co.`co_state`=2 OR co.`co_state`=3) 
+				GROUP BY co.`co_order_no`,co.`co_order_goods_id`
+			) a GROUP BY goodsId 
+		) b WHERE b.c>=#{minSameGoodsOrderCount}
+	</select>
+	
+	
+	
+	<select id="getSameShopOrderByUidAndHongBaoType" resultType="Long">
+		SELECT b.shopId FROM
+		(
+			SELECT a.*,COUNT(*) AS num FROM 
+			(
+				SELECT co.*,COUNT(*) AS c,g.`cog_shop_id` AS shopId FROM yeshi_ec_common_order co 
+				LEFT JOIN yeshi_ec_hongbao_order ho ON co.`co_id`=ho.`ho_order_id` 
+				LEFT JOIN yeshi_ec_hongbao_v2 v ON v.`hb_id`=ho.`ho_hongbao_id` 
+				LEFT JOIN yeshi_ec_common_order_goods g  ON co.`co_order_goods_id`=g.`cog_id` 
+				WHERE  co.`co_uid`=#{uid} AND g.`cog_shop_id` <![CDATA[<>]]> 725677994  <!-- 澶╃尗瓒呭競 -->
+				<if test="typeList!=null">
+					<foreach collection="typeList" item="type" open=" and (" separator=" or " close=")">
+						v.`hb_type`=#{type}
+					</foreach>
+				</if>
+				AND v.`hb_id` IS NOT NULL 
+				AND (co.`co_state`=1 OR  co.`co_state`=2 OR co.`co_state`=3)  
+				AND g.`cog_shop_id`>0 GROUP BY co.`co_order_no`,co.`co_source_type`
+			) a GROUP BY a.shopId
+		) b WHERE b.num>=#{minSameShopGoodsCount};
+	</select>
+	
+	
+	<select id="getSameGoodsOrderByUidAndHongBaoType" resultType="Long">
+		SELECT b.goodsId FROM
+		(
+			SELECT a.goodsId,COUNT(*) AS c FROM
+			(
+				SELECT co.`co_order_goods_id` AS goodsId,co.`co_order_no` FROM yeshi_ec_common_order co 
+				LEFT JOIN yeshi_ec_hongbao_order ho ON co.`co_id`=ho.`ho_order_id` 
+				LEFT JOIN yeshi_ec_hongbao_v2 v ON v.`hb_id`=ho.`ho_hongbao_id` 
+				LEFT JOIN yeshi_ec_common_order_goods g  ON co.`co_order_goods_id`=g.`cog_id`  
+				WHERE co.`co_uid`=#{uid} AND g.`cog_shop_id` <![CDATA[<>]]> 725677994  <!-- 澶╃尗瓒呭競 -->
+				<if test="typeList!=null">
+					<foreach collection="typeList" item="type" open=" and (" separator=" or " close=")">
+						v.`hb_type`=#{type}
+					</foreach>
+				</if>
+				AND v.`hb_id` IS NOT NULL
+				AND (co.`co_state`=1 OR  co.`co_state`=2 OR co.`co_state`=3) 
+				GROUP BY co.`co_order_no`,co.`co_order_goods_id`
+			) a GROUP BY goodsId 
+		) b WHERE b.c>=#{minSameGoodsOrderCount}
+	</select>
+	
+	<select id="countOderByUidAndDate" resultType="Integer">
+		SELECT COUNT(1) FROM (SELECT d.`co_id` FROM `yeshi_ec_common_order` d
+		WHERE d.`co_third_create_time`<![CDATA[<=]]> #{preDay} AND d.`co_uid` = #{uid} 
+			  AND (d.`co_state`=1 OR d.`co_state`=2) 
+		GROUP BY d.`co_order_no`,d.`co_source_type`)A
+	</select>
+	
+	<select id="countValidOrderByDay" resultMap="CountOrderMap">
+		SELECT co_uid AS uid ,totalOrder FROM (
+			SELECT COUNT(d.`co_id`) AS totalOrder,d.`co_uid` FROM `yeshi_ec_common_order` d
+			WHERE DATE_FORMAT(d.`co_third_create_time`,'%Y-%m-%d') = '2019-11-11'  AND (d.`co_state`=1 OR d.`co_state`=2)  
+			GROUP BY d.`co_order_no`,d.`co_source_type`)A
+		GROUP BY co_uid
+	</select>
+	
+	<select id="countDownOrderUserByUidAndDate" resultType="Integer">
+		SELECT COUNT(DISTINCT d.`co_uid`) FROM `yeshi_ec_common_order` d
+		WHERE  d.`co_third_create_time`<![CDATA[<=]]> #{preDay} AND (d.`co_state`=1 OR d.`co_state`=2)  
+		<foreach collection="list" item="uid" open="AND (" separator="OR" close=")" >
+			d.`co_uid` = #{uid} 
+		</foreach>
+	</select>
+	
+	<select id="countCommissionByDay" resultMap="CountOrderMap">
+	SELECT co_uid AS uid ,commission FROM (
+			SELECT SUM(IFNULL(d.`co_eIncome`,d.`co_estimate`)) AS commission,d.`co_uid` FROM `yeshi_ec_common_order` d
+			WHERE DATE_FORMAT(d.`co_third_create_time`,'%Y-%m-%d') = '2019-11-11'  AND (d.`co_state`=1 OR d.`co_state`=2)  
+			GROUP BY d.`co_order_no`,d.`co_source_type`)A
+		GROUP BY co_uid
+	</select>
+	
+	<select id="countOderByDate" resultType="Integer">
+		SELECT COUNT(1) FROM (SELECT d.`co_id` FROM `yeshi_ec_common_order` d
+		WHERE DATE_FORMAT(d.`co_third_create_time`,'%Y-%m-%d') = #{preDay} AND (d.`co_state`=1 OR d.`co_state`=2) 
+		GROUP BY d.`co_order_no`,d.`co_source_type`)A
+	</select>
+	
+	
+	<select id="countCommissionByDate" resultType="BigDecimal">
+		SELECT SUM(IFNULL(d.`co_eIncome`,d.`co_estimate`)) FROM `yeshi_ec_common_order` d
+		WHERE d.`co_third_create_time`= #{preDay} AND (d.`co_state`=1 OR d.`co_state`=2)  
+	</select>
+	
+	<select id="countOderByUidAndLess10" resultType="Integer">
+		SELECT count(1) from (SELECT SUM(d.co_payment) as payment FROM `yeshi_ec_common_order` d
+		where d.co_uid = #{uid} and d.co_source_type = 1  and d.co_state <![CDATA[<>]]> 4
+		GROUP BY d.`co_order_no`
+		ORDER BY d.co_third_create_time desc
+		limit 50)A where A.payment<![CDATA[<]]> 10
+	</select>
+	
+</mapper>

--
Gitblit v1.8.0