integrated_traffic/src/main/resources/mybatis/datasource/hiddenDangerCheckStandard/CustomMapper.xml

319 lines
8.4 KiB
XML
Raw Normal View History

2024-01-30 16:00:22 +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
2024-01-30 16:50:58 +08:00
namespace="com.zcloud.mapper.datasource.hiddenDangerCheckStandard.CustomMapper">
2024-01-30 16:00:22 +08:00
<!--表名 -->
<sql id="tableName">
bus_hiddendangercheckstandard_custom
</sql>
<!--数据字典表名 -->
<sql id="dicTableName">
SYS_DICTIONARIES
</sql>
<!-- 字段 -->
<sql id="Field">
f.CUSTOM_ID,
2024-01-31 11:59:44 +08:00
f.NAME,
f.PERIOD,
f.TYPE,
2024-01-30 16:00:22 +08:00
f.CORPINFO_ID,
2024-01-31 11:59:44 +08:00
f.CREATOR,
f.CREATTIME,
f.OPERATOR,
f.OPERATTIME,
2024-01-30 16:00:22 +08:00
f.ISDELETE,
2024-01-31 11:59:44 +08:00
f.DEPARTMENT_ID,
f.POST_ID,
f.USER_ID,
f.START_DATE,
f.END_DATE,
f.SCREENTYPE,
f.BAO_BAO_DEPARTMENT_ID,
f.BAO_BAO_USER_ID,
f.BAO_BAO_TYPE,
f.TASK_TYPE
2024-01-30 16:00:22 +08:00
</sql>
<!-- 字段用于新增 -->
<sql id="Field2">
CUSTOM_ID,
2024-01-31 11:59:44 +08:00
NAME,
PERIOD,
TYPE,
2024-01-30 16:00:22 +08:00
CORPINFO_ID,
2024-01-31 11:59:44 +08:00
CREATOR,
CREATTIME,
OPERATOR,
OPERATTIME,
2024-01-30 16:00:22 +08:00
ISDELETE,
2024-01-31 11:59:44 +08:00
DEPARTMENT_ID,
POST_ID,
USER_ID,
START_DATE,
END_DATE,
SCREENTYPE,
BAO_BAO_DEPARTMENT_ID,
BAO_BAO_USER_ID,
BAO_BAO_TYPE,
TASK_TYPE
2024-01-30 16:00:22 +08:00
</sql>
<!-- 字段值 -->
<sql id="FieldValue">
#{CUSTOM_ID},
2024-01-31 11:59:44 +08:00
#{NAME},
#{PERIOD},
#{TYPE},
2024-01-30 16:00:22 +08:00
#{CORPINFO_ID},
2024-01-31 11:59:44 +08:00
#{CREATOR},
#{CREATTIME},
#{OPERATOR},
#{OPERATTIME},
2024-01-30 16:00:22 +08:00
#{ISDELETE},
2024-01-31 11:59:44 +08:00
#{DEPARTMENT_ID},
#{POST_ID},
#{USER_ID},
#{START_DATE},
#{END_DATE},
#{SCREENTYPE},
#{BAO_BAO_DEPARTMENT_ID},
#{BAO_BAO_USER_ID},
#{BAO_BAO_TYPE},
#{TASK_TYPE}
2024-01-30 16:00:22 +08:00
</sql>
<!-- 新增 -->
<insert id="save" parameterType="pd">
insert into
<include refid="tableName"></include>
(
<include refid="Field2"></include>
) values (
<include refid="FieldValue"></include>
)
</insert>
<!-- 列表(全部) -->
<select id="listAll" parameterType="pd" resultType="pd">
select
2024-01-31 11:59:44 +08:00
<include refid="Field"></include>,
p.NAME PERIODNAME,
t.NAME TYPENAME,
d.NAME as DEPARTMENT_NAME,
sp.NAME as POST_NAME,
u.NAME USER_NAME,
bb.NAME as TASK_TYPE_NAME,
s.NAME as SCREENTYPENAME,
(select count(1) from bus_hiddendangercheckstandard_custom_item ch where
ch.CUSTOM_ID = f.CUSTOM_ID and ch.ISDELETE = '0') as count ,
(SELECT count(1) FROM bus_hiddendangercheckstandard_checkrecord ch WHERE ch.CUSTOM_ID =
f.CUSTOM_ID AND ch.FINISHED = '1' AND ch.ISDELETE = 0 ) as cdcount
2024-01-30 16:00:22 +08:00
from
<include refid="tableName"></include> f
2024-01-31 11:59:44 +08:00
left join sys_dictionaries p on f.PERIOD = p.BIANMA
left join sys_dictionaries t on f.TYPE = t.BIANMA
left join sys_dictionaries s on f.SCREENTYPE = s.BIANMA
left join sys_dictionaries bb on f.TASK_TYPE = bb.DICTIONARIES_ID
left join OA_DEPARTMENT d on d.DEPARTMENT_ID=f.DEPARTMENT_ID
left join SYS_POST sp on sp.POST_ID = f.POST_ID
left join sys_user u on u.USER_ID = f.USER_ID
where f.CORPINFO_ID = #{pd.CORPINFO_ID}
and f.ISDELETE != '2'
and f.ISDELETE !='-1'
<if test="pd.KEYWORDS != null and pd.KEYWORDS != ''"><!-- 关键词检索 -->
and
(
f.NAME LIKE CONCAT(CONCAT('%', #{pd.KEYWORDS}),'%')
)
</if>
<if test="pd.POST_ID != null and pd.POST_ID != ''"><!-- 关键词检索 -->
and
(
f.POST_ID = #{pd.POST_ID}
)
</if>
<if test="pd.PERIOD != null and pd.PERIOD != ''"><!-- 关键词检索 -->
and f.PERIOD = #{pd.PERIOD}
</if>
<if test="pd.USERNAME != null and pd.USERNAME != ''"><!-- 关键词检索 -->
and u.NAME LIKE CONCAT(CONCAT('%', #{pd.USERNAME}),'%')
</if>
<if test="pd.TYPE != null and pd.TYPE != ''"><!-- 关键词检索 -->
and f.TYPE = #{pd.TYPE}
</if>
<if test="pd.LISTINGLEVEL != null and pd.LISTINGLEVEL != ''"><!-- 关键词检索 -->
<choose>
<when test='pd.LISTINGLEVEL == "1"'>
and d.LEVEL = ''
</when>
<otherwise>
and d.LEVEL = #{pd.LISTINGLEVEL}
</otherwise>
</choose>
</if>
<if test="pd.SCREENTYPE != null and pd.SCREENTYPE != ''"><!-- 关键词检索 -->
and f.SCREENTYPE = #{pd.SCREENTYPE}
</if>
order by f.ISDELETE,f.OPERATTIME desc
</select>
<!-- 列表(全部) -->
<select id="datalistPage" parameterType="page" resultType="pd">
select
<include refid="Field"></include>,
p.NAME PERIODNAME,
t.NAME TYPENAME,
d.NAME as DEPARTMENT_NAME,
sp.NAME as POST_NAME,
u.NAME USER_NAME,
bb.NAME as TASK_TYPE_NAME,
s.NAME as SCREENTYPENAME,
(select count(1) from bus_hiddendangercheckstandard_custom_item ch where
ch.CUSTOM_ID = f.CUSTOM_ID and ch.ISDELETE = '0') as count ,
(SELECT count(1) FROM bus_hiddendangercheckstandard_checkrecord ch WHERE ch.CUSTOM_ID =
f.CUSTOM_ID AND ch.FINISHED = '1' AND ch.ISDELETE = 0 ) as cdcount
from
<include refid="tableName"></include> f
left join sys_dictionaries p on f.PERIOD = p.BIANMA
left join sys_dictionaries t on f.TYPE = t.BIANMA
left join sys_dictionaries s on f.SCREENTYPE = s.BIANMA
left join sys_dictionaries bb on f.TASK_TYPE = bb.DICTIONARIES_ID
left join OA_DEPARTMENT d on d.DEPARTMENT_ID=f.DEPARTMENT_ID
left join SYS_POST sp on sp.POST_ID = f.POST_ID
left join sys_user u on u.USER_ID = f.USER_ID
where f.CORPINFO_ID = #{pd.CORPINFO_ID}
and f.ISDELETE != '2'
and f.ISDELETE !='-1'
2024-01-30 16:00:22 +08:00
<if test="pd.KEYWORDS != null and pd.KEYWORDS != ''"><!-- 关键词检索 -->
and
(
2024-01-31 11:59:44 +08:00
f.NAME LIKE CONCAT(CONCAT('%', #{pd.KEYWORDS}),'%')
2024-01-30 16:00:22 +08:00
)
</if>
2024-01-31 11:59:44 +08:00
<if test="pd.POST_ID != null and pd.POST_ID != ''"><!-- 关键词检索 -->
and
(
f.POST_ID = #{pd.POST_ID}
)
</if>
<if test="pd.PERIOD != null and pd.PERIOD != ''"><!-- 关键词检索 -->
and f.PERIOD = #{pd.PERIOD}
</if>
<if test="pd.USERNAME != null and pd.USERNAME != ''"><!-- 关键词检索 -->
and u.NAME LIKE CONCAT(CONCAT('%', #{pd.USERNAME}),'%')
</if>
<if test="pd.TYPE != null and pd.TYPE != ''"><!-- 关键词检索 -->
and f.TYPE = #{pd.TYPE}
</if>
<if test="pd.LISTINGLEVEL != null and pd.LISTINGLEVEL != ''"><!-- 关键词检索 -->
<choose>
<when test='pd.LISTINGLEVEL == "1"'>
and d.LEVEL = ''
</when>
<otherwise>
and d.LEVEL = #{pd.LISTINGLEVEL}
</otherwise>
</choose>
</if>
<if test="pd.SCREENTYPE != null and pd.SCREENTYPE != ''"><!-- 关键词检索 -->
and f.SCREENTYPE = #{pd.SCREENTYPE}
</if>
order by f.ISDELETE,f.OPERATTIME desc
</select>
<!-- 禁用 -->
<delete id="delete" parameterType="pd">
update
<include refid="tableName"></include>
set
ISDELETE = '1'
<if test="OPERATTIME != null or OPERATTIME != ''">
,OPERATTIME =#{OPERATTIME}
</if>
<if test="OPERATOR != null or OPERATOR != ''">
,OPERATOR =#{OPERATOR}
</if>
where
CUSTOM_ID = #{CUSTOM_ID}
</delete>
<!-- 删除 -->
<delete id="remove" parameterType="pd">
update
<include refid="tableName"></include>
set
ISDELETE = '2'
<if test="OPERATTIME != null or OPERATTIME != ''">
,OPERATTIME =#{OPERATTIME}
</if>
<if test="OPERATOR != null or OPERATOR != ''">
,OPERATOR =#{OPERATOR}
</if>
where
CUSTOM_ID = #{CUSTOM_ID}
</delete>
<!-- 删除 -->
<delete id="deleted" parameterType="pd">
update
<include refid="tableName"></include>
set
ISDELETE = '-1'
<if test="OPERATTIME != null or OPERATTIME != ''">
,OPERATTIME =#{OPERATTIME}
</if>
<if test="OPERATOR != null or OPERATOR != ''">
,OPERATOR =#{OPERATOR}
</if>
where
CUSTOM_ID = #{CUSTOM_ID}
</delete>
<!-- 启用 -->
<update id="enable" parameterType="pd">
update
<include refid="tableName"></include>
set
ISDELETE = '0'
<if test="OPERATTIME != null or OPERATTIME != ''">
,OPERATTIME =#{OPERATTIME}
</if>
<if test="OPERATOR != null or OPERATOR != ''">
,OPERATOR =#{OPERATOR}
</if>
where
CUSTOM_ID = #{CUSTOM_ID}
</update>
<!-- 通过ID获取数据 -->
<select id="findById" parameterType="pd" resultType="pd">
select
<include refid="Field"></include>,
p.NAME PERIODNAME,
t.NAME TYPENAME,
d.NAME as DEPARTMENT_NAME,
tt.NAME as TASK_TYPE_NAME,
sp.NAME
AS POST_NAME,
s.NAME AS SCREENTYPENAME,
u.NAME AS USER_NAME,
bb.NAME as BAO_BAO_USER_NAME,
bbd.NAME as BAO_BAO_DEPARTMENT_NAME
from
<include refid="tableName"></include>
f
left join sys_dictionaries p on f.PERIOD = p.BIANMA
left join sys_dictionaries t on f.TYPE = t.BIANMA
left join sys_dictionaries s on f.SCREENTYPE = s.BIANMA
left join sys_dictionaries tt on f.TASK_TYPE = tt.DICTIONARIES_ID
left join OA_DEPARTMENT d on d.DEPARTMENT_ID=f.DEPARTMENT_ID
left join SYS_POST sp on sp.POST_ID = f.POST_ID
LEFT JOIN SYS_USER u on u.USER_ID = f.USER_ID
LEFT JOIN SYS_USER bb on bb.USER_ID = f.BAO_BAO_USER_ID
left join OA_DEPARTMENT bbd on bbd.DEPARTMENT_ID=f.DEPARTMENT_ID
where
f.CUSTOM_ID = #{CUSTOM_ID}
2024-01-30 16:00:22 +08:00
</select>
</mapper>