2efba8d22444822e2c0b0f64581067d384c3ce51.svn-base 9.09 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.RegBaseZsglbDao">
    
	<sql id="regBaseZsglbColumns">
		a.id AS "id",
		a.zsbm AS "zsbm",
		a.zslx AS "zslx",
		a.szr AS "szr",
		a.szzh AS "szzh",
		a.zssl AS "zssl",
		a.ywh AS "ywh",
		a.bdcdyh AS "bdcdyh",
		a.isbf AS "isbf",
		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",
		a.isdj AS "isdj",
		a.bdcqzh AS "bdcqzh"
	</sql>
	
	<sql id="regBaseZsglbJoins">
	</sql>
    
	<select id="get" resultType="RegBaseZsglb">
		SELECT 
			<include refid="regBaseZsglbColumns"/>
		FROM reg_base_zsglb a
		<include refid="regBaseZsglbJoins"/>
		WHERE a.id = #{id}
	</select>
	
	<select id="findList" resultType="RegBaseZsglb">
		SELECT 
			<include refid="regBaseZsglbColumns"/>
		FROM reg_base_zsglb a
		<include refid="regBaseZsglbJoins"/>
		<where>
			a.del_flag = #{DEL_FLAG_NORMAL}
			<if test="zsbm != null and zsbm != ''">
				AND a.zsbm LIKE 
					<if test="dbName == 'oracle'">'%'||#{zsbm}||'%'</if>
					<if test="dbName == 'mssql'">'%'+#{zsbm}+'%'</if>
					<if test="dbName == 'mysql'">concat('%',#{zsbm},'%')</if>
			</if>
			<if test="zslx != null and zslx != ''">
				AND a.zslx = #{zslx}
			</if>
			<if test="ywh != null and ywh != ''">
				AND a.ywh = #{ywh}
			</if>
			<if test="bdcdyh != null and bdcdyh != ''">
				AND a.bdcdyh LIKE 
					<if test="dbName == 'oracle'">'%'||#{bdcdyh}||'%'</if>
					<if test="dbName == 'mssql'">'%'+#{bdcdyh}+'%'</if>
					<if test="dbName == 'mysql'">concat('%',#{bdcdyh},'%')</if>
			</if>
			<if test="szr != null and szr != ''">
				AND a.szr LIKE 
					<if test="dbName == 'oracle'">'%'||#{szr}||'%'</if>
					<if test="dbName == 'mssql'">'%'+#{szr}+'%'</if>
					<if test="dbName == 'mysql'">concat('%',#{szr},'%')</if>
			</if>
			<if test="szzh != null and szzh != ''">
				AND a.szzh = #{szzh}
			</if>
			<if test="id != null and id != ''">
				AND a.create_by = #{id}
			</if>
			<if test="remarks != null and remarks != ''">
				<if test="remarks == 1">
					AND a.szr is null
				</if>
			</if>
			<if test="isbf != null and isbf != ''">
				AND a.isbf = #{isbf} 
			</if>
			<if test="creater != null and creater != ''">
				AND a.create_by = #{creater} 
			</if>
			<if test="isdj !='all'">
				<if test="isdj =='jc'">
					AND a.isdj = 'J'
				</if>
				<if test="isdj !='jc'">
					AND (a.isdj = 'D' OR a.isdj is null)
				</if>
			</if>
		</where>
		<choose>
			<when test="page !=null and page.orderBy != null and page.orderBy != ''">
				ORDER BY ${page.orderBy}
			</when>
			<otherwise>
				ORDER BY a.zsbm ASC
			</otherwise>
		</choose>
	</select>
	
	<select id="findListQc" resultType="RegBaseZsglb">
		SELECT 
			 <include refid="regBaseZsglbColumns"/>
		FROM reg_base_zsglb a
		<include refid="regBaseZsglbJoins"/>
		<where>
			a.del_flag = #{DEL_FLAG_NORMAL}
			<if test="zsbm != null and zsbm != ''">
				AND a.zsbm LIKE 
					<if test="dbName == 'oracle'">'%'||#{zsbm}||'%'</if>
					<if test="dbName == 'mssql'">'%'+#{zsbm}+'%'</if>
					<if test="dbName == 'mysql'">concat('%',#{zsbm},'%')</if>
			</if>
			<if test="zslx != null and zslx != ''">
				AND a.zslx = #{zslx}
			</if>
			<if test="ywh != null and ywh != ''">
				AND a.ywh = #{ywh}
			</if>
			<if test="bdcdyh != null and bdcdyh != ''">
				AND a.bdcdyh LIKE 
					<if test="dbName == 'oracle'">'%'||#{bdcdyh}||'%'</if>
					<if test="dbName == 'mssql'">'%'+#{bdcdyh}+'%'</if>
					<if test="dbName == 'mysql'">concat('%',#{bdcdyh},'%')</if>
			</if>
			<if test="szr != null and szr != ''">
				AND a.szr LIKE 
					<if test="dbName == 'oracle'">'%'||#{szr}||'%'</if>
					<if test="dbName == 'mssql'">'%'+#{szr}+'%'</if>
					<if test="dbName == 'mysql'">concat('%',#{szr},'%')</if>
			</if>
			<if test="szzh != null and szzh != ''">
				AND a.szzh = #{szzh}
			</if>
			<if test="id != null and id != ''">
				AND a.create_by = #{id}
			</if>
			<if test="remarks != null and remarks != ''">
				<if test="remarks == 1">
					AND a.szr is null 
				</if>
			</if>
			<if test="isbf != null and isbf != ''">
				AND a.isbf = #{isbf} 
			</if>
			<if test="isdj =='jc'">
				AND a.isdj = 'J'
			</if>
			<if test="isdj !='jc'">
				AND (a.isdj = 'D' OR a.isdj is null)
			</if>
			GROUP BY a.szzh
		</where>
		<choose>
			<when test="page !=null and page.orderBy != null and page.orderBy != ''">
				ORDER BY ${page.orderBy}
			</when>
			<otherwise>
				ORDER BY a.zsbm ASC
			</otherwise>
		</choose>
	</select>
	
	<select id="OraclefindListQc" resultType="RegBaseZsglb">
<!-- 		SELECT <include refid="regBaseZsglbColumns"/> -->
<!-- 		FROM reg_base_zsglb a  -->
<!-- 		where a.ywh = #{ywh}  -->
<!-- 		and a.isbf = #{isbf}  -->
<!-- 		and a.szzh = (SELECT  -->
<!-- 			 MAX(t.szzh) -->
<!-- 		FROM reg_base_zsglb t -->
<!-- 		where -->
<!-- 			t.ywh = #{ywh} -->
<!-- 			AND t.isbf = #{isbf}  -->
<!-- 			) -->
			
		SELECT szzh 
		FROM (select szzh,row_number() over(partition by szzh order by szzh desc) rn 
			from reg_base_zsglb a 
			where a.ywh = #{ywh} and a.isbf = #{isbf} 
		) 
		where rn = 1 
	</select>
	
	
	
	<select id="oldZsbhs" resultType="String">
		SELECT a.zsbm FROM reg_base_zsglb a WHERE a.id IN (SELECT DISTINCT main_id FROM reg_base_zsglb_sub )
	</select>
	
	<select id="findListSave" resultType="RegBaseZsglb">
		SELECT 
			<include refid="regBaseZsglbColumns"/>
		FROM reg_base_zsglb a
		<include refid="regBaseZsglbJoins"/>
		<where>
			a.del_flag = #{DEL_FLAG_NORMAL}
			<if test="szzh != null and szzh != ''">
				AND a.szzh = #{szzh}
			</if>
			<if test="zslx != null and zslx != ''">
				AND a.zslx = #{zslx}
			</if>
			<if test="isdj =='jc'">
				AND a.isdj = 'J'
			</if>
			<if test="isdj !='jc'">
				AND (a.isdj = 'D' OR a.isdj is null)
			</if>
			
			<if test="id != null and id != ''">
				AND a.create_by = #{id}
			</if>
			<if test="remarks != null and remarks != ''">
				<if test="remarks == 1">
					AND a.zsbm &gt;= #{zsbm} 
					AND a.szr is null 
				</if>
				<if test="remarks != 1">
					AND a.zsbm &gt;= #{zsbm} 
					AND a.zsbm &lt;= #{zssl}
				</if>
			</if>
			<if test="isbf != null and isbf != ''">
				AND a.isbf = #{isbf} 
			</if>
		</where>
		<choose>
			<when test="page !=null and page.orderBy != null and page.orderBy != ''">
				ORDER BY ${page.orderBy}
			</when>
			<otherwise>
				ORDER BY a.zsbm ASC
			</otherwise>
		</choose>
	</select>
	
	<select id="findListCount" resultType="RegBaseZsglb">
		SELECT 
			<include refid="regBaseZsglbColumns"/>
		FROM reg_base_zsglb a
		<include refid="regBaseZsglbJoins"/>
		<where>
			a.del_flag = #{DEL_FLAG_NORMAL}
			<if test="szzh != null and szzh != ''">
				AND a.szzh = #{szzh}
			</if>
			<if test="zslx != null and zslx != ''">
				AND a.zslx = #{zslx}
			</if>
			<if test="id != null and id != ''">
				AND a.create_by = #{id}
			</if>
			<if test="remarks != null and remarks != ''">
				<if test="zsbm != null and zsbm != ''">
					AND a.zsbm = #{zsbm}
				</if>
				AND a.szr is null 
			</if>
			<if test="isbf != null and isbf != ''">
				AND a.isbf = #{isbf} 
			</if>
			<if test="isdj =='jc'">
				AND a.isdj = 'J'
			</if>
			<if test="isdj !='jc'">
				AND (a.isdj = 'D' OR a.isdj is null)
			</if>
		</where>
		<choose>
			<when test="page !=null and page.orderBy != null and page.orderBy != ''">
				ORDER BY ${page.orderBy}
			</when>
			<otherwise>
				ORDER BY a.zsbm ASC
			</otherwise>
		</choose>
	</select>
	
	<select id="findAllList" resultType="RegBaseZsglb">
		SELECT 
			<include refid="regBaseZsglbColumns"/>
		FROM reg_base_zsglb a
		<include refid="regBaseZsglbJoins"/>
		<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_zsglb(
			id,
			zsbm,
			zslx,
			szr,
			szzh,
			zssl,
			ywh,
			bdcdyh,
			isbf,
			create_by,
			create_date,
			update_by,
			update_date,
			remarks,
			del_flag,
			isdj,
			bdcqzh
		) VALUES (
			#{id},
			#{zsbm},
			#{zslx},
			#{szr},
			#{szzh},
			#{zssl},
			#{ywh},
			#{bdcdyh},
			#{isbf},
			#{createBy.id},
			#{createDate},
			#{updateBy.id},
			#{updateDate},
			#{remarks},
			#{delFlag},
			#{isdj},
			#{bdcqzh}
		)
	</insert>
	
	<update id="update">
		UPDATE reg_base_zsglb SET 	
			zsbm = #{zsbm},
			zslx = #{zslx},
			szr = #{szr},
			szzh = #{szzh},
			zssl = #{zssl},
			ywh = #{ywh},
			bdcdyh = #{bdcdyh},
			isbf = #{isbf},
			update_by = #{updateBy.id},
			update_date = #{updateDate},
			remarks = #{remarks},
			isdj = #{isdj},
			bdcqzh = #{bdcqzh}
		WHERE id = #{id}
	</update>
	
	<update id="delete">
		DELETE FROM reg_base_zsglb 
		WHERE id = #{id}
	</update>
	
	<delete id="batchDeletes" parameterType="java.util.List">
            DELETE FROM reg_base_zsglb b where b.id in
        <foreach collection="list" index="index" item="item" open="(" separator="," close=")">   
            #{item}   
         </foreach>
    </delete>
	
</mapper>