OWL ITS + 탐지시스템(인터넷 진흥원)
src/main/resources/mybatis/query-template/project-template.xml
@@ -77,7 +77,7 @@
        INNER JOIN user_department ud on ud.department_id = prd.department_id
        INNER JOIN workspace ws on ws.id = p.workspace_id
        LEFT JOIN project_closure pc ON p.id = pc.project_id
        WHERE 1=1
        WHERE if (pc.parent_project_id > -1, pc.parent_project_id, -1) = -1
        <if test="name != '' and name != null">
            AND p.name like CONCAT('%',#{name},'%')
        </if>
@@ -181,6 +181,7 @@
        INNER JOIN workspace ws on ws.id = p.workspace_id
        LEFT JOIN project_closure pc on p.id = pc.project_id
        WHERE prd.department_id = ud.id
        AND if (pc.parent_project_id > -1, pc.parent_project_id, -1) = -1
        <if test="name != '' and name != null">
            AND p.name like CONCAT('%',#{name},'%')
        </if>
@@ -377,43 +378,43 @@
        </choose>
    </select>
   <!-- <select id="findByWorkspaceIdAndIncludeProjectAll" resultType="java.util.HashMap"
            parameterType="kr.wisestone.owl.web.condition.ProjectCondition">
        SELECT
        DISTINCT p.id as id,
        p.name as name,
        p.description as description,
        p.status as status,
        p.start_date as startDate,
        p.end_date as endDate,
        p.project_key as projectKey,
        CASE p.default_yn WHEN 'Y' THEN 'true' ELSE 'false' END as defaultYn
        FROM
        project p
        INNER JOIN project_role pr on p.id = pr.project_id
        INNER JOIN project_role_user pru on pru.project_role_id = pr.id
        WHERE pru.user_id = #{loginUserId}
        AND p.workspace_id = #{workspaceId}
        <if test="name != '' and name != null">
            AND p.name like CONCAT('%',#{name},'%')
        </if>
        <choose>
            <when test="statuses.size != 0">
                AND p.status IN
                <foreach collection="statuses" item="item" index="index" separator="," open="(" close=")">
                    #{item}
                </foreach>
            </when>
        </choose>
        <choose>
            <when test="excludeIds.size != 0">
                AND p.id NOT IN
                <foreach collection="excludeIds" item="item" index="index" separator="," open="(" close=")">
                    #{item}
                </foreach>
            </when>
        </choose>
    </select>-->
    <!-- <select id="findByWorkspaceIdAndIncludeProjectAll" resultType="java.util.HashMap"
             parameterType="kr.wisestone.owl.web.condition.ProjectCondition">
         SELECT
         DISTINCT p.id as id,
         p.name as name,
         p.description as description,
         p.status as status,
         p.start_date as startDate,
         p.end_date as endDate,
         p.project_key as projectKey,
         CASE p.default_yn WHEN 'Y' THEN 'true' ELSE 'false' END as defaultYn
         FROM
         project p
         INNER JOIN project_role pr on p.id = pr.project_id
         INNER JOIN project_role_user pru on pru.project_role_id = pr.id
         WHERE pru.user_id = #{loginUserId}
         AND p.workspace_id = #{workspaceId}
         <if test="name != '' and name != null">
             AND p.name like CONCAT('%',#{name},'%')
         </if>
         <choose>
             <when test="statuses.size != 0">
                 AND p.status IN
                 <foreach collection="statuses" item="item" index="index" separator="," open="(" close=")">
                     #{item}
                 </foreach>
             </when>
         </choose>
         <choose>
             <when test="excludeIds.size != 0">
                 AND p.id NOT IN
                 <foreach collection="excludeIds" item="item" index="index" separator="," open="(" close=")">
                     #{item}
                 </foreach>
             </when>
         </choose>
     </select>-->
    <!--    해당 업무 공간에서 참여하고 있는 진행중인 프로젝트를 조회한다  -->
    <select id="findByWorkspaceIdAndIncludeProjectAll" resultType="java.util.HashMap"
@@ -564,6 +565,7 @@
        INNER JOIN user_department ud on ud.department_id = prd.department_id
        LEFT JOIN project_closure pc ON p.id = pc.project_id
        WHERE prd.department_id = ud.department_id
        AND if (pc.parent_project_id > -1, pc.parent_project_id, -1) = -1
        AND p.workspace_id = #{workspaceId}
        <if test="name != '' and name != null">
            AND p.name like CONCAT('%',#{name},'%')
@@ -623,17 +625,17 @@
    <select id="findChildrenProject" resultType="java.util.HashMap" parameterType="long">
        SELECT
        p.id as id,
        p.name as name,
        p.description as description,
        p.status as status,
        p.start_date as startDate,
        p.end_date as endDate,
        p.project_key as projectKey,
        pc.parent_project_id as parentProjectId
            p.id as id,
            p.name as name,
            p.description as description,
            p.status as status,
            p.start_date as startDate,
            p.end_date as endDate,
            p.project_key as projectKey,
            pc.parent_project_id as parentProjectId
        FROM
        project p
        LEFT JOIN project_closure pc ON p.id = pc.project_id
            project p
                LEFT JOIN project_closure pc ON p.id = pc.project_id
        WHERE pc.parent_project_id = #{parent_project_id}
    </select>