From 6f5dc4ff458a78ec4ff341ca33b5bd5e99fbc8e5 Mon Sep 17 00:00:00 2001
From: xufenglei <xufenglei>
Date: Fri, 13 Jul 2018 14:38:18 +0800
Subject: [PATCH] demo 

---
 src/main/resources/mapper/MonitorPointMapper.xml |   51 ++++++++++++++++++++++++++++-----------------------
 1 files changed, 28 insertions(+), 23 deletions(-)

diff --git a/src/main/resources/mapper/MonitorPointMapper.xml b/src/main/resources/mapper/MonitorPointMapper.xml
index 652012a..8ece846 100644
--- a/src/main/resources/mapper/MonitorPointMapper.xml
+++ b/src/main/resources/mapper/MonitorPointMapper.xml
@@ -13,11 +13,14 @@
     <result column="address" jdbcType="VARCHAR" property="address" />
     <result column="is_delete" jdbcType="CHAR" property="isDelete" />
     <result column="description" jdbcType="VARCHAR" property="description" />
+	  <result column="state" jdbcType="INTEGER" property="state" />
 	<!-- ������������������������������ -->
     <association property="areaNames" javaType="com.moral.entity.AreaNames">
 	  <result column="province_name" property="provinceName" jdbcType="VARCHAR" />
 	  <result column="city_name" property="cityName" jdbcType="VARCHAR" />
 	  <result column="area_name" property="areaName" jdbcType="VARCHAR" />
+	  <result column="town_name" property="townName" jdbcType="VARCHAR" />
+	  <result column="village_name" property="villageName" jdbcType="VARCHAR" />
     </association>
 	  <association property="organization" javaType="com.moral.entity.Organization">
 		  <result column="organization_id" property="id" jdbcType="INTEGER" />
@@ -58,7 +61,7 @@
 		address, is_delete, description
 	</sql>
 	<sql id="Relation_Province_City_Area_List">
-		are.area_name, cti.city_name, pro.province_name
+		are.area_name, cti.city_name, pro.province_name, t.town_name, v.village_name
 	</sql>
 	<select id="selectWithAreaNameByExample" parameterType="tk.mybatis.mapper.entity.Example" resultMap="BaseResultMap">
 		select
@@ -73,6 +76,8 @@
 		left join city cti on mpt.city_code = cti.city_code
 		left join province pro on mpt.province_code = pro.province_code
 		left join organization org on  mpt.organization_id = org.id
+		left join town t on mpt.town_code = t.town_code
+		left join village v on mpt.village_code = v.village_code
         where mpt.id in (
 		    select id from monitor_point
 			<if test="_parameter != null">
@@ -100,38 +105,38 @@
 			AND mp.city_code = c.city_code
 		</if>
 	</select>
-	<select id="selectWithStateByMap" parameterType="java.util.Map" resultMap="BaseResultMap">
-
-		SELECT mpt.*,MAX(dev.state) as state from monitor_point mpt
-		LEFT JOIN device dev on dev.monitor_point_id = mpt.id
+	<select id="selectByMap" parameterType="java.util.Map" resultMap="BaseResultMap">
+		SELECT mpt.* from monitor_point mpt
 		<where>
 			<if test="@com.moral.common.bean.Constants@isNotSpecialOrgId(orgId)">
-				mpt.organization_id = #{orgId,jdbcType=VARCHAR}
+				(
+				1 > 1
+					<if test="orgIds!=null and orgIds.size() > 0">
+						or mpt.organization_id in
+						<foreach collection="orgIds" item="tempOrgId" open="(" close=")" separator=",">
+							#{tempOrgId,jdbcType=INTEGER}
+						</foreach>
+					</if>
+				)
 			</if>
 			<![CDATA[
 			AND mpt.longitude < #{mapBounds.Ge,jdbcType=NUMERIC}
             AND mpt.longitude > #{mapBounds.Le,jdbcType=NUMERIC}
             AND mpt.latitude  < #{mapBounds.Fe,jdbcType=NUMERIC}
             AND mpt.latitude  > #{mapBounds.Ke,jdbcType=NUMERIC}
-		    and state<4
-			GROUP BY mpt.`id`
      		 ]]>
-		</where>
-		UNION
-		SELECT mpt.*,MAX(dev.state) as state from monitor_point mpt
-		LEFT JOIN device dev on dev.monitor_point_id = mpt.id
-		<where>
-			<if test="@com.moral.common.bean.Constants@isNotSpecialOrgId(orgId)">
-				mpt.organization_id = #{orgId,jdbcType=VARCHAR}
+			<if test="isDelete != null">
+			AND	mpt.is_delete = #{isDelete,jdbcType=VARCHAR}
 			</if>
-			<![CDATA[
-			AND mpt.longitude < #{mapBounds.Ge,jdbcType=NUMERIC}
-            AND mpt.longitude > #{mapBounds.Le,jdbcType=NUMERIC}
-            AND mpt.latitude  < #{mapBounds.Fe,jdbcType=NUMERIC}
-            AND mpt.latitude  > #{mapBounds.Ke,jdbcType=NUMERIC}
-		    and state>3
-			GROUP BY mpt.`id`
-            ]]>
 		</where>
 	</select>
+	<select id="selectOrganizationIds" parameterType="integer" resultType="integer">
+                call proc_organizationIds_GetByMonitorPointId(#{id,jdbcType=NUMERIC})
+	</select>
+	<select id="selectVersionsById" parameterType="integer" resultType="integer">
+			select version from device_version dve
+			right join device dev  on dve.id = dev.device_version_id
+			right join monitor_point mpt on mpt.id = dev.monitor_point_id
+			where mpt.id = #{id}  ORDER BY version DESC
+	</select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.8.0