From a2e85a4911dd285f7a1ac9fde312187aec597198 Mon Sep 17 00:00:00 2001
From: zhangnaisong <2434969829@qq.com>
Date: 星期二, 23 七月 2024 16:34:54 +0800
Subject: [PATCH] 异常停车逻辑修改提交
---
ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdTankLockServiceImpl.java | 79 ++++++++++++++++++++++++++++++++-------
1 files changed, 65 insertions(+), 14 deletions(-)
diff --git a/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdTankLockServiceImpl.java b/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdTankLockServiceImpl.java
index 8b84e12..6ac1b8b 100644
--- a/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdTankLockServiceImpl.java
+++ b/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdTankLockServiceImpl.java
@@ -2,9 +2,11 @@
import java.util.*;
+import com.github.pagehelper.PageHelper;
import com.ruoyi.common.core.domain.entity.SysConfig;
import com.ruoyi.common.utils.uuid.IdUtils;
import com.ruoyi.sy.domain.ArdSyUser;
+import com.ruoyi.sy.domain.ArdTankLockState;
import com.ruoyi.sy.mapper.ArdSyUserMapper;
import com.ruoyi.sy.mapper.ArdTankWallLockMapper;
import com.ruoyi.sy.mapper.ArdTankWallLockTemporaryMapper;
@@ -138,22 +140,23 @@
@Override
//public Results List<Map<String,Object>> getAll(String usersId) {
- public List<Map<String,Object>> getAll(String usersId) {
+ public Map<String,Object> getAll(String usersId) {
+ List<ArdTankLock> ardTankLockList = ardTankLockMapper.getAll();
ArdSyUser ardSyUser = ardSyUserMapper.userById(usersId);
if(ardSyUser == null){
- return new ArrayList();
+ return new HashMap();
}
List<SysConfig> syURLResult = sysConfigMapper.selectByType("syCarPT");
String syURL = "";
if(syURLResult.size() != 0){
syURL = syURLResult.get(0).getConfigValue();
}else{
- return new ArrayList();
+ return new HashMap();
}
String passwordMd5 = DigestUtils.md5Hex(ardSyUser.getPassword());
Map<String, Object> LogInResult = sYClient.logIn(syURL, passwordMd5, ardSyUser.getUserId());
String sessionId = (String) LogInResult.get("sessionId");
- List<ArdTankLock> ardTankLockList = ardTankLockMapper.getAll();
+ //List<ArdTankLock> ardTankLockList = ardTankLockMapper.getAll();
List<Map<String,Object>> result = new ArrayList();
for(ArdTankLock ardTankLock : ardTankLockList){
Map<String,Object> map = new HashMap();
@@ -200,8 +203,11 @@
}
}
}
- //return Results.succeed(result0);
- return result0;
+ Long total = ardTankLockMapper.selectArdTankLockTotal();
+ Map<String,Object> resultMap = new HashMap();
+ resultMap.put("list",result0);
+ resultMap.put("total",total);
+ return resultMap;
}
@Override
@@ -259,6 +265,24 @@
}else{
map.put("onlineTime",ardTankLock.getOnlineTime());
}
+ if(ardTankLock.getArdTankLockState() != null){//鐢电閿佺姸鎬�
+ map.put("ardTankLockState",ardTankLock.getArdTankLockState());
+ }else{
+ ArdTankLockState ardTankLockState = new ArdTankLockState();
+ ardTankLockState.setId("");
+ ardTankLockState.setLockId("");
+ ardTankLockState.setLockNum("");
+ ardTankLockState.setLockState("");
+ ardTankLockState.setLockPositionState("");
+ ardTankLockState.setLockShellState("");
+ ardTankLockState.setRestartState("");
+ ardTankLockState.setBatterVoltage("");
+ ardTankLockState.setPowerVoltage("");
+ ardTankLockState.setUploadTime("");
+ ardTankLockState.setUniqueMark("");
+ ardTankLockState.setLockStateMark(false);
+ map.put("ardTankLockState",ardTankLockState);
+ }
Map<String,Object> carMap = ((List<Map<String,Object>>)syResult.get("list")).get(0);
map.put("carPlate",carMap.get("carPlate"));
result.add(map);
@@ -284,6 +308,14 @@
}
//Set<String> newIdSet = new HashSet();//浼犲弬鐨勪富閿�
List<Map<String,Object>> lockList = (List<Map<String, Object>>) para.get("lockList");
+ if(lockList.isEmpty()){//鏁扮粍涓虹┖锛屽仛鍒犻櫎鎿嶄綔
+ if(ardTankLockOldList.isEmpty()){//鑻ユ病鏈夋寕鎺ワ紝涓嶅仛鎿嶄綔
+ return 1;
+ }
+ result = ardTankLockMapper.deleteLockByCarId(carId);
+ return result;
+ }
+
List<ArdTankLock> ardTankLocks = new ArrayList();
for(Map<String,Object> map : lockList){
if(map.get("id") != null){//鏈変富閿紝鍋氫慨鏀规搷浣�
@@ -298,7 +330,7 @@
ardTankLock.setCarId((String) map.get("carId"));
ardTankLock.setEnable((String) map.get("enable"));
result = result + ardTankLockMapper.updateArdTankLock(ardTankLock);
- }else{//鏃犱富閿紝鍋氫慨鏀规搷浣�
+ }else{//鏃犱富閿紝鍋氭柊澧炴搷浣�
ArdTankLock ardTankLock = new ArdTankLock();
ardTankLock.setId(IdUtils.simpleUUID());
ardTankLock.setLockNum((String) map.get("lockNum"));
@@ -320,36 +352,38 @@
}
@Override
- public List<Map<String, Object>> getLockByCarPlate(String usersId, String carPlate) {
- List<ArdTankLock> ardTankLockList = ardTankLockMapper.getAll();
+ public Map<String,Object> getLockByCarPlate(String usersId, String carPlate, Integer pageNum, Integer pageSize) {
ArdSyUser ardSyUser = ardSyUserMapper.userById(usersId);
if(ardSyUser == null){
- return new ArrayList();
+ return new HashMap();
}
List<SysConfig> syURLResult = sysConfigMapper.selectByType("syCarPT");
String syURL = "";
if(syURLResult.size() != 0){
syURL = syURLResult.get(0).getConfigValue();
}else{
- return new ArrayList();
+ return new HashMap();
}
String passwordMd5 = DigestUtils.md5Hex(ardSyUser.getPassword());
Map<String, Object> LogInResult = sYClient.logIn(syURL, passwordMd5, ardSyUser.getUserId());
String sessionId = (String) LogInResult.get("sessionId");
- //List<ArdTankLock> ardTankLockList = ardTankLockMapper.getAll();
+ List<ArdTankLock> ardTankLockList = new ArrayList();
List<Map<String,Object>> result = new ArrayList();
+ List<String> carIdList = new ArrayList();//璁板綍涓変竴杞﹁締涓婚敭
if(!carPlate.equals("")){
Map<String,Object> carMap = sYClient.getCarListByPlate(syURL,carPlate,ardSyUser.getUserId(),sessionId);//杞︾墝鍙锋ā绯婃悳绱㈣溅杈�
List<Map<String,Object>> carList = new ArrayList();
if(((String)carMap.get("rspCode")).equals("1")){
carList = (List<Map<String, Object>>) carMap.get("list");
}else{
- return new ArrayList();
+ return new HashMap();
}
- List<String> carIdList = new ArrayList();//璁板綍涓変竴杞﹁締涓婚敭
+ //List<String> carIdList = new ArrayList();//璁板綍涓変竴杞﹁締涓婚敭
for(Map<String,Object> map : carList){
carIdList.add((String) map.get("carId"));
}
+ PageHelper.startPage(pageNum, pageSize);//鍒嗛〉
+ ardTankLockList = ardTankLockMapper.getLockByCarIdList(carIdList);
for(ArdTankLock ardTankLock : ardTankLockList){
if(carIdList.contains(ardTankLock.getCarId())){//杩斿洖鐨勮溅杈嗗寘鍚暟鎹簱褰曞叆鐨勮溅杈�
Map<String,Object> map = new HashMap();
@@ -378,6 +412,8 @@
}
}
}else{
+ PageHelper.startPage(pageNum, pageSize);//鍒嗛〉
+ ardTankLockList = ardTankLockMapper.getAll();
for(ArdTankLock ardTankLock : ardTankLockList){
Map<String,Object> map = new HashMap();
map.put("id",ardTankLock.getId());
@@ -405,6 +441,21 @@
result.add(map);
}
}
+ Long total = Long.valueOf(0);
+ if(!carPlate.equals("")){
+ total = ardTankLockMapper.selectArdTankLockTotalByCarIdList(carIdList);
+ }else{
+ total = ardTankLockMapper.selectArdTankLockAllTotal();
+ }
+ Map<String,Object> mapResult = new HashMap();
+ mapResult.put("list",result);
+ mapResult.put("total",total);
+ return mapResult;
+ }
+
+ @Override
+ public List<ArdTankLock> getArdTankLockAll() {
+ List<ArdTankLock> result = ardTankLockMapper.getAll();
return result;
}
}
--
Gitblit v1.9.3