From a59200e76cfd8795c35e021780c556c1b3fc9e7e Mon Sep 17 00:00:00 2001
From: zhangnaisong <2434969829@qq.com>
Date: 星期三, 07 八月 2024 09:28:49 +0800
Subject: [PATCH] 电磁锁超速关锁提交

---
 ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdTankWallLockServiceImpl.java |   51 ++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 50 insertions(+), 1 deletions(-)

diff --git a/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdTankWallLockServiceImpl.java b/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdTankWallLockServiceImpl.java
index 350f42e..603ad0f 100644
--- a/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdTankWallLockServiceImpl.java
+++ b/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdTankWallLockServiceImpl.java
@@ -6,11 +6,15 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import java.util.ArrayList;
+import java.util.Map;
+
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.sy.mapper.ArdTankWallLockMapper;
 import com.ruoyi.sy.domain.ArdTankWallLock;
 import com.ruoyi.sy.service.IArdTankWallLockService;
+
+import javax.annotation.Resource;
 
 /**
  * 鐢靛瓙鍥存爮鐢电閿丼ervice涓氬姟灞傚鐞�
@@ -20,7 +24,7 @@
  */
 @Service
 public class ArdTankWallLockServiceImpl implements IArdTankWallLockService {
-    @Autowired
+    @Resource
     private ArdTankWallLockMapper ardTankWallLockMapper;
 
     /**
@@ -89,4 +93,49 @@
     public int deleteArdTankWallLockByProcessType(String processType) {
         return ardTankWallLockMapper.deleteArdTankWallLockByProcessType(processType);
     }
+
+    @Override
+    public int insertWallLock(Map<String, Object> para) {
+        String id = (String) para.get("id");//閿佷富閿�
+        List<Map<String,String>> tankWallLockList = (List<Map<String, String>>) para.get("tankWallLockList");
+        if(tankWallLockList.size() == 0){//鏁扮粍涓虹┖锛屽仛鍒犻櫎鎿嶄綔
+            List<ArdTankWallLock> ardTankWallLockList = ardTankWallLockMapper.selectArdTankWallLockByLockId(id);//鏌ヨ涔嬪墠鎸傛帴鐨勭數瀛愬洿鏍�
+            if(ardTankWallLockList.size() == 0){//鑻ユ病鏈夋寕鎺ワ紝涓嶅仛鎿嶄綔
+                return 1;
+            }
+            int result = ardTankWallLockMapper.deleteArdTankWallLockByLockId(id);
+            return result;
+        }
+        //List<ArdTankWallLock> tankWallLocks = new ArrayList();
+        List<String> idList = new ArrayList();//瀛樻斁鏂板鍜屼慨鏀圭殑涓棿琛ㄤ富閿�
+        int result = 0;
+        for(Map<String,String> map : tankWallLockList){
+            ArdTankWallLock ardTankWallLock = new ArdTankWallLock();
+            ardTankWallLock.setWallId(map.get("wallId"));
+            ardTankWallLock.setLockId(id);
+            List<ArdTankWallLock> ardTankWallLockList = ardTankWallLockMapper.selectArdTankWallLockList(ardTankWallLock);
+            if(ardTankWallLockList.size() != 0){
+                ardTankWallLock.setProcessType(map.get("processType"));
+                result = result + ardTankWallLockMapper.updateArdTankWallLockByWallIdAndLockId(ardTankWallLock);
+                for(ArdTankWallLock ardTankWallLockOld : ardTankWallLockList){//闇�瑕佷慨鏀圭殑涓婚敭
+                    idList.add(ardTankWallLockOld.getId());
+                }
+            }else{
+                ardTankWallLock.setProcessType(map.get("processType"));
+                ardTankWallLock.setId(IdUtils.simpleUUID());
+                result = result + ardTankWallLockMapper.insertArdTankWallLock(ardTankWallLock);
+                idList.add(ardTankWallLock.getId());//鏂板鐨勪富閿�
+            }
+        }
+        if(!idList.isEmpty()){//鍒ゆ柇鏄惁鏈夐渶瑕佸垹闄ょ殑鏁版嵁涓婚敭
+            result = result + ardTankWallLockMapper.deleteArdTankWallLockByLockIdAndOtherIds(id,idList);
+        }
+        return result;
+    }
+
+    @Override
+    public int deleteArdTankWallLockByLockId(String id) {
+        int result = ardTankWallLockMapper.deleteArdTankWallLockByLockId(id);
+        return result;
+    }
 }

--
Gitblit v1.9.3