From f4a0f2acc63d7785eab108419a4e16f5f688cb95 Mon Sep 17 00:00:00 2001 From: yujian <yujian@163.com> Date: 星期六, 18 一月 2020 12:06:27 +0800 Subject: [PATCH] 用户注册信息 --- fanli/src/main/java/com/yeshi/fanli/mapping/order/CommonOrderCountMapper.xml | 116 +++++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 107 insertions(+), 9 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 281d548..5e9a09d 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 @@ -7,7 +7,12 @@ <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' @@ -52,12 +57,9 @@ </if> </select> - <select id="countOrderNumber" resultMap="ChartMap"> - SELECT IFNULL(COUNT(t.`co_id`),0) AS showValue,<include refid="Column_DateType"/> - FROM `yeshi_ec_common_order` t - WHERE t.co_source_type=#{sourceType} and t.`co_third_create_time` IS NOT NULL <include refid="Count_Select_DateType"/> - <include refid="Count_Group_DateType"/> - ORDER BY t.`co_third_create_time` + <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> @@ -188,7 +190,11 @@ ( 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} + 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} @@ -207,7 +213,11 @@ ( 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} + 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} @@ -222,4 +232,92 @@ + <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> -- Gitblit v1.8.0