| | |
| | | @ApiOperation(value = "新增", notes = "传入liveLocation") |
| | | public R saveLiveLocationAndLocus(@RequestBody LiveLocation liveLocation) { |
| | | //先查询是否已有实时位置信息,如果有,则更新,没有则插入 |
| | | LiveLocationVo liveLocationVo = liveLocationService.selectLiveLocationInfo(liveLocation); |
| | | LiveLocation liveLocationInfo = liveLocationService.getLiveLocationInfo(liveLocation); |
| | | boolean status = false; |
| | | if (null == liveLocationVo){ |
| | | if (null == liveLocationInfo){ |
| | | //新增 |
| | | liveLocation.setRecordTime(new Date()); |
| | | status = liveLocationService.save(liveLocation); |
| | | }else { |
| | | //更新 |
| | | liveLocationVo.setRecordTime(new Date()); |
| | | status = liveLocationService.updateById(liveLocationVo); |
| | | liveLocationInfo.setRecordTime(new Date()); |
| | | liveLocationInfo.setLongitude(liveLocation.getLongitude()); |
| | | liveLocationInfo.setLatitude(liveLocation.getLatitude()); |
| | | status = liveLocationService.updateById(liveLocationInfo); |
| | | } |
| | | |
| | | if (status){ |
| | | //新增轨迹 |
| | | Locus locus = new Locus(); |
| | | //封装数据 |
| | | if (null!=liveLocationVo){ |
| | | locus.setLiveLocationId(liveLocationVo.getId()); |
| | | if (null!=liveLocationInfo){ |
| | | locus.setLiveLocationId(liveLocationInfo.getId()); |
| | | }else { |
| | | locus.setLiveLocationId(liveLocation.getId()); |
| | | } |
| | |
| | | return R.data(liveLocationService.getLocusInfoList(liveLocationVo)); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 获取指令接收人的轨迹数据 |
| | | * @param liveLocationVo 实时对象信息 |
| | | * @return |
| | | */ |
| | | @GetMapping("/getDirectiveLocusInfoList") |
| | | public R<List<List<LocusVo>>> getDirectiveLocusInfoList(LiveLocationVo liveLocationVo){ |
| | | return R.data(liveLocationService.getDirectiveLocusInfoList(liveLocationVo)); |
| | | } |
| | | |
| | | /** |
| | | * 首页实时定位 |
| | | * @return |
| | | */ |
| | | @GetMapping("/getLiveLocationVoList") |
| | | public R<List<LiveLocationVo>> getLiveLocationVoList(LiveLocationVo liveLocationVo){ |
| | | return R.data(liveLocationService.getLiveLocationVoList(liveLocationVo)); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 获取指令接收人的定位信息 |
| | | * @param liveLocationVo 定位数据信息 |
| | | * @return |
| | | */ |
| | | @GetMapping("/getDirectiveLiveLocationVoList") |
| | | public R<List<LiveLocationVo>> getDirectiveLiveLocationVoList(LiveLocationVo liveLocationVo){ |
| | | return R.data(liveLocationService.getDirectiveLiveLocationVoList(liveLocationVo)); |
| | | } |
| | | |
| | | } |