<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
|
<mapper namespace="kr.wisestone.owl.mapper.IssueUserMapper">
|
|
<!-- 이슈 담당자 bulk insert, import, modify, add 에서 사용 -->
|
<insert id="insertIssueUser" keyColumn="id" keyProperty="id" useGeneratedKeys="true"
|
parameterType="java.util.HashMap">
|
INSERT INTO issue_user(department_id, user_id, issue_id, workspace_id, register_id, modify_id, register_date, modify_date)
|
VALUES
|
<foreach collection="list" item="map" index="index" separator="," open="" close="">
|
(#{map.departmentId},#{map.userId}, #{map.issueId}, #{map.workspaceId}, #{map.registerId}, #{map.registerId}, NOW(), NOW())
|
</foreach>
|
</insert>
|
|
<!--담당부서-->
|
<!-- 이슈 담당부서 bulk 삭제 - modify, add 에서 사용 -->
|
<delete id="deleteIssueUserByIssueIdAndMultiDepartmentId" parameterType="java.util.HashMap">
|
DELETE FROM issue_user WHERE issue_id = #{issueId} AND department_id IN (
|
<foreach collection="map.departmentIds" item="item" index="index" separator="," open="" close="">
|
#{item}
|
</foreach>
|
)
|
</delete>
|
|
<delete id="deleteIssueUserByDepartmentIdAndMultiIssueId" parameterType="java.util.HashMap">
|
DELETE FROM issue_user WHERE department_id = #{departmentId} AND issue_id IN (
|
<foreach collection="issueIds" item="item" index="index" separator="," open="" close="">
|
#{item}
|
</foreach>
|
)
|
</delete>
|
|
<!-- 이슈 담당부서를 조회한다 -->
|
<select id="findByDepartmentIdAndProjectId" resultType="java.util.HashMap" parameterType="java.util.HashMap">
|
SELECT DISTINCT(i.id) FROM issue i
|
INNER JOIN issue_user iu ON iu.issue_id = i.id
|
INNER JOIN department d ON d.id = iu.department_id
|
WHERE i.project_id = #{projectId} AND d.id = #{departmentId}
|
</select>
|
|
|
<!--담당자-->
|
<!-- 이슈 담당자 bulk 삭제 - modify, add 에서 사용 -->
|
<delete id="deleteIssueUserByIssueIdAndMultiUserId" parameterType="java.util.HashMap">
|
DELETE FROM issue_user WHERE issue_id = #{issueId} AND user_id IN (
|
<foreach collection="userIds" item="item" index="index" separator="," open="" close="">
|
#{item}
|
</foreach>
|
)
|
</delete>
|
|
<delete id="deleteIssueUserByUserIdAndMultiIssueId" parameterType="java.util.HashMap">
|
DELETE FROM issue_user WHERE user_id = #{userId} AND issue_id IN (
|
<foreach collection="issueIds" item="item" index="index" separator="," open="" close="">
|
#{item}
|
</foreach>
|
)
|
</delete>
|
|
<!-- 이슈 담당자를 조회한다 -->
|
<select id="findByUserIdAndProjectId" resultType="java.util.HashMap" parameterType="java.util.HashMap">
|
SELECT DISTINCT(i.id) FROM issue i
|
INNER JOIN issue_user iu ON iu.issue_id = i.id
|
INNER JOIN user u ON u.id = iu.user_id
|
WHERE i.project_id = #{projectId} AND u.id = #{userId}
|
</select>
|
|
</mapper>
|