外观
临时链接
简介
临时链接顾名思义就是临时跳转到系统中做一些操作用的。如:在流程中,有时候需要外部人员参与流程的进度,这个时候就需要发送临时链接, 点击链接,办理事项。
TIP
使用临时链接需要提前配置以下内容:
- 创建临时用户
- 系统属性中配置临时用户的账号和密码
- 创建临时应用
- 系统属性中配置临时应用的appId
- 系统属性中配置pc 端的服务地址
使用
临时链接
链接链接属性列表:
名称 | 描述 | 说明 |
---|---|---|
code | 编码 | 临时链接的唯一标识 |
url | 真实的链接地址 | 打开临时链接跳转的地址 |
params | 参数 | 真实跳转页面需要的参数,目前仅支持简单的参数,使用params 接收 |
validDuration | 有效时长 (天) | 用来计算临时链接的过期时间 ,过期后链接失效 |
typeCode | 分类的code | 默认temporaryLinkDefault |
supportMobile | 是否支持移动端 | 是否可以跳转到移动端服务的url |
临时链接表结构:
sql
CREATE TABLE sys_temp_link
(
id_ VARCHAR(64) NOT NULL COMMENT 'ID',
code_ VARCHAR(64) DEFAULT NULL COMMENT '编码',
url_ VARCHAR(255) DEFAULT NULL COMMENT '真实url地址',
params_ VARCHAR(255) DEFAULT NULL COMMENT '参数',
valid_duration_ INT (10) DEFAULT NULL COMMENT '有效时长',
expiration_time_ DATETIME DEFAULT NULL COMMENT '过期时间',
max_visits_ INT (10) DEFAULT NULL COMMENT '最大访问次数',
type_code_ VARCHAR(64) DEFAULT 'temporaryLinkDefault' COMMENT '分组',
visits_ INT (10) DEFAULT '0' COMMENT '已访问的次数',
enabled_ TINYINT(1) UNSIGNED DEFAULT '1' COMMENT '是否可用:0否,1是',
support_mobile_ TINYINT(1) UNSIGNED DEFAULT '0' COMMENT '是否支持跳转移动端:0否,1是',
create_time_ DATETIME DEFAULT NULL COMMENT '创建时间',
PRIMARY KEY (id_),
UNIQUE KEY link_code_index (code_) USING BTREE
) ENGINE = InnoDB
CHARACTER SET = utf8mb4 COMMENT ='临时链接表';
临时链接推送日志
临时链接支持推送日志记录。可以通过推送日志记录查看链接推送情况,也可通过业务主键查询 临时链接的一些信息 表结构:
sql
CREATE TABLE sys_temp_link_send_log (
id_ VARCHAR ( 64 ) NOT NULL COMMENT 'ID',
temp_link_id_ VARCHAR ( 64 ) NOT NULL COMMENT '临时链接id',
biz_id_ VARCHAR ( 64 ) NOT NULL COMMENT '业务id',
biz_type_ VARCHAR ( 64 ) NOT NULL COMMENT '业务类型',
email_ VARCHAR ( 64 ) DEFAULT NULL COMMENT '邮箱',
phone_ VARCHAR ( 64 ) DEFAULT NULL COMMENT '电话号码',
identity_id_ VARCHAR ( 64 ) DEFAULT NULL COMMENT '系统内部人员的id',
content_ VARCHAR ( 500 ) DEFAULT NULL COMMENT '推送内容',
is_fail_ TINYINT(1) UNSIGNED DEFAULT '0' COMMENT '是否失败 0 否,1 是',
fail_reason_ VARCHAR ( 500 ) DEFAULT NULL COMMENT '失败原因',
create_time_ DATETIME DEFAULT NULL COMMENT '创建时间',
PRIMARY KEY ( id_ ),
KEY link_biz_index ( biz_id_ ) USING BTREE
) ENGINE = INNODB CHARACTER
SET = utf8mb4 COMMENT = '临时链接推送日志表';
临时链接提供的API
- 生成临时链接
java
/**
* 生成临时链接
*
* @param generateDTO
* @return 临时链接code
*/
String generateTemporaryLink(GenerateTempLinkDTO generateDTO);
- 记录推送日志
java
/**
* 记录推送日志
* @param recordTempSendLogDTO
*/
void recordSendLog (RecordTempLinkSendLogDTO recordTempSendLogDTO);
- 通过bizId 获取 最新一条的 临时链接推送日志
java
/**
* 通过bizId 获取 最新一条的 临时链接推送日志
* 适合 一个业务id 对应一个 可用的临时链接
* @param bizId 业务id
* @param bizType 业务类型
* @return 推送日志信息
*/
SysTempLinkSendLogVO getSendLogByBizIdType(String bizId, String bizType);
临时链接对外开发的接口
- 通过code 打开临时链接,访问地址
/ab-bpm/sys/tempLink/open/{code}
java
@RequestMapping("open/{code}")
public ApiResponse<SysTempLinkAndTokenVO> openLinK(@PathVariable("code") String code)