|  |  |  | 
|---|
|  |  |  | <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | 
|---|
|  |  |  | <mapper namespace="com.moral.api.mapper.VersionMapper"> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!-- 通用查询映射结果 --> | 
|---|
|  |  |  | <resultMap id="BaseResultMap" type="com.moral.api.entity.Version"> | 
|---|
|  |  |  | <id column="id" property="id" /> | 
|---|
|  |  |  | <result column="name" property="name" /> | 
|---|
|  |  |  | <result column="create_time" property="createTime" /> | 
|---|
|  |  |  | <result column="update_time" property="updateTime" /> | 
|---|
|  |  |  | <result column="is_delete" property="isDelete" /> | 
|---|
|  |  |  | <result column="desc" property="desc" /> | 
|---|
|  |  |  | </resultMap> | 
|---|
|  |  |  | <!-- 通用查询映射结果 --> | 
|---|
|  |  |  | <resultMap id="BaseResultMap" type="com.moral.api.entity.Version"> | 
|---|
|  |  |  | <id column="id" property="id"/> | 
|---|
|  |  |  | <result column="name" property="name"/> | 
|---|
|  |  |  | <result column="create_time" property="createTime"/> | 
|---|
|  |  |  | <result column="update_time" property="updateTime"/> | 
|---|
|  |  |  | <result column="is_delete" property="isDelete"/> | 
|---|
|  |  |  | <result column="desc" property="desc"/> | 
|---|
|  |  |  | </resultMap> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--带有因子以及单位的查询map--> | 
|---|
|  |  |  | <resultMap id="VersionSensorUnitMap" type="com.moral.api.entity.Version"> | 
|---|
|  |  |  | <id property="id" column="id"></id> | 
|---|
|  |  |  | <result property="name" column="name"></result> | 
|---|
|  |  |  | <result property="desc" column="desc"></result> | 
|---|
|  |  |  | <result property="createTime" column="create_time"></result> | 
|---|
|  |  |  | <result property="updateTime" column="update_time"></result> | 
|---|
|  |  |  | <collection property="sensors" column="id" ofType="com.moral.api.entity.Sensor"> | 
|---|
|  |  |  | <id property="id" column="sid"></id> | 
|---|
|  |  |  | <result property="name" column="sname"></result> | 
|---|
|  |  |  | <result property="unitKey" column="dataKey"></result> | 
|---|
|  |  |  | <result property="code" column="code"></result> | 
|---|
|  |  |  | <result property="unit" column="dataValue"></result> | 
|---|
|  |  |  | <result property="upper" column="vupper"></result> | 
|---|
|  |  |  | <result property="lower" column="vlower"></result> | 
|---|
|  |  |  | </collection> | 
|---|
|  |  |  | </resultMap> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <select id="queryVersionsAndSensorUnitByIds" resultMap="VersionSensorUnitMap"> | 
|---|
|  |  |  | SELECT | 
|---|
|  |  |  | v.`id`,v.`name`,v.`desc`,v.`create_time`,v.`update_time`,s.`id` AS sid,s.`name` AS sname ,s.`code`,u.dataKey,u.dataValue,vsu.`upper` AS vupper ,vsu.`lower` AS vlower | 
|---|
|  |  |  | FROM | 
|---|
|  |  |  | `version` v | 
|---|
|  |  |  | LEFT JOIN | 
|---|
|  |  |  | version_sensor_unit vsu | 
|---|
|  |  |  | ON | 
|---|
|  |  |  | v.`id` = vsu.`version_id` AND vsu.`is_delete` = 0 | 
|---|
|  |  |  | LEFT JOIN | 
|---|
|  |  |  | sensor s | 
|---|
|  |  |  | ON | 
|---|
|  |  |  | s.`code` = vsu.`sensor_code` AND s.`is_delete` = 0 | 
|---|
|  |  |  | LEFT JOIN | 
|---|
|  |  |  | ( | 
|---|
|  |  |  | SELECT | 
|---|
|  |  |  | sdd.datakey,sdd.dataValue,sdd.is_delete | 
|---|
|  |  |  | FROM | 
|---|
|  |  |  | sys_dict_data sdd | 
|---|
|  |  |  | JOIN | 
|---|
|  |  |  | sys_dict_type sdt | 
|---|
|  |  |  | ON | 
|---|
|  |  |  | sdt.`name` = 'unit' AND sdt.`id` = sdd.`dict_type_id` AND sdt.`is_delete` = 0 | 
|---|
|  |  |  | WHERE | 
|---|
|  |  |  | sdd.`is_delete` = 0 | 
|---|
|  |  |  | ) u | 
|---|
|  |  |  | ON | 
|---|
|  |  |  | vsu.unit_key = u.dataKey AND u.is_delete = 0 | 
|---|
|  |  |  | WHERE | 
|---|
|  |  |  | v.`id` | 
|---|
|  |  |  | in | 
|---|
|  |  |  | <foreach collection="list" item="vid" open="(" separator="," close=")"> | 
|---|
|  |  |  | #{vid} | 
|---|
|  |  |  | </foreach> | 
|---|
|  |  |  | AND | 
|---|
|  |  |  | v.`is_delete` = 0 | 
|---|
|  |  |  | ORDER BY FIELD | 
|---|
|  |  |  | (v.`id`, | 
|---|
|  |  |  | <foreach collection="list" item="vid"  separator="," > | 
|---|
|  |  |  | #{vid} | 
|---|
|  |  |  | </foreach> | 
|---|
|  |  |  | ) | 
|---|
|  |  |  |  | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | </mapper> | 
|---|