From a9129b96fa14c77df166f367be1d8220c8f9d0b7 Mon Sep 17 00:00:00 2001 From: yujian <yujian> Date: 星期六, 19 一月 2019 15:14:04 +0800 Subject: [PATCH] 用户等级+用户设置 --- fanli/src/main/java/com/yeshi/fanli/mapping/order/CommonOrderCountMapper.xml | 98 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 98 insertions(+), 0 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 2b17bff..94d3f58 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 @@ -55,4 +55,102 @@ ORDER BY t.`co_create_time` </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_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 + ) 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`)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 ) + ) 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 + <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> + </mapper> -- Gitblit v1.8.0