From dd4e6d788efb23509248f2119137014a49452839 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期三, 06 九月 2023 14:05:56 +0800
Subject: [PATCH] 提交
---
server/platform/src/main/java/com/doumee/shiro/ShiroConfig.java | 9 ----
server/service/src/main/java/com/doumee/service/system/SystemLoginService.java | 2
server/platform/src/main/java/com/doumee/shiro/ShiroRealm.java | 7 ++-
server/service/src/main/java/com/doumee/core/utils/Constants.java | 31 ---------------
server/company/src/main/java/com/doumee/config/shiro/ShiroConfig.java | 7 ---
server/company/src/main/java/com/doumee/api/system/SystemController.java | 5 +-
server/platform/src/main/java/com/doumee/api/system/SystemController.java | 4 +
server/service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java | 8 +++-
server/company/src/main/java/com/doumee/config/shiro/ShiroRealm.java | 10 +++-
9 files changed, 25 insertions(+), 58 deletions(-)
diff --git a/server/company/src/main/java/com/doumee/api/system/SystemController.java b/server/company/src/main/java/com/doumee/api/system/SystemController.java
index 8b7ba74..ed5bcde 100644
--- a/server/company/src/main/java/com/doumee/api/system/SystemController.java
+++ b/server/company/src/main/java/com/doumee/api/system/SystemController.java
@@ -6,6 +6,7 @@
import com.doumee.core.annotation.trace.Trace;
import com.doumee.core.model.ApiResponse;
import com.doumee.core.model.LoginUserInfo;
+import com.doumee.core.utils.Constants;
import com.doumee.dao.system.dto.LoginDTO;
import com.doumee.dao.system.dto.UpdatePwdDto;
import com.doumee.service.system.SystemLoginService;
@@ -41,7 +42,7 @@
@ApiOperation("鐧诲綍")
@PostMapping("/login")
public ApiResponse<String> login (@Validated @RequestBody LoginDTO dto, HttpServletRequest request) {
- return ApiResponse.success(systemLoginService.loginByPassword(dto, request));
+ return ApiResponse.success(systemLoginService.loginByPassword(dto, Constants.ONE, request));
}
@ApiOperation("閫�鍑虹櫥褰�")
@@ -51,7 +52,6 @@
subject.logout();
return ApiResponse.success(null);
}
-
@Trace(withRequestParameters = false)
@ApiOperation("淇敼褰撳墠鐢ㄦ埛瀵嗙爜")
@PostMapping("/updatePwd")
@@ -60,7 +60,6 @@
systemUserBiz.updatePwd(dto);
return ApiResponse.success(null);
}
-
@ApiOperation("鑾峰彇褰撳墠鐧诲綍鐨勭敤鎴蜂俊鎭�")
@GetMapping("/getUserInfo")
public ApiResponse<LoginUserInfo> getUserInfo () {
diff --git a/server/company/src/main/java/com/doumee/config/shiro/ShiroConfig.java b/server/company/src/main/java/com/doumee/config/shiro/ShiroConfig.java
index 6422760..6a9becb 100644
--- a/server/company/src/main/java/com/doumee/config/shiro/ShiroConfig.java
+++ b/server/company/src/main/java/com/doumee/config/shiro/ShiroConfig.java
@@ -94,15 +94,8 @@
map.put("/system/logout", "anon");
map.put("/common/captcha", "anon");
map.put("/business/areas/*", "anon");
- map.put("/business/company/register", "anon");
- map.put("/business/labels/page","anon");
map.put("/public/uploadPicture","anon");
map.put("/public/uploadLocal","anon");
- map.put("/business/*/list","anon");
- map.put("/business/goods/goodsPage","anon");
- map.put("/business/goods/h5Image","anon");
- map.put("/business/goods/export","anon");
- map.put("/business/goods/listForH5","anon");
// - 鏀捐swagger
diff --git a/server/company/src/main/java/com/doumee/config/shiro/ShiroRealm.java b/server/company/src/main/java/com/doumee/config/shiro/ShiroRealm.java
index 299fb97..b15f089 100644
--- a/server/company/src/main/java/com/doumee/config/shiro/ShiroRealm.java
+++ b/server/company/src/main/java/com/doumee/config/shiro/ShiroRealm.java
@@ -77,12 +77,16 @@
queryDto.setUsername(username);
queryDto.setDeleted(Boolean.FALSE);
SystemUser user = systemUserService.findOne(queryDto);
+ if(user == null){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝璐﹀彿鎴栧瘑鐮佷笉姝g‘锛�");
+ }
+ if(!Constants.equalsInteger(user.getType(),Constants.UserType.COMPANY.getKey()) && !Constants.equalsInteger(user.getType(),Constants.UserType.ZHUBO.getKey())){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝璐﹀彿鎴栧瘑鐮佷笉姝g‘锛侊紒");
+ }
if(!Constants.equalsInteger(user.getStatus(),Constants.ZERO)){
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝璐﹀彿淇℃伅宸茶绂佺敤锛屽鏈夌枒闂鑱旂郴绯荤粺绠$悊鍛橈紒");
}
- if (user == null) {
- return null;
- }
+
// 鑾峰彇鐧诲綍鐢ㄦ埛淇℃伅
List<SystemRole> roles = systemRoleService.findByUserId(user.getId());
List<SystemPermission> permissions = systemPermissionService.findByUserId(user.getId());
diff --git a/server/platform/src/main/java/com/doumee/api/system/SystemController.java b/server/platform/src/main/java/com/doumee/api/system/SystemController.java
index 8b7ba74..11aabd4 100644
--- a/server/platform/src/main/java/com/doumee/api/system/SystemController.java
+++ b/server/platform/src/main/java/com/doumee/api/system/SystemController.java
@@ -6,6 +6,7 @@
import com.doumee.core.annotation.trace.Trace;
import com.doumee.core.model.ApiResponse;
import com.doumee.core.model.LoginUserInfo;
+import com.doumee.core.utils.Constants;
import com.doumee.dao.system.dto.LoginDTO;
import com.doumee.dao.system.dto.UpdatePwdDto;
import com.doumee.service.system.SystemLoginService;
@@ -17,6 +18,7 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
+import org.yaml.snakeyaml.scanner.Constant;
import javax.servlet.http.HttpServletRequest;
@@ -41,7 +43,7 @@
@ApiOperation("鐧诲綍")
@PostMapping("/login")
public ApiResponse<String> login (@Validated @RequestBody LoginDTO dto, HttpServletRequest request) {
- return ApiResponse.success(systemLoginService.loginByPassword(dto, request));
+ return ApiResponse.success(systemLoginService.loginByPassword(dto, Constants.ZERO, request));
}
@ApiOperation("閫�鍑虹櫥褰�")
diff --git a/server/platform/src/main/java/com/doumee/shiro/ShiroConfig.java b/server/platform/src/main/java/com/doumee/shiro/ShiroConfig.java
index fce72c7..97bfa1e 100644
--- a/server/platform/src/main/java/com/doumee/shiro/ShiroConfig.java
+++ b/server/platform/src/main/java/com/doumee/shiro/ShiroConfig.java
@@ -88,21 +88,14 @@
shiroFilterFactoryBean.setSecurityManager(securityManager);
Map<String, String> map = new LinkedHashMap<>();
// 璺緞鎷︽埅閰嶇疆
- // 璺緞鎷︽埅閰嶇疆
map.put("/system/dictData/companyUserRules","anon");
map.put("/system/login", "anon");
map.put("/system/logout", "anon");
map.put("/common/captcha", "anon");
map.put("/business/areas/*", "anon");
- map.put("/business/company/register", "anon");
- map.put("/business/labels/page","anon");
map.put("/public/uploadPicture","anon");
map.put("/public/uploadLocal","anon");
- map.put("/business/*/list","anon");
- map.put("/business/goods/goodsPage","anon");
- map.put("/business/goods/h5Image","anon");
- map.put("/business/goods/export","anon");
- map.put("/business/goods/listForH5","anon");
+
// - 鏀捐swagger
diff --git a/server/platform/src/main/java/com/doumee/shiro/ShiroRealm.java b/server/platform/src/main/java/com/doumee/shiro/ShiroRealm.java
index 44c84e2..f290a33 100644
--- a/server/platform/src/main/java/com/doumee/shiro/ShiroRealm.java
+++ b/server/platform/src/main/java/com/doumee/shiro/ShiroRealm.java
@@ -75,13 +75,14 @@
// 鏍规嵁鐢ㄦ埛鍚嶆煡璇㈢敤鎴峰璞�
SystemUser queryDto = new SystemUser();
queryDto.setUsername(username);
+ queryDto.setType(Constants.UserType.SYSTEM.getKey());
queryDto.setDeleted(Boolean.FALSE);
SystemUser user = systemUserService.findOne(queryDto);
+ if(user == null){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝璐﹀彿鎴栧瘑鐮佷笉姝g‘锛�");
+ }
if(!Constants.equalsInteger(user.getStatus(),Constants.ZERO)){
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝璐﹀彿淇℃伅宸茶绂佺敤锛屽鏈夌枒闂鑱旂郴绯荤粺绠$悊鍛橈紒");
- }
- if (user == null) {
- return null;
}
// 鑾峰彇鐧诲綍鐢ㄦ埛淇℃伅
List<SystemRole> roles = systemRoleService.findByUserId(user.getId());
diff --git a/server/service/src/main/java/com/doumee/core/utils/Constants.java b/server/service/src/main/java/com/doumee/core/utils/Constants.java
index 412fa7e..325b231 100644
--- a/server/service/src/main/java/com/doumee/core/utils/Constants.java
+++ b/server/service/src/main/java/com/doumee/core/utils/Constants.java
@@ -438,14 +438,7 @@
SYSTEM(0, "绯荤粺鐢ㄦ埛", "绠$悊鍛�",Arrays.asList(0,1,2,3,4,5,6,7,8,9,10,11)),
COMPANY(1, "浼佷笟鐢ㄦ埛", "浼佷笟",Arrays.asList(-1)),
- SO_ADMIN(2, "鏈嶅姟鏈烘瀯绠$悊鍛�", "鏈嶅姟鏈烘瀯",Arrays.asList(-1)),
- SO_CHILD(3, "鏈嶅姟鏈烘瀯瀛愯处鍙�", "鏈嶅姟鏈烘瀯",Arrays.asList(-1)),
- SD_ADMIN(4, "缁煎悎鏈嶅姟鍗曚綅绠$悊鍛�", "缁煎悎鏈嶅姟鍗曚綅",Arrays.asList(0,1,2,3,4,5,6,7,8,9,10,11)),
- SD_CHILD(5, "缁煎悎鏈嶅姟鍗曚綅瀛愯处鍙�", "缁煎悎鏈嶅姟鍗曚綅",Arrays.asList(0,1,2,3,4,5,6,7,8,9,10,11)),
- EXPERT(6, "涓撳", "涓撳", Arrays.asList(-1)),
- AREA(7, "鍘垮尯鐢ㄦ埛", "鍘垮尯",Arrays.asList(0,1,2,3,4,5,6,7,8,9)),
- SJ(8, "甯傚眬鐢ㄦ埛", "甯傚眬",Arrays.asList(0,1,2,3,4,5,6,7,8,9,10,11)),
- SJ_CHILD(9, "甯傚眬瀛愯处鍙�", "甯傚眬瀛愯处鍙�",Arrays.asList(0,1,2,3,4,5,6,7,8,9,10,11)),
+ ZHUBO(2, "涓绘挱", "涓绘挱",Arrays.asList(-1)),
;
// 鎴愬憳鍙橀噺
private String name;
@@ -514,29 +507,7 @@
return noteinfo;
}
- /**
- * 涓嶉渶瑕佸鎵逛慨鏀逛俊鎭鑹�
- * @return
- */
- public static List<Integer> getNoCheckUserChange(){
- return Arrays.asList(SO_ADMIN.key, AREA.key, SJ.key, EXPERT.key, SD_ADMIN.key,SYSTEM.key);
- }
- /**
- * 鑾峰彇瀛愯处鍙风被鍨�
- * @return
- */
- public static List<Integer> getSonUserType(){
- return Arrays.asList(SO_CHILD.key, SD_CHILD.key);
- }
-
- /**
- * 鑾峰彇鍏宠仈浼佷笟鐨勭敤鎴风被鍨�
- * @return
- */
- public static List<Integer> getHasCompanyType(){
- return Arrays.asList(COMPANY.key, SO_ADMIN.key, SD_ADMIN.key);
- }
}
diff --git a/server/service/src/main/java/com/doumee/service/system/SystemLoginService.java b/server/service/src/main/java/com/doumee/service/system/SystemLoginService.java
index 07d70b8..a7efb36 100644
--- a/server/service/src/main/java/com/doumee/service/system/SystemLoginService.java
+++ b/server/service/src/main/java/com/doumee/service/system/SystemLoginService.java
@@ -16,5 +16,5 @@
* @author Eva.Caesar Liu
* @date 2023/03/21 14:49
*/
- String loginByPassword (LoginDTO dto, HttpServletRequest request);
+ String loginByPassword (LoginDTO dto,int type, HttpServletRequest request);
}
diff --git a/server/service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java b/server/service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java
index d9abcaa..452b0a0 100644
--- a/server/service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java
@@ -27,6 +27,8 @@
@Value("${project.version}")
private String systemVersion;
+ @Value("${captcha_check}")
+ private boolean captchaCheck;
@Autowired
private CaptchaService captchaService;
@@ -35,7 +37,7 @@
private SystemLoginLogService systemLoginLogService;
@Override
- public String loginByPassword(LoginDTO dto, HttpServletRequest request) {
+ public String loginByPassword(LoginDTO dto, int type,HttpServletRequest request) {
SystemLoginLog loginLog = new SystemLoginLog();
loginLog.setLoginUsername(dto.getUsername());
loginLog.setLoginTime(new Date());
@@ -48,7 +50,9 @@
loginLog.setServerIp(Utils.Server.getIP());
// 鏍¢獙楠岃瘉鐮�
try {
- captchaService.check(dto.getUuid(), dto.getCode());
+ if(captchaCheck){
+ captchaService.check(dto.getUuid(), dto.getCode());
+ }
} catch (Exception e) {
log.error(e.getMessage(), e);
loginLog.setReason(e.getMessage().length() > 200 ? (e.getMessage().substring(0, 190) + "...") : e.getMessage());
--
Gitblit v1.9.3