<?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.nanometer.smartlab.dao.SysProjectDao">
|
<resultMap id="SysProject" type="com.nanometer.smartlab.entity.SysProject">
|
<id property="id" column="id"/>
|
<result property="projectNo" column="project_no"></result>
|
<result property="projectName" column="project_name"></result>
|
<result property="sysUserId" column="sys_user_id"></result>
|
<result property="remark" column="remark"></result>
|
<result property="validFlag" column="valid_flag"></result>
|
<result property="createrUser" column="creater_user"></result>
|
<result property="createTime" column="create_time"></result>
|
<result property="username" column="userName"></result>
|
<result property="project" column="project"></result>
|
</resultMap>
|
|
<sql id="queryWhereSql">
|
<if test="projectNo != null and projectNo != ''">
|
and sp.project_no like #{projectNo}
|
</if>
|
<if test="projectName != null and projectName != ''">
|
and sp.project_name like #{projectName}
|
</if>
|
<if test="sysUserId != null and sysUserId != ''">
|
and sp.sys_user_id = #{sysUserId}
|
</if>
|
</sql>
|
|
<select id="getProjectByProNo" resultMap="SysProject">
|
select * from sys_project where project_no=#{projectNo} and valid_flag=1
|
</select>
|
|
<select id="getSysProjectListByProjectNo" resultMap="SysProject">
|
select sp.*,su.`name` userName from sys_project as sp
|
left join sys_user su on su.id=sp.sys_user_id where sp.project_no=#{projectNd}
|
</select>
|
|
<select id="getSysProjectListByProjectId" resultMap="SysProject">
|
select sp.*,su.`name` userName from sys_project as sp
|
left join sys_user su on su.id=sp.sys_user_id where sp.id=#{id}
|
</select>
|
|
<select id="getSysProject" resultMap="SysProject" >
|
select * from sys_project where id = #{id}
|
</select>
|
|
<select id="getSysProjectByName" resultMap="SysProject" >
|
select * from sys_project where project_name = #{projectName}
|
</select>
|
|
|
|
<select id="getSysProjectList" parameterType="java.util.Map" resultMap="SysProject">
|
select sp.*,su.`name` userName from sys_project as sp
|
left join sys_user su on su.id=sp.sys_user_id
|
where sp.valid_flag=1
|
<include refid="queryWhereSql"/>
|
<if test="first != null and pageSize != null">
|
limit #{first}, #{pageSize}
|
</if>
|
</select>
|
|
<select id="selectDistinctProjects" parameterType="java.util.Map" resultMap="SysProject">
|
SELECT
|
sp.*
|
FROM
|
sys_project sp
|
WHERE sp.valid_flag = 1
|
AND sp.project_name is not null
|
GROUP BY
|
sp.project_name
|
</select>
|
|
|
<insert id="insertBatch" parameterType="java.util.List" useGeneratedKeys = "true" keyProperty = "id">
|
insert into sys_project
|
(project_no,project_name,sys_user_id,remark,valid_flag,creater_user,create_time)
|
values
|
<foreach collection="list" separator="," item="project">
|
(#{project.projectNo},#{project.projectName},#{project.sysUserId},#{project.remark},1,#{project.createrUser},now())
|
</foreach>
|
|
</insert>
|
<select id="getSysProjectListByIds" parameterType="java.util.List" >
|
select sp.* from sys_project as sp where valid_flag=1
|
<include refid="queryWhereSql"/>
|
<if test="first != null and pageSize != null">
|
limit #{first}, #{pageSize}
|
</if>
|
</select>
|
|
<select id="getSysProjectTotalCount" parameterType="java.util.Map" resultType="int">
|
select count(1) from sys_project as sp
|
where valid_flag = 1
|
<include refid="queryWhereSql"/>
|
</select>
|
|
<select id="getSysProjectTotalCountUpdate" parameterType="java.util.Map" resultType="int">
|
select count(1) from sys_project as sp
|
left join sys_user su on su.id=sp.sys_user_id
|
where sp.valid_flag = 1
|
<if test="createrUser!= '' and createrUser != null">
|
and sp.creater_user=#{createrUser}
|
</if>
|
<if test="projectNo != '' and projectNo != null">
|
and sp.project_no=#{projectNo}
|
</if>
|
<if test="sysUserName != '' and sysUserName != null">
|
and su.name like #{sysUserName}
|
</if>
|
<if test="projectName != '' and projectName != null">
|
and sp.project_name like #{projectName}
|
</if>
|
</select>
|
|
<select id="getSysProjectListUpdate" parameterType="java.util.Map" resultMap="SysProject">
|
select sp.*,su.name username from sys_project as sp
|
left join sys_user su on su.id=sp.sys_user_id
|
where sp.valid_flag = 1
|
<if test="createrUser != '' and createrUser != null">
|
and creater_user=#{createrUser}
|
</if>
|
<if test="projectNo != '' and projectNo != null">
|
and sp.project_no=#{projectNo}
|
</if>
|
<if test="sysUserName != '' and sysUserName != null">
|
and su.name like #{sysUserName}
|
</if>
|
<if test="projectName != '' and projectName != null">
|
and sp.project_name like #{projectName}
|
</if>
|
order by sp.create_time desc
|
<if test="first != null and pageSize != null">
|
limit #{first}, #{pageSize}
|
</if>
|
</select>
|
<select id="selectByProject" resultType="java.lang.Integer">
|
select count(0)
|
from sys_project
|
where valid_flag = 1
|
and project_name = #{0}
|
|
</select>
|
|
<insert id="insertSysProject" parameterType="com.nanometer.smartlab.entity.SysProject" useGeneratedKeys = "true" keyProperty = "id">
|
insert into sys_project( project_no,project_name,sys_user_id,remark,valid_flag,creater_user,create_time,project)
|
values ( #{projectNo}, #{projectName}, #{sysUserId}, #{remark},#{validFlag},#{createrUser},now(),#{project})
|
</insert>
|
|
<update id="updateSysProject" parameterType="com.nanometer.smartlab.entity.SysProject">
|
update sys_project set project_no=#{projectNo}, project_name=#{projectName}, sys_user_id=#{sysUserId}, remark=#{remark} ,project=#{project} where id=#{id}
|
</update>
|
|
<update id="deleteSysProjects" parameterType="java.util.List">
|
update sys_project set valid_flag=0 where id in
|
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
|
#{item}
|
</foreach>
|
</update>
|
|
|
<select id="getProjectByIds" resultType="com.nanometer.smartlab.entity.SysProject">
|
select * from sys_project where valid_flag=1 and id in
|
<foreach collection="list" separator="," item="id">
|
(#{id})
|
</foreach>
|
|
</select>
|
</mapper>
|