| | |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.ruoyi.common.core.domain.entity.SysUser; |
| | | import com.ruoyi.common.utils.SecurityUtils; |
| | | import com.ruoyi.common.utils.uuid.IdUtils; |
| | | import com.ruoyi.common.websocket.util.WebSocketUtils; |
| | | import com.ruoyi.utils.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 javax.annotation.Resource; |
| | | |
| | | import static com.ruoyi.common.websocket.util.WebSocketUtils.ONLINE_USER_SESSIONS; |
| | | import static com.ruoyi.utils.websocket.util.WebSocketUtils.ONLINE_USER_SESSIONS; |
| | | |
| | | /** |
| | | * 三一车辆Service业务层处理 |
| | |
| | | public void sendArdSyCarPosition() { |
| | | for(String key : ONLINE_USER_SESSIONS.keySet()){ |
| | | SysUser sysUser = userMapper.selectUserById(key); |
| | | if(sysUser == null){ |
| | | return; |
| | | } |
| | | String deptId = String.valueOf(sysUser.getDeptId()); |
| | | Map<String,Map<String,Object>> map = PositionContainer.getDeptPositionMap().get(deptId); |
| | | if(map != null){ |
| | |
| | | carList31 = sYClient.getCarList1(syURL,teamId, result.get("userId"),result.get("sessionId")); |
| | | //拿到车辆数据 |
| | | list= (List) carList31.get("list"); |
| | | List<String> carIdList = new ArrayList(); |
| | | //所有carId |
| | | for(Map<String,String> m : list){ |
| | | carIdList.add(m.get("carId")); |
| | | } |
| | | if(carIdList.size() == 0){ |
| | | Map<String,String> map0 = new HashMap(); |
| | | map0.put("list", "{}"); |
| | | map0.put("rspCode", "1"); |
| | | list.add(map0); |
| | | if(list.isEmpty()){ |
| | | return list; |
| | | } |
| | | //添加车辆属性 |
| | | for(Map<String,String> m : list){ |
| | | switch (m.get("state")) { |
| | | case "1": |
| | | m.put("carState", "离线-从未报定位");break; |
| | | case "2": |
| | | m.put("carState", "离线-欠费");break; |
| | | case "3": |
| | | m.put("carState", "离线");break; |
| | | case "4": |
| | | m.put("carState", "离线-报警");break; |
| | | case "5": |
| | | m.put("carState", "在线-从未报定位");break; |
| | | case "6": |
| | | m.put("carState", "在线-欠费");break; |
| | | case "7": |
| | | m.put("carState", "在线-行驶");break; |
| | | case "8": |
| | | m.put("carState", "在线-行驶-报警");break; |
| | | case "9": |
| | | m.put("carState", "在线-停车-ACC关");break; |
| | | case "10": |
| | | m.put("carState", "在线-停车-ACC开");break; |
| | | case "11": |
| | | m.put("carState", "在线-停车-ACC关-报警");break; |
| | | case "12": |
| | | m.put("carState", "在线-停车-ACC开-报警");break; |
| | | case "13": |
| | | m.put("carState", "在线-无效定位");break; |
| | | default: |
| | | break; |
| | | }else { |
| | | List<String> carIdList = new ArrayList(); |
| | | //所有carId |
| | | for(Map<String,String> m : list){ |
| | | carIdList.add(m.get("carId")); |
| | | } |
| | | if(carIdList.size() == 0){ |
| | | Map<String,String> map0 = new HashMap(); |
| | | map0.put("list", "{}"); |
| | | map0.put("rspCode", "1"); |
| | | list.add(map0); |
| | | return list; |
| | | } |
| | | //添加车辆属性 |
| | | for(Map<String,String> m : list){ |
| | | switch (m.get("state")) { |
| | | case "1": |
| | | m.put("carState", "离线-从未报定位");break; |
| | | case "2": |
| | | m.put("carState", "离线-欠费");break; |
| | | case "3": |
| | | m.put("carState", "离线");break; |
| | | case "4": |
| | | m.put("carState", "离线-报警");break; |
| | | case "5": |
| | | m.put("carState", "在线-从未报定位");break; |
| | | case "6": |
| | | m.put("carState", "在线-欠费");break; |
| | | case "7": |
| | | m.put("carState", "在线-行驶");break; |
| | | case "8": |
| | | m.put("carState", "在线-行驶-报警");break; |
| | | case "9": |
| | | m.put("carState", "在线-停车-ACC关");break; |
| | | case "10": |
| | | m.put("carState", "在线-停车-ACC开");break; |
| | | case "11": |
| | | m.put("carState", "在线-停车-ACC关-报警");break; |
| | | case "12": |
| | | m.put("carState", "在线-停车-ACC开-报警");break; |
| | | case "13": |
| | | m.put("carState", "在线-无效定位");break; |
| | | default: |
| | | break; |
| | | } |
| | | } |
| | | } |
| | | return list; |
| | |
| | | return Results.succeed(list); |
| | | } |
| | | } |
| | | |
| | | |
| | | public Map<String,List<String>> getInfo(String type,String stts){ |
| | | if(stts.isEmpty()){ |
| | |
| | | return new HashMap<String,List<String>>(); |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | public Results getCarGPSBycarId(String usersId,String carId,String syURL,ArdSyUser ardSyUser){ |
| | | Map<String, String> result = logInMap.get(Integer.parseInt(usersId)); |
| | | //31用户名密码 |
| | | String username31 = ardSyUser.getUserId(); |
| | | String password31 = ardSyUser.getPassword(); |
| | | String passwordMd5 = DigestUtils.md5Hex(password31); |
| | | Map<String, Object> result1 = sYClient.logIn(syURL,passwordMd5, username31); |
| | | result = new HashMap(); |
| | | result.put("userId", username31); |
| | | result.put("sessionId", (String) result1.get("sessionId")); |
| | | Map<String,Object> result0 = new HashMap(); |
| | | result0 = sYClient.getCarNearPositionByCarId(syURL,carId,result.get("userId"),result.get("sessionId")); |
| | | return Results.succeed(result0); |
| | | } |
| | | } |