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