integrated_traffic/src/main/resources/mybatis/datasource/system/PostMapper.xml

183 lines
4.0 KiB
XML

<?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.zcloud.mapper.datasource.system.PostMapper">
<!--表名 -->
<sql id="tableName">
SYS_POST
</sql>
<!--数据字典表名 -->
<sql id="dicTableName">
SYS_DICTIONARIES
</sql>
<!-- 字段 -->
<sql id="Field">
f.DEPARTMENT_ID,
f.CORPINFO_ID,
f.NAME,
f.DESCR,
f.STATUS,
f.ISDELETE,
f.CREATOR,
f.CREATTIME,
f.OPERATOR,
f.OPERATTIME,
f.POST_ID
</sql>
<!-- 字段用于新增 -->
<sql id="Field2">
DEPARTMENT_ID,
CORPINFO_ID,
NAME,
DESCR,
STATUS,
ISDELETE,
CREATOR,
CREATTIME,
OPERATOR,
OPERATTIME,
POST_ID
</sql>
<!-- 字段值 -->
<sql id="FieldValue">
#{DEPARTMENT_ID},
#{CORPINFO_ID},
#{NAME},
#{DESCR},
#{STATUS},
#{ISDELETE},
#{CREATOR},
#{CREATTIME},
#{OPERATOR},
#{OPERATTIME},
#{POST_ID}
</sql>
<!-- 新增-->
<insert id="save" parameterType="pd">
insert into
<include refid="tableName"></include>
(
<include refid="Field2"></include>
) values (
<include refid="FieldValue"></include>
)
</insert>
<!-- 删除-->
<delete id="delete" parameterType="pd">
update
<include refid="tableName"></include>
set
ISDELETE = '1'
where
POST_ID = #{POST_ID}
</delete>
<!-- 修改 -->
<update id="edit" parameterType="pd">
update
<include refid="tableName"></include>
set
NAME = #{NAME},
DESCR = #{DESCR},
STATUS = #{STATUS},
POST_ID = POST_ID
where
POST_ID = #{POST_ID}
</update>
<!-- 通过ID获取数据 -->
<select id="findById" parameterType="pd" resultType="pd">
select
<include refid="Field"></include>
from
<include refid="tableName"></include> f
where
f.POST_ID = #{POST_ID}
</select>
<!-- 列表 -->
<select id="datalistPage" parameterType="page" resultType="pd">
select
<include refid="Field"></include>,
d.NAME as DEPARTMENT_NAME
from
<include refid="tableName"></include> f
left join OA_DEPARTMENT d on d.DEPARTMENT_ID=f.DEPARTMENT_ID
where f.ISDELETE = '0'
<if test="pd.DEPARTMENT_ID!= null and pd.DEPARTMENT_ID != ''"><!-- 检索 -->
and f.DEPARTMENT_ID = #{pd.DEPARTMENT_ID}
</if>
<if test="pd.CORPINFO_ID != null and pd.CORPINFO_ID != ''"><!-- 关键词检索 -->
AND
f.CORPINFO_ID = #{pd.CORPINFO_ID}
</if>
<if test="pd.KEYWORDS != null and pd.KEYWORDS != ''"><!-- 关键词检索 -->
and
(
f.NAME LIKE CONCAT(CONCAT('%', #{pd.KEYWORDS}),'%')
or
f.DESCR LIKE CONCAT(CONCAT('%', #{pd.KEYWORDS}),'%')
)
</if>
</select>
<!-- 列表(全部) -->
<select id="listAll" parameterType="pd" resultType="pd">
select
<include refid="Field"></include>
from
<include refid="tableName"></include> f
where f.ISDELETE = '0'
<if test="DEPARTMENT_ID!= null and DEPARTMENT_ID != ''"><!-- 检索 -->
and f.DEPARTMENT_ID = #{DEPARTMENT_ID}
</if>
<if test="CORPINFO_ID != null and CORPINFO_ID != ''"><!-- 关键词检索 -->
AND
f.CORPINFO_ID = #{CORPINFO_ID}
</if>
<if test="STATUS != null and STATUS != ''"><!-- 关键词检索 -->
AND
f.STATUS = #{STATUS}
</if>
</select>
<!-- 批量删除 -->
<delete id="deleteAll" parameterType="String">
update
<include refid="tableName"></include>
set
ISDELETE = '1'
where
POST_ID in
<foreach item="item" index="index" collection="ArrayDATA_IDS" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
<!-- 获取同部门下的名称 -->
<select id="findByNameAndDepartment" parameterType="page" resultType="pd">
select
<include refid="Field"></include>
from
<include refid="tableName"></include> f
where f.ISDELETE = '0'
<if test="DEPARTMENT_ID != null and DEPARTMENT_ID != ''">
and f.DEPARTMENT_ID = #{DEPARTMENT_ID}
</if>
<if test="NAME !=null and NAME != ''">
and f.NAME = #{NAME}
</if>
<if test="CORPINFO_ID != null and CORPINFO_ID != ''">
AND
f.CORPINFO_ID = #{CORPINFO_ID}
</if>
</select>
</mapper>