integrated_traffic/src/main/resources/mybatis/datasource/education/TrainingInfoMapper.xml

187 lines
4.4 KiB
XML
Raw Normal View History

2024-01-05 08:51:44 +08:00
<?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.education.TrainingInfoMapper">
<!--表名 -->
<sql id="tableName">
BUS_TRAININGINFO
</sql>
<!--数据字典表名 -->
<sql id="dicTableName">
SYS_DICTIONARIES
</sql>
<!-- 字段 -->
<sql id="Field">
f.TRAININGTHEME,
f.TRAININGTYPE,
f.TRAININGTIME,
f.PARTICIPANT,
f.INSTRUCTORS,
f.TRAININGPLAN_ID,
f.CORPINFO_ID,
f.FILEPATH,
f.CREATOR,
f.CREATTIME,
f.OPERATOR,
f.OPERATTIME,
f.ISDELETE,
f.TRAININGDESCR,
f.TRAININGINFO_ID
</sql>
<!-- 字段用于新增 -->
<sql id="Field2">
TRAININGTHEME,
TRAININGTYPE,
TRAININGTIME,
PARTICIPANT,
INSTRUCTORS,
TRAININGPLAN_ID,
CORPINFO_ID,
FILEPATH,
CREATOR,
CREATTIME,
OPERATOR,
OPERATTIME,
ISDELETE,
TRAININGDESCR,
TRAININGINFO_ID
</sql>
<!-- 字段值 -->
<sql id="FieldValue">
#{TRAININGTHEME},
#{TRAININGTYPE},
#{TRAININGTIME},
#{PARTICIPANT},
#{INSTRUCTORS},
#{TRAININGPLAN_ID},
#{CORPINFO_ID},
#{FILEPATH},
#{CREATOR},
#{CREATTIME},
#{OPERATOR},
#{OPERATTIME},
#{ISDELETE},
#{TRAININGDESCR},
#{TRAININGINFO_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',
OPERATOR = #{OPERATOR},
OPERATTIME = #{OPERATTIME}
where
TRAININGINFO_ID = #{TRAININGINFO_ID}
</delete>
<!-- 修改 -->
<update id="edit" parameterType="pd">
update
<include refid="tableName"></include>
set
TRAININGTHEME = #{TRAININGTHEME},
TRAININGTYPE = #{TRAININGTYPE},
TRAININGTIME = #{TRAININGTIME},
PARTICIPANT = #{PARTICIPANT},
INSTRUCTORS = #{INSTRUCTORS},
TRAININGPLAN_ID = #{TRAININGPLAN_ID},
<if test="FILEPATH != null and FILEPATH != ''"><!-- 关键词检索 -->
FILEPATH = #{FILEPATH},
</if>
TRAININGDESCR = #{TRAININGDESCR},
OPERATOR = #{OPERATOR},
OPERATTIME = #{OPERATTIME},
TRAININGINFO_ID = TRAININGINFO_ID
where
TRAININGINFO_ID = #{TRAININGINFO_ID}
</update>
<!-- 通过ID获取数据 -->
<select id="findById" parameterType="pd" resultType="pd">
select
<include refid="Field"></include>
from
<include refid="tableName"></include> f
where
f.TRAININGINFO_ID = #{TRAININGINFO_ID}
</select>
<!-- 列表 -->
<select id="datalistPage" parameterType="page" resultType="pd">
select
<include refid="Field"></include>,
p.PLANNAME,
g.NAME TRAININGTYPENAME
from
<include refid="tableName"></include> f
left join BUS_TRAININGPLAN p on p.TRAININGPLAN_ID = f.TRAININGPLAN_ID and p.ISDELETE = '0'
left join SYS_DICTIONARIES g on g.BIANMA = f.TRAININGTYPE
where f.ISDELETE = '0'
<if test="pd.CORPINFO_ID != null and pd.CORPINFO_ID != ''"><!-- 关键词检索 -->
and f.CORPINFO_ID = #{pd.CORPINFO_ID}
</if>
<if test="pd.TRAININGTYPE != null and pd.TRAININGTYPE != ''"><!-- 关键词检索 -->
and f.TRAININGTYPE = #{pd.TRAININGTYPE}
</if>
<if test="pd.KEYWORDS != null and pd.KEYWORDS != ''"><!-- 关键词检索 -->
and
(
f.TRAININGTHEME LIKE CONCAT(CONCAT('%', #{pd.KEYWORDS}),'%')
or
f.PARTICIPANT LIKE CONCAT(CONCAT('%', #{pd.KEYWORDS}),'%')
or
f.INSTRUCTORS LIKE CONCAT(CONCAT('%', #{pd.KEYWORDS}),'%')
or
p.PLANNAME LIKE CONCAT(CONCAT('%', #{pd.KEYWORDS}),'%')
)
</if>
<if test="pd.STARTTIME != null and pd.STARTTIME != ''"><!-- 关键词检索 -->
and f.TRAININGTIME &gt;= #{pd.STARTTIME}
</if>
<if test="pd.ENDTIME != null and pd.ENDTIME != ''">
and f.TRAININGTIME &lt;= #{pd.ENDTIME}
</if>
order by f.OPERATTIME desc
</select>
<!-- 列表(全部) -->
<select id="listAll" parameterType="pd" resultType="pd">
select
<include refid="Field"></include>
from
<include refid="tableName"></include> f
</select>
<!-- 批量删除 -->
<delete id="deleteAll" parameterType="String">
update
<include refid="tableName"></include>
set
ISDELETE = '1'
where
TRAININGINFO_ID in
<foreach item="item" index="index" collection="ArrayDATA_IDS" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
</mapper>