From 86bba1b6323d5ae0340371ebfb0bc91271068c7e Mon Sep 17 00:00:00 2001
From: zhubaomin <zhubaomin>
Date: 星期二, 12 十一月 2024 15:37:07 +0800
Subject: [PATCH] 获取巡检员问题上报记录接口
---
pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/issue/IssueSv.java | 39 +++++++++++--
pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/issue/IssueCtrl.java | 25 +++++++-
pipIrr-platform/pipIrr-global/src/main/resources/application-global.yml | 4
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoOp/OpeIssueReportMapper.java | 18 ++++++
pipIrr-platform/pipIrr-global/src/main/resources/mapper/OpeIssueReportMapper.xml | 82 +++++++++++++++++++++++++++
5 files changed, 156 insertions(+), 12 deletions(-)
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoOp/OpeIssueReportMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoOp/OpeIssueReportMapper.java
index dde252e..fe94e31 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoOp/OpeIssueReportMapper.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoOp/OpeIssueReportMapper.java
@@ -2,7 +2,11 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.dy.pipIrrGlobal.pojoOp.OpeIssueReport;
+import com.dy.pipIrrGlobal.voOp.VoIssueReport;
import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+import java.util.Map;
/**
* @author ZhuBaoMin
@@ -24,4 +28,18 @@
int updateByPrimaryKeySelective(OpeIssueReport record);
int updateByPrimaryKey(OpeIssueReport record);
+
+ /**
+ * 鏍规嵁鎸囧畾鏉′欢鑾峰彇宸℃鍛橀棶棰樹笂鎶ユ暟閲�
+ * @param params
+ * @return
+ */
+ Long getIssueReportsCount(Map<?, ?> params);
+
+ /**
+ * 鏍规嵁鎸囧畾鏉′欢鑾峰彇宸℃鍛橀棶棰樹笂鎶�
+ * @param params
+ * @return
+ */
+ List<VoIssueReport> getIssueReports(Map<?, ?> params);
}
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/application-global.yml b/pipIrr-platform/pipIrr-global/src/main/resources/application-global.yml
index c3e6b55..5e8b483 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/application-global.yml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/application-global.yml
@@ -77,7 +77,7 @@
pipIrr:
global:
- dev: true #鏄惁寮�鍙戦樁娈碉紝true鎴杅alse
+ dev: false #鏄惁寮�鍙戦樁娈碉紝true鎴杅alse
dsName: ym #寮�鍙戦樁娈碉紝璁剧疆涓存椂鐨勬暟鎹簱鍚嶇О
nginx:
webPort: 54321
@@ -329,7 +329,7 @@
#鐩戞祴鎺у埗妯″潡鍥炶皟鍦板潃
rtuCallbackUrl_rm: "http://127.0.0.1:8081/remote/comRes/receive"
#rtu杩滅▼鍗囩骇妯″潡鍥炶皟鍦板潃
- ugCallbackUrl_rm: "http://127.0.0.1:8081/remote/rtuUpgradeStateReceiver/receive
+ ugCallbackUrl_rm: "http://127.0.0.1:8081/remote/rtuUpgradeStateReceiver/receive"
#寰俊灏忕▼搴忓洖璋冨湴鍧�
rtuCallbackUrl_wx: "http://127.0.0.1:8087/wx/comRes/receive"
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/OpeIssueReportMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/OpeIssueReportMapper.xml
index 8dedb69..e3609d8 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/OpeIssueReportMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/OpeIssueReportMapper.xml
@@ -170,4 +170,86 @@
`state` = #{state,jdbcType=TINYINT}
where id = #{id,jdbcType=BIGINT}
</update>
+
+ <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇宸℃鍛橀棶棰樹笂鎶ユ暟閲�-->
+ <select id="getIssueReportsCount" resultType="java.lang.Long">
+ SELECT COUNT(*) AS recordCount
+ FROM ope_issue_report rpt
+ LEFT JOIN ba_user us ON us.id = rpt.inspector_id
+ LEFT JOIN ope_report_reply rpy ON rpy.report_id = rpt.id
+ <where>
+ AND rpt.state != 3
+
+ <if test="inspectorId != null">
+ AND rpt.inspector_id = #{inspectorId}
+ </if>
+
+ <if test="inspectorName != null and inspectorName != ''">
+ AND us.name like CONCAT('%', #{inspectorName}, '%')
+ </if>
+
+ <if test="content != null and content != ''">
+ AND rpt.content like CONCAT('%', #{content}, '%')
+ </if>
+
+ <if test="timeStart != null and timeStop != null ">
+ AND rpt.report_time BETWEEN #{timeStart} AND #{timeStop}
+ </if>
+
+ <if test="state != null">
+ AND rpt.state = #{state}
+ </if>
+ </where>
+ </select>
+
+ <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇宸℃鍛橀棶棰樹笂鎶�-->
+ <select id="getIssueReports" resultType="com.dy.pipIrrGlobal.voOp.VoIssueReport">
+ SELECT
+ rpt.id AS issueReportId,
+ us.name AS inspectorName,
+ rpt.phone,
+ rpt.report_time AS reportTime,
+ rpt.content,
+ rpt.images,
+ rpt.audios,
+ rpt.videos,
+ rpy.reply_time AS replyTime,
+ rpt.state AS stateId,
+ CASE
+ WHEN rpt.state = 1 THEN '鏈彈鐞�'
+ WHEN rpt.state = 2 THEN '宸插彈鐞�'
+ END AS state
+ FROM ope_issue_report rpt
+ LEFT JOIN ba_user us ON us.id = rpt.inspector_id
+ LEFT JOIN ope_report_reply rpy ON rpy.report_id = rpt.id
+ <where>
+ AND rpt.state != 3
+
+ <if test="inspectorId != null">
+ AND rpt.inspector_id = #{inspectorId}
+ </if>
+
+ <if test="inspectorName != null and inspectorName != ''">
+ AND us.name like CONCAT('%', #{inspectorName}, '%')
+ </if>
+
+ <if test="content != null and content != ''">
+ AND rpt.content like CONCAT('%', #{content}, '%')
+ </if>
+
+ <if test="timeStart != null and timeStop != null ">
+ AND rpt.report_time BETWEEN #{timeStart} AND #{timeStop}
+ </if>
+
+ <if test="state != null">
+ AND rpt.state = #{state}
+ </if>
+ </where>
+ ORDER BY rpt.report_time DESC
+ <trim prefix="limit ">
+ <if test="start != null and count != null">
+ #{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER}
+ </if>
+ </trim>
+ </select>
</mapper>
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/issue/IssueCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/issue/IssueCtrl.java
index 9fb6484..ba118b6 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/issue/IssueCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/issue/IssueCtrl.java
@@ -3,17 +3,18 @@
import com.dy.common.aop.SsoAop;
import com.dy.common.webUtil.BaseResponse;
import com.dy.common.webUtil.BaseResponseUtils;
+import com.dy.common.webUtil.QueryResultVo;
+import com.dy.pipIrrApp.issue.qo.QoIssueReport;
import com.dy.pipIrrGlobal.pojoOp.OpeIssueReport;
+import com.dy.pipIrrGlobal.voOp.VoIssueReport;
import jakarta.validation.Valid;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.BindingResult;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
+import java.util.List;
import java.util.Objects;
/**
@@ -52,4 +53,20 @@
return BaseResponseUtils.buildSuccess(true) ;
}
+ /**
+ * 鑾峰彇宸℃鍛橀棶棰樹笂鎶ヨ褰�
+ * @param vo
+ * @return
+ */
+ @GetMapping(path = "/getIssueReports")
+ public BaseResponse<QueryResultVo<List<VoIssueReport>>> getIssueReports(QoIssueReport vo) {
+ try {
+ QueryResultVo<List<VoIssueReport>> res = issueSv.getIssueReports(vo);
+ return BaseResponseUtils.buildSuccess(res);
+ } catch (Exception e) {
+ log.error("鑾峰彇宸℃鍛橀棶棰樹笂鎶ヨ褰曞紓甯�", e);
+ return BaseResponseUtils.buildException(e.getMessage());
+ }
+ }
+
}
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/issue/IssueSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/issue/IssueSv.java
index 36f7867..a9c49ba 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/issue/IssueSv.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/issue/IssueSv.java
@@ -1,12 +1,18 @@
package com.dy.pipIrrApp.issue;
+import com.dy.common.webUtil.QueryResultVo;
+import com.dy.pipIrrApp.issue.qo.QoIssueReport;
import com.dy.pipIrrGlobal.daoOp.OpeIssueReportMapper;
import com.dy.pipIrrGlobal.pojoOp.OpeIssueReport;
+import com.dy.pipIrrGlobal.voOp.VoIssueReport;
import lombok.extern.slf4j.Slf4j;
+import org.apache.dubbo.common.utils.PojoUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Date;
+import java.util.List;
+import java.util.Map;
/**
* @author ZhuBaoMin
@@ -39,13 +45,34 @@
}
/**
- * 娣诲姞宸℃鍛橀棶棰樹笂鎶ヤ俊鎭�
- * @param po
+ * 鏍规嵁鏉′欢鑾峰彇宸℃鍛橀棶棰樹笂鎶ヨ褰�
+ * @param queryVo
* @return
*/
- //public Long insertIssueReport(OpeIssueReport po) {
- // opeIssueReportMapper.insert(po);
- // return po.getId();
- //}
+ public QueryResultVo<List<VoIssueReport>> getIssueReports(QoIssueReport queryVo) {
+ //瀹屽杽鏌ヨ鍏呭�艰褰曠殑璧锋鏃堕棿
+ String timeStart = queryVo.getTimeStart();
+ String timeStop = queryVo.getTimeStop();
+ if (timeStart != null) {
+ timeStart = timeStart + " 00:00:00";
+ queryVo.setTimeStart(timeStart);
+ }
+ if (timeStop != null) {
+ timeStop = timeStop + " 23:59:59";
+ queryVo.setTimeStop(timeStop);
+ }
+
+ Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo);
+
+ Long itemTotal = opeIssueReportMapper.getIssueReportsCount(params);
+ QueryResultVo<List<VoIssueReport>> rsVo = new QueryResultVo<>();
+
+ rsVo.pageSize = queryVo.pageSize;
+ rsVo.pageCurr = queryVo.pageCurr;
+
+ rsVo.calculateAndSet(itemTotal, params);
+ rsVo.obj = opeIssueReportMapper.getIssueReports(params);
+ return rsVo;
+ }
}
--
Gitblit v1.8.0