|
@@ -0,0 +1,122 @@
|
|
|
+<?xml version="1.0" encoding="UTF-8" ?>
|
|
|
+<!DOCTYPE mapper
|
|
|
+ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|
|
+ "http://www.mybatis.org/dtd/mybatis-3-mapper.dtd">
|
|
|
+
|
|
|
+<mapper namespace="org.hsweb.web.dao.template.TemplateMapper">
|
|
|
+ <resultMap id="TemplateResultMap" type="Template">
|
|
|
+ <id property="id" column="u_id" javaType="string" jdbcType="VARCHAR"/>
|
|
|
+ <result property="name" column="name" javaType="String" jdbcType="VARCHAR"/>
|
|
|
+ <result property="remark" column="remark" javaType="String" jdbcType="VARCHAR"/>
|
|
|
+ <result property="template" column="template" javaType="String" jdbcType="CLOB"/>
|
|
|
+ <result property="classifiedId" column="classified_id" javaType="String" jdbcType="VARCHAR"/>
|
|
|
+ <result property="type" column="type" javaType="String" jdbcType="VARCHAR"/>
|
|
|
+ <result property="script" column="script" javaType="String" jdbcType="CLOB"/>
|
|
|
+ <result property="css" column="css" javaType="String" jdbcType="CLOB"/>
|
|
|
+ <result property="cssLinks" column="css_links" javaType="java.util.List" jdbcType="CLOB"
|
|
|
+ typeHandler="org.hsweb.web.mybatis.handler.JsonArrayHandler"/>
|
|
|
+ <result property="scriptLinks" column="script_links" javaType="java.util.List" jdbcType="CLOB"
|
|
|
+ typeHandler="org.hsweb.web.mybatis.handler.JsonArrayHandler"/>
|
|
|
+ <result property="version" column="version" javaType="int" jdbcType="INTEGER"/>
|
|
|
+ <result property="revision" column="revision" javaType="int" jdbcType="INTEGER"/>
|
|
|
+ <result property="release" column="release" javaType="int" jdbcType="INTEGER"/>
|
|
|
+ <result property="using" column="using" javaType="boolean" jdbcType="INTEGER"/>
|
|
|
+ </resultMap>
|
|
|
+
|
|
|
+ <!--字段信息绑定-->
|
|
|
+ <sql id="fieldConfig">
|
|
|
+ <bind name="$fieldsInfo"
|
|
|
+ value="#{
|
|
|
+ 'u_id':#{'property':'id','jdbcType':'VARCHAR','javaType':'string'}
|
|
|
+ ,'name':#{'jdbcType':'VARCHAR','javaType':'string'}
|
|
|
+ ,'remark':#{'jdbcType':'VARCHAR','javaType':'string'}
|
|
|
+ ,'template':#{'jdbcType':'VARCHAR','javaType':'string'}
|
|
|
+ ,'classified_id':#{'property':'classifiedId','jdbcType':'VARCHAR','javaType':'string'}
|
|
|
+ ,'type':#{'jdbcType':'VARCHAR','javaType':'string'}
|
|
|
+ ,'script':#{'jdbcType':'VARCHAR','javaType':'string'}
|
|
|
+ ,'css':#{'jdbcType':'VARCHAR','javaType':'string'}
|
|
|
+ ,'css_links':#{'property':'cssLinks','jdbcType':'CLOB','javaType':'java.util.List'}
|
|
|
+ ,'script_links':#{'property':'scriptLinks','jdbcType':'CLOB','javaType':'java.util.List'}
|
|
|
+ ,'version':#{'jdbcType':'INTEGER','javaType':'int'}
|
|
|
+ ,'revision':#{'jdbcType':'INTEGER','javaType':'int'}
|
|
|
+ ,'release':#{'jdbcType':'INTEGER','javaType':'int'}
|
|
|
+ ,'using':#{'jdbcType':'INTEGER','javaType':'boolean'}
|
|
|
+ }"/>
|
|
|
+
|
|
|
+ <bind name="$fields" value="$fieldsInfo.keySet()"/>
|
|
|
+ </sql>
|
|
|
+
|
|
|
+ <!--表名-->
|
|
|
+ <sql id="tableName">
|
|
|
+ <bind name="$tableName" value="'s_template'"/>
|
|
|
+ </sql>
|
|
|
+
|
|
|
+ <insert id="insert" parameterType="org.hsweb.web.bean.common.InsertParam" useGeneratedKeys="true" keyProperty="data.id" keyColumn="U_ID">
|
|
|
+ <include refid="fieldConfig"/>
|
|
|
+ <include refid="tableName"/>
|
|
|
+ <include refid="BasicMapper.buildInsertSql"/>
|
|
|
+ </insert>
|
|
|
+
|
|
|
+ <delete id="delete" parameterType="org.hsweb.web.bean.common.DeleteParam">
|
|
|
+ delete from s_template where u_id=#{term.primaryKey}
|
|
|
+ </delete>
|
|
|
+
|
|
|
+ <update id="update" parameterType="org.hsweb.web.bean.common.UpdateParam">
|
|
|
+ <include refid="fieldConfig"/>
|
|
|
+ <include refid="tableName"/>
|
|
|
+ <include refid="BasicMapper.buildUpdateSql"/>
|
|
|
+ </update>
|
|
|
+
|
|
|
+ <select id="selectByPk" parameterType="string" resultMap="TemplateResultMap">
|
|
|
+ select * from s_template WHERE u_id=#{id}
|
|
|
+ </select>
|
|
|
+
|
|
|
+ <select id="selectUsing" parameterType="string" resultMap="TemplateResultMap">
|
|
|
+ select * from s_template WHERE using=1 and name=#{name}
|
|
|
+ </select>
|
|
|
+
|
|
|
+ <select id="selectLatestList" parameterType="org.hsweb.web.bean.common.QueryParam" resultMap="TemplateResultMap">
|
|
|
+ <include refid="fieldConfig"/>
|
|
|
+ <!--定义字段配置-->
|
|
|
+ <bind name="$tableName" value="'t2'"/>
|
|
|
+ <!--定义表名-->
|
|
|
+ select
|
|
|
+ <!--动态生成要查询的字段-->
|
|
|
+ <include refid="BasicMapper.buildSelectField"/>
|
|
|
+ from (
|
|
|
+ select s_template.name,max(s_template.version) as version from s_template s_template
|
|
|
+ <include refid="tableName"/>
|
|
|
+ <where>
|
|
|
+ <!--动态查询条件-->
|
|
|
+ <include refid="BasicMapper.buildWhere"/>
|
|
|
+ </where>
|
|
|
+ group by name) t1
|
|
|
+ left join s_form t2 on t1.name=t2.name and t1.version =t2.version
|
|
|
+ <bind name="$tableName" value="'t2'"/>
|
|
|
+ <include refid="BasicMapper.buildSortField"/>
|
|
|
+ </select>
|
|
|
+
|
|
|
+ <select id="countLatestList" parameterType="org.hsweb.web.bean.common.QueryParam" resultType="int">
|
|
|
+ <include refid="fieldConfig"/>
|
|
|
+ <include refid="tableName"/>
|
|
|
+ select count(0) as total from (
|
|
|
+ select s_template.name,max(s_form.version) as version from s_template s_template
|
|
|
+ <where>
|
|
|
+ <include refid="BasicMapper.buildWhere"/>
|
|
|
+ </where>
|
|
|
+ group by name) t1
|
|
|
+ left join s_template t2 on t1.name=t2.name and t1.version =t2.version
|
|
|
+ </select>
|
|
|
+
|
|
|
+ <select id="select" parameterType="org.hsweb.web.bean.common.QueryParam" resultMap="TemplateResultMap">
|
|
|
+ <include refid="fieldConfig"/>
|
|
|
+ <include refid="tableName"/>
|
|
|
+ <include refid="BasicMapper.buildSelectSql"/>
|
|
|
+ </select>
|
|
|
+
|
|
|
+ <select id="total" parameterType="org.hsweb.web.bean.common.QueryParam" resultType="int">
|
|
|
+ <include refid="fieldConfig"/>
|
|
|
+ <include refid="tableName"/>
|
|
|
+ <include refid="BasicMapper.buildTotalSql"/>
|
|
|
+ </select>
|
|
|
+</mapper>
|