Просмотр исходного кода

dev:【4.7抄表记录】先删除再添加

zhuangxingjv недель назад: 2
Родитель
Сommit
e69ce0818b

+ 1 - 1
ruoyi-api/src/main/java/com/ruoyi/api/domain/WwkjReadingRecord.java

@@ -122,7 +122,7 @@ public class WwkjReadingRecord extends BaseEntity {
     private Date changeMeterDate;
 
     /** 删除标志(0代表存在 2代表删除) */
-    private String delFlag;
+    private String delFlag = "0";
 
     // getter and setter methods
     public void setId(Long id) { this.id = id; }

+ 7 - 0
ruoyi-api/src/main/java/com/ruoyi/api/mapper/WwkjReadingRecordMapper.java

@@ -3,6 +3,7 @@ package com.ruoyi.api.mapper;
 import com.ruoyi.api.domain.WwkjReadingRecord;
 import com.ruoyi.api.domain.dto.ReadingRecordExportDTO;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 import java.util.Map;
@@ -46,4 +47,10 @@ public interface WwkjReadingRecordMapper {
 
     List<ReadingRecordExportDTO> selectForExport();
 
+    /**
+     * 根据抄表记录编号删除
+     * @param usedWaterId
+     * @return
+     */
+    int deleteByUsedWaterId(@Param("usedWaterId") String usedWaterId);
 }

+ 16 - 10
ruoyi-api/src/main/java/com/ruoyi/api/service/impl/WwkjReadingRecordServiceImpl.java

@@ -59,6 +59,9 @@ public class WwkjReadingRecordServiceImpl implements IWwkjReadingRecordService {
                 logger.info("未查询到抄表记录信息");
                 return Collections.emptyList();
             }
+            // 删除水表记录
+            String usedWaterId = externalDataList.get(0).getUsedWaterId();
+            wwkjReadingRecordMapper.deleteByUsedWaterId(usedWaterId);
 
             // 3. 转换数据并保存
             List<WwkjReadingRecord> readingRecords = new ArrayList<>();
@@ -67,16 +70,19 @@ public class WwkjReadingRecordServiceImpl implements IWwkjReadingRecordService {
                 readingRecords.add(readingRecord);
 
                 // 4. 保存到数据库(新增或更新)
-                WwkjReadingRecord existing = wwkjReadingRecordMapper.selectByUsedWaterId(readingRecord.getUsedWaterId());
-                if (existing != null) {
-                    // 更新操作
-                    readingRecord.setId(existing.getId());
-                    wwkjReadingRecordMapper.updateWwkjReadingRecord(readingRecord);
-                } else {
-                    // 新增操作
-                    readingRecord.setDelFlag("0"); // 设置删除标志为正常
-                    wwkjReadingRecordMapper.insertWwkjReadingRecord(readingRecord);
-                }
+//                WwkjReadingRecord existing = wwkjReadingRecordMapper.selectByUsedWaterId(readingRecord.getUsedWaterId());
+//                if (existing != null) {
+//                    // 更新操作
+//                    readingRecord.setId(existing.getId());
+//                    wwkjReadingRecordMapper.updateWwkjReadingRecord(readingRecord);
+//                } else {
+//                    // 新增操作
+//                    readingRecord.setDelFlag("0"); // 设置删除标志为正常
+//                    wwkjReadingRecordMapper.insertWwkjReadingRecord(readingRecord);
+//                }
+                // 新增操作
+                readingRecord.setDelFlag("0"); // 设置删除标志为正常
+                wwkjReadingRecordMapper.insertWwkjReadingRecord(readingRecord);
             }
 
             return readingRecords;

+ 4 - 0
ruoyi-api/src/main/resources/mapper/api/WwkjReadingRecordMapper.xml

@@ -42,6 +42,10 @@
                del_flag, create_by, create_time, update_by, update_time
         from wwkj_reading_record
     </sql>
+    <delete id="deleteByUsedWaterId">
+        delete from wwkj_reading_record
+        where used_water_id = #{usedWaterId}
+    </delete>
 
     <select id="selectByUsedWaterId" parameterType="String" resultMap="WwkjReadingRecordResult">
         <include refid="selectWwkjReadingRecordVo"/>