From 6df987540393b4a341fb4846a82da6a78e8b8039 Mon Sep 17 00:00:00 2001
From: xieb <vip_xiaobin810@163.com>
Date: Mon, 14 Aug 2023 16:17:31 +0800
Subject: [PATCH] 增加云密码服务平台对接
---
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/jcsb/service/impl/DangerReportServiceImpl.java | 41 ++++++++++++++++++++++++++++++++++++++++-
1 files changed, 40 insertions(+), 1 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 a70683f..ba0ac19 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
@@ -1,14 +1,22 @@
package cn.gistack.sm.jcsb.service.impl;
+import cn.gistack.pwd.dto.CBCResultDTO;
+import cn.gistack.pwd.dto.ResultDTO;
+import cn.gistack.pwd.fegin.IPwdClient;
+import cn.gistack.sm.jcsb.supo.DangerReportSUPO;
import cn.gistack.sm.jcsb.entity.DangerReport;
import cn.gistack.sm.jcsb.mapper.DangerReportMapper;
import cn.gistack.sm.jcsb.service.IDangerReportService;
import cn.gistack.sm.jcsb.vo.DangerReportVO;
-import cn.gistack.sm.jcsb.vo.DeviceReportVO;
import cn.gistack.sm.jcsb.vo.StatisticsVO;
+import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseServiceImpl;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.BeanUtil;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
import java.util.List;
@@ -20,6 +28,9 @@
*/
@Service
public class DangerReportServiceImpl extends BaseServiceImpl<DangerReportMapper, DangerReport> implements IDangerReportService {
+
+ @Autowired
+ private IPwdClient pwdClient;
@Override
public List<DangerReportVO> getAll(DangerReport dangerReport) {
@@ -35,4 +46,32 @@
public StatisticsVO getStatistics(String resGuid) {
return baseMapper.getStatistics(resGuid);
}
+
+ @Override
+ @Transactional
+ public boolean saveUp(DangerReport dangerReport) {
+ this.save(dangerReport);
+ DangerReportSUPO dangerReportSUPO = BeanUtil.copy(dangerReport, DangerReportSUPO.class);
+ String message = JSONObject.toJSONString(dangerReportSUPO);
+ R<CBCResultDTO> cbcResultDTOR = pwdClient.getCBCMacEncipher(message);
+ if (cbcResultDTOR.getCode() != 200) {
+ return false;
+ }
+ 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);
+ R<ResultDTO> resultDTOR = pwdClient.getEncrypt(sm4iv, keyIndex, message);
+ if (resultDTOR.getCode() != 200) {
+ return false;
+ }
+ ympo.setEncdata(resultDTOR.getData().getData());
+
+ return this.updateById(ympo);
+ }
+
}
--
Gitblit v1.9.3