From 9b4433fddf5b401edb0aace8a404ac733b122702 Mon Sep 17 00:00:00 2001
From: 田源 <tianyuan@vci-tech.com>
Date: 星期四, 03 四月 2025 14:35:02 +0800
Subject: [PATCH] 添加非密字段显示

---
 Source/UBCS/ubcs-ops/ubcs-log/src/main/java/com/vci/ubcs/log/service/impl/LogOperateServiceImpl.java |   68 +++++++++++++++++++++++++++++-----
 1 files changed, 58 insertions(+), 10 deletions(-)

diff --git a/Source/UBCS/ubcs-ops/ubcs-log/src/main/java/com/vci/ubcs/log/service/impl/LogOperateServiceImpl.java b/Source/UBCS/ubcs-ops/ubcs-log/src/main/java/com/vci/ubcs/log/service/impl/LogOperateServiceImpl.java
index 9c02711..2535d60 100644
--- a/Source/UBCS/ubcs-ops/ubcs-log/src/main/java/com/vci/ubcs/log/service/impl/LogOperateServiceImpl.java
+++ b/Source/UBCS/ubcs-ops/ubcs-log/src/main/java/com/vci/ubcs/log/service/impl/LogOperateServiceImpl.java
@@ -1,17 +1,25 @@
 package com.vci.ubcs.log.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.baomidou.mybatisplus.extension.toolkit.SqlHelper;
-import com.vci.ubcs.log.entity.LogOperate;
 import com.vci.ubcs.log.mapper.LogOperateMapper;
 import com.vci.ubcs.log.service.ILogOperateService;
+import com.vci.ubcs.starter.util.UBCSCondition;
+import com.vci.ubcs.starter.web.pagemodel.BladeQueryObject;
+import org.springblade.core.log.exception.ServiceException;
+import org.springblade.core.log.model.LogOperate;
 import org.springblade.core.mp.support.Condition;
+import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.utils.Func;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
-
-import java.util.List;
+import java.util.Locale;
+import java.util.Map;
 
 /**
  * 鎿嶄綔鏃ュ織绠$悊:(鍖呮嫭鐧诲綍鏃ュ織銆佹搷浣滄棩蹇椼�佹巿鏉冩棩蹇楋紝浠ュ強绠$悊鍛樼殑浠ヤ笂涓夌鏃ュ織)
@@ -19,7 +27,7 @@
  * @date 2023/11/24 10:51
  */
 @Service
-public class LogOperateServiceImpl extends ServiceImpl<LogOperateMapper,LogOperate> implements ILogOperateService {
+public class LogOperateServiceImpl extends ServiceImpl<LogOperateMapper, LogOperate> implements ILogOperateService {
 
 	@Autowired
 	private LogOperateMapper logOperateMapper;
@@ -30,23 +38,63 @@
 	 * @return
 	 */
 	@Override
-	public boolean saveLogOperate(LogOperate logOperate) {
+	public boolean saveLogOperate(LogOperate logOperate)throws ServiceException {
 		if(Func.isEmpty(logOperate)){
 			return false;
+		}
+		// 鑾峰彇鍒拌鑹插悕绉板垽鏂槸鍚︿负涓夊憳绠$悊鍛�
+		String userRole = AuthUtil.getUserRole().toLowerCase(Locale.ROOT);
+		userRole = Func.isBlank(userRole) ? logOperate.getUserName():userRole;
+		if(userRole.contains("auditadmin") || userRole.contains("sysadmin") || userRole.contains("secadmin") || userRole.contains("admin")){
+			logOperate.setIsAdmin(1);
 		}
 		return SqlHelper.retBool(logOperateMapper.insert(logOperate));
 	}
 
 	/**
 	 * 鏉′欢鏌ヨ鑾峰彇鏃ュ織鍒楄〃
-	 * @param logOperate
+	 * @param bladeQueryObject
 	 * @return
 	 */
 	@Override
-	public List<LogOperate> listByCondition(LogOperate logOperate) {
-		QueryWrapper<LogOperate> queryWrapper = Condition.getQueryWrapper(logOperate);
-		this.list(queryWrapper);
-		return this.list(queryWrapper);
+	public IPage<LogOperate> listByCondition(BladeQueryObject bladeQueryObject) throws ServiceException{
+		Map<String, Object> conditionMap = bladeQueryObject.getConditionMap();
+		// 涓昏涓轰簡鍖哄垎鏄搷浣滄棩蹇楄繕鏄櫥褰曟棩蹇楃瓑
+		if(conditionMap.isEmpty() || Func.isBlank(conditionMap.get("log_type").toString())){
+			throw new ServiceException("鏃ュ織鏌ヨ蹇呬紶鍙傛暟銆愭棩蹇楃被鍨嬨�戜笉鑳戒负绌猴紒");
+		}
+		// map瀵硅薄杞崲涓烘煡璇㈠璞�
+		LambdaQueryWrapper<LogOperate> wrapper = UBCSCondition.getQueryWrapper(bladeQueryObject.getConditionMap(), LogOperate.class).lambda();
+		wrapper.select(
+			LogOperate::getOid,
+			LogOperate::getUserName,
+			LogOperate::getRealName,
+			LogOperate::getIp,
+			LogOperate::getModel,
+			LogOperate::getOperate,
+			LogOperate::getTime,
+			LogOperate::getOperateResult,
+			LogOperate::getLogType,
+			LogOperate::getIsAdmin
+			);
+		IPage<LogOperate> logOperateIPage = this.logOperateMapper.selectPage(Condition.getPage(bladeQueryObject.getQuery().setDescs("TIME")), wrapper);
+		return logOperateIPage;
 	}
 
+	/**
+	 * 鏍规嵁oid鏌ヨ鏃ュ織璇︽儏
+	 * @param oid
+	 * @return
+	 * @throws ServiceException
+	 */
+	@Override
+	public LogOperate detailByOid(String oid) throws ServiceException {
+		if(Func.isBlank(oid)){
+			throw new ServiceException("蹇呬紶鍙傛暟鏃ュ織鐨刼id涓嶈兘涓虹┖锛�");
+		}
+		LogOperate logOperate = this.logOperateMapper.selectOne(Wrappers.<LogOperate>query().lambda().eq(LogOperate::getOid, oid));
+		return logOperate;
+	}
+
+
 }

--
Gitblit v1.9.3