From 0bd6d9b8aec0940a414f0f317ae8cb57f7b85ebb Mon Sep 17 00:00:00 2001
From: xieb <vip_xiaobin810@163.com>
Date: Mon, 14 Aug 2023 17:09:49 +0800
Subject: [PATCH] 险情上报加密

---
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/jcsb/service/impl/DangerReportServiceImpl.java |   25 ++++++++++++++++---------
 1 files changed, 16 insertions(+), 9 deletions(-)

diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/jcsb/service/impl/DangerReportServiceImpl.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/jcsb/service/impl/DangerReportServiceImpl.java
index ba0ac19..910fb81 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/jcsb/service/impl/DangerReportServiceImpl.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/jcsb/service/impl/DangerReportServiceImpl.java
@@ -9,6 +9,8 @@
 import cn.gistack.sm.jcsb.service.IDangerReportService;
 import cn.gistack.sm.jcsb.vo.DangerReportVO;
 import cn.gistack.sm.jcsb.vo.StatisticsVO;
+import cn.gistack.sm.sjztmd.entity.AttResBase;
+import cn.gistack.sm.sjztmd.service.IAttResBaseService;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.springblade.core.mp.base.BaseServiceImpl;
@@ -16,6 +18,7 @@
 import org.springblade.core.tool.utils.BeanUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Propagation;
 import org.springframework.transaction.annotation.Transactional;
 
 import java.util.List;
@@ -31,6 +34,8 @@
 
 	@Autowired
 	private IPwdClient pwdClient;
+	@Autowired
+	private IAttResBaseService attResBaseService;
 
 	@Override
 	public List<DangerReportVO> getAll(DangerReport dangerReport) {
@@ -48,10 +53,14 @@
 	}
 
 	@Override
-	@Transactional
 	public boolean saveUp(DangerReport dangerReport) {
-		this.save(dangerReport);
+		// 填充加密内容
 		DangerReportSUPO dangerReportSUPO = BeanUtil.copy(dangerReport, DangerReportSUPO.class);
+
+		// 获取水库名称
+		AttResBase attResBase = attResBaseService.getDetailByCode(dangerReport.getReservoirId());
+		dangerReportSUPO.setReservoirName(attResBase.getName());
+
 		String message = JSONObject.toJSONString(dangerReportSUPO);
 		R<CBCResultDTO> cbcResultDTOR =  pwdClient.getCBCMacEncipher(message);
 		if (cbcResultDTOR.getCode() != 200) {
@@ -60,18 +69,16 @@
 		String maced = cbcResultDTOR.getData().getMaced();
 		String keyIndex = cbcResultDTOR.getData().getKeyIndex();
 		String sm4iv = cbcResultDTOR.getData().getSm4IV();
-		DangerReport ympo = new DangerReport();
-		ympo.setId(dangerReport.getId());
-		ympo.setMaced(maced);
-		ympo.setKeyindexs(keyIndex);
-		ympo.setSm4iv(sm4iv);
+		dangerReport.setMaced(maced);
+		dangerReport.setKeyindexs(keyIndex);
+		dangerReport.setSm4iv(sm4iv);
 		R<ResultDTO> resultDTOR = pwdClient.getEncrypt(sm4iv, keyIndex, message);
 		if (resultDTOR.getCode() != 200) {
 			return false;
 		}
-		ympo.setEncdata(resultDTOR.getData().getData());
+		dangerReport.setEncdata(resultDTOR.getData().getData());
 
-		return this.updateById(ympo);
+		return this.save(dangerReport);
 	}
 
 }

--
Gitblit v1.9.3