RegBaseXmDao.xml 5.83 KB
<?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.thinkgem.jeesite.modules.reg.dao.base.RegBaseXmDao">
    
	<sql id="regBaseXmColumns">
		a.id AS "id",
		a.xmbh AS "xmbh",
		a.xmmc AS "xmmc",
		a.sqsj AS "sqsj",
		a.sm AS "sm",
		a.zddm AS "zddm",
		a.jsdwmc AS "jsdwmc",
		a.zjzl AS "zjzl",
		a.zjh AS "zjh",
		a.dwdz AS "dwdz",
		a.isaudit AS "isaudit",
		a.create_by AS "createBy.id",
		a.create_date AS "createDate",
		a.update_by AS "updateBy.id",
		a.update_date AS "updateDate",
		a.remarks AS "remarks",
		a.del_flag AS "delFlag"
	</sql>
	
	<sql id="regBaseXmJoins">
	</sql>
    
	<select id="get" resultType="RegBaseXm">
		SELECT 
			<include refid="regBaseXmColumns"/>
		FROM reg_base_xm a
		<include refid="regBaseXmJoins"/>
		WHERE a.id = #{id}
	</select>
	
	<select id="getXmbmStr" resultType="string">
		select MAX(xmbh) from reg_base_xm where del_flag = '0'
	</select>
	
	<select id="findList" resultType="RegBaseXm">
		SELECT 
			<include refid="regBaseXmColumns"/>
		FROM reg_base_xm a
		<include refid="regBaseXmJoins"/>
		<where>
			a.del_flag = #{DEL_FLAG_NORMAL}
			<if test="xmbh != null and xmbh != ''">
				AND a.xmbh LIKE
				<if test="dbName == 'oracle'">'%'||#{xmbh}||'%'</if>
				<if test="dbName == 'mssql'">'%'+#{xmbh}+'%'</if>
				<if test="dbName == 'mysql'">concat('%',#{xmbh},'%')</if>
			</if> 
			<if test="xmmc != null and xmmc != ''">
				AND a.xmmc LIKE 
					<if test="dbName == 'oracle'">'%'||#{xmmc}||'%'</if>
					<if test="dbName == 'mssql'">'%'+#{xmmc}+'%'</if>
					<if test="dbName == 'mysql'">concat('%',#{xmmc},'%')</if>
			</if>
			<if test="jsdwmc != null and jsdwmc != ''">
				AND a.jsdwmc LIKE 
					<if test="dbName == 'oracle'">'%'||#{jsdwmc}||'%'</if>
					<if test="dbName == 'mssql'">'%'+#{jsdwmc}+'%'</if>
					<if test="dbName == 'mysql'">concat('%',#{jsdwmc},'%')</if>
			</if>
			<if test="sm != null and sm != ''">
				AND a.sm LIKE 
					<if test="dbName == 'oracle'">'%'||#{sm}||'%'</if>
					<if test="dbName == 'mssql'">'%'+#{sm}+'%'</if>
					<if test="dbName == 'mysql'">concat('%',#{sm},'%')</if>
			</if>
			<if test="zjh != null and zjh != ''">
				AND a.zjh = #{zjh} 
			</if>
			<if test="zjzl != null and zjzl != ''">
				AND a.zjzl = #{zjzl} 
			</if>
			<if test="isaudit != null and isaudit != ''">
				AND a.isaudit = #{isaudit} 
			</if>
		</where>
		<choose>
			<when test="page !=null and page.orderBy != null and page.orderBy != ''">
				ORDER BY ${page.orderBy}
			</when>
			<otherwise>
				ORDER BY a.update_date DESC
			</otherwise>
		</choose>
	</select>
	
	<select id="findXmmcList" resultType="RegBaseXm">
		SELECT 
			<include refid="regBaseXmColumns"/>
		FROM reg_base_xm a
		<include refid="regBaseXmJoins"/>
		<where>
			a.del_flag = #{DEL_FLAG_NORMAL}
			<if test="xmbh != null and xmbh != ''">
				AND a.xmbh LIKE
				<if test="dbName == 'oracle'">'%'||#{xmbh}||'%'</if>
				<if test="dbName == 'mssql'">'%'+#{xmbh}+'%'</if>
				<if test="dbName == 'mysql'">concat('%',#{xmbh},'%')</if>
			</if> 
			<if test="xmmc != null and xmmc != ''">
				AND a.xmmc = #{xmmc}
			</if>
			<if test="jsdwmc != null and jsdwmc != ''">
				AND a.jsdwmc LIKE 
					<if test="dbName == 'oracle'">'%'||#{jsdwmc}||'%'</if>
					<if test="dbName == 'mssql'">'%'+#{jsdwmc}+'%'</if>
					<if test="dbName == 'mysql'">concat('%',#{jsdwmc},'%')</if>
			</if>
		</where>
		<choose>
			<when test="page !=null and page.orderBy != null and page.orderBy != ''">
				ORDER BY ${page.orderBy}
			</when>
			<otherwise>
				ORDER BY a.update_date DESC
			</otherwise>
		</choose>
	</select>
	
	<select id="findTdPage" resultType="RegBaseXm">
		SELECT 
			DISTINCT <include refid="regBaseXmColumns"/>
		FROM reg_base_xm a,reg_base_zrz b,reg_bus_rights c
		<include refid="regBaseXmJoins"/>
		<where>
			a.del_flag = #{DEL_FLAG_NORMAL}
			AND a.id = b.xmid AND c.bdcdyh like '%W%' AND c.STXQ is null 
			AND subString(c.bdcdyh,1,19) = b.zddm 
		</where>
		<choose>
			<when test="page !=null and page.orderBy != null and page.orderBy != ''">
				ORDER BY ${page.orderBy}
			</when>
			<otherwise>
				ORDER BY a.update_date DESC
			</otherwise>
		</choose>
	</select>
	
	<select id="findAllList" resultType="RegBaseXm">
		SELECT 
			<include refid="regBaseXmColumns"/>
		FROM reg_base_xm a
		<include refid="regBaseXmJoins"/>
		<where>
			a.del_flag = #{DEL_FLAG_NORMAL}
		</where>		
		<choose>
			<when test="page !=null and page.orderBy != null and page.orderBy != ''">
				ORDER BY ${page.orderBy}
			</when>
			<otherwise>
				ORDER BY a.update_date DESC
			</otherwise>
		</choose>
	</select>
	
	<insert id="insert">
		INSERT INTO reg_base_xm(
			id,
			xmbh,
			xmmc,
			sqsj,
			sm,
			zddm,
			jsdwmc,
			zjzl,
			zjh,
			dwdz,
			isaudit,
			create_by,
			create_date,
			update_by,
			update_date,
			del_flag
		) VALUES (
			#{id},
			#{xmbh},
			#{xmmc},
			#{sqsj},
			#{sm},
			#{zddm},
			#{jsdwmc},
			#{zjzl},
			#{zjh},
			#{dwdz},
			#{isaudit},
			#{createBy.id},
			#{createDate},
			#{updateBy.id},
			#{updateDate},
			#{delFlag}
		)
	</insert>
	
	<update id="update">
		UPDATE reg_base_xm SET 	
			xmbh = #{xmbh},
			xmmc = #{xmmc},
			sqsj = #{sqsj},
			sm = #{sm},
			zddm = #{zddm},
			jsdwmc = #{jsdwmc},
			zjzl = #{zjzl},
			zjh = #{zjh},
			dwdz = #{dwdz},
			isaudit = #{isaudit},
			del_flag = #{delFlag},
			update_by = #{updateBy.id},
			update_date = #{updateDate}
		WHERE id = #{id}
	</update>
	
	<update id="delete">
		UPDATE reg_base_xm SET 
			del_flag = #{DEL_FLAG_DELETE}
		WHERE id = #{id}
	</update>
	
	<update id="xmdelete">
		DELETE FROM reg_base_xm
		WHERE id = #{id}
	</update>
	
	<!-- 权籍接口用 -->
	<select id="findByXmbh" resultType="RegBaseXm">
		SELECT 
			<include refid="regBaseXmColumns"/>
		FROM reg_base_xm a
		<include refid="regBaseXmJoins"/>
		WHERE a.xmmc = #{xmmc}
		and a.del_flag ='0'
	</select>
	
	
</mapper>