From 88af52278ad3bf8642682a3ed8d3cdb3b0b9ad0d Mon Sep 17 00:00:00 2001
From: zhubaomin <zhubaomin>
Date: 星期二, 12 十一月 2024 16:58:34 +0800
Subject: [PATCH] 巡检员问题上报逻辑删除接口

---
 pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/issue/IssueSv.java            |   20 ++++++++++
 pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/issue/dto/DtoDeleteParam.java |   28 ++++++++++++++
 pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/issue/IssueCtrl.java          |   23 +++++++++++
 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoOp/OpeIssueReportMapper.java        |   21 ++++++++++
 pipIrr-platform/pipIrr-global/src/main/resources/application-database-ym.yml                           |    4 +-
 pipIrr-platform/pipIrr-global/src/main/resources/mapper/OpeIssueReportMapper.xml                       |   10 +++++
 6 files changed, 104 insertions(+), 2 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 fe94e31..2e59e7e 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
@@ -4,6 +4,7 @@
 import com.dy.pipIrrGlobal.pojoOp.OpeIssueReport;
 import com.dy.pipIrrGlobal.voOp.VoIssueReport;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 import java.util.Map;
@@ -42,4 +43,24 @@
      * @return
      */
     List<VoIssueReport> getIssueReports(Map<?, ?> params);
+
+    /**
+     * 鏍规嵁涓婃姤ID鍙婂贰妫�鍛業D鑾峰彇鏈垹闄ょ殑涓婃姤锛屽垹闄や笂鎶ュ垽鏂娇鐢�
+     * @param issueReportId
+     * @param inspectorId
+     * @return
+     */
+    OpeIssueReport getReport(@Param("issueReportId")Long issueReportId, @Param("inspectorId")Long inspectorId);
+
+    /**
+     * 閫昏緫鍒犻櫎涓�涓啘鎴烽棶棰樹笂鎶�
+     * @param issueReportId
+     * @return
+     */
+    /**
+     * 閫昏緫鍒犻櫎涓�涓贰妫�鍛橀棶棰樹笂鎶�
+     * @param issueReportId
+     * @return
+     */
+    Integer deleteIssueReport(Long issueReportId);
 }
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/application-database-ym.yml b/pipIrr-platform/pipIrr-global/src/main/resources/application-database-ym.yml
index 80e789b..ed9eb26 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/application-database-ym.yml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/application-database-ym.yml
@@ -5,9 +5,9 @@
             #name: ym
             type: com.alibaba.druid.pool.DruidDataSource
             driverClassName: com.mysql.cj.jdbc.Driver
-            url: jdbc:mysql://192.168.40.166:3306/pipIrr_ym?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull
+#            url: jdbc:mysql://192.168.40.166:3306/pipIrr_ym?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull
 #            url: jdbc:mysql://8.130.130.233:3306/pipIrr_ym?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull
-#            url: jdbc:mysql://127.0.0.1:3306/pipIrr_ym?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull
+            url: jdbc:mysql://127.0.0.1:3306/pipIrr_ym?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull
             username: root
             password: dysql,;.abc!@#
             druid:
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 e3609d8..47379c7 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/OpeIssueReportMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/OpeIssueReportMapper.xml
@@ -252,4 +252,14 @@
       </if>
     </trim>
   </select>
+
+  <!--鏍规嵁涓婃姤ID鍙婂贰妫�鍛業D鑾峰彇鏈垹闄ょ殑涓婃姤锛屽垹闄や笂鎶ュ垽鏂娇鐢�-->
+  <select id="getReport" resultType="com.dy.pipIrrGlobal.pojoOp.OpeIssueReport">
+    SELECT * FROM ope_issue_report WHERE state != 3 AND id = #{issueReportId} AND inspector_id = #{inspectorId}
+  </select>
+
+  <!--閫昏緫鍒犻櫎涓�涓啘鎴烽棶棰樹笂鎶�-->
+  <update id="deleteIssueReport">
+    UPDATE ope_issue_report SET state = 3 WHERE id = #{issueReportId}
+  </update>
 </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 ba118b6..446935e 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
@@ -4,6 +4,7 @@
 import com.dy.common.webUtil.BaseResponse;
 import com.dy.common.webUtil.BaseResponseUtils;
 import com.dy.common.webUtil.QueryResultVo;
+import com.dy.pipIrrApp.issue.dto.DtoDeleteParam;
 import com.dy.pipIrrApp.issue.qo.QoIssueReport;
 import com.dy.pipIrrGlobal.pojoOp.OpeIssueReport;
 import com.dy.pipIrrGlobal.voOp.VoIssueReport;
@@ -59,6 +60,7 @@
      * @return
      */
     @GetMapping(path = "/getIssueReports")
+    @SsoAop()
     public BaseResponse<QueryResultVo<List<VoIssueReport>>> getIssueReports(QoIssueReport vo) {
         try {
             QueryResultVo<List<VoIssueReport>> res = issueSv.getIssueReports(vo);
@@ -69,4 +71,25 @@
         }
     }
 
+    /**
+     * 閫昏緫鍒犻櫎宸℃鍛橀棶棰樹笂鎶ワ紝鍒犻櫎鍓嶅厛鍒ゆ柇瑕佸垹闄ょ殑涓婃姤鏄惁瀛樺湪
+     * @param po
+     * @param bindingResult
+     * @return
+     */
+    @PostMapping(path = "deleteIssueReport")
+    public BaseResponse<Boolean> deleteIssueReport(@RequestBody @Valid DtoDeleteParam po, BindingResult bindingResult) {
+        if(bindingResult != null && bindingResult.hasErrors()){
+            return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
+        }
+
+        String result = issueSv.deleteIssueReport(po);
+        if(!result.equals("success")) {
+            return BaseResponseUtils.buildErrorMsg(result);
+        }
+
+        return BaseResponseUtils.buildSuccess();
+
+    }
+
 }
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 a9c49ba..83c6422 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,6 +1,7 @@
 package com.dy.pipIrrApp.issue;
 
 import com.dy.common.webUtil.QueryResultVo;
+import com.dy.pipIrrApp.issue.dto.DtoDeleteParam;
 import com.dy.pipIrrApp.issue.qo.QoIssueReport;
 import com.dy.pipIrrGlobal.daoOp.OpeIssueReportMapper;
 import com.dy.pipIrrGlobal.pojoOp.OpeIssueReport;
@@ -75,4 +76,23 @@
         return rsVo;
     }
 
+    /**
+     * 閫昏緫鍒犻櫎宸℃鍛橀棶棰樹笂鎶ワ紝鍒犻櫎鍓嶅厛鍒ゆ柇瑕佸垹闄ょ殑涓婃姤鏄惁瀛樺湪
+     * @param po
+     * @return
+     */
+    public String deleteIssueReport(DtoDeleteParam po) {
+        // 鏍规嵁涓婃姤ID鍙婂贰妫�鍛業D鑾峰彇鏈垹闄ょ殑涓婃姤锛屽垹闄や笂鎶ュ垽鏂娇鐢�
+        OpeIssueReport opeIssueReport = opeIssueReportMapper.getReport(po.getIssueReportId(), po.getInspectorId());
+        if(opeIssueReport == null) {
+            return "鎮ㄨ鍒犻櫎鐨勯棶棰樹笂鎶ヤ笉瀛樺湪";
+        }
+
+        if(opeIssueReportMapper.deleteIssueReport(po.getIssueReportId()) == 0) {
+            return "宸℃鍛橀棶棰樹笂鎶ュ垹闄ゅけ璐�";
+        }
+
+        return "success";
+    }
+
 }
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/issue/dto/DtoDeleteParam.java b/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/issue/dto/DtoDeleteParam.java
new file mode 100644
index 0000000..1c6f41b
--- /dev/null
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/issue/dto/DtoDeleteParam.java
@@ -0,0 +1,28 @@
+package com.dy.pipIrrApp.issue.dto;
+
+import jakarta.validation.constraints.NotNull;
+import lombok.Data;
+
+/**
+ * @author ZhuBaoMin
+ * @date 2024-11-12 16:18
+ * @LastEditTime 2024-11-12 16:18
+ * @Description 宸℃鍛橀棶棰樹笂鎶ュ垹闄ゅ弬鏁板璞�
+ */
+
+@Data
+public class DtoDeleteParam {
+    public static final long serialVersionUID = 202411121619001L;
+
+    /**
+     * 宸℃鍛橀棶棰樹笂鎶D
+     */
+    @NotNull(message = "璇烽�夋嫨瑕佸垹闄ょ殑闂涓婃姤")
+    private Long issueReportId;
+
+    /**
+     * 宸℃鍛業D
+     */
+    @NotNull(message = "宸℃鍛樼紪鍙蜂笉鑳戒负绌�")
+    private Long inspectorId;
+}

--
Gitblit v1.8.0