|  |  |  | 
|---|
|  |  |  | <select id="getRecordCount" parameterType="java.util.Map" resultType="java.lang.Long"> | 
|---|
|  |  |  | SELECT COUNT(*) AS recordCount | 
|---|
|  |  |  | FROM pr_intake ge | 
|---|
|  |  |  | INNER JOIN ba_divide divi ON ge.divideId = divi.id | 
|---|
|  |  |  | INNER JOIN pr_divide divi ON ge.divideId = divi.id | 
|---|
|  |  |  | INNER JOIN ba_block blo ON divi.blockId = blo.id | 
|---|
|  |  |  | INNER JOIN ba_district country ON ge.countyId = country.id | 
|---|
|  |  |  | INNER JOIN ba_district town ON ge.townId = town.id | 
|---|
|  |  |  | INNER JOIN ba_district village ON ge.villageId = village.id | 
|---|
|  |  |  | , (SELECT @i:=0) AS itable | 
|---|
|  |  |  | LEFT JOIN ba_district country ON ge.countyId = country.id | 
|---|
|  |  |  | LEFT JOIN ba_district town ON ge.townId = town.id | 
|---|
|  |  |  | LEFT JOIN ba_district village ON ge.villageId = village.id | 
|---|
|  |  |  | <where> | 
|---|
|  |  |  | ge.deleted = 0 | 
|---|
|  |  |  | AND divi.deleted = 0 | 
|---|
|  |  |  | 
|---|
|  |  |  | AND ge.name LIKE CONCAT('%', #{intakeName}, '%') | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <if test="divideName != null and divideName != ''"> | 
|---|
|  |  |  | AND divi.name LIKE CONCAT('%', #{divideName}, '%') | 
|---|
|  |  |  | <if test = "divideId != null and divideId !=''"> | 
|---|
|  |  |  | AND divi.id = #{divideId} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <if test="blockName != null and blockName != ''"> | 
|---|
|  |  |  | AND blo.name = #{blockName} | 
|---|
|  |  |  | <if test = "blockId != null and blockId !=''"> | 
|---|
|  |  |  | AND blo.id = #{blockId} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <if test="isBinded == 0"> | 
|---|
|  |  |  | AND ge.id NOT IN(SELECT intakeId FROM pr_controller where deleted = 0) | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="isBinded == 1"> | 
|---|
|  |  |  | AND ge.id IN(SELECT intakeId FROM pr_controller where deleted = 0) | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="isBinded == null"> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="address != null and address != ''"> | 
|---|
|  |  |  | AND CONCAT(country.`name`, town.`name`, village.`name`) LIKE CONCAT('%', #{address}, '%') | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </where> | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--根据指定条件获取取水口记录--> | 
|---|
|  |  |  | <select id="getIntakes" resultType="com.dy.pipIrrGlobal.voPr.VoIntake"> | 
|---|
|  |  |  | SELECT (@i:=@i+1)                                          AS id, | 
|---|
|  |  |  | SELECT | 
|---|
|  |  |  | CAST(ge.id AS char)                                 AS intakeId, | 
|---|
|  |  |  | ge.`name`                                           AS intakeName, | 
|---|
|  |  |  | CAST(divi.id AS char)                               AS divideId, | 
|---|
|  |  |  | divi.`name`                                         AS divideName, | 
|---|
|  |  |  | CAST(blo.id AS char)                                AS blockId, | 
|---|
|  |  |  | blo.`name`                                          AS blockName, | 
|---|
|  |  |  | ge.lng, | 
|---|
|  |  |  | ge.lat, | 
|---|
|  |  |  | ge.remarks, | 
|---|
|  |  |  | ge.operator, | 
|---|
|  |  |  | ge.operateDt                                        As operateDt, | 
|---|
|  |  |  | (CASE | 
|---|
|  |  |  | WHEN ge.id NOT IN(SELECT intakeId FROM pr_controller where deleted = 0)  THEN "未绑定" | 
|---|
|  |  |  | WHEN ge.id IN(SELECT intakeId FROM pr_controller  where deleted = 0)  THEN "已绑定" | 
|---|
|  |  |  | END) AS isBind, | 
|---|
|  |  |  | CONCAT(country.`name`, town.`name`, village.`name`) AS address | 
|---|
|  |  |  | FROM pr_intake ge | 
|---|
|  |  |  | INNER JOIN pr_divide divi ON ge.divideId = divi.id | 
|---|
|  |  |  | INNER JOIN ba_block blo ON divi.blockId = blo.id | 
|---|
|  |  |  | INNER JOIN ba_district country ON ge.countyId = country.id | 
|---|
|  |  |  | INNER JOIN ba_district town ON ge.townId = town.id | 
|---|
|  |  |  | INNER JOIN ba_district village ON ge.villageId = village.id | 
|---|
|  |  |  | , (SELECT @i:=0) AS itable | 
|---|
|  |  |  | LEFT JOIN ba_district country ON ge.countyId = country.id | 
|---|
|  |  |  | LEFT JOIN ba_district town ON ge.townId = town.id | 
|---|
|  |  |  | LEFT JOIN ba_district village ON ge.villageId = village.id | 
|---|
|  |  |  | <where> | 
|---|
|  |  |  | ge.deleted = 0 | 
|---|
|  |  |  | AND divi.deleted = 0 | 
|---|
|  |  |  | 
|---|
|  |  |  | <if test="intakeName != null and intakeName != ''"> | 
|---|
|  |  |  | AND ge.name LIKE CONCAT('%', #{intakeName}, '%') | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="divideName != null and divideName != ''"> | 
|---|
|  |  |  | AND divi.name LIKE CONCAT('%', #{divideName}, '%') | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <if test = "divideId != null and divideId !=''"> | 
|---|
|  |  |  | AND divi.id = #{divideId} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <if test="blockName != null and blockName != ''"> | 
|---|
|  |  |  | AND blo.name = #{blockName} | 
|---|
|  |  |  | <if test = "blockId != null and blockId !=''"> | 
|---|
|  |  |  | AND blo.id = #{blockId} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <if test="isBinded == 0"> | 
|---|
|  |  |  | AND ge.id NOT IN(SELECT intakeId FROM pr_controller where deleted = 0) | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="isBinded == 1"> | 
|---|
|  |  |  | AND ge.id IN(SELECT intakeId FROM pr_controller where deleted = 0) | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="isBinded == null"> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="address != null and address != ''"> | 
|---|
|  |  |  | AND CONCAT(country.`name`, town.`name`, village.`name`) LIKE CONCAT('%', #{address}, '%') | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </where> | 
|---|
|  |  |  | ORDER BY ge.operateDt DESC | 
|---|
|  |  |  | <if test="pageCurr != null and pageSize != null"> | 
|---|
|  |  |  | LIMIT ${pageCurr}, ${pageSize} | 
|---|
|  |  |  | LIMIT ${(pageCurr-1)*pageSize}, ${pageSize} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | where region.id = #{regionId,jdbcType=BIGINT} | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--获取未绑控制器的取水口列表--> | 
|---|
|  |  |  | <select id="getNoBindingIntakes" resultType="java.util.HashMap"> | 
|---|
|  |  |  | SELECT | 
|---|
|  |  |  | CAST(inta.id AS char)AS intakeId, | 
|---|
|  |  |  | name AS intakeName | 
|---|
|  |  |  | FROM pr_intake inta | 
|---|
|  |  |  | WHERE id NOT IN(SELECT intakeId FROM pr_controller) AND deleted = 0 | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | </mapper> | 
|---|