<?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.tievd.cube.modules.system.mapper.SysDictMapper">
|
|
<!-- 通过字典code获取字典数据 -->
|
<select id="queryDictItemsByCode" parameterType="String" resultType="com.tievd.cube.modules.system.model.DictModel">
|
select s.item_value as "value",s.item_text as "text" from sys_dict_item s
|
where dict_id = (select id from sys_dict where dict_code = #{code})
|
order by s.sort_order asc
|
</select>
|
|
<!--通过查询指定table的 text code 获取字典(指定查询条件)-->
|
<select id="queryTableDictItemsByCodeAndFilter" parameterType="String" resultType="com.tievd.cube.modules.system.model.DictModel">
|
select ${text} as "text", ${code} as "value" from ${table}
|
<if test="filterSql != null and filterSql != ''">
|
where ${filterSql}
|
</if>
|
</select>
|
|
<!-- 通过字典code获取字典数据 -->
|
<select id="queryDictTextByKey" parameterType="String" resultType="String">
|
select s.item_text from sys_dict_item s
|
where s.dict_id = (select id from sys_dict where dict_code = #{code})
|
and s.item_value = #{key}
|
</select>
|
|
<!-- 通过字典code获取字典数据 -->
|
<select id="queryDictKeyByText" parameterType="String" resultType="String">
|
select s.item_value from sys_dict_item s
|
where s.dict_id = (select id from sys_dict where dict_code = #{code})
|
and s.item_text = #{text}
|
</select>
|
|
<!--通过查询指定table的 text code key 获取字典值,包含value-->
|
<select id="queryTableDictByKeys" parameterType="String" resultType="com.tievd.cube.modules.system.model.DictModel">
|
select ${text} as "text", ${code} as "value" from ${table} where ${code} in
|
<foreach item="key" collection="keyArray" open="(" separator="," close=")">
|
#{key}
|
</foreach>
|
</select>
|
|
<select id="queryTableDictByText" parameterType="String" resultType="String">
|
select ${code} from ${table} where ${text} = '${value}' limit 1
|
</select>
|
|
<!-- 重复校验 sql语句 -->
|
<select id="duplicateCheckCountSql" resultType="Long" parameterType="com.tievd.cube.modules.system.model.api.request.DuplicateCheckRequest">
|
SELECT COUNT(*) FROM ${tableName} WHERE ${fieldName} = #{fieldVal}
|
<if test="dataId != null and dataId != ''">
|
and id != #{dataId}
|
</if>
|
</select>
|
|
<!-- 查询部门信息 作为字典数据 -->
|
<select id="queryAllDepartBackDictModel" resultType="com.tievd.cube.modules.system.model.DictModel">
|
select id as "value", depart_name as "text" from sys_depart where del_flag = '0'
|
</select>
|
|
<!-- 根据表名、显示字段名、存储字段名、父ID查询树 -->
|
<select id="queryTreeList" parameterType="Object" resultType="com.tievd.cube.modules.system.model.TreeSelectModel">
|
select ${text} as "title",
|
${code} as "key",
|
<if test="hasChildField != null and hasChildField != ''">
|
(case when ${hasChildField} = '1' then 0 else 1 end) as isLeaf,
|
</if>
|
${pidField} as parentId
|
from ${table}
|
where
|
<choose>
|
<when test="pid != null and pid != ''">
|
${pidField} = #{pid}
|
</when>
|
<otherwise>
|
(${pidField} = '' OR ${pidField} IS NULL)
|
</otherwise>
|
</choose>
|
<if test="query != null">
|
<foreach collection="query.entrySet()" item="value" index="key">
|
and ${key} = #{value}
|
</foreach>
|
</if>
|
</select>
|
</mapper>
|