| | |
| | | package com.ruoyi.sy.controller; |
| | | |
| | | import com.alibaba.fastjson.JSONArray; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.github.pagehelper.PageHelper; |
| | | import com.github.pagehelper.PageInfo; |
| | | import com.ruoyi.common.core.domain.AjaxResult; |
| | | import com.ruoyi.common.utils.SecurityUtils; |
| | | import com.ruoyi.common.utils.spring.SpringUtils; |
| | | import com.ruoyi.sy.domain.ArdAccessFence; |
| | | import com.ruoyi.sy.domain.ArdSyCarLock; |
| | | 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; |
| | | import com.ruoyi.sy.service.IArdSyUserService; |
| | | import com.ruoyi.sy.param.*; |
| | | import com.ruoyi.sy.service.*; |
| | | import com.ruoyi.sy.service.impl.ArdSyCarRtuServiceImpl; |
| | | import com.ruoyi.sy.vo.CarLockVo; |
| | | import com.ruoyi.sy.vo.CarVo; |
| | | import com.ruoyi.sy.vo.RtuVo; |
| | | import com.ruoyi.system.service.ISysConfigService; |
| | | import com.ruoyi.utils.mqtt.MqttConsumer; |
| | | import com.ruoyi.utils.result.Results; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import org.eclipse.paho.client.mqttv3.MqttException; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | |
| | | private ArdSyCarLockService ardSyCarLockService; |
| | | @Autowired |
| | | private ArdAccessFenceService ardAccessFenceService; |
| | | @Autowired |
| | | private ArdSyCarRtuService ardSyCarRtuService; |
| | | |
| | | @GetMapping("/car") |
| | | @ApiOperation("查询所有未挂锁的车辆") |
| | | public Results car(){ |
| | | public AjaxResult car(){ |
| | | List<CarVo> list = ardSyCarLockService.car(); |
| | | analysis(list); |
| | | return Results.succeed(list); |
| | | return AjaxResult.success(list); |
| | | } |
| | | |
| | | @GetMapping("/carAddOne") |
| | | @ApiOperation("查询所有未挂锁的车辆加本车辆信息") |
| | | public Results carAddOne(String carId){ |
| | | public AjaxResult carAddOne(String carId){ |
| | | List<CarVo> list = ardSyCarLockService.carAddOne(carId); |
| | | analysis(list); |
| | | return Results.succeed(list); |
| | | return AjaxResult.success(list); |
| | | } |
| | | |
| | | @PostMapping("/add") |
| | | @ApiOperation("添加rtu") |
| | | public Results add(String carId){ |
| | | return Results.succeed("成功添加"+ardSyCarLockService.addRtu(carId)+"条数据"); |
| | | public AjaxResult add(@RequestBody AddRtuParam addRtuParam){ |
| | | return AjaxResult.success("成功添加"+ardSyCarLockService.addRtu(addRtuParam)+"条数据,订阅车辆"+addRtuParam.getCarId()+"成功"); |
| | | } |
| | | |
| | | @DeleteMapping("/del") |
| | | @ApiOperation("删除rtu") |
| | | public Results del(String id){ |
| | | return Results.succeed("成功删除"+ardSyCarLockService.delCar(id)+"条数据"); |
| | | public AjaxResult del(String id){ |
| | | return AjaxResult.success("成功删除"+ardSyCarLockService.delCar(id)+"条数据"); |
| | | } |
| | | |
| | | @GetMapping("/one") |
| | | @ApiOperation("查询一条rtu及锁") |
| | | public Results one(String carId){ |
| | | public AjaxResult one(String carId){ |
| | | CarLockVo carLockVo = new CarLockVo(); |
| | | CarVo carVo = ardSyCarLockService.carOne(carId); |
| | | String usersId = SecurityUtils.getUserId(); |
| | |
| | | String syURL = sysConfigService.getSYURL(); |
| | | 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"); |
| | | carVo.setCarPlate(carPlate); |
| | | String drvName = (String) jsonObject.get("drvName"); |
| | | carVo.setDrvName(drvName); |
| | | String drvPhone = (String) jsonObject.get("drvPhone"); |
| | | carVo.setDrvPhone(drvPhone); |
| | | carLockVo.setCar(carVo); |
| | | if(list1.size()>0){ |
| | | JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(list1.get(0))); |
| | | String carPlate = (String) jsonObject.get("carPlate"); |
| | | carVo.setCarPlate(carPlate); |
| | | String drvName = (String) jsonObject.get("drvName"); |
| | | carVo.setDrvName(drvName); |
| | | String drvPhone = (String) jsonObject.get("drvPhone"); |
| | | carVo.setDrvPhone(drvPhone); |
| | | } |
| | | |
| | | String rtu = carVo.getRtu(); |
| | | carLockVo.setCarLockList(ardSyCarLockService.carLock(rtu)); |
| | | return Results.succeed(carLockVo); |
| | | ArdSyCarRtu ardSyCarRtu = ardSyCarRtuService.one(carId); |
| | | carVo.setInstallType(ardSyCarRtu.getInstallType()); |
| | | carVo.setUnloadType(ardSyCarRtu.getUnloadType()); |
| | | carLockVo.setCar(carVo); |
| | | return AjaxResult.success(carLockVo); |
| | | } |
| | | |
| | | @GetMapping("/query") |
| | | @ApiOperation("查询所有rtu挂载的车辆") |
| | | public Results query(){ |
| | | public Results query(LockPageParam lockPageParam){ |
| | | List<CarVo> list = ardSyCarLockService.carList(); |
| | | analysis(list); |
| | | return Results.succeed(list); |
| | | List<CarVo> newList = new ArrayList<>(); |
| | | for (int i = 0; i < list.size(); i++) { |
| | | String plate = list.get(i).getCarPlate(); |
| | | if(lockPageParam.getCarPlate()!=null){ |
| | | if(plate.contains(lockPageParam.getCarPlate())){ |
| | | newList.add(list.get(i)); |
| | | } |
| | | } |
| | | } |
| | | PageHelper.startPage(lockPageParam.getPageNum(),lockPageParam.getPageSize()); |
| | | if(lockPageParam.getCarPlate()!=null){ |
| | | return Results.succeed(new PageInfo<>(newList)); |
| | | }else { |
| | | return Results.succeed(new PageInfo<>(list)); |
| | | } |
| | | } |
| | | |
| | | @PostMapping("/addLock") |
| | |
| | | return Results.succeed("成功添加/修改"+ardSyCarLockService.addUpdLock(locks)+"条数据"); |
| | | } |
| | | |
| | | @GetMapping("/onrRtu") |
| | | @GetMapping("/oneRtu") |
| | | @ApiOperation("更改Rtu前查询") |
| | | public Results onrRtu(String carId){ |
| | | public Results oneRtu(String carId){ |
| | | RtuVo rtuVo = ardSyCarLockService.updRtu(carId); |
| | | String usersId = SecurityUtils.getUserId(); |
| | | ArdSyUser ardSyUser = iArdSyUserService.userById(usersId); |
| | |
| | | return AjaxResult.success(ardAccessFenceService.updCarAlarm(id)); |
| | | } |
| | | |
| | | @PostMapping("/onOff") |
| | | @ApiOperation("远程开锁") |
| | | public AjaxResult onOff(@RequestBody LockTypeParam lockTypeParam) throws MqttException { |
| | | return ardSyCarLockService.onOff(lockTypeParam); |
| | | } |
| | | |
| | | @PostMapping("/seal") |
| | | @ApiOperation("远程封印") |
| | | public AjaxResult seal(@RequestBody RtuTypeParam rtuTypeParam) { |
| | | return ardSyCarLockService.seal(rtuTypeParam); |
| | | } |
| | | |
| | | @GetMapping("/lockIng") |
| | | @ApiOperation("实时锁状态") |
| | | public AjaxResult lockIng(String carId) { |
| | | return ardSyCarLockService.lockIng(carId); |
| | | } |
| | | |
| | | |
| | | //获取31车辆车牌号驾驶员和电话 |
| | | public List<CarVo> analysis(List<CarVo> list){ |
| | | String usersId = SecurityUtils.getUserId(); |
| | |
| | | String carId = carVo.getCarId(); |
| | | 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"); |
| | | carVo.setCarPlate(carPlate); |
| | | String drvName = (String) jsonObject.get("drvName"); |
| | | carVo.setDrvName(drvName); |
| | | String drvPhone = (String) jsonObject.get("drvPhone"); |
| | | carVo.setDrvPhone(drvPhone); |
| | | if(list1.size()>0){ |
| | | JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(list1.get(0))); |
| | | String carPlate = (String) jsonObject.get("carPlate"); |
| | | carVo.setCarPlate(carPlate); |
| | | String drvName = (String) jsonObject.get("drvName"); |
| | | carVo.setDrvName(drvName); |
| | | String drvPhone = (String) jsonObject.get("drvPhone"); |
| | | carVo.setDrvPhone(drvPhone); |
| | | } |
| | | } |
| | | return list; |
| | | } |