From e608cd8a5c8f8e09041512ab5507eca125e7cbde Mon Sep 17 00:00:00 2001
From: wl <173@qq.com>
Date: 星期二, 06 十二月 2022 14:15:08 +0800
Subject: [PATCH] fix: 预警研判保存
---
ycl-common/src/main/java/com/ycl/utils/MD5Util.java | 38 +++++++++++--------
ycl-platform/src/main/java/com/ycl/controller/caseHandler/BaseCaseController.java | 2
ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/BaseCaseServiceImpl.java | 31 ++++++++++++++-
ycl-platform/src/main/java/com/ycl/dto/casePool/ViolationParam.java | 6 ++
ycl-platform/src/main/java/com/ycl/service/caseHandler/IBaseCaseService.java | 2
ycl-platform/src/test/java/com/ycl/sccgplatform/SccgPlatformApplicationTests.java | 22 +++++++---
6 files changed, 72 insertions(+), 29 deletions(-)
diff --git a/ycl-common/src/main/java/com/ycl/utils/MD5Util.java b/ycl-common/src/main/java/com/ycl/utils/MD5Util.java
index df1d411..203f572 100644
--- a/ycl-common/src/main/java/com/ycl/utils/MD5Util.java
+++ b/ycl-common/src/main/java/com/ycl/utils/MD5Util.java
@@ -101,22 +101,28 @@
}
public static String md5Encrypt(String string) {
- byte[] hash;
- try {
- //鍒涘缓涓�涓狹D5绠楁硶瀵硅薄锛屽苟鑾峰緱MD5瀛楄妭鏁扮粍,16*8=128浣�
- hash = MessageDigest.getInstance("MD5").digest(string.getBytes("UTF-8"));
- } catch (NoSuchAlgorithmException e) {
- throw new RuntimeException("Huh, MD5 should be supported?", e);
- } catch (UnsupportedEncodingException e) {
- throw new RuntimeException("Huh, UTF-8 should be supported?", e);
- }
+ MessageDigest md5 = null;
+ try {
+ md5 = MessageDigest.getInstance("MD5");
+ } catch (NoSuchAlgorithmException e) {
+ return "check jdk";
+ } catch (Exception e) {
+ e.printStackTrace();
+ return "";
+ }
+ char[] charArray = string.toCharArray();
+ byte[] byteArray = new byte[charArray.length];
- //杞崲涓哄崄鍏繘鍒跺瓧绗︿覆
- StringBuilder hex = new StringBuilder(hash.length * 2);
- for (byte b : hash) {
- if ((b & 0xFF) < 0x10) hex.append("0");
- hex.append(Integer.toHexString(b & 0xFF));
+ for (int i = 0; i < charArray.length; i++)
+ byteArray[i] = (byte) charArray[i];
+ byte[] md5Bytes = md5.digest(byteArray);
+ StringBuffer hexValue = new StringBuffer();
+ for (int i = 0; i < md5Bytes.length; i++) {
+ int val = ((int) md5Bytes[i]) & 0xff;
+ if (val < 16)
+ hexValue.append("0");
+ hexValue.append(Integer.toHexString(val));
+ }
+ return hexValue.toString();
}
- return hex.toString();
}
-}
diff --git a/ycl-platform/src/main/java/com/ycl/controller/caseHandler/BaseCaseController.java b/ycl-platform/src/main/java/com/ycl/controller/caseHandler/BaseCaseController.java
index 4e9122d..aa34809 100644
--- a/ycl-platform/src/main/java/com/ycl/controller/caseHandler/BaseCaseController.java
+++ b/ycl-platform/src/main/java/com/ycl/controller/caseHandler/BaseCaseController.java
@@ -71,7 +71,7 @@
@ApiOperation(value = "涓婁紶甯傚钩鍙�")
@PostMapping("/upload-event")
- public CommonResult uploadEvent(@RequestParam Integer caseId, CommonResult<Object> success) {
+ public CommonResult uploadEvent(@RequestParam Long caseId, CommonResult<Object> success) {
String msg = baseCaseService.uploadEvent(caseId);
if (StringUtils.isEmpty(msg)) {
return success;
diff --git a/ycl-platform/src/main/java/com/ycl/dto/casePool/ViolationParam.java b/ycl-platform/src/main/java/com/ycl/dto/casePool/ViolationParam.java
index 052bdd4..bb1a357 100644
--- a/ycl-platform/src/main/java/com/ycl/dto/casePool/ViolationParam.java
+++ b/ycl-platform/src/main/java/com/ycl/dto/casePool/ViolationParam.java
@@ -1,6 +1,7 @@
package com.ycl.dto.casePool;
import com.baomidou.mybatisplus.annotation.TableField;
+import com.ycl.dto.caseHandler.DispatchInfoParam;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@@ -10,10 +11,13 @@
@Data
@ApiModel(value = "娣诲姞杩濊妗堜欢")
-public class ViolationParam {
+public class ViolationParam extends DispatchInfoParam {
private Long baseId;
+ @ApiModelProperty(value = "鐘舵��")
+ private Integer state;
+
/**
* 澶х被
*/
diff --git a/ycl-platform/src/main/java/com/ycl/service/caseHandler/IBaseCaseService.java b/ycl-platform/src/main/java/com/ycl/service/caseHandler/IBaseCaseService.java
index 7bf0b1d..f908042 100644
--- a/ycl-platform/src/main/java/com/ycl/service/caseHandler/IBaseCaseService.java
+++ b/ycl-platform/src/main/java/com/ycl/service/caseHandler/IBaseCaseService.java
@@ -31,7 +31,7 @@
* @author AI
* @date 2022-09-28 16:52
*/
- String uploadEvent(Integer caseId);
+ String uploadEvent(Long caseId);
Page listViolationsPage(Page page, Integer state, Integer resource);
diff --git a/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/BaseCaseServiceImpl.java b/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/BaseCaseServiceImpl.java
index a6cfbb2..b72158c 100644
--- a/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/BaseCaseServiceImpl.java
+++ b/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/BaseCaseServiceImpl.java
@@ -11,6 +11,8 @@
import com.ycl.controller.video.common.constant.BaseCaseStatus;
import com.ycl.controller.video.common.constant.StepName;
import com.ycl.controller.video.common.util.DateUtil;
+import com.ycl.controller.video.common.util.UtilNumber;
+import com.ycl.dto.caseHandler.DispatchInfoParam;
import com.ycl.dto.caseHandler.QueryForViolationParam;
import com.ycl.dto.casePool.IllegalBuildingParam;
import com.ycl.dto.casePool.ViolationParam;
@@ -25,6 +27,7 @@
import com.ycl.remote.dto.*;
import com.ycl.remote.service.CityPlatformService;
import com.ycl.service.caseHandler.IBaseCaseService;
+import com.ycl.service.caseHandler.IDispatchHandleService;
import com.ycl.service.caseHandler.IViolationsService;
import com.ycl.service.video.IVideoAlarmReportService;
import com.ycl.vo.casePool.*;
@@ -58,6 +61,7 @@
private CityPlatformService cityPlatformService;
private IViolationsService violationsService;
private IVideoAlarmReportService videoAlarmReportService;
+
@Value("${fdfs.fileUrl}")
private String fileUrl;
@@ -106,9 +110,18 @@
@Resource
PartyInfoMapper partyInfoMapper;
+ @Resource
+ UtilNumber utilNumber;
+
+ @Resource
+ IDispatchHandleService iDispatchHandleService;
+
+ @Resource
+ IBaseCaseService baseCaseService;
+
@Override
- public String uploadEvent(Integer caseId) {
+ public String uploadEvent(Long caseId) {
BaseCase baseCase = this.getById(caseId);
Violations violations = violationsService.getById(caseId);
String medias = "";
@@ -389,7 +402,7 @@
@Override
public List<QueryForViolationVO> selectViolationList(QueryForViolationParam queryForViolationParam) {
- return baseCaseMapper.selectViolationPage(queryForViolationParam);
+ return baseCaseMapper.selectViolationPage(queryForViolationParam);
}
@Override
@@ -411,10 +424,22 @@
BaseCase baseCase = new BaseCase();
BeanUtils.copyProperties(violationParam, baseCase);
baseCase.setId(violationParam.getBaseId());
+ baseCase.setCode(utilNumber.createCaseCode());
baseCaseMapper.updateById(baseCase);
Violations violations = new Violations();
BeanUtils.copyProperties(violationParam, violations);
violations.setId(violations.getId());
- return violationsMapper.updateById(violations) == 1 ? true : false;
+ if (violationParam.getState() == 6) {
+ AdminUserDetails user = (AdminUserDetails) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
+ violationParam.setCreateUser(user.getUserId());
+ DispatchInfoParam dispatchInfoParam = new DispatchInfoParam();
+ BeanUtils.copyProperties(violationParam, dispatchInfoParam);
+ dispatchInfoParam.setBaseCaseId(violationParam.getBaseId());
+ iDispatchHandleService.dispatch(dispatchInfoParam);
+ }
+ if (violationParam.getState() == 2) {
+ baseCaseService.uploadEvent(violationParam.getBaseId());
+ }
+ return violationsMapper.insert(violations) == 1 ? true : false;
}
}
\ No newline at end of file
diff --git a/ycl-platform/src/test/java/com/ycl/sccgplatform/SccgPlatformApplicationTests.java b/ycl-platform/src/test/java/com/ycl/sccgplatform/SccgPlatformApplicationTests.java
index ade2e9c..28fcfd1 100644
--- a/ycl-platform/src/test/java/com/ycl/sccgplatform/SccgPlatformApplicationTests.java
+++ b/ycl-platform/src/test/java/com/ycl/sccgplatform/SccgPlatformApplicationTests.java
@@ -4,12 +4,11 @@
import com.ycl.enums.common.DictTypeEnum;
import com.ycl.service.caseHandler.IBaseCaseService;
import com.ycl.utils.MD5Util;
+import org.apache.commons.codec.digest.Md5Crypt;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
-import java.time.LocalDateTime;
-import java.time.format.DateTimeFormatter;
import java.util.Map;
@SpringBootTest
@@ -36,14 +35,23 @@
@Test
void createCode() {
- // LocalDateTime parse = LocalDateTime.parse("2017-02-02 08:59:12", DateTimeFormatter.ofPattern("yyyy-MM-dd hh:mm:ss"));
- LocalDateTime ldt = LocalDateTime.parse("2017-02-02 08:44:12", DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
- System.out.println( MD5Util.md5Encrypt32Lower("123456"));
+ String randomKey ="f83bf56491350983146a1e463f46e59d_7312712453128192";
+ String realm = "D62D265605378973";
+ String userName = "suichang"; /// 鐢ㄦ埛鍚�
+ String password = "a12345677"; /// 璇ョ敤鎴风殑鏄庢枃瀵嗙爜
+/// 涓�鍏辫绠椾簲娆D5
+
+ String signature = MD5Util.md5Encrypt(password);
+ signature = MD5Util.md5Encrypt(userName+signature);
+ signature = MD5Util.md5Encrypt(signature);
+ signature = MD5Util.md5Encrypt(userName+":"+realm+":"+signature);
+ signature = MD5Util.md5Encrypt(signature+":"+randomKey);
+ System.out.println(signature);
}
@Test
- void enumMapTest(){
- Map<String,String> s =DictTypeEnum.getAllToMap();
+ void enumMapTest() {
+ Map<String, String> s = DictTypeEnum.getAllToMap();
}
}
--
Gitblit v1.8.0