Commit 48d2a6fa by yangyang

海南车轨处理(海南)

parent d813048e
......@@ -105,6 +105,7 @@ public class SysLogAspect {
System.out.println(redisTemplate.hasKey(redisKey));
if (redisTemplate.hasKey(redisKey)==false) {
Map<String, Object> mapRedis = getMap(401, "已注销!");
attributes.getResponse().setStatus(401);
ResultUtil.responseJson(attributes.getResponse(), mapRedis);
return false;
}
......@@ -147,7 +148,7 @@ public class SysLogAspect {
"\n---类型:"+sysLog.getOperation()+
"\n---调用的方法:"+sysLog.getMethod()+
"\n---传入参数:"+sysLog.getParams()+
"\n---返回结果:"+sysLog.getContent().toString());
"\n---返回结果:"+sysLog.getContent());
return result;
}
/**
......
package com.founder.publicapi.controller;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.founder.commonutils.carEntity.*;
import com.founder.commonutils.publicEntity.MapRestResult;
import com.founder.commonutils.util.ExcelExportUtil;
import com.founder.commonutils.util.JsonUtils;
import com.founder.publicapi.service.CarService;
import com.founder.servicebase.logs.OperLog;
import com.founder.servicebase.logs.OperationType;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.ArrayList;
import java.util.Date;
import java.util.LinkedHashMap;
import java.util.List;
/**
* <p>
* 技侦接口管理 前端控制器
* </p>
*
* @author yangyang
* @since 2021-04-09
*/
@Api(description = "接口管理")
@RestController
@RequestMapping("/car")
public class CarController {
@Autowired
private CarService carService;
// 车辆轨迹接口(科信)
@OperLog(message = "车辆轨迹接口",operation = OperationType.QUERY)
@ApiOperation(value = "车辆轨迹接口")
@PostMapping(value = "/CarTranslate")
public MapRestResult getCarTranslate(@RequestBody CarTranslateParams carTranslateParams) throws Exception {
if(carTranslateParams.getObjectValue().equals("琼AD33988")){
JSONArray list = JsonUtils.readJsonFromClassPath("data/CarTranslate.json", JSONArray.class);
return MapRestResult.build(200,"获取车辆轨迹成功",list.size(),list);
}
long startTime=new Date().getTime();
MapRestResult result=carService.getCarTranslate(carTranslateParams);
long endTime=new Date().getTime();
long timeDiffer=endTime-startTime;
System.out.println("车辆轨迹**请求时长**********"+timeDiffer+"毫秒");
return result;
}
@OperLog(message = "范围内卡口点位数据接口",operation = OperationType.QUERY)
@ApiOperation(value = "范围内卡口点位数据接口")
@PostMapping(value = "/selectKkXx")
public MapRestResult selectKkXx(@RequestBody CarKkXxParams carKkXxParams) {
return carService.selectKkXx(carKkXxParams.getQsjd(),carKkXxParams.getQswd(),carKkXxParams.getJsjd(),carKkXxParams.getJswd());
}
// 车辆回溯接口(科信)
@OperLog(message = "车辆回溯接口",operation = OperationType.QUERY)
@ApiOperation(value = "车辆回溯接口")
@PostMapping(value = "/carOneAreaIAnalysis")
public MapRestResult carOneAreaIAnalysis(@RequestBody CarOneAreaIAnalysisSearchParam carOneAreaIAnalysisSearchParam) {
long sTime=new Date().getTime();
MapRestResult result=carService.carOneAreaIAnalysis(carOneAreaIAnalysisSearchParam);
long eTime=new Date().getTime();
long timeDiffer=eTime-sTime;
System.out.println("车辆轨迹**请求时长**********"+timeDiffer+"毫秒");
return result;
}
//区域徘徊 -结果展示(徘徊次数3次以上)
@OperLog(message = "车辆徘徊接口",operation = OperationType.QUERY)
@ApiOperation(value = "车辆徘徊接口")
@PostMapping("/carOneAreaInfoTrampResultThread")
public MapRestResult carOneAreaInfoTrampResultThread (@RequestBody AreaInfo areaInfo) throws Exception {
MapRestResult xzxtRestResult=carService.OneAreaInfoTrampResultThread(areaInfo);
return xzxtRestResult;
}
@OperLog(message = "轨迹疑似停留点",operation = OperationType.QUERY)
@ApiOperation(value = "轨迹疑似停留点")
@PostMapping("/getTrackYstld")
public MapRestResult getTrackYstld(@RequestBody TrackYsModelCondition track)throws Exception{
List<TrackYstldCondition> returnStr = track.getReturnStr();
if(returnStr.size()>0){
if(returnStr.get(0).getObjectValue().equals("琼AD33988")){
JSONArray list = JsonUtils.readJsonFromClassPath("data/getTrackYstld.json", JSONArray.class);
return MapRestResult.build(200,"获取轨迹疑似停留点成功",list.size(),list);
}
}
return carService.getTrackYstld(track);
}
@OperLog(message = "轨迹疑似落脚点",operation = OperationType.QUERY)
@ApiOperation(value = "轨迹疑似落脚点")
@PostMapping("/getTrackYsljd")
public MapRestResult getTrackYsljd(@RequestBody TrackYsModelCondition track){
return carService.getTrackYsljd(track);
}
@OperLog(message = "轨迹疑似活动区域",operation = OperationType.QUERY)
@ApiOperation(value = "轨迹疑似活动区域")
@PostMapping("/getTrackYshdqy")
public MapRestResult getTrackYshdqy(@RequestBody TrackYsModelCondition track)throws Exception{
List<TrackYstldCondition> returnStr = track.getReturnStr();
if(returnStr.size()>0){
if(returnStr.get(0).getObjectValue().equals("琼AD33988")){
JSONArray list = JsonUtils.readJsonFromClassPath("data/getTrackYshdqy.json", JSONArray.class);
return MapRestResult.build(200,"获取轨迹疑似活动区域成功",list.size(),list);
}
}
return carService.getTrackYshdqy(track);
}
@OperLog(message = "车碰撞结果获取",operation = OperationType.QUERY)
@ApiOperation(value = "车碰撞结果获取")
@PostMapping("/getRegionalsResult")
public MapRestResult getRegionalsResult(@RequestBody TbStRegionalstaskresult tbStRegionalstaskresult) throws Exception {
tbStRegionalstaskresult.setPagePara(Integer.valueOf(tbStRegionalstaskresult.getLimit()));
return carService.getRegionalsResult(tbStRegionalstaskresult);
}
@OperLog(message = "车碰撞结果分类获取",operation = OperationType.QUERY)
@ApiOperation(value = "车碰撞结果分类获取")
@PostMapping("/getRegionalsResultFl")
public MapRestResult getRegionalsResultFl(@RequestBody TbStRegionalstaskresult tbStRegionalstaskresult) throws Exception {
return carService.getRegionalsResultFl(tbStRegionalstaskresult);
}
@RequestMapping(value = "/excel/export",method = RequestMethod.GET)
public void ExportBankCkeckInfo(HttpServletResponse response, HttpServletRequest request) throws Exception {
//这里是笔者实际业务需求中需要得到时间间隔。可忽略
String kssj=request.getParameter("kssj");
String jssj=request.getParameter("jssj");
String plateNum = request.getParameter("objectValue");
CarTranslateParams carTranslateParams = new CarTranslateParams();
carTranslateParams.setKssj(kssj);
carTranslateParams.setJssj(jssj);
carTranslateParams.setObjectValue(plateNum);
List<CarTranslateResult> list = new ArrayList<>();
if(carTranslateParams.getObjectValue().equals("琼AD33988")){
JSONArray jsonArray = JsonUtils.readJsonFromClassPath("data/CarTranslate.json", JSONArray.class);
list = JSONObject.parseArray(jsonArray.toJSONString(), CarTranslateResult.class);
}else{
list = (List<CarTranslateResult>) carService.getCarTranslate(carTranslateParams).getData();
}
System.out.println("打印的起始日期为:"+kssj+",打印的结束日期为:"+jssj);
//定义导出的excel名字
String excelName = "车辆轨迹分析数据";
//获取需要转出的excel表头的map字段
LinkedHashMap<String, String> fieldMap = new LinkedHashMap<>();
fieldMap.put("objectValue","车牌号");
fieldMap.put("x","经度");
fieldMap.put("y","纬度");
fieldMap.put("date","时间");
fieldMap.put("address","卡口位置");
//导出用户相关信息
new ExcelExportUtil().export(excelName,list,fieldMap,response);
}
@OperLog(message = "轨迹点根据星期,时间段分类统计",operation = OperationType.QUERY)
@ApiOperation(value = "轨迹点根据星期,时间段分类统计")
@PostMapping("/getTrackGroupByTime")
public MapRestResult getTrackGroupByTime(@RequestBody TrackYsModelCondition track){
return carService.getTrackGroupByTime(track);
}
}
......@@ -121,14 +121,27 @@ public class SysUsersController {
@ApiOperation(value = "时空注销")
@PostMapping("/skExit")
public Map skExit(HttpServletRequest request,String zjhm) {
public Map skExit(HttpServletRequest request,String identitycard) {
//使用AES-128-CBC加密模式
Date now = new Date();
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMdd");
String today = simpleDateFormat.format(now);
String KEY = "maplogin" + today;
String IV = "map_vues" + today;
Map<String, Object> map = new HashMap<>();
String redisKey = "4600:SKTOKEN" + NetworkUtil.getIpAddr(request) + zjhm;//注销用户
if (redisTemplate.hasKey(redisKey)) {
redisTemplate.delete(redisKey);
try {
identitycard = desEncrypt(identitycard, KEY, IV).trim();
String redisKey = "4600:SKTOKEN" + NetworkUtil.getIpAddr(request) + identitycard;//注销用户
if (redisTemplate.hasKey(redisKey)) {
redisTemplate.delete(redisKey);
}
map.put("status", "200");
map.put("msg", "时空注销成功!");
} catch (Exception e) {
e.printStackTrace();
map.put("status", "201");
map.put("msg", "时空注销失败!");
}
map.put("status", "200");
map.put("msg", "时空注销成功!");
return map;
}
}
package com.founder.publicapi.mapper;
import com.founder.commonutils.carEntity.*;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Component;
import java.util.List;
@Component
@Mapper
public interface CarInfoMapper {
List<KkXxResult> getKkInfoByQsJwd(@Param(value = "qsjd") String qsjd,
@Param(value = "qswd") String qswd,
@Param(value = "jsjd") String jsjd,
@Param(value = "jswd") String jswd);
List<TbStRegionalstaskresult> getAllResult(TbStRegionalstaskresult tbStRegionalstaskresult);
List<TbStRegionalstaskresult> getAllResultall(TbStRegionalstaskresult tbStRegionalstaskresult);
Integer getAllResultcount(TbStRegionalstaskresult tbStRegionalstaskresult);
List<RegionalsDetail> getAllRegionalsDetail(@Param("reultId") String reultId);
RegionalsPerson getAllRegionalsPerson(@Param("sfzhm") String sfzhm);
List<reslutFl> getAllResultFlHs(@Param("taskId") String taskId);
List<reslutFl> getAllResultFl(@Param("taskId") String taskId);
KkdwxxEntity getKkInfo(@Param(value = "sbbh") String sbbh);
}
package com.founder.publicapi.mapper;
import com.founder.commonutils.carEntity.*;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Component;
import java.util.List;
@Component
@Mapper
public interface RegInfoMapper {
void saveRegTask(RegionalsTask regionalsTask);
void saveRegional(Regionals regionals);
boolean saveResult(RegionalsResult regionalsResult);
boolean saveResultPz(CarKkInfo carKkInfo);
Integer selecteRegionalsPerson(@Param("sfzhm") String sfzhm);
void saveRegionalsDetail(RegionalsDetail regionalsDetail);
void saveRegionalsPerson(RegionalsPerson regionalsPerson);
void updateRegionalsResult(RegionalsResult regionalsResult);
void updateRegionalsTask(RegionalsTask regionalsTask);
List<RegionalsTask> selecteRegionalsTasks(SelectRegionalsTasksParams selectRegionalsTasksParams);
List<RegionalsCarCarResult> selecteRegionalsTasksResults(@Param("taskId") String taskId);
List<Regionals> selecteRegionals(@Param("taskId") String taskId);
boolean deleteRegionals(@Param("taskId") String taskId);
boolean updateRegionals(@Param("taskId") String taskId, @Param("taskName") String taskName);
}
package com.founder.publicapi.service;
import com.founder.commonutils.carEntity.*;
import com.founder.commonutils.publicEntity.MapRestResult;
import java.util.List;
/**
* <p>
* 技侦接口 服务类
* </p>
*
* @author yangyang
* @since 2021-04-09
*/
public interface CarService {
MapRestResult selectKkXx(String qsjd, String qswd, String jsjd, String jswd);
MapRestResult getCarTranslate(CarTranslateParams carTranslateParams) throws Exception;
MapRestResult carOneAreaIAnalysis(CarOneAreaIAnalysisSearchParam carOneAreaIAnalysisSearchParam);
MapRestResult carCarAnalysis(CarCarAnalysisSearchParam carCarAnalysisSearchParam) throws Exception;
MapRestResult MoreAreaInfoThread(List<AreaInfo> areaInfos) throws Exception;
MapRestResult getTrackYstld(TrackYsModelCondition track);
MapRestResult getTrackYsljd(TrackYsModelCondition track);
MapRestResult getRegionalsResult(TbStRegionalstaskresult tbStRegionalstaskresult) throws Exception;
MapRestResult getRegionalsResultFl(TbStRegionalstaskresult tbStRegionalstaskresult) throws Exception;
MapRestResult getTrackYshdqy(TrackYsModelCondition track);
MapRestResult OneAreaInfoTrampResultThread(AreaInfo areaInfo) throws Exception;
MapRestResult getTrackGroupByTime(TrackYsModelCondition track);
}
package com.founder.publicapi.service;
import com.founder.commonutils.carEntity.Regionals;
import com.founder.commonutils.carEntity.RegionalsCarCarResult;
import com.founder.commonutils.carEntity.RegionalsTask;
import com.founder.commonutils.carEntity.SelectRegionalsTasksParams;
import com.founder.commonutils.publicEntity.MapRestResult;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
* 服务类
* </p>
*
* @author yangyang
* @since 2021-04-10
*/
public interface RegTaskService {
MapRestResult saveRegTask(RegionalsTask regionalsTask);
MapRestResult saveRegional(Regionals regionals);
List<RegionalsTask> selecteRegionalsTasks(SelectRegionalsTasksParams selectRegionalsTasksParams);
List<RegionalsCarCarResult> selecteRegionalsTasksResults(@Param("taskId") String taskId);
List<Regionals> selecteRegionals(@Param("taskId") String taskId);
boolean deleteRegionals(String taskId);
boolean updateRegionals(String taskId, String taskName);
}
This source diff could not be displayed because it is too large. You can view the blob instead.
package com.founder.publicapi.service.serviceimpl;
import com.founder.commonutils.carEntity.Regionals;
import com.founder.commonutils.carEntity.RegionalsCarCarResult;
import com.founder.commonutils.carEntity.RegionalsTask;
import com.founder.commonutils.carEntity.SelectRegionalsTasksParams;
import com.founder.commonutils.publicEntity.MapRestResult;
import com.founder.publicapi.mapper.RegInfoMapper;
import com.founder.publicapi.service.RegTaskService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/*
*
* <p>
* 服务实现类
* </p>
*
* @author yangyang
* @since 2021-04-10
*/
@Service
public class RegTaskServiceImpl implements RegTaskService {
@Autowired
private RegInfoMapper regInfoMapper;
@Override
public MapRestResult saveRegTask(RegionalsTask regionalsTask) {
regInfoMapper.saveRegTask(regionalsTask);
return MapRestResult.build(200,"任务保存成功","");
}
@Override
public MapRestResult saveRegional(Regionals regionals) {
regInfoMapper.saveRegional(regionals);
return MapRestResult.build(200,"区域保存成功","");
}
@Override
public List<RegionalsTask> selecteRegionalsTasks(SelectRegionalsTasksParams selectRegionalsTasksParams) {
return regInfoMapper.selecteRegionalsTasks(selectRegionalsTasksParams);
}
@Override
public List<RegionalsCarCarResult> selecteRegionalsTasksResults(String taskId) {
return regInfoMapper.selecteRegionalsTasksResults(taskId);
}
@Override
public List<Regionals> selecteRegionals(String taskId) {
return regInfoMapper.selecteRegionals(taskId);
}
@Override
public boolean deleteRegionals(String taskId) {
return regInfoMapper.deleteRegionals(taskId);
}
@Override
public boolean updateRegionals(String taskId,String taskName) {
return regInfoMapper.updateRegionals(taskId,taskName);
}
}
......@@ -254,4 +254,4 @@
"deviceId": "4601026445521009554",
"deviceName": "海口市火车东站 北NE2"
}
]
\ No newline at end of file
]
\ No newline at end of file
[
{
"address": "海南大学(城西校区) 西",
"count": 2,
"kssj": 0,
"tlsj": 119969000,
"tlsjStr": "3小时 10分钟",
"x": "110.32172697487864",
"y": "19.983609946849832"
},
{
"address": "海口市公安局",
"count": 2,
"kssj": 0,
"tlsj": 119969000,
"tlsjStr": "11小时 50分钟",
"x": "110.20018928729324",
"y": "20.04900495151147"
},
{
"address": "五源河休闲度假区",
"count": 2,
"kssj": 0,
"tlsj": 119969000,
"tlsjStr": "4小时",
"x": "110.20503279304414",
"y": "20.047632860587896"
},
{
"address": "海口美兰国际机场T1",
"count": 2,
"kssj": 0,
"tlsj": 119969000,
"tlsjStr": "12小时 50分钟",
"x": "110.45893810364146",
"y": "19.938703969039647"
}
]
\ No newline at end of file
[
{
"address": "海南大学(城西校区) 西",
"count": 2,
"kssj": 0,
"tlsj": 119969000,
"tlsjStr": "3小时 10分钟",
"x": "110.32172697487864",
"y": "19.983609946849832"
},
{
"address": "五源河休闲度假区",
"count": 2,
"kssj": 0,
"tlsj": 119969000,
"tlsjStr": "4小时",
"x": "110.20503279304414",
"y": "20.047632860587896"
}
]
\ No newline at end of file
......@@ -10,6 +10,24 @@
<modelVersion>4.0.0</modelVersion>
<artifactId>carapi</artifactId>
<dependencies>
<dependency>
<groupId>org.oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>10</version>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-rs-client</artifactId>
<version>3.1.11</version>
<scope>compile</scope>
</dependency>
<!--mybatis-plus-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
</dependency>
</dependencies>
<build>
<finalName>carapi</finalName>
</build>
......
......@@ -12,7 +12,6 @@ spring.datasource.driver-class-name=oracle.jdbc.driver.OracleDriver
spring.datasource.url=jdbc:oracle:thin:@10.184.17.3:1521:HNXZXT1
spring.datasource.username=XZXT
spring.datasource.password=XzxtPwd#46
#xml扫包
mybatis-plus.mapper-locations=classpath:com/founder/carapi/mapper/xml/*.xml
mybatis-plus.configuration.map-underscore-to-camel-case=false
......
......@@ -15,6 +15,11 @@
</build>
<dependencies>
<dependency>
<groupId>org.oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>10</version>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-rs-client</artifactId>
<version>3.1.11</version>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment