| | |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import io.swagger.annotations.ApiParam; |
| | | import liquibase.pro.packaged.S; |
| | | import lombok.AllArgsConstructor; |
| | | import okhttp3.OkHttpClient; |
| | | import okhttp3.Request; |
| | | import okhttp3.Response; |
| | | import org.springblade.core.mp.support.Condition; |
| | | import org.springblade.core.mp.support.Query; |
| | | import org.springblade.core.tool.api.R; |
| | |
| | | @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)); |
| | | } |
| | | |
| | | /** |
| | | * 枪支定位 |
| | | * @param |
| | | * @param |
| | | * @return |
| | | */ |
| | | @GetMapping("/Gun") |
| | | public R Gun(String hwysfzh, String szdw, String kssj, String jssj) { |
| | | String s = httpGetOne(hwysfzh, szdw, kssj, jssj); |
| | | return R.data(s); |
| | | } |
| | | |
| | | |
| | | |
| | | public static String httpGetOne(String hwysfzh, String szdw, String kssj, String jssj) { |
| | | OkHttpClient client = new OkHttpClient(); |
| | | Request request = new Request.Builder() |
| | | .url("http://47.49.36.190/api/investigate/gun?hwysfzh="+hwysfzh+"&szdw="+szdw+"&kssj="+kssj+"&jssj="+jssj) |
| | | .get() |
| | | .build(); |
| | | try { |
| | | Response response = client.newCall(request).execute(); |
| | | return response.body().string(); |
| | | } catch (Exception e) { |
| | | |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | } |