<?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.wgcloud.mapper.DbTableMapper">
|
<resultMap id="resultMap" type="com.wgcloud.entity.DbTable">
|
<id column="ID" property="id" jdbcType="CHAR" />
|
<result column="TABLE_NAME" property="tableName" jdbcType="CHAR" />
|
<result column="WHERE_VAL" property="whereVal" jdbcType="CHAR" />
|
<result column="REMARK" property="remark" jdbcType="CHAR" />
|
<result column="TABLE_COUNT" property="tableCount" jdbcType="BIGINT" />
|
<result column="DBINFO_ID" property="dbInfoId" jdbcType="CHAR" />
|
<result column="ACTIVE" property="active" jdbcType="CHAR" />
|
<result column="STATE" property="state" jdbcType="CHAR" />
|
<result column="RESULT_EXP" property="resultExp" jdbcType="CHAR" />
|
<result column="CREATE_TIME" property="createTime" jdbcType="TIMESTAMP" />
|
</resultMap>
|
|
<sql id="tableColumnList">
|
ID,TABLE_NAME, WHERE_VAL,REMARK,CREATE_TIME,TABLE_COUNT,DBINFO_ID,ACTIVE,RESULT_EXP,STATE
|
</sql>
|
|
<sql id="queryByParams">
|
<if test="remark != null">
|
<choose>
|
<when test="_databaseId == 'oracle'">
|
<![CDATA[ AND REMARK LIKE CONCAT(CONCAT('%',#{remark}),'%') ]]>
|
</when>
|
<otherwise>
|
<![CDATA[ AND REMARK LIKE CONCAT('%',#{remark},'%') ]]>
|
</otherwise>
|
</choose>
|
</if>
|
<if test="dbInfoId != null">
|
<![CDATA[ AND DBINFO_ID = #{dbInfoId} ]]>
|
</if>
|
<if test="tableName != null">
|
<![CDATA[ AND TABLE_NAME = #{tableName} ]]>
|
</if>
|
<if test="startTime != null and endTime !=null and startTime !='' and endTime != '' ">
|
<if test="_databaseId == 'mysql'">
|
<![CDATA[ AND CREATE_TIME >= #{startTime} and CREATE_TIME <=#{endTime}]]>
|
</if>
|
<if test="_databaseId == 'postgresql'">
|
<![CDATA[ AND CREATE_TIME >= cast(#{startTime} as timestamp) and CREATE_TIME <= cast(#{endTime} as timestamp)]]>
|
</if>
|
<if test="_databaseId == 'oracle'">
|
<![CDATA[ AND CREATE_TIME >= to_date(#{startTime},'yyyy-MM-dd hh24:mi:ss') and CREATE_TIME <= to_date(#{endTime},'yyyy-MM-dd hh24:mi:ss')]]>
|
</if>
|
</if>
|
<if test="active != null">
|
<![CDATA[ AND ACTIVE = #{active} ]]>
|
</if>
|
<if test="account != null">
|
<![CDATA[ AND DBINFO_ID IN (SELECT c.ID FROM DB_INFO c WHERE c.ACCOUNT= #{account}) ]]>
|
</if>
|
<if test="dbInfoIds != null">
|
<![CDATA[ AND DBINFO_ID IN ]]>
|
<foreach item="item" index="index" collection="dbInfoIds" open="(" separator="," close=")">
|
#{item}
|
</foreach>
|
</if>
|
</sql>
|
|
<select id="selectById" resultMap="resultMap" parameterType="java.lang.String">
|
SELECT
|
<include refid="tableColumnList" />
|
FROM DB_TABLE
|
WHERE ID=#{id}
|
</select>
|
|
|
<delete id="deleteByPrimaryKey" parameterType="java.lang.String">
|
DELETE FROM DB_TABLE
|
WHERE ID = #{id}
|
</delete>
|
|
<delete id="deleteByDbInfoId" parameterType="java.lang.String">
|
DELETE FROM DB_TABLE
|
WHERE DBINFO_ID = #{dbInfoId}
|
</delete>
|
|
|
<delete id="deleteById" parameterType="java.lang.String">
|
DELETE FROM
|
DB_TABLE
|
WHERE ID IN
|
<foreach item="item" index="index" collection="array" open="(" separator="," close=")">
|
#{item}
|
</foreach>
|
</delete>
|
|
<insert id="save" parameterType="com.wgcloud.entity.DbTable">
|
INSERT INTO DB_TABLE
|
<trim prefix="(" suffix=")" suffixOverrides="," >
|
<if test="id != null" >ID,</if>
|
<if test="tableName != null" >TABLE_NAME,</if>
|
<if test="whereVal != null">WHERE_VAL,</if>
|
<if test="remark != null">REMARK,</if>
|
<if test="dbInfoId != null">DBINFO_ID,</if>
|
<if test="active != null">ACTIVE,</if>
|
<if test="resultExp != null">RESULT_EXP,</if>
|
<if test="state != null">STATE,</if>
|
<if test="createTime != null" >CREATE_TIME</if>
|
</trim>
|
<trim prefix="values (" suffix=")" suffixOverrides="," >
|
<if test="id != null" >#{id},</if>
|
<if test="tableName != null" >#{tableName},</if>
|
<if test="whereVal != null" >#{whereVal},</if>
|
<if test="remark != null" >#{remark},</if>
|
<if test="dbInfoId != null" >#{dbInfoId},</if>
|
<if test="active != null" >#{active},</if>
|
<if test="resultExp != null" >#{resultExp},</if>
|
<if test="state != null" >#{state},</if>
|
<if test="createTime != null" >#{createTime}</if>
|
</trim>
|
</insert>
|
|
|
<update id="updateById" parameterType="com.wgcloud.entity.DbTable">
|
UPDATE DB_TABLE
|
<set>
|
<if test="tableName != null">
|
TABLE_NAME = #{tableName},
|
</if>
|
<if test="whereVal != null">
|
WHERE_VAL = #{whereVal},
|
</if>
|
<if test="remark != null">
|
REMARK = #{remark},
|
</if>
|
<if test="tableCount != null">
|
TABLE_COUNT = #{tableCount},
|
</if>
|
<if test="dbInfoId != null">
|
DBINFO_ID = #{dbInfoId},
|
</if>
|
<if test="active != null">
|
ACTIVE = #{active},
|
</if>
|
<if test="resultExp != null">
|
RESULT_EXP = #{resultExp},
|
</if>
|
<if test="state != null">
|
STATE = #{state},
|
</if>
|
<if test="createTime != null">
|
CREATE_TIME = #{createTime}
|
</if>
|
</set>
|
WHERE ID = #{id}
|
</update>
|
|
<update id="updateList" parameterType="java.util.List" >
|
<if test="_databaseId == 'oracle'">
|
begin
|
</if>
|
<foreach collection="list" item="item" index="index">
|
UPDATE DB_TABLE
|
<set>
|
<if test="item.tableName != null">
|
TABLE_NAME = #{item.tableName},
|
</if>
|
<if test="item.whereVal != null">
|
WHERE_VAL= #{item.whereVal},
|
</if>
|
<if test="item.remark != null" >
|
REMARK= #{item.remark},
|
</if>
|
<if test="item.tableCount != null" >
|
TABLE_COUNT= #{item.tableCount},
|
</if>
|
<if test="item.dbInfoId != null" >
|
DBINFO_ID= #{item.dbInfoId},
|
</if>
|
<if test="item.active != null" >
|
ACTIVE= #{item.active},
|
</if>
|
<if test="item.resultExp != null" >
|
RESULT_EXP= #{item.resultExp},
|
</if>
|
<if test="item.state != null" >
|
STATE= #{item.state},
|
</if>
|
<if test="item.createTime != null" >
|
CREATE_TIME= #{item.createTime}
|
</if>
|
</set>
|
WHERE ID = #{item.id};
|
</foreach>
|
<if test="_databaseId == 'oracle'">
|
end;
|
</if>
|
</update>
|
|
|
<select id="countByParams" parameterType="map" resultType="java.lang.Integer">
|
SELECT COUNT(*) FROM DB_TABLE t
|
</select>
|
|
|
<select id="sumByParams" parameterType="map" resultType="java.lang.Long">
|
SELECT SUM(t.TABLE_COUNT) FROM DB_TABLE t
|
</select>
|
|
|
<select id="selectAllByParams" parameterType="map" resultMap="resultMap">
|
SELECT
|
<include refid="tableColumnList" />
|
FROM DB_TABLE t
|
<where>
|
<include refid="queryByParams" />
|
</where>
|
ORDER BY ID DESC
|
</select>
|
|
<select id="selectByParams" parameterType="map" resultMap="resultMap">
|
SELECT
|
<include refid="tableColumnList" />
|
FROM DB_TABLE
|
<where>
|
<include refid="queryByParams" />
|
</where>
|
<choose>
|
<when test="orderBy !=null and orderBy != ''">
|
<![CDATA[ ORDER BY ${orderBy} ${orderType}]]>
|
</when>
|
<otherwise>
|
ORDER BY ID DESC
|
</otherwise>
|
</choose>
|
</select>
|
|
|
</mapper>
|