| | |
| | | d.id as id, |
| | | d.department_name as departmentName, |
| | | d.department_description as departmentDescription, |
| | | (SELECT COUNT(d.id) FROM user_department ud WHERE d.id = ud.department_id) AS departmentCount |
| | | (SELECT COUNT(ud.department_id) FROM user_department ud WHERE d.id = ud.department_id) AS departmentCount |
| | | FROM |
| | | department d |
| | | WHERE 1=1 |
| | | <if test="departmentName != '' and departmentName != null"> |
| | | <if test="departmentName != null and departmentName != ''"> |
| | | AND d.department_name like CONCAT('%',#{departmentName},'%') |
| | | </if> |
| | | <if test="id != '' and id != null"> |
| | | <if test="id != null and id != ''"> |
| | | AND d.id like CONCAT('%',#{id},'%') |
| | | </if> |
| | | <choose> |
| | | <when test="excludeIds != null and excludeIds.size != 0"> |
| | | AND d.id NOT IN |
| | | <foreach collection="excludeIds" item="item" index="index" separator="," open="(" close=")"> |
| | | #{item} |
| | | </foreach> |
| | | </when> |
| | | </choose> |
| | | <if test="pageSize != '' and pageSize != null"> |
| | | limit #{pageSize} offset #{page}; |
| | | </if> |
| | |
| | | AND d.id like CONCAT('%',#{id},'%') |
| | | </if> |
| | | </select> |
| | | |
| | | <select id="findByDepartmentIds" resultType="java.util.HashMap" parameterType="kr.wisestone.owl.web.condition.UserCondition"> |
| | | SELECT |
| | | d.id as id, |
| | | d.department_name as departmentName, |
| | | d.department_description as departmentDescription |
| | | FROM |
| | | user_department ud |
| | | INNER JOIN department d ON ud.department_id = d.id |
| | | WHERE 1=1 |
| | | <if test="id != '' and id != null"> |
| | | AND ud.user_id = #{id} |
| | | </if> |
| | | <choose> |
| | | <when test="excludeIds != null and excludeIds.size != 0"> |
| | | AND d.id NOT IN |
| | | <foreach collection="excludeIds" item="item" index="index" separator="," open="(" close=")"> |
| | | #{item} |
| | | </foreach> |
| | | </when> |
| | | </choose> |
| | | </select> |
| | | |
| | | <select id="findProjectDepartment" resultType="java.util.HashMap" |
| | | parameterType="kr.wisestone.owl.web.condition.UserCondition"> |
| | | select DISTINCT (d.id) as departmentId, d.department_name as departmentName from department d |
| | | inner join project_role_department prd on prd.department_id = d.id |
| | | inner join project_role pr on pr.id = prd.project_role_id |
| | | inner join project p on p.id = pr.project_id |
| | | where p.id = #{projectId}; |
| | | </select> |
| | | |
| | | <select id="findByIssueStatusId" resultType="java.util.HashMap" parameterType="kr.wisestone.owl.web.condition.DepartmentCondition"> |
| | | SELECT |
| | | d.id as id, |
| | | d.department_name as departmentName |
| | | FROM |
| | | department d |
| | | INNER JOIN workflow_department wd ON wd.department_id = d.id |
| | | WHERE 1=1 |
| | | <if test="issueStatusId != null and issueStatusId != ''"> |
| | | AND wd.issue_status_id = #{issueStatusId} |
| | | </if> |
| | | <if test="workflowId != null and workflowId != ''"> |
| | | AND wd.workflow_Id = #{workflowId} |
| | | </if> |
| | | <choose> |
| | | <when test="excludeIds != null and excludeIds.size != 0"> |
| | | AND d.id NOT IN |
| | | <foreach collection="excludeIds" item="item" index="index" separator="," open="(" close=")"> |
| | | #{item} |
| | | </foreach> |
| | | </when> |
| | | </choose> |
| | | <if test="pageSize != '' and pageSize != null"> |
| | | limit #{pageSize} offset #{page}; |
| | | </if> |
| | | </select> |
| | | |
| | | |
| | | </mapper> |