You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

110 lines
4.3 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<?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.example.mapper.BusinessMapper">
<!-- 定义商家表基础字段列表 -->
<sql id="Base_Column_List">
id,username,password,name,phone,email,avatar,role,description,status
</sql>
<!-- 查询所有商家(支持条件查询) -->
<select id="selectAll" resultType="com.example.entity.Business">
select
<include refid="Base_Column_List" />
from business
<where>
<if test="id != null"> and id= #{id}</if>
<if test="username != null"> and username like concat('%', #{username}, '%')</if> <!-- 用户名模糊查询 -->
<if test="password != null"> and password= #{password}</if>
<if test="name != null"> and name= #{name}</if>
<if test="phone != null"> and phone= #{phone}</if>
<if test="email != null"> and email= #{email}</if>
<if test="avatar != null"> and avatar= #{avatar}</if>
<if test="role != null"> and role= #{role}</if>
<if test="description != null"> and description= #{description}</if> <!-- 商家描述 -->
<if test="status != null"> and status= #{status}</if> <!-- 商家状态 -->
</where>
</select>
<!-- 根据ID查询单个商家 -->
<select id="selectById" resultType="com.example.entity.Business">
select
<include refid="Base_Column_List" />
from business
where id = #{id}
</select>
<!-- 根据ID删除商家 -->
<delete id="deleteById">
delete from business
where id = #{id}
</delete>
<!-- 新增商家(动态插入非空字段) -->
<insert id="insert" parameterType="com.example.entity.Business" useGeneratedKeys="true">
insert into business
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null">id,</if>
<if test="username != null">username,</if>
<if test="password != null">password,</if>
<if test="name != null">name,</if>
<if test="phone != null">phone,</if>
<if test="email != null">email,</if>
<if test="avatar != null">avatar,</if>
<if test="role != null">role,</if>
<if test="description != null">description,</if> <!-- 商家描述 -->
<if test="status != null">status,</if> <!-- 商家状态 -->
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">#{id},</if>
<if test="username != null">#{username},</if>
<if test="password != null">#{password},</if>
<if test="name != null">#{name},</if>
<if test="phone != null">#{phone},</if>
<if test="email != null">#{email},</if>
<if test="avatar != null">#{avatar},</if>
<if test="role != null">#{role},</if>
<if test="description != null">#{description},</if>
<if test="status != null">#{status},</if>
</trim>
</insert>
<!-- 根据ID修改商家信息动态更新非空字段 -->
<update id="updateById" parameterType="com.example.entity.Business">
update business
<set>
<if test="username != null">
username = #{username},
</if>
<if test="password != null">
password = #{password},
</if>
<if test="name != null">
name = #{name},
</if>
<if test="phone != null">
phone = #{phone},
</if>
<if test="email != null">
email = #{email},
</if>
<if test="avatar != null">
avatar = #{avatar},
</if>
<if test="role != null">
role = #{role},
</if>
<if test="description != null">
description = #{description}, <!-- 商家描述 -->
</if>
<if test="status != null">
status = #{status}, <!-- 商家状态 -->
</if>
</set>
where id = #{id}
</update>
</mapper>