| | |
| | | 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 net.sf.json.JSONArray; |
| | | 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; |
| | |
| | | |
| | | /** |
| | | * 自定义分页 |
| | | * @param query page,size |
| | | * |
| | | * @param query page,size |
| | | * @param liveLocation 实时位置信息对象 |
| | | */ |
| | | @GetMapping("/page") |
| | |
| | | |
| | | /** |
| | | * 新增 |
| | | * |
| | | * @param liveLocation 实时位置信息对象 |
| | | */ |
| | | @PostMapping("/save") |
| | |
| | | |
| | | /** |
| | | * 实时位置信息新增,同时新增到轨迹表中 |
| | | * |
| | | * @param liveLocation 实时位置信息对象 |
| | | */ |
| | | @PostMapping("/saveLiveLocationAndLocus") |
| | | @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 { |
| | | } 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){ |
| | | if (status) { |
| | | //新增轨迹 |
| | | Locus locus = new Locus(); |
| | | //封装数据 |
| | | if (null!=liveLocationVo){ |
| | | locus.setLiveLocationId(liveLocationVo.getId()); |
| | | }else { |
| | | if (null != liveLocationInfo) { |
| | | locus.setLiveLocationId(liveLocationInfo.getId()); |
| | | } else { |
| | | locus.setLiveLocationId(liveLocation.getId()); |
| | | } |
| | | if (null!= liveLocation.getLatitude() && null!=liveLocation.getLongitude()){ |
| | | if (null != liveLocation.getLatitude() && null != liveLocation.getLongitude()) { |
| | | locus.setLatitude(liveLocation.getLatitude()); |
| | | locus.setLongitude(liveLocation.getLongitude()); |
| | | } |
| | | locus.setRecordTime(new Date()); |
| | | //新增轨迹 |
| | | boolean save1 = locusService.save(locus); |
| | | if (save1){ |
| | | if (save1) { |
| | | //返回数据 |
| | | return R.status(true); |
| | | } |
| | |
| | | |
| | | /** |
| | | * 修改 |
| | | * |
| | | * @param liveLocation 实时位置信息对象 |
| | | */ |
| | | @PostMapping("/update") |
| | |
| | | |
| | | /** |
| | | * 新增或修改 |
| | | * |
| | | * @param liveLocation 实时位置信息对象 |
| | | */ |
| | | @PostMapping("/submit") |
| | |
| | | |
| | | /** |
| | | * 删除 |
| | | * |
| | | * @param ids 实时位置信息ids 数组 |
| | | */ |
| | | @PostMapping("/remove") |
| | |
| | | |
| | | /** |
| | | * 详情 |
| | | * |
| | | * @param liveLocation 实时位置信息对象 |
| | | */ |
| | | @GetMapping("/detail") |
| | |
| | | |
| | | /** |
| | | * 获取轨迹数据 |
| | | * |
| | | * @param liveLocationVo 实时对象信息 |
| | | * @return |
| | | */ |
| | | @GetMapping("/getLocusInfoList") |
| | | public R<List<LocusVo>> getLocusInfoList(LiveLocationVo liveLocationVo){ |
| | | public R<List<LocusVo>> getLocusInfoList(LiveLocationVo liveLocationVo) { |
| | | 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); |
| | | String a = "[" + s + "]"; |
| | | JSONArray jsonArray = JSONArray.fromObject(a); |
| | | return R.data(jsonArray); |
| | | } |
| | | |
| | | |
| | | 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; |
| | | } |
| | | |
| | | |
| | | } |