StaffMapper.xml 4.28 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12
<?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="cn.wisenergy.mapper.StaffMapper">
    <resultMap id="staffMap" type="cn.wisenergy.model.app.Staff">
        <id column="id" property="id"></id>
        <result column="staff_name" property="staffName"/>
        <result column="login_name" property="loginName"/>
        <result column="password" property="password"/>
        <result column="phone" property="phone"/>
        <result column="is_delete" property="isDelete"/>
        <result column="create_time" property="createTime"/>
        <result column="update_time" property="updateTime"/>
cy's avatar
cy committed
13
        <result column="sex" property="sex"/>
14 15 16 17 18 19 20 21 22 23 24 25
    </resultMap>

    <sql id="table">
        staff
    </sql>

    <sql id="cols_all">
        id,
        <include refid="cols_exclude_id"/>
    </sql>

    <sql id="cols_exclude_id">
cy's avatar
cy committed
26
        staff_name,login_name,password, phone,is_delete,create_time,update_time,sex
27 28 29 30
    </sql>

    <sql id="vals">
        #{staffName},#{loginName},#{password},#{phone},
cy's avatar
cy committed
31
        #{isDelete},now(),now(),#{sex}
32 33 34 35 36 37 38 39
    </sql>

    <sql id="updateCondition">
        <if test="staffName != null">staff_name = #{staffName},</if>
        <if test="loginName !=null">login_name = #{loginName},</if>
        <if test="password != null">password =#{password},</if>
        <if test="phone != null">phone =#{phone},</if>
        <if test="isDelete != null">is_delete = #{isDelete},</if>
cy's avatar
cy committed
40
        <if test="sex != null">sex = #{sex},</if>
41 42 43 44 45 46 47 48 49 50 51 52
        update_time =now()
    </sql>

    <sql id="criteria">
        <if test="id != null">id = #{id}</if>
        <if test="staffName != null">and staff_name = #{staffName}</if>
        <if test="loginName !=null">and login_name = #{login_name}</if>
        <if test="password != null">and password =#{password}</if>
        <if test="phone != null">and phone =#{phone}</if>
        <if test="isDelete != null">and is_delete = #{isDelete}</if>
        <if test="createTime != null">and create_time &gt;= #{createTime}</if>
        <if test="updateTime != null">and #{updateTime} &gt;= update_time</if>
cy's avatar
cy committed
53
        <if test="sex != null">sex = #{sex}</if>
54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104
    </sql>

    <insert id="addStaff" parameterType="cn.wisenergy.model.app.Staff">
        insert into
        <include refid="table"/>
        (<include refid="cols_exclude_id"/>)
        value(
        <include refid="vals"/>
        )
    </insert>

    <update id="editStaff" parameterType="cn.wisenergy.model.app.Staff">
        UPDATE
        <include refid="table"/>
        <set>
            <include refid="updateCondition"/>
        </set>
        <where>
            id = #{id}
        </where>
    </update>

    <select id="getStaffList" resultMap="staffMap" parameterType="map">
        select
        <include refid="cols_all"/>
        from
        <include refid="table"/>
        <where>
            is_delete=0
            <if test="staffName != null">and staff_name like ('%' #{staffName} '%')</if>

            <if test="phone != null">and phone like ('%' #{phone} '%')</if>
            order by create_time desc
            <if test="pageNo != null">
                limit #{pageNo},#{pageSize}
            </if>
        </where>
    </select>

    <update id="delete" parameterType="int">
        UPDATE
        <include refid="table"/>
        <set>
             is_delete = 1
        </set>
        <where>
            id = #{id}
        </where>

    </update>

105 106 107 108 109 110 111 112
    <select id="getById" resultMap="staffMap">
        select
        <include refid="cols_all"/>
        from
        <include refid="table"/>
        <where>id = #{id}</where>
    </select>

113 114 115 116 117 118 119 120 121 122 123 124 125
    <select id="getUserNumbers" resultType="java.lang.Integer">
        SELECT COUNT(id)
        FROM
        <include refid="table"/>
        <where>
            is_delete=0

            <if test="staffName != null">and staff_name like ('%' #{staffName} '%')</if>

            <if test="phone != null">and phone like ('%' #{phone} '%')</if>
        </where>

    </select>
126 127 128 129 130 131 132 133 134 135 136 137

    <select id="getStaff" resultMap="staffMap" parameterType="map">
        select
        <include refid="cols_all"/>
        from
        <include refid="table"/>
        <where>
            login_name=#{loginName}
            and
            is_delete=0
        </where>
    </select>
138
</mapper>