54 lines
1.7 KiB
Java
54 lines
1.7 KiB
Java
package com.tiesheng.demo.config;
|
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
import com.tiesheng.core.pojos.CurrentWebUser;
|
|
import com.tiesheng.core.pojos.dao.CorePlatformUnique;
|
|
import com.tiesheng.core.service.TieshengWebConfigurer;
|
|
import com.tiesheng.login.config.token.bean.TokenBean;
|
|
import com.tiesheng.util.config.GlobalConfig;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.stereotype.Component;
|
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
import java.util.Objects;
|
|
|
|
@Component
|
|
public class DemoWebConfigurer implements TieshengWebConfigurer {
|
|
|
|
@Autowired
|
|
GlobalConfig globalConfig;
|
|
|
|
@Override
|
|
public CurrentWebUser getCurrentUserName(TokenBean tokenBean) {
|
|
return null;
|
|
}
|
|
|
|
@Override
|
|
public LoginConfigurer loginConfigurer() {
|
|
return new LoginConfigurer() {
|
|
@Override
|
|
public TokenBean doLogin(CorePlatformUnique platformUnique, String to) {
|
|
|
|
// 默认跳转到mobile
|
|
to = StrUtil.emptyToDefault(to, "mobile");
|
|
|
|
TokenBean tokenBean = null;
|
|
if (!StrUtil.isEmpty(platformUnique.getUserId())) {
|
|
tokenBean = new TokenBean(platformUnique.getUserId(), to, globalConfig.getService());
|
|
} else {
|
|
// 获取用户信息判断是否可登录
|
|
}
|
|
|
|
return tokenBean;
|
|
}
|
|
|
|
@Override
|
|
public void redirect(TokenBean bean, String to, String extra, HttpServletResponse response) {
|
|
if (Objects.equals(bean.getEnvironmentType(), "mobile")) {
|
|
globalConfig.redirect("mobile", "/?token=" + bean.toToken(), response);
|
|
}
|
|
}
|
|
};
|
|
}
|
|
}
|