aijinhui
2023-11-07 a8fa8c5473d8bd4dc509d9f4b0bb370f443d15ad
清淤
已添加1个文件
已修改9个文件
130 ■■■■ 文件已修改
ard-work/src/main/java/com/ruoyi/sy/controller/ArdSyCarController.java 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/sy/controller/ArdSyCarLockController.java 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/sy/controller/OilWallController.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/sy/domain/ArdAccessFence.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/sy/gps31/PushClientImplPosition.java 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/sy/param/AddCarParam.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/sy/service/ArdAccessFenceService.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/sy/service/IArdSyCarService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdAccessFenceServiceImpl.java 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarServiceImpl.java 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/sy/controller/ArdSyCarController.java
@@ -108,7 +108,6 @@
            }
        };
        carPositionTimer.scheduleAtFixedRate(carPositionTask,date,3*1000);//启用
        //车辆实时位置线程
        PushClientImplAlarm pushClientImplAlarm = new PushClientImplAlarm(ip,ardSyUserList.get(0).getUserId(),ardSyUserList.get(0).getPassword());
        Thread pushClientImplAlarmThread = new Thread(pushClientImplAlarm);
@@ -343,6 +342,8 @@
            return Results.succeed();
        }else {
            map.put("userId",ardSyUser.getUserId());
            map.put("password",ardSyUser.getPassword());
            map.put("passwords",DigestUtils.md5Hex(ardSyUser.getPassword()));
        }
        return Results.succeed(map);
    }
@@ -371,7 +372,7 @@
        ArdSyUser ardSyUser = iArdSyUserService.userById(usersId);
        String carId = map.get("carId");
        String syURL = sysConfigService.getSYURL();
        return ardSyCarService.getCarGPSBycarId(usersId,carId,syURL,ardSyUser);
        return Results.succeed(ardSyCarService.getCarGPSBycarId(usersId,carId,syURL,ardSyUser));
    }
    @PreAuthorize("@ss.hasPermi('sy:syCar:chaseCarByCarId')")
@@ -402,12 +403,11 @@
        long tenSeconds = 1000L;
        Date beforeTenSeconds = new Date(currentTime.getTime() - tenSeconds);
        String startTime = sdf.format(beforeTenSeconds);
        System.out.println(startTime);
        String usersId = SecurityUtils.getUserId();
        ArdSyUser ardSyUser = iArdSyUserService.userById(usersId);
        String syURL = sysConfigService.getSYURL();
        String sessionId = ardSyCarService.getSessionId(syURL,ardSyUser);
        System.out.println(sessionId);
        System.out.println("sessionId:"+sessionId);
        //获取摄像通道信息
        Map<String, Object> result = ardSyCarService.getCarPicture(carId,syURL,sessionId);
        String vs = "";
@@ -415,7 +415,7 @@
            //提取通道信息
            Map<String,Object> map = ((List<Map<String,Object>>)result.get("list")).get(0);
            Map<String, Object> videos = (Map<String, Object>) JSON.parse((String) map.get("videos"));
            System.out.println(videos);
            System.out.println("通道:"+videos);
            vs = (String) videos.get("vs");
        } catch (Exception e) {
            return AjaxResult.error("该车辆没有摄像通道无照片数据!");
@@ -428,10 +428,10 @@
        }
        //拍照
        Map<String,Object> sendCmdMap = ardSyCarService.sendCmd(ardSyUser.getUserId(),syURL,sessionId,carId,channelList);
        System.out.println(sendCmdMap);
        System.out.println("拍照:"+sendCmdMap);
        //获取照片
        Map<String,Object> photoMap = ardSyCarService.getPhoto(syURL,carId,sessionId,startTime);
        System.out.println(photoMap);
        System.out.println("获取照片:"+photoMap);
        return AjaxResult.success(photoMap);
    }
ard-work/src/main/java/com/ruoyi/sy/controller/ArdSyCarLockController.java
@@ -8,6 +8,7 @@
import com.ruoyi.sy.domain.ArdSyCarRtu;
import com.ruoyi.sy.domain.ArdSyUser;
import com.ruoyi.sy.mapper.ArdAccessFenceMapper;
import com.ruoyi.sy.param.AddCarParam;
import com.ruoyi.sy.service.ArdAccessFenceService;
import com.ruoyi.sy.service.ArdSyCarLockService;
import com.ruoyi.sy.service.IArdSyCarService;
@@ -79,8 +80,7 @@
        String usersId = SecurityUtils.getUserId();
        ArdSyUser ardSyUser = iArdSyUserService.userById(usersId);
        String syURL = sysConfigService.getSYURL();
        Results results = ardSyCarService.getCarGPSBycarId(usersId,carId,syURL,ardSyUser);
        Map<String,Object> map = (Map<String, Object>) results.getData();
        Map<String,Object> map = ardSyCarService.getCarGPSBycarId(usersId,carId,syURL,ardSyUser);
        List list1 = (List) map.get("list");
        JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(list1.get(0)));
        String carPlate = (String) jsonObject.get("carPlate");
@@ -116,8 +116,7 @@
        String usersId = SecurityUtils.getUserId();
        ArdSyUser ardSyUser = iArdSyUserService.userById(usersId);
        String syURL = sysConfigService.getSYURL();
        Results results = ardSyCarService.getCarGPSBycarId(usersId,carId,syURL,ardSyUser);
        Map<String,Object> map = (Map<String, Object>) results.getData();
        Map<String,Object> map = ardSyCarService.getCarGPSBycarId(usersId,carId,syURL,ardSyUser);
        List list1 = (List) map.get("list");
        JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(list1.get(0)));
        String carPlate = (String) jsonObject.get("carPlate");
@@ -138,7 +137,8 @@
    @GetMapping("/queryCar")
    @ApiOperation("清淤手动添加车辆查询")
    public AjaxResult queryCar(){
        List<ArdAccessFence> ardAccessFences = ardAccessFenceService.all();
        String url  = sysConfigService.selectConfigByKey("minioIn")+"/";
        List<ArdAccessFence> ardAccessFences = ardAccessFenceService.all(url);
        List<String> carIdList = new ArrayList<>();
        for (int i = 0; i < ardAccessFences.size(); i++) {
            String carId = ardAccessFences.get(i).getCarId();
@@ -151,11 +151,19 @@
    @PostMapping("/addCar")
    @ApiOperation("清淤手动添加车辆保存")
    public AjaxResult addCar(String carId){
        List<CarVo> list = ardSyCarLockService.addCarBefore(carId);
    public AjaxResult addCar(@RequestBody AddCarParam addCarParam){
        List<CarVo> list = ardSyCarLockService.addCarBefore(addCarParam.getCarId());
        analysis(list);
        if(list.size()>0){
            return AjaxResult.success(ardAccessFenceService.addCar(list.get(0)));
            String usersId = SecurityUtils.getUserId();
            ArdSyUser ardSyUser = iArdSyUserService.userById(usersId);
            String syURL = sysConfigService.getSYURL();
            Map<String, Object> map = ardSyCarService.getCarGPSBycarId(usersId,addCarParam.getCarId(),syURL,ardSyUser);
            List list1 = (List) map.get("list");
            JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(list1.get(0)));
            String lng = (String) jsonObject.get("lng");
            String lat = (String) jsonObject.get("lat");
            return AjaxResult.success(ardAccessFenceService.addCar(list.get(0),addCarParam.getIsAlarm(),lng,lat));
        }
        return AjaxResult.success();
    }
@@ -166,7 +174,7 @@
        return AjaxResult.success(ardAccessFenceService.delCar(id));
    }
    @PutMapping("/addCar")
    @PutMapping("/cleanAlarm")
    @ApiOperation("清空报警")
    public AjaxResult updCarAlarm(String id){
        return AjaxResult.success(ardAccessFenceService.updCarAlarm(id));
@@ -180,8 +188,7 @@
        for (int i = 0; i < list.size(); i++) {
            CarVo carVo = list.get(i);
            String carId = carVo.getCarId();
            Results results = ardSyCarService.getCarGPSBycarId(usersId,carId,syURL,ardSyUser);
            Map<String,Object> map = (Map<String, Object>) results.getData();
            Map<String,Object> map = ardSyCarService.getCarGPSBycarId(usersId,carId,syURL,ardSyUser);
            List list1 = (List) map.get("list");
            JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(list1.get(0)));
            String carPlate = (String) jsonObject.get("carPlate");
ard-work/src/main/java/com/ruoyi/sy/controller/OilWallController.java
@@ -8,6 +8,7 @@
import com.ruoyi.sy.domain.*;
import com.ruoyi.sy.param.OilWallParam;
import com.ruoyi.sy.service.*;
import com.ruoyi.system.service.ISysConfigService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
@@ -32,6 +33,9 @@
    @Autowired
    private ArdAccessNumService ardAccessNumService;
    @Autowired
    private ISysConfigService sysConfigService;
    @PostMapping("/add")
    @ApiOperation("添加电子围栏")
@@ -86,7 +90,8 @@
    @GetMapping("/wallCar")
    @ApiOperation("所有进入围栏的车辆")
    public AjaxResult wallCar(){
        return AjaxResult.success(ardAccessFenceService.all());
        String url  = sysConfigService.selectConfigByKey("minioIn")+"/";
        return AjaxResult.success(ardAccessFenceService.all(url));
    }
    @GetMapping("/rollTime")
ard-work/src/main/java/com/ruoyi/sy/domain/ArdAccessFence.java
@@ -27,4 +27,5 @@
    private String alarmLat;
    private String carModel;
    private String drct;
    private Integer isAlarm;
}
ard-work/src/main/java/com/ruoyi/sy/gps31/PushClientImplPosition.java
@@ -131,6 +131,38 @@
                        }
                    }
                }else {
                    //判断是否为手动添加车辆
                    if(ardAccessFence.getIsAlarm()==0){
                        ardAccessFence.setLng(lng);
                        ardAccessFence.setLat(lat);
                        ((ArdAccessFenceServiceImpl)SpringUtils.getBean("ArdAccessFenceServiceImpl")).updAccess(ardAccessFence);
                    }else if(ardAccessFence.getIsAlarm() == 1){
                        ardAccessFence.setNowWallName(null);
                        //如果在路上判断坐标是否与上次一样
                        if(ardAccessFence.getLng().equals(lng) && ardAccessFence.getLat().equals(lat)){
                            //如果坐标一样时间相减
                            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
                            Date nowTime = sdf.parse(time);
                            Date lastTime = sdf.parse(ardAccessFence.getLastTime());
                            Long diff = (nowTime.getTime() - lastTime.getTime())/1000;
                            ArdAccessNum list = ((ArdAccessNumServiceImpl) SpringUtils.getBean("ArdAccessNumServiceImpl")).queryNum();
                            if(list==null){
                                int alarm = list.getAlarm();
                                if(diff>=alarm){
                                    ardAccessFence.setIsWarning(1);
                                    ardAccessFence.setAlarmLat(lat);
                                    ardAccessFence.setAlarmLng(lng);
                                    ((ArdAccessFenceServiceImpl) SpringUtils.getBean("ArdAccessFenceServiceImpl")).updAccess(ardAccessFence);
                                }
                            }
                        }else {
                            //如果不一样更新坐标
                            ardAccessFence.setLat(lat);
                            ardAccessFence.setLng(lng);
                            ardAccessFence.setLastTime(time);
                            ((ArdAccessFenceServiceImpl) SpringUtils.getBean("ArdAccessFenceServiceImpl")).updAccess(ardAccessFence);
                        }
                    }else {
                    //如果车辆有数据判断是否有进入围栏ID,如果没有更新或赋值经纬度,判断是否进入围栏
                    if(ardAccessFence.getIntoShipmentId()==null){
                        ardAccessFence.setLng(lng);
@@ -253,7 +285,8 @@
                        }
                    }
                }
                //清淤入栏结束------------
                }
                //清淤结束------------
                gpsMap.putAll(result);
                String ancestors = (String) gpsMap.get("ancestors");//获取父级部门
ard-work/src/main/java/com/ruoyi/sy/param/AddCarParam.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,12 @@
package com.ruoyi.sy.param;
import lombok.Data;
/**
 * @author Administrator
 */
@Data
public class AddCarParam {
    private String carId;
    private Integer isAlarm;
}
ard-work/src/main/java/com/ruoyi/sy/service/ArdAccessFenceService.java
@@ -17,11 +17,11 @@
    int delAccess(String carId);
    List<ArdAccessFence> all();
    List<ArdAccessFence> all(String url);
    int delCar(String id);
    int updCarAlarm(String id);
    int addCar(CarVo carVo);
    int addCar(CarVo carVo,Integer isAlarm,String lng,String lat);
}
ard-work/src/main/java/com/ruoyi/sy/service/IArdSyCarService.java
@@ -127,7 +127,7 @@
    Results getCarGPSTrack(Map<String,String> map,String syURL, ArdSyUser ardSyUser);
    Results getCarGPSBycarId(String usersId, String carId, String syURL, ArdSyUser ardSyUser);
    Map<String, Object> getCarGPSBycarId(String usersId, String carId, String syURL, ArdSyUser ardSyUser);
    String getSessionId(String syURL,ArdSyUser ardSyUser);
ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdAccessFenceServiceImpl.java
@@ -55,8 +55,13 @@
    }
    @Override
    public List<ArdAccessFence> all() {
        return ardAccessFenceMapper.selectList(null);
    public List<ArdAccessFence> all(String url) {
        List<ArdAccessFence> list = ardAccessFenceMapper.selectList(null);
        for (int i = 0; i < list.size(); i++) {
            ArdAccessFence ardAccessFence = list.get(i);
            ardAccessFence.setCarModel(url+ardAccessFence.getCarModel());
        }
        return list;
    }
    @Override
@@ -72,7 +77,7 @@
    }
    @Override
    public int addCar(CarVo carVo) {
    public int addCar(CarVo carVo,Integer isAlarm,String lng,String lat) {
        ArdAccessFence ardAccessFence = new ArdAccessFence();
        ardAccessFence.setId(String.valueOf(UUID.randomUUID()));
        ardAccessFence.setCarId(carVo.getCarId());
@@ -81,6 +86,9 @@
        ardAccessFence.setDeptName(carVo.getDeptName());
        ardAccessFence.setCarModel(carVo.getCarModel());
        ardAccessFence.setIsWarning(0);
        ardAccessFence.setIsAlarm(isAlarm);
        ardAccessFence.setLng(lng);
        ardAccessFence.setLat(lat);
        return ardAccessFenceMapper.insert(ardAccessFence);
    }
ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarServiceImpl.java
@@ -782,7 +782,7 @@
    }
    @Override
    public Results getCarGPSBycarId(String usersId, String carId, String syURL, ArdSyUser ardSyUser) {
    public Map<String, Object> getCarGPSBycarId(String usersId, String carId, String syURL, ArdSyUser ardSyUser) {
        Map<String, String> result = logInMap.get(Integer.parseInt(usersId));
        //31用户名密码
        String username31 = ardSyUser.getUserId();
@@ -792,9 +792,7 @@
        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);
        return sYClient.getCarNearPositionByCarId(syURL, carId, result.get("userId"), result.get("sessionId"));
    }
    @Override
@@ -822,7 +820,7 @@
            params.put("action", "0");//上传模式
            String paramsStr = com.alibaba.fastjson2.JSON.toJSONString(params);
            paramsStr = URLEncoder.encode(paramsStr,"UTF-8");
        System.out.println(paramsStr);
            System.out.println("拍照参数:"+paramsStr);
            return sYClient.sendCmd(syURL,userId,carId,301,"MediaTake",paramsStr,sessionId);
//        }
//        return sendCmdMap;
@@ -831,7 +829,9 @@
    @Override
    public Map<String, Object> getPhoto(String syURL, String carId, String sessionId,String startTime) {
        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
        return sYClient.getPhoto(syURL,carId,startTime,sdf.format(new Date()),sessionId);
        String endTime = sdf.format(new Date());
        System.out.println("开始时间:"+startTime+"  ç»“束时间:"+endTime);
        return sYClient.getPhoto(syURL,carId,startTime,endTime,sessionId);
    }
    @Override