zhanghua
2025-06-11 2ca169c85f61256fb5185c078dba1bfef2be5066
framework/src/main/resources/mapper/lmk/ActivityMapper.xml
@@ -18,11 +18,49 @@
        <result column="limit_user_num" property="limitUserNum" />
        <result column="activity_location" property="activityLocation" />
        <result column="activity_content" property="activityContent" />
        <result column="publish" property="publish" />
    </resultMap>
    <resultMap id="MyActivityResultMap" type="cn.lili.modules.lmk.domain.vo.MyActivityVo">
        <result column="activity_name" property="activityName" />
        <result column="activity_type" property="activityType"/>
        <result column="end_time" property="endTime" />
        <result column="status" property="status" />
        <result column="cover" property="cover" />
        <result column="cover_type" property="coverType" />
        <result column="activity_location" property="activityLocation" />
        <result column="cancel" property="cancel"/>
        <result column="activity_report_id" property="activityReportId"/>
    </resultMap>
    <select id="getMyActivityList" resultMap="MyActivityResultMap">
        SELECT
            LA.id,
            LA.activity_name,
            LA.activity_type,
            LA.start_time,
            LA.end_time,
            LA.status,
            LA.cover,
            LA.cover_type,
            LA.activity_location,
            LAR.cancel,
            LA.id as activity_report_id
        FROM lmk_activity_report LAR
                 LEFT JOIN lmk_activity LA ON LAR.activity_id = LA.id
        where  LA.delete_flag = 0
          AND LAR.delete_flag = 0
          AND LAR.user_id = #{userId}
          AND LAR.cancel = #{query.cancel}
        <if test="query.status == null or query.status == ''">
            AND LA.status != 'end'
        </if>
        <if test="query.status != null and query.status != ''">
          AND LA.status = #{query.status}
          </if>
    </select>
@@ -41,7 +79,8 @@
            LA.cover_type,
            LA.limit_user_num,
            LA.activity_location,
            LA.activity_content
            LA.activity_content,
            LA.publish
        FROM
            lmk_activity LA
        WHERE
@@ -64,7 +103,8 @@
            LA.cover_type,
            LA.limit_user_num,
            LA.activity_location,
            LA.activity_content
            LA.activity_content,
            LA.publish
        FROM
            lmk_activity LA
        WHERE
@@ -76,4 +116,76 @@
            <if test="query.reportEndTime != null">AND LA.report_end_time &lt;= #{query.reportEndTime}</if>
    </select>
    <select id="getCanReportPage" resultMap="BaseResultMap">
        SELECT
        LA.id,
        LA.activity_name,
        LA.activity_type,
        LA.report_start_time,
        LA.report_end_time,
        LA.start_time,
        LA.end_time,
        LA.status,
        LA.recommend,
        LA.cover,
        LA.cover_type,
        LA.limit_user_num,
        LA.activity_location,
        LA.activity_content
        FROM
        lmk_activity LA
        WHERE
        LA.delete_flag = 0
        AND LA.publish = 1
    </select>
    <resultMap id="memberMap" type="cn.lili.modules.member.entity.vo.MemberVO">
        <id property="id" column="id"/>
        <!-- 基础字段映射 -->
        <result property="username" column="username"/>
        <result property="nickName" column="nick_name"/>
        <result property="sex" column="sex"/>
        <result property="birthday" column="birthday"/>
        <result property="regionId" column="region_id"/>
        <result property="region" column="region"/>
        <result property="mobile" column="mobile"/>
        <result property="point" column="point"/>
        <result property="totalPoint" column="total_point"/>
        <result property="face" column="face"/>
        <result property="disabled" column="disabled"/>
        <result property="haveStore" column="have_store"/>
        <result property="storeId" column="store_id"/>
        <result property="openId" column="open_id"/>
        <result property="clientEnum" column="client_enum"/>
        <result property="lastLoginDate" column="last_login_date"/>
        <result property="gradeId" column="grade_id"/>
        <result property="experience" column="experience"/>
        <result property="createTime" column="create_time"/>
    </resultMap>
    <select id="getMembers" resultMap="memberMap">
        select
            LM.* from lmk_activity_report LAR
                          LEFT JOIN li_member LM ON LM.id = LAR.user_id
        WHERE LAR.activity_id = #{query.id}
    </select>
    <update id="batchUpdateActivities">
        UPDATE lmk_activity
        <trim prefix="SET" suffixOverrides=",">
            <trim prefix="status = CASE id" suffix="END,">
                <foreach collection="list" item="item">
                    WHEN #{item.id} THEN #{item.status}
                </foreach>
            </trim>
        </trim>
        WHERE id IN
        <foreach collection="list" item="item" open="(" separator="," close=")">
            #{item.id}
        </foreach>
    </update>
</mapper>