| New file | 
 |  |  | 
 |  |  | <?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.dy.pipIrrGlobal.daoPr.PrDivideMapper"> | 
 |  |  |   <resultMap id="BaseResultMap" type="com.dy.pipIrrGlobal.pojoPr.PrDivide"> | 
 |  |  |     <!--@mbg.generated--> | 
 |  |  |     <!--@Table pr_divide--> | 
 |  |  |     <id column="id" jdbcType="BIGINT" property="id" /> | 
 |  |  |     <result column="countyId" jdbcType="BIGINT" property="countyid" /> | 
 |  |  |     <result column="townId" jdbcType="BIGINT" property="townid" /> | 
 |  |  |     <result column="villageId" jdbcType="BIGINT" property="villageid" /> | 
 |  |  |     <result column="blockId" jdbcType="BIGINT" property="blockid" /> | 
 |  |  |     <result column="name" jdbcType="VARCHAR" property="name" /> | 
 |  |  |     <result column="villages" jdbcType="VARCHAR" property="villages" /> | 
 |  |  |     <result column="area" jdbcType="FLOAT" property="area" /> | 
 |  |  |     <result column="header" jdbcType="VARCHAR" property="header" /> | 
 |  |  |     <result column="phone" jdbcType="VARCHAR" property="phone" /> | 
 |  |  |     <result column="lng" jdbcType="DOUBLE" property="lng" /> | 
 |  |  |     <result column="lat" jdbcType="DOUBLE" property="lat" /> | 
 |  |  |     <result column="remarks" jdbcType="VARCHAR" property="remarks" /> | 
 |  |  |     <result column="operator" jdbcType="BIGINT" property="operator" /> | 
 |  |  |     <result column="operateDt" jdbcType="TIMESTAMP" property="operatedt" /> | 
 |  |  |     <result column="deleted" jdbcType="TINYINT" property="deleted" /> | 
 |  |  |   </resultMap> | 
 |  |  |   <sql id="Base_Column_List"> | 
 |  |  |     <!--@mbg.generated--> | 
 |  |  |     id, countyId, townId, villageId, blockId, `name`, villages, area, `header`, phone,  | 
 |  |  |     lng, lat, remarks, `operator`, operateDt, deleted | 
 |  |  |   </sql> | 
 |  |  |  | 
 |  |  |   <!--2025-01-21 废弃--> | 
 |  |  |   <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap"> | 
 |  |  |     <!--@mbg.generated--> | 
 |  |  |     select  | 
 |  |  |     <include refid="Base_Column_List" /> | 
 |  |  |     from pr_divide | 
 |  |  |     where id = #{id,jdbcType=BIGINT} | 
 |  |  |   </select> | 
 |  |  |  | 
 |  |  |   <select id="getDivideDetails" resultType="com.dy.pipIrrGlobal.voPr.VoDivideDetails"> | 
 |  |  |     SELECT | 
 |  |  |       divi.id, | 
 |  |  |       divi.countyId, | 
 |  |  |       divi.townId, | 
 |  |  |       divi.villageId, | 
 |  |  |       divi.blockId, | 
 |  |  |       divi.name, | 
 |  |  |       divi.villages, | 
 |  |  |       divi.area, | 
 |  |  |       divi.header, | 
 |  |  |       divi.phone, | 
 |  |  |       divi.lat, | 
 |  |  |       divi.lng, | 
 |  |  |       divi.operateDt, | 
 |  |  |       divi.operator, | 
 |  |  |       blo.`name` AS blockName, | 
 |  |  |       CONCAT(country.`name`, town.`name`, village.`name`) AS address, | 
 |  |  |       divi.remarks | 
 |  |  |     FROM pr_divide divi | 
 |  |  |            INNER JOIN ba_block blo ON divi.blockId = blo.id | 
 |  |  |            Left JOIN ba_district country ON divi.countyId = country.id | 
 |  |  |            Left JOIN ba_district town ON divi.townId = town.id | 
 |  |  |            Left JOIN ba_district village ON divi.villageid = village.id | 
 |  |  |        , (SELECT @i:=0) AS itable | 
 |  |  |     WHERE divi.deleted = 0 AND divi.id = #{id} | 
 |  |  |   </select> | 
 |  |  |  | 
 |  |  |  | 
 |  |  |   <delete id="deleteByPrimaryKey" parameterType="java.lang.Long"> | 
 |  |  |     <!--@mbg.generated--> | 
 |  |  |     delete from pr_divide | 
 |  |  |     where id = #{id,jdbcType=BIGINT} | 
 |  |  |   </delete> | 
 |  |  |  | 
 |  |  |   <insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoPr.PrDivide"> | 
 |  |  |     <!--@mbg.generated--> | 
 |  |  |     insert into pr_divide (id, countyId, townId,  | 
 |  |  |       villageId, blockId, `name`,  | 
 |  |  |       villages, area, `header`,  | 
 |  |  |       phone, lng, lat, remarks,  | 
 |  |  |       `operator`, operateDt, deleted | 
 |  |  |       ) | 
 |  |  |     values (#{id,jdbcType=BIGINT}, #{countyid,jdbcType=BIGINT}, #{townid,jdbcType=BIGINT},  | 
 |  |  |       #{villageid,jdbcType=BIGINT}, #{blockid,jdbcType=BIGINT}, #{name,jdbcType=VARCHAR},  | 
 |  |  |       #{villages,jdbcType=VARCHAR}, #{area,jdbcType=FLOAT}, #{header,jdbcType=VARCHAR},  | 
 |  |  |       #{phone,jdbcType=VARCHAR}, #{lng,jdbcType=DOUBLE}, #{lat,jdbcType=DOUBLE}, #{remarks,jdbcType=VARCHAR},  | 
 |  |  |       #{operator,jdbcType=BIGINT}, #{operatedt,jdbcType=TIMESTAMP}, #{deleted,jdbcType=TINYINT} | 
 |  |  |       ) | 
 |  |  |   </insert> | 
 |  |  |  | 
 |  |  |   <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoPr.PrDivide"> | 
 |  |  |     <!--@mbg.generated--> | 
 |  |  |     insert into pr_divide | 
 |  |  |     <trim prefix="(" suffix=")" suffixOverrides=","> | 
 |  |  |       <if test="id != null"> | 
 |  |  |         id, | 
 |  |  |       </if> | 
 |  |  |       <if test="countyid != null"> | 
 |  |  |         countyId, | 
 |  |  |       </if> | 
 |  |  |       <if test="townid != null"> | 
 |  |  |         townId, | 
 |  |  |       </if> | 
 |  |  |       <if test="villageid != null"> | 
 |  |  |         villageId, | 
 |  |  |       </if> | 
 |  |  |       <if test="blockid != null"> | 
 |  |  |         blockId, | 
 |  |  |       </if> | 
 |  |  |       <if test="name != null"> | 
 |  |  |         `name`, | 
 |  |  |       </if> | 
 |  |  |       <if test="villages != null"> | 
 |  |  |         villages, | 
 |  |  |       </if> | 
 |  |  |       <if test="area != null"> | 
 |  |  |         area, | 
 |  |  |       </if> | 
 |  |  |       <if test="header != null"> | 
 |  |  |         `header`, | 
 |  |  |       </if> | 
 |  |  |       <if test="phone != null"> | 
 |  |  |         phone, | 
 |  |  |       </if> | 
 |  |  |       <if test="lng != null"> | 
 |  |  |         lng, | 
 |  |  |       </if> | 
 |  |  |       <if test="lat != null"> | 
 |  |  |         lat, | 
 |  |  |       </if> | 
 |  |  |       <if test="remarks != null"> | 
 |  |  |         remarks, | 
 |  |  |       </if> | 
 |  |  |       <if test="operator != null"> | 
 |  |  |         `operator`, | 
 |  |  |       </if> | 
 |  |  |       <if test="operatedt != null"> | 
 |  |  |         operateDt, | 
 |  |  |       </if> | 
 |  |  |       <if test="deleted != null"> | 
 |  |  |         deleted, | 
 |  |  |       </if> | 
 |  |  |     </trim> | 
 |  |  |     <trim prefix="values (" suffix=")" suffixOverrides=","> | 
 |  |  |       <if test="id != null"> | 
 |  |  |         #{id,jdbcType=BIGINT}, | 
 |  |  |       </if> | 
 |  |  |       <if test="countyid != null"> | 
 |  |  |         #{countyid,jdbcType=BIGINT}, | 
 |  |  |       </if> | 
 |  |  |       <if test="townid != null"> | 
 |  |  |         #{townid,jdbcType=BIGINT}, | 
 |  |  |       </if> | 
 |  |  |       <if test="villageid != null"> | 
 |  |  |         #{villageid,jdbcType=BIGINT}, | 
 |  |  |       </if> | 
 |  |  |       <if test="blockid != null"> | 
 |  |  |         #{blockid,jdbcType=BIGINT}, | 
 |  |  |       </if> | 
 |  |  |       <if test="name != null"> | 
 |  |  |         #{name,jdbcType=VARCHAR}, | 
 |  |  |       </if> | 
 |  |  |       <if test="villages != null"> | 
 |  |  |         #{villages,jdbcType=VARCHAR}, | 
 |  |  |       </if> | 
 |  |  |       <if test="area != null"> | 
 |  |  |         #{area,jdbcType=FLOAT}, | 
 |  |  |       </if> | 
 |  |  |       <if test="header != null"> | 
 |  |  |         #{header,jdbcType=VARCHAR}, | 
 |  |  |       </if> | 
 |  |  |       <if test="phone != null"> | 
 |  |  |         #{phone,jdbcType=VARCHAR}, | 
 |  |  |       </if> | 
 |  |  |       <if test="lng != null"> | 
 |  |  |         #{lng,jdbcType=DOUBLE}, | 
 |  |  |       </if> | 
 |  |  |       <if test="lat != null"> | 
 |  |  |         #{lat,jdbcType=DOUBLE}, | 
 |  |  |       </if> | 
 |  |  |       <if test="remarks != null"> | 
 |  |  |         #{remarks,jdbcType=VARCHAR}, | 
 |  |  |       </if> | 
 |  |  |       <if test="operator != null"> | 
 |  |  |         #{operator,jdbcType=BIGINT}, | 
 |  |  |       </if> | 
 |  |  |       <if test="operatedt != null"> | 
 |  |  |         #{operatedt,jdbcType=TIMESTAMP}, | 
 |  |  |       </if> | 
 |  |  |       <if test="deleted != null"> | 
 |  |  |         #{deleted,jdbcType=TINYINT}, | 
 |  |  |       </if> | 
 |  |  |     </trim> | 
 |  |  |   </insert> | 
 |  |  |   <update id="updateByPrimaryKeySelective" parameterType="com.dy.pipIrrGlobal.pojoPr.PrDivide"> | 
 |  |  |     <!--@mbg.generated--> | 
 |  |  |     update pr_divide | 
 |  |  |     <set> | 
 |  |  |       <if test="countyid != null"> | 
 |  |  |         countyId = #{countyid,jdbcType=BIGINT}, | 
 |  |  |       </if> | 
 |  |  |       <if test="townid != null"> | 
 |  |  |         townId = #{townid,jdbcType=BIGINT}, | 
 |  |  |       </if> | 
 |  |  |       <if test="villageid != null"> | 
 |  |  |         villageId = #{villageid,jdbcType=BIGINT}, | 
 |  |  |       </if> | 
 |  |  |       <if test="blockid != null"> | 
 |  |  |         blockId = #{blockid,jdbcType=BIGINT}, | 
 |  |  |       </if> | 
 |  |  |       <if test="name != null"> | 
 |  |  |         `name` = #{name,jdbcType=VARCHAR}, | 
 |  |  |       </if> | 
 |  |  |       <if test="villages != null"> | 
 |  |  |         villages = #{villages,jdbcType=VARCHAR}, | 
 |  |  |       </if> | 
 |  |  |       <if test="area != null"> | 
 |  |  |         area = #{area,jdbcType=FLOAT}, | 
 |  |  |       </if> | 
 |  |  |       <if test="header != null"> | 
 |  |  |         `header` = #{header,jdbcType=VARCHAR}, | 
 |  |  |       </if> | 
 |  |  |       <if test="phone != null"> | 
 |  |  |         phone = #{phone,jdbcType=VARCHAR}, | 
 |  |  |       </if> | 
 |  |  |       <if test="lng != null"> | 
 |  |  |         lng = #{lng,jdbcType=DOUBLE}, | 
 |  |  |       </if> | 
 |  |  |       <if test="lat != null"> | 
 |  |  |         lat = #{lat,jdbcType=DOUBLE}, | 
 |  |  |       </if> | 
 |  |  |       <if test="remarks != null"> | 
 |  |  |         remarks = #{remarks,jdbcType=VARCHAR}, | 
 |  |  |       </if> | 
 |  |  |       <if test="operator != null"> | 
 |  |  |         `operator` = #{operator,jdbcType=BIGINT}, | 
 |  |  |       </if> | 
 |  |  |       <if test="operatedt != null"> | 
 |  |  |         operateDt = #{operatedt,jdbcType=TIMESTAMP}, | 
 |  |  |       </if> | 
 |  |  |       <if test="deleted != null"> | 
 |  |  |         deleted = #{deleted,jdbcType=TINYINT}, | 
 |  |  |       </if> | 
 |  |  |     </set> | 
 |  |  |     where id = #{id,jdbcType=BIGINT} | 
 |  |  |   </update> | 
 |  |  |   <update id="updateByPrimaryKey" parameterType="com.dy.pipIrrGlobal.pojoPr.PrDivide"> | 
 |  |  |     <!--@mbg.generated--> | 
 |  |  |     update pr_divide | 
 |  |  |     set countyId = #{countyid,jdbcType=BIGINT}, | 
 |  |  |       townId = #{townid,jdbcType=BIGINT}, | 
 |  |  |       villageId = #{villageid,jdbcType=BIGINT}, | 
 |  |  |       blockId = #{blockid,jdbcType=BIGINT}, | 
 |  |  |       `name` = #{name,jdbcType=VARCHAR}, | 
 |  |  |       villages = #{villages,jdbcType=VARCHAR}, | 
 |  |  |       area = #{area,jdbcType=FLOAT}, | 
 |  |  |       `header` = #{header,jdbcType=VARCHAR}, | 
 |  |  |       phone = #{phone,jdbcType=VARCHAR}, | 
 |  |  |       lng = #{lng,jdbcType=DOUBLE}, | 
 |  |  |       lat = #{lat,jdbcType=DOUBLE}, | 
 |  |  |       remarks = #{remarks,jdbcType=VARCHAR}, | 
 |  |  |       `operator` = #{operator,jdbcType=BIGINT}, | 
 |  |  |       operateDt = #{operatedt,jdbcType=TIMESTAMP} | 
 |  |  | <!--    ,--> | 
 |  |  | <!--      deleted = #{deleted,jdbcType=TINYINT}--> | 
 |  |  |     where id = #{id,jdbcType=BIGINT} | 
 |  |  |   </update> | 
 |  |  |  | 
 |  |  |   <!--根据指定条件获取分水房记录数--> | 
 |  |  |   <select id="getRecordCount" parameterType="java.util.Map" resultType="java.lang.Long"> | 
 |  |  |     SELECT | 
 |  |  |         COUNT(*) AS recordCount | 
 |  |  |     FROM pr_divide divi | 
 |  |  |         INNER JOIN ba_block blo ON divi.blockId = blo.id | 
 |  |  |         Left JOIN ba_district country ON divi.countyId = country.id | 
 |  |  |         Left JOIN ba_district town ON divi.townId = town.id | 
 |  |  |         Left JOIN ba_district village ON divi.villageid = village.id | 
 |  |  |         , (SELECT @i:=0) AS itable | 
 |  |  |     <where> | 
 |  |  |        divi. deleted = 0 | 
 |  |  |       <if test = "divideName != null and divideName !=''"> | 
 |  |  |         AND divi.name LIKE CONCAT('%',#{divideName},'%') | 
 |  |  |       </if> | 
 |  |  |  | 
 |  |  |       <if test = "blockId != null and blockId !=''"> | 
 |  |  |         AND divi.blockId = #{blockId} | 
 |  |  |       </if> | 
 |  |  |     </where> | 
 |  |  |   </select> | 
 |  |  |  | 
 |  |  |   <!--根据指定条件获取分水房记录--> | 
 |  |  |   <select id="getDivides" resultType="com.dy.pipIrrGlobal.voPr.VoDivide"> | 
 |  |  |     SELECT | 
 |  |  |       (@i:=@i+1) AS id, | 
 |  |  |       CAST(divi.id AS char) AS divideId, | 
 |  |  |       divi.name AS divideName, | 
 |  |  |       CAST(divi.blockId AS char) AS blockId, | 
 |  |  |       blo.`name` AS blockName, | 
 |  |  |       divi.header, | 
 |  |  |       divi.villages, | 
 |  |  |       divi.area, | 
 |  |  |       divi.lng, | 
 |  |  |       divi.lat, | 
 |  |  |       divi.phone, | 
 |  |  |       divi.remarks, | 
 |  |  |       CONCAT(country.`name`, town.`name`, village.`name`) AS address, | 
 |  |  |       CAST(divi.operator AS char) AS operator, | 
 |  |  |       divi.operateDt | 
 |  |  |     FROM pr_divide divi | 
 |  |  |         INNER JOIN ba_block blo ON divi.blockId = blo.id | 
 |  |  |         Left JOIN ba_district country ON divi.countyId = country.id | 
 |  |  |         Left JOIN ba_district town ON divi.townId = town.id | 
 |  |  |         Left JOIN ba_district village ON divi.villageid = village.id | 
 |  |  |         , (SELECT @i:=0) AS itable | 
 |  |  |     <where> | 
 |  |  |        divi. deleted = 0 | 
 |  |  |       <if test = "divideName != null and divideName !=''"> | 
 |  |  |         AND divi.name LIKE CONCAT('%',#{divideName},'%') | 
 |  |  |       </if> | 
 |  |  |  | 
 |  |  |       <if test = "blockId != null and blockId !=''"> | 
 |  |  |         AND divi.blockId = #{blockId} | 
 |  |  |       </if> | 
 |  |  |     </where> | 
 |  |  |     ORDER BY divi.operateDt DESC | 
 |  |  |     <trim prefix="limit " > | 
 |  |  |       <if test="start != null and count != null"> | 
 |  |  |         #{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER} | 
 |  |  |       </if> | 
 |  |  |     </trim> | 
 |  |  |   </select> | 
 |  |  |  | 
 |  |  |   <!--根据分水房ID逻辑删除分水房--> | 
 |  |  |   <update id="deleteDivideById" parameterType="java.lang.Long"> | 
 |  |  |     update pr_divide set deleted = 1 | 
 |  |  |     <where> | 
 |  |  |       <if test = "id != null and id > 0"> | 
 |  |  |         AND id = #{id} | 
 |  |  |       </if> | 
 |  |  |     </where> | 
 |  |  |   </update> | 
 |  |  |  | 
 |  |  |   <!--根据分水房编号获取所属片区编号--> | 
 |  |  |   <select id="getBlockIdById" resultType="java.lang.Long"> | 
 |  |  |     SELECT blockId FROM pr_divide WHERE id = #{divideId} | 
 |  |  |   </select> | 
 |  |  |  | 
 |  |  |   <!--根据片区ID获取分水房列表--> | 
 |  |  |   <select id="getDividesByBlockId" resultType="com.dy.pipIrrGlobal.voPr.VoSimpleDivide"> | 
 |  |  |     SELECT | 
 |  |  |       id As value, | 
 |  |  |       name AS label | 
 |  |  |     FROM pr_divide | 
 |  |  |     WHERE deleted = 0 AND blockId = #{blockId} | 
 |  |  |   </select> | 
 |  |  |  | 
 |  |  | </mapper> |