wg-gateway-manage/src/main/resources/mybatis/mapper/system/system-mapper.xml
2022-05-06 15:00:34 +08:00

464 lines
15 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="ink.wgink.gatewaymanage.dao.system.ISystemDao">
<resultMap id="systemDTO" type="ink.wgink.gatewaymanage.pojo.dtos.system.SystemDTO">
<result column="system_id" property="systemId"/>
<result column="name" property="name"/>
<result column="summary" property="summary"/>
<result column="logo" property="logo"/>
<result column="gateway_context" property="gatewayContext"/>
<result column="request_schema" property="requestSchema"/>
<result column="ip_address" property="ipAddress"/>
<result column="system_context" property="systemContext"/>
<result column="audit_status" property="auditStatus"/>
<result column="audit_time" property="auditTime"/>
<result column="auditor" property="auditor"/>
<result column="audit_reason" property="auditReason"/>
<result column="gmt_create" property="gmtCreate"/>
</resultMap>
<resultMap id="systemBO" type="ink.wgink.gatewaymanage.pojo.bos.system.SystemBO">
<result column="system_id" property="systemId"/>
<result column="name" property="name"/>
<result column="summary" property="summary"/>
<result column="logo" property="logo"/>
<result column="gateway_context" property="gatewayContext"/>
<result column="request_schema" property="requestSchema"/>
<result column="ip_address" property="ipAddress"/>
<result column="system_context" property="systemContext"/>
<result column="audit_status" property="auditStatus"/>
<result column="audit_time" property="auditTime"/>
<result column="auditor" property="auditor"/>
<result column="audit_reason" property="auditReason"/>
<result column="gmt_create" property="gmtCreate"/>
<result column="creator" property="creator"/>
<result column="gmt_modified" property="gmtModified"/>
<result column="modifier" property="modifier"/>
<result column="is_delete" property="isDelete"/>
</resultMap>
<resultMap id="systemPO" type="ink.wgink.gatewaymanage.pojo.pos.system.SystemPO">
<result column="system_id" property="systemId"/>
<result column="name" property="name"/>
<result column="summary" property="summary"/>
<result column="logo" property="logo"/>
<result column="gateway_context" property="gatewayContext"/>
<result column="request_schema" property="requestSchema"/>
<result column="ip_address" property="ipAddress"/>
<result column="system_context" property="systemContext"/>
<result column="audit_status" property="auditStatus"/>
<result column="audit_time" property="auditTime"/>
<result column="auditor" property="auditor"/>
<result column="audit_reason" property="auditReason"/>
<result column="gmt_create" property="gmtCreate"/>
<result column="creator" property="creator"/>
<result column="gmt_modified" property="gmtModified"/>
<result column="modifier" property="modifier"/>
<result column="is_delete" property="isDelete"/>
</resultMap>
<resultMap id="examineDTO" type="ink.wgink.gatewaymanage.pojo.dtos.examine.ExamineDTO">
<result column="audit_status" property="auditStatus"/>
<result column="audit_time" property="auditTime"/>
<result column="auditor" property="auditor"/>
<result column="audit_reason" property="auditReason"/>
</resultMap>
<insert id="createTable">
CREATE TABLE IF NOT EXISTS `api_system` (
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`system_id` char(36) NOT NULL,
`name` varchar(255) NOT NULL COMMENT '名称',
`summary` varchar(500) DEFAULT NULL COMMENT '描述',
`logo` varchar(255) DEFAULT NULL COMMENT 'logo',
`gateway_context` varchar(255) NOT NULL COMMENT '网关上下文',
`request_schema` varchar(255) NOT NULL DEFAULT 'http' COMMENT '请求方式',
`ip_address` varchar(255) NOT NULL COMMENT '系统地址',
`system_context` varchar(255) NOT NULL COMMENT '系统上下文',
`audit_status` varchar(20) DEFAULT 'none' COMMENT '审核状态',
`audit_time` varchar(20) DEFAULT NULL COMMENT '审核时间',
`auditor` char(36) DEFAULT NULL COMMENT '审核人',
`audit_reason` text COMMENT '审核原因',
`gmt_create` datetime NOT NULL COMMENT '创建时间',
`creator` char(36) NOT NULL COMMENT '创建人',
`gmt_modified` datetime NOT NULL COMMENT '修改时间',
`modifier` char(36) NOT NULL COMMENT '修改人',
`is_delete` int(1) NOT NULL DEFAULT '0' COMMENT '是否删除',
PRIMARY KEY (`id`),
UNIQUE KEY `system_id` (`system_id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COMMENT='接口系统';
</insert>
<!-- 新增接口系统 -->
<insert id="save" parameterType="map">
INSERT INTO api_system(
system_id,
name,
summary,
logo,
gateway_context,
request_schema,
ip_address,
system_context,
audit_status,
audit_time,
auditor,
audit_reason,
gmt_create,
creator,
gmt_modified,
modifier,
is_delete
) VALUES(
#{systemId},
#{name},
#{summary},
#{logo},
#{gatewayContext},
#{requestSchema},
#{ipAddress},
#{systemContext},
#{auditStatus},
#{auditTime},
#{auditor},
#{auditReason},
#{gmtCreate},
#{creator},
#{gmtModified},
#{modifier},
#{isDelete}
)
</insert>
<!-- 删除接口系统 -->
<update id="remove" parameterType="map">
UPDATE
api_system
SET
gmt_modified = #{gmtModified},
modifier = #{modifier},
is_delete = 1
WHERE
system_id IN
<foreach collection="systemIds" index="index" open="(" separator="," close=")">
#{systemIds[${index}]}
</foreach>
</update>
<!-- 删除接口系统(物理) -->
<update id="delete" parameterType="map">
DELETE FROM
api_system
WHERE
system_id IN
<foreach collection="systemIds" index="index" open="(" separator="," close=")">
#{systemIds[${index}]}
</foreach>
</update>
<!-- 修改接口系统 -->
<update id="update" parameterType="map">
UPDATE
api_system
SET
<if test="name != null and name != ''">
name = #{name},
</if>
<if test="summary != null and summary != ''">
summary = #{summary},
</if>
<if test="logo != null and logo != ''">
logo = #{logo},
</if>
<if test="gatewayContext != null and gatewayContext != ''">
gateway_context = #{gatewayContext},
</if>
<if test="requestSchema != null and requestSchema != ''">
request_schema = #{requestSchema},
</if>
<if test="ipAddress != null and ipAddress != ''">
ip_address = #{ipAddress},
</if>
<if test="systemContext != null and systemContext != ''">
system_context = #{systemContext},
</if>
gmt_modified = #{gmtModified},
modifier = #{modifier},
system_id = system_id
WHERE
system_id = #{systemId}
</update>
<!-- 修改接口系统审核状态 -->
<update id="updateExamine" parameterType="map">
UPDATE
api_system
SET
audit_status = #{auditStatus},
audit_time = #{auditTime},
auditor = #{auditor},
audit_reason = #{auditReason}
WHERE
system_id = #{systemId}
</update>
<!-- 接口系统详情 -->
<select id="get" parameterType="map" resultMap="systemDTO">
SELECT
t1.name,
t1.summary,
t1.logo,
t1.gateway_context,
t1.request_schema,
t1.ip_address,
t1.system_context,
t1.system_id
FROM
api_system t1
WHERE
t1.is_delete = 0
<if test="systemId != null and systemId != ''">
AND
t1.system_id = #{systemId}
</if>
</select>
<!-- 接口系统详情 -->
<select id="getBO" parameterType="map" resultMap="systemBO">
SELECT
t1.system_id,
t1.name,
t1.summary,
t1.logo,
t1.gateway_context,
t1.request_schema,
t1.ip_address,
t1.system_context,
t1.audit_status,
t1.audit_time,
t1.auditor,
t1.audit_reason,
t1.gmt_create,
t1.creator,
t1.gmt_modified,
t1.modifier,
t1.is_delete
FROM
api_system t1
WHERE
t1.is_delete = 0
<if test="systemId != null and systemId != ''">
AND
t1.system_id = #{systemId}
</if>
</select>
<!-- 接口系统详情 -->
<select id="getPO" parameterType="map" resultMap="systemPO">
SELECT
t1.system_id,
t1.name,
t1.summary,
t1.logo,
t1.gateway_context,
t1.request_schema,
t1.ip_address,
t1.system_context,
t1.audit_status,
t1.audit_time,
t1.auditor,
t1.audit_reason,
t1.gmt_create,
t1.creator,
t1.gmt_modified,
t1.modifier,
t1.is_delete
FROM
api_system t1
WHERE
t1.is_delete = 0
<if test="systemId != null and systemId != ''">
AND
t1.system_id = #{systemId}
</if>
</select>
<!-- 接口系统列表 -->
<select id="list" parameterType="map" resultMap="systemDTO">
SELECT
t1.system_id,
t1.name,
t1.summary,
t1.logo,
t1.gateway_context,
t1.request_schema,
t1.ip_address,
t1.system_context,
t1.audit_status,
t1.audit_time,
t1.auditor,
t1.audit_reason,
t1.gmt_create
FROM
api_system t1
WHERE
t1.is_delete = 0
<if test="keywords != null and keywords != ''">
AND (
t1.name LIKE CONCAT('%', #{keywords}, '%')
OR
t1.summary LIKE CONCAT('%', #{keywords}, '%')
)
</if>
<if test="startTime != null and startTime != ''">
AND
LEFT(t1.gmt_create, 10) <![CDATA[ >= ]]> #{startTime}
</if>
<if test="endTime != null and endTime != ''">
AND
LEFT(t1.gmt_create, 10) <![CDATA[ <= ]]> #{endTime}
</if>
<if test="auditStartTime != null and auditStartTime != ''">
AND
LEFT(t1.audit_time, 10) <![CDATA[ >= ]]> #{auditStartTime}
</if>
<if test="auditEndTime != null and auditEndTime != ''">
AND
LEFT(t1.audit_time, 10) <![CDATA[ <= ]]> #{auditEndTime}
</if>
<if test="auditStatus != null and auditStatus">
AND
t1.audit_status = #{auditStatus}
</if>
<if test="systemIds != null and systemIds.size > 0">
AND
t1.system_id IN
<foreach collection="systemIds" index="index" open="(" separator="," close=")">
#{systemIds[${index}]}
</foreach>
</if>
<if test="creator != null and creator != ''">
AND
t1.creator = #{creator}
</if>
</select>
<!-- 接口系统列表 -->
<select id="listBO" parameterType="map" resultMap="systemBO">
SELECT
t1.system_id,
t1.name,
t1.summary,
t1.logo,
t1.gateway_context,
t1.request_schema,
t1.ip_address,
t1.system_context,
t1.audit_status,
t1.audit_time,
t1.auditor,
t1.audit_reason,
t1.gmt_create,
t1.creator,
t1.gmt_modified,
t1.modifier,
t1.is_delete
FROM
api_system t1
WHERE
t1.is_delete = 0
<if test="keywords != null and keywords != ''">
AND (
<!-- 这里添加其他条件 -->
t1.id LIKE CONCAT('%', #{keywords}, '%')
)
</if>
<if test="startTime != null and startTime != ''">
AND
LEFT(t1.gmt_create, 10) <![CDATA[ >= ]]> #{startTime}
</if>
<if test="endTime != null and endTime != ''">
AND
LEFT(t1.gmt_create, 10) <![CDATA[ <= ]]> #{endTime}
</if>
<if test="systemIds != null and systemIds.size > 0">
AND
t1.system_id IN
<foreach collection="systemIds" index="index" open="(" separator="," close=")">
#{systemIds[${index}]}
</foreach>
</if>
</select>
<!-- 接口系统列表 -->
<select id="listPO" parameterType="map" resultMap="systemPO">
SELECT
t1.system_id,
t1.name,
t1.summary,
t1.logo,
t1.gateway_context,
t1.request_schema,
t1.ip_address,
t1.system_context,
t1.audit_status,
t1.audit_time,
t1.auditor,
t1.audit_reason,
t1.gmt_create,
t1.creator,
t1.gmt_modified,
t1.modifier,
t1.is_delete
FROM
api_system t1
WHERE
t1.is_delete = 0
<if test="keywords != null and keywords != ''">
AND (
<!-- 这里添加其他条件 -->
t1.id LIKE CONCAT('%', #{keywords}, '%')
)
</if>
<if test="startTime != null and startTime != ''">
AND
LEFT(t1.gmt_create, 10) <![CDATA[ >= ]]> #{startTime}
</if>
<if test="endTime != null and endTime != ''">
AND
LEFT(t1.gmt_create, 10) <![CDATA[ <= ]]> #{endTime}
</if>
<if test="systemIds != null and systemIds.size > 0">
AND
t1.system_id IN
<foreach collection="systemIds" index="index" open="(" separator="," close=")">
#{systemIds[${index}]}
</foreach>
</if>
</select>
<!-- 接口系统统计 -->
<select id="count" parameterType="map" resultType="Integer">
SELECT
COUNT(*)
FROM
api_system t1
WHERE
t1.is_delete = 0
</select>
<!-- 获取审核结果 -->
<select id="getExamineResult" parameterType="map" resultMap="examineDTO">
SELECT
t1.audit_status,
t1.audit_time,
t1.auditor,
t1.audit_reason
FROM
api_system t1
WHERE
t1.system_id = #{systemId}
</select>
</mapper>