From c5a203cd94117eb87fa4ff7df974a4aaee5ed83b Mon Sep 17 00:00:00 2001
From: peng <peng.com>
Date: 星期二, 02 九月 2025 10:58:32 +0800
Subject: [PATCH] mq处理订单失败后的手动补偿机制

---
 framework/src/main/resources/mapper/lmk/PrizeRecordMapper.xml |   80 ++++++++++++++++++++++++++++++++++++++-
 1 files changed, 77 insertions(+), 3 deletions(-)

diff --git a/framework/src/main/resources/mapper/lmk/PrizeRecordMapper.xml b/framework/src/main/resources/mapper/lmk/PrizeRecordMapper.xml
index a0fc583..c8058e1 100644
--- a/framework/src/main/resources/mapper/lmk/PrizeRecordMapper.xml
+++ b/framework/src/main/resources/mapper/lmk/PrizeRecordMapper.xml
@@ -17,6 +17,7 @@
         <result column="prize_num_id" property="prizeNumId" />
         <result column="activity_prize_ref_id" property="activityPrizeRefId" />
         <result column="distribute_status" property="distributeStatus" />
+        <result column="distribute_status" property="distributeStatus"/>
     </resultMap>
 
 
@@ -60,20 +61,93 @@
             LPR.prize_img,
             LPR.prize_num_id,
             LPR.activity_prize_ref_id,
+            LPR.distribute_status,
+            LPR.create_time,
             LPR.id
         FROM
             lmk_prize_record LPR
         WHERE
             LPR.delete_flag = 0
+        <if test="query.nickName != null and query.nickName !=''">
+            AND LPR.nick_name like CONCAT('%',#{query.nickName},'%')
+        </if>
+        <if test="query.activityName != null and query.activityName !=''">
+            AND LPR.prize_activity_name like CONCAT('%',#{query.activityName},'%')
+        </if>
+        <if test="query.prizeStatus != null and query.prizeStatus !=''">
+            AND LPR.prize_status  = #{query.prizeStatus}
+        </if>
+        <if test="query.distributeStatus != null and query.distributeStatus !=''">
+            AND LPR.distribute_status  = #{query.distributeStatus}
+        </if>
+        <if test="query.startTime != null">AND LPR.create_time >= #{query.startTime}</if>
+        <if test="query.endTime != null">AND LPR.create_time &lt;= #{query.endTime}</if>
+    </select>
+    <select id="getByUserIdPage" resultMap="BaseResultMap">
+        SELECT
+        LPR.user_id,
+        LPR.nick_name,
+        LPR.prize_activity_id,
+        LPR.prize_activity_name,
+        LPR.prize_activity_cover,
+        LPR.prize_status,
+        LPR.prize_content,
+        LPR.prize_id,
+        LPR.prize_img,
+        LPR.prize_num_id,
+        LPR.activity_prize_ref_id,
+        LPR.distribute_status,
+        LPR.id,
+        LPR.create_time
+        FROM
+        lmk_prize_record LPR
+        WHERE
+        LPR.delete_flag = 0
+        AND LPR.user_id = #{userId}
+    </select>
+    <select id="getExportData" resultMap="BaseResultMap">
+        SELECT
+        LPR.user_id,
+        LPR.nick_name,
+        LPR.prize_activity_id,
+        LPR.prize_activity_name,
+        LPR.prize_activity_cover,
+        LPR.prize_status,
+        LPR.prize_content,
+        LPR.prize_id,
+        LPR.prize_img,
+        LPR.prize_num_id,
+        LPR.activity_prize_ref_id,
+        LPR.distribute_status,
+        LPR.create_time,
+        LPR.id
+        FROM
+        lmk_prize_record LPR
+        WHERE
+        LPR.delete_flag = 0
+        <if test="query.nickName != null and query.nickName !=''">
+            AND LPR.nick_name like CONCAT('%',#{query.nickName},'%')
+        </if>
+        <if test="query.activityName != null and query.activityName !=''">
+            AND LPR.prize_activity_name like CONCAT('%',#{query.activityName},'%')
+        </if>
+        <if test="query.prizeStatus != null and query.prizeStatus !=''">
+            AND LPR.prize_status  = #{query.prizeStatus}
+        </if>
+        <if test="query.distributeStatus != null and query.distributeStatus !=''">
+            AND LPR.distribute_status  = #{query.distributeStatus}
+        </if>
+        <if test="query.startTime != null">AND LPR.create_time >= #{query.startTime}</if>
+        <if test="query.endTime != null">AND LPR.create_time &lt;= #{query.endTime}</if>
     </select>
     <resultMap id="getPrizeRecordListByTimeMap" type="cn.lili.modules.lmk.domain.vo.PrizeRecordTimeVO">
-        <result property="prizeId" column="prize_id"/>
+        <result property="activityPrizeRefId" column="activity_prize_ref_id"/>
         <result property="prizeActivityId" column="prize_activity_id"/>
         <result property="total" column="total"/>
     </resultMap>
     <select id="getPrizeRecordListByTime" resultMap="getPrizeRecordListByTimeMap">
         SELECT
-            prize_id,
+            activity_prize_ref_id,
             prize_activity_id,
             count(*) total
         FROM
@@ -84,7 +158,7 @@
           AND create_time BETWEEN #{query.startTime}
             AND #{query.endTime}
         GROUP BY
-            prize_id,
+            activity_prize_ref_id,
             prize_activity_id;
     </select>
 </mapper>

--
Gitblit v1.8.0