Commit d89be960 by yangyang

内蒙时空相关接口对接(内蒙)

parent 7e820dbe
......@@ -47,11 +47,11 @@
<version>3.8.0</version>
</dependency>
<!--jasypt start-->
<dependency>
<!-- <dependency>
<groupId>com.github.ulisesbocchio</groupId>
<artifactId>jasypt-spring-boot-starter</artifactId>
<version>2.1.1</version>
</dependency>
</dependency>-->
<!--jasypt end-->
</dependencies>
</project>
\ No newline at end of file
......@@ -149,9 +149,9 @@ public class SysUser extends Model<SysUser> {
*/
private String tqyhbz;
private String jgzPhotoZm;
/* private String jgzPhotoZm;
private String jgzPhotoFm;
private String jgzPhotoFm;*/
private String zbzxDwdm;
......
package com.founder.commonutils.util;
import org.jasypt.properties.PropertyValueEncryptionUtils;
import org.jasypt.util.text.BasicTextEncryptor;
public class JasyptEncryptorUtils {
private static final String salt = "lybgeek";
private static BasicTextEncryptor basicTextEncryptor = new BasicTextEncryptor();
static {
basicTextEncryptor.setPassword(salt);
}
private JasyptEncryptorUtils(){}
/**
* 明文加密
* @param plaintext
* @return
*/
public static String encode(String plaintext){
System.out.println("明文字符串:" + plaintext);
String ciphertext = basicTextEncryptor.encrypt(plaintext);
System.out.println("加密后字符串:" + ciphertext);
return ciphertext;
}
/**
* 解密
* @param ciphertext
* @return
*/
public static String decode(String ciphertext){
System.out.println("加密字符串:" + ciphertext);
ciphertext = "ENC(" + ciphertext + ")";
if (PropertyValueEncryptionUtils.isEncryptedValue(ciphertext)){
String plaintext = PropertyValueEncryptionUtils.decrypt(ciphertext,basicTextEncryptor);
System.out.println("解密后的字符串:" + plaintext);
return plaintext;
}
System.out.println("解密失败");
return "";
}
/**
* 测试
*/
public static void main(String args[]) throws Exception {
String test1 = "430000000000000000";
encode(test1);
decode(encode(test1));
}
}
//package com.founder.commonutils.util;
//
//import org.jasypt.properties.PropertyValueEncryptionUtils;
//import org.jasypt.util.text.BasicTextEncryptor;
//
//public class JasyptEncryptorUtils {
//
// private static final String salt = "lybgeek";
//
// private static BasicTextEncryptor basicTextEncryptor = new BasicTextEncryptor();
//
// static {
// basicTextEncryptor.setPassword(salt);
// }
//
// private JasyptEncryptorUtils(){}
//
// /**
// * 明文加密
// * @param plaintext
// * @return
// */
// public static String encode(String plaintext){
// System.out.println("明文字符串:" + plaintext);
// String ciphertext = basicTextEncryptor.encrypt(plaintext);
// System.out.println("加密后字符串:" + ciphertext);
// return ciphertext;
// }
//
// /**
// * 解密
// * @param ciphertext
// * @return
// */
// public static String decode(String ciphertext){
// System.out.println("加密字符串:" + ciphertext);
// ciphertext = "ENC(" + ciphertext + ")";
// if (PropertyValueEncryptionUtils.isEncryptedValue(ciphertext)){
// String plaintext = PropertyValueEncryptionUtils.decrypt(ciphertext,basicTextEncryptor);
// System.out.println("解密后的字符串:" + plaintext);
// return plaintext;
// }
// System.out.println("解密失败");
// return "";
// }
//
// /**
// * 测试
// */
// public static void main(String args[]) throws Exception {
// String test1 = "430000000000000000";
// encode(test1);
// decode(encode(test1));
// }
//}
//
......@@ -63,14 +63,14 @@ public class SysUserController extends ApiController {
}
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.eq("USERNAME", username);
queryWrapper.eq("PASSWORD", DigestUtil.encrypt(password));
queryWrapper.eq("PASSWORD", Base64Util.encode(password));
queryWrapper.eq("SCBZ", 0);
SysUser one = sysUserService.getOne(queryWrapper);
if (one == null) {
return MapRestResult.build(500, "该用户不存在", null);
}
if (!DigestUtil.encrypt(password).equals(one.getPassword())) {
if (!Base64Util.encode(password).equals(one.getPassword())) {
return MapRestResult.build(500, "账号、密码不正确", null);
}
// 拿到真实ip
......@@ -78,7 +78,7 @@ public class SysUserController extends ApiController {
JwtUser util = new JwtUser();
String ip = request.getRemoteAddr();
//密码加密与刑专一致
Token tokenEntity=new Token(one.getUsername(),ip, DigestUtil.encrypt(password));
Token tokenEntity=new Token(one.getUsername(),ip, Base64Util.encode(password));
JSONObject jsonObject = (JSONObject) JSONObject.toJSON(tokenEntity);
//用户JWT生成token
String token = util.createJWT(jsonObject.toString());
......
......@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* 日志实体类 SysLog
......@@ -30,11 +31,9 @@ public class SkSysLog implements Serializable {
private String ip; // 请求IP
private String createdate;// 请求时间
private Date createdate;// 请求时间
private Long totaltime; //总耗时长(毫秒)
private String totaltime; //总耗时长(毫秒)
private String content; // 返回值
//添加set和get方法
}
\ No newline at end of file
......@@ -92,7 +92,7 @@ public class SysLogAspect {
Date date = new Date();
String pattern = "yyyy-MM-dd HH:mm:ss";
SimpleDateFormat simpleDateFormat = new SimpleDateFormat(pattern);
sysLog.setCreatedate(simpleDateFormat.format(date));
sysLog.setCreatedate(date);
//获取用户名
//获取用户ip地址
// 接收到请求,记录请求内容
......@@ -169,7 +169,7 @@ public class SysLogAspect {
}
Long time = System.currentTimeMillis() - start;
sysLog.setTotaltime(time);
sysLog.setTotaltime(String.valueOf(time));
//System.out.print("保存数据库==" + sysLog.toString());
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式
// new Date()为获取当前系统时间
......
......@@ -27,7 +27,7 @@
<swagger.version>2.9.2</swagger.version>
<aliyun.oss.version>2.8.3</aliyun.oss.version>
<jodatime.version>2.10.1</jodatime.version>
<poi.version>3.17</poi.version>
<poi.version>3.7</poi.version>
<commons-fileupload.version>1.3.1</commons-fileupload.version>
<commons-io.version>2.6</commons-io.version>
<httpclient.version>4.5.1</httpclient.version>
......@@ -97,7 +97,7 @@
</dependency>
<!--swagger-->
<!-- <dependency>
<!-- <dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>${swagger.version}</version>
......
......@@ -34,20 +34,20 @@
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-hystrix</artifactId>
</dependency>
<!-- <dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
&lt;!&ndash;服务注册&ndash;&gt;
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>-->
<!-- <dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
&lt;!&ndash;服务注册&ndash;&gt;
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>-->
<!-- 服务调用 -->
<dependency>
<!-- <dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
</dependency>-->
<dependency>
<groupId>org.springframework.boot</groupId>
......@@ -88,12 +88,12 @@
<artifactId>velocity-engine-core</artifactId>
</dependency>
<!-- 引入spring-data-elasticsearch-->
<!--
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-elasticsearch</artifactId>
</dependency>
-->
<!--
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-elasticsearch</artifactId>
</dependency>
-->
<dependency>
<groupId>org.elasticsearch</groupId>
......@@ -123,44 +123,28 @@
<artifactId>lombok</artifactId>
</dependency>
<!--xls-->
<!--<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
</dependency>-->
<!--处理excel、word-->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>3.17</version>
<type>jar</type>
<scope>compile</scope>
<version>3.7</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>3.17</version>
<type>jar</type>
<version>3.7</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml-schemas</artifactId>
<version>3.17</version>
<type>jar</type>
<scope>compile</scope>
<version>3.7</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-scratchpad</artifactId>
<version>3.16</version>
<type>jar</type>
<scope>compile</scope>
<version>3.7</version>
</dependency>
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
......
......@@ -2,17 +2,25 @@ 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;
@Bean
public RestTemplate restTemplate(){return restTemplateBuilder.build();}
public static void main(String[] args) {
//run方法的返回值ConfigurableApplicationContext继承了ApplicationContext上下文接口
ConfigurableApplicationContext applicationContext = SpringApplication.run(PublicapiApplication.class, args);
......
......@@ -11,6 +11,7 @@ import com.founder.commonutils.model.vo.param.SkPointlocationParams;
import com.founder.commonutils.util.DateUtil;
import com.founder.commonutils.util.KeyUtil;
import com.founder.commonutils.model.newPublicEntity.SkPointlocation;
import com.founder.publicapi.mapper.mapMapper.SkPointsMapper;
import com.founder.servicebase.controller.ExcelControllerInterface;
import com.founder.servicebase.logs.OperLog;
import com.founder.servicebase.logs.OperationType;
......@@ -40,6 +41,8 @@ public class SkPointlocationController extends ApiController implements ExcelCon
private SkPointlocationService skPointlocationService;
@Autowired
private SkDictionaryService skDictionaryService;
@Autowired
private SkPointsMapper skPointsMapper;
/**
* 新增点位
......@@ -131,45 +134,53 @@ public class SkPointlocationController extends ApiController implements ExcelCon
@ApiOperation(value = "查询点位列表信息")
@OperLog(message = "查询点位列表信息", operation = OperationType.QUERY)
public MapRestResult query(@RequestBody SkPointlocationParam skPointlocationParam) {
//分页
Page page = new Page(skPointlocationParam.getPage(), skPointlocationParam.getPageSize());
List<SkPointlocation> list = new ArrayList<>();
if("kk".equals(skPointlocationParam.getLikeField())){
list = skPointsMapper.getKkInfoByQsJwd(skPointlocationParam);
}else if("rx".equals(skPointlocationParam.getLikeField())){
list = skPointsMapper.getCameraInfoByQsJwd(skPointlocationParam);
}else if("jz".equals(skPointlocationParam.getLikeField())){
list = skPointsMapper.getJzInfoByQsJwd(skPointlocationParam);
}else{
//分页
Page page = new Page(skPointlocationParam.getPage(), skPointlocationParam.getPageSize());
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.eq("isDeleted", "0");
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.eq("isDeleted", "0");
if (skPointlocationParam.getLikeField() != null && !skPointlocationParam.getLikeField().equals("")) {
queryWrapper.eq("objectType", skPointlocationParam.getLikeField());
}
if (skPointlocationParam.getLikeValue() != null && !skPointlocationParam.getLikeValue().equals("")) {
queryWrapper.like("deviceName", skPointlocationParam.getLikeValue());
}
//纬度
if (skPointlocationParam.getStartLat() != null && !skPointlocationParam.getStartLat().equals("")) {
queryWrapper.ge("CAST(y AS decimal(16,8))", Double.parseDouble(skPointlocationParam.getStartLat()));
}
if (skPointlocationParam.getEndLat() != null && !skPointlocationParam.getEndLat().equals("")) {
queryWrapper.le("CAST(y AS decimal(16,8))", Double.parseDouble(skPointlocationParam.getEndLat()));
}
//经度
if (skPointlocationParam.getStartLng() != null && !skPointlocationParam.getStartLng().equals("")) {
queryWrapper.ge("CAST(x AS decimal(16,8))", Double.parseDouble(skPointlocationParam.getStartLng()));
}
if (skPointlocationParam.getEndLng() != null && !skPointlocationParam.getEndLng().equals("")) {
queryWrapper.le("CAST(x AS decimal(16,8))", Double.parseDouble(skPointlocationParam.getEndLng()));
}
//时间
if (skPointlocationParam.getKssj() != null) {
queryWrapper.ge("str_to_date(date,'%Y-%m-%d %H:%i:%s')", skPointlocationParam.getKssj());
}
if (skPointlocationParam.getJssj() != null) {
queryWrapper.le("str_to_date(date,'%Y-%m-%d %H:%i:%s')", skPointlocationParam.getJssj());
}
IPage page1 = skPointlocationService.page(page, queryWrapper);
return new MapRestResult(200, "OK", page1.getTotal(), page1.getRecords());
if (skPointlocationParam.getLikeField() != null && !skPointlocationParam.getLikeField().equals("")) {
queryWrapper.eq("objectType", skPointlocationParam.getLikeField());
}
if (skPointlocationParam.getLikeValue() != null && !skPointlocationParam.getLikeValue().equals("")) {
queryWrapper.like("deviceName", skPointlocationParam.getLikeValue());
}
//纬度
if (skPointlocationParam.getStartLat() != null && !skPointlocationParam.getStartLat().equals("")) {
queryWrapper.ge("CAST(y AS decimal(16,8))", Double.parseDouble(skPointlocationParam.getStartLat()));
}
if (skPointlocationParam.getEndLat() != null && !skPointlocationParam.getEndLat().equals("")) {
queryWrapper.le("CAST(y AS decimal(16,8))", Double.parseDouble(skPointlocationParam.getEndLat()));
}
//经度
if (skPointlocationParam.getStartLng() != null && !skPointlocationParam.getStartLng().equals("")) {
queryWrapper.ge("CAST(x AS decimal(16,8))", Double.parseDouble(skPointlocationParam.getStartLng()));
}
if (skPointlocationParam.getEndLng() != null && !skPointlocationParam.getEndLng().equals("")) {
queryWrapper.le("CAST(x AS decimal(16,8))", Double.parseDouble(skPointlocationParam.getEndLng()));
}
//时间
if (skPointlocationParam.getKssj() != null) {
queryWrapper.ge("str_to_date(date,'%Y-%m-%d %H:%i:%s')", skPointlocationParam.getKssj());
}
if (skPointlocationParam.getJssj() != null) {
queryWrapper.le("str_to_date(date,'%Y-%m-%d %H:%i:%s')", skPointlocationParam.getJssj());
}
IPage page1 = skPointlocationService.page(page, queryWrapper);
return new MapRestResult(200, "OK", page1.getTotal(), page1.getRecords());
}
return new MapRestResult(200, "OK", list.size(), list);
}
/**
......
......@@ -13,6 +13,7 @@ import com.founder.commonutils.model.vo.response.SkTrailVO;
import com.founder.commonutils.util.*;
import com.founder.commonutils.model.newPublicEntity.SkTrail;
import com.founder.publicapi.controller.SkDataUpload.FtpUtil;
import com.founder.publicapi.controller.SkInterface.InterfaceAPI;
import com.founder.servicebase.controller.ExcelControllerInterface;
import com.founder.servicebase.logs.OperLog;
import com.founder.servicebase.logs.OperationType;
......@@ -20,7 +21,6 @@ import com.founder.publicapi.service.SkTrailService;
import com.founder.servicebase.service.SkDictionaryService;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang.StringUtils;
import org.apache.poi.ss.formula.functions.T;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
......@@ -50,7 +50,8 @@ public class SkTrailController extends ApiController implements ExcelControllerI
private SkTrailService skTrailService;
@Autowired
private SkDictionaryService skDictionaryService;
@Autowired
private InterfaceAPI interfaceAPI;
/**
* 新增轨迹
*/
......@@ -182,6 +183,12 @@ public class SkTrailController extends ApiController implements ExcelControllerI
@OperLog(message = "查询轨迹列表信息", operation = OperationType.QUERY)
public MapRestResult query(@RequestBody SkTrailParam sktrailParam) {
List<SkTrailVO> list = new ArrayList<>();
// 真实API
if(sktrailParam.getLikeField().equals("kkgj")){
list = interfaceAPI.getKkgj(sktrailParam.getLikeValue(),sktrailParam.getKssj(),sktrailParam.getJssj(),sktrailParam.getPage(),sktrailParam.getPageSize());
}else if(sktrailParam.getLikeField().equals("jzgj")){
list = interfaceAPI.getSjgj(sktrailParam.getLikeValue(),sktrailParam.getKssj(),sktrailParam.getJssj(),sktrailParam.getPage(),sktrailParam.getPageSize());
}else{
//分页
Page page = new Page(sktrailParam.getPage(), sktrailParam.getPageSize());
QueryWrapper queryWrapper = new QueryWrapper();
......@@ -212,6 +219,9 @@ public class SkTrailController extends ApiController implements ExcelControllerI
list.add(new SkTrailVO(skTrail, findByBh(skTrail.getObjectvalue(),skTrail.getObjecttype())));
}
return new MapRestResult(200, "OK", page1.getTotal(), list);
}
return new MapRestResult(200, "OK", list.size(), list);
}
@PostMapping("queryTj")
......@@ -385,33 +395,44 @@ 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)throws Exception{
//分页
Page page = new Page(sktrailParam.getPage(), sktrailParam.getPageSize());
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.eq("isDeleted", "0");
List<SkTrailVO> list = new ArrayList<>();
// 真实API
if(sktrailParam.getLikeField().equals("kkgj")){
list = interfaceAPI.getKkgj(sktrailParam.getLikeValue(),sktrailParam.getKssj(),sktrailParam.getJssj(),sktrailParam.getPage(),sktrailParam.getPageSize());
}else if(sktrailParam.getLikeField().equals("jzgj")){
list = interfaceAPI.getSjgj(sktrailParam.getLikeValue(),sktrailParam.getKssj(),sktrailParam.getJssj(),sktrailParam.getPage(),sktrailParam.getPageSize());
}else{
//分页
Page page = new Page(sktrailParam.getPage(), sktrailParam.getPageSize());
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.eq("isDeleted", "0");
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());
}
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());
}
IPage page1 = skTrailService.page(page, queryWrapper);
List<SkTrail> records = page1.getRecords();
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())));
}
}
ExportExcelUtil<SkTrail> exportExcelUtil = new ExportExcelUtil<>();
String[] headersName = {"号码","经度","纬度","时间","地址"};
String[] headersField = {"objectvalue","x","y","time","address"};
exportExcelUtil.exportExcel("DataStatistics", headersName, headersField, records, response,"轨迹信息");
exportExcelUtil.exportExcel("DataStatistics", headersName, headersField, list.get(0).getPoints(), response,"轨迹信息");
}
/**
* 根据编号查找相关轨迹
......
package com.founder.publicapi.controller.SkInterface;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.founder.commonutils.model.newPublicEntity.SkTrail;
import com.founder.commonutils.model.vo.response.SkTrailVO;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpEntity;
import org.springframework.stereotype.Service;
import org.springframework.util.LinkedMultiValueMap;
import org.springframework.util.MultiValueMap;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.client.RestTemplate;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.format.DateTimeFormatter;
import java.util.*;
/**
* @Author: Founder-
* @DateTime: 2022/07/05
* @Description: 向外提供接口类
*/
@Service
public class InterfaceAPI {
@Autowired
private RestTemplate restTemplate;
/**
* 获取车辆轨迹
*
* @param page
* @param rows
* @return
*/
public List<SkTrailVO> getKkgj(String objectValue, String startDate,
String endDate,
@RequestParam(value = "page",
defaultValue = "1") int page,
@RequestParam(value = "rows",
defaultValue = "1000") int rows) {
//循环请求
Boolean flag=true;
int currentPageTotal=0;//当前页返回的结果总数
List<SkTrailVO> listResult = new ArrayList<>();
List<SkTrail> points = new ArrayList<>();// 返回数据与前端一致
while (flag) {
try {
DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
HttpEntity<JSONObject> jsonObject = restTemplate.getForEntity("http://26.3.13.158/kiop-gateway-core/test/tollgate/vehicle-traces?apikey=fe89c771-1260-490e-a575-4ab217d99dbb&beginTime=" + startDate + "&endTime=" + endDate + "&plateNo=" + objectValue + "&pageNo="+page+"&pageSize="+rows+"&scollId=0", JSONObject.class);
if (StringUtils.isNotEmpty(String.valueOf(jsonObject.getBody()))) {
if (jsonObject.getBody().containsKey("result")) {
LinkedHashMap resultJson = (LinkedHashMap) jsonObject.getBody().get("result");//获取返回的数据结果
List<LinkedHashMap> array = (List<LinkedHashMap>) resultJson.get("traces");
currentPageTotal = array.size();
if (array.size() > 0) {
for (int i = 0; i < array.size(); i++) {
LinkedHashMap object = array.get(i);
String deviceId = (String) object.get("deviceId");
String deviceName = (String) object.get("deviceName");
String longitude = (String) object.get("longitude");
String latitude = (String) object.get("latitude");
String ymd = (String) object.get("date");
String hms = (String) object.get("time");
String date = (String) object.get("date") + " " + (String) object.get("time");
LocalDateTime parse = LocalDateTime.parse(date, df);
long time = LocalDateTime.from(parse).atZone(ZoneId.systemDefault()).toInstant().toEpochMilli();
String farImg = "";
List<LinkedHashMap> farImgList = (List<LinkedHashMap>) object.get("farImgList");
if (farImgList.size() > 0) {
farImg = String.valueOf(farImgList.get(0));
}
String nearImg = "";
List<LinkedHashMap> nearImgList = (List<LinkedHashMap>) object.get("nearImgList");
if (nearImgList.size() > 0) {
nearImg = (String) object.get(nearImgList.get(0));
}
SkTrail skTrailCf = new SkTrail();
skTrailCf.setAddress(deviceName);
skTrailCf.setDeviceid(deviceId);
skTrailCf.setDate(date);
skTrailCf.setTime(String.valueOf(time));
skTrailCf.setObjecttype("kkgj");
skTrailCf.setObjectname("卡口轨迹");
skTrailCf.setObjectvalue(objectValue);
skTrailCf.setFarimglist(farImg);
skTrailCf.setNearimglist(nearImg);
skTrailCf.setX(longitude);
skTrailCf.setY(latitude);
points.add(skTrailCf);
}
}
}
}
} catch (Exception e) {
e.printStackTrace();
}
if (currentPageTotal < rows) {//每页的总数大于当前页返回的总数,退出循环,d当期页的总数大于分页数,说明其接口无分页
flag = false;
} else if (currentPageTotal == rows) {//当前页等于总页数,则循环请求
++page;
}
}
if(points.size()>0){
SkTrailVO skTrailVO = new SkTrailVO();
skTrailVO.setObjectvalue(objectValue);
skTrailVO.setObjecttype("kkgj");
skTrailVO.setObjectname("卡口轨迹");
skTrailVO.setKssj(startDate);
skTrailVO.setJssj(endDate);
skTrailVO.setPoints(points);
listResult.add(skTrailVO);
}
return listResult;
}
/**
* 获取手机轨迹
*
* @param page
* @param rows
* @return
*/
public List<SkTrailVO> getSjgj(String objectValue, String startDate,
String endDate,
@RequestParam(value = "page",
defaultValue = "1") int page,
@RequestParam(value = "rows",
defaultValue = "1000") int rows) {
MultiValueMap<String,String> map = new LinkedMultiValueMap<>();
map.add("zjhm","152624198410061899");
HttpEntity<String> jsonObjectLogin = restTemplate.postForEntity("http://26.3.13.120:8501/loginByZjhm",map, String.class);// 登录XZXT-EQ
List<SkTrailVO> listResult = new ArrayList<>();
String cxsj = startDate + " - " + endDate;
String url = "http://26.3.13.120:8501/nmsj/getMySjGjXx?sjhm=" + objectValue + "&cxSj=" + cxsj + "&page=1&limit=999999";
HttpEntity<String> result = restTemplate.getForEntity(url, String.class);
JSONObject jsonObject = JSONObject.parseObject(result.getBody());
if (StringUtils.isNotEmpty(String.valueOf(jsonObject))) {
if (jsonObject.containsKey("data")) {
JSONArray array = jsonObject.getJSONObject("data").getJSONArray("rows");//获取返回的数据结果
List<SkTrail> points = new ArrayList<>();// 返回数据与前端一致
for (int i = 0; i < array.size(); i++) {
JSONObject object = (JSONObject) array.get(i);
String jzmc = (String) object.get("jzmc");
String jzbh = (String) object.get("jzbh");
String jd = (String) object.get("jd");
String wd = (String) object.get("wd");
String fxsj = (String) object.get("fxsj");
String sjhm = (String) object.get("sjhm");
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime lacDt = LocalDateTime.parse(fxsj, dtf);
long l = LocalDateTime.from(lacDt).atZone(ZoneId.systemDefault()).toInstant().toEpochMilli();
SkTrail skTrailCf = new SkTrail();
skTrailCf.setAddress(jzmc);
skTrailCf.setDeviceid(jzbh);
skTrailCf.setDate(fxsj);
skTrailCf.setTime(String.valueOf(l));
skTrailCf.setObjecttype("jzgj");
skTrailCf.setObjectname("基站轨迹");
skTrailCf.setObjectvalue(objectValue);
skTrailCf.setX(jd);
skTrailCf.setY(wd);
points.add(skTrailCf);
}
if(points.size()>0){
SkTrailVO skTrailVO = new SkTrailVO();
skTrailVO.setObjectvalue(objectValue);
skTrailVO.setObjecttype("jzgj");
skTrailVO.setObjectname("基站轨迹");
skTrailVO.setKssj(startDate);
skTrailVO.setJssj(endDate);
skTrailVO.setPoints(points);
listResult.add(skTrailVO);
}
}
}
return listResult;
}
}
......@@ -2,12 +2,15 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.founder.publicapi.mapper.mysqlMapper.TbStAsjMapper">
<select id="selectAsjxxByReceivingList" parameterType="com.founder.commonutils.model.vo.param.TbStAsjParm" resultType="com.founder.commonutils.model.asjEntity.TbStAsjResult">
select t2.* from(
select t1.*,rownum as rn from
(
SELECT
T.ASJBH as asjbh
,DATE_FORMAT(T.SLSJ,'%Y-%m-%d %H:%i:%S') as slsj
,TO_CHAR(T.SLSJ,'YYYY-MM-DD HH24:mi:ss') AS slsj
,T.SLDW_GAJGJGDM as sldwGajgjgdm
,T.SLDW_GAJGMC as sldwGajgmc
,DATE_FORMAT(T.LARQ,'%Y-%m-%d %H:%i:%S') as larq
,TO_CHAR(T.LARQ,'YYYY-MM-DD HH24:mi:ss') AS larq
,T.LADW_GAJGJGDM as ladwGajgjgdm
,(select name from sys_dictitem where groupid='CODE_UNIT' and code=T.LADW_GAJGJGDM) as ladwGajgmc
,T.ZARY_RS as zarsRs
......@@ -17,8 +20,8 @@
,T.AJLBDM as ajlbdm
,T.ZATZ_JYQK as zatzJyqk
,T.AJMC as ajmc
,DATE_FORMAT(T.ASJFSSJ_ASJFSKSSJ,'%Y-%m-%d %H:%i:%S') as asjfssjAsjfskssj
,DATE_FORMAT(T.ASJFSSJ_ASJFSJSSJ,'%Y-%m-%d %H:%i:%S') as asjfssjAsjfsjssj
,TO_CHAR(T.ASJFSSJ_ASJFSKSSJ,'YYYY-MM-DD HH24:mi:ss') AS asjfssjAsjfskssj
,TO_CHAR(T.ASJFSSJ_ASJFSJSSJ,'YYYY-MM-DD HH24:mi:ss') AS asjfssjAsjfsjssj
,T.ASJFSDD_XZQHDM as asjfsddXzqhdm
,(select name from sys_dictitem where groupid='CODE_XZQH' and code=T.ASJFSDD_XZQHDM) as asjfsddXzqhdmMc
,T.ASJFSDD_DZMC as asjfsddDzmc
......@@ -37,7 +40,14 @@
FROM tb_st_asj T left join tb_st_asj_asjbz asjbz on T.asjbh = asjbz.asjbh
WHERE 1=1
<include refid="queryWhereByReceiving"/>
limit #{page},#{pageSize}
) t1
<where>
rownum<![CDATA[ <= ]]> #{ pageSize , jdbcType=VARCHAR }
</where>
)t2
<where>
rn<![CDATA[ >= ]]> #{ page, jdbcType=VARCHAR }
</where>
</select>
<select id="selectAsjxxByReceivingListCount" parameterType="com.founder.commonutils.model.vo.param.TbStAsjParm" resultType="java.lang.Integer">
SELECT
......@@ -51,25 +61,25 @@
AND T.ASJBH= #{ asjbh , jdbcType=VARCHAR }
</if>
<if test="ajmc!= null and ajmc!=''">
AND T.AJMC like concat('%', #{ajmc , jdbcType=VARCHAR }, '%')
AND T.AJMC like '%'|| #{ajmc , jdbcType=VARCHAR }||'%'
</if>
<if test="jyaq!= null and jyaq!=''">
AND T.JYAQ LIKE concat('%', #{jyaq , jdbcType=VARCHAR }, '%')
AND T.JYAQ LIKE '%'|| #{jyaq , jdbcType=VARCHAR }||'%'
</if>
<if test="larqStart!= null and larqStart!=''">
AND T.LARQ <![CDATA[>=]]> DATE_FORMAT(#{larqStart,jdbcType=VARCHAR},'%Y-%m-%d %H:%i:%s')
AND T.LARQ <![CDATA[>=]]> to_date(#{larqStart,jdbcType=VARCHAR},'yyyy-MM-dd hh24:mi:ss')
</if>
<if test="larqEnd!= null and larqEnd!=''">
AND T.LARQ <![CDATA[<]]> DATE_FORMAT(#{larqEnd,jdbcType=VARCHAR},'%Y-%m-%d %H:%i:%s')
AND T.LARQ <![CDATA[<]]> to_date(#{larqEnd,jdbcType=VARCHAR},'yyyy-MM-dd hh24:mi:ss')
</if>
<if test="afdXzqhdm!= null and afdXzqhdm!=''">
AND T.ASJFSDD_XZQHDM like concat(#{afdXzqhdm , jdbcType=VARCHAR }, '%')
AND T.ASJFSDD_XZQHDM like #{afdXzqhdm , jdbcType=VARCHAR }||'%'
</if>
<if test="zcjddm!= null and zcjddm!=''">
AND T.ZCJDDM= #{ zcjddm , jdbcType=VARCHAR }
</if>
<if test="ajlbdm!= null and ajlbdm!=''">
AND T.AJLBDM like concat(#{ajlbdm , jdbcType=VARCHAR }, '%')
AND T.AJLBDM like #{ajlbdm , jdbcType=VARCHAR }|| '%'
</if>
<if test="zatzJyqk!= null and zatzJyqk!=''">
AND T.ZATZ_JYQK = #{zatzJyqk , jdbcType=VARCHAR }
......@@ -78,17 +88,17 @@
AND asjbz.ajxlb = #{ajxlb , jdbcType=VARCHAR }
</if>
<if test="kssj!= null and kssj!=''">
AND T.ASJFSSJ_ASJFSKSSJ <![CDATA[>=]]> DATE_FORMAT(#{kssj},'%Y-%m-%d %H:%i:%s')
AND T.ASJFSSJ_ASJFSKSSJ <![CDATA[>=]]> to_date(#{kssj},'yyyy-MM-dd hh24:mi:ss')
</if>
<if test="jssj!= null and jssj!=''">
AND T.ASJFSSJ_ASJFSJSSJ <![CDATA[<=]]> DATE_FORMAT(#{jssj},'%Y-%m-%d %H:%i:%s')
AND T.ASJFSSJ_ASJFSJSSJ <![CDATA[<=]]> to_date(#{jssj},'yyyy-MM-dd hh24:mi:ss')
</if>
<if test="ssFjOrPcs!= null and ssFjOrPcs!=''">
<if test="ssFjOrPcs=='1'">
AND T.ladw_Gajgjgdm like concat(substr(T.ladw_Gajgjgdm,0,6), '%')
AND T.ladw_Gajgjgdm like substr(T.ladw_Gajgjgdm,0,6)|| '%'
</if>
<if test="ssFjOrPcs=='2'">
AND T.ladw_Gajgjgdm like concat(substr(T.ladw_Gajgjgdm,0,8), '%')
AND T.ladw_Gajgjgdm like substr(T.ladw_Gajgjgdm,0,8)||'%'
</if>
</if>
<if test="gjc!= null and gjc.length>0">
......
package com.founder.publicapi.mapper.qgxzMapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.poi.ss.formula.functions.T;
import org.springframework.stereotype.Component;
import java.util.List;
......@@ -20,7 +18,7 @@ import java.util.Map;
*/
@Mapper
@Component
public interface TbStAsjqgMapper extends BaseMapper<T> {
public interface TbStAsjqgMapper {
List<Map<String,Object>> getqgAsjxxByZjhm(@Param(value = "zjhm") String zjhm, @Param(value = "ssdw") String ssdw);
}
......@@ -45,6 +45,7 @@ public class TbStAsjServiceImpl extends ServiceImpl<TbStAsjMapper, TbStAsj> impl
@Override
public List<TbStAsjResult> selectAsjxxList(TbStAsjParm tbStAsjParm) {
tbStAsjParm.setPageSize(tbStAsjParm.getPage()*tbStAsjParm.getPageSize());
tbStAsjParm.setPage((tbStAsjParm.getPage() - 1)*tbStAsjParm.getPageSize());
// 案件类别代码模糊查询
if (StringUtils.isNotEmpty(tbStAsjParm.getAjlbdm())) {
......
......@@ -7,27 +7,33 @@ spring.jackson.time-zone=GMT+8
logging.level.root=INFO
#mybatis???
#mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
#mysql?????????
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.xzxtdb.url=ENC(Y1dXm7lJCGbPffW6Pbg/Uid1UK2Z1Tu2TNdp9AgqT/iXb4hNRriak+glPXYD6BnO4fQwN9Sj/zguByboO4FagHEQRN0tE57RI6rJEUeTt2JHb1rc2BG1wE9QPK96E5o9K/1TSAjnD/Rr2eAxy11tFLL2fQP35EOX)
spring.datasource.xzxtdb.username=ENC(e7qsvm7EnrdHG04YnaTMsw==)
spring.datasource.xzxtdb.password=ENC(XPnOn0zoWMgOG8gIws+Bh7JITC3mMqSn)
spring.datasource.driver-class-name=oracle.jdbc.driver.OracleDriver
spring.datasource.xzxtdb.url=jdbc:oracle:thin:@10.100.17.120:1521:XZXT
spring.datasource.xzxtdb.username=XZXT
spring.datasource.xzxtdb.password=XzxtPwd#15
spring.datasource.xzxtdb.type=com.alibaba.druid.pool.DruidDataSource
#oracle?????????(?????)
spring.datasource.qgdb.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.qgdb.url=ENC(Y1dXm7lJCGbPffW6Pbg/Uid1UK2Z1Tu2TNdp9AgqT/iXb4hNRriak+glPXYD6BnO4fQwN9Sj/zguByboO4FagHEQRN0tE57RI6rJEUeTt2JHb1rc2BG1wE9QPK96E5o9K/1TSAjnD/Rr2eAxy11tFLL2fQP35EOX)
spring.datasource.qgdb.username=ENC(e7qsvm7EnrdHG04YnaTMsw==)
spring.datasource.qgdb.password=ENC(XPnOn0zoWMgOG8gIws+Bh7JITC3mMqSn)
spring.datasource.qgdb.driver-class-name=oracle.jdbc.driver.OracleDriver
spring.datasource.qgdb.url=jdbc:oracle:thin:@10.100.17.120:1521:XZXT
spring.datasource.qgdb.username=XZXT
spring.datasource.qgdb.password=XzxtPwd#15
spring.datasource.qgdb.type=com.alibaba.druid.pool.DruidDataSource
#mapywgl?????????(?????)
spring.datasource.map.driver-class-name=oracle.jdbc.driver.OracleDriver
spring.datasource.map.url=jdbc:oracle:thin:@10.100.17.120:1521:XZXT
spring.datasource.map.username=MAPYWGL
spring.datasource.map.password=MAPYWGL
spring.datasource.map.type=com.alibaba.druid.pool.DruidDataSource
#xml???
mybatis-plus.mapper-locations=classpath*:com/founder/publicapi/mapper/*/xml/*.xml
#es?????????
management.health.elasticsearch.enabled=false
#??????λ
ssdw=460000000000
ssdw=150000000000
#server.tomcat.basedir: /tmp/tomcat
#阿里云用dev 公安网用prod
environment=dev
......
#\uFFFD\uFFFD\uFFFD\uFFFD\u02FF\uFFFD
#??????
server.port=1003
#\uFFFD\uFFFD\uFFFD\uFFFDjson\uFFFD\uFFFD\u022B\uFFFD\uFFFD\u02B1\uFFFD\uFFFD\uFFFD\u02BD
#????json??????????
spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
spring.jackson.time-zone=GMT+8
#\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u05BE\uFFFD\uFFFD\uFFFD\uFFFD
#???????????
logging.level.root=INFO
#mybatis\uFFFD\uFFFD\u05BE
#mybatis???
#mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
#mysql?????????
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.xzxtdb.url=ENC(Y1dXm7lJCGbPffW6Pbg/Uid1UK2Z1Tu2TNdp9AgqT/iXb4hNRriak+glPXYD6BnO4fQwN9Sj/zguByboO4FagHEQRN0tE57RI6rJEUeTt2JHb1rc2BG1wE9QPK96E5o9K/1TSAjnD/Rr2eAxy11tFLL2fQP35EOX)
spring.datasource.xzxtdb.username=ENC(e7qsvm7EnrdHG04YnaTMsw==)
spring.datasource.xzxtdb.password=ENC(XPnOn0zoWMgOG8gIws+Bh7JITC3mMqSn)
spring.datasource.driver-class-name=oracle.jdbc.driver.OracleDriver
spring.datasource.xzxtdb.url=jdbc:oracle:thin:@10.100.17.120:1521:XZXT
spring.datasource.xzxtdb.username=XZXT
spring.datasource.xzxtdb.password=XzxtPwd#15
spring.datasource.xzxtdb.type=com.alibaba.druid.pool.DruidDataSource
#oracle?????????(?????)
spring.datasource.qgdb.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.qgdb.url=ENC(Y1dXm7lJCGbPffW6Pbg/Uid1UK2Z1Tu2TNdp9AgqT/iXb4hNRriak+glPXYD6BnO4fQwN9Sj/zguByboO4FagHEQRN0tE57RI6rJEUeTt2JHb1rc2BG1wE9QPK96E5o9K/1TSAjnD/Rr2eAxy11tFLL2fQP35EOX)
spring.datasource.qgdb.username=ENC(e7qsvm7EnrdHG04YnaTMsw==)
spring.datasource.qgdb.password=ENC(XPnOn0zoWMgOG8gIws+Bh7JITC3mMqSn)
spring.datasource.qgdb.driver-class-name=oracle.jdbc.driver.OracleDriver
spring.datasource.qgdb.url=jdbc:oracle:thin:@10.100.17.120:1521:XZXT
spring.datasource.qgdb.username=XZXT
spring.datasource.qgdb.password=XzxtPwd#15
spring.datasource.qgdb.type=com.alibaba.druid.pool.DruidDataSource
#xml\u0268\uFFFD\uFFFD
#mapywgl?????????(?????)
spring.datasource.map.driver-class-name=oracle.jdbc.driver.OracleDriver
spring.datasource.map.url=jdbc:oracle:thin:@10.100.17.120:1521:XZXT
spring.datasource.map.username=MAPYWGL
spring.datasource.map.password=MAPYWGL
spring.datasource.map.type=com.alibaba.druid.pool.DruidDataSource
#xml???
mybatis-plus.mapper-locations=classpath*:com/founder/publicapi/mapper/*/xml/*.xml
#es\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0631\uFFFD
#es?????????
management.health.elasticsearch.enabled=false
#\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u03BB
#??????λ
ssdw=460000000000
#server.tomcat.basedir: /tmp/tomcat
#\u963F\u91CC\u4E91\u7528dev \u516C\u5B89\u7F51\u7528prod
#阿里云用dev 公安网用prod
environment=prod
#FTP\u670D\u52A1\u5668ip
host=65.26.2.173
#FTP\u670D\u52A1\u5668\u7AEF\u53E3
port=2233
#FTP\u767B\u5F55\u8D26\u53F7
#FTP服务器ip
host=47.92.48.137
#FTP服务器端口
port=54322
#FTP登录账号
usernameFtp=root
#FTP\u767B\u5F55\u5BC6\u7801
password=Hnsgat12#$1
#FTP\u670D\u52A1\u5668\u57FA\u7840\u76EE\u5F55,/data2/images
basePath=/data/hnxz/images
#FTP登录密码
password=Cc150520
#FTP服务器基础目录,/data2/images
basePath=/data2/images
imagesUrl=http://65.26.2.173:1008/images/
spring.profiles.active=dev
spring.profiles.active=prod
server.port=1003
spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
......@@ -6,6 +6,6 @@ spring.jackson.time-zone=GMT+8
logging.level.root=INFO
#加密秘钥
jasypt.encryptor.password=lybgeek
#jasypt.encryptor.password=lybgeek
#指定解密算法(默认)
jasypt.encryptor.algorithm=PBEWithMD5AndDES
\ No newline at end of file
#jasypt.encryptor.algorithm=PBEWithMD5AndDES
\ No newline at end of file
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