From d3844ee25fbb06b656b5521978f083695d194b07 Mon Sep 17 00:00:00 2001 From: Administrator <15274802129@163.com> Date: Tue, 29 Apr 2025 09:56:11 +0800 Subject: [PATCH] feat(mall): 添加门票核销功能 --- src/main/resources/mapper/modules/HappyActivityOptionMapper.xml | 128 ++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 122 insertions(+), 6 deletions(-) diff --git a/src/main/resources/mapper/modules/HappyActivityOptionMapper.xml b/src/main/resources/mapper/modules/HappyActivityOptionMapper.xml index af7ebca..1df7660 100644 --- a/src/main/resources/mapper/modules/HappyActivityOptionMapper.xml +++ b/src/main/resources/mapper/modules/HappyActivityOptionMapper.xml @@ -5,11 +5,13 @@ <select id="selectActivityPage" resultType="cc.mrbird.febs.mall.vo.ApiActivityInfoVo"> select a.id, + a.address, a.index_img, a.code, + a.type, a.name, a.state, - a.join_cnt, + (select count(z.id) from happy_follow z where z.source_id = a.id) as join_cnt, a.start_time, a.end_time from happy_activity a @@ -28,7 +30,13 @@ </if> </if> </where> - order by a.order_cnt asc, a.id desc + <if test="record.hotState != null"> + order by (select count(y.id) from happy_follow y where y.source_id = a.id and type in (2,3)) desc,a.order_cnt asc + </if> + <if test="record.hotState == null"> + order by a.order_cnt asc,a.id desc + </if> + </select> <select id="getVoteRecordInPage" resultType="cc.mrbird.febs.mall.vo.ApiVoteRecordInPageVo"> @@ -47,18 +55,126 @@ update happy_activity_option set likes_cnt = likes_cnt + 1 where id = #{id} </update> + + <update id="updateHappyActivitySurplusCnt" > + update happy_activity set surplus_cnt = surplus_cnt + #{cnt} where id = #{id} + </update> + <select id="getVoteOptionInPage" resultType="cc.mrbird.febs.mall.vo.ApiActivityOptionListVo"> select a.id as id, + a.order_cnt as orderCnt, a.option_name as optionName, a.image as image, a.likes_cnt as likesCnt from happy_activity_option a - where - a.state = 1 - and a.activity_id = #{record.activityId} - and a.DELETE_FLAG = 1 + <where> + and a.state = 1 + and a.activity_id = #{record.activityId} + and a.DELETE_FLAG = 0 + <if test="record != null"> + <if test="record.query != null and record.query != ''"> + and ( + a.option_name like CONCAT('%', CONCAT(#{record.query}, '%')) + or + a.order_cnt = #{record.query} + ) + </if> + </if> + </where> order by a.order_cnt asc </select> + <select id="selectOrderInPage" resultType="cc.mrbird.febs.mall.entity.HappyActivityOrder"> + select + a.*, + b.name as name, + c.name as activityName + from happy_activity_order a + left join mall_member b on a.member_id = b.id + left join happy_activity c on a.activity_id = c.id + <where> + and a.DELETE_FLAG = 0 + <if test="record != null"> + <if test="record.name != null and record.name != ''"> + and b.name like CONCAT('%', CONCAT(#{record.name}, '%')) + </if> + <if test="record.state != null"> + and a.state=#{record.state} + </if> + <if test="record.activityId != null"> + and a.activity_id=#{record.activityId} + </if> + </if> + </where> + order by a.id desc + </select> + + + + <select id="getVoteOptionRecordInPage" resultType="cc.mrbird.febs.mall.vo.ApiActivityOptionListVo"> + select + a.id as id, + a.option_name as optionName, + a.image as image, + a.likes_cnt as likesCnt + from happy_activity_option a + <where> + and a.state = 1 + and a.activity_id = #{record.activityId} + and a.DELETE_FLAG = 0 + <if test="record != null"> + <if test="record.query != null and record.query != ''"> + and ( + a.option_name like CONCAT('%', CONCAT(#{record.query}, '%')) + or + a.order_cnt = #{record.query} + ) + </if> + </if> + </where> + order by a.likes_cnt desc + </select> + + <select id="selectActivityCommentPage" resultType="cc.mrbird.febs.mall.vo.activity.ApiActivityCommentVo"> + select + a.*, + b.name name, + b.avatar avatar + from happy_activity_comment a + left join mall_member b on b.id = a.member_id + <where> + <if test="record != null"> + <if test="record.activityId != null and record.activityId != ''"> + and a.activity_id = #{record.activityId} + </if> + <if test="record.commentType != null and record.commentType != '' and record.commentType == 1"> + and a.star <![CDATA[ > ]]> 4 + </if> + <if test="record.commentType != null and record.commentType != '' and record.commentType == 2"> + and (a.star <![CDATA[ >= ]]> 3 and a.star <![CDATA[ <= ]]> 4) + </if> + <if test="record.commentType != null and record.commentType != '' and record.commentType == 3"> + and (a.star <![CDATA[ < ]]> 3 ) + </if> + </if> + </where> + group by a.id + order by a.created_time desc + </select> + + + + <select id="getCommentListInPage" resultType="cc.mrbird.febs.mall.vo.activity.AdminActivityCommentVo"> + select + a.*, + b.name memberName, + c.order_no orderNo + from happy_activity_comment a + left join mall_member b on a.member_id = b.id + left join happy_activity_order c on a.order_id = c.id + where a.activity_id = #{record.activityId} + order by a.created_time desc + </select> + </mapper> \ No newline at end of file -- Gitblit v1.9.1