From 6fe3c583389375f1b54f5c260ae8e2604c11f515 Mon Sep 17 00:00:00 2001
From: zhangnaisong <2434969829@qq.com>
Date: 星期二, 02 七月 2024 13:49:22 +0800
Subject: [PATCH] 电磁锁查询加入分页修改提交
---
ard-work/src/main/resources/mapper/alarmpoints/ArdAlarmpointsWellMapper.xml | 149 ++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 134 insertions(+), 15 deletions(-)
diff --git a/ard-work/src/main/resources/mapper/alarmpoints/ArdAlarmpointsWellMapper.xml b/ard-work/src/main/resources/mapper/alarmpoints/ArdAlarmpointsWellMapper.xml
index 8d14d35..65a9bc3 100644
--- a/ard-work/src/main/resources/mapper/alarmpoints/ArdAlarmpointsWellMapper.xml
+++ b/ard-work/src/main/resources/mapper/alarmpoints/ArdAlarmpointsWellMapper.xml
@@ -28,8 +28,12 @@
<result property="createTime" column="create_time"/>
<result property="updateBy" column="update_by"/>
<result property="updateTime" column="update_time"/>
- <result property="cameraId" column="camera_id"/>
+ <!-- 瀛愭煡璇紝鍏宠仈 ard_well_guide_camera 琛� -->
+ <collection property="ardWellGuideCameraList" ofType="java.util.List" select="getArdWellGuideCameraListByWellId" column="id"/>
</resultMap>
+ <select id="getArdWellGuideCameraListByWellId" resultType="ArdWellGuideCamera">
+ SELECT * FROM ard_well_guide_camera WHERE well_id = #{id}
+ </select>
<resultMap type="ArdAlarmpointsWell" id="wellResult">
<result property="id" column="id"/>
@@ -60,17 +64,42 @@
c.create_by,
c.create_time,
c.update_by,
- c.update_time,
- c.camera_id
+ c.update_time
from ard_alarmpoints_well c
left join sys_dept d on d.dept_id = c.dept_id
left join sys_user u on u.user_id = c.user_id
</sql>
+ <resultMap type="ArdAlarmpointsWell" id="ArdAlarmpointsWellOnlyResult">
+ <result property="id" column="id"/>
+ <result property="wellId" column="well_id"/>
+ <result property="wellNumber" column="well_number"/>
+ <result property="oilProduction" column="oil_production"/>
+ <result property="wellBlock" column="well_block"/>
+ <result property="productionDate" column="production_date"/>
+ <result property="displacementMode" column="displacement_mode"/>
+ <result property="surroundingEnvironment" column="surrounding_environment"/>
+ <result property="wellType" column="well_type"/>
+ <result property="installedLoad" column="installed_load"/>
+ <result property="meteringStation" column="metering_station"/>
+ <result property="transferStation" column="transfer_station"/>
+ <result property="dehydrationStation" column="dehydration_station"/>
+ <result property="runStatus" column="run_status"/>
+ <result property="longitude" column="longitude"/>
+ <result property="latitude" column="latitude"/>
+ <result property="altitude" column="altitude"/>
+ <result property="deptId" column="dept_id"/>
+ <result property="userId" column="user_id"/>
+ <result property="createBy" column="create_by"/>
+ <result property="createTime" column="create_time"/>
+ <result property="updateBy" column="update_by"/>
+ <result property="updateTime" column="update_time"/>
+ </resultMap>
+
<select id="selectArdAlarmpointsWellList" parameterType="ArdAlarmpointsWell" resultMap="ArdAlarmpointsWellResult">
<include refid="selectArdAlarmpointsWellVo"/>
<where>
- <if test="wellId != null and wellId != ''">and c.well_id = #{wellId}</if>
+ <if test="wellId != null and wellId != ''">and c.well_id like ('%${wellId}%')</if>
<if test="wellNumber != null and wellNumber != ''">and c.well_number = #{wellNumber}</if>
<if test="userId != null and userId != ''">and c.user_id = #{userId}</if>
<if test="deptId != null ">and (c.dept_id = #{deptId} OR c.dept_id IN ( SELECT t.dept_id FROM sys_dept t
@@ -94,7 +123,7 @@
<select id="selectArdAlarmpointsWellById" parameterType="String" resultMap="ArdAlarmpointsWellResult">
<include refid="selectArdAlarmpointsWellVo"/>
- where id = #{id}
+ where c.id = #{id}
</select>
<select id="selectArdAlarmpointsWellByWellId" parameterType="String" resultMap="ArdAlarmpointsWellResult">
<include refid="selectArdAlarmpointsWellVo"/>
@@ -126,7 +155,7 @@
<if test="createTime != null">create_time,</if>
<if test="updateBy != null">update_by,</if>
<if test="updateTime != null">update_time,</if>
- <if test="cameraId != null">camera_id,</if>
+
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">#{id},</if>
@@ -152,7 +181,6 @@
<if test="createTime != null">#{createTime},</if>
<if test="updateBy != null">#{updateBy},</if>
<if test="updateTime != null">#{updateTime},</if>
- <if test="cameraId != null">#{cameraId},</if>
</trim>
</insert>
@@ -181,11 +209,37 @@
<if test="createTime != null">create_time = #{createTime},</if>
<if test="updateBy != null">update_by = #{updateBy},</if>
<if test="updateTime != null">update_time = #{updateTime},</if>
- <if test="cameraId != null">camera_id = #{cameraId},</if>
</trim>
where id = #{id}
</update>
-
+ <update id="updateArdAlarmpointsWellByWellId" parameterType="ArdAlarmpointsWell">
+ update ard_alarmpoints_well
+ <trim prefix="SET" suffixOverrides=",">
+ <if test="wellId != null">well_id = #{wellId},</if>
+ <if test="wellNumber != null">well_number = #{wellNumber},</if>
+ <if test="oilProduction != null">oil_production = #{oilProduction},</if>
+ <if test="wellBlock != null">well_block = #{wellBlock},</if>
+ <if test="productionDate != null">production_date = #{productionDate},</if>
+ <if test="displacementMode != null">displacement_mode = #{displacementMode},</if>
+ <if test="surroundingEnvironment != null">surrounding_environment = #{surroundingEnvironment},</if>
+ <if test="wellType != null">well_type = #{wellType},</if>
+ <if test="installedLoad != null">installed_load = #{installedLoad},</if>
+ <if test="meteringStation != null">metering_station = #{meteringStation},</if>
+ <if test="transferStation != null">transfer_station = #{transferStation},</if>
+ <if test="dehydrationStation != null">dehydration_station = #{dehydrationStation},</if>
+ <if test="runStatus != null">run_status = #{runStatus},</if>
+ <if test="longitude != null">longitude = #{longitude},</if>
+ <if test="latitude != null">latitude = #{latitude},</if>
+ <if test="altitude != null">altitude = #{altitude},</if>
+ <if test="deptId != null">dept_id = #{deptId},</if>
+ <if test="userId != null">user_id = #{userId},</if>
+ <if test="createBy != null">create_by = #{createBy},</if>
+ <if test="createTime != null">create_time = #{createTime},</if>
+ <if test="updateBy != null">update_by = #{updateBy},</if>
+ <if test="updateTime != null">update_time = #{updateTime},</if>
+ </trim>
+ where well_id = #{wellId}
+ </update>
<delete id="deleteArdAlarmpointsWellById" parameterType="String">
delete
from ard_alarmpoints_well
@@ -198,14 +252,79 @@
#{id}
</foreach>
</delete>
- <select id="checkWellIdExists" resultType="boolean">
- SELECT COUNT(*)
+ <select id="checkWellIdExists" resultType="ArdAlarmpointsWell">
+ SELECT *
FROM ard_alarmpoints_well
- WHERE well_id = #{wellId}
+ WHERE well_id = #{wellId} limit 1
</select>
<select id="wellByPlanId" parameterType="String" resultMap="wellResult">
- select ard_app_patrolpoint.alarmpoints_id as id,ard_alarmpoints_well.well_id, ard_app_patrolpoint."type",ard_alarmpoints_well.longitude,ard_alarmpoints_well.latitude from ard_alarmpoints_well LEFT JOIN ard_app_patrolpoint on ard_app_patrolpoint.alarmpoints_id = ard_alarmpoints_well.id where ard_alarmpoints_well.id in (select alarmpoints_id from ard_app_patrolpoint where patrolplan_id = #{id})
- GROUP BY ard_app_patrolpoint.alarmpoints_id,ard_alarmpoints_well.well_id,ard_app_patrolpoint."type",ard_alarmpoints_well.longitude,ard_alarmpoints_well.latitude
+ select ard_app_patrolpoint.alarmpoints_id as id,
+ ard_alarmpoints_well.well_id,
+ ard_app_patrolpoint."type",
+ ard_alarmpoints_well.longitude,
+ ard_alarmpoints_well.latitude
+ from ard_alarmpoints_well
+ LEFT JOIN ard_app_patrolpoint on ard_app_patrolpoint.alarmpoints_id = ard_alarmpoints_well.id
+ where ard_alarmpoints_well.id in (select alarmpoints_id from ard_app_patrolpoint where patrolplan_id = #{id})
+ GROUP BY ard_app_patrolpoint.alarmpoints_id, ard_alarmpoints_well.well_id, ard_app_patrolpoint."type",
+ ard_alarmpoints_well.longitude, ard_alarmpoints_well.latitude
</select>
-</mapper>
\ No newline at end of file
+
+ <select id="wellListDept" parameterType="List"
+ resultType="com.ruoyi.alarmpoints.well.domain.ArdAlarmpointsWellDeptVo">
+ Select well.id,well.well_id,well.well_number,well.oil_production,well.well_block,well.production_date,
+ well.displacement_mode,well.surrounding_environment,well.well_type,well.installed_load,well.metering_station,
+ well.transfer_station,well.dehydration_station,well.run_status,well.longitude,well.latitude,well.altitude,well.dept_id,
+ dept.parent_id,dept.ancestors,dept.dept_name
+ from ard_alarmpoints_well well
+ left join sys_dept dept on well.dept_id = dept.dept_id
+ where well.dept_id in
+ <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
+ #{item}
+ </foreach>
+ </select>
+
+ <select id="getWellDataByPatrolplanIdAndPosition" resultMap="ArdAlarmpointsWellOnlyResult">
+ select aaw.* from ard_app_patrolplan aap
+ inner join ard_app_patrolpoint aap0 on aap.id = aap0.patrolplan_id
+ inner join ard_alarmpoints_well aaw on aap0.alarmpoints_id = aaw.id
+ where del is null and aap.id = #{patrolplanId}
+ and f_compute_distance(cast(#{longitude} as decimal),cast(#{latitude} as decimal),aaw.longitude,aaw.latitude)
+ <= (select cast(sc.config_value as decimal) from sys_config sc where sc.config_key = 'appAlarmPointsDistance')
+ order by f_compute_distance(cast(#{longitude} as decimal),cast(#{latitude} as decimal),aaw.longitude,aaw.latitude) desc limit 1 offset 0
+ </select>
+
+ <select id="getWellById" resultMap="ArdAlarmpointsWellOnlyResult">
+ select aaw.* from ard_alarmpoints_well aaw where aaw.id = #{id}
+ </select>
+
+
+ <select id="conditionList" resultType="com.ruoyi.alarmpoints.well.domain.ArdAlarmpointsWell">
+ Select * from ard_alarmpoints_well well
+ where WHERE well.well_id = #{wellId}
+ and well.dept_id in
+ <foreach item="deptList" collection="deptList" open="(" separator="," close=")">
+ #{deptList}
+ </foreach>
+ </select>
+
+ <select id="getArdAlarmpointsWellByDeptIdAndDistance" resultMap="ArdAlarmpointsWellOnlyResult">
+ select * from ard_alarmpoints_well aaw
+ where aaw.dept_id in (
+ with recursive rsd as (
+ select sd.dept_id from sys_dept sd where sd.dept_id = #{deptId}
+ union
+ select csd.dept_id from sys_dept csd inner join rsd on rsd.dept_id = csd.parent_id
+ )
+ select * from rsd) and f_compute_distance(aaw.longitude,aaw.latitude,cast(#{lonM} as numeric),cast(#{latM} as numeric)) <= (select max(t.distance) from (
+ select f_compute_distance(cast(#{lonM} as numeric),cast(#{latM} as numeric),cast(#{lonA} as numeric),cast(#{latA} as numeric)) as distance
+ union
+ select f_compute_distance(cast(#{lonM} as numeric),cast(#{latM} as numeric),cast(#{lonB} as numeric),cast(#{latB} as numeric)) as distance
+ union
+ select f_compute_distance(cast(#{lonM} as numeric),cast(#{latM} as numeric),cast(#{lonC} as numeric),cast(#{latC} as numeric)) as distance
+ union
+ select f_compute_distance(cast(#{lonM} as numeric),cast(#{latM} as numeric),cast(#{lonD} as numeric),cast(#{latD} as numeric)) as distance
+ )t)
+ </select>
+</mapper>
--
Gitblit v1.9.3