zhwl/zhwl-business/zhwl-vip/target/classes/mapper/vip/ZdyVipUserMapper.xml
2025-07-01 17:54:58 +08:00

250 lines
9.4 KiB
XML

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zhwl.vip.mapper.ZdyVipUserMapper">
<resultMap type="ZdyVipUser" id="ZdyVipUserResult">
<result property="id" column="id"/>
<result property="miniProgramUserId" column="mini_program_user_id"/>
<result property="levelId" column="level_id"/>
<result property="consumeAmount" column="consume_amount"/>
<result property="points" column="points"/>
<result property="growthValue" column="growth_value"/>
<result property="labelIds" column="label_ids"/>
<result property="delFlag" column="del_flag"/>
<result property="createTime" column="create_time"/>
<result property="createBy" column="create_by"/>
<result property="updateTime" column="update_time"/>
<result property="achieveThisLevelTime" column="achieve_this_level_time"/>
<result property="updateBy" column="update_by"/>
<result property="remark" column="remark"/>
</resultMap>
<resultMap type="ZdyVipUserVO" id="ZdyVipUserVOResult">
<result property="id" column="id"/>
<result property="miniProgramUserId" column="mini_program_user_id"/>
<result property="levelId" column="level_id"/>
<result property="consumeAmount" column="consume_amount"/>
<result property="points" column="points"/>
<result property="growthValue" column="growth_value"/>
<result property="labelIds" column="label_ids"/>
<result property="delFlag" column="del_flag"/>
<result property="createTime" column="create_time"/>
<result property="createBy" column="create_by"/>
<result property="updateTime" column="update_time"/>
<result property="achieveThisLevelTime" column="achieve_this_level_time"/>
<result property="updateBy" column="update_by"/>
<result property="remark" column="remark"/>
<result property="vipName" column="vip_name"/>
<result property="mobile" column="mobile"/>
<result property="registerTime" column="register_time"/>
<result property="levelName" column="level_name"/>
<result property="nickname" column="nickname"/>
<result property="sex" column="sex"/>
<result property="birthday" column="birthday"/>
<result property="province" column="province"/>
<result property="city" column="city"/>
<result property="area" column="area"/>
<result property="idCard" column="id_card"/>
<result property="avatar" column="avatar"/>
</resultMap>
<sql id="selectZdyVipUserVo">
select vu.id,
vu.mini_program_user_id,
vu.level_id,
vu.consume_amount,
vu.points,
vu.growth_value,
vu.label_ids,
vu.del_flag,
vu.create_time,
vu.create_by,
vu.update_time,
vu.achieve_this_level_time,
vu.update_by,
vu.remark,
u.name vip_name,
u.nickname,
u.mobile,
u.create_time as register_time,
u.id_card,
u.sex,
u.province,
u.city,
u.area,
u.birthday,
u.avatar,
vl.name as level_name
from zdy_vip_user vu
inner join zdy_user u on vu.mini_program_user_id = u.id
left join zdy_vip_level vl on vu.level_id = vl.id
</sql>
<select id="selectZdyVipUserList" parameterType="ZdyVipUserQueryDTO" resultMap="ZdyVipUserVOResult">
<include refid="selectZdyVipUserVo"/>
<where>
vu.del_flag = 0
<if test="levelId != null ">
and vu.level_id = #{levelId}
</if>
<if test="vipName != null and vipName !=''">
and u.name = #{vipName}
</if>
<if test="mobile != null and mobile != '' ">
and u.mobile = #{mobile}
</if>
<if test="vipLevelId != null ">
and vu.level_id = #{vipLevelId}
</if>
<if test="params.beginTime != null and params.beginTime != ''"><!-- 开始时间检索 -->
AND date_format(u.create_time,'%y%m%d') &gt;= date_format(#{params.beginTime},'%y%m%d')
</if>
<if test="params.endTime != null and params.endTime != ''"><!-- 结束时间检索 -->
AND date_format(u.create_time,'%y%m%d') &lt;= date_format(#{params.endTime},'%y%m%d')
</if>
</where>
order by create_time desc
</select>
<select id="selectZdyVipUserByMiniProgramUserId" parameterType="Long"
resultMap="ZdyVipUserVOResult">
<include refid="selectZdyVipUserVo"/>
where vu.mini_program_user_id = #{miniProgramUserId}
and vu.del_flag = 0 limit 1
</select>
<select id="selectZdyVipUserById" parameterType="Long"
resultMap="ZdyVipUserVOResult">
<include refid="selectZdyVipUserVo"/>
where vu.id = #{id} and vu.del_flag = 0
</select>
<insert id="insertZdyVipUser" parameterType="ZdyVipUser" useGeneratedKeys="true"
keyProperty="id">
insert into zdy_vip_user
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="miniProgramUserId != null">mini_program_user_id,
</if>
<if test="levelId != null">level_id,
</if>
<if test="consumeAmount != null">consume_amount,
</if>
<if test="points != null">points,
</if>
<if test="growthValue != null">growth_value,
</if>
<if test="labelIds != null and labelIds != '' ">
label_ids,
</if>
<if test="delFlag != null">del_flag,
</if>
<if test="createTime != null">create_time,
</if>
<if test="createBy != null">create_by,
</if>
<if test="updateTime != null">update_time,
</if>
<if test="achieveThisLevelTime != null">achieve_this_level_time,
</if>
<if test="updateBy != null">update_by,
</if>
<if test="remark != null">remark,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="miniProgramUserId != null">#{miniProgramUserId},
</if>
<if test="levelId != null">#{levelId},
</if>
<if test="consumeAmount != null">#{consumeAmount},
</if>
<if test="points != null">#{points},
</if>
<if test="growthValue != null">#{growthValue},
</if>
<if test="labelIds != null and labelIds != '' ">
#{labelIds},
</if>
<if test="delFlag != null">#{delFlag},
</if>
<if test="createTime != null">#{createTime},
</if>
<if test="createBy != null">#{createBy},
</if>
<if test="updateTime != null">#{updateTime},
</if>
<if test="achieveThisLevelTime != null">#{achieveThisLevelTime},
</if>
<if test="updateBy != null">#{updateBy},
</if>
<if test="remark != null">#{remark},
</if>
</trim>
</insert>
<update id="updateZdyVipUser" parameterType="ZdyVipUser">
update zdy_vip_user
<trim prefix="SET" suffixOverrides=",">
<if test="miniProgramUserId != null">mini_program_user_id =
#{miniProgramUserId},
</if>
<if test="levelId != null">level_id =
#{levelId},
</if>
<if test="consumeAmount != null">consume_amount =
#{consumeAmount},
</if>
<if test="points != null">points =
#{points},
</if>
<if test="growthValue != null">growth_value =
#{growthValue},
</if>
label_ids = #{labelIds},
<if test="delFlag != null">del_flag =
#{delFlag},
</if>
<if test="updateTime != null">update_time =
#{updateTime},
</if>
<if test="achieveThisLevelTime != null">achieve_this_level_time = #{achieveThisLevelTime},
</if>
<if test="updateBy != null">update_by =
#{updateBy},
</if>
<if test="remark != null">remark =
#{remark},
</if>
</trim>
where id = #{id}
</update>
<delete id="deleteZdyVipUserById" parameterType="Long">
delete
from zdy_vip_user
where id = #{id}
</delete>
<delete id="deleteZdyVipUserByIds" parameterType="String">
update zdy_vip_user set del_flag = 1 where id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
</delete>
<select id="getAllLabelIds" resultType="string">
select label_ids
from zdy_vip_user
<where>
and del_flag = 0
</where>
</select>
<select id="countZdyVipUserList" resultType="long">
select count(1)
from zdy_vip_user
where del_flag = 0
</select>
</mapper>