From 03bd93bf72ea24c2134c08bff69a3671202759ff Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Mon, 15 Sep 2025 13:48:44 +0800
Subject: [PATCH] feat(mall): 优化活动订单列表接口和导出功能

---
 src/main/resources/mapper/modules/HappyActivityOptionMapper.xml |   82 +++++++++++++++++++++++++++++++++++++++++
 1 files changed, 82 insertions(+), 0 deletions(-)

diff --git a/src/main/resources/mapper/modules/HappyActivityOptionMapper.xml b/src/main/resources/mapper/modules/HappyActivityOptionMapper.xml
index aae47f6..277af56 100644
--- a/src/main/resources/mapper/modules/HappyActivityOptionMapper.xml
+++ b/src/main/resources/mapper/modules/HappyActivityOptionMapper.xml
@@ -110,6 +110,36 @@
         order by a.id desc
     </select>
 
+    <select id="selectOrderItemInPage" resultType="cc.mrbird.febs.mall.vo.activity.AdminHappyActivityOrderItemVo">
+        select
+                a.*,
+               e.name as connectName,
+               e.phone as connectPhone,
+               e.address as connectAddress,
+               b.name as memberName,
+               c.name as activityName
+        from happy_activity_order_item d
+        left join happy_activity_connect e on e.id = d.connect_id
+        left join happy_activity_order a on a.id = d.order_id
+        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">
@@ -177,4 +207,56 @@
         order by a.created_time desc
     </select>
 
+    <select id="activityOrderCheckList" resultType="cc.mrbird.febs.mall.vo.activity.AdminHappyActivityOrderCheckVo">
+        select
+        a.id,
+        a.code,
+        a.name,
+        a.phone,
+        a.address,
+        a.state,
+        CASE
+        WHEN a.state = 1 THEN a.UPDATED_TIME
+        ELSE NULL
+        END AS updatedTime,
+        b.name checkName,
+        b.phone checkPhone,
+        b.real_name checkRealName
+        from happy_activity_order_item a
+        left join mall_member b on b.id = a.transfer_item_id
+        <where>
+
+            and a.code is not null
+            <if test="record != null">
+                <if test="record.name != null and record.name != ''">
+                    and (b.name like CONCAT('%', CONCAT(#{record.name}, '%'))
+                    or b.real_name like CONCAT('%', CONCAT(#{record.name}, '%')))
+                </if>
+                <if test="record.code != null and record.code != ''">
+                    and a.code = #{record.code}
+                </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.created_time desc
+    </select>
+
+    <select id="getOrderCheckListForExport" resultType="cc.mrbird.febs.mall.vo.activity.AdminHappyActivityOrderCheckVo">
+        select
+        a.*,
+        b.name checkName,
+        b.phone checkPhone,
+        b.real_name checkRealName
+        from happy_activity_order_item a
+        left join mall_member b on b.id = a.transfer_item_id
+        where a.code is not null
+        and a.activity_id=#{activityId}
+        order by a.created_time desc
+    </select>
+
 </mapper>
\ No newline at end of file

--
Gitblit v1.9.1