gdg
2020-12-23 6207311d7df3d47d27fdd78de33f49875550f52f
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
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
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
<?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="projectId" column="project_id"></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="projectId != null and projectId != ''">
      and sp.project_id like #{projectId}
    </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="getProjectByProId" parameterType="java.lang.String" resultMap="SysProject">
  select * from sys_project where project_id=#{projectId} and valid_flag=1
  </select>
 
  <select id="getSysProjectListByProjectId" parameterType="java.lang.String" 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_id=#{projectId}
  </select>
 
  <select id="getSysProject" parameterType="java.lang.String"  resultMap="SysProject" >
    select * from sys_project where id = #{id}
  </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>
 
 
  <insert id="insertBatch" parameterType="java.util.List">
    insert into sys_project
    (id,project_id,project_name,sys_user_id,remark,valid_flag,creater_user,create_time)
    values
    <foreach collection="list" separator="," item="project">
(#{project.id},#{project.projectId},#{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="projectId != '' and projectId != null">
      and sp.project_id=#{projectId}
    </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="projectId != '' and projectId != null">
      and sp.project_id=#{projectId}
    </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>
 
  <insert id="insertSysProject" parameterType="com.nanometer.smartlab.entity.SysProject">
    insert into sys_project(id, project_id,project_name,sys_user_id,remark,valid_flag,creater_user,create_time,project)
    values (#{id}, #{projectId}, #{projectName}, #{sysUserId}, #{remark},#{validFlag},#{createrUser},now(),#{project})
  </insert>
 
  <update id="updateSysProject" parameterType="com.nanometer.smartlab.entity.SysProject">
    update sys_project set project_id=#{projectId}, 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>
</mapper>