From bc72c98cd11519b811829de5ec59b8a021e75946 Mon Sep 17 00:00:00 2001
From: ZhuDongming <773644075@qq.com>
Date: Thu, 25 Jul 2019 14:16:18 +0800
Subject: [PATCH] 查询无人机在时间段内sensor值的Mapper接口
---
src/main/resources/mapper/SensorMapper.xml | 131 +++++++++++++++++++++++++++++++++++++++++++
1 files changed, 131 insertions(+), 0 deletions(-)
diff --git a/src/main/resources/mapper/SensorMapper.xml b/src/main/resources/mapper/SensorMapper.xml
new file mode 100644
index 0000000..ecfc2a0
--- /dev/null
+++ b/src/main/resources/mapper/SensorMapper.xml
@@ -0,0 +1,131 @@
+<?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.moral.mapper.SensorMapper" >
+ <resultMap id="BaseResultMap" type="com.moral.entity.Sensor" >
+ <id column="id" property="id" jdbcType="INTEGER" />
+ <result column="name" property="name" jdbcType="VARCHAR" />
+ <result column="sensor_key" property="sensorKey" jdbcType="VARCHAR" />
+ <result column="upper" property="upper" jdbcType="DOUBLE" />
+ <result column="lower" property="lower" jdbcType="DOUBLE" />
+ <result column="unit" property="unit" jdbcType="VARCHAR" />
+ <result column="description" property="description" jdbcType="VARCHAR" />
+ </resultMap>
+ <sql id="Base_Column_List" >
+ id, name, sensor_key, upper, lower, unit, description
+ </sql>
+ <select id="selectByVersionId" resultMap="BaseResultMap" parameterType="java.lang.Integer" >
+ select
+ <include refid="Base_Column_List" />
+ from sensor sen
+ where EXISTS
+ ( select id
+ from device_version_sensor dvs
+ where sen.id = dvs.sensor_id and dvs.device_version_id = #{deviceVersionId,jdbcType=INTEGER}
+ )
+ </select>
+ <select id="selectByVersionNo" resultMap="BaseResultMap" parameterType="java.lang.Integer" >
+ select
+ <include refid="Base_Column_List" />
+ from sensor sen
+ where EXISTS
+ ( select id
+ from device_version_sensor dvs
+ where sen.id = dvs.sensor_id
+ and dvs.device_version_id in
+ (
+ select dev.id from device_version dev
+ where dev.version = #{deviceVersionNo,jdbcType=INTEGER}
+ )
+ )
+ </select>
+ <select id="selectByVersionNos" resultMap="BaseResultMap" parameterType="java.util.List" >
+ select
+ <include refid="Base_Column_List" />
+ from sensor sen
+ where EXISTS
+ ( select id
+ from device_version_sensor dvs
+ where sen.id = dvs.sensor_id
+ and dvs.device_version_id in
+ (
+ select dev.id from device_version dev
+ <where>
+ 1 > 1
+ <if test="versionNos!=null and versionNos.size() > 0">
+ or dev.version in
+ <foreach collection="versionNos" item="versionNo" open="(" close=")" separator=",">
+ #{versionNo,jdbcType=INTEGER}
+ </foreach>
+ </if>
+ </where>
+ )
+ )
+ </select>
+
+ <select id="getSensorsByDeviceVersionId" resultType="java.util.Map">
+ SELECT
+ s.*
+ FROM
+ device_version_sensor dvs,
+ sensor s
+ WHERE
+ dvs.sensor_id = s.id
+ AND dvs.device_version_id = #{deviceVersionId}
+ </select>
+
+ <select id="getSensorsByCriteria" resultMap="BaseResultMap">
+ SELECT
+ DISTINCT s.*
+ FROM
+ sensor s,
+ device_version_sensor dvs,
+ device d,
+ monitor_point mp
+ WHERE
+ s.id = dvs.sensor_id
+ AND dvs.device_version_id = d.device_version_id
+ AND d.monitor_point_id = mp.id
+ <if test="provinceCode != null">
+ AND mp.province_code = #{provinceCode}
+ </if>
+ <if test="cityCode != null">
+ AND mp.city_code = #{cityCode}
+ </if>
+ <if test="areaCode != null">
+ AND mp.area_code = #{areaCode}
+ </if>
+ <if test="monitorPointId != null">
+ AND mp.id = #{monitorPointId}
+ </if>
+ <if test="mac != null">
+ AND d.mac = #{mac}
+ </if>
+ <if test="professionId != null">
+ AND d.profession_id = #{professionId}
+ </if>
+ </select>
+ <select id="selectByOrgId" resultMap="BaseResultMap">
+ select * from sensor sen where sen.id in
+ (
+ select DISTINCT sensor_id from device_version_sensor dvs
+ where dvs.device_version_id
+ in (
+ select DISTINCT device_version_id from device dev where
+ EXISTS (select * from monitor_point mpt where
+ mpt.organization_id = #{organizationId,jdbcType=INTEGER} and mpt.id = dev.monitor_point_id
+ OR EXISTS (
+ SELECT * from dictionary_data
+ where dict_data_key = 'auth_config_super_org' and dict_data_value = #{organizationId,jdbcType=INTEGER}
+ )
+ )
+ )
+ )
+ order by sen.id asc
+ </select>
+
+ <select id="getSensorBySensorKey" resultType="java.util.Map">
+ SELECT *
+ FROM sensor
+ WHERE sensor_key = #{sensor_key}
+ </select>
+</mapper>
\ No newline at end of file
--
Gitblit v1.8.0