From 5e972eb9928c39b5abbdfd35e2a0aeff40876e7d Mon Sep 17 00:00:00 2001
From: xieb <vip_xiaobin810@163.com>
Date: Tue, 07 May 2024 17:23:16 +0800
Subject: [PATCH] 修改不成功问题

---
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/log/service/impl/ISmLogManageServiceImpl.java |   89 ++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 89 insertions(+), 0 deletions(-)

diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/log/service/impl/ISmLogManageServiceImpl.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/log/service/impl/ISmLogManageServiceImpl.java
index 409c3da..24af6b5 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/log/service/impl/ISmLogManageServiceImpl.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/log/service/impl/ISmLogManageServiceImpl.java
@@ -1,10 +1,25 @@
 package cn.gistack.sm.log.service.impl;
 
+import cn.gistack.pwd.dto.CBCResultDTO;
+import cn.gistack.pwd.dto.ResultDTO;
+import cn.gistack.pwd.fegin.IPwdClient;
 import cn.gistack.sm.log.entity.SmLogManage;
 import cn.gistack.sm.log.mapper.SmLogManageMapper;
 import cn.gistack.sm.log.service.ISmLogManageService;
+import cn.gistack.sm.log.vo.AppStatistics;
+import cn.gistack.sm.log.vo.AppStatisticsVO;
+import cn.gistack.sm.log.vo.SmLogManageVO;
+import cn.gistack.system.user.feign.IUserClient;
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import lombok.AllArgsConstructor;
 import org.springblade.core.mp.base.BaseServiceImpl;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.StringUtil;
 import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.List;
 
 /**
  * @ClassName ISmLogManageServiceImpl
@@ -14,5 +29,79 @@
  * @Version 1.0
  */
 @Service
+@AllArgsConstructor
 public class ISmLogManageServiceImpl extends BaseServiceImpl<SmLogManageMapper, SmLogManage> implements ISmLogManageService {
+	private IUserClient userClient;
+	private IPwdClient pwdClient;
+
+	@Override
+	public AppStatisticsVO getAppStatistics(AppStatisticsVO appStatisticsVO) {
+
+		String adCode = "";
+		if (StringUtil.isNotBlank(appStatisticsVO.getAdCode())){
+			String paramAd = appStatisticsVO.getAdCode();
+
+			if (paramAd.substring(0,4).indexOf("00") > -1) {
+				//前四位包含00说明是湖北省      4200/00000000
+				adCode =StringUtil.format("%{}%",paramAd.substring(0,2));
+			} else if (paramAd.substring(0,6).indexOf("00") > -1) {
+				//前六位包含00说明是市级    420100/000000
+//				adCode = paramAd.substring(0,4);
+				adCode =StringUtil.format("%{}%",paramAd.substring(0,4));
+			}else if (paramAd.substring(0,8).indexOf("00") > -1){
+				//前8位包含00 说明是区级     42011700/0000
+//				adCode = paramAd.substring(0,6);
+				adCode =StringUtil.format("%{}%",paramAd.substring(0,6));
+			}
+		}
+
+		int appUserNum = baseMapper.getAppUserNum(adCode);
+		int sysUserNum =userClient.getSysUserNum(appStatisticsVO.getAdCode());
+
+		appStatisticsVO.setSysUserNum(sysUserNum);
+		appStatisticsVO.setAppUserNum(appUserNum);
+
+//		List<AppStatistics> appStatistics = baseMapper.getAppStatistics(appStatisticsVO);
+//		appStatisticsVO.setList(appStatistics);
+		return appStatisticsVO;
+	}
+
+	@Override
+	public IPage<SmLogManageVO> selectPage(IPage<SmLogManageVO> page, SmLogManageVO smLogManage) {
+		List<SmLogManageVO> list = baseMapper.selectMyPage(page, smLogManage);
+
+		list.forEach(smLogManageVO ->{
+			SmLogManage log = new SmLogManage();
+
+			log.setIp(smLogManageVO.getIp());
+			log.setOperationDescription(smLogManageVO.getOperationDescription());
+			log.setUrl(smLogManageVO.getUrl());
+			log.setSource(smLogManage.getSource());
+
+			String message = JSONObject.toJSONString(log);
+			 pwdClient.verify(smLogManageVO.getMaced(),
+				 smLogManageVO.getSm4iv(),
+				 smLogManageVO.getKeyindexs(),
+				 message,smLogManageVO.getId().toString(),"sm_log_manage");
+		});
+
+		return page.setRecords(list);
+	}
+
+	@Override
+	public boolean save(SmLogManage entity) {
+
+		String message = JSONObject.toJSONString(entity);
+		R<CBCResultDTO> cbcResultDTOR =  pwdClient.getCBCMacEncipher(message);
+
+		//保存加密字段
+		String maced = cbcResultDTOR.getData().getMaced();
+		String keyIndex = cbcResultDTOR.getData().getKeyIndex();
+		String sm4iv = cbcResultDTOR.getData().getSm4IV();
+		entity.setMaced(maced);
+		entity.setKeyindexs(keyIndex);
+		entity.setSm4iv(sm4iv);
+
+		return super.save(entity);
+	}
 }

--
Gitblit v1.9.3