<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
|
<mapper namespace="kr.wisestone.owl.mapper.IssueTypeMapper">
|
|
<select id="find" resultType="java.util.HashMap" parameterType="kr.wisestone.owl.web.condition.IssueTypeCondition">
|
SELECT
|
DISTINCT it.id as id,
|
it.name as name,
|
it.description as description,
|
it.color as color,
|
it.project_id as projectId,
|
it.use_partner AS usePartners,
|
it.inherit_partners as inheritPartners
|
FROM
|
issue_type it
|
INNER JOIN workspace ws on it.workspace_id = ws.id
|
WHERE 1=1
|
<if test="name != '' and name != null">
|
AND it.name like CONCAT('%',#{name},'%')
|
</if>
|
<choose>
|
<when test="allProjectIds != null and allProjectIds.size != 0">
|
AND it.project_id IN
|
<foreach collection="allProjectIds" item="item" index="index" separator="," open="(" close=")">
|
#{item}
|
</foreach>
|
</when>
|
</choose>
|
<if test="projectId != '' and projectId != null">
|
AND it.project_id like CONCAT('%',#{projectId},'%')
|
</if>
|
<choose>
|
<when test="downProjectIds != null and downProjectIds.size != 0">
|
OR it.project_id IN
|
<foreach collection="downProjectIds" item="item" index="index" separator="," open="(" close=")">
|
#{item}
|
</foreach>
|
</when>
|
</choose>
|
<if test="useProject != '' and useProject != null and useProject == true">
|
AND it.project_id IS NOT NULL
|
</if>
|
AND ws.id = #{workspaceId}
|
ORDER BY it.register_date DESC
|
<if test="page != null and !page.equals('')">
|
limit #{pageSize} offset #{page};
|
</if>
|
</select>
|
|
<select id="count" resultType="java.lang.Long" parameterType="kr.wisestone.owl.web.condition.IssueTypeCondition">
|
SELECT
|
COUNT(DISTINCT it.id)
|
FROM
|
issue_type it
|
INNER JOIN workspace ws on it.workspace_id = ws.id
|
WHERE 1=1
|
<if test="name != '' and name != null">
|
AND it.name like CONCAT('%',#{name},'%')
|
</if>
|
AND ws.id = #{workspaceId}
|
</select>
|
|
</mapper>
|