历史版本1 :登录登出action监听接口 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 版本编辑

报表服务器版本

JAR 包

插件版本

App 版本

10.02019-05-20V1.010.0

2. 描述编辑

应用场景:10.0决策平台默认登出时会自动跳转到登录界面,而有的用户可能需要登出时跳转到自定义的登出界面而非登录页。

功能介绍:在决策平台中提供登录登出后事件的接口,用于登录登出后自定义操作。

3. 接口编辑

LogInOutEventProvider

/** * 用于监听登录登出事件的接口,使用的时候尽可能继承抽象类{@link AbstractLogInOutEventProvider} * Created by zhouping on 2018/12/13. */public interface LogInOutEventProvider extends Mutable {     String MARK_STRING = "LogInOutEventProvider";     int CURRENT_LEVEL = 2;     /**     * 登录后事件     *     * @param result 登录结果     */    void loginAction(LogInOutResultInfo result);     /**     * 登出后事件     *     * @param result     * @return 登录后跳转url,null/""则跳转登录页     */    String logoutAction(LogInOutResultInfo result); }

接口接入

<extra-decision>    <LogInOutEventProvider class="com.fr.plugin.demo.loginout.event.CustomLogInOutEventProvider"/></extra-decision>

4. 示例编辑

4.1 安装 DEMO 插件

这里提供 fr-plugin-demo.loginout.event-1.0.zip,点击下载后,本地安装该插件,安装后获得如下的接口:

package com.fr.plugin.demo.loginout.event; import com.fr.decision.fun.impl.AbstractLogInOutEventProvider;import com.fr.decision.webservice.login.LogInOutResultInfo;import com.fr.log.FineLoggerFactory;import com.fr.plugin.transform.FunctionRecorder;import com.fr.web.utils.WebUtils; @FunctionRecorder public class CustomLogInOutEventProvider extends AbstractLogInOutEventProvider {    @Override    public void loginAction(LogInOutResultInfo result) {        FineLoggerFactory.getLogger().info(result.getUsername() + " login, ip: " + WebUtils.getIpAddr(result.getRequest()));        /* 日志输出登录信息 */        super.loginAction(result);    }    @Override    public String logoutAction(LogInOutResultInfo result) {        FineLoggerFactory.getLogger().info(result.getUsername() + " logout, ip: " + WebUtils.getIpAddr(result.getRequest()));        /* 日志输出登出信息 */        return "http://www.baidu.com";        /* 跳转到百度页面 */    } }

4.2 调整日志等级

安装插件后,点击文件>选项>高级将日志等级(log 级别设置)调整成 INFO,如下图所示:

image.png

4.3 查看效果

登录会有日志信息: xxx login, ip: XXX ,登出时有日志信息: xxx logout, ip:XXX,且登出后跳转到百度页面实现效果。

1)登录时,日志显示:

image.png

2)登出时,日志显示:

image.png

3)登出时,跳转到百度页面:

image.png