by-crm/backend/target/classes/mapper/UserMapper.xml
2026-01-26 16:01:15 +08:00

65 lines
2.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.bycrm.mapper.UserMapper">
<resultMap id="BaseResultMap" type="com.bycrm.entity.User">
<id column="id" property="id"/>
<result column="username" property="username"/>
<result column="password" property="password"/>
<result column="real_name" property="realName"/>
<result column="dealer_id" property="dealerId"/>
<result column="role" property="role"/>
<result column="status" property="status"/>
<result column="created_at" property="createdAt"/>
<result column="updated_at" property="updatedAt"/>
<result column="dealer_name" property="dealerName"/>
</resultMap>
<select id="selectByUsername" resultMap="BaseResultMap">
SELECT u.*,
d.name AS dealer_name
FROM crm_user u
LEFT JOIN crm_dealer d ON u.dealer_id = d.id
WHERE u.username = #{username}
</select>
<select id="selectById" resultMap="BaseResultMap">
SELECT u.*,
d.name AS dealer_name
FROM crm_user u
LEFT JOIN crm_dealer d ON u.dealer_id = d.id
WHERE u.id = #{id}
</select>
<select id="selectList" resultMap="BaseResultMap">
SELECT u.*,
d.name AS dealer_name
FROM crm_user u
LEFT JOIN crm_dealer d ON u.dealer_id = d.id
ORDER BY u.created_at DESC
</select>
<insert id="insert" parameterType="com.bycrm.entity.User" useGeneratedKeys="true" keyProperty="id">
INSERT INTO crm_user (username, password, real_name, dealer_id, role, status)
VALUES (#{username}, #{password}, #{realName}, #{dealerId}, #{role}, #{status})
</insert>
<update id="update" parameterType="com.bycrm.entity.User">
UPDATE crm_user
<set>
<if test="password != null and password != ''">password = #{password},</if>
<if test="realName != null and realName != ''">real_name = #{realName},</if>
<if test="dealerId != null">dealer_id = #{dealerId},</if>
<if test="role != null">role = #{role},</if>
<if test="status != null">status = #{status},</if>
</set>
WHERE id = #{id}
</update>
<delete id="deleteById">
DELETE FROM crm_user WHERE id = #{id}
</delete>
</mapper>