From 1744329b3f9c3726936a1e1542620dd2780111b6 Mon Sep 17 00:00:00 2001 From: zhangnaisong <2434969829@qq.com> Date: 星期一, 24 七月 2023 12:11:42 +0800 Subject: [PATCH] 三一车辆接口改為forest提交 --- ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarServiceImpl.java | 69 +++++++++++++++++++++++++--------- 1 files changed, 51 insertions(+), 18 deletions(-) diff --git a/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarServiceImpl.java b/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarServiceImpl.java index b14176e..5f23307 100644 --- a/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarServiceImpl.java +++ b/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarServiceImpl.java @@ -8,13 +8,19 @@ import java.util.function.Predicate; import java.util.stream.Collectors; +import com.alibaba.fastjson.JSON; +import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.utils.uuid.IdUtils; +import com.ruoyi.common.websocket.util.WebSocketUtils; import com.ruoyi.device.hiksdk.config.MinioClientSingleton; import com.ruoyi.device.hiksdk.util.minio.MinioUtils; import com.ruoyi.sy.domain.ArdSyUser; +import com.ruoyi.sy.gps31.PositionContainer; import com.ruoyi.sy.mapper.ArdSyUserMapper; import com.ruoyi.system.domain.SysConfig; import com.ruoyi.system.mapper.SysConfigMapper; +import com.ruoyi.system.mapper.SysUserMapper; +import com.ruoyi.utils.forest.SYClient; import com.ruoyi.utils.httpclient.SYCarClient; import com.ruoyi.utils.result.Constants; import com.ruoyi.utils.result.Results; @@ -25,6 +31,7 @@ import io.minio.http.Method; import io.minio.messages.Contents; import io.minio.messages.Item; +import org.apache.commons.codec.digest.DigestUtils; import org.springframework.stereotype.Service; import com.ruoyi.sy.mapper.ArdSyCarMapper; import com.ruoyi.sy.domain.ArdSyCar; @@ -32,6 +39,8 @@ import org.springframework.web.multipart.MultipartFile; import javax.annotation.Resource; + +import static com.ruoyi.common.websocket.util.WebSocketUtils.ONLINE_USER_SESSIONS; /** * 涓変竴杞﹁締Service涓氬姟灞傚鐞� @@ -50,6 +59,11 @@ @Resource private ArdSyUserMapper ardSyUserMapper; + @Resource + private SysUserMapper userMapper; + + @Resource + private SYClient sYClient; /** * 鏌ヨ涓変竴杞﹁締 @@ -150,9 +164,12 @@ return result; }else{ ArdSyUser ardSyUser = ardSyUserList.get(0); - Map<String,Object> LogInResult = SYCarClient.logIn(syURL,ardSyUser.getUserId(), ardSyUser.getPassword()); + //Map<String,Object> LogInResult = SYCarClient.logIn(syURL,ardSyUser.getUserId(), ardSyUser.getPassword()); + String passwordMd5 = DigestUtils.md5Hex(ardSyUser.getPassword()); + Map<String,Object> LogInResult = sYClient.logIn(syURL,passwordMd5,ardSyUser.getUserId()); String sessionId = (String) LogInResult.get("sessionId"); - Map<String,Object> carListMap = SYCarClient.getCarList(syURL,sessionId); + //Map<String,Object> carListMap = SYCarClient.getCarList(syURL,sessionId); + Map<String,Object> carListMap = sYClient.getCarList(syURL,sessionId); if(((String)carListMap.get("rspCode")).equals("1")){ List<Map<String,Object>> list = (List<Map<String,Object>>) carListMap.get("list"); ArdSyCar ardSyCar = new ArdSyCar(); @@ -202,25 +219,14 @@ return result; }else{ ArdSyUser ardSyUser = ardSyUserList.get(0); - Map<String,Object> LogInResult = SYCarClient.logIn(syURL,ardSyUser.getUserId(), ardSyUser.getPassword()); + //Map<String,Object> LogInResult = SYCarClient.logIn(syURL,ardSyUser.getUserId(), ardSyUser.getPassword()); + String passwordMd5 = DigestUtils.md5Hex(ardSyUser.getPassword()); + Map<String,Object> LogInResult = sYClient.logIn(syURL,passwordMd5,ardSyUser.getUserId()); String sessionId = (String) LogInResult.get("sessionId"); - Map<String,Object> carListMap = SYCarClient.getCarList(syURL,sessionId); + //Map<String,Object> carListMap = SYCarClient.getCarList(syURL,sessionId); + Map<String,Object> carListMap = sYClient.getCarList(syURL,sessionId); if(((String)carListMap.get("rspCode")).equals("1")){ List<Map<String,Object>> list = (List<Map<String,Object>>) carListMap.get("list"); - /*ArdSyCar ardSyCar = new ArdSyCar(); - List<ArdSyCar> ardSyCarList = ardSyCarMapper.selectArdSyCarList(ardSyCar); - List<String> carIdList = new ArrayList(); - for(ArdSyCar innerArdSyCar : ardSyCarList){ - carIdList.add(innerArdSyCar.getCarId()); - } - - List<Map<String,Object>> carList = list.stream().filter(new Predicate<Map<String,Object>>(){ - @Override - public boolean test(Map<String,Object> map) { - return !carIdList.contains((String)map.get("carId")); - } - }).collect(Collectors.toList()); - result.put("data",carList);*/ result.put("data",list); result.put("code","200"); return result; @@ -333,6 +339,7 @@ // return result; // } + @Override public Results carListById(String id) { try { @@ -347,4 +354,30 @@ return Results.error(e.toString()); } } + + @Override + public Map<String, Object> getArdSyCarAndDeptByCarId(String carId) { + Map<String, Object> result = ardSyCarMapper.getArdSyCarAndDeptByCarId(carId); + return result; + } + + @Override + public void sendArdSyCarPosition() { + for(String key : ONLINE_USER_SESSIONS.keySet()){ + SysUser sysUser = userMapper.selectUserById(key); + String deptId = String.valueOf(sysUser.getDeptId()); + Map<String,Map<String,Object>> map = PositionContainer.getDeptPositionMap().get(deptId); + Map<Integer,Object> data = new HashMap(); + data.put(30000, map.values()); + WebSocketUtils.sendMessage(ONLINE_USER_SESSIONS.get(key), JSON.toJSONString(data)); + } + } + + @Override + public void sendArdSyCarAlarmByCarId(String carId, Map<Integer,Object> data) { + List<SysUser> result = userMapper.getSysUserByCarId(carId); + for(SysUser sysUser : result){ + WebSocketUtils.sendMessage(ONLINE_USER_SESSIONS.get(sysUser.getUserId()), JSON.toJSONString(data)); + } + } } -- Gitblit v1.9.3