| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359 |
- <?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="cn.com.goldenwater.dcproj.dao.BisInspGnrlRgstrDao">
- <resultMap type="cn.com.goldenwater.dcproj.model.BisInspGnrlRgstr" id="bisInspGnrlRgstrResultMap">
- <result property="id" column="ID"/>
- <result property="objId" column="OBJ_ID"/>
- <result property="nm" column="NM"/>
- <result property="adCode" column="AD_CODE"/>
- <result property="adName" column="AD_NAME"/>
- <result property="loc" column="LOC"/>
- <result property="note" column="NOTE"/>
- <result property="state" column="STATE"/>
- <result property="centerX" column="CENTER_X"/>
- <result property="centerY" column="CENTER_Y"/>
- <result property="gdX" column="GD_X"/>
- <result property="gdY" column="GD_Y"/>
- <result property="intm" column="INTM"/>
- <result property="uptm" column="UPTM"/>
- <result property="dataStat" column="DATA_STAT"/>
- <result property="type" column="TYPE"/>
- <result property="sectName" column="SECT_NAME"/>
- </resultMap>
- <sql id="table_columns">
- ID,
- OBJ_ID,
- NM,
- AD_CODE,
- AD_NAME,
- LOC,
- NOTE,
- STATE,
- CENTER_X,
- CENTER_Y,
- GD_X,
- GD_Y,
- INTM,
- UPTM,
- DATA_STAT,
- TYPE,
- SECT_NAME
- </sql>
- <sql id="entity_properties">
- #{id},
- #{objId},
- #{nm},
- #{adCode},
- #{adName},
- #{loc},
- #{note},
- #{state},
- #{centerX},
- #{centerY},
- #{gdX},
- #{gdY},
- #{intm},
- #{uptm},
- #{dataStat},
- #{type},
- #{sectName}
- </sql>
- <!-- 使用like用法:columnName like concat('%',#columnName#,'%') -->
- <sql id="page_where">
- <trim prefix="where" prefixOverrides="and | or ">
- <if test="type != null and type != ''">
- and TYPE = #{type}
- </if>
- <if test="objId != null and objId != ''">
- and OBJ_ID = #{objId}
- </if>
- <if test="nm != null and nm != ''">
- and NM = #{nm}
- </if>
- <if test="adCode != null and adCode != ''">
- and AD_CODE = #{adCode}
- </if>
- <if test="adName != null and adName != ''">
- and AD_NAME = #{adName}
- </if>
- <if test="loc != null and loc != ''">
- and LOC = #{loc}
- </if>
- <if test="note != null and note != ''">
- and NOTE = #{note}
- </if>
- <if test="state != null and state != ''">
- and STATE = #{state}
- </if>
- <if test="centerX != null and centerX != ''">
- and CENTER_X = #{centerX}
- </if>
- <if test="centerY != null and centerY != ''">
- and CENTER_Y = #{centerY}
- </if>
- <if test="gdX != null and gdX != ''">
- and GD_X = #{gdX}
- </if>
- <if test="gdY != null and gdY != ''">
- and GD_Y = #{gdY}
- </if>
- <if test="intm != null">
- and INTM = #{intm}
- </if>
- <if test="uptm != null">
- and UPTM = #{uptm}
- </if>
- <if test="dataStat != null and dataStat != ''">
- and DATA_STAT = #{dataStat}
- </if>
- and DATA_STAT='0'
- </trim>
- </sql>
- <select id="get" resultMap="bisInspGnrlRgstrResultMap" parameterType="String">
- select
- <include refid="table_columns"/>
- from BIS_INSP_GNRL_RGSTR where ID = #{id}
- </select>
- <select id="getBy" resultMap="bisInspGnrlRgstrResultMap">
- select
- <include refid="table_columns"/>
- from BIS_INSP_GNRL_RGSTR
- <include refid="page_where"/>
- </select>
- <select id="findAll" resultMap="bisInspGnrlRgstrResultMap">
- select
- <include refid="table_columns"/>
- from BIS_INSP_GNRL_RGSTR
- </select>
- <select id="findList" resultMap="bisInspGnrlRgstrResultMap">
- select
- <include refid="table_columns"/>
- from BIS_INSP_GNRL_RGSTR
- <include refid="page_where"/>
- </select>
- <select id="selectCount" resultType="int">
- select count(ID) from BIS_INSP_GNRL_RGSTR
- <include refid="page_where"/>
- </select>
- <insert id="insert" parameterType="cn.com.goldenwater.dcproj.model.BisInspGnrlRgstr">
- insert into BIS_INSP_GNRL_RGSTR(
- <include refid="table_columns"/>
- )
- values (
- <include refid="entity_properties"/>
- )
- </insert>
- <delete id="delete" parameterType="java.lang.String">
- update BIS_INSP_GNRL_RGSTR set DATA_STAT='9' where ID = #{id}
- </delete>
- <delete id="deleteBy" parameterType="cn.com.goldenwater.dcproj.model.BisInspGnrlRgstr">
- update BIS_INSP_GNRL_RGSTR set DATA_STAT='9'
- <include refid="page_where"/>
- </delete>
- <update id="deleteInFlag" parameterType="java.lang.String">
- update BIS_INSP_GNRL_RGSTR set DATA_STAT = '9' where ID = #{id}
- </update>
- <update id="update" parameterType="cn.com.goldenwater.dcproj.model.BisInspGnrlRgstr">
- update BIS_INSP_GNRL_RGSTR
- <trim prefix="set" suffixOverrides=",">
- <if test="type != null and type != ''">TYPE = #{type},</if>
- <if test="objId != null and objId != ''">OBJ_ID
- = #{objId},
- </if>
- <if test="nm != null and nm != ''">NM
- = #{nm},
- </if>
- <if test="adCode != null and adCode != ''">AD_CODE
- = #{adCode},
- </if>
- <if test="adName != null and adName != ''">AD_NAME
- = #{adName},
- </if>
- <if test="loc != null and loc != ''">LOC
- = #{loc},
- </if>
- <if test="note != null and note != ''">NOTE
- = #{note},
- </if>
- <if test="state != null and state != ''">STATE
- = #{state},
- </if>
- <if test="centerX != null and centerX != ''">CENTER_X
- = #{centerX},
- </if>
- <if test="centerY != null and centerY != ''">CENTER_Y
- = #{centerY},
- </if>
- <if test="gdX != null and gdX != ''">GD_X
- = #{gdX},
- </if>
- <if test="gdY != null and gdY != ''">GD_Y
- = #{gdY},
- </if>
- <if test="intm != null">INTM
- = #{intm},
- </if>
- <if test="uptm != null">UPTM
- = #{uptm},
- </if>
- <if test="dataStat != null and dataStat != ''">DATA_STAT
- = #{dataStat},
- </if>
- <if test="sectName != null and sectName != ''">SECT_NAME
- = #{sectName},
- </if>
- </trim>
- <where>ID = #{id}</where>
- </update>
- <update id="updateBy" parameterType="cn.com.goldenwater.dcproj.model.BisInspGnrlRgstr">
- update BIS_INSP_GNRL_RGSTR
- <trim prefix="set" suffixOverrides=",">
- <if test="type != null and type != ''">TYPE = #{type},</if>
- <if test="objId != null and objId != ''">OBJ_ID
- = #{objId},
- </if>
- <if test="nm != null and nm != ''">NM
- = #{nm},
- </if>
- <if test="adCode != null and adCode != ''">AD_CODE
- = #{adCode},
- </if>
- <if test="adName != null and adName != ''">AD_NAME
- = #{adName},
- </if>
- <if test="loc != null and loc != ''">LOC
- = #{loc},
- </if>
- <if test="note != null and note != ''">NOTE
- = #{note},
- </if>
- <if test="state != null and state != ''">STATE
- = #{state},
- </if>
- <if test="centerX != null and centerX != ''">CENTER_X
- = #{centerX},
- </if>
- <if test="centerY != null and centerY != ''">CENTER_Y
- = #{centerY},
- </if>
- <if test="gdX != null and gdX != ''">GD_X
- = #{gdX},
- </if>
- <if test="gdY != null and gdY != ''">GD_Y
- = #{gdY},
- </if>
- <if test="intm != null">INTM
- = #{intm},
- </if>
- <if test="uptm != null">UPTM
- = #{uptm},
- </if>
- <if test="dataStat != null and dataStat != ''">DATA_STAT
- = #{dataStat},
- </if>
- <if test="sectName != null and sectName != ''">SECT_NAME
- = #{sectName},
- </if>
- </trim>
- <include refid="page_where"/>
- </update>
- <!-- 其他自定义SQL -->
- <select id="findPageList" resultType="cn.com.goldenwater.dcproj.dto.BisInspGnrlRgstrDto">
- SELECT * FROM (
- select ia.province,
- A.CODE, A.ID nodeId, A.NM, A.ptype, aw.AD_FULL_NAME, ia.pnm groupName,
- B.id as rgstrId, (case when b.STATE is null then '0' else b.state end) STATE,
- B.ID,
- B.SECT_NAME,
- B.OBJ_ID,
- B.AD_CODE,
- B.AD_NAME,
- B.LOC,
- B.NOTE,
- B.CENTER_X,
- B.CENTER_Y,
- B.GD_X,
- B.GD_Y,
- B.INTM,
- B.UPTM,
- B.TYPE,
- B.DATA_STAT,
- case when "TO_CHAR"(SYSDATE,'yyyy-MM-dd') = "TO_CHAR"( p.mincolltime,'yyyy-MM-dd') then '1'
- when p.mincolltime is null then '1'
- else '0' end timeout
- FROM BIS_INSP_ALL_OBJ A
- JOIN BIS_INSP_GNRL_RGSTR B ON A.OBJ_ID=B.OBJ_ID
- LEFT JOIN BIS_INSP_ALL IA ON A.ID = IA.ID
- LEFT JOIN ATT_AD_BASE AW ON B.AD_CODE = AW.AD_CODE
- left join (select min(coll_time) mincolltime , obj_id from BIS_INSP_PBLM group by obj_id) p on P.OBJ_ID = A.OBJ_ID
- <where>
- <if test="adCodes ==null or adCodes ==''">
- <choose>
- <when test='isAll =="1"'>
- </when>
- <otherwise>
- AND A.ID IN (
- SELECT DISTINCT ID FROM (
- SELECT P.ID FROM BIS_INSP_ALL P START WITH P.PID IN (SELECT ID FROM BIS_INSP_ALL_RLATION A
- WHERE A.PERSID = #{presId} and TYPE = #{pType} and length(id) in (3,6,9))
- CONNECT BY P.PID = PRIOR P.ID
- UNION ALL
- SELECT P.ID FROM BIS_INSP_ALL P WHERE P.ID IN (SELECT ID FROM BIS_INSP_ALL_RLATION A
- WHERE A.PERSID =#{presId} and TYPE = #{pType} and length(id)=12 )
- )
- )
- </otherwise>
- </choose>
- </if>
- <if test="adCodes !=null and adCodes !=''">
- AND
- <foreach item="item" index="index" collection="adCodes.split(',')" open="(" separator="or" close=")">
- B.AD_CODE LIKE CONCAT('${item}','%')
- </foreach>
- </if>
- <if test="tabType =='2'.toString()">
- and IA.ENTM <to_date(#{nowTime},'yyyy-MM-dd')+1
- </if>
- <if test="tabType =='1'.toString()">
- and IA.ENTM >=to_date(#{nowTime},'yyyy-MM-dd')
- </if>
- </where>
- ) A
- <where>
- <if test="prjType !=null and prjType !=''">AND TYPE = #{prjType}</if>
- <if test="id !=null and id !=''">and nodeId like '${id}%'</if>
- <if test="plnaId !=null and plnaId !=''">and nodeId like '${plnaId}%'</if>
- <if test="groupId != null and groupId != ''">and nodeId like '${groupId}%'</if>
- <if test="code !=null and code !=''">and code = #{code}</if>
- <if test="nm !=null and nm !=''">and nm like '%${nm}%'</if>
- <if test="state !=null and state !=''">and STATE in (${state})</if>
- <if test="adName != null and adName != ''">and AD_NAME like '%${adName}%'</if>
- <if test="sttm != null and sttm != ''">and Intm >= TO_DATE(#{sttm},'YYYY-MM-DD')</if>
- <if test="entm != null and entm != ''">and Intm < To_DATE(#{entm},'yyyy-MM-dd') + 1</if>
- <if test="adCode != null and adCode != ''">and AD_CODE LIKE '${adCode}%'</if>
- </where>
- order by nodeId, AD_CODE, ID
- <if test="orderBy != null and orderBy != ''">
- , nlssort(nm,'NLS_SORT=SCHINESE_PINYIN_M')
- </if>
- </select>
- </mapper>
|