IAuthStrategy.java 848 B

123456789101112131415161718192021222324252627282930313233343536
  1. package org.eco.web.service;
  2. import org.eco.common.core.exception.BusinessException;
  3. import org.eco.web.domain.vo.LoginVo;
  4. import org.eco.common.core.utils.SpringUtils;
  5. import org.eco.system.domain.SysClient;
  6. /**
  7. * 授权策略
  8. *
  9. * @author wgk
  10. */
  11. public interface IAuthStrategy {
  12. String BASE_NAME = "AuthStrategy";
  13. /**
  14. * 登录
  15. */
  16. static LoginVo login(String body, SysClient client, String grantType) {
  17. // 授权类型和客户端id
  18. String beanName = grantType + BASE_NAME;
  19. if (!SpringUtils.containsBean(beanName)) {
  20. throw new BusinessException("授权类型不正确!");
  21. }
  22. IAuthStrategy instance = SpringUtils.getBean(beanName);
  23. return instance.login(body, client);
  24. }
  25. /**
  26. * 登录
  27. */
  28. LoginVo login(String body, SysClient client);
  29. }