From 72b971c98c46531064d74b68fc8fe8864ed0b544 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Tue, 08 Nov 2022 09:04:56 +0800
Subject: [PATCH] 大屏溯源统计次数sql修改

---
 src/main/java/org/springblade/modules/system/controller/UserController.java |   25 +++++++++++++++++++------
 1 files changed, 19 insertions(+), 6 deletions(-)

diff --git a/src/main/java/org/springblade/modules/system/controller/UserController.java b/src/main/java/org/springblade/modules/system/controller/UserController.java
index 88d8fd8..4bb4c73 100644
--- a/src/main/java/org/springblade/modules/system/controller/UserController.java
+++ b/src/main/java/org/springblade/modules/system/controller/UserController.java
@@ -27,6 +27,7 @@
 import io.swagger.annotations.ApiParam;
 import lombok.AllArgsConstructor;
 import org.springblade.common.cache.CacheNames;
+import org.springblade.common.cache.ParamCache;
 import org.springblade.core.cache.utils.CacheUtil;
 import org.springblade.core.excel.util.ExcelUtil;
 import org.springblade.core.launch.constant.AppConstant;
@@ -44,6 +45,7 @@
 import org.springblade.core.tool.utils.Func;
 import org.springblade.core.tool.utils.StringPool;
 import org.springblade.core.tool.utils.StringUtil;
+import org.springblade.modules.auth.granter.PasswordTokenGranter;
 import org.springblade.modules.system.entity.User;
 import org.springblade.modules.system.excel.UserExcel;
 import org.springblade.modules.system.excel.UserImporter;
@@ -83,7 +85,7 @@
 	@ApiOperationSupport(order = 1)
 	@ApiOperation(value = "查看详情", notes = "传入id")
 	@GetMapping("/detail")
-	@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
+	@PreAuth("hasAnyRole('administrator,admin,user')")
 	public R<UserVO> detail(User user) {
 		User detail = userService.getOne(Condition.getQueryWrapper(user));
 		return R.data(UserWrapper.build().entityVO(detail));
@@ -130,7 +132,18 @@
 	@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
 	public R<IPage<UserVO>> page(@ApiIgnore User user, Query query, Long deptId, BladeUser bladeUser) {
 		IPage<User> pages = userService.selectUserPage(Condition.getPage(query), user, deptId, (bladeUser.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID) ? StringPool.EMPTY : bladeUser.getTenantId()));
-		return R.data(UserWrapper.build().pageVO(pages));
+		IPage<UserVO> userVOIPage = UserWrapper.build().pageVO(pages);
+		userVOIPage.getRecords().forEach(userVO -> {
+			int cnt = Func.toInt(bladeRedis.get(CacheNames.tenantKey(userVO.getTenantId(), CacheNames.USER_FAIL_KEY, userVO.getAccount())), 0);
+			int failCount = Func.toInt(ParamCache.getValue(PasswordTokenGranter.FAIL_COUNT_VALUE), PasswordTokenGranter.FAIL_COUNT);
+			//设置封禁状态,1为已封禁,0为未封禁
+			if (cnt >= failCount) {
+				userVO.setBannedState("1");
+			}else {
+				userVO.setBannedState("0");
+			}
+		});
+		return R.data(userVOIPage);
 	}
 
 	/**
@@ -141,7 +154,7 @@
 	@ApiOperation(value = "新增或修改", notes = "传入User")
 	@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
 	public R submit(@Valid @RequestBody User user) {
-		CacheUtil.clear(USER_CACHE);
+//		CacheUtil.clear(USER_CACHE);
 		return R.status(userService.submit(user));
 	}
 
@@ -152,7 +165,7 @@
 	@ApiOperationSupport(order = 5)
 	@ApiOperation(value = "修改", notes = "传入User")
 	public R update(@Valid @RequestBody User user) {
-		CacheUtil.clear(USER_CACHE);
+//		CacheUtil.clear(USER_CACHE);
 		return R.status(userService.updateUser(user));
 	}
 
@@ -164,7 +177,7 @@
 	@ApiOperation(value = "删除", notes = "传入id集合")
 	@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
 	public R remove(@RequestParam String ids) {
-		CacheUtil.clear(USER_CACHE);
+//		CacheUtil.clear(USER_CACHE);
 		return R.status(userService.removeUser(ids));
 	}
 
@@ -213,7 +226,7 @@
 	@ApiOperationSupport(order = 10)
 	@ApiOperation(value = "修改基本信息", notes = "传入User")
 	public R updateInfo(@Valid @RequestBody User user) {
-		CacheUtil.clear(USER_CACHE);
+//		CacheUtil.clear(USER_CACHE);
 		return R.status(userService.updateUserInfo(user));
 	}
 

--
Gitblit v1.9.3