From 554de444b87aab5f93cb1593a8095612cf9479a7 Mon Sep 17 00:00:00 2001 From: yujian <yujian@163.com> Date: 星期二, 09 六月 2020 17:34:30 +0800 Subject: [PATCH] 订单 --- fanli/src/main/java/com/yeshi/fanli/mapping/order/CommonOrderMapper.xml | 1465 ++++++++++++++++++++++++++++++++++++++-------------------- 1 files changed, 958 insertions(+), 507 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/mapping/order/CommonOrderMapper.xml b/fanli/src/main/java/com/yeshi/fanli/mapping/order/CommonOrderMapper.xml index 17b4279..128a60f 100644 --- a/fanli/src/main/java/com/yeshi/fanli/mapping/order/CommonOrderMapper.xml +++ b/fanli/src/main/java/com/yeshi/fanli/mapping/order/CommonOrderMapper.xml @@ -10,7 +10,8 @@ jdbcType="VARCHAR" /> <result column="co_count" property="count" jdbcType="INTEGER" /> <result column="co_state" property="state" jdbcType="INTEGER" /> - <result column="co_state_whole_order" property="stateWholeOrder" jdbcType="INTEGER" /> + <result column="co_state_whole_order" property="stateWholeOrder" + jdbcType="INTEGER" /> <result column="co_estimate" property="estimate" jdbcType="DECIMAL" /> <result column="co_eIncome" property="eIncome" jdbcType="DECIMAL" /> <result column="co_payment" property="payment" jdbcType="DECIMAL" /> @@ -21,19 +22,21 @@ <result column="co_order_by" property="orderBy" jdbcType="INTEGER" /> <result column="co_create_time" property="createTime" jdbcType="TIMESTAMP" /> <result column="co_update_time" property="updateTime" jdbcType="TIMESTAMP" /> - + <result column="co_trade_id" property="tradeId" jdbcType="VARCHAR" /> + <result column="co_state_desc" property="stateDesc" jdbcType="VARCHAR" /> + <result column="co_urank" property="urank" jdbcType="INTEGER" /> + <result column="co_child_source_type" property="childSourceType" + jdbcType="VARCHAR" /> <association property="userInfo" column="co_uid" javaType="com.yeshi.fanli.entity.bus.user.UserInfo"> <id column="co_uid" property="id" jdbcType="BIGINT" /> </association> - <association property="commonOrderGoods" column="co_order_goods_id" javaType="com.yeshi.fanli.entity.order.CommonOrderGoods"> <id column="co_order_goods_id" property="id" jdbcType="BIGINT" /> </association> + </resultMap> - - <resultMap id="BaseDetailResultMap" type="com.yeshi.fanli.entity.order.CommonOrder"> <id column="co_id" property="id" jdbcType="BIGINT" /> <result column="co_order_no" property="orderNo" jdbcType="VARCHAR" /> @@ -42,7 +45,8 @@ jdbcType="VARCHAR" /> <result column="co_count" property="count" jdbcType="INTEGER" /> <result column="co_state" property="state" jdbcType="INTEGER" /> - <result column="co_state_whole_order" property="stateWholeOrder" jdbcType="INTEGER" /> + <result column="co_state_whole_order" property="stateWholeOrder" + jdbcType="INTEGER" /> <result column="co_estimate" property="estimate" jdbcType="DECIMAL" /> <result column="co_eIncome" property="eIncome" jdbcType="DECIMAL" /> <result column="co_payment" property="payment" jdbcType="DECIMAL" /> @@ -53,18 +57,18 @@ <result column="co_order_by" property="orderBy" jdbcType="INTEGER" /> <result column="co_create_time" property="createTime" jdbcType="TIMESTAMP" /> <result column="co_update_time" property="updateTime" jdbcType="TIMESTAMP" /> - + <result column="co_trade_id" property="tradeId" jdbcType="VARCHAR" /> + <result column="co_state_desc" property="stateDesc" jdbcType="VARCHAR" /> + <result column="co_urank" property="urank" jdbcType="INTEGER" /> + <result column="co_child_source_type" property="childSourceType" + jdbcType="VARCHAR" /> <association property="userInfo" column="co_uid" javaType="com.yeshi.fanli.entity.bus.user.UserInfo"> <id column="co_uid" property="id" jdbcType="BIGINT" /> </association> - <association property="commonOrderGoods" - resultMap="com.yeshi.fanli.dao.mybatis.order.CommonOrderGoodsMapper.BaseResultMap"> - - </association> + resultMap="com.yeshi.fanli.dao.mybatis.order.CommonOrderGoodsMapper.BaseResultMap" /> </resultMap> - <resultMap id="ResultMap" type="com.yeshi.fanli.vo.order.CommonOrderVO"> <id column="co_id" property="id" jdbcType="BIGINT" /> <result column="co_order_no" property="orderNo" jdbcType="VARCHAR" /> @@ -73,7 +77,8 @@ jdbcType="VARCHAR" /> <result column="co_count" property="count" jdbcType="INTEGER" /> <result column="co_state" property="state" jdbcType="INTEGER" /> - <result column="co_state_whole_order" property="stateWholeOrder" jdbcType="INTEGER" /> + <result column="co_state_whole_order" property="stateWholeOrder" + jdbcType="INTEGER" /> <result column="co_estimate" property="estimate" jdbcType="DECIMAL" /> <result column="co_eIncome" property="eIncome" jdbcType="DECIMAL" /> <result column="co_payment" property="payment" jdbcType="DECIMAL" /> @@ -84,42 +89,89 @@ <result column="co_order_by" property="orderBy" jdbcType="INTEGER" /> <result column="co_create_time" property="createTime" jdbcType="TIMESTAMP" /> <result column="co_update_time" property="updateTime" jdbcType="TIMESTAMP" /> - <result column="totalMoney" property="hongBao" jdbcType="DECIMAL" /> <result column="couponMoney" property="couponMoney" jdbcType="DECIMAL" /> - <result column="hongBaoState" property="hongBaoState" jdbcType="INTEGER" /> <result column="hongBaoType" property="hongBaoType" jdbcType="INTEGER" /> <result column="accountTime" property="accountTime" jdbcType="TIMESTAMP" /> <result column="preAccountTime" property="preAccountTime" jdbcType="TIMESTAMP" /> - <result column="totalCount" property="totalCount" jdbcType="INTEGER" /> - <result column="totalSettlement" property="totalSettlement" jdbcType="DECIMAL" /> + <result column="totalSettlement" property="totalSettlement" + jdbcType="DECIMAL" /> <result column="totalPayment" property="totalPayment" jdbcType="DECIMAL" /> - - <result column="userId" property="userId" jdbcType="VARCHAR" /> <result column="userName" property="userName" jdbcType="VARCHAR" /> <result column="userPortrait" property="userPortrait" jdbcType="VARCHAR" /> - - <result column="levelOneId" property="levelOneId" jdbcType="VARCHAR" /> - <result column="levelOneMoney" property="levelOneMoney" jdbcType="VARCHAR" /> - <result column="levelTwoId" property="levelTwoId" jdbcType="VARCHAR" /> - <result column="levelTwoMoney" property="levelTwoMoney" jdbcType="VARCHAR" /> - + <result column="hb_id" property="hongbaoId" jdbcType="BIGINT" /> + <result column="co_trade_id" property="tradeId" jdbcType="VARCHAR" /> + <result column="co_state_desc" property="stateDesc" jdbcType="VARCHAR" /> + <result column="co_uid" property="userId" jdbcType="VARCHAR" /> + <result column="co_urank" property="urank" jdbcType="INTEGER" /> + <result column="co_child_source_type" property="childSourceType" + jdbcType="VARCHAR" /> <association property="userInfo" column="co_uid" - resultMap="com.yeshi.fanli.dao.mybatis.UserInfoMapper.BaseResultMap"> - </association> - + resultMap="com.yeshi.fanli.dao.mybatis.UserInfoMapper.BaseResultMap" /> <association property="commonOrderGoods" column="co_order_goods_id" - resultMap="com.yeshi.fanli.dao.mybatis.order.CommonOrderGoodsMapper.BaseResultMap"> - </association> - + resultMap="com.yeshi.fanli.dao.mybatis.order.CommonOrderGoodsMapper.BaseResultMap" /> </resultMap> - - - <sql id="Base_Column_List">co_id,co_uid,co_order_no,co_source_type,co_source_position,co_order_goods_id,co_count,co_state,co_state_whole_order,co_estimate,co_eIncome,co_payment,co_settlement,co_third_create_time,co_settle_time,co_order_by,co_create_time,co_update_time + <resultMap id="ThreeResultMap" type="com.yeshi.fanli.vo.order.CommonOrderVO"> + <id column="co_id" property="id" jdbcType="BIGINT" /> + <result column="co_order_no" property="orderNo" jdbcType="VARCHAR" /> + <result column="co_source_type" property="sourceType" jdbcType="INTEGER" /> + <result column="co_source_position" property="sourcePosition" + jdbcType="VARCHAR" /> + <result column="co_count" property="count" jdbcType="INTEGER" /> + <result column="co_state" property="state" jdbcType="INTEGER" /> + <result column="co_state_whole_order" property="stateWholeOrder" + jdbcType="INTEGER" /> + <result column="co_estimate" property="estimate" jdbcType="DECIMAL" /> + <result column="co_eIncome" property="eIncome" jdbcType="DECIMAL" /> + <result column="co_payment" property="payment" jdbcType="DECIMAL" /> + <result column="co_settlement" property="settlement" jdbcType="DECIMAL" /> + <result column="co_third_create_time" property="thirdCreateTime" + jdbcType="TIMESTAMP" /> + <result column="co_settle_time" property="settleTime" jdbcType="TIMESTAMP" /> + <result column="co_order_by" property="orderBy" jdbcType="INTEGER" /> + <result column="co_create_time" property="createTime" jdbcType="TIMESTAMP" /> + <result column="co_update_time" property="updateTime" jdbcType="TIMESTAMP" /> + <result column="totalMoney" property="hongBao" jdbcType="DECIMAL" /> + <result column="couponMoney" property="couponMoney" jdbcType="DECIMAL" /> + <result column="hongBaoState" property="hongBaoState" jdbcType="INTEGER" /> + <result column="hongBaoType" property="hongBaoType" jdbcType="INTEGER" /> + <result column="accountTime" property="accountTime" jdbcType="TIMESTAMP" /> + <result column="preAccountTime" property="preAccountTime" + jdbcType="TIMESTAMP" /> + <result column="totalCount" property="totalCount" jdbcType="INTEGER" /> + <result column="totalSettlement" property="totalSettlement" + jdbcType="DECIMAL" /> + <result column="totalPayment" property="totalPayment" jdbcType="DECIMAL" /> + <result column="userId" property="userId" jdbcType="VARCHAR" /> + <result column="userName" property="userName" jdbcType="VARCHAR" /> + <result column="userPortrait" property="userPortrait" jdbcType="VARCHAR" /> + <result column="hb_id" property="hongbaoId" jdbcType="BIGINT" /> + <result column="co_trade_id" property="tradeId" jdbcType="VARCHAR" /> + <result column="co_state_desc" property="stateDesc" jdbcType="VARCHAR" /> + <result column="co_urank" property="urank" jdbcType="INTEGER" /> + <result column="co_child_source_type" property="childSourceType" + jdbcType="VARCHAR" /> + <association property="userInfo" column="co_uid" + select="com.yeshi.fanli.dao.mybatis.UserInfoMapper.selectByPrimaryKey" /> + <association property="commonOrderGoods" column="co_order_goods_id" + select="com.yeshi.fanli.dao.mybatis.order.CommonOrderGoodsMapper.selectByPrimaryKey" /> + </resultMap> + <resultMap id="OrderCountMap" type="com.yeshi.fanli.vo.order.OrderCountVO"> + <result column="self" property="self" jdbcType="BIGINT" /> + <result column="shared" property="shared" jdbcType="BIGINT" /> + <result column="invite" property="invite" jdbcType="BIGINT" /> + </resultMap> + <sql id="Base_Column_List">co_id,co_uid,co_order_no,co_source_type,co_source_position,co_order_goods_id,co_count,co_state,co_state_whole_order,co_estimate,co_eIncome,co_payment,co_settlement,co_third_create_time,co_settle_time,co_order_by,co_create_time,co_update_time,co_trade_id,co_state_desc,co_urank,co_child_source_type + </sql> + <sql id="Order_Column_List">co_id,co_uid,co_order_no,co_source_type,co_source_position, + co_order_goods_id,co_count,co_state,co_state_whole_order, + co_estimate,co_eIncome,co_payment,co_settlement, co_third_create_time, + MAX(co_settle_time) AS co_settle_time, co_order_by, co_create_time, + co_update_time,co_state_desc,co_urank,co_child_source_type </sql> <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Long"> @@ -127,44 +179,59 @@ <include refid="Base_Column_List" /> from yeshi_ec_common_order where co_id = #{id,jdbcType=BIGINT} </select> - <select id="countByOrderNOAndOrderType" resultType="java.lang.Integer"> - select + <select id="countByOrderNOAndOrderType" resultType="java.lang.Integer">select count(co_id) from yeshi_ec_common_order where co_order_no=#{orderNO} and co_source_type=#{orderType} </select> - - <select id="selectByOrderNoAndOrderTypeAndOrderBy" resultMap="BaseResultMap"> - select - * from yeshi_ec_common_order where co_order_no=#{orderNo} - and + <select id="selectByOrderNoAndOrderTypeAndOrderBy" resultMap="BaseResultMap">select + * from yeshi_ec_common_order where co_order_no=#{orderNo} and co_source_type=#{orderType} and co_order_by=#{orderBy} </select> - <select id="countByUidAndOrderStateWithOrderBalanceTime" - resultType="java.lang.Long"> - SELECT COUNT(*) FROM yeshi_ec_common_order co WHERE + resultType="java.lang.Long">SELECT COUNT(*) FROM yeshi_ec_common_order co WHERE co.`co_state`=#{state} and co.`co_uid`=#{uid} and co.`co_settle_time` - is not null and co.`co_settle_time`>=#{minDate} and - #{maxDate}>co.`co_settle_time` + is not null and co.`co_settle_time`>=#{minDate} and + #{maxDate}>co.`co_settle_time`</select> + <select id="listBySourceTypeAndOrderNo" resultMap="BaseResultMap">SELECT * FROM + yeshi_ec_common_order co WHERE co.co_source_type=#{sourceType} and + co_order_no=#{orderNo} </select> - - - <select id="listBySourceTypeAndOrderNo" + <select id="selectBySourceTypeAndTradeId" resultMap="BaseResultMap">SELECT * + FROM yeshi_ec_common_order co WHERE co.co_source_type=#{sourceType} + and co_trade_id=#{tradeId} limit 1 + </select> + <select id="listBySourceTypeAndTradeId" resultMap="BaseResultMap">SELECT * FROM + yeshi_ec_common_order co WHERE co.co_source_type=#{sourceType} and + co_trade_id=#{tradeId} + </select> + <select id="listBySourceTypeAndTradeIdList" resultMap="BaseResultMap"> + SELECT * FROM yeshi_ec_common_order co WHERE + co.co_source_type=#{sourceType} + <if test="tradeIdList!=null"> + <foreach collection="tradeIdList" item="tradeId" open=" and (" + close=")" separator=" or ">co.co_trade_id=#{tradeId}</foreach> + </if> + </select> + <select id="listBySourceTypeAndStateAndThirdCrateTime" resultMap="BaseResultMap"> SELECT * FROM yeshi_ec_common_order co WHERE - co.co_source_type=#{sourceType} and co_order_no=#{orderNo} + co.co_source_type=#{sourceType} + <if test="state!=null">and co_state=#{state}</if> + <if test="minTime!=null">and + UNIX_TIMESTAMP(co_third_create_time)*1000>=#{minTime}</if> + <if test="maxTime!=null">and #{maxTime}> + UNIX_TIMESTAMP(co_third_create_time)*1000 + </if> + order by co_id desc limit #{start},#{count} </select> - - - <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">delete from yeshi_ec_common_order where co_id = #{id,jdbcType=BIGINT} </delete> <insert id="insert" parameterType="com.yeshi.fanli.entity.order.CommonOrder" useGeneratedKeys="true" keyProperty="id">insert into yeshi_ec_common_order - (co_id,co_uid,co_order_no,co_source_type,co_source_position,co_order_goods_id,co_count,co_state,co_estimate,co_eIncome,co_payment,co_settlement,co_third_create_time,co_settle_time,co_create_time,co_update_time) + (co_id,co_uid,co_order_no,co_source_type,co_source_position,co_order_goods_id,co_count,co_state,co_estimate,co_eIncome,co_payment,co_settlement,co_third_create_time,co_settle_time,co_create_time,co_update_time,co_state_whole_order,co_order_by,co_trade_id,co_state_desc,co_urank,co_child_source_type) values - (#{id,jdbcType=BIGINT},#{userInfo.id,jdbcType=BIGINT},#{orderNo,jdbcType=VARCHAR},#{sourceType,jdbcType=INTEGER},#{sourcePosition,jdbcType=VARCHAR},#{commonOrderGoods.id,jdbcType=BIGINT},#{count,jdbcType=INTEGER},#{state,jdbcType=INTEGER},#{estimate,jdbcType=DECIMAL},#{eIncome,jdbcType=DECIMAL},#{payment,jdbcType=DECIMAL},#{settlement,jdbcType=DECIMAL},#{thirdCreateTime,jdbcType=TIMESTAMP},#{settleTime,jdbcType=TIMESTAMP},#{createTime,jdbcType=TIMESTAMP},#{updateTime,jdbcType=TIMESTAMP}) + (#{id,jdbcType=BIGINT},#{userInfo.id,jdbcType=BIGINT},#{orderNo,jdbcType=VARCHAR},#{sourceType,jdbcType=INTEGER},#{sourcePosition,jdbcType=VARCHAR},#{commonOrderGoods.id,jdbcType=BIGINT},#{count,jdbcType=INTEGER},#{state,jdbcType=INTEGER},#{estimate,jdbcType=DECIMAL},#{eIncome,jdbcType=DECIMAL},#{payment,jdbcType=DECIMAL},#{settlement,jdbcType=DECIMAL},#{thirdCreateTime,jdbcType=TIMESTAMP},#{settleTime,jdbcType=TIMESTAMP},#{createTime,jdbcType=TIMESTAMP},#{updateTime,jdbcType=TIMESTAMP},#{stateWholeOrder,jdbcType=INTEGER},#{orderBy,jdbcType=INTEGER},#{tradeId,jdbcType=VARCHAR},#{stateDesc,jdbcType=VARCHAR},#{urank,jdbcType=INTEGER},#{childSourceType,jdbcType=VARCHAR}) </insert> <insert id="insertSelective" parameterType="com.yeshi.fanli.entity.order.CommonOrder" useGeneratedKeys="true" keyProperty="id"> @@ -188,6 +255,10 @@ <if test="orderBy != null">co_order_by,</if> <if test="createTime != null">co_create_time,</if> <if test="updateTime != null">co_update_time,</if> + <if test="tradeId != null">co_trade_id,</if> + <if test="stateDesc != null">co_state_desc,</if> + <if test="urank != null">co_urank,</if> + <if test="childSourceType != null">co_child_source_type,</if> </trim> values <trim prefix="(" suffix=")" suffixOverrides=","> @@ -209,6 +280,10 @@ <if test="orderBy != null">#{orderBy,jdbcType=INTEGER},</if> <if test="createTime != null">#{createTime,jdbcType=TIMESTAMP},</if> <if test="updateTime != null">#{updateTime,jdbcType=TIMESTAMP},</if> + <if test="tradeId != null">#{tradeId,jdbcType=VARCHAR},</if> + <if test="stateDesc != null">#{stateDesc,jdbcType=VARCHAR},</if> + <if test="urank != null">#{urank,jdbcType=INTEGER},</if> + <if test="childSourceType != null">#{childSourceType,jdbcType=VARCHAR},</if> </trim> </insert> <update id="updateByPrimaryKey" parameterType="com.yeshi.fanli.entity.order.CommonOrder">update @@ -229,7 +304,11 @@ #{settleTime,jdbcType=TIMESTAMP},co_order_by = #{orderBy,jdbcType=INTEGER},co_create_time = #{createTime,jdbcType=TIMESTAMP},co_update_time = - #{updateTime,jdbcType=TIMESTAMP} where co_id = #{id,jdbcType=BIGINT} + #{updateTime,jdbcType=TIMESTAMP} ,co_trade_id + =#{tradeId,jdbcType=VARCHAR},co_state_desc + =#{stateDesc,jdbcType=VARCHAR} ,co_urank =#{urank,jdbcType=INTEGER} + ,co_child_source_type =#{childSourceType,jdbcType=VARCHAR} where co_id + = #{id,jdbcType=BIGINT} </update> <update id="updateByPrimaryKeySelective" parameterType="com.yeshi.fanli.entity.order.CommonOrder"> update yeshi_ec_common_order @@ -243,7 +322,8 @@ </if> <if test="count != null">co_count=#{count,jdbcType=INTEGER},</if> <if test="state != null">co_state=#{state,jdbcType=INTEGER},</if> - <if test="stateWholeOrder != null">co_state_whole_order=#{stateWholeOrder,jdbcType=INTEGER},</if> + <if test="stateWholeOrder != null">co_state_whole_order=#{stateWholeOrder,jdbcType=INTEGER}, + </if> <if test="estimate != null">co_estimate=#{estimate,jdbcType=DECIMAL},</if> <if test="eIncome != null">co_eIncome=#{eIncome,jdbcType=DECIMAL},</if> <if test="payment != null">co_payment=#{payment,jdbcType=DECIMAL},</if> @@ -254,529 +334,900 @@ <if test="orderBy != null">co_order_by=#{orderBy,jdbcType=INTEGER},</if> <if test="createTime != null">co_create_time=#{createTime,jdbcType=TIMESTAMP},</if> <if test="updateTime != null">co_update_time=#{updateTime,jdbcType=TIMESTAMP},</if> + <if test="tradeId !=null">co_trade_id =#{tradeId,jdbcType=VARCHAR},</if> + <if test="stateDesc !=null">co_state_desc =#{stateDesc,jdbcType=VARCHAR},</if> + <if test="urank !=null">co_urank =#{urank,jdbcType=INTEGER},</if> + <if test="childSourceType !=null">co_child_source_type=#{childSourceType,jdbcType=VARCHAR}, + </if> </set> where co_id = #{id,jdbcType=BIGINT} </update> - - - <sql id="SELECT_PARAM_ORDER_STATE"> <if test="orderState != null and orderState == 1"> <!-- 鏈夋晥璁㈠崟: 鏁翠釜璁㈠崟鏈夋晥 --> - AND <![CDATA[co.`co_state` <> 3]]> AND (co.co_state_whole_order = 1 or co.co_state_whole_order = 2) + AND <![CDATA[co.`co_state` <> 3]]> + AND (co.co_state_whole_order = 1 or co.co_state_whole_order = 2) </if> <if test="orderState != null and orderState == 2"> - AND co.co_state = 3 <!-- 缁存潈璁㈠崟 --> + AND co.co_state = 3 + <!-- 缁存潈璁㈠崟 --> </if> <if test="orderState != null and orderState == 3"> <!-- 鏁翠釜璁㈠崟澶辨晥 --> - AND co.co_state_whole_order = 3 + AND co.co_state_whole_order = 3 </if> <if test="orderState != null and orderState == 4"> <!-- 宸叉敹璐ц鍗� --> AND co.co_state = 2 </if> </sql> - <sql id="SELECT_PARAM_ORDER_CREATE_TIME"> - <if test="startTime != null and startTime != '' "> - AND <![CDATA[co.co_third_create_time >= #{startTime}]]> + <if test="startTime != null and startTime != '' ">AND <![CDATA[co.co_third_create_time >= #{startTime}]]> </if> - <if test="endTime != null and endTime != '' "> - AND <![CDATA[co.co_third_create_time <= #{endTime}]]> + <if test="endTime != null and endTime != '' ">AND <![CDATA[co.co_third_create_time <= #{endTime}]]> </if> - <if test="day != null and day == 1"> <!-- 浠婂ぉ --> + <if test="day == 1"> + <!-- 浠婂ぉ --> AND TO_DAYS(co.`co_third_create_time`) = TO_DAYS(NOW()) </if> - <if test="day != null and day == 2"> <!-- 鏄ㄥぉ --> + <if test="day == 2"> + <!-- 鏄ㄥぉ --> AND TO_DAYS(NOW()) - TO_DAYS(co.`co_third_create_time`) = 1 </if> - <if test="day != null and day == 3"> <!-- 鏈湀 --> + <if test="day == 3 or day == 10"> + <!-- 鏈湀 --> AND DATE_FORMAT(co.`co_third_create_time`,'%Y%m') = DATE_FORMAT(CURDATE(),'%Y%m') </if> - <if test="day != null and day == 4"> <!-- 涓婃湀 --> + <if test="day == 4"> + <!-- 涓婃湀 --> AND PERIOD_DIFF(DATE_FORMAT(NOW(), '%Y%m'), DATE_FORMAT(co.`co_settle_time`, '%Y%m')) = 1 </if> + <if test="day == 6"> + <!-- 涓婃湀 --> + AND PERIOD_DIFF(DATE_FORMAT(NOW(), '%Y%m'), + DATE_FORMAT(co.`co_third_create_time`, '%Y%m')) = 1 + </if> + <if test="day == 11"> + <!-- 杩�3涓湀浜х敓 --> + AND co.`co_third_create_time` BETWEEN DATE_SUB(NOW(),INTERVAL 3 + MONTH) AND NOW() + </if> + <if test="day == 12"> + <!-- 杩戝崐骞翠骇鐢� --> + AND co.`co_third_create_time` BETWEEN DATE_SUB(NOW(),INTERVAL 6 + MONTH) AND NOW() + </if> </sql> - <sql id="SELECT_PARAM_HONGBAO_TYPE"> - <if test="type != null and type == 1"> <!-- 鑷喘璁㈠崟 --> + <if test="type != null and type == 1"> + <!-- 鑷喘璁㈠崟 --> AND (v2.hb_type =1 or v2.hb_type =2) </if> - <if test="type != null and type == 2"> <!-- 鍒嗕韩璁㈠崟 --> + <if test="type != null and type == 2"> + <!-- 鍒嗕韩璁㈠崟 --> AND v2.`hb_type` = 20 </if> - <if test="type != null and type == 3"> <!-- 閭�璇疯鍗� --> - 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) + <if test="type != null and type == 3"> + <!-- 閭�璇疯鍗� --> + 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) </if> </sql> - <sql id="SELECT_PARAM_HONGBAO_STATE"> - <if test="state != null and state == 1"> <!-- 鏈埌璐� --> + <if test="state != null and state == 1"> + <!-- 鏈埌璐� --> AND (hb.hb_state = 1 or hb.hb_state = 2) </if> - <if test="state != null and state == 2"> <!-- 宸插埌璐� --> + <if test="state != null and state == 2"> + <!-- 宸插埌璐� --> AND hb.hb_state = 3 </if> - <if test="state != null and state == 3"> <!-- 绾㈠寘宸插け鏁堛�佹暣涓鍗曞け鏁� --> - AND hb.hb_state =4 AND co.co_state_whole_order = 3 + <if test="state != null and state == 3"> + <!-- 绾㈠寘宸插け鏁堛�佹暣涓鍗曞け鏁� --> + AND hb.hb_state =4 AND co.co_state_whole_order = 3 </if> </sql> - - <sql id="Hongbao_Column_List"> - hb_id,hb_uid,hb_urank,hb_pid,hb_type,hb_state,hb_pre_get_time,hb_get_time,hb_version, + <sql id="Hongbao_Column_List">hb_id,hb_uid,hb_urank,hb_pid,hb_type,hb_state,hb_pre_get_time,hb_get_time,hb_version, IF(v2.`hb_state` = 4, 0, v2.hb_money)AS hb_money </sql> - - <sql id="Order_Column_List"> - co_id,co_uid,co_order_no,co_source_type,co_source_position, - co_order_goods_id,co_count,co_state,co_state_whole_order, - co_estimate,co_eIncome,co_payment,co_settlement, - co_third_create_time, - MAX(co_settle_time) AS co_settle_time, - co_order_by, - co_create_time, - co_update_time - </sql> - - - <select id="listUserOrder" resultMap="ResultMap"> - <!-- 鏌ヨ鐢ㄦ埛璁㈠崟 --> - SELECT COALESCE(SUM(hb.`hb_money`),0)AS totalMoney, - hb.hb_state AS hongBaoState, - hb.`hb_type` AS hongBaoType, - MAX(hb.`hb_get_time`) AS accountTime, - MAX(hb.`hb_pre_get_time`) AS preAccountTime, - <include refid="Order_Column_List"/> - FROM yeshi_ec_hongbao_order ho - - LEFT JOIN (SELECT <include refid="Hongbao_Column_List"/> FROM yeshi_ec_hongbao_v2 v2 - WHERE v2.`hb_uid`= #{uid} AND <![CDATA[v2.`hb_type`<> 10 ]]> - <include refid="SELECT_PARAM_HONGBAO_TYPE"/> <!-- 绾㈠寘绫诲瀷 --> - )hb ON IF(hb.hb_pid IS NULL,hb.hb_id,hb.hb_pid)=ho.`ho_hongbao_id` + <select id="listUserOrder" resultMap="ResultMap"> + <!-- 鏌ヨ鐢ㄦ埛璁㈠崟 --> + SELECT COALESCE(SUM(hb.`hb_money`),0)AS totalMoney, hb.hb_state AS + hongBaoState, hb.`hb_type` AS hongBaoType, MAX(hb.`hb_get_time`) AS + accountTime, MAX(hb.`hb_pre_get_time`) AS preAccountTime, + <include refid="Order_Column_List" /> + FROM yeshi_ec_hongbao_order ho LEFT JOIN (SELECT + <include refid="Hongbao_Column_List" /> + FROM yeshi_ec_hongbao_v2 v2 WHERE v2.`hb_uid`= #{uid} AND <![CDATA[v2.`hb_type`<> 10 ]]> + <include refid="SELECT_PARAM_HONGBAO_TYPE" /> + <if test="type == 2 and day == 5"> + <!-- 鏈湀鏈堝皢瑕佸埌璐﹀垎浜鍗� --> + AND DATE_FORMAT(v2.`hb_pre_get_time`,'%Y%m') = + DATE_FORMAT(CURDATE(),'%Y%m') + </if> + <if test="type == 3 and day == 5"> + <!-- 鏈湀灏嗚鍒拌处閭�璇疯鍗� --> + AND DATE_FORMAT(v2.`hb_pre_get_time`,'%Y%m') = + DATE_FORMAT(CURDATE(),'%Y%m') + </if> + <!-- 绾㈠寘绫诲瀷 --> + )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 - <include refid="SELECT_PARAM_ORDER_STATE"/> <!-- 璁㈠崟鐘舵�� --> - <include refid="SELECT_PARAM_ORDER_CREATE_TIME"/> <!-- 璁㈠崟鏃堕棿 --> - <include refid="SELECT_PARAM_HONGBAO_STATE"/> <!-- 绾㈠寘鐘舵�� --> - <if test="orderNo != null and orderNo !='' "> - AND co.co_order_no = #{orderNo} - </if> - GROUP BY co.`co_order_no`, co.`co_source_type` - ORDER BY co.co_third_create_time DESC - LIMIT ${start},${count} + <include refid="SELECT_PARAM_ORDER_STATE" /> + <!-- 璁㈠崟鐘舵�� --> + <include refid="SELECT_PARAM_ORDER_CREATE_TIME" /> + <!-- 璁㈠崟鏃堕棿 --> + <include refid="SELECT_PARAM_HONGBAO_STATE" /> + <!-- 璁㈠崟鍙锋煡璇� --> + <if test="orderNo != null and orderNo !='' ">AND co.co_order_no = #{orderNo}</if> + <!-- 璁㈠崟鏉ユ簮 --> + <if test="listSource != null and listSource.size() > 0"> + <foreach collection="listSource" item="item" open="AND (" + close=")" separator="or">co.co_source_type = #{item}</foreach> + </if> + <![CDATA[AND co.co_source_type <> 4 AND co.co_source_type <> 5]]> + GROUP BY co.`co_order_no`, co.`co_source_type` ORDER BY + co.co_third_create_time DESC LIMIT ${start},${count} </select> - - <select id="countUserOrder" resultType="java.lang.Long"> - <!-- 缁熻鐢ㄦ埛璁㈠崟鏁伴噺 --> - SELECT IFNULL(COUNT(ho_id),0) FROM - (SELECT ho.ho_id FROM yeshi_ec_hongbao_order ho - LEFT JOIN (SELECT <include refid="Hongbao_Column_List"/> FROM yeshi_ec_hongbao_v2 v2 - WHERE v2.`hb_uid`= #{uid} AND <![CDATA[v2.`hb_type`<> 10 ]]> - <include refid="SELECT_PARAM_HONGBAO_TYPE"/> <!-- 绾㈠寘绫诲瀷 --> - )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 - <include refid="SELECT_PARAM_ORDER_STATE"/> <!-- 璁㈠崟鐘舵�� --> - <include refid="SELECT_PARAM_ORDER_CREATE_TIME"/> <!-- 璁㈠崟鏃堕棿 --> - <include refid="SELECT_PARAM_HONGBAO_STATE"/> <!-- 绾㈠寘鐘舵�� --> - <if test="orderNo != null and orderNo !='' "> - AND co.co_order_no = #{orderNo} - </if> - GROUP BY co.`co_order_no`, co.`co_source_type` - )A + <select id="countUserOrder" resultType="java.lang.Long"> + <!-- 缁熻鐢ㄦ埛璁㈠崟鏁伴噺 --> + SELECT IFNULL(COUNT(ho_id),0) FROM (SELECT ho.ho_id FROM + yeshi_ec_hongbao_order ho LEFT JOIN (SELECT + <include refid="Hongbao_Column_List" /> + FROM yeshi_ec_hongbao_v2 v2 WHERE v2.`hb_uid`= #{uid} AND <![CDATA[v2.`hb_type`<> 10 ]]> + <include refid="SELECT_PARAM_HONGBAO_TYPE" /> + <!-- 绾㈠寘绫诲瀷 --> + <if test="type == 2 and day == 5"> + <!-- 鏈湀鏈堝皢瑕佸埌璐﹀垎浜鍗� --> + AND DATE_FORMAT(v2.`hb_pre_get_time`,'%Y%m') = + DATE_FORMAT(CURDATE(),'%Y%m') + </if> + <if test="type == 3 and day == 5"> + <!-- 鏈湀灏嗚鍒拌处閭�璇疯鍗� --> + AND DATE_FORMAT(v2.`hb_pre_get_time`,'%Y%m') = + DATE_FORMAT(CURDATE(),'%Y%m') + </if> + )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 + <include refid="SELECT_PARAM_ORDER_STATE" /> + <!-- 璁㈠崟鐘舵�� --> + <include refid="SELECT_PARAM_ORDER_CREATE_TIME" /> + <!-- 璁㈠崟鏃堕棿 --> + <include refid="SELECT_PARAM_HONGBAO_STATE" /> + <!-- 璁㈠崟鍙锋煡璇� --> + <if test="orderNo != null and orderNo !='' ">AND co.co_order_no = #{orderNo}</if> + <!-- 璁㈠崟鏉ユ簮 --> + <if test="listSource != null and listSource.size() > 0"> + <foreach collection="listSource" item="item" open="AND (" + close=")" separator="or">co.co_source_type = #{item}</foreach> + </if> + <![CDATA[AND co.co_source_type <> 4 AND co.co_source_type <> 5]]> + GROUP BY co.`co_order_no`, co.`co_source_type` )A </select> - - <select id="listOrderGoodsInfo" resultMap="ResultMap" parameterType="java.util.List"> - <!-- 鏌ヨ鐢ㄦ埛璁㈠崟鍟嗗搧淇℃伅 --> - SELECT COALESCE(SUM(tc.`co_payment`),0)AS totalPayment,COALESCE(SUM(tc.`co_settlement`),0)AS totalSettlement, - COALESCE(SUM(tc.`co_count`),0)AS totalCount,tc.`co_source_type`,tc.`co_order_no`,tg.*,tc.co_id - FROM - yeshi_ec_common_order_goods tg - LEFT JOIN yeshi_ec_common_order tc ON tc.`co_order_goods_id` = tg.`cog_id` - WHERE - <foreach collection="list" item="item" separator=" OR "> - (tc.`co_source_type` = #{item.sourceType,jdbcType=INTEGER} AND - tc.`co_order_no` = #{item.orderNo,jdbcType=VARCHAR}) + <select id="listOrderGoodsInfo" resultMap="ResultMap" + parameterType="java.util.List"> + <!-- 鏌ヨ鐢ㄦ埛璁㈠崟鍟嗗搧淇℃伅 --> + SELECT COALESCE(SUM(tc.`co_payment`),0)AS + totalPayment,COALESCE(SUM(tc.`co_settlement`),0)AS totalSettlement, + COALESCE(SUM(tc.`co_count`),0)AS + totalCount,tc.`co_source_type`,tc.`co_order_no`,tg.*,tc.co_id FROM + yeshi_ec_common_order_goods tg LEFT JOIN yeshi_ec_common_order tc ON + tc.`co_order_goods_id` = tg.`cog_id` WHERE + <foreach collection="list" item="item" separator=" OR ">(tc.`co_source_type` + = #{item.sourceType,jdbcType=INTEGER} AND tc.`co_order_no` = + #{item.orderNo,jdbcType=VARCHAR}) </foreach> GROUP BY tc.`co_order_no`,tc.`co_order_goods_id` </select> - - <select id="countHistoryOrder" 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="day != null and day == 1"> <!-- 浠婂ぉ --> - AND TO_DAYS(co.`co_third_create_time`) = TO_DAYS(NOW()) - </if> - <if test="day != null and day == 2"> <!-- 鏄ㄥぉ --> - AND TO_DAYS(NOW()) - TO_DAYS(co.co_third_create_time) = 1 - </if> - <if test="day != null and day == 3"> <!-- 鏈湀 --> - AND DATE_FORMAT(co.`co_third_create_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="day != null and day == 1"> <!-- 浠婂ぉ --> - AND TO_DAYS(co.`co_third_create_time`) = TO_DAYS(NOW()) - </if> - <if test="day != null and day == 2"> <!-- 鏄ㄥぉ --> - AND TO_DAYS(NOW()) - TO_DAYS(co.`co_third_create_time`) = 1 - </if> - <if test="day != null and day == 3"> <!-- 鏈湀 --> - AND DATE_FORMAT(co.`co_third_create_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="day != null and day == 1"> <!-- 浠婂ぉ --> - AND TO_DAYS(co.`co_third_create_time`) = TO_DAYS(NOW()) - </if> - <if test="day != null and day == 2"> <!-- 鏄ㄥぉ --> - AND TO_DAYS(NOW()) - TO_DAYS(co.`co_third_create_time`) = 1 - </if> - <if test="day != null and day == 3"> <!-- 鏈湀 --> - AND DATE_FORMAT(co.`co_third_create_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="countByUidAndOrderState" resultType="java.util.HashMap"> - SELECT SUM(A.valid)AS totalValid, SUM(A.proces)AS totalProces,SUM(A.Invalid)AS totalInvite - FROM ( - <!-- 鏈夋晥璁㈠崟 --> - SELECT IFNULL(COUNT(ho_id),0) AS valid,0 AS proces,0 AS Invalid - 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} <include refid="SELECT_PARAM_HONGBAO_TYPE" /> - ) 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 - <![CDATA[AND co.`co_state` <> 3]]> - AND (co.`co_state_whole_order` =1 OR co.`co_state_whole_order` = 2) - <include refid="SELECT_PARAM_ORDER_CREATE_TIME" /> - GROUP BY co.`co_order_no`, co.`co_source_type`)YX - - UNION ALL - <!-- 缁存潈璁㈠崟 --> - SELECT 0 AS valid,IFNULL(COUNT(ho_id),0) AS proces,0 AS Invalid - 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} <include refid="SELECT_PARAM_HONGBAO_TYPE" /> - ) 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 co.`co_state` = 3 - <include refid="SELECT_PARAM_ORDER_CREATE_TIME" /> - GROUP BY co.`co_order_no`, co.`co_source_type`)WQ - - UNION ALL - <!-- 澶辨晥璁㈠崟 --> - SELECT 0 AS valid,0 AS proces,IFNULL(COUNT(ho_id),0) AS Invalid - 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} <include refid="SELECT_PARAM_HONGBAO_TYPE" /> - ) 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 co.`co_state_whole_order` = 3 - <include refid="SELECT_PARAM_ORDER_CREATE_TIME" /> - GROUP BY co.`co_order_no`, co.`co_source_type`)SX - )A - - </select> - - - <select id="countBonusOrderNumber" resultType="java.lang.Long"> - <!-- 濂栭噾缁熻锛氳鍗曟暟閲� --> - SELECT IFNULL(COUNT(ho_id),0) - 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} <include refid="SELECT_PARAM_HONGBAO_TYPE" /> - ) 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 - <include refid="SELECT_PARAM_ORDER_CREATE_TIME" /> - GROUP BY co.`co_order_no`, co.`co_source_type` - )A - </select> - - <select id="countBonusOrderMoney" resultType="java.math.BigDecimal"> - <!-- 濂栭噾缁熻锛氳鍗曟�昏繑鍒╅噾棰� 鍘绘帀宸插け鏁� --> - SELECT COALESCE(SUM(hb.`hb_money`),0)AS totalmoney - FROM yeshi_ec_hongbao_order ho - LEFT JOIN ( - SELECT <include refid="Hongbao_Column_List"/> FROM yeshi_ec_hongbao_v2 v2 - WHERE v2.`hb_uid`=${uid} <include refid="SELECT_PARAM_HONGBAO_TYPE" /> - AND (v2.hb_state = 1 or v2.hb_state = 2 or v2.hb_state = 3) - ) hb ON IF(hb.hb_pid IS NULL,hb.hb_id,hb.hb_pid)=ho.`ho_hongbao_id` + 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 - <include refid="SELECT_PARAM_ORDER_CREATE_TIME" /> - <if test="day != null and day == 4"> - AND co.`co_state` = 2 <!-- 涓婃湀 :缁熻宸叉敹璐� --> - </if> - </select> - - <select id="countBonusOrderMoneyAndNumber" resultType="java.util.HashMap"> - SELECT COUNT(*) AS totalNum, CAST(SUM(moneys) AS DECIMAL(19,2)) AS totalmoney FROM - (SELECT CAST(SUM(hb.`hb_money`) AS DECIMAL(19,2))AS moneys - FROM yeshi_ec_hongbao_order ho - LEFT JOIN ( - SELECT <include refid="Hongbao_Column_List"/> FROM yeshi_ec_hongbao_v2 v2 - WHERE v2.`hb_uid`=${uid} <include refid="SELECT_PARAM_HONGBAO_TYPE" /> - AND (v2.hb_state = 1 or v2.hb_state = 2 or v2.hb_state = 3) - ) 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 - <include refid="SELECT_PARAM_ORDER_CREATE_TIME" /> - <if test="day != null and day == 4"> - AND co.`co_state` = 2 <!-- 涓婃湀 :缁熻宸叉敹璐� --> - </if> - GROUP BY co.`co_order_no`, co.`co_source_type` - )A - </select> - - - - <sql id="SELECT_HONGBAO_STATE"> - <if test="state != null and state == 1"> <!-- 鏈埌璐� --> - AND (v2.hb_state = 1 or v2.hb_state = 2) + WHERE hb.hb_id IS NOT NULL and hb.hb_state!=4 + <if test="day != null and day == 1"> + <!-- 浠婂ぉ --> + AND TO_DAYS(co.`co_third_create_time`) = TO_DAYS(NOW()) </if> - <if test="state != null and state == 2"> <!-- 宸插埌璐� --> - AND v2.hb_state = 3 + <if test="day != null and day == 2"> + <!-- 鏄ㄥぉ --> + AND TO_DAYS(NOW()) - TO_DAYS(co.co_third_create_time) = 1 </if> - <if test="state != null and state == 3"> <!-- 绾㈠寘宸插け鏁� --> - AND v2.hb_state =4 + <if test="day != null and day == 3"> + <!-- 鏈湀 --> + AND DATE_FORMAT(co.`co_third_create_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> + <!-- 璁㈠崟鏉ユ簮 --> + <if test="source != null">AND co.co_source_type = #{source}</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 and hb.hb_state!=4 + <if test="day != null and day == 1"> + <!-- 浠婂ぉ --> + AND TO_DAYS(co.`co_third_create_time`) = TO_DAYS(NOW()) + </if> + <if test="day != null and day == 2"> + <!-- 鏄ㄥぉ --> + AND TO_DAYS(NOW()) - TO_DAYS(co.`co_third_create_time`) = 1 + </if> + <if test="day != null and day == 3"> + <!-- 鏈湀 --> + AND DATE_FORMAT(co.`co_third_create_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> + <!-- 璁㈠崟鏉ユ簮 --> + <if test="source != null">AND co.co_source_type = #{source}</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 and + hbp.hb_state!=4 + <if test="day != null and day == 1"> + <!-- 浠婂ぉ --> + AND TO_DAYS(co.`co_third_create_time`) = TO_DAYS(NOW()) + </if> + <if test="day != null and day == 2"> + <!-- 鏄ㄥぉ --> + AND TO_DAYS(NOW()) - TO_DAYS(co.`co_third_create_time`) = 1 + </if> + <if test="day != null and day == 3"> + <!-- 鏈湀 --> + AND DATE_FORMAT(co.`co_third_create_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> + <!-- 璁㈠崟鏉ユ簮 --> + <if test="source != null">AND co.co_source_type = #{source}</if> + GROUP BY co.`co_order_no`, co.`co_source_type`)SX )A + </select> + <sql id="OrderCountQuery">WHERE + co.`co_state_whole_order`<![CDATA[<>]]>3 + <if test="day == 1"> + <!-- 浠婂ぉ --> + AND TO_DAYS(co.`co_third_create_time`) = TO_DAYS(NOW()) + </if> + <if test="day == 2"> + <!-- 鏄ㄥぉ --> + AND TO_DAYS(NOW()) - TO_DAYS(co.`co_third_create_time`) = 1 + </if> + <if test="day == 3"> + <!-- 鏈湀 --> + AND DATE_FORMAT(co.`co_third_create_time`,'%Y%m') = + DATE_FORMAT(CURDATE(),'%Y%m') + </if> + <if test="day == 4"> + <!-- 涓婃湀 --> + AND PERIOD_DIFF(DATE_FORMAT(NOW(), + '%Y%m'),DATE_FORMAT(co.`co_settle_time`, '%Y%m')) = 1 + </if> + <!-- 璁㈠崟鏉ユ簮 --> + <if test="listSource != null and listSource.size() > 0"> + <foreach collection="listSource" item="item" open="AND (" + close=")" separator="or">co.co_source_type = #{item}</foreach> </if> </sql> - - <select id="listQueryByUid" resultMap="ResultMap"> - <!-- 鏌ヨ鐢ㄦ埛璁㈠崟 --> - SELECT hb.`hb_money` AS totalMoney, - hb.hb_state AS hongBaoState, - hb.`hb_type` AS hongBaoType, - hb.`hb_get_time` AS accountTime, - hb.`hb_pre_get_time` AS preAccountTime, - co.*,cog.* - FROM yeshi_ec_hongbao_order ho - - LEFT JOIN (SELECT * FROM yeshi_ec_hongbao_v2 v2 - WHERE v2.`hb_uid`= #{uid} - <include refid="SELECT_PARAM_HONGBAO_TYPE"/> <!-- 绾㈠寘绫诲瀷 --> - <include refid="SELECT_HONGBAO_STATE"/> <!-- 绾㈠寘鐘舵�� --> - )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` - LEFT JOIN yeshi_ec_common_order_goods cog ON cog.`cog_id`= co.`co_order_goods_id` - WHERE hb.hb_id IS NOT NULL - <include refid="SELECT_PARAM_ORDER_STATE"/> <!-- 璁㈠崟鐘舵�� --> - <include refid="SELECT_PARAM_ORDER_CREATE_TIME"/> <!-- 璁㈠崟鏃堕棿 --> - <if test="orderNo != null and orderNo !='' "> - AND co.co_order_no = #{orderNo} - </if> - ORDER BY co.co_third_create_time DESC - LIMIT ${start},${count} + <select id="getOrderCount" resultMap="OrderCountMap"> + SELECT sum(self) as self,sum(shared) as shared,sum(invite) as invite + from ( SELECT IFNULL(COUNT(co_order_no),0)AS self,0 AS shared,0 AS + invite FROM (SELECT co.`co_order_no` FROM (SELECT * FROM + yeshi_ec_hongbao_v2 v WHERE v.`hb_uid`= ${uid} AND v.`hb_type` = 1)v2 + LEFT JOIN yeshi_ec_hongbao_order ho ON ho.`ho_hongbao_id` = + IF(v2.hb_pid IS NULL,v2.hb_id,v2.hb_pid) LEFT JOIN + yeshi_ec_common_order co ON co.`co_id` = ho.`ho_order_id` + <include refid="OrderCountQuery" /> + GROUP BY co.`co_order_no`,co.`co_source_type`)A UNION ALL SELECT 0 AS + self,IFNULL(COUNT(co_order_no),0)AS shared,0 AS invite FROM (SELECT + co.`co_order_no` FROM (SELECT * FROM yeshi_ec_hongbao_v2 v WHERE + v.`hb_uid`= ${uid} AND v.`hb_type` = 20)v2 LEFT JOIN + yeshi_ec_hongbao_order ho ON ho.`ho_hongbao_id` = IF(v2.hb_pid IS + NULL,v2.hb_id,v2.hb_pid) LEFT JOIN yeshi_ec_common_order co ON + co.`co_id` = ho.`ho_order_id` + <include refid="OrderCountQuery" /> + GROUP BY co.`co_order_no`,co.`co_source_type`)A UNION ALL SELECT 0 AS + self,0 AS shared,IFNULL(COUNT(co_order_no),0)AS invite FROM (SELECT + co.`co_order_no` FROM (SELECT * FROM yeshi_ec_hongbao_v2 v WHERE + v.`hb_uid`= ${uid} AND (v.`hb_type` = 5 OR v.`hb_type` = 6 OR + v.`hb_type` = 7 OR v.`hb_type` = 21 OR v.`hb_type` = 22))v2 LEFT JOIN + yeshi_ec_hongbao_order ho ON ho.`ho_hongbao_id` = IF(v2.hb_pid IS + NULL,v2.hb_id,v2.hb_pid) LEFT JOIN yeshi_ec_common_order co ON + co.`co_id` = ho.`ho_order_id` + <include refid="OrderCountQuery" /> + GROUP BY co.`co_order_no`,co.`co_source_type`)A )B </select> - - <select id="countQueryByUid" resultType="java.lang.Long"> - <!-- 缁熻鐢ㄦ埛璁㈠崟鏁伴噺 --> - SELECT IFNULL(COUNT(ho_id),0) 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} - <include refid="SELECT_PARAM_HONGBAO_TYPE"/> <!-- 绾㈠寘绫诲瀷 --> - <include refid="SELECT_HONGBAO_STATE"/> <!-- 绾㈠寘鐘舵�� --> - )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 - <include refid="SELECT_PARAM_ORDER_STATE"/> <!-- 璁㈠崟鐘舵�� --> - <include refid="SELECT_PARAM_ORDER_CREATE_TIME"/> <!-- 璁㈠崟鏃堕棿 --> - <if test="orderNo != null and orderNo !='' "> - AND co.co_order_no = #{orderNo} - </if> + <select id="countUserOrderToApp" resultType="Long"> + <!-- 鏈夋晥璁㈠崟 --> + SELECT IFNULL(COUNT(ho_id),0) 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} + <include refid="SELECT_PARAM_HONGBAO_TYPE" /> + <if test="state != null and state == 1"> + <!-- 鏈埌璐� --> + AND (v2.hb_state = 1 or v2.hb_state = 2) + </if> + <if test="state != null and state == 2"> + <!-- 宸插埌璐� --> + AND v2.hb_state = 3 + </if> + <if test="state != null and state == 3"> + <!-- 绾㈠寘宸插け鏁� --> + AND v2.hb_state =4 + </if> + ) 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<![CDATA[AND co.`co_state` <> 3]]> + <if test="stateOrder == 1"> + <!-- 鏈夋晥璁㈠崟 --> + AND (co.`co_state_whole_order` =1 OR co.`co_state_whole_order` = 2) + </if> + <if test="stateOrder == 2"> + <!-- 缁存潈璁㈠崟 --> + AND co.`co_state` = 3 + </if> + <if test="stateOrder == 3"> + <!-- 澶辨晥璁㈠崟 --> + AND co.`co_state_whole_order` = 3 + </if> + <!-- 璁㈠崟鏃堕棿 --> + <include refid="SELECT_PARAM_ORDER_CREATE_TIME" /> + <!-- 璁㈠崟鏉ユ簮 --> + <if test="source != null">AND co.co_source_type = #{source}</if> + GROUP BY co.`co_order_no`, co.`co_source_type` )A + </select> + <!-- <select id="countByUidAndOrderState" resultType="java.util.HashMap"> + SELECT SUM(A.valid)AS totalValid, SUM(A.proces)AS totalProces,SUM(A.Invalid)AS + totalInvite FROM ( 鏈夋晥璁㈠崟 SELECT IFNULL(COUNT(ho_id),0) AS valid,0 AS proces,0 + AS Invalid 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} <include + refid="SELECT_PARAM_HONGBAO_TYPE" /> ) 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 <![CDATA[AND co.`co_state` <> 3]]> AND (co.`co_state_whole_order` + =1 OR co.`co_state_whole_order` = 2) <include refid="SELECT_PARAM_ORDER_CREATE_TIME" + /> 璁㈠崟鏉ユ簮 <if test="source != null">AND co.co_source_type = #{source}</if> + GROUP BY co.`co_order_no`, co.`co_source_type`)YX UNION ALL 缁存潈璁㈠崟 SELECT 0 + AS valid,IFNULL(COUNT(ho_id),0) AS proces,0 AS Invalid 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} <include refid="SELECT_PARAM_HONGBAO_TYPE" /> + ) 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 co.`co_state` = 3 <include refid="SELECT_PARAM_ORDER_CREATE_TIME" + /> 璁㈠崟鏉ユ簮 <if test="source != null">AND co.co_source_type = #{source}</if> + GROUP BY co.`co_order_no`, co.`co_source_type`)WQ UNION ALL 澶辨晥璁㈠崟 SELECT 0 + AS valid,0 AS proces,IFNULL(COUNT(ho_id),0) AS Invalid 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} <include refid="SELECT_PARAM_HONGBAO_TYPE" /> + ) 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 co.`co_state_whole_order` = 3 <include refid="SELECT_PARAM_ORDER_CREATE_TIME" + /> 璁㈠崟鏉ユ簮 <if test="source != null">AND co.co_source_type = #{source}</if> + GROUP BY co.`co_order_no`, co.`co_source_type`)SX )A </select> --> + <select id="countBonusOrderNumber" resultType="java.lang.Long"> + <!-- 濂栭噾缁熻锛氳鍗曟暟閲� --> + SELECT IFNULL(COUNT(ho_id),0) 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} + <include refid="SELECT_PARAM_HONGBAO_TYPE" /> + ) 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 + <include refid="SELECT_PARAM_ORDER_CREATE_TIME" /> + <!-- 璁㈠崟鏉ユ簮 --> + <if test="source != null">AND co.co_source_type = #{source}</if> + GROUP BY co.`co_order_no`, co.`co_source_type` )A + </select> + <select id="countBonusOrderMoney" resultType="java.math.BigDecimal"> + <!-- 濂栭噾缁熻锛氳鍗曟�昏繑鍒╅噾棰� 鍘绘帀宸插け鏁� --> + SELECT COALESCE(SUM(hb.`hb_money`),0)AS totalmoney FROM + yeshi_ec_hongbao_order ho LEFT JOIN ( SELECT + <include refid="Hongbao_Column_List" /> + FROM yeshi_ec_hongbao_v2 v2 WHERE v2.`hb_uid`=${uid} + <include refid="SELECT_PARAM_HONGBAO_TYPE" /> + AND (v2.hb_state = 1 or v2.hb_state = 2 or v2.hb_state = 3) ) 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 + <include refid="SELECT_PARAM_ORDER_CREATE_TIME" /> + <if test="day != null and day == 4"> + AND co.`co_state` = 2 + <!-- 涓婃湀 :缁熻宸叉敹璐� --> + </if> + <!-- 璁㈠崟鏉ユ簮 --> + <if test="source != null">AND co.co_source_type = #{source}</if> + </select> + <select id="countBonusOrderMoneyAndNumber" resultType="java.util.HashMap"> + SELECT COUNT(*) AS totalNum, CAST(SUM(moneys) AS DECIMAL(19,2)) AS + totalmoney FROM (SELECT CAST(SUM(hb.`hb_money`) AS DECIMAL(19,2))AS + moneys FROM yeshi_ec_hongbao_order ho LEFT JOIN ( SELECT + <include refid="Hongbao_Column_List" /> + FROM yeshi_ec_hongbao_v2 v2 WHERE v2.`hb_uid`=${uid} + <include refid="SELECT_PARAM_HONGBAO_TYPE" /> + AND (v2.hb_state = 1 or v2.hb_state = 2 or v2.hb_state = 3) ) 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 + <include refid="SELECT_PARAM_ORDER_CREATE_TIME" /> + <if test="day != null and day == 4">AND co.`co_state` = 2</if> + <!-- 涓婃湀 :缁熻宸叉敹璐� --> + <if test="source != null">AND co.co_source_type = #{source}</if> + GROUP BY co.`co_order_no`, co.`co_source_type` )A + </select> + <sql id="SELECT_HONGBAO_STATE"> + <if test="state != null and state == 1"> + <!-- 鏈埌璐� --> + AND (v2.hb_state = 1 or v2.hb_state = 2) + </if> + <if test="state != null and state == 2"> + <!-- 宸插埌璐� --> + AND v2.hb_state = 3 + </if> + <if test="state != null and state == 3"> + <!-- 绾㈠寘宸插け鏁� --> + AND v2.hb_state =4 + </if> + </sql> + <select id="listQueryByUid" resultMap="ResultMap"> + <!-- 鏌ヨ鐢ㄦ埛璁㈠崟 --> + SELECT hb.`hb_money` AS totalMoney, hb.hb_state AS hongBaoState, + hb.`hb_type` AS hongBaoType, hb.`hb_get_time` AS accountTime, + hb.`hb_pre_get_time` AS preAccountTime, co.*,cog.* FROM + yeshi_ec_hongbao_order ho LEFT JOIN (SELECT * FROM yeshi_ec_hongbao_v2 + v2 WHERE v2.`hb_uid`= #{uid} + <include refid="SELECT_PARAM_HONGBAO_TYPE" /> + <!-- 绾㈠寘绫诲瀷 --> + <include refid="SELECT_HONGBAO_STATE" /> + <!-- 绾㈠寘鐘舵�� --> + )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` LEFT + JOIN yeshi_ec_common_order_goods cog ON cog.`cog_id`= + co.`co_order_goods_id` WHERE hb.hb_id IS NOT NULL + <include refid="SELECT_PARAM_ORDER_STATE" /> + <!-- 璁㈠崟鐘舵�� --> + <include refid="SELECT_PARAM_ORDER_CREATE_TIME" /> + <!-- 璁㈠崟鏃堕棿 --> + <if test="orderNo != null and orderNo !='' ">AND co.co_order_no = #{orderNo}</if> + <if test="payment != null">AND + co.co_payment <![CDATA[<]]> + #{payment} + </if> + ORDER BY co.co_third_create_time DESC LIMIT ${start},${count} + </select> + <select id="countQueryByUid" resultType="java.lang.Long"> + <!-- 缁熻鐢ㄦ埛璁㈠崟鏁伴噺 --> + SELECT IFNULL(COUNT(ho_id),0) 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} + <include refid="SELECT_PARAM_HONGBAO_TYPE" /> + <!-- 绾㈠寘绫诲瀷 --> + <include refid="SELECT_HONGBAO_STATE" /> + <!-- 绾㈠寘鐘舵�� --> + )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 + <include refid="SELECT_PARAM_ORDER_STATE" /> + <!-- 璁㈠崟鐘舵�� --> + <include refid="SELECT_PARAM_ORDER_CREATE_TIME" /> + <!-- 璁㈠崟鏃堕棿 --> + <if test="orderNo != null and orderNo !='' ">AND co.co_order_no = #{orderNo}</if> )A </select> - - <select id="getBuFenOrderState" resultMap="ResultMap"> - SELECT co.co_state,v2.`hb_state` AS hongBaoState 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 IF(v2.hb_pid IS NULL,v2.hb_id,v2.hb_pid)=ho.`ho_hongbao_id` - WHERE co.`co_order_no` = #{orderNo} AND co.co_state<![CDATA[<>]]> 4 AND v2.hb_uid = #{uid} - ORDER BY co.`co_state` DESC - LIMIT 1 + <select id="getBuFenOrderState" resultMap="ResultMap">SELECT + co.co_state,v2.`hb_state` AS hongBaoState 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 IF(v2.hb_pid IS + NULL,v2.hb_id,v2.hb_pid)=ho.`ho_hongbao_id` WHERE co.`co_order_no` = + #{orderNo} AND co.co_state<![CDATA[<>]]> + 4 AND v2.hb_uid = #{uid} ORDER BY co.`co_state` DESC LIMIT 1 </select> - - <select id="listQuery" resultMap="ResultMap"> - - SELECT A.*,u.id AS userId,u.`nick_name` AS userName,u.`portrait` AS userPortrait, - pv2.`hb_uid` AS levelOneId,pv2.`hb_money` AS levelOneMoney, - ppv2.`hb_uid` AS levelTwoId,ppv2.`hb_money` AS levelTwoMoney - - FROM (SELECT hb.hb_id,hb.hb_uid,hb.`hb_money` AS totalMoney, - hb.hb_state AS hongBaoState, - hb.`hb_type` AS hongBaoType, - hb.`hb_get_time` AS accountTime, - hb.`hb_pre_get_time` AS preAccountTime, - co.*,cog.* - FROM yeshi_ec_hongbao_order ho - - LEFT JOIN (SELECT * FROM yeshi_ec_hongbao_v2 v2 - WHERE 1=1 - <include refid="SELECT_PARAM_HONGBAO_TYPE"/> <!-- 绾㈠寘绫诲瀷 --> - <include refid="SELECT_HONGBAO_STATE"/> <!-- 绾㈠寘鐘舵�� --> - )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` - LEFT JOIN yeshi_ec_common_order_goods cog ON cog.`cog_id`= co.`co_order_goods_id` - WHERE hb.hb_id IS NOT NULL - <include refid="SELECT_PARAM_ORDER_STATE"/> <!-- 璁㈠崟鐘舵�� --> - <if test="startTime != null and startTime != '' "> - AND <![CDATA[co.co_third_create_time >= #{startTime}]]> - </if> - <if test="endTime != null and endTime != '' "> - AND <![CDATA[co.co_third_create_time <= #{endTime}]]> - </if> - - <if test="key != null and key != '' "> - <if test="keyType == 1 "> - AND co.co_order_no = ${key} - </if> - <if test="keyType == 2 "> - AND hb.hb_uid = ${key} - </if> - </if> - - ORDER BY co.co_third_create_time DESC - LIMIT ${start},${count} - ) A - LEFT JOIN yeshi_ec_user u ON u.id = A.hb_uid - LEFT JOIN yeshi_ec_hongbao_v2 pv2 ON pv2.`hb_pid` = A.hb_id - LEFT JOIN yeshi_ec_hongbao_v2 ppv2 ON ppv2.`hb_pid` = A.hb_id - - </select> - - <select id="countQuery" resultType="java.lang.Long"> - SELECT count(ho.ho_id) - FROM yeshi_ec_hongbao_order ho - - LEFT JOIN (SELECT * FROM yeshi_ec_hongbao_v2 v2 - WHERE 1=1 - <include refid="SELECT_PARAM_HONGBAO_TYPE"/> <!-- 绾㈠寘绫诲瀷 --> - <include refid="SELECT_HONGBAO_STATE"/> <!-- 绾㈠寘鐘舵�� --> - )hb ON IF(hb.hb_pid IS NULL,hb.hb_id,hb.hb_pid)=ho.`ho_hongbao_id` + <select id="listQuery" resultMap="ThreeResultMap"> + SELECT A.*,u.id AS userId,u.`nick_name` AS userName,u.`portrait` AS + userPortrait FROM (SELECT hb.hb_id,hb.hb_uid,hb.`hb_money` AS + totalMoney, hb.hb_state AS hongBaoState, hb.`hb_type` AS hongBaoType, + hb.`hb_get_time` AS accountTime, hb.`hb_pre_get_time` AS + preAccountTime, co.* FROM yeshi_ec_hongbao_order ho LEFT JOIN (SELECT + * FROM yeshi_ec_hongbao_v2 v2 WHERE 1=1 + <include refid="SELECT_PARAM_HONGBAO_TYPE" /> + <!-- 绾㈠寘绫诲瀷 --> + <include refid="SELECT_HONGBAO_STATE" /> + <!-- 绾㈠寘鐘舵�� --> + )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` - LEFT JOIN yeshi_ec_common_order_goods cog ON cog.`cog_id`= co.`co_order_goods_id` + <if test="listShopId != null">LEFT JOIN yeshi_ec_common_order_goods g ON + co.`co_order_goods_id`=g.`cog_id` + </if> WHERE hb.hb_id IS NOT NULL - <include refid="SELECT_PARAM_ORDER_STATE"/> <!-- 璁㈠崟鐘舵�� --> - <if test="startTime != null and startTime != '' "> - AND <![CDATA[co.co_third_create_time >= #{startTime}]]> - </if> - <if test="endTime != null and endTime != '' "> - AND <![CDATA[co.co_third_create_time <= #{endTime}]]> - </if> - - <if test="key != null and key != '' "> - <if test="keyType == 1 "> - AND co.co_order_no = ${key} - </if> - <if test="keyType == 2 "> - AND hb.hb_uid = ${key} - </if> - </if> + <include refid="SELECT_PARAM_ORDER_STATE" /> + <!-- 璁㈠崟鐘舵�� --> + <if test="startTime != null and startTime != '' ">AND <![CDATA[co.co_third_create_time >= #{startTime}]]> + </if> + <if test="endTime != null and endTime != '' ">AND <![CDATA[co.co_third_create_time <= #{endTime}]]> + </if> + <if test="key != null and key != '' "> + <if test="keyType == 1 ">AND co.co_order_no = '${key}'</if> + <if test="keyType == 2 ">AND hb.hb_uid = ${key}</if> + </if> + <!-- 璁㈠崟鏉ユ簮 --> + <if test="source != null">AND co.co_source_type = #{source}</if> + <if test="listGoodsId != null"> + <foreach collection="listGoodsId" item="goodsId" open=" and (" + separator=" or " close=")">co.`co_order_goods_id` =#{goodsId}</foreach> + </if> + <if test="listShopId != null"> + <foreach collection="listShopId" item="shopId" open=" and (" + separator=" or " close=")">g.`cog_shop_id` =#{shopId}</foreach> + </if> + <if test="minTime != null"> + <!-- 楂橀闄╄鍗� --> + AND co.`co_third_create_time`>#{minTime} AND<![CDATA[ (co.`co_estimate`>= ${money} OR co.`co_eIncome`> ${money})]]> + </if> + ORDER BY co.co_third_create_time DESC LIMIT ${start},${count} ) A LEFT + JOIN yeshi_ec_user u ON u.id = A.hb_uid </select> - + <select id="listQueryWithNoChild" resultMap="ThreeResultMap"> + SELECT A.*,u.id AS userId,u.`nick_name` AS userName,u.`portrait` AS + userPortrait FROM (SELECT hb.hb_id,hb.hb_uid,hb.`hb_money` AS + totalMoney, hb.hb_state AS hongBaoState, hb.`hb_type` AS hongBaoType, + hb.`hb_get_time` AS accountTime, hb.`hb_pre_get_time` AS + preAccountTime, co.* FROM yeshi_ec_hongbao_order ho LEFT JOIN (SELECT + * FROM yeshi_ec_hongbao_v2 v2 WHERE 1=1 + <include refid="SELECT_PARAM_HONGBAO_TYPE" /> + <!-- 绾㈠寘绫诲瀷 --> + <include refid="SELECT_HONGBAO_STATE" /> + <!-- 绾㈠寘鐘舵�� --> + )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 + <include refid="SELECT_PARAM_ORDER_STATE" /> + <!-- 璁㈠崟鐘舵�� --> + <if test="startTime != null and startTime != '' ">AND <![CDATA[co.co_third_create_time >= #{startTime}]]> + </if> + <if test="endTime != null and endTime != '' ">AND <![CDATA[co.co_third_create_time <= #{endTime}]]> + </if> + <if test="key != null and key != '' "> + <if test="keyType == 1 ">AND co.co_order_no = '${key}'</if> + <if test="keyType == 2 ">AND hb.hb_uid = ${key}</if> + </if> + <!-- 璁㈠崟鏉ユ簮 --> + <if test="source != null">AND co.co_source_type = #{source}</if> + <if test="payment != null">AND + co.co_payment <![CDATA[<]]> + #{payment} + </if> + ORDER BY co.co_third_create_time DESC LIMIT ${start},${count} ) A LEFT + JOIN yeshi_ec_user u ON u.id = A.hb_uid + </select> + <select id="countQuery" resultType="java.lang.Long"> + SELECT count(ho.ho_id) FROM yeshi_ec_hongbao_order ho LEFT JOIN + (SELECT * FROM yeshi_ec_hongbao_v2 v2 WHERE 1=1 + <include refid="SELECT_PARAM_HONGBAO_TYPE" /> + <!-- 绾㈠寘绫诲瀷 --> + <include refid="SELECT_HONGBAO_STATE" /> + <!-- 绾㈠寘鐘舵�� --> + )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` + <if test="listShopId != null">LEFT JOIN yeshi_ec_common_order_goods g ON + co.`co_order_goods_id`=g.`cog_id` + </if> + WHERE hb.hb_id IS NOT NULL + <include refid="SELECT_PARAM_ORDER_STATE" /> + <!-- 璁㈠崟鐘舵�� --> + <if test="startTime != null and startTime != '' ">AND <![CDATA[co.co_third_create_time >= #{startTime}]]> + </if> + <if test="endTime != null and endTime != '' ">AND <![CDATA[co.co_third_create_time <= #{endTime}]]> + </if> + <if test="key != null and key != '' "> + <if test="keyType == 1 ">AND co.co_order_no = '${key}'</if> + <if test="keyType == 2 ">AND hb.hb_uid = ${key}</if> + </if> + <!-- 璁㈠崟鏉ユ簮 --> + <if test="source != null">AND co.co_source_type = #{source}</if> + <if test="listGoodsId != null"> + <foreach collection="listGoodsId" item="goodsId" open=" and (" + separator=" or " close=")">co.`co_order_goods_id` =#{goodsId}</foreach> + </if> + <if test="listShopId != null"> + <foreach collection="listShopId" item="shopId" open=" and (" + separator=" or " close=")">g.`cog_shop_id` =#{shopId}</foreach> + </if> + <if test="payment != null">AND + co.co_payment <![CDATA[<]]> + #{payment} + </if> + <if test="minTime != null"> + <!-- 楂橀闄╄鍗� --> + AND co.`co_third_create_time`>#{minTime} AND<![CDATA[ (co.`co_estimate`>= ${money} OR co.`co_eIncome`> ${money})]]> + </if> + </select> + <select id="countQueryWithNoChild" resultType="java.lang.Long"> + SELECT count(ho.ho_id) FROM yeshi_ec_hongbao_order ho LEFT JOIN + (SELECT * FROM yeshi_ec_hongbao_v2 v2 WHERE 1=1 + <include refid="SELECT_PARAM_HONGBAO_TYPE" /> + <!-- 绾㈠寘绫诲瀷 --> + <include refid="SELECT_HONGBAO_STATE" /> + <!-- 绾㈠寘鐘舵�� --> + )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 + <include refid="SELECT_PARAM_ORDER_STATE" /> + <!-- 璁㈠崟鐘舵�� --> + <if test="startTime != null and startTime != '' ">AND <![CDATA[co.co_third_create_time >= #{startTime}]]> + </if> + <if test="endTime != null and endTime != '' ">AND <![CDATA[co.co_third_create_time <= #{endTime}]]> + </if> + <if test="key != null and key != '' "> + <if test="keyType == 1 ">AND co.co_order_no = '${key}'</if> + <if test="keyType == 2 ">AND hb.hb_uid = ${key}</if> + </if> + <if test="payment != null">AND + co.co_payment <![CDATA[<]]> + #{payment} + </if> + <!-- 璁㈠崟鏉ユ簮 --> + <if test="source != null">AND co.co_source_type = #{source}</if> + </select> <select id="getCouponHongbaoByOrderNo" resultMap="ResultMap"> - SELECT COALESCE(SUM(IF(hb.hb_type=1,hb.`hb_money`,0)),0)AS totalMoney, - COALESCE(SUM(IF(hb.hb_type=10,hb.`hb_money`,0)),0)AS couponMoney, - hb.`hb_type` AS hongBaoType, - MAX(hb.`hb_get_time`) AS accountTime, - MAX(hb.`hb_pre_get_time`) AS preAccountTime, - hb.hb_state AS hongBaoState, - <include refid="Order_Column_List"/> - FROM yeshi_ec_hongbao_order ho - LEFT JOIN (SELECT * FROM yeshi_ec_hongbao_v2 v2 WHERE v2.`hb_uid`= #{uid} - <if test="hongBaoState != null"> - AND v2.`hb_state` = #{hongBaoState} - </if> - )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 co.co_order_no = #{orderNo} + SELECT COALESCE(SUM(IF(hb.hb_type=1,hb.`hb_money`,0)),0)AS totalMoney, + COALESCE(SUM(IF(hb.hb_type=10,hb.`hb_money`,0)),0)AS couponMoney, + hb.`hb_type` AS hongBaoType, MAX(hb.`hb_get_time`) AS accountTime, + MAX(hb.`hb_pre_get_time`) AS preAccountTime, hb.hb_state AS + hongBaoState, + <include refid="Order_Column_List" /> + FROM yeshi_ec_hongbao_order ho LEFT JOIN (SELECT * FROM + yeshi_ec_hongbao_v2 v2 WHERE v2.`hb_uid`= #{uid} + <if test="hongBaoState != null">AND v2.`hb_state` = #{hongBaoState}</if> + )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 + co.co_order_no = #{orderNo} </select> - <select id="getCommonOrderByOrderNo" resultMap="ResultMap"> - <!-- 鏌ヨ鐢ㄦ埛璁㈠崟 --> - SELECT COALESCE(SUM(hb.`hb_money`),0)AS totalMoney, COALESCE(SUM(co.`co_payment`),0)AS totalPayment, - hb.hb_state AS hongBaoState, - hb.`hb_type` AS hongBaoType, - <include refid="Order_Column_List"/> - FROM yeshi_ec_hongbao_order ho - LEFT JOIN (SELECT <include refid="Hongbao_Column_List"/> FROM yeshi_ec_hongbao_v2 v2 - WHERE v2.`hb_uid`= #{uid} AND <![CDATA[v2.`hb_type`<> 10 ]]> - )hb ON IF(hb.hb_pid IS NULL,hb.hb_id,hb.hb_pid)=ho.`ho_hongbao_id` + <!-- 鏌ヨ鐢ㄦ埛璁㈠崟 --> + SELECT COALESCE(SUM(hb.`hb_money`),0)AS totalMoney, + COALESCE(SUM(co.`co_payment`),0)AS totalPayment, hb.hb_state AS + hongBaoState, hb.`hb_type` AS hongBaoType, + <include refid="Order_Column_List" /> + FROM yeshi_ec_hongbao_order ho LEFT JOIN (SELECT + <include refid="Hongbao_Column_List" /> + FROM yeshi_ec_hongbao_v2 v2 WHERE v2.`hb_uid`= #{uid} AND <![CDATA[v2.`hb_type`<> 10 ]]> + )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 co.co_order_no = #{orderNo} - <if test="orderState != null"> - AND co.co_state = #{orderState} <!-- 宸叉敹璐� --> - </if> + WHERE hb.hb_id IS NOT NULL AND co.co_order_no = #{orderNo} AND + co.`co_source_type` = #{sourceType} + <if test="orderState != null"> + AND co.co_state = #{orderState} + <!-- 宸叉敹璐� --> + </if> GROUP BY co.`co_order_no`, co.`co_source_type` </select> + <select id="getByOrderNo" resultMap="BaseResultMap">SELECT * FROM + yeshi_ec_common_order co WHERE co_uid = #{uid} AND + co_order_no=#{orderNo} + </select> + <select id="listByUid" resultMap="BaseResultMap"> + SELECT * FROM yeshi_ec_common_order co WHERE co_uid = #{uid} + <if test="stateList!=null"> + <foreach collection="stateList" separator=" or " open="and (" + item="state" close=")">co_state=#{state}</foreach> + </if> + limit #{start},#{count} + </select> + <select id="firstValidOrderByUid" resultMap="ResultMap"> + SELECT co.*,v2.`hb_get_time` AS accountTime FROM + yeshi_ec_hongbao_order ho LEFT JOIN yeshi_ec_hongbao_v2 v2 ON + IF(v2.hb_pid IS NULL,v2.hb_id,v2.hb_pid)=ho.`ho_hongbao_id` LEFT JOIN + yeshi_ec_common_order co ON co.`co_id`=ho.`ho_order_id` WHERE v2.hb_id + IS NOT NULL AND v2.`hb_uid` = #{uid} AND v2.`hb_state` = 3 + <if test="typeHB == 1"> + <!-- 鑷喘璁㈠崟 --> + AND (v2.hb_type =1 or v2.hb_type =2) + </if> + <if test="typeHB == 2"> + <!-- 鍒嗕韩璁㈠崟 --> + AND v2.`hb_type` = 20 + </if> + <if test="typeHB == 3"> + <!-- 閭�璇疯鍗� --> + 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) + </if> + <if test="typeDate == 3"> + <!-- 鏈湀 --> + AND DATE_FORMAT(co.`co_create_time`,'%Y%m') = + DATE_FORMAT(CURDATE(),'%Y%m') + </if> + <if test="typeDate == 4"> + <!-- 涓婃湀 --> + AND PERIOD_DIFF(DATE_FORMAT(NOW(), + '%Y%m'),DATE_FORMAT(co.`co_create_time`, '%Y%m')) = 1 + </if> + ORDER BY co.`co_id` LIMIT 1 + </select> + <select id="getFirstShareOrderByUid" resultMap="BaseResultMap">SELECT co.* FROM + yeshi_ec_hongbao_order ho LEFT JOIN yeshi_ec_hongbao_v2 v2 ON v2.hb_id + = ho.`ho_hongbao_id` LEFT JOIN yeshi_ec_common_order co ON + co.`co_id`=ho.`ho_order_id` WHERE v2.`hb_uid` = #{uid} AND + v2.`hb_type` = 20 ORDER BY co.`co_third_create_time` LIMIT 1 + </select> + <select id="getTotalRewardMoneyByOrderNoAndSourceType" + resultType="BigDecimal">SELECT SUM(hb_money) FROM(SELECT v2.`hb_money` FROM + yeshi_ec_hongbao_order ho LEFT JOIN yeshi_ec_hongbao_v2 v2 ON v2.hb_id + = ho.`ho_hongbao_id` LEFT JOIN yeshi_ec_common_order co ON + co.`co_id`=ho.`ho_order_id` WHERE v2.`hb_type` = 20 AND v2.`hb_state` + = 3 AND co.`co_order_no` = #{orderNo} AND co.`co_source_type`= + #{sourceType})A + </select> + <select id="count24HValidOrderByUid" resultType="Long">SELECT + IFNULL(COUNT(A.co_order_no),0) FROM (SELECT co.`co_order_no` FROM + yeshi_ec_hongbao_order ho LEFT JOIN yeshi_ec_hongbao_v2 v2 ON v2.hb_id + = ho.`ho_hongbao_id` LEFT JOIN yeshi_ec_common_order co ON + co.`co_id`=ho.`ho_order_id` WHERE v2.`hb_type` = 1 AND + co.`co_state_whole_order`<![CDATA[<>]]> + 3 AND co.`co_uid` = #{uid} AND co.co_third_create_time <![CDATA[>]]> + #{minTime} AND co.`co_third_create_time` <![CDATA[<=]]> + DATE_SUB(NOW(), INTERVAL 1 DAY) GROUP BY + co.`co_order_no`,co.`co_source_type`)A + </select> + <select id="searchOrderByUid" resultMap="ResultMap"> + SELECT COALESCE(SUM(hb.`hb_money`),0)AS totalMoney, hb.hb_state AS + hongBaoState, hb.`hb_type` AS hongBaoType, MAX(hb.`hb_get_time`) AS + accountTime, MAX(hb.`hb_pre_get_time`) AS preAccountTime, + <include refid="Order_Column_List" /> + FROM yeshi_ec_hongbao_order ho LEFT JOIN (SELECT + <include refid="Hongbao_Column_List" /> + FROM yeshi_ec_hongbao_v2 v2 WHERE v2.`hb_uid`= #{uid} AND <![CDATA[v2.`hb_type`<>10]]>)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 + <foreach collection="list" item="esOrder" open=" and (" close=")" + separator=" or ">(co.co_trade_id=#{esOrder.tradeId} AND co.co_source_type = + #{esOrder.platform}) + </foreach> + GROUP BY co.`co_order_no`, co.`co_source_type` ORDER BY + co.co_third_create_time DESC LIMIT ${start},${count} + </select> + <select id="countSearchOrderByUid" resultType="java.lang.Long"> + SELECT IFNULL(COUNT(ho_id),0) FROM (SELECT ho.ho_id FROM + yeshi_ec_hongbao_order ho LEFT JOIN (SELECT + <include refid="Hongbao_Column_List" /> + FROM yeshi_ec_hongbao_v2 v2 WHERE v2.`hb_uid`= #{uid} AND <![CDATA[v2.`hb_type`<> 10 ]]> + )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 + <foreach collection="list" item="esOrder" open=" and (" close=")" + separator=" or ">(co.co_trade_id=#{esOrder.tradeId} AND co.co_source_type = + #{esOrder.platform}) + </foreach> + GROUP BY co.`co_order_no`, co.`co_source_type` )A + </select> + <select id="getMinSettleTimeAndUid" resultMap="BaseResultMap">SELECT + d.`co_uid`,MAX(d.`co_settle_time`) AS co_settle_time FROM + `yeshi_ec_common_order` d WHERE d.`co_settle_time` IS NOT NULL AND + d.`co_payment` > 1 GROUP BY d.`co_uid`</select> + <select id="getOrderList" resultMap="ResultMap"> + SELECT hb.`hb_type` AS hongBaoType, MAX(hb.`hb_get_time`) AS + accountTime, MAX(hb.`hb_pre_get_time`) AS preAccountTime, + <include refid="Order_Column_List" /> + FROM yeshi_ec_hongbao_order ho LEFT JOIN (SELECT + <include refid="Hongbao_Column_List" /> + FROM yeshi_ec_hongbao_v2 v2 WHERE v2.`hb_uid`= #{uid} AND <![CDATA[v2.`hb_type`<> 10 ]]> + <include refid="SELECT_PARAM_HONGBAO_TYPE" /> + <if test="type == 2 and day == 5"> + <!-- 鏈湀鏈堝皢瑕佸埌璐﹀垎浜鍗� --> + AND DATE_FORMAT(v2.`hb_pre_get_time`,'%Y%m') = + DATE_FORMAT(CURDATE(),'%Y%m') + </if> + <if test="type == 3 and day == 5"> + <!-- 鏈湀灏嗚鍒拌处閭�璇疯鍗� --> + AND DATE_FORMAT(v2.`hb_pre_get_time`,'%Y%m') = + DATE_FORMAT(CURDATE(),'%Y%m') + </if> + <!-- 绾㈠寘绫诲瀷 --> + )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 + <include refid="SELECT_PARAM_ORDER_STATE" /> + <!-- 璁㈠崟鐘舵�� --> + <include refid="SELECT_PARAM_ORDER_CREATE_TIME" /> + <!-- 璁㈠崟鏃堕棿 --> + <include refid="SELECT_PARAM_HONGBAO_STATE" /> + <!-- 璁㈠崟鍙锋煡璇� --> + <if test="orderNo != null and orderNo !='' ">AND co.co_order_no = #{orderNo}</if> + <!-- 璁㈠崟鏉ユ簮 --> + <if test="listSource != null and listSource.size() > 0"> + <foreach collection="listSource" item="item" open="AND (" + close=")" separator="or">co.co_source_type = #{item}</foreach> + </if> + <if test="notBackSuVip == true"> + <![CDATA[AND co.co_source_type <> 4 AND co.co_source_type <> 5]]> + </if> + GROUP BY co.`co_order_no`, co.`co_source_type` ORDER BY + co.co_third_create_time DESC LIMIT ${start},${count} + </select> + <select id="countOrderList" resultType="java.lang.Long"> + SELECT IFNULL(COUNT(ho_id),0) FROM (SELECT ho.ho_id FROM + yeshi_ec_hongbao_order ho LEFT JOIN (SELECT + <include refid="Hongbao_Column_List" /> + FROM yeshi_ec_hongbao_v2 v2 WHERE v2.`hb_uid`= #{uid} AND <![CDATA[v2.`hb_type`<> 10 ]]> + <include refid="SELECT_PARAM_HONGBAO_TYPE" /> + <!-- 绾㈠寘绫诲瀷 --> + <if test="type == 2 and day == 5"> + <!-- 鏈湀鏈堝皢瑕佸埌璐﹀垎浜鍗� --> + AND DATE_FORMAT(v2.`hb_pre_get_time`,'%Y%m') = + DATE_FORMAT(CURDATE(),'%Y%m') + </if> + <if test="type == 3 and day == 5"> + <!-- 鏈湀灏嗚鍒拌处閭�璇疯鍗� --> + AND DATE_FORMAT(v2.`hb_pre_get_time`,'%Y%m') = + DATE_FORMAT(CURDATE(),'%Y%m') + </if> + )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 + <include refid="SELECT_PARAM_ORDER_STATE" /> + <!-- 璁㈠崟鐘舵�� --> + <include refid="SELECT_PARAM_ORDER_CREATE_TIME" /> + <!-- 璁㈠崟鏃堕棿 --> + <include refid="SELECT_PARAM_HONGBAO_STATE" /> + <!-- 璁㈠崟鍙锋煡璇� --> + <if test="orderNo != null and orderNo !='' ">AND co.co_order_no = #{orderNo}</if> + <!-- 璁㈠崟鏉ユ簮 --> + <if test="listSource != null and listSource.size() > 0"> + <foreach collection="listSource" item="item" open="AND (" + close=")" separator="or">co.co_source_type = #{item}</foreach> + </if> + <if test="notBackSuVip == true"> + <![CDATA[AND co.co_source_type <> 4 AND co.co_source_type <> 5]]> + </if> + GROUP BY co.`co_order_no`, co.`co_source_type` )A + </select> + <select id="countOrderByUidAndSettled" resultType="Long">SELECT + COUNT(d.`co_id`) FROM `yeshi_ec_common_order` d WHERE d.`co_uid` = + #{uid} AND d.`co_settle_time` IS NOT NULL AND d.`co_payment` >= + #{payment} + </select> + <select id="getNewestOrderNoByTaoBao" resultType="String"> + SELECT d.`co_order_no` FROM `yeshi_ec_common_order` d + WHERE d.`co_source_type` = 1 + ORDER BY d.`co_id` DESC + LIMIT 1 + </select> + + <select id="listByOrderNo" resultMap="BaseResultMap"> + SELECT * FROM `yeshi_ec_common_order` d + WHERE d.`co_order_no` = #{orderNo} + GROUP BY d.`co_order_no`,d.`co_source_type` + </select> </mapper> -- Gitblit v1.8.0