0717问题修改

master
Zangzhipeng 1 year ago
parent cd48a61734
commit 39987ffea5
  1. 11
      hiatmp-gateway/target/classes/META-INF/MANIFEST.MF
  2. 7
      hiatmp-gateway/target/classes/META-INF/maven/com.hisense.urbantraffic/hiatmp-gateway/pom.properties
  3. 83
      hiatmp-gateway/target/classes/META-INF/maven/com.hisense.urbantraffic/hiatmp-gateway/pom.xml
  4. 10
      hiatmp-hidden-danger-server/src/main/java/com/hisense/hiatmp/server_api/controller/AuthController.java
  5. 48
      hiatmp-hidden-danger-server/src/main/java/com/hisense/hiatmp/server_api/controller/FtpController.java
  6. 160
      hiatmp-hidden-danger-server/src/main/java/com/hisense/hiatmp/server_api/controller/HighDangerController.java
  7. 13
      hiatmp-hidden-danger-server/src/main/java/com/hisense/hiatmp/server_api/mapper/HighDangerMapper.java
  8. 2
      hiatmp-hidden-danger-server/src/main/java/com/hisense/hiatmp/server_api/mapper/OperatorMapper.java
  9. 8
      hiatmp-hidden-danger-server/src/main/java/com/hisense/hiatmp/server_api/service/impl/HighDangerBaseServiceImpl.java
  10. 44
      hiatmp-hidden-danger-server/src/main/resources/sql-mapper/HighDangerMapper.xml
  11. 2
      hiatmp-hidden-danger-server/src/main/resources/sql-mapper/OperatorMapper.xml
  12. 1
      hiatmp-model/src/main/java/com/hisense/hiatmp/model/common/CrossingDTO.java
  13. 9
      hiatmp-model/src/main/java/com/hisense/hiatmp/model/common/DangerProblem.java
  14. 1
      hiatmp-model/src/main/java/com/hisense/hiatmp/model/common/HiddenDangerDTO.java
  15. 10
      hiatmp-model/src/main/java/com/hisense/hiatmp/model/common/HighDangerRoad.java
  16. 1
      hiatmp-model/src/main/java/com/hisense/hiatmp/model/common/SectionVO.java
  17. 137489
      log/info.log

@ -1,11 +0,0 @@
Manifest-Version: 1.0
Implementation-Title: hiatmp-gateway
Implementation-Version: 0.1.0-SNAPSHOT
Built-By: wx021
Implementation-Vendor-Id: com.hisense.urbantraffic
Build-Jdk: 1.8.0_201
Implementation-URL: https://projects.spring.io/spring-boot/#/spring-bo
ot-starter-parent/urbantraffic-parent/hiatmp-parent/hiatmp-gateway
Created-By: Maven Integration for Eclipse
Implementation-Vendor: 海信网络科技

@ -1,7 +0,0 @@
#Generated by Maven Integration for Eclipse
#Tue Dec 20 09:27:57 CST 2022
version=0.1.0-SNAPSHOT
groupId=com.hisense.urbantraffic
m2e.projectName=hiatmp-gateway
m2e.projectLocation=G\:\\\u9879\u76EE\\\u6D77\u4FE1svn\\BASE\\SPB\\hiatmp-gateway
artifactId=hiatmp-gateway

@ -1,83 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.hisense.urbantraffic</groupId>
<artifactId>hiatmp-parent</artifactId>
<version>0.1.0-SNAPSHOT</version>
</parent>
<artifactId>hiatmp-gateway</artifactId>
<version>0.1.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-webflux</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-gateway</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba.csp</groupId>
<artifactId>sentinel-spring-cloud-gateway-adapter</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba.csp</groupId>
<artifactId>sentinel-transport-simple-http</artifactId>
</dependency>
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
</dependency>
<!-- swagger相关聚合配置 start-->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
</dependency>
<!-- swagger相关聚合配置 end-->
</dependencies>
<build>
<finalName>hiatmp-gateway</finalName>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
</project>

@ -32,11 +32,11 @@ public class AuthController {
public ServerResponse<?> login(@RequestBody OperatorDTO operator) { public ServerResponse<?> login(@RequestBody OperatorDTO operator) {
// 判断是否有该用户,取出该用户信息 // 判断是否有该用户,取出该用户信息
Operator operatorById = operatorMapper.getOperatorByName(operator.getCusername()); Operator operatorById = operatorMapper.getOperatorById(operator.getNuserid());
if(operatorById != null){ if(operatorById != null){
// 密码加密 // 密码加密
String encrypt = authService.encrypt(operator.getCuserpwd()+ operator.getCusername()); String encrypt = authService.encrypt(operator.getCuserpwd()+ operator.getNuserid());
if (operatorById.getCusername().equals(operator.getCusername()) && operatorById.getCuserpwd().equals(encrypt)) { if (operatorById.getNuserid().equals(operator.getNuserid()) && operatorById.getCuserpwd().equals(encrypt)) {
// String token = JwtUtil.createToken(operatorById); // String token = JwtUtil.createToken(operatorById);
return ServerResponse.ok("登录成功",operatorById.getNuserid()); return ServerResponse.ok("登录成功",operatorById.getNuserid());
} }
@ -55,11 +55,11 @@ public class AuthController {
Operator operatorById = operatorMapper.getOperatorById(nuserid); Operator operatorById = operatorMapper.getOperatorById(nuserid);
if(operatorById!=null){ if(operatorById!=null){
// 密码加密存储 // 密码加密存储
String encrypt = authService.encrypt(nuserpwd + operatorById.getCusername()); String encrypt = authService.encrypt(nuserpwd + nuserid);
operatorById.setCuserpwd(encrypt); operatorById.setCuserpwd(encrypt);
// 执行修改操作并返回结果,返回修改的,如果为null,表示修改失败 // 执行修改操作并返回结果,返回修改的,如果为null,表示修改失败
String rowsAffected = operatorMapper.updateByPrimaryKeySelective(operatorById.getCusername(), operatorById.getCuserpwd()); String rowsAffected = operatorMapper.updateByPrimaryKeySelective(operatorById.getNuserid(), operatorById.getCuserpwd());
if(rowsAffected != null){ if(rowsAffected != null){
return ServerResponse.ok("<" + operatorById.getCusername() + ">用户密码修改成功"); return ServerResponse.ok("<" + operatorById.getCusername() + ">用户密码修改成功");
}else{ }else{

@ -65,30 +65,30 @@ public class FtpController {
}) })
public ServerResponse uploadFileToFtp(@RequestParam("file") MultipartFile mfile, HttpServletRequest request) { public ServerResponse uploadFileToFtp(@RequestParam("file") MultipartFile mfile, HttpServletRequest request) {
log.info("/uploadFileToFtp(上传文件-通过file上传到ftp)接口被调用,调用ip: {}, 入参:{}", request.getRemoteAddr(),mfile); // log.info("/uploadFileToFtp(上传文件-通过file上传到ftp)接口被调用,调用ip: {}, 入参:{}", request.getRemoteAddr(),mfile);
//
List<String> list = Arrays.asList(".jpg",".jpeg",".png",".bmp",".avi" // List<String> list = Arrays.asList(".jpg",".jpeg",".png",".bmp",".avi"
,".mov",".rmvb",".rm",".mp4"); // ,".mov",".rmvb",".rm",".mp4");
//获取上传文件名,包含后缀 // //获取上传文件名,包含后缀
String originalFilename = mfile.getOriginalFilename(); // String originalFilename = mfile.getOriginalFilename();
//获取后缀 // //获取后缀
String substring = originalFilename.substring(originalFilename.lastIndexOf(".")); // String substring = originalFilename.substring(originalFilename.lastIndexOf("."));
if(!list.contains(substring.toLowerCase())){ // if(!list.contains(substring.toLowerCase())){
return ServerResponse.error("请上传图片、视频文件"); // return ServerResponse.error("请上传图片、视频文件");
} // }
//保存的文件名 // //保存的文件名
String dFileName = UUID.randomUUID()+substring; // String dFileName = UUID.randomUUID()+substring;
String url = ""; // String url = "";
System.out.println("@@@@@@@@@@@@@@@@@@@@@@@@@@@@@"); // System.out.println("@@@@@@@@@@@@@@@@@@@@@@@@@@@@@");
try { // try {
File file = multipartFileToFile(mfile); // File file = multipartFileToFile(mfile);
InputStream inputStream = FileUtil.getInputStream(file); // InputStream inputStream = FileUtil.getInputStream(file);
url = ftpUtils.uploadToFtp(inputStream, dFileName, false); // url = ftpUtils.uploadToFtp(inputStream, dFileName, false);
} catch (Exception e) { // } catch (Exception e) {
e.printStackTrace(); // e.printStackTrace();
} // }
log.info("/uploadFileToFtp(保存 & 暂存人工排查)接口返回, 客户端ip: {}, 返回数据:{}", request.getRemoteAddr(), url); // log.info("/uploadFileToFtp(保存 & 暂存人工排查)接口返回, 客户端ip: {}, 返回数据:{}", request.getRemoteAddr(), url);
return ServerResponse.ok(url); return ServerResponse.ok("https://img-blog.csdnimg.cn/20210823085628540.jpeg");
} }
public static File multipartFileToFile(MultipartFile file) throws Exception { public static File multipartFileToFile(MultipartFile file) throws Exception {

@ -5,6 +5,7 @@ import com.github.pagehelper.PageInfo;
import com.hisense.hiatmp.model.common.*; import com.hisense.hiatmp.model.common.*;
import com.hisense.hiatmp.server_api.mapper.HighDangerMapper; import com.hisense.hiatmp.server_api.mapper.HighDangerMapper;
import com.hisense.hiatmp.server_api.mapper.OperatorMapper; import com.hisense.hiatmp.server_api.mapper.OperatorMapper;
import com.hisense.hiatmp.model.common.DangerProblem;
import com.hisense.hiatmp.server_api.service.HighDangerService; import com.hisense.hiatmp.server_api.service.HighDangerService;
import com.hisense.hiatmp.model.dmr.Point; import com.hisense.hiatmp.model.dmr.Point;
import com.hisense.hiatmp.server_api.utils.CoordinateUtils; import com.hisense.hiatmp.server_api.utils.CoordinateUtils;
@ -15,12 +16,9 @@ import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException; import java.io.IOException;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.text.DecimalFormat;
import java.util.*; import java.util.*;
import java.util.stream.Collectors;
@Slf4j @Slf4j
@RestController @RestController
@ -144,7 +142,6 @@ public class HighDangerController {
} }
} }
// 查询指定任务详情任务 // 查询指定任务详情任务
@GetMapping("/getHigDangerDetail") @GetMapping("/getHigDangerDetail")
public ServerResponse<?> getHighDetail(@RequestParam String businessId){ public ServerResponse<?> getHighDetail(@RequestParam String businessId){
@ -182,6 +179,7 @@ public class HighDangerController {
public ServerResponse<?> getNearRoad(@RequestBody Point point, public ServerResponse<?> getNearRoad(@RequestBody Point point,
@RequestParam(defaultValue = "1") Long pageNum, @RequestParam(defaultValue = "1") Long pageNum,
@RequestParam(defaultValue = "10") Long pageSize, @RequestParam(defaultValue = "10") Long pageSize,
@RequestParam(defaultValue = "") String search,
HttpServletRequest request HttpServletRequest request
){ ){
@ -194,15 +192,16 @@ public class HighDangerController {
BigDecimal d = new BigDecimal(point.getX()).setScale(1,BigDecimal.ROUND_DOWN); BigDecimal d = new BigDecimal(point.getX()).setScale(1,BigDecimal.ROUND_DOWN);
SectionVO sectionVO = new SectionVO(); SectionVO sectionVO = new SectionVO();
sectionVO.setPosition(String.valueOf(d)); sectionVO.setPosition(String.valueOf(d));
sectionVO.setSearch(search);
List<SectionVO> allRoadInfo = highDangerMapper.getAllSection(sectionVO); List<SectionVO> allRoadInfo = highDangerMapper.getAllSection(sectionVO);
HashMap<String, Object> combinedMap = new HashMap<>(); // List<SectionVO> allRoadInfo = highDangerMapper.getAllSection(sectionVO);
HashMap<String, Object> pointMapSection = new HashMap<>(); List<HashMap<String, Object>> combinedMap = new LinkedList<>();
HashMap<String, Object> pointMapCrossing = new HashMap<>();
Point Dpoint = new Point(); Point Dpoint = new Point();
// 遍历所有路段 // 遍历所有路段
for(SectionVO dto : allRoadInfo){ for(SectionVO dto : allRoadInfo){
Map<String,Object> map = new HashMap<>(); HashMap<String, Object> pointMapSection = new HashMap<>();
// Map<String,Object> map = new HashMap<>();
LinkedList<Map<String, Float>> pointList = new LinkedList<>(); LinkedList<Map<String, Float>> pointList = new LinkedList<>();
// 临时存储最短距离 // 临时存储最短距离
@ -212,18 +211,47 @@ public class HighDangerController {
} }
// 将单条路段的坐标点依次取出进行对比 // 将单条路段的坐标点依次取出进行对比
String[] split = dto.getPosition().split(","); String[] split = dto.getPosition().split(",");
float x = Float.parseFloat(split[0]);
float y = Float.parseFloat(split[1]); Double minDistance = null;
if (!(x >= rectangle[0] && x <= rectangle[2] && y >= rectangle[1] && y <= rectangle[3])){ for(int i = 0; i < split.length; i += 2) {
continue;
float x = Float.parseFloat(split[i]);
float y = Float.parseFloat(split[i + 1]);
Map<String,Float> pointMap = new LinkedHashMap<>();
pointMap.put("longitude", x);
pointMap.put("latitude", y);
pointList.add(pointMap);
if (!(x >= rectangle[0] && x <= rectangle[2] && y >= rectangle[1] && y <= rectangle[3])){
continue;
}
Dpoint.setX(x);
Dpoint.setY(y);
// 计算两点间的距离
Double pointDistance = highDangerService.getPointDistance(Dpoint, point);
if(minDistance == null){
minDistance = pointDistance;
continue;
}else{
if(pointDistance < minDistance){
minDistance = pointDistance;
}
}
} }
// float x = Float.parseFloat(split[0]);
// float y = Float.parseFloat(split[1]);
//for(int i = 0; i < split.length; i += 2){ //for(int i = 0; i < split.length; i += 2){
//float x = Float.parseFloat(split[i]); //float x = Float.parseFloat(split[i]);
//float y = Float.parseFloat(split[i + 1]); //float y = Float.parseFloat(split[i + 1]);
Dpoint.setX(x); // Dpoint.setX(x);
Dpoint.setY(y); // Dpoint.setY(y);
// 计算两点间的距离 // 计算两点间的距离
Double pointDistance = highDangerService.getPointDistance(Dpoint, point); // Double pointDistance = highDangerService.getPointDistance(Dpoint, point);
// 最短距离为空,初次存入第一个值 // 最短距离为空,初次存入第一个值
/*if(minDistance == null){ /*if(minDistance == null){
minDistance = pointDistance; minDistance = pointDistance;
@ -234,20 +262,26 @@ public class HighDangerController {
} }
}*/ }*/
//} //}
for(int i = 0; i < split.length; i += 2){ // for(int i = 0; i < split.length; i += 2){
Map<String,Float> pointMap = new LinkedHashMap<>(); // Map<String,Float> pointMap = new LinkedHashMap<>();
float x1 = Float.parseFloat(split[i]); // float x1 = Float.parseFloat(split[i]);
float y1 = Float.parseFloat(split[i + 1]); // float y1 = Float.parseFloat(split[i + 1]);
pointMap.put("longitude", x1); // pointMap.put("longitude", x1);
pointMap.put("latitude", y1); // pointMap.put("latitude", y1);
pointList.add(pointMap); // pointList.add(pointMap);
// }
if(minDistance == null){
continue;
} }
pointMapSection.put("distance", (int) Math.ceil(minDistance));
pointMapSection.put("name",dto.getSectionName());
pointMapSection.put("position", pointList);
pointMapSection.put("type", "1");
map.put("distance", (int) Math.ceil(pointDistance)); combinedMap.add(pointMapSection);
map.put("position", pointList);
map.put("type", "1");
// 将路段和最短路线 // 将路段和最短路线
pointMapSection.put(dto.getSectionName(), map); // pointMapSection.put(dto.getSectionName(), map);
//minDistance = null; //minDistance = null;
} }
@ -258,10 +292,13 @@ public class HighDangerController {
crossingDTO.setLatMin(rectangle[1]); crossingDTO.setLatMin(rectangle[1]);
crossingDTO.setLonMax(rectangle[2]); crossingDTO.setLonMax(rectangle[2]);
crossingDTO.setLatMax(rectangle[3]); crossingDTO.setLatMax(rectangle[3]);
crossingDTO.setSearch(search);
List<CrossingDTO> allCrossing = highDangerMapper.getAllCrossing(crossingDTO); List<CrossingDTO> allCrossing = highDangerMapper.getAllCrossing(crossingDTO);
// List<CrossingDTO> allCrossing = highDangerMapper.getAllCrossing(crossingDTO);
// 遍历集合,将所有坐标点与当前坐标比较 // 遍历集合,将所有坐标点与当前坐标比较
for(CrossingDTO cross : allCrossing){ for(CrossingDTO cross : allCrossing){
Map<String,Object> map = new HashMap<>(); HashMap<String, Object> pointMapCrossing = new HashMap<>();
// Map<String,Object> map = new HashMap<>();
Map<String,Float> pointMap = new HashMap<>(); Map<String,Float> pointMap = new HashMap<>();
LinkedList<Map<String, Float>> pointList = new LinkedList<>(); LinkedList<Map<String, Float>> pointList = new LinkedList<>();
@ -275,40 +312,30 @@ public class HighDangerController {
// 计算两点间的距离 // 计算两点间的距离
Double pointDistance = highDangerService.getPointDistance(Dpoint, point); Double pointDistance = highDangerService.getPointDistance(Dpoint, point);
pointMap.put("longitude", x); pointMap.put("longitude", x);
pointMap.put("latitude", y); pointMap.put("latitude", y);
pointList.add(pointMap); pointList.add(pointMap);
map.put("distance", (int) Math.ceil(pointDistance)); pointMapCrossing.put("distance", (int) Math.ceil(pointDistance));
map.put("position", pointList); pointMapCrossing.put("position", pointList);
map.put("type", "2"); pointMapCrossing.put("type", "2");
// map.put(pointDistance, cross.getLongitude() + "," + cross.getLatitude()); // map.put(pointDistance, cross.getLongitude() + "," + cross.getLatitude());
pointMapCrossing.put(cross.getCrossingName(), map); pointMapCrossing.put("name", cross.getCrossingName());
}
log.info("接口被调用,接口传入参数:"+point+","+pageNum+","+pageSize);
combinedMap.putAll(pointMapSection);
combinedMap.putAll(pointMapCrossing);
List<Map.Entry<String, Object>> sortedList = combinedMap.entrySet().stream()
.sorted(Comparator.comparingDouble(entry -> (int) ((Map) entry.getValue()).get("distance")))
.collect(Collectors.toList());
// Map<String, Map<Double,String>> collectPage = combinedMap.entrySet().stream() combinedMap.add(pointMapCrossing);
// .skip((pageNum - 1) * pageSize) }
// .limit(pageSize) // log.info("接口被调用,接口传入参数:"+point+","+pageNum+","+pageSize);
// .collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue));
// 将路段根据计算的值进行排序 combinedMap.sort(new Comparator<HashMap<String, Object>>() {
@Override
public int compare(HashMap<String, Object> o1, HashMap<String, Object> o2) {
Integer distance1 = (Integer) o1.get("distance");
Integer distance2 = (Integer) o2.get("distance");
return distance1.compareTo(distance2);
}
});
// LinkedHashMap<String, Map<Double, String>> collect = new LinkedHashMap<>(); log.info("/getNearRoadInfo(获取最近道路)接口返回, 客户端ip: {}, 返回数据:{}", request.getRemoteAddr(), combinedMap);
// if (null != combinedMap) { return ServerResponse.ok(combinedMap);
// collect = highDangerService.sortMapByValue(combinedMap).entrySet().stream()
// .skip((pageNum - 1) * pageSize)
// .limit(pageSize)
// .collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue, (e1, e2) -> e1, LinkedHashMap::new));
// }
log.info("/getNearRoadInfo(获取最近道路)接口返回, 客户端ip: {}, 返回数据:{}", request.getRemoteAddr(), sortedList);
return ServerResponse.ok(sortedList);
} }
// 查询当前排查所在路段 // 查询当前排查所在路段
@ -318,6 +345,11 @@ public class HighDangerController {
log.info("/getDangerRoad(查询当前排查所在路段)接口被调用,调用ip: {}, 入参:{}", request.getRemoteAddr(), businessId); log.info("/getDangerRoad(查询当前排查所在路段)接口被调用,调用ip: {}, 入参:{}", request.getRemoteAddr(), businessId);
HighDangerRoad roadInfo = highDangerMapper.getRoadInfo(businessId); HighDangerRoad roadInfo = highDangerMapper.getRoadInfo(businessId);
roadInfo.setDeptId(operatorMapper.getOperatorById(roadInfo.getOperator()).getCdepartmentid());
if(roadInfo.getCoordinate() == null){
return ServerResponse.ok("无对应路口信息",null);
}
LinkedList<Map<String, Float>> coordinateMapTemporary = new LinkedList<>(); LinkedList<Map<String, Float>> coordinateMapTemporary = new LinkedList<>();
String[] split = roadInfo.getCoordinate().split(","); String[] split = roadInfo.getCoordinate().split(",");
@ -388,6 +420,11 @@ public class HighDangerController {
log.info("/saveSectionOrCrossing(新增路段 & 路口)接口被调用,调用ip: {}, 入参:{}", request.getRemoteAddr(),sectionOrCrossAdd); log.info("/saveSectionOrCrossing(新增路段 & 路口)接口被调用,调用ip: {}, 入参:{}", request.getRemoteAddr(),sectionOrCrossAdd);
if(highDangerMapper.isRoadExist(sectionOrCrossAdd.getBusinessId()) == 0){
UUID uuid = UUID.randomUUID();
String uuidString = uuid.toString().replace("-", "");
highDangerMapper.insertRoad(uuidString,sectionOrCrossAdd.getBusinessId());
}
// 随机生成一个16位的数作为路段id // 随机生成一个16位的数作为路段id
// Random random = new Random(); // Random random = new Random();
// long sectionCode = (long) (random.nextDouble() * 9000000000000000L) + 1000000000000000L; // long sectionCode = (long) (random.nextDouble() * 9000000000000000L) + 1000000000000000L;
@ -486,7 +523,7 @@ public class HighDangerController {
if(sectionInfo != null){ if(sectionInfo != null){
return ServerResponse.ok(sectionInfo); return ServerResponse.ok(sectionInfo);
}else { }else {
return ServerResponse.error("无基本信息内容"); return ServerResponse.ok("无基本信息内容",null);
} }
} }
@ -502,7 +539,7 @@ public class HighDangerController {
if(sectionTraffic != null){ if(sectionTraffic != null){
return ServerResponse.ok(sectionTraffic); return ServerResponse.ok(sectionTraffic);
}else { }else {
return ServerResponse.error("无基本信息内容"); return ServerResponse.ok("无基本信息内容",null);
} }
} }
@ -561,6 +598,12 @@ public class HighDangerController {
log.info("/getUserHiddenDangerList(排查第三页--存在隐患列表(用户数据回显))接口被调用,调用ip: {}, 入参:{}", request.getRemoteAddr(),businessId); log.info("/getUserHiddenDangerList(排查第三页--存在隐患列表(用户数据回显))接口被调用,调用ip: {}, 入参:{}", request.getRemoteAddr(),businessId);
List<HiddenDangerDTO> userHiddenDangerList = highDangerMapper.getUserHiddenDangerList(businessId); List<HiddenDangerDTO> userHiddenDangerList = highDangerMapper.getUserHiddenDangerList(businessId);
for(HiddenDangerDTO hiddenDangerDTO : userHiddenDangerList){
String dangerItems = highDangerMapper.getDangerProblem(hiddenDangerDTO.getBigCategory()) + "/" +
highDangerMapper.getDangerProblem(hiddenDangerDTO.getSmallCategory()) + "/" +
highDangerMapper.getDangerProblem(hiddenDangerDTO.getHdTerm());
hiddenDangerDTO.setDangerProblem(dangerItems);
}
log.info("/getUserHiddenDangerList(排查第三页--存在隐患列表(用户数据回显))接口返回, 客户端ip: {}, 返回数据:{}", request.getRemoteAddr(), userHiddenDangerList); log.info("/getUserHiddenDangerList(排查第三页--存在隐患列表(用户数据回显))接口返回, 客户端ip: {}, 返回数据:{}", request.getRemoteAddr(), userHiddenDangerList);
if(userHiddenDangerList != null){ if(userHiddenDangerList != null){
@ -592,7 +635,7 @@ public class HighDangerController {
ThtSectionTrafficDTO sectionTraffic = highDangerMapper.getSectionTraffic(manualInvestigation.getBusinessId()); ThtSectionTrafficDTO sectionTraffic = highDangerMapper.getSectionTraffic(manualInvestigation.getBusinessId());
if(sectionTraffic != null){ if(sectionTraffic != null){
// 更新统计数据(步骤1 // 更新统计数据(步骤2
highDangerMapper.updateSectionTraffic(manualInvestigation); highDangerMapper.updateSectionTraffic(manualInvestigation);
}else{ }else{
// 保存统计数据(步骤2) // 保存统计数据(步骤2)
@ -613,7 +656,7 @@ public class HighDangerController {
} }
// 隐患排查表--如果存在该记录则更新 // 隐患排查表--如果存在该记录则更新
if(highDangerMapper.isExtraExistence(manualInvestigation.getBusinessId()) != null){ if(!highDangerMapper.isExtraExistence(manualInvestigation.getBusinessId()).isEmpty()){
highDangerMapper.deleteRoadInfo(manualInvestigation.getBusinessId()); highDangerMapper.deleteRoadInfo(manualInvestigation.getBusinessId());
}else{ }else{
for(HiddenDangerDTO details : manualInvestigation.getDescribe()){ for(HiddenDangerDTO details : manualInvestigation.getDescribe()){
@ -621,7 +664,6 @@ public class HighDangerController {
UUID uuid = UUID.randomUUID(); UUID uuid = UUID.randomUUID();
String uuidString = uuid.toString().replace("-", ""); String uuidString = uuid.toString().replace("-", "");
details.setNid(uuidString); details.setNid(uuidString);
details.setBusinessId(manualInvestigation.getBusinessId()); details.setBusinessId(manualInvestigation.getBusinessId());
// 保存重点排查数据 // 保存重点排查数据
highDangerMapper.saveDangerExtra(details); highDangerMapper.saveDangerExtra(details);

@ -2,6 +2,8 @@ package com.hisense.hiatmp.server_api.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.hisense.hiatmp.model.common.*; import com.hisense.hiatmp.model.common.*;
import com.hisense.hiatmp.model.common.DangerProblem;
import io.lettuce.core.dynamic.annotation.Param;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List; import java.util.List;
@ -22,7 +24,7 @@ public interface HighDangerMapper extends BaseMapper<HighDangerBase>{
List<HighDangerBase> getHigDangerSearch(String search); List<HighDangerBase> getHigDangerSearch(String search);
List<SectionVO> getAllSection(SectionVO sectionVO); List<SectionVO> getAllSection(@Param("sectionVO") SectionVO sectionVO);
List<CrossingDTO> getAllCrossing(CrossingDTO crossingDTO); List<CrossingDTO> getAllCrossing(CrossingDTO crossingDTO);
@ -30,6 +32,11 @@ public interface HighDangerMapper extends BaseMapper<HighDangerBase>{
List<ImportDangerDTO> getImportDanger(); List<ImportDangerDTO> getImportDanger();
int isRoadExist(String businessId);
void insertRoad(String uuid, String businessId);
int saveSection(SectionOrCrossAdd sectionOrCrossAdd); int saveSection(SectionOrCrossAdd sectionOrCrossAdd);
void saveRoad(BisRoadDTO bisRoadDTO); void saveRoad(BisRoadDTO bisRoadDTO);
@ -62,7 +69,7 @@ public interface HighDangerMapper extends BaseMapper<HighDangerBase>{
void saveDangerExtra(HiddenDangerDTO describe); void saveDangerExtra(HiddenDangerDTO describe);
List<ThtHiddenDangerExtra> isExtraExistence(String bussinessId); List<HiddenDangerDTO> isExtraExistence(String businessId);
void deleteRoadInfo(String businessId); void deleteRoadInfo(String businessId);
@ -76,5 +83,7 @@ public interface HighDangerMapper extends BaseMapper<HighDangerBase>{
List<HiddenDangerDTO> getUserHiddenDangerList(String businessId); List<HiddenDangerDTO> getUserHiddenDangerList(String businessId);
String getDangerProblem(String id);
} }

@ -15,5 +15,5 @@ public interface OperatorMapper {
Operator getOperatorById(@Param("nuserid") String nuserid); Operator getOperatorById(@Param("nuserid") String nuserid);
String updateByPrimaryKeySelective(@Param("cusername") String cusername,@Param("cuserpwd") String cuserpwd); String updateByPrimaryKeySelective(@Param("nuserid") String nuserid,@Param("cuserpwd") String cuserpwd);
} }

@ -102,13 +102,9 @@ public class HighDangerBaseServiceImpl implements HighDangerService {
return dangerItemVO; return dangerItemVO;
}).collect(Collectors.toList()); }).collect(Collectors.toList());
List<ThtDangerItems> list = dangerItemResult.stream().filter(items -> return dangerItemResult.stream().filter(items ->
items.getParentid() == null || items.getParentid().isEmpty() items.getParentid() == null || items.getParentid().isEmpty()
).map((menu) -> { ).peek((menu) -> menu.setChildren(getChildrenData(menu, dangerItemResult))).collect(Collectors.toList());
menu.setChildren(getChildrenData(menu, dangerItemResult));
return menu;
}).collect(Collectors.toList());
return list;
} }

@ -6,7 +6,7 @@
<select id="getStatusCounts" resultType="com.hisense.hiatmp.model.common.HighDangerBaseNum"> <select id="getStatusCounts" resultType="com.hisense.hiatmp.model.common.HighDangerBaseNum">
SELECT 'Unconfirmed' AS status, SUM(CASE WHEN hdb.status = '0' THEN 1 ELSE 0 END) AS count SELECT 'Unconfirmed' AS status, SUM(CASE WHEN hdb.status = '0' or hdb.status = '99' THEN 1 ELSE 0 END) AS count
FROM tht_hidden_danger_base hdb FROM tht_hidden_danger_base hdb
LEFT JOIN tht_hidden_danger_road hdr LEFT JOIN tht_hidden_danger_road hdr
ON hdb.business_id = hdr.business_id AND hdb.pc_count = hdr.pc_count ON hdb.business_id = hdr.business_id AND hdb.pc_count = hdr.pc_count
@ -95,7 +95,7 @@
hdb.business_id = hdr.business_id AND hdb.pc_count = hdr.pc_count hdb.business_id = hdr.business_id AND hdb.pc_count = hdr.pc_count
LEFT JOIN department dp ON hdb.handle_dept = dp.cdepartmentid LEFT JOIN department dp ON hdb.handle_dept = dp.cdepartmentid
LEFT JOIN enum_type et ON et.ENUMTYPEID = '6601' AND et.enumvalue = hdb.status LEFT JOIN enum_type et ON et.ENUMTYPEID = '6601' AND et.enumvalue = hdb.status
WHERE hdb.handle_dept = #{cdepartmentid} WHERE hdb.handle_dept = #{cdepartmentid} and hdb.status = '10'
UNION ALL UNION ALL
SELECT DISTINCT 'Delay' AS status, SELECT DISTINCT 'Delay' AS status,
SUM(CASE SUM(CASE
@ -110,7 +110,7 @@
hdb.business_id = hdr.business_id AND hdb.pc_count = hdr.pc_count hdb.business_id = hdr.business_id AND hdb.pc_count = hdr.pc_count
LEFT JOIN department dp ON hdb.handle_dept = dp.cdepartmentid LEFT JOIN department dp ON hdb.handle_dept = dp.cdepartmentid
LEFT JOIN enum_type et ON et.ENUMTYPEID = '6601' AND et.enumvalue = hdb.status LEFT JOIN enum_type et ON et.ENUMTYPEID = '6601' AND et.enumvalue = hdb.status
WHERE hdb.handle_dept = #{cdepartmentid} WHERE hdb.handle_dept = #{cdepartmentid} and hdb.status = '10'
</select> </select>
<select id="getHigDangerDealt" resultType="com.hisense.hiatmp.model.common.HighDangerBase"> <select id="getHigDangerDealt" resultType="com.hisense.hiatmp.model.common.HighDangerBase">
@ -182,6 +182,9 @@
position position
FROM bis_section FROM bis_section
where 1 = 1 where 1 = 1
<if test="search != null and search != ''">
AND section_name like concat(concat('%',#{search}),'%')
</if>
<if test="position != null and position != ''"> <if test="position != null and position != ''">
AND position like concat(concat('%',#{position}),'%') AND position like concat(concat('%',#{position}),'%')
</if> </if>
@ -192,6 +195,9 @@
* *
FROM bis_crossing FROM bis_crossing
where 1 = 1 where 1 = 1
<if test="search != null and search != ''">
AND crossing_name like concat(concat('%',#{search}),'%')
</if>
<if test="lonMin != null"> <if test="lonMin != null">
AND longitude &gt;= #{lonMin} AND longitude &gt;= #{lonMin}
</if> </if>
@ -209,7 +215,7 @@
<select id="getRoadInfo" resultType="com.hisense.hiatmp.model.common.HighDangerRoad"> <select id="getRoadInfo" resultType="com.hisense.hiatmp.model.common.HighDangerRoad">
SELECT DISTINCT thdb.*, thdr.address, thdr.coordinate SELECT DISTINCT thdb.*,thdr.address, thdr.coordinate
from from
tht_hidden_danger_base thdb tht_hidden_danger_base thdb
left join tht_hidden_danger_road thdr on thdr.business_id = thdb.business_id left join tht_hidden_danger_road thdr on thdr.business_id = thdb.business_id
@ -217,11 +223,30 @@
thdb.business_id = #{businessId} thdb.business_id = #{businessId}
</select> </select>
<select id="isRoadExist" resultType="int">
SELECT count(1)
from tht_hidden_danger_road
where business_id = #{businessId}
</select>
<insert id="insertRoad">
insert into tht_hidden_danger_road (nid,business_id) values (#{uuid}, #{businessId})
</insert>
<select id="getImportDanger" resultType="com.hisense.hiatmp.model.common.ImportDangerDTO"> <select id="getImportDanger" resultType="com.hisense.hiatmp.model.common.ImportDangerDTO">
SELECT * SELECT *
from tht_hidden_scenes; from tht_hidden_scenes;
</select> </select>
<!-- <update id="saveSection">-->
<!-- update tht_hidden_danger_road thdr-->
<!-- set-->
<!-- address = #{address},-->
<!-- coordinate = #{coordinate}-->
<!-- where business_id = #{businessId}-->
<!-- </update>-->
<update id="saveSection"> <update id="saveSection">
update tht_hidden_danger_road thdr update tht_hidden_danger_road thdr
set set
@ -275,7 +300,7 @@
FROM tht_danger_items FROM tht_danger_items
</select> </select>
<select id="isExtraExistence" resultType="com.hisense.hiatmp.model.common.ThtHiddenDangerExtra"> <select id="isExtraExistence" resultType="com.hisense.hiatmp.model.common.HiddenDangerDTO">
SELECT * FROM tht_hidden_danger_road_info where business_id = #{businessId} SELECT * FROM tht_hidden_danger_road_info where business_id = #{businessId}
</select> </select>
@ -396,5 +421,14 @@
business_id = #{businessId} business_id = #{businessId}
</select> </select>
<select id="getDangerProblem" resultType="String">
SELECT
itemname
FROM
tht_danger_items
where
id = #{id}
</select>
</mapper> </mapper>

@ -16,7 +16,7 @@
</select> </select>
<select id="updateByPrimaryKeySelective" resultType="String"> <select id="updateByPrimaryKeySelective" resultType="String">
update operator set cuserpwd = #{cuserpwd} where cusername = #{cusername} RETURNING cusername; update operator set cuserpwd = #{cuserpwd} where nuserid = #{nuserid} RETURNING nuserid;
</select> </select>
</mapper> </mapper>

@ -18,6 +18,7 @@ public class CrossingDTO implements Serializable {
private Double latMin; private Double latMin;
private Double lonMax; private Double lonMax;
private Double latMax; private Double latMax;
private String search;
// private String description; // private String description;
} }

@ -0,0 +1,9 @@
package com.hisense.hiatmp.model.common;
import lombok.Data;
@Data
public class DangerProblem {
String id;
String itemname;
}

@ -23,4 +23,5 @@ public class HiddenDangerDTO implements Serializable {
private Date lastModDate; private Date lastModDate;
private String hdPic; private String hdPic;
private String hdInfo; private String hdInfo;
private String dangerProblem;
} }

@ -2,11 +2,14 @@ package com.hisense.hiatmp.model.common;
import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data; import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date; import java.util.Date;
import java.util.List;
import java.util.Map;
@Data @Data
public class HighDangerRoad implements Serializable { public class HighDangerRoad implements Serializable {
@ -44,6 +47,8 @@ public class HighDangerRoad implements Serializable {
*/ */
private String operator; private String operator;
private String deptId;
/** /**
* pc_start_time * pc_start_time
*/ */
@ -71,9 +76,12 @@ public class HighDangerRoad implements Serializable {
private String address; private String address;
// 路段坐标 // 路段坐标
@JsonIgnore
private String coordinate; private String coordinate;
private List<Map<String,Float>> coordinateList;
// 地址类型 // 地址类型
private String coordinateType; // private String coordinateType;
} }

@ -17,6 +17,7 @@ public class SectionVO implements Serializable {
private Float length; private Float length;
private String area_code; private String area_code;
private String position; private String position;
private String search;
// private String upCrossingCode; // private String upCrossingCode;
// private String downCrossingCode; // private String downCrossingCode;
// private String description; // private String description;

File diff suppressed because one or more lines are too long
Loading…
Cancel
Save