From c40f30d375d4108c8514eed49b372cbb7d80bb57 Mon Sep 17 00:00:00 2001
From: peng <peng.com>
Date: 星期三, 15 十月 2025 16:15:01 +0800
Subject: [PATCH] 用户行为分析

---
 framework/src/main/resources/mapper/lmk/ActionRecordMapper.xml |  154 +++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 154 insertions(+), 0 deletions(-)

diff --git a/framework/src/main/resources/mapper/lmk/ActionRecordMapper.xml b/framework/src/main/resources/mapper/lmk/ActionRecordMapper.xml
index 12fd549..78ed5f7 100644
--- a/framework/src/main/resources/mapper/lmk/ActionRecordMapper.xml
+++ b/framework/src/main/resources/mapper/lmk/ActionRecordMapper.xml
@@ -85,5 +85,159 @@
                  AND leave_time IS NOT NULL
               ORDER BY user_id, session_id, enter_time) t
     </select>
+    <resultMap id="userStayListMap" type="cn.lili.modules.lmk.domain.vo.StayActionRecordVO">
+        <result property="userId" column="user_id"/>
+        <result property="nickName" column="nick_name"/>
+        <result property="sessionId" column="session_id"/>
+        <result property="pageCode" column="page_code"/>
+        <result property="pageNameCn" column="page_name_cn"/>
+        <result property="enterTime" column="enter_time"/>
+        <result property="leaveTime" column="leave_time"/>
+        <result property="pageParams" column="page_params"/>
+    </resultMap>
+    <select id="userStayList" resultMap="userStayListMap">
+        SELECT
+        t1.user_id,
+        lm.nick_name,
+        t1.session_id,
+        t1.page_params,
+        t1.page_code,
+        CASE t1.page_code
+        WHEN 'RECOMMEND_VIDEO' THEN '棣栭〉鎺ㄨ崘瑙嗛'
+        WHEN 'HEALTH_VIDEO' THEN '澶у仴搴疯棰�'
+        WHEN 'KITCHEN_VIDEO' THEN '绁炲帹瑙嗛'
+        WHEN 'RECOMMEND_VIDEO_GOODS' THEN '瑙嗛鎺ㄨ崘鍟嗗搧椤甸潰'
+        WHEN 'RECOMMEND_VIDEO_LEFT_GOODS' THEN '宸︽粦鎺ㄨ崘鍟嗗搧'
+        WHEN 'RECOMMEND_VIDEO_RIGHT_VIDEO' THEN '鍙虫粦瑙嗛椤甸潰'
+        WHEN 'FILL_ORDER' THEN '濉啓璁㈠崟'
+        WHEN 'PAY_ORDER' THEN '鏀粯璁㈠崟'
+        WHEN 'PAY_SUCCESS' THEN '鏀粯鎴愬姛'
+        WHEN 'ORDER_LIST' THEN '璁㈠崟鍒楄〃'
+        WHEN 'ORDER_DETAIL' THEN '璁㈠崟璇︽儏'
+        WHEN 'PRIZE_DETAIL' THEN '鎶藉娲诲姩'
+        WHEN 'CART_LIST' THEN '璐墿杞�'
+        WHEN 'TBA_BAR_MY' THEN '鎴戠殑椤甸潰'
+        WHEN 'SHOPPING_SQUARE' THEN '鍟嗗搧骞垮満'
+        WHEN 'ACTIVITY_LIST' THEN '娲诲姩鍒楄〃'
+        WHEN 'ACTIVITY_DETAIL' THEN '娲诲姩璇︽儏'
+        WHEN 'PUBLISH_VIDEO' THEN '瑙嗛鍙戝竷'
+        WHEN 'SWIPER_GOODS' THEN '婊戝姩鍟嗗搧'
+        WHEN 'COUPON_CENTER' THEN '棰嗗嵎涓績'
+        WHEN 'MY_COUPON' THEN '鎴戠殑浼樻儬鍗�'
+        WHEN 'AFTER_SALE' THEN '鍞悗鍒楄〃'
+        WHEN 'APPLY_SALE' THEN '鐢宠鍞悗'
+        WHEN 'REFUND_ORDER' THEN '閫�娆�/閫�璐�'
+        WHEN 'GOODS_DETAILS' THEN '鍟嗗搧璇︽儏椤甸潰'
+        ELSE '鏈煡椤甸潰'
+        END AS page_name_cn,
+        t1.start_time AS enter_time,
+        t2.start_time AS leave_time,
+        TIMESTAMPDIFF(SECOND, t1.start_time, t2.start_time) AS stay_seconds
+        FROM
+        lmk_action_record t1
+        JOIN
+        lmk_action_record t2 ON t1.session_id = t2.session_id
+        AND t1.user_id = t2.user_id
+        AND t1.page_code = t2.page_code
+        JOIN li_member lm ON lm.id = t1.user_id
+        WHERE
+        t1.page_status = 'JOIN'
+        AND t2.page_status = 'LEAVE'
+        AND t1.start_time &lt; t2.start_time
+        and t1.start_time between  #{req.beginDate} and #{req.endDate}
+        <if test="req.userName != null and req.userName != ''">
+            and  lm.nick_name like concat('%',#{req.userName},'%')
+        </if>
+        <if test="req.pageCode != null and req.pageCode != ''">
+            and  t1.page_code = #{req.pageCode}
+        </if>
+        ORDER BY
+        t1.user_id,
+        t1.start_time
+    </select>
+    <resultMap id="userShareMap" type="cn.lili.modules.lmk.domain.vo.ShareActionRecordVO">
+        <result property="userId" column="user_id"/>
+        <result property="nickName" column="nick_name"/>
+        <result property="pageCode" column="page_code"/>
+        <result property="pageNameCn" column="page_name_cn"/>
+        <result property="createTime" column="create_time"/>
+        <result property="shareOption" column="share_option"/>
+    </resultMap>
+    <select id="userShare" resultMap="userShareMap">
+        SELECT
+            lm.nick_name,
+            lsa.page_code,
+            lsa.share_option,
+            lsa.user_id,
+            lsa.create_time,
+            CASE
+                lsa.page_code
+                WHEN 'RECOMMEND_VIDEO' THEN
+                    '棣栭〉鎺ㄨ崘瑙嗛'
+                WHEN 'HEALTH_VIDEO' THEN
+                    '澶у仴搴疯棰�'
+                WHEN 'KITCHEN_VIDEO' THEN
+                    '绁炲帹瑙嗛'
+                WHEN 'RECOMMEND_VIDEO_GOODS' THEN
+                    '瑙嗛鎺ㄨ崘鍟嗗搧椤甸潰'
+                WHEN 'RECOMMEND_VIDEO_LEFT_GOODS' THEN
+                    '宸︽粦鎺ㄨ崘鍟嗗搧'
+                WHEN 'RECOMMEND_VIDEO_RIGHT_VIDEO' THEN
+                    '鍙虫粦瑙嗛椤甸潰'
+                WHEN 'FILL_ORDER' THEN
+                    '濉啓璁㈠崟'
+                WHEN 'PAY_ORDER' THEN
+                    '鏀粯璁㈠崟'
+                WHEN 'PAY_SUCCESS' THEN
+                    '鏀粯鎴愬姛'
+                WHEN 'ORDER_LIST' THEN
+                    '璁㈠崟鍒楄〃'
+                WHEN 'ORDER_DETAIL' THEN
+                    '璁㈠崟璇︽儏'
+                WHEN 'PRIZE_DETAIL' THEN
+                    '鎶藉娲诲姩'
+                WHEN 'CART_LIST' THEN
+                    '璐墿杞�'
+                WHEN 'TBA_BAR_MY' THEN
+                    '鎴戠殑椤甸潰'
+                WHEN 'SHOPPING_SQUARE' THEN
+                    '鍟嗗搧骞垮満'
+                WHEN 'ACTIVITY_LIST' THEN
+                    '娲诲姩鍒楄〃'
+                WHEN 'ACTIVITY_DETAIL' THEN
+                    '娲诲姩璇︽儏'
+                WHEN 'PUBLISH_VIDEO' THEN
+                    '瑙嗛鍙戝竷'
+                WHEN 'SWIPER_GOODS' THEN
+                    '婊戝姩鍟嗗搧'
+                WHEN 'COUPON_CENTER' THEN
+                    '棰嗗嵎涓績'
+                WHEN 'MY_COUPON' THEN
+                    '鎴戠殑浼樻儬鍗�'
+                WHEN 'AFTER_SALE' THEN
+                    '鍞悗鍒楄〃'
+                WHEN 'APPLY_SALE' THEN
+                    '鐢宠鍞悗'
+                WHEN 'REFUND_ORDER' THEN
+                    '閫�娆�/閫�璐�'
+                WHEN 'GOODS_DETAILS' THEN
+                    '鍟嗗搧璇︽儏椤甸潰' ELSE '鏈煡椤甸潰'
+                END AS page_name_cn
+        FROM
+            lmk_share_action lsa
+                JOIN li_member lm ON lsa.user_id = lm.id
+        WHERE
+            lsa.delete_flag = 0
+          AND lm.delete_flag = 0
+        and lsa.create_time between  #{req.beginDate} and #{req.endDate}
+        <if test="req.userName != null and req.userName != ''">
+            and  lm.nick_name like concat('%',#{req.userName},'%')
+        </if>
+        <if test="req.pageCode != null and req.pageCode != ''">
+            and  lsa.page_code = #{req.pageCode}
+        </if>
+        ORDER BY
+        lsa.create_time desc
+    </select>
 
 </mapper>

--
Gitblit v1.8.0