Files
fishery-back/intc-admin/src/main/java/com/intc/web/service/IAuthStrategy.java
2025-10-21 10:00:26 +08:00

46 lines
1.1 KiB
Java

package com.intc.web.service;
import com.intc.common.core.exception.ServiceException;
import com.intc.common.core.utils.SpringUtils;
import com.intc.system.domain.vo.SysClientVo;
import com.intc.web.domain.vo.LoginVo;
/**
* 授权策略
*
* @author Michelle.Chung
*/
public interface IAuthStrategy {
String BASE_NAME = "AuthStrategy";
/**
* 登录
*
* @param body 登录对象
* @param client 授权管理视图对象
* @param grantType 授权类型
* @return 登录验证信息
*/
static LoginVo login(String body, SysClientVo client, String grantType) {
// 授权类型和客户端id
String beanName = grantType + BASE_NAME;
if (!SpringUtils.containsBean(beanName)) {
throw new ServiceException("授权类型不正确!");
}
IAuthStrategy instance = SpringUtils.getBean(beanName);
return instance.login(body, client);
}
/**
* 登录
*
* @param body 登录对象
* @param client 授权管理视图对象
* @return 登录验证信息
*/
LoginVo login(String body, SysClientVo client);
}