From 4450dd41e8d5828e5da4d277c86e54551a6b6c15 Mon Sep 17 00:00:00 2001 From: jinpengyong <jpy123456> Date: Thu, 16 Dec 2021 09:06:28 +0800 Subject: [PATCH] 设备新增,修改是工艺字段可以为多个,修改mapper,sql --- screen-manage/src/main/resources/mapper/DeviceMapper.xml | 227 ++++++++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 194 insertions(+), 33 deletions(-) diff --git a/screen-manage/src/main/resources/mapper/DeviceMapper.xml b/screen-manage/src/main/resources/mapper/DeviceMapper.xml index c4c9e00..8e24faa 100644 --- a/screen-manage/src/main/resources/mapper/DeviceMapper.xml +++ b/screen-manage/src/main/resources/mapper/DeviceMapper.xml @@ -14,6 +14,7 @@ <result column="operate_ids" property="operateIds"/> <result column="monitor_point_id" property="monitorPointId"/> <result column="organization_id" property="organizationId"/> + <result column="guid" property="guid"/> <result column="device_version_id" property="deviceVersionId"/> <result column="profession" property="profession"/> <result column="tech" property="tech"/> @@ -27,54 +28,214 @@ </resultMap> <resultMap id="resultMap" type="com.moral.api.pojo.vo.device.DeviceVO" extends="BaseResultMap"> - <result column="profession_name" property="professionName"/> + <!--������--> + <result column="tech_name" property="techName"/> + + <!--���������������--> + <result column="detector_name" property="detectorName"/> + + <!--���������--> + <result column="purchaser_name" property="purchaserName"/> + + <!--������--> <association property="organization" javaType="com.moral.api.entity.Organization"> <result column="org_id" property="id"/> <result column="org_name" property="name"/> </association> + + <!--������--> + <association property="monitorPoint" javaType="com.moral.api.entity.MonitorPoint"> + <result column="mp_id" property="id"/> + <result column="mp_name" property="name"/> + <result column="mp_area_code" property="areaCode"/> + <result column="mp_city_code" property="cityCode"/> + <result column="mp_province_code" property="provinceCode"/> + </association> + + <!--������������--> + <association property="govMonitorPoint" javaType="com.moral.api.entity.GovMonitorPoint"> + <result column="gmp_guid" property="guid"/> + <result column="gmp_name" property="name"/> + </association> + + <!--������--> + <association property="version" javaType="com.moral.api.entity.Version"> + <result column="version_id" property="id"/> + <result column="version_name" property="name"/> + </association> + <!--���������������--> <collection property="operators" ofType="com.moral.api.entity.ManageAccount"> - <id column="operate_id" property="id" jdbcType="INTEGER"/> + <result column="operate_id" property="id" jdbcType="INTEGER"/> <result column="operate_name" property="userName" jdbcType="VARCHAR"/> + </collection> + + <!--������--> + <collection property="professions" ofType="java.util.HashMap"> + <result column="profession_key" property="dataKey" jdbcType="INTEGER"/> + <result column="profession_value" property="dataValue" jdbcType="VARCHAR"/> </collection> </resultMap> - <select id="selectAllDeviceInfo" resultMap="resultMap"> - SELECT d.id, - d.`name`, - d.mac, - d.address, - d.longitude, - d.latitude, - d.operate_ids, - d.organization_id, - d.monitor_point_id, - d.organization_id, - d.device_version_id, - d.profession profession, - o.id org_id, - o.`name` org_name, - ma.id operate_id, - ma.user_name operate_name, - sd.dataValue profession_name - FROM `device` d - LEFT JOIN `organization` o - ON d.organization_id = o.id - LEFT JOIN `manage_account` ma - ON FIND_IN_SET( - ma.id, (SELECT operate_ids FROM device) - ) - LEFT JOIN + <resultMap id="queryDeviceUnitAlarmInfoMap" type="com.moral.api.entity.Device"> + <id column="d.id" property="id"/> + <result column="d.name" property="name"/> + <result column="d.mac" property="mac"/> + <result column="d.address" property="address"/> + <result column="d.longitude" property="longitude"/> + <result column="d.latitude" property="latitude"/> + <result column="d.operate_ids" property="operateIds"/> + <result column="d.monitor_point_id" property="monitorPointId"/> + <result column="d.organization_id" property="organizationId"/> + <result column="oua.version_id" property="deviceVersionId"/> + <result column="d.profession" property="profession"/> + <result column="d.tech" property="tech"/> + <result column="d.detector" property="detector"/> + <result column="d.purchaser" property="purchaser"/> + <result column="d.extend" property="extend" javaType="String" /> + <association property="version" column="d.device_version_id" javaType="com.moral.api.entity.Version"> + <id column="v.id" property="id"></id> + <result column="v.name" property="name"></result> + <collection column="d.device_version_id" property="sensors" ofType="com.moral.api.entity.Sensor"> + <result column="oua.sensor_code" property="code" ></result> + <result column="oua.unit_key" property="unitKey"></result> + <result column="oua.show_unit_key" property="showUnitKey"></result> + <result column="oua.alarm_level" property="alarmLevel" javaType="String" ></result> + </collection> + </association> + </resultMap> + + <select id="selectDeviceInfoById" resultMap="resultMap"> + SELECT + d.id, + d.`name`, + d.mac, + d.address, + d.longitude, + d.latitude, + d.operate_ids, + d.organization_id, + d.monitor_point_id, + d.device_version_id, + d.profession, + d.tech, + d.detector, + d.purchaser, + d.create_time, + d.install_time, + d.extend, + o.id org_id, + o.`name` org_name, + mp.id mp_id, + mp.`name` mp_name, + mp.area_code mp_area_code, + mp.city_code mp_city_code, + mp.province_code mp_province_code, + gmp.guid gmp_guid, + gmp.name gmp_name, + ma.id operate_id, + v.id version_id, + v.`name` version_name, + ma.user_name operate_name, + profession.dataKey profession_key, + profession.dataValue profession_value, + tech.dataValue tech_name, + detector.dataValue detector_name, + purchaser.dataValue purchaser_name + FROM device d + LEFT JOIN version v + on d.device_version_id=v.id + LEFT JOIN `organization` o + ON d.organization_id = o.id + LEFT JOIN `monitor_point` mp + ON mp.id = d.monitor_point_id + LEFT JOIN `gov_monitor_point` gmp + ON gmp.guid = d.guid + LEFT JOIN `manage_account` ma + ON FIND_IN_SET + ( + ma.id, (SELECT operate_ids FROM device WHERE id = d.id) + ) + LEFT JOIN ( SELECT sdt.`name`, sdd.dataKey, sdd.dataValue FROM sys_dict_type sdt, sys_dict_data sdd WHERE sdt.id = sdd.dict_type_id - ) sd - on sd.`name` = 'profession' - and d.profession = sd.dataKey - AND d.is_delete = 0 - ${ew.customSqlSegment} + AND sdt.`name` = 'profession' + ) profession + ON FIND_IN_SET + ( + profession.dataKey, (SELECT profession FROM device WHERE id = d.id) + ) + + LEFT JOIN + ( + SELECT sdt.`name`, sdd.dataKey, sdd.dataValue + FROM sys_dict_type sdt, + sys_dict_data sdd + WHERE sdt.id = sdd.dict_type_id + AND sdt.`name` = 'tech' + ) tech + ON d.tech = tech.dataKey + + LEFT JOIN + ( + SELECT sdt.`name`, sdd.dataKey, sdd.dataValue + FROM sys_dict_type sdt, + sys_dict_data sdd + WHERE sdt.id = sdd.dict_type_id + AND sdt.`name` = 'detector' + ) detector + ON d.detector = detector.dataKey + + LEFT JOIN + ( + SELECT sdt.`name`, sdd.dataKey, sdd.dataValue + FROM sys_dict_type sdt, + sys_dict_data sdd + WHERE sdt.id = sdd.dict_type_id + AND sdt.`name` = 'purchaser' + ) purchaser + ON d.purchaser = purchaser.dataKey + WHERE d.id = #{deviceId} + </select> + + <select id="queryDeviceUnitAlarmInfo" resultMap="queryDeviceUnitAlarmInfoMap"> + select + d.id as `d.id`, + d.mac as `d.mac`, + d.name as `d.name`, + d.address as `d.address`, + d.longitude as `d.longitude`, + d.latitude as `d.latitude`, + d.operate_ids as `d.operate_ids`, + d.monitor_point_id as `d.monitor_point_id`, + d.organization_id as `d.organization_id`, + d.profession as `d.profession`, + d.tech as `d.tech`, + d.detector as `d.detector`, + d.purchaser as `d.purchaser`, + d.extend as `d.extend`, + oua.version_id as `oua.version_id`, + oua.sensor_code as `oua.sensor_code`, + oua.unit_key as `oua.unit_key`, + oua.show_unit_key as `oua.show_unit_key`, + oua.alarm_level as `oua.alarm_level`, + v.id as `v.id`, + v.name as `v.name` + from + device d + join + version v + on + v.`id` = d.`device_version_id` and v.`is_delete` = 0 + join + organization_unit_alarm oua + on + d.`device_version_id` = oua.`version_id` and d.`organization_id` = oua.`organization_id` and oua.`is_delete` = 0 + where + d.`is_delete` = 0; </select> -- Gitblit v1.8.0