Commit f7a9f1d7 by yangyang

湖南车轨对接、代码同步提交(湖南)

parent 21a2a560
......@@ -40,19 +40,26 @@ public class ExportExcelUtil<T> {
value++;
}
}
//创建Excel工作薄对象
HSSFWorkbook wb = new HSSFWorkbook();
//创建Excel工作表对象
HSSFSheet sheet = wb.createSheet(title);
// 设置列宽
sheet.setDefaultColumnWidth((short) 15);
// 生成一个样式
//创建单元格样式
HSSFCellStyle style = wb.createCellStyle();
//创建Excel工作表的行
HSSFRow row = sheet.createRow(0);
style.setAlignment(HSSFCellStyle.ALIGN_CENTER);
System.out.println(HSSFWorkbook.class.getProtectionDomain().getCodeSource().getLocation());
HSSFCell cell;
Collection<String> c = headersNameMap.values();// 拿到表格所有标题的value的集合
// 拿到表格所有标题的value的集合
Collection<String> c = headersNameMap.values();
Iterator<String> it = c.iterator();// 表格标题的迭代器
// 根据选择的字段生成表头
short size = 0;
int size = 0;
while (it.hasNext()) {
System.out.println(it);
String s = it.toString();
cell = row.createCell(size);
cell.setCellValue(it.next().toString());
cell.setCellStyle(style);
......@@ -107,7 +114,7 @@ public class ExportExcelUtil<T> {
} else {
textVal = null;
}
row.createCell((short) zdCell)
row.createCell( zdCell)
.setCellValue(textVal);
zdCell++;
} catch (Exception e) {
......
......@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.founder.commonutils.Exception.TokenException;
import com.founder.commonutils.model.newPublicEntity.*;
import com.founder.commonutils.util.JwtUser;
import com.founder.commonutils.util.NetworkUtil;
import com.founder.commonutils.util.ResultUtil;
import com.founder.servicebase.service.SkServiceApplyService;
import com.founder.servicebase.service.SkServiceService;
......@@ -82,7 +83,7 @@ public class TokenInterceptor implements HandlerInterceptor {
JSONObject object = new JSONObject(sub);
ThirdToken token = new ThirdToken(object);
System.out.println(token);
str = verifyToken(token);
str = verifyToken(request,token);
if (str.equals("")) {
name = token.getServiceName();
return true;
......@@ -163,11 +164,15 @@ public class TokenInterceptor implements HandlerInterceptor {
/**
* 校验第三方token
*/
public String verifyToken(ThirdToken token) {
public String verifyToken(HttpServletRequest request,ThirdToken token) {
String str = "";
// ip验证
if(!token.getIp().contains(NetworkUtil.getIpAddr(request))){
return "ip限制!";
}
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.eq("applyGs", token.getGsNama());
queryWrapper.eq("applyUrl", token.getIp());
queryWrapper.like("applyUrl", token.getIp());
queryWrapper.eq("status", "1");
List<SkServiceApply> list = skServiceApplyService.list(queryWrapper);
if (list == null || list.size() == 0) {
......@@ -175,6 +180,7 @@ public class TokenInterceptor implements HandlerInterceptor {
} else {
QueryWrapper queryWrapper1 = new QueryWrapper();
queryWrapper1.eq("serviceName", token.getServiceName());
queryWrapper1.like("serviceUrl", request.getRequestURI());
List<String> serviceIds = getServiceIds(list);
queryWrapper1.in("xxzjbh", serviceIds);
List<SkService> list1 = service.list(queryWrapper1);
......
......@@ -36,5 +36,8 @@ public class SkSysLog implements Serializable {
private String content; // 返回值
private String url; // 请求url
private String lx; // 类型 1时空 2三方
//添加set和get方法
}
\ No newline at end of file
......@@ -8,6 +8,7 @@ import com.founder.commonutils.model.newPublicEntity.ThirdToken;
import com.founder.commonutils.model.newPublicEntity.Token;
import com.founder.commonutils.util.JwtUser;
import com.founder.commonutils.util.KeyUtil;
import com.founder.commonutils.util.NetworkUtil;
import com.founder.servicebase.logs.mapper.mysqlMapper.SkSysLogMapper;
import io.jsonwebtoken.Claims;
import lombok.SneakyThrows;
......@@ -46,8 +47,6 @@ public class SysLogAspect {
@Autowired
private SkSysLogMapper sysLogMapper;
@Autowired
private SqlSessionFactory sqlSessionFactory;
private static Logger LOG = LoggerFactory.getLogger(SysLogAspect.class);
//定义切点 @Pointcut
......@@ -97,15 +96,20 @@ public class SysLogAspect {
// 接收到请求,记录请求内容
ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
HttpServletRequest request = attributes.getRequest();
if (myLog != null && myLog.operation().equals("LOGIN")) {
// 系统登录和单点登录日志处理
if (myLog != null && (myLog.operation().equals("LOGIN")||myLog.operation().equals("DDLOGIN"))) {
SysUser user = (SysUser) map.get("user");
SimpleDateFormat ss = new SimpleDateFormat("yyyyMMdd");
String today = ss.format(new Date());
String KEY = "maplogin" + today;
String IV = "map_vues" + today;
String trim = desEncrypt(user.getUsername(), KEY, IV).trim();
sysLog.setUserid(trim);
if(myLog.operation().equals("LOGIN")){
String trim = desEncrypt(user.getUsername(), KEY, IV).trim();
sysLog.setUserid(trim);
}else if(myLog.operation().equals("DDLOGIN")){
String trim = desEncrypt(user.getIdentitycard(), KEY, IV).trim();
sysLog.setUserid(trim);
}
} else {
//获取token信息
Claims claims = null;
......@@ -118,8 +122,10 @@ public class SysLogAspect {
ThirdToken token = new ThirdToken(object);
System.out.println("thirdToken===>" + token);
sysLog.setUserid(token.getGsNama());
sysLog.setLx("2");
} catch (TokenException e) {
sysLog.setUserid("system");
sysLog.setUserid("error");
sysLog.setLx("2");
}
} else {
try {
......@@ -130,9 +136,11 @@ public class SysLogAspect {
Token token = new Token(object);
System.out.println("token===>" + token);
sysLog.setUserid(token.getUsername());
sysLog.setLx("1");
} catch (
TokenException e) {
sysLog.setUserid("system");
sysLog.setUserid("error");
sysLog.setLx("1");
}
}
}
......@@ -141,8 +149,8 @@ public class SysLogAspect {
toString());
LOG.info("HTTP_METHOD : " + request.getMethod());
LOG.info("IP : " + request.getRemoteAddr());
sysLog.setIp(request.getRemoteAddr());
LOG.info("IP : " + NetworkUtil.getIpAddr(request));
sysLog.setIp(NetworkUtil.getIpAddr(request));
//开始调用时间
// 计时并调用目标函数
......@@ -170,6 +178,7 @@ public class SysLogAspect {
System.out.println("============================================2.请求开始:" + df.format(new
Date()) + "============================================");
sysLog.setUrl(request.getRequestURL().toString());
System.out.println("URL===>" + request.getRequestURL());
System.out.println("用户===>" + sysLog.getUserid());
System.out.println("请求ip===>" + sysLog.getIp());
......@@ -178,7 +187,6 @@ public class SysLogAspect {
System.out.println("传入参数===>" + sysLog.getParams());
System.out.println("返回结果===>" + sysLog.getContent());
System.out.println("总耗时===>" + sysLog.getTotaltime());
sysLog.setIp(request.getRequestURL().toString());
System.out.println("===========================================2.请求结束:" + df.format(new
Date()) + "============================================");
......
......@@ -52,6 +52,7 @@
<artifactId>poi-scratchpad</artifactId>
<version>3.8</version>
</dependency>
<dependency>
<groupId>com.car</groupId>
<artifactId>sdkApi</artifactId>
......@@ -102,11 +103,11 @@
<scope>system</scope>
<systemPath>${project.basedir}/libs/ojdbc-10.jar</systemPath>
</dependency>-->
<dependency>
<groupId>org.oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>10</version>
</dependency>
<!-- <dependency>
<groupId>org.oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>10</version>
</dependency>-->
<!--swagger-->
<!-- <dependency>
......@@ -283,10 +284,35 @@
<artifactId>poi-scratchpad</artifactId>
<version>3.17</version>
</dependency>
<!-- <dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel</artifactId>
<version>2.2.6</version>
</dependency>-->
<!--集成EasyExcel -->
<!-- 引入easyExcel的时候,排除easyExcel中自带的poi依赖-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel</artifactId>
<version>2.2.6</version>
<exclusions>
<exclusion>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
</exclusion>
<exclusion>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
</exclusion>
<exclusion>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
</exclusion>
<exclusion>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml-schemas</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
</dependencyManagement>
......
......@@ -2,22 +2,28 @@ package com.founder.publicapi;
import com.founder.commonutils.util.SpringUtil;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.client.RestTemplateBuilder;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.web.client.RestTemplate;
@SpringBootApplication
@ComponentScan(basePackages = {"com.founder"})
@MapperScan(basePackages = {"com.founder.publicapi.mapper"})
public class PublicapiApplication {
@Autowired
private RestTemplateBuilder restTemplateBuilder;
public static void main(String[] args) {
//run方法的返回值ConfigurableApplicationContext继承了ApplicationContext上下文接口
ConfigurableApplicationContext applicationContext = SpringApplication.run(PublicapiApplication.class, args);
//将run方法的返回值赋值给工具类中的静态变量
SpringUtil.applicationContext = applicationContext;
}
@Bean
public RestTemplate restTemplate(){return restTemplateBuilder.build();}
}
......@@ -193,40 +193,40 @@ public class SkTrailController extends ApiController implements ExcelControllerI
*/
@PostMapping("query")
@ApiOperation(value = "以人侦查_获取轨迹接口")
@OperLog(message = "公共_获取轨迹接口", operation = OperationType.QUERY)
//@OperLog(message = "公共_获取轨迹接口", operation = OperationType.QUERY)
public MapRestResult query(@RequestBody SkTrailParam sktrailParam,HttpServletRequest request) {
List<SkTrailVO> list = new ArrayList<>();
// 根据标识号查看是否为演示数据 演示数据直接走数据库
if("dev".equals(environment)||SkTextUtilServiceImpl.queryText(sktrailParam.getLikeValue()).size()>0){
//分页
Page page = new Page(sktrailParam.getPage(), sktrailParam.getPageSize());
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.eq("isDeleted", "0");
queryWrapper.select("objectValue","objectType","objectName");
if (sktrailParam.getLikeField() != null && !sktrailParam.getLikeField().equals("")) {
queryWrapper.eq("objectType", sktrailParam.getLikeField());
}
if (sktrailParam.getLikeValue() != null && !sktrailParam.getLikeValue().equals("")) {
queryWrapper.like("objectValue", sktrailParam.getLikeValue());
}
//时间
if (sktrailParam.getKssj() != null && !sktrailParam.getKssj().equals("")) {
queryWrapper.ge("str_to_date(date,'%Y-%m-%d %H:%i:%s')", sktrailParam.getKssj());
}
if (sktrailParam.getJssj() != null && !sktrailParam.getJssj().equals("")) {
queryWrapper.le("str_to_date(date,'%Y-%m-%d %H:%i:%s')", sktrailParam.getJssj());
}
queryWrapper.groupBy("objectValue");
queryWrapper.groupBy("objectType");
queryWrapper.groupBy("objectName");
IPage page1 = skTrailService.page(page, queryWrapper);
List<SkTrail> records = page1.getRecords();
for (SkTrail skTrail : records) {
list.add(new SkTrailVO(skTrail, findByBh(skTrail.getObjectvalue(),skTrail.getObjecttype())));
}
}
// if("dev".equals(environment)||SkTextUtilServiceImpl.queryText(sktrailParam.getLikeValue()).size()>0){
// //分页
// Page page = new Page(sktrailParam.getPage(), sktrailParam.getPageSize());
// QueryWrapper queryWrapper = new QueryWrapper();
// queryWrapper.eq("isDeleted", "0");
// queryWrapper.select("objectValue","objectType","objectName");
// if (sktrailParam.getLikeField() != null && !sktrailParam.getLikeField().equals("")) {
// queryWrapper.eq("objectType", sktrailParam.getLikeField());
// }
// if (sktrailParam.getLikeValue() != null && !sktrailParam.getLikeValue().equals("")) {
// queryWrapper.like("objectValue", sktrailParam.getLikeValue());
// }
// //时间
// if (sktrailParam.getKssj() != null && !sktrailParam.getKssj().equals("")) {
// queryWrapper.ge("str_to_date(date,'%Y-%m-%d %H:%i:%s')", sktrailParam.getKssj());
// }
// if (sktrailParam.getJssj() != null && !sktrailParam.getJssj().equals("")) {
// queryWrapper.le("str_to_date(date,'%Y-%m-%d %H:%i:%s')", sktrailParam.getJssj());
// }
//
// queryWrapper.groupBy("objectValue");
// queryWrapper.groupBy("objectType");
// queryWrapper.groupBy("objectName");
//
// IPage page1 = skTrailService.page(page, queryWrapper);
// List<SkTrail> records = page1.getRecords();
// for (SkTrail skTrail : records) {
// list.add(new SkTrailVO(skTrail, findByBh(skTrail.getObjectvalue(),skTrail.getObjecttype())));
// }
// }
// 真实API
if(sktrailParam.getLikeField().equals("wbgj")){
list = interfaceAPI.getWbXx(sktrailParam.getLikeValue(),sktrailParam.getKssj(),sktrailParam.getJssj(),request,sktrailParam.getPage(),sktrailParam.getPageSize());
......@@ -238,6 +238,11 @@ public class SkTrailController extends ApiController implements ExcelControllerI
list = interfaceAPI.getHcccXx(sktrailParam.getLikeValue(),sktrailParam.getKssj(),sktrailParam.getJssj(),request,sktrailParam.getPage(),sktrailParam.getPageSize());
}else if(sktrailParam.getLikeField().equals("jdgj")){
list = interfaceAPI.getJdXx(sktrailParam.getLikeValue(),sktrailParam.getKssj(),sktrailParam.getJssj(),request,sktrailParam.getPage(),sktrailParam.getPageSize());
}else if(sktrailParam.getLikeField().equals("kkgj")){
Map<String,Object> map = new HashMap<>();
map = interfaceAPI.getJdcGjNaotu(sktrailParam.getLikeValue(),sktrailParam.getKssj(),sktrailParam.getJssj(),sktrailParam.getPage(),sktrailParam.getPageSize());
list = (List<SkTrailVO>) map.get("rows");
return new MapRestResult(200, "OK", map.get("total"), list);
}
return new MapRestResult(200, "OK", list.size(), list);
}
......@@ -499,11 +504,11 @@ public class SkTrailController extends ApiController implements ExcelControllerI
@PostMapping("/export")
@ApiOperation("Excel接口")
@OperLog(message = "Excel接口(轨迹导出)", operation = OperationType.QUERY)
//@OperLog(message = "Excel接口(轨迹导出)", operation = OperationType.QUERY)
public void export(HttpServletResponse response,@RequestBody SkTrailParam sktrailParam,HttpServletRequest request)throws Exception{
List<SkTrailVO> list = new ArrayList<>();
// 根据标识号查看是否为演示数据 演示数据直接走数据库
if(SkTextUtilServiceImpl.queryText(sktrailParam.getLikeValue()).size()>0){
/*if(SkTextUtilServiceImpl.queryText(sktrailParam.getLikeValue()).size()>0){
//分页
Page page = new Page(sktrailParam.getPage(), sktrailParam.getPageSize());
QueryWrapper queryWrapper = new QueryWrapper();
......@@ -527,7 +532,7 @@ public class SkTrailController extends ApiController implements ExcelControllerI
for (SkTrail skTrail : records) {
list.add(new SkTrailVO(skTrail, findByBh(skTrail.getObjectvalue(),skTrail.getObjecttype())));
}
}
}*/
// 真实API
if(sktrailParam.getLikeField().equals("wbgj")){
list = interfaceAPI.getWbXx(sktrailParam.getLikeValue(),sktrailParam.getKssj(),sktrailParam.getJssj(),request,sktrailParam.getPage(),sktrailParam.getPageSize());
......@@ -539,6 +544,10 @@ public class SkTrailController extends ApiController implements ExcelControllerI
list = interfaceAPI.getHcccXx(sktrailParam.getLikeValue(),sktrailParam.getKssj(),sktrailParam.getJssj(),request,sktrailParam.getPage(),sktrailParam.getPageSize());
}else if(sktrailParam.getLikeField().equals("jdgj")){
list = interfaceAPI.getJdXx(sktrailParam.getLikeValue(),sktrailParam.getKssj(),sktrailParam.getJssj(),request,sktrailParam.getPage(),sktrailParam.getPageSize());
}else if(sktrailParam.getLikeField().equals("kkgj")){
Map<String,Object> map = new HashMap<>();
map = interfaceAPI.getJdcGjNaotu(sktrailParam.getLikeValue(),sktrailParam.getKssj(),sktrailParam.getJssj(),sktrailParam.getPage(),sktrailParam.getPageSize());
list = (List<SkTrailVO>) map.get("rows");
}
ExportExcelUtil<SkTrail> exportExcelUtil = new ExportExcelUtil<>();
String[] headersName = {"号码","经度","纬度","时间","地址"};
......
......@@ -5,21 +5,30 @@ import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.founder.commonutils.model.newPublicEntity.*;
import com.founder.commonutils.model.vo.response.SkTrailVO;
import com.founder.commonutils.util.DateUtil;
import com.founder.commonutils.util.EsUtils;
import com.founder.commonutils.util.HttpClient;
import com.founder.commonutils.util.StringUtil;
import com.founder.commonutils.util.*;
import com.founder.publicapi.mapper.mysqlMapper.SysDictitemMapper;
import com.founder.publicapi.service.SkPointlocationService;
import lombok.SneakyThrows;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.http.HttpEntity;
import org.springframework.http.ResponseEntity;
import org.springframework.http.converter.HttpMessageConverter;
import org.springframework.http.converter.StringHttpMessageConverter;
import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.client.RestTemplate;
import javax.servlet.http.HttpServletRequest;
import java.nio.charset.Charset;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.concurrent.Callable;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.FutureTask;
import java.util.stream.Collectors;
......@@ -38,6 +47,8 @@ public class InterfaceAPI {
private SysDictitemMapper sysDictitemMapper;
@Autowired
private SkPointlocationService skPointlocationService;
@Autowired
private RestTemplate restTemplate;
/**
* 获取民航进出港信息
*
......@@ -759,6 +770,125 @@ public class InterfaceAPI {
return time.replace(" ", "T") + "Z";
}
@SneakyThrows
public Map<String, Object> getJdcGjNaotu(String cphm, String startDate,
String endDate,
@RequestParam(value = "page",
defaultValue = "1") int page,
@RequestParam(value = "rows",
defaultValue = "10") int rows) {
Map<String, Object> map = new HashMap<>();
// 入参调整
SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd");
try {
Date startDateDate = sf.parse(startDate);
Date endDateDate = sf.parse(endDate);
startDate = sf.format(startDateDate);
endDate = sf.format(endDateDate);
} catch (ParseException e) {
e.printStackTrace();
}
List<SkTrail> points = new ArrayList<>();// 返回数据与前端一致
List<SkTrailVO> listResult = new ArrayList<>();
Integer total = 0;
String urlLogin = "http://65.65.100.193:9047/doLogin?zjhm=admin";
System.out.println("登录solrupdate请求url:" + urlLogin);
HttpEntity<String> jsonObjectLogin = restTemplate.getForEntity(urlLogin, String.class);// 登录登录solrupdate
System.out.println("登录solrupdate返回:" + jsonObjectLogin);
// 解决中文乱码
List<HttpMessageConverter<?>> httpMessageConverters = restTemplate.getMessageConverters();
httpMessageConverters.stream().forEach(httpMessageConverter -> {
if (httpMessageConverter instanceof StringHttpMessageConverter) {
StringHttpMessageConverter messageConverter = (StringHttpMessageConverter) httpMessageConverter;
//设置编码为UTF-8
messageConverter.setDefaultCharset(Charset.forName("UTF-8"));
}
});
// 第一次请求每页最大拿100条
String url = "http://65.65.100.193:9047/api/getJdcGj?cphm=" + cphm + "&startDate=" + startDate + "&endDate=" + endDate + "&page=1&rows=100";
System.out.println("接口请求url:" + url);
ResponseEntity<String> entity = restTemplate.getForEntity(url.trim(), String.class);
Map<String, Object> temp = (Map) JSONObject.parse(entity.getBody());
System.out.println("接口请求结果数据:" + entity.getBody());
// 数据封装与前端一致
SimpleDateFormat sfResult = new SimpleDateFormat("yyyyMMddhhmmss");
SimpleDateFormat sfFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
if ("success".equals(temp.get("state"))) {
JSONArray jsonArray = JSONArray.parseArray(temp.get("rows").toString());
if (jsonArray.size() > 0) {
List<Map<String, Object>> list = (List<Map<String, Object>>) JSONArray.parse(jsonArray.toJSONString());
total = (Integer) temp.get("total");
if (total > 100) {
// 批量分页拿回轨迹数据
int size = total;// 总数
int limit = 100;// 没页数
long threadNum = size / limit;// 批量数
for (int i = 1; i < threadNum + 1; i++) {
if(i==1){ i = 2;}
// 异步处理
TaskThread task = new TaskThread(i, limit, cphm, startDate, endDate);
FutureTask<List<Map<String, Object>>> futureTask = new FutureTask<>(task);
// 线程池处理
ExecutorService executorService = Executors.newFixedThreadPool(10);
executorService.submit(futureTask);
// 结果获取
List<Map<String, Object>> listGet = futureTask.get();
list.addAll(listGet);
executorService.shutdown();
}
}
for (Map<String, Object> gjXxMap : list) {
String kkbh = (String) gjXxMap.get("KKBH");
String cph = (String) gjXxMap.get("CPH");
String gcsj = (String) gjXxMap.get("GCSJ");
String gczp = (String) gjXxMap.get("TPLJHZ_Y");
String kkmc = (String) gjXxMap.get("kkmc");
SkTrail skTrailCf = new SkTrail();
if (null != gjXxMap.get("kkjd")) {
String kkjd = gjXxMap.get("kkjd").toString();
skTrailCf.setX(kkjd);
} else {
continue;
}
if (null != gjXxMap.get("kkwd")) {
String kkwd = gjXxMap.get("kkwd").toString();
skTrailCf.setY(kkwd);
} else {
continue;
}
skTrailCf.setAddress(kkmc);
try {
skTrailCf.setDate(sfFormat.format(sfResult.parse(gcsj)));
skTrailCf.setTime(DateUtil.getTimeStamp(sfFormat.format(sfResult.parse(gcsj))));
} catch (ParseException e) {
e.printStackTrace();
}
skTrailCf.setDeviceid(kkbh);
skTrailCf.setFarimglist(gczp);
skTrailCf.setNearimglist(gczp);
skTrailCf.setObjecttype("kkgj");
skTrailCf.setObjectname("卡口轨迹");
skTrailCf.setObjectvalue(cph);
points.add(skTrailCf);
}
}
}
if (points.size() > 0) {
SkTrailVO skTrailVO = new SkTrailVO();
skTrailVO.setObjectvalue(cphm);
skTrailVO.setObjecttype("kkgj");
skTrailVO.setObjectname("卡口轨迹");
skTrailVO.setKssj(startDate);
skTrailVO.setJssj(endDate);
skTrailVO.setPoints(points);
listResult.add(skTrailVO);
}
map.put("total", listResult.size());
map.put("rows", listResult);
return map;
}
/**
* 功能描述: JSONArray根据时间字段排序
* @author FengChaoTao
......@@ -804,4 +934,39 @@ public class InterfaceAPI {
queryWrapper.eq("deviceId", deviceId);
return skPointlocationService.getOne(queryWrapper);
}
class TaskThread implements Callable<List<Map<String, Object>>> {
private int page;
private int limit;
private String cphm;
private String startDate;
private String endDate;
public TaskThread(int page, int limit, String cphm, String startDate, String endDate) {
this.page = page;
this.limit = limit;
this.cphm = cphm;
this.startDate = startDate;
this.endDate = endDate;
}
@Override
public List<Map<String, Object>> call(){
List<Map<String, Object>> list = new ArrayList<>();
String url = "http://65.65.100.193:9047/api/getJdcGj?cphm=" + cphm + "&startDate=" + startDate + "&endDate=" + endDate + "&page=" + page + "&rows=" + limit;
System.out.println("接口请求url:" + url);
ResponseEntity<String> entity = restTemplate.getForEntity(url.trim(), String.class);
Map<String, Object> temp = (Map) JSONObject.parse(entity.getBody());
if ("success".equals(temp.get("state"))) {
JSONArray jsonArray = JSONArray.parseArray(temp.get("rows").toString());
if (jsonArray.size() > 0) {
list = (List<Map<String, Object>>) JSONArray.parse(jsonArray.toJSONString());
}
}
return list;
}
}
}
......@@ -10,13 +10,13 @@ logging.level.root=INFO
#mysql\uFFFD\uFFFD\uFFFD\u077F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.xzxtdb.url=ENC(5lDm8jrRL3ZRPNelHHKmy87uO2r12LnIVIQxybw8bmMQrBfXCEkE9WR6y7o6OS+S7yeRnaVQoaAB7d1Z9r9teV3K+DTvLwj01DWCS2p7ggTqycYWHh2eqcpW129HoUoiyPlzRO0Dl+Mnpj/utHB9/lOfAEBhRHLS)
spring.datasource.xzxtdb.url=jdbc:mysql://10.142.16.191:4306/xzxt?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
spring.datasource.xzxtdb.username=ENC(b7OXS5qvb3tVsaDbfqkFpg==)
spring.datasource.xzxtdb.password=ENC(PhkJovHr5GezJgLS+gfSFaID3dNlmUi5)
#oracle\uFFFD\uFFFD\uFFFD\u077F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD(\u022B\uFFFD\uFFFD\uFFFD\uFFFD)
spring.datasource.qgdb.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.qgdb.url=ENC(5lDm8jrRL3ZRPNelHHKmy87uO2r12LnIVIQxybw8bmMQrBfXCEkE9WR6y7o6OS+S7yeRnaVQoaAB7d1Z9r9teV3K+DTvLwj01DWCS2p7ggTqycYWHh2eqcpW129HoUoiyPlzRO0Dl+Mnpj/utHB9/lOfAEBhRHLS)
spring.datasource.qgdb.url=jdbc:mysql://10.142.16.191:4306/xzxt?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
spring.datasource.qgdb.username=ENC(b7OXS5qvb3tVsaDbfqkFpg==)
spring.datasource.qgdb.password=ENC(PhkJovHr5GezJgLS+gfSFaID3dNlmUi5)
......
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