From 9552a061aa27b05f6044d60efd265553a275b58e Mon Sep 17 00:00:00 2001
From: wuzeyu <1223318623@qq.com>
Date: 星期四, 09 五月 2024 13:43:19 +0800
Subject: [PATCH] 流浪控制器增加、删除、查询接口

---
 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrControllerTrampMapper.java                            |   14 +++
 pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intakeController/IntakeControllerSv.java     |   28 +++++++
 pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrControllerTrampMapper.xml                                           |   43 ++++++++++
 pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intakeController/IntakeControllerCtrl.java   |   73 ++++++++++++++++++
 pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/result/ProjectResultCode.java                |    7 +
 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoPr/PrControllerTramp.java                                 |    2 
 pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intakeController/TrampControllerQueryVo.java |   34 ++++++++
 7 files changed, 197 insertions(+), 4 deletions(-)

diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrControllerTrampMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrControllerTrampMapper.java
index 4d1b995..27cb1d3 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrControllerTrampMapper.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrControllerTrampMapper.java
@@ -6,6 +6,7 @@
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
+import java.util.Map;
 
 /**
  * @Author liurunyu
@@ -77,4 +78,17 @@
      * @return
      */
     PrControllerTramp getTrampControllerInfo(@Param("controllerId") Long controllerId);
+
+    /**
+     * 鏉′欢鏌ヨ娴佹氮鎺у埗鍣ㄤ俊鎭�
+     * @param
+     * @return
+     */
+    List<PrControllerTramp> getTrampControllers(Map<?, ?> params);
+    /**
+     * 鏉′欢鏌ヨ娴佹氮鎺у埗鍣ㄦ暟閲�
+     * @param
+     * @return  recordCount
+     */
+    Long getTrampControllersCount(Map<?, ?> params);
 }
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoPr/PrControllerTramp.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoPr/PrControllerTramp.java
index 02e942e..b133303 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoPr/PrControllerTramp.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoPr/PrControllerTramp.java
@@ -61,7 +61,7 @@
      * 鍙戠幇鏃堕棿
      */
     @Schema(description = "鍙戠幇鏃堕棿", requiredMode = Schema.RequiredMode.REQUIRED)
-    @NotNull(message = "鍙戠幇鏃堕棿涓嶈兘涓虹┖")
+//    @NotNull(message = "鍙戠幇鏃堕棿涓嶈兘涓虹┖")
     public Date findDt;//鍙戠幇鏃堕棿锛� yyyy-mm-dd HH:MM:SS锛�
 
 }
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrControllerTrampMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrControllerTrampMapper.xml
index 3753a1b..877c01d 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrControllerTrampMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrControllerTrampMapper.xml
@@ -15,7 +15,7 @@
   </sql>
   <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
     <!--@mbg.generated-->
-    select 
+    select
     <include refid="Base_Column_List" />
     from pr_controller_tramp
     where id = #{id,jdbcType=BIGINT}
@@ -36,7 +36,7 @@
   </delete>
   <insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoPr.PrControllerTramp">
     <!--@mbg.generated-->
-    insert into pr_controller_tramp (id, rtuAddr, protocol, 
+    insert into pr_controller_tramp (id, rtuAddr, protocol,
       findDt)
     values (#{id,jdbcType=BIGINT}, #{rtuAddr,jdbcType=VARCHAR}, #{protocol,jdbcType=VARCHAR},
       #{findDt,jdbcType=TIMESTAMP})
@@ -107,4 +107,43 @@
   <select id="getTrampControllerInfo" resultMap="BaseResultMap">
     SELECT rtuAddr, protocol, findDt FROM pr_controller_tramp WHERE id = ${controllerId}
   </select>
+
+    <!--    鏍规嵁鏉′欢鑾峰彇娴佹氮鎺у埗鍣ㄤ俊鎭�-->
+    <select id="getTrampControllers" resultMap="BaseResultMap">
+        select CAST(id AS char)AS id,
+        rtuAddr,
+        protocol,
+        findDt
+        FROM pr_controller_tramp
+        <where>
+            <if test="id != null and id !=''">
+                id = #{id,jdbcType=VARCHAR}
+            </if>
+            <if test="rtuAddr != null and rtuAddr != ''">
+                AND   rtuAddr = #{rtuAddr,jdbcType=VARCHAR}
+            </if>
+            <if test="protocol != null and protocol != ''">
+                AND  protocol = #{protocol,jdbcType=VARCHAR}
+            </if>
+
+        </where>
+    </select>
+    <!--    鏍规嵁鏉′欢鑾峰彇娴佹氮鎺у埗鍣ㄦ暟閲�-->
+    <select id="getTrampControllersCount" resultType="java.lang.Long">
+        select
+        COUNT(*) AS recordCount
+        FROM pr_controller_tramp
+        <where>
+            <if test="id != null and id !=''">
+                  id = #{id,jdbcType=VARCHAR}
+            </if>
+            <if test="rtuAddr != null and rtuAddr != ''">
+                AND   rtuAddr = #{rtuAddr,jdbcType=VARCHAR}
+            </if>
+            <if test="protocol != null and protocol != ''">
+                AND  protocol = #{protocol,jdbcType=VARCHAR}
+            </if>
+
+        </where>
+    </select>
 </mapper>
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intakeController/IntakeControllerCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intakeController/IntakeControllerCtrl.java
index 5311d90..fd0aced 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intakeController/IntakeControllerCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intakeController/IntakeControllerCtrl.java
@@ -1,5 +1,7 @@
 package com.dy.pipIrrProject.intakeController;
 
+
+import cn.hutool.core.date.DateTime;
 import com.dy.common.aop.SsoAop;
 import com.dy.common.webUtil.BaseResponse;
 import com.dy.common.webUtil.BaseResponseUtils;
@@ -242,4 +244,75 @@
             return BaseResponseUtils.buildException(e.getMessage()) ;
         }
     }
+
+
+    /**
+     * 鏍规嵁鎸囧畾鏉′欢鑾峰彇娴佹氮鎺у埗鍣ㄥ垪琛�
+     *
+     * @param vo 鏌ヨ鏉′欢
+     * @return 绗﹀悎鏉′欢鐨勬帶鍒跺櫒鍒楄〃
+     */
+    @Operation(summary = "鑾峰緱涓�椤垫祦娴帶鍒跺櫒璁板綍", description = "杩斿洖涓�椤垫祦娴帶鍒跺櫒鏁版嵁")
+    @ApiResponses(value = {
+            @ApiResponse(
+                    responseCode = ResultCodeMsg.RsCode.SUCCESS_CODE,
+                    description = "杩斿洖涓�椤垫祦娴帶鍒跺櫒鏁版嵁锛圔aseResponse.content:QueryResultVo[{}]锛�",
+                    content = {@Content(mediaType = MediaType.APPLICATION_JSON_VALUE,
+                            schema = @Schema(implementation = PrControllerTramp.class))}
+            )
+    })
+    @GetMapping(path = "/getTrampControllers")
+    @SsoAop()
+    public BaseResponse<QueryResultVo<List<PrControllerTramp>>> getTrampControllers(TrampControllerQueryVo vo) {
+
+        try {
+            QueryResultVo<List<PrControllerTramp>> res = intakeControllerSv.getTrampControllers(vo);
+            if (res.itemTotal != null && res.itemTotal > 0) {
+                return BaseResponseUtils.buildSuccess(res);
+            } else {
+                //璇锋眰鎴愬姛浣嗘暟鎹负绌�
+                return BaseResponseUtils.buildSuccess(res);
+            }
+            //return BaseResponseUtils.buildSuccess(res);
+        } catch (Exception e) {
+            log.error("鑾峰彇娴佹氮鎺у埗鍣ㄨ褰曞紓甯�", e);
+            return BaseResponseUtils.buildException(e.getMessage());
+        }
+    }
+
+    /**
+     * 娣诲姞娴佹氮鎺у埗鍣�
+     * @param pct
+     * @return
+     */
+    @PostMapping("addTrampController")
+    @Transactional(rollbackFor = Exception.class)
+    @SsoAop()
+    public BaseResponse<Boolean> addTrampController(@RequestBody PrControllerTramp pct){
+        pct.setFindDt(new Date());
+        Integer rows = intakeControllerSv.addTrampController(pct);
+        if (rows == 0) {
+            return BaseResponseUtils.buildFail(ProjectResultCode.ADD_TRAMP_CONTROLLER_FAIL.getMessage());
+        }
+        return BaseResponseUtils.buildSuccess(true);
+    }
+
+    /**
+     * 鍒犻櫎娴佹氮鎺у埗鍣�
+     * @param id
+     * @return
+     */
+    @PostMapping("deleteTrampController")
+    @Transactional(rollbackFor = Exception.class)
+    @SsoAop()
+    public BaseResponse<Boolean> deleteTrampController(Long id){
+        PrControllerTramp controllerInfo = intakeControllerSv.getTrampControllerInfo(id);
+        if (controllerInfo==null){return BaseResponseUtils.buildFail(ProjectResultCode.NO_EXIST_TRAMP_CONTROLLER.getMessage());}
+
+        Integer rows = intakeControllerSv.deleteTrampController(id);
+        if (rows == 0) {
+            return BaseResponseUtils.buildFail(ProjectResultCode.DELETE_TRAMP_CONTROLLER_FAIL.getMessage());
+        }
+        return BaseResponseUtils.buildSuccess(true);
+    }
 }
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intakeController/IntakeControllerSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intakeController/IntakeControllerSv.java
index 11928ca..2af426b 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intakeController/IntakeControllerSv.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intakeController/IntakeControllerSv.java
@@ -1,13 +1,19 @@
 package com.dy.pipIrrProject.intakeController;
 
+import cn.hutool.core.date.DateTime;
+import com.dy.common.webUtil.QueryResultVo;
 import com.dy.pipIrrGlobal.daoPr.PrControllerTrampMapper;
 import com.dy.pipIrrGlobal.daoPr.PrIntakeControllerMapper;
 import com.dy.pipIrrGlobal.pojoPr.PrControllerTramp;
 import com.dy.pipIrrGlobal.pojoPr.PrIntakeController;
 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.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
 import java.util.List;
 import java.util.Map;
 
@@ -91,4 +97,26 @@
     public Integer deleteTrampController(Long controllerId) {
         return prControllerTrampMapper.deleteByPrimaryKey(controllerId);
     }
+
+    //澧�
+    public Integer addTrampController(PrControllerTramp record){
+        return prControllerTrampMapper.insertSelective(record);
+    }
+
+
+/*鏌�*/
+    public QueryResultVo<List<PrControllerTramp>> getTrampControllers(TrampControllerQueryVo queryVo){
+        Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo);
+
+        Long itemTotal = prControllerTrampMapper.getTrampControllersCount(params);
+
+        QueryResultVo<List<PrControllerTramp>> rsVo = new QueryResultVo<>();
+        rsVo.pageSize = queryVo.pageSize;
+        rsVo.pageCurr = queryVo.pageCurr;
+
+        rsVo.calculateAndSet(itemTotal, params);
+        rsVo.obj = prControllerTrampMapper.getTrampControllers(params);
+
+        return rsVo;
+    }
 }
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intakeController/TrampControllerQueryVo.java b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intakeController/TrampControllerQueryVo.java
new file mode 100644
index 0000000..b3be90f
--- /dev/null
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intakeController/TrampControllerQueryVo.java
@@ -0,0 +1,34 @@
+package com.dy.pipIrrProject.intakeController;
+
+import com.dy.common.webUtil.QueryConditionVo;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.*;
+
+import java.util.Date;
+
+/**
+ * @author :WuZeYu
+ * @Date :2024/5/8  14:16
+ * @LastEditTime :2024/5/8  14:16
+ * @Description
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@ToString(callSuper = true)
+@NoArgsConstructor
+@AllArgsConstructor
+@Builder
+@Schema(name = "娴佹氮鎺у埗鍣ㄦ煡璇㈡潯浠�")
+public class TrampControllerQueryVo extends QueryConditionVo {
+
+    @Schema(description = "娴佹氮鎺у埗鍣↖D")
+    private String id;
+
+    @Schema(description = "鎺у埗鍣ㄥ湴鍧�")
+    private String rtuAddr;
+
+    @Schema(description = "閫氳鍗忚")
+    public String protocol;
+
+
+}
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/result/ProjectResultCode.java b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/result/ProjectResultCode.java
index 2df9954..e2f42c4 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/result/ProjectResultCode.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/result/ProjectResultCode.java
@@ -37,7 +37,12 @@
     NO_RECORDS(30002, "娌℃湁绗﹀悎鏉′欢鐨勬帶鍒跺櫒鏁版嵁"),
     PLEASE_INPUT_CONTROLLER_ID(30003, "璇疯緭鍏ユ帶鍒跺櫒缂栧彿"),
     DELETE_CONTROLLER_FAIL(30004, "鎺у埗鍣ㄥ垹闄ゅけ璐�"),
-
+    /**
+     * 娴佹氮鎺у埗鍣�
+     */
+    ADD_TRAMP_CONTROLLER_FAIL(80001, "娴佹氮鎺у埗鍣ㄦ坊鍔犲け璐�"),
+    DELETE_TRAMP_CONTROLLER_FAIL(80002, "娴佹氮鎺у埗鍣ㄥ垹闄ゅけ璐�"),
+    NO_EXIST_TRAMP_CONTROLLER(80003, "璇ユ祦娴帶鍒跺櫒涓嶅瓨鍦�"),
     /**
      * 鍙栨按鍙c�佹帶鍒跺櫒鍏宠仈
      */

--
Gitblit v1.8.0