From 7340977c8326c27ec484a815131bff03ad0468c5 Mon Sep 17 00:00:00 2001
From: ‘liusuyi’ <1951119284@qq.com>
Date: Wed, 14 Jun 2023 12:30:39 +0800
Subject: [PATCH] 修复管线详情导入bug

---
 ard-work/src/main/java/com/ruoyi/alarmpoints/tube/domain/ArdTubesDetails.java                  |    8 ++++----
 ard-work/src/main/java/com/ruoyi/alarmpoints/tube/service/impl/ArdTubesServiceImpl.java        |   30 ++++++++++++++++++------------
 ard-work/src/main/resources/mapper/alarmpoints/ArdTubesDetailsMapper.xml                       |    1 +
 ard-work/src/main/java/com/ruoyi/alarmpoints/tube/mapper/ArdTubesDetailsMapper.java            |    6 ++++--
 ard-work/src/main/java/com/ruoyi/alarmpoints/tube/service/impl/ArdTubesDetailsServiceImpl.java |   12 ++++++------
 5 files changed, 33 insertions(+), 24 deletions(-)

diff --git a/ard-work/src/main/java/com/ruoyi/alarmpoints/tube/domain/ArdTubesDetails.java b/ard-work/src/main/java/com/ruoyi/alarmpoints/tube/domain/ArdTubesDetails.java
index c09c31a..48f2b81 100644
--- a/ard-work/src/main/java/com/ruoyi/alarmpoints/tube/domain/ArdTubesDetails.java
+++ b/ard-work/src/main/java/com/ruoyi/alarmpoints/tube/domain/ArdTubesDetails.java
@@ -22,11 +22,11 @@
     private String id;
 
     /** 卷号 */
-    @Excel(name = "卷号")
+    @Excel(name = "管线编号")
     private String reelNumber;
 
     /** 拐点编号 */
-    @Excel(name = "拐点编号")
+    @Excel(name = "拐点号")
     private String inflectionPointNumber;
 
     /** 经度 */
@@ -38,11 +38,11 @@
     private Double latitude;
 
     /** 高层 */
-    @Excel(name = "高层")
+    @Excel(name = "高程")
     private Double altitude;
 
     /** 深度 */
-    @Excel(name = "深度")
+    @Excel(name = "埋深")
     private Double depth;
 
     /** 管线ID */
diff --git a/ard-work/src/main/java/com/ruoyi/alarmpoints/tube/mapper/ArdTubesDetailsMapper.java b/ard-work/src/main/java/com/ruoyi/alarmpoints/tube/mapper/ArdTubesDetailsMapper.java
index efe9180..c125a66 100644
--- a/ard-work/src/main/java/com/ruoyi/alarmpoints/tube/mapper/ArdTubesDetailsMapper.java
+++ b/ard-work/src/main/java/com/ruoyi/alarmpoints/tube/mapper/ArdTubesDetailsMapper.java
@@ -3,6 +3,7 @@
 import java.util.List;
 
 import com.ruoyi.alarmpoints.tube.domain.ArdTubesDetails;
+import org.apache.ibatis.annotations.Param;
 
 /**
  * 管线详细Mapper接口
@@ -22,10 +23,11 @@
     /**
      * 查询管线详细
      *
-     * @param reelumber 管线编号
+     * @param reelNumber 管线编号
+     * @param inflectionPointNumber 拐点号
      * @return 管线详细
      */
-    public ArdTubesDetails selectArdTubesDetailsByReelNumber(String reelumber);
+    public ArdTubesDetails selectArdTubesDetailsByReelNumber(@Param("reelNumber") String reelNumber, @Param("inflectionPointNumber") String inflectionPointNumber);
     /**
      * 查询管线详细列表
      * 
diff --git a/ard-work/src/main/java/com/ruoyi/alarmpoints/tube/service/impl/ArdTubesDetailsServiceImpl.java b/ard-work/src/main/java/com/ruoyi/alarmpoints/tube/service/impl/ArdTubesDetailsServiceImpl.java
index 09fc8dd..e3c6ff2 100644
--- a/ard-work/src/main/java/com/ruoyi/alarmpoints/tube/service/impl/ArdTubesDetailsServiceImpl.java
+++ b/ard-work/src/main/java/com/ruoyi/alarmpoints/tube/service/impl/ArdTubesDetailsServiceImpl.java
@@ -127,7 +127,7 @@
     @Override
     public String importArdTubesDetails(List<ArdTubesDetails> ardTubesDetailsList, Boolean isUpdateSupport, String operName, String tubeId) {
         if (StringUtils.isNull(ardTubesDetailsList) || ardTubesDetailsList.size() == 0) {
-            throw new ServiceException("导入井数据不能为空!");
+            throw new ServiceException("导入管线数据不能为空!");
         }
         ArdTubes tubes = ardTubesMapper.selectArdTubesById(tubeId);
         int successNum = 0;
@@ -140,7 +140,7 @@
                 String userId = SecurityUtils.getUserId();
                 tubesDetails.setUserId(userId);
                 // 验证是否存在这个管线编号详情
-                ArdTubesDetails atd = ardTubesDetailsMapper.selectArdTubesDetailsByReelNumber(tubesDetails.getReelNumber());
+                ArdTubesDetails atd = ardTubesDetailsMapper.selectArdTubesDetailsByReelNumber(tubesDetails.getReelNumber(),tubesDetails.getInflectionPointNumber());
                 if (StringUtils.isNull(atd)) {
                     BeanValidators.validateWithException(validator, tubesDetails);
                     tubesDetails.setCreateBy(operName);
@@ -148,7 +148,7 @@
                     tubesDetails.setDeptId(tubes.getDeptId());
                     this.insertArdTubesDetails(tubesDetails);
                     successNum++;
-                    successMsg.append("<br/>" + successNum + "、管线编号 " + tubesDetails.getReelNumber() + " 导入成功");
+                    successMsg.append("<br/>" + successNum + "、管线编号 " + tubesDetails.getReelNumber() +"-"+tubesDetails.getInflectionPointNumber()+ " 导入成功");
                 } else if (isUpdateSupport) {
                     BeanValidators.validateWithException(validator, tubesDetails);
                     checkTubesDetailAllowed(tubesDetails);
@@ -158,14 +158,14 @@
                     tubesDetails.setDeptId(tubes.getDeptId());
                     this.updateArdTubesDetailsByReelNumber(tubesDetails);
                     successNum++;
-                    successMsg.append("<br/>" + successNum + "、管线编号 " + tubesDetails.getReelNumber() + " 更新成功");
+                    successMsg.append("<br/>" + successNum + "、管线编号 " + tubesDetails.getReelNumber() +"-"+tubesDetails.getInflectionPointNumber()+ " 更新成功");
                 } else {
                     failureNum++;
-                    failureMsg.append("<br/>" + failureNum + "、管线编号 " + tubesDetails.getReelNumber() + " 已存在");
+                    failureMsg.append("<br/>" + failureNum + "、管线编号 " + tubesDetails.getReelNumber()+"-"+tubesDetails.getInflectionPointNumber() + " 已存在");
                 }
             } catch (Exception e) {
                 failureNum++;
-                String msg = "<br/>" + failureNum + "、管线编号 " + tubesDetails.getReelNumber() + " 导入失败:";
+                String msg = "<br/>" + failureNum + "、管线编号 " + tubesDetails.getReelNumber() +"-"+tubesDetails.getInflectionPointNumber()+ " 导入失败:";
                 failureMsg.append(msg + e.getMessage());
                 log.error(msg, e);
             }
diff --git a/ard-work/src/main/java/com/ruoyi/alarmpoints/tube/service/impl/ArdTubesServiceImpl.java b/ard-work/src/main/java/com/ruoyi/alarmpoints/tube/service/impl/ArdTubesServiceImpl.java
index a39956c..2560c99 100644
--- a/ard-work/src/main/java/com/ruoyi/alarmpoints/tube/service/impl/ArdTubesServiceImpl.java
+++ b/ard-work/src/main/java/com/ruoyi/alarmpoints/tube/service/impl/ArdTubesServiceImpl.java
@@ -1,6 +1,7 @@
 package com.ruoyi.alarmpoints.tube.service.impl;
 
 import java.util.List;
+
 import com.ruoyi.alarmpoints.tube.domain.ArdTubes;
 import com.ruoyi.alarmpoints.tube.domain.ArdTubesDetails;
 import com.ruoyi.alarmpoints.tube.mapper.ArdTubesDetailsMapper;
@@ -10,6 +11,7 @@
 import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.SecurityUtils;
 import org.springframework.stereotype.Service;
+
 import javax.annotation.Resource;
 
 /**
@@ -24,6 +26,7 @@
     private ArdTubesMapper ardTubesMapper;
     @Resource
     private ArdTubesDetailsMapper ardTubesDetailsMapper;
+
     /**
      * 查询管线管理
      *
@@ -44,13 +47,16 @@
     @Override
     @DataScope(deptAlias = "d", userAlias = "u")
     public List<ArdTubes> selectArdTubesList(ArdTubes ardTubes) {
-        ArdTubesDetails tubesDetails=new ArdTubesDetails();
-        tubesDetails.setTubeId(ardTubes.getId());
-        List<ArdTubesDetails> ardTubesDetails = ardTubesDetailsMapper.selectArdTubesDetailsList(tubesDetails);
-        ArdTubes arttube=new ArdTubes();
-        arttube.setChildCount(ardTubesDetails.size());
-        ardTubesMapper.updateArdTubes(arttube);
-        return ardTubesMapper.selectArdTubesList(ardTubes);
+
+        List<ArdTubes> tubes = ardTubesMapper.selectArdTubesList(ardTubes);
+        for (ArdTubes tube : tubes) {
+            ArdTubesDetails tubesDetails = new ArdTubesDetails();
+            tubesDetails.setTubeId(tube.getId());
+            List<ArdTubesDetails> ardTubesDetails = ardTubesDetailsMapper.selectArdTubesDetailsList(tubesDetails);
+            tube.setChildCount(ardTubesDetails.size());
+            ardTubesMapper.updateArdTubes(tube);
+        }
+        return tubes;
     }
 
     /**
@@ -90,11 +96,11 @@
      */
     @Override
     public int deleteArdTubesByIds(String[] ids) {
-        for (String id: ids ) {
-            ArdTubesDetails tubesDetails=new ArdTubesDetails();
+        for (String id : ids) {
+            ArdTubesDetails tubesDetails = new ArdTubesDetails();
             tubesDetails.setTubeId(id);
             List<ArdTubesDetails> ardTubesDetails = ardTubesDetailsMapper.selectArdTubesDetailsList(tubesDetails);
-            if(ardTubesDetails.size()>0) {
+            if (ardTubesDetails.size() > 0) {
                 for (ArdTubesDetails tubesDetail : ardTubesDetails) {
                     int i = ardTubesDetailsMapper.deleteArdTubesDetailsById(tubesDetail.getId());
                 }
@@ -111,10 +117,10 @@
      */
     @Override
     public int deleteArdTubesById(String id) {
-        ArdTubesDetails tubesDetails=new ArdTubesDetails();
+        ArdTubesDetails tubesDetails = new ArdTubesDetails();
         tubesDetails.setTubeId(id);
         List<ArdTubesDetails> ardTubesDetails = ardTubesDetailsMapper.selectArdTubesDetailsList(tubesDetails);
-        if(ardTubesDetails.size()>0) {
+        if (ardTubesDetails.size() > 0) {
             for (ArdTubesDetails tubesDetail : ardTubesDetails) {
                 int i = ardTubesDetailsMapper.deleteArdTubesDetailsById(tubesDetail.getId());
             }
diff --git a/ard-work/src/main/resources/mapper/alarmpoints/ArdTubesDetailsMapper.xml b/ard-work/src/main/resources/mapper/alarmpoints/ArdTubesDetailsMapper.xml
index 50a0aad..bf7798f 100644
--- a/ard-work/src/main/resources/mapper/alarmpoints/ArdTubesDetailsMapper.xml
+++ b/ard-work/src/main/resources/mapper/alarmpoints/ArdTubesDetailsMapper.xml
@@ -69,6 +69,7 @@
     <select id="selectArdTubesDetailsByReelNumber" parameterType="String" resultMap="ArdTubesDetailsResult">
         <include refid="selectArdTubesDetailsVo"/>
         where reel_number = #{reelNumber}
+        and inflection_point_number = #{inflectionPointNumber}
     </select>
     <insert id="insertArdTubesDetails" parameterType="ArdTubesDetails">
         insert into ard_tubes_details

--
Gitblit v1.9.3