<?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.stdiet.custom.mapper.SysContractMapper"> <resultMap type="SysContract" id="SysContractResult"> <result property="id" column="id"/> <result property="projectId" column="project_id"></result> <result property="status" column="status"/> <result property="name" column="name"/> <result property="signName" column="sign_name"/> <result property="cusId" column="cus_id"/> <result property="phone" column="phone"/> <result property="tutor" column="tutor"/> <result property="serveTime" column="serve_time"/> <result property="servePromise" column="serve_promise"/> <result property="amount" column="amount"/> <result property="path" column="path"/> <result property="createBy" column="create_by"/> <result property="createTime" column="create_time"/> <result property="updateBy" column="update_by"/> <result property="updateTime" column="update_time"/> <result property="remark" column="remark"/> <!-- 非持久化字段 --> <result property="projectName" column="project_name"></result> </resultMap> <sql id="selectSysContractVo"> select sc.id, sc.project_id, sc.status, sc.name, sc.sign_name, sc.phone, sc.cus_id, sc.serve_time, sc.tutor, sc.serve_promise, sc.amount, sc.path, sc.create_by, sc.create_time, sc.update_by, sc.update_time, sc.remark,cp.dict_label as project_name from sys_contract as sc LEFT JOIN (SELECT dict_label, dict_value FROM sys_dict_data WHERE dict_type = 'conditioning_project') as cp ON cp.dict_value = sc.project_id </sql> <select id="selectSysContractList" parameterType="SysContract" resultMap="SysContractResult"> <include refid="selectSysContractVo"/> <where> <if test="id != null ">and sc.id = #{id}</if> <if test="status != null ">and sc.status = #{status}</if> <if test="tutor != null and tutor != '' ">and sc.tutor = #{tutor}</if> <if test="name != null and name != ''">and sc.name like concat('%', #{name}, '%')</if> <if test="phone != null and phone != ''">and sc.phone = #{phone}</if> </where> order by create_time desc </select> <select id="selectSysContractById" parameterType="Long" resultMap="SysContractResult"> <include refid="selectSysContractVo"/> where sc.id = #{id} </select> <insert id="insertSysContract" parameterType="SysContract" useGeneratedKeys="true" keyProperty="id"> insert into sys_contract <trim prefix="(" suffix=")" suffixOverrides=","> <if test="id != null">id,</if> <if test="projectId != null">project_id,</if> <if test="status != null">status,</if> <if test="name != null and name != ''">name,</if> <if test="signName != null and signName != ''">sign_name,</if> <if test="tutor != null and tutor != ''">tutor,</if> <if test="cusId != null and cusId != ''">cus_id,</if> <if test="phone != null">phone,</if> <if test="serveTime != null">serve_time,</if> <if test="servePromise != null">serve_promise,</if> <if test="amount != null">amount,</if> <if test="path != null">path,</if> <if test="createBy != null">create_by,</if> <if test="createTime != null">create_time,</if> <if test="updateBy != null">update_by,</if> <if test="updateTime != null">update_time,</if> <if test="remark != null">remark,</if> </trim> <trim prefix="values (" suffix=")" suffixOverrides=","> <if test="id != null">#{id},</if> <if test="projectId != null">#{projectId},</if> <if test="status != null">#{status},</if> <if test="name != null and name != ''">#{name},</if> <if test="signName != null and signName != ''">#{signName},</if> <if test="tutor != null and name != ''">#{tutor},</if> <if test="cusId != null and cusId != ''">#{cusId},</if> <if test="phone != null">#{phone},</if> <if test="serveTime != null">#{serveTime},</if> <if test="servePromise != null">#{servePromise},</if> <if test="amount != null">#{amount},</if> <if test="path != null">#{path},</if> <if test="createBy != null">#{createBy},</if> <if test="createTime != null">#{createTime},</if> <if test="updateBy != null">#{updateBy},</if> <if test="updateTime != null">#{updateTime},</if> <if test="remark != null">#{remark},</if> </trim> </insert> <update id="updateSysContract" parameterType="SysContract"> update sys_contract <trim prefix="SET" suffixOverrides=","> <if test="projectId != null">project_id = #{projectId},</if> <if test="status != null">status = #{status},</if> <if test="name != null and name != ''">name = #{name},</if> <if test="signName != null and signName != ''">sign_name = #{signName},</if> <if test="tutor != null">tutor = #{tutor},</if> <if test="cusId != null and cusId != ''">cus_id = #{cusId},</if> <if test="phone != null">phone = #{phone},</if> <if test="serveTime != null">serve_time = #{serveTime},</if> <if test="servePromise != null">serve_promise = #{servePromise},</if> <if test="amount != null">amount = #{amount},</if> <if test="path != null">path = #{path},</if> <if test="createBy != null">create_by = #{createBy},</if> <if test="createTime != null">create_time = #{createTime},</if> <if test="updateBy != null">update_by = #{updateBy},</if> <if test="updateTime != null">update_time = #{updateTime},</if> <if test="remark != null">remark = #{remark},</if> </trim> where id = #{id} </update> <delete id="deleteSysContractById" parameterType="Long"> delete from sys_contract where id = #{id} </delete> <delete id="deleteSysContractByIds" parameterType="String"> delete from sys_contract where id in <foreach item="id" collection="array" open="(" separator="," close=")"> #{id} </foreach> </delete> </mapper>