✨ Introducing new features. #1982 单点登录sso下跳转 无法传递租户上下文

This commit is contained in:
pig777 committed 2020-11-04 21:02:34 +08:00
1 parent 407a9bb15c
commit ceac667a71
6 files changed
+33 -38

No files matched your search

@@ -22,8 +22,11 @@ package com.pig4cloud.pigx.auth.endpoint;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.pig4cloud.pigx.admin.api.entity.SysTenant;
import com.pig4cloud.pigx.admin.api.feign.RemoteTenantService;
import com.pig4cloud.pigx.auth.service.PigxTokenDealServiceImpl;
import com.pig4cloud.pigx.common.core.constant.PaginationConstants;
import com.pig4cloud.pigx.common.core.constant.SecurityConstants;
import com.pig4cloud.pigx.common.core.util.R;
import com.pig4cloud.pigx.common.security.annotation.Inner;
import com.pig4cloud.pigx.common.security.util.SecurityUtils;
@@ -39,6 +42,7 @@ import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import java.util.List;
import java.util.Map;
/**
@@ -51,9 +55,11 @@ import java.util.Map;
@RequestMapping("/token")
public class PigxTokenEndpoint {
private final ClientDetailsService clientDetailsService;
private final PigxTokenDealServiceImpl dealService;
private final ClientDetailsService clientDetailsService;
private final RemoteTenantService tenantService;
/**
* 认证页面
@@ -63,8 +69,10 @@ public class PigxTokenEndpoint {
*/
@GetMapping("/login")
public ModelAndView require(ModelAndView modelAndView, @RequestParam(required = false) String error) {
R<List<SysTenant>> tenantList = tenantService.list(SecurityConstants.FROM_IN);
modelAndView.setViewName("ftl/login");
modelAndView.addObject("error", error);
modelAndView.addObject("tenantList", tenantList.getData());
return modelAndView;
}
@@ -18,7 +18,16 @@
<div class="container form-margin-top">
<form class="form-signin" action="/token/form" method="post">
<h2 class="form-signin-heading" align="center">统一认证系统</h2>
<input type="text" name="username" class="form-control form-margin-top" placeholder="账号" required autofocus>
<#if tenantList??>
<select class="form-control form-margin-top" placeholder="所属租户" name="TENANT-ID">
<#list tenantList as tenant>
<option value="${tenant.code}">${tenant.name}</option>
</#list>
</select>
</#if>
<input type="text" name="username" class="form-control" placeholder="账号" required autofocus>
<input type="password" name="password" class="form-control" placeholder="密码" required>
<button class="btn btn-lg btn-primary btn-block" type="submit">sign in</button>
<#if error??>
@@ -28,7 +37,7 @@
</div>
<footer>
<p>support by: pig4cloud</p>
<p>email: <a href="mailto:pig4cloud@qq.com">pig4cloud@qq.com</a>.</p>
<p>email: <a href="mailto:support@mail.pigx.vip">support@mail.pigx.vip</a></p>
</footer>
</body>
</html>