From 7517bbc0a9a18dbf60d976dd10827070f7334e92 Mon Sep 17 00:00:00 2001
From: zhubaomin <zhubaomin>
Date: 星期二, 12 十一月 2024 15:19:30 +0800
Subject: [PATCH] 优化获取未关阀记录接口,改用命令日志时间判断,增强稳定性
---
pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/issue/qo/QoIssueReport.java | 44 +++++++
pipIrr-platform/pipIrr-global/src/main/resources/mapper/OpeReportReplyMapper.xml | 102 +++++++++++++++++
pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmCommandHistoryMapper.xml | 7
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoOp/OpeReportReplyMapper.java | 27 ++++
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voOp/VoIssueReport.java | 81 +++++++++++++
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoOp/OpeReportReply.java | 61 ++++++++++
6 files changed, 319 insertions(+), 3 deletions(-)
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoOp/OpeReportReplyMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoOp/OpeReportReplyMapper.java
new file mode 100644
index 0000000..2617f96
--- /dev/null
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoOp/OpeReportReplyMapper.java
@@ -0,0 +1,27 @@
+package com.dy.pipIrrGlobal.daoOp;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.dy.pipIrrGlobal.pojoOp.OpeReportReply;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * @author ZhuBaoMin
+ * @date 2024-11-12 14:36
+ * @LastEditTime 2024-11-12 14:36
+ * @Description
+ */
+
+@Mapper
+public interface OpeReportReplyMapper extends BaseMapper<OpeReportReply> {
+ int deleteByPrimaryKey(Long id);
+
+ int insert(OpeReportReply record);
+
+ int insertSelective(OpeReportReply record);
+
+ OpeReportReply selectByPrimaryKey(Long id);
+
+ int updateByPrimaryKeySelective(OpeReportReply record);
+
+ int updateByPrimaryKey(OpeReportReply record);
+}
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoOp/OpeReportReply.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoOp/OpeReportReply.java
new file mode 100644
index 0000000..fdd2fde
--- /dev/null
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoOp/OpeReportReply.java
@@ -0,0 +1,61 @@
+package com.dy.pipIrrGlobal.pojoOp;
+
+import com.alibaba.fastjson2.annotation.JSONField;
+import com.alibaba.fastjson2.writer.ObjectWriterImplToString;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.dy.common.po.BaseEntity;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.*;
+
+import java.util.Date;
+
+/**
+ * @author ZhuBaoMin
+ * @date 2024-11-12 14:36
+ * @LastEditTime 2024-11-12 14:36
+ * @Description 闂涓婃姤鍥炲瀹炰綋绫�
+ */
+
+@TableName(value="ope_report_reply", autoResultMap = true)
+@Data
+@Builder
+@ToString
+@NoArgsConstructor
+@AllArgsConstructor
+public class OpeReportReply implements BaseEntity {
+ public static final long serialVersionUID = 202411121439001L;
+
+
+ /**
+ * 涓婚敭
+ */
+ @JSONField(serializeUsing= ObjectWriterImplToString.class)
+ @TableId(type = IdType.INPUT)
+ private Long id;
+
+ /**
+ * 闂涓婃姤ID
+ */
+ @JSONField(serializeUsing= ObjectWriterImplToString.class)
+ private Long reportId;
+
+ /**
+ * 鍥炲鍐呭
+ */
+ private String replyContent;
+
+ /**
+ * 鍥炲鏃堕棿
+ */
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date replyTime;
+
+ /**
+ * 鍥炲浜篒D
+ */
+ @JSONField(serializeUsing= ObjectWriterImplToString.class)
+ private Long replierId;
+
+}
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voOp/VoIssueReport.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voOp/VoIssueReport.java
new file mode 100644
index 0000000..d4ccf4b
--- /dev/null
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voOp/VoIssueReport.java
@@ -0,0 +1,81 @@
+package com.dy.pipIrrGlobal.voOp;
+
+import com.alibaba.fastjson2.annotation.JSONField;
+import com.alibaba.fastjson2.writer.ObjectWriterImplToString;
+import com.dy.common.po.BaseEntity;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * @author ZhuBaoMin
+ * @date 2024-11-12 14:46
+ * @LastEditTime 2024-11-12 14:46
+ * @Description 宸℃鍛橀棶棰樹笂鎶ヨ鍥惧璞�
+ */
+
+@Data
+@JsonPropertyOrder({"issueReportId", "inspectorName", "phone", "reportTime", "content", "images", "audios", "videos", "replyTime", "stateId", "state"})
+public class VoIssueReport implements BaseEntity {
+ private static final long serialVersionUID = 202411121448001L;
+
+ /**
+ * 宸℃鍛橀棶棰樹笂鎶D
+ */
+ @JSONField(serializeUsing= ObjectWriterImplToString.class)
+ private Long issueReportId;
+
+ /**
+ * 宸℃鍛樺鍚�
+ */
+ private String inspectorName;
+
+ /**
+ * 鑱旂郴鐢佃瘽
+ */
+ private String phone;
+
+ /**
+ * 涓婃姤鏃堕棿
+ */
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date reportTime;
+
+ /**
+ * 涓婃姤鍐呭
+ */
+ private String content;
+
+ /**
+ * 鐓х墖鍒楄〃
+ */
+ private String images;
+
+ /**
+ * 闊抽鍒楄〃
+ */
+ private String audios;
+
+ /**
+ * 瑙嗛鍒楄〃
+ */
+ private String videos;
+
+ /**
+ * 涓婃姤鍥炲鏃堕棿
+ */
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date replyTime;
+
+ /**
+ * 鐘舵�佸��
+ */
+ private Integer stateId;
+
+ /**
+ * 鐘舵�佹弿杩�
+ */
+ private String state;
+}
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/OpeReportReplyMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/OpeReportReplyMapper.xml
new file mode 100644
index 0000000..355f48d
--- /dev/null
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/OpeReportReplyMapper.xml
@@ -0,0 +1,102 @@
+<?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.dy.pipIrrGlobal.daoOp.OpeReportReplyMapper">
+ <resultMap id="BaseResultMap" type="com.dy.pipIrrGlobal.pojoOp.OpeReportReply">
+ <!--@mbg.generated-->
+ <!--@Table ope_report_reply-->
+ <id column="id" jdbcType="BIGINT" property="id" />
+ <result column="report_id" jdbcType="BIGINT" property="reportId" />
+ <result column="reply_content" jdbcType="VARCHAR" property="replyContent" />
+ <result column="reply_time" jdbcType="TIMESTAMP" property="replyTime" />
+ <result column="replier_id" jdbcType="BIGINT" property="replierId" />
+ </resultMap>
+ <sql id="Base_Column_List">
+ <!--@mbg.generated-->
+ id, report_id, reply_content, reply_time, replier_id
+ </sql>
+ <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
+ <!--@mbg.generated-->
+ select
+ <include refid="Base_Column_List" />
+ from ope_report_reply
+ where id = #{id,jdbcType=BIGINT}
+ </select>
+ <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
+ <!--@mbg.generated-->
+ delete from ope_report_reply
+ where id = #{id,jdbcType=BIGINT}
+ </delete>
+ <insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoOp.OpeReportReply">
+ <!--@mbg.generated-->
+ insert into ope_report_reply (id, report_id, reply_content,
+ reply_time, replier_id)
+ values (#{id,jdbcType=BIGINT}, #{reportId,jdbcType=BIGINT}, #{replyContent,jdbcType=VARCHAR},
+ #{replyTime,jdbcType=TIMESTAMP}, #{replierId,jdbcType=BIGINT})
+ </insert>
+ <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoOp.OpeReportReply">
+ <!--@mbg.generated-->
+ insert into ope_report_reply
+ <trim prefix="(" suffix=")" suffixOverrides=",">
+ <if test="id != null">
+ id,
+ </if>
+ <if test="reportId != null">
+ report_id,
+ </if>
+ <if test="replyContent != null">
+ reply_content,
+ </if>
+ <if test="replyTime != null">
+ reply_time,
+ </if>
+ <if test="replierId != null">
+ replier_id,
+ </if>
+ </trim>
+ <trim prefix="values (" suffix=")" suffixOverrides=",">
+ <if test="id != null">
+ #{id,jdbcType=BIGINT},
+ </if>
+ <if test="reportId != null">
+ #{reportId,jdbcType=BIGINT},
+ </if>
+ <if test="replyContent != null">
+ #{replyContent,jdbcType=VARCHAR},
+ </if>
+ <if test="replyTime != null">
+ #{replyTime,jdbcType=TIMESTAMP},
+ </if>
+ <if test="replierId != null">
+ #{replierId,jdbcType=BIGINT},
+ </if>
+ </trim>
+ </insert>
+ <update id="updateByPrimaryKeySelective" parameterType="com.dy.pipIrrGlobal.pojoOp.OpeReportReply">
+ <!--@mbg.generated-->
+ update ope_report_reply
+ <set>
+ <if test="reportId != null">
+ report_id = #{reportId,jdbcType=BIGINT},
+ </if>
+ <if test="replyContent != null">
+ reply_content = #{replyContent,jdbcType=VARCHAR},
+ </if>
+ <if test="replyTime != null">
+ reply_time = #{replyTime,jdbcType=TIMESTAMP},
+ </if>
+ <if test="replierId != null">
+ replier_id = #{replierId,jdbcType=BIGINT},
+ </if>
+ </set>
+ where id = #{id,jdbcType=BIGINT}
+ </update>
+ <update id="updateByPrimaryKey" parameterType="com.dy.pipIrrGlobal.pojoOp.OpeReportReply">
+ <!--@mbg.generated-->
+ update ope_report_reply
+ set report_id = #{reportId,jdbcType=BIGINT},
+ reply_content = #{replyContent,jdbcType=VARCHAR},
+ reply_time = #{replyTime,jdbcType=TIMESTAMP},
+ replier_id = #{replierId,jdbcType=BIGINT}
+ where id = #{id,jdbcType=BIGINT}
+ </update>
+</mapper>
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmCommandHistoryMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmCommandHistoryMapper.xml
index 4e36ac2..83c420b 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmCommandHistoryMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmCommandHistoryMapper.xml
@@ -216,16 +216,17 @@
END AS planned,
com.send_time AS sendTime,
- <!--鍚屽崱銆佸悓璁惧鐨勬渶鍚庝竴娆″伐浣滄姤鐨勬椂闂村拰鐬椂娴侀噺锛屽伐浣滄姤鏃堕棿蹇呴』鏅氫簬鍚屽崱銆佸悓璁惧鏈�鍚庝竴娆″紑闃�璁板綍鐨勫紑闃�鏃堕棿-->
(SELECT dt FROM rm_work_report_last
WHERE rtu_addr = com.rtu_addr AND ic_card_no = com.param ->> '$.icCardNo'
- AND dt > (SELECT op_dt FROM rm_open_close_valve_last WHERE rtu_addr = com.rtu_addr AND op_ic_card_no = com.param ->> '$.icCardNo' ORDER BY op_dt DESC LIMIT 1)
+ <!--AND dt > (SELECT op_dt FROM rm_open_close_valve_last WHERE rtu_addr = com.rtu_addr AND op_ic_card_no = com.param ->> '$.icCardNo' ORDER BY op_dt DESC LIMIT 1)-->
+ AND dt > com.send_time
ORDER BY dt DESC
LIMIT 1) AS dt,
(SELECT water_instant FROM rm_work_report_last
WHERE rtu_addr = com.rtu_addr AND ic_card_no = com.param ->> '$.icCardNo'
- AND dt > (SELECT op_dt FROM rm_open_close_valve_last WHERE rtu_addr = com.rtu_addr AND op_ic_card_no = com.param ->> '$.icCardNo' ORDER BY op_dt DESC LIMIT 1)
+ <!--AND dt > (SELECT op_dt FROM rm_open_close_valve_last WHERE rtu_addr = com.rtu_addr AND op_ic_card_no = com.param ->> '$.icCardNo' ORDER BY op_dt DESC LIMIT 1)-->
+ AND dt > com.send_time
ORDER BY dt DESC
LIMIT 1) AS waterInstant
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/issue/qo/QoIssueReport.java b/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/issue/qo/QoIssueReport.java
new file mode 100644
index 0000000..943592e
--- /dev/null
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/issue/qo/QoIssueReport.java
@@ -0,0 +1,44 @@
+package com.dy.pipIrrApp.issue.qo;
+
+import com.dy.common.webUtil.QueryConditionVo;
+import lombok.Data;
+
+/**
+ * @author ZhuBaoMin
+ * @date 2024-11-12 14:43
+ * @LastEditTime 2024-11-12 14:43
+ * @Description 宸℃鍛橀棶棰樹笂鎶ユ煡璇㈠璞�
+ */
+
+@Data
+public class QoIssueReport extends QueryConditionVo {
+ /**
+ * 宸℃鍛業D
+ */
+ private Long inspectorId;
+
+ /**
+ * 宸℃鍛樺鍚�
+ */
+ private String inspectorName;
+
+ /**
+ * 涓婃姤鍐呭
+ */
+ private String content;
+
+ /**
+ * 鏌ヨ寮�濮嬫椂闂�
+ */
+ private String timeStart;
+
+ /**
+ * 鏌ヨ缁撴潫鏃堕棿
+ */
+ private String timeStop;
+
+ /**
+ * 鐘舵��
+ */
+ private Integer state;
+}
--
Gitblit v1.8.0