commit
159e30c982
@ -2,7 +2,7 @@
|
||||
<configuration default="false" name="ruoyi-monitor-admin" type="docker-deploy" factoryName="dockerfile" server-name="Docker">
|
||||
<deployment type="dockerfile">
|
||||
<settings>
|
||||
<option name="imageTag" value="ruoyi/ruoyi-monitor-admin:5.3.1-BETA" />
|
||||
<option name="imageTag" value="ruoyi/ruoyi-monitor-admin:5.3.1-BETA2" />
|
||||
<option name="buildOnly" value="true" />
|
||||
<option name="sourceFilePath" value="ruoyi-extend/ruoyi-monitor-admin/Dockerfile" />
|
||||
</settings>
|
||||
|
@ -2,7 +2,7 @@
|
||||
<configuration default="false" name="ruoyi-server" type="docker-deploy" factoryName="dockerfile" server-name="Docker">
|
||||
<deployment type="dockerfile">
|
||||
<settings>
|
||||
<option name="imageTag" value="ruoyi/ruoyi-server:5.3.1-BETA" />
|
||||
<option name="imageTag" value="ruoyi/ruoyi-server:5.3.1-BETA2" />
|
||||
<option name="buildOnly" value="true" />
|
||||
<option name="sourceFilePath" value="ruoyi-admin/Dockerfile" />
|
||||
</settings>
|
||||
|
@ -2,7 +2,7 @@
|
||||
<configuration default="false" name="ruoyi-snailjob-server" type="docker-deploy" factoryName="dockerfile" server-name="Docker">
|
||||
<deployment type="dockerfile">
|
||||
<settings>
|
||||
<option name="imageTag" value="ruoyi/ruoyi-snailjob-server:5.3.1-BETA" />
|
||||
<option name="imageTag" value="ruoyi/ruoyi-snailjob-server:5.3.1-BETA2" />
|
||||
<option name="buildOnly" value="true" />
|
||||
<option name="sourceFilePath" value="ruoyi-extend/ruoyi-snailjob-server/Dockerfile" />
|
||||
</settings>
|
||||
|
@ -10,7 +10,7 @@
|
||||
[](https://gitee.com/dromara/RuoYi-Vue-Plus/blob/master/LICENSE)
|
||||
[](https://www.jetbrains.com/?from=RuoYi-Vue-Plus)
|
||||
<br>
|
||||
[](https://gitee.com/dromara/RuoYi-Vue-Plus)
|
||||
[](https://gitee.com/dromara/RuoYi-Vue-Plus)
|
||||
[]()
|
||||
[]()
|
||||
[]()
|
||||
|
16
pom.xml
16
pom.xml
@ -13,8 +13,8 @@
|
||||
<description>Dromara RuoYi-Vue-Plus多租户管理系统</description>
|
||||
|
||||
<properties>
|
||||
<revision>5.3.1-BETA</revision>
|
||||
<spring-boot.version>3.4.3</spring-boot.version>
|
||||
<revision>5.3.1-BETA2</revision>
|
||||
<spring-boot.version>3.4.4</spring-boot.version>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
||||
<java.version>17</java.version>
|
||||
@ -27,11 +27,11 @@
|
||||
<mybatis-plus.version>3.5.10.1</mybatis-plus.version>
|
||||
<p6spy.version>3.9.1</p6spy.version>
|
||||
<hutool.version>5.8.35</hutool.version>
|
||||
<spring-boot-admin.version>3.4.2</spring-boot-admin.version>
|
||||
<redisson.version>3.44.0</redisson.version>
|
||||
<spring-boot-admin.version>3.4.5</spring-boot-admin.version>
|
||||
<redisson.version>3.45.1</redisson.version>
|
||||
<lock4j.version>2.2.7</lock4j.version>
|
||||
<dynamic-ds.version>4.3.1</dynamic-ds.version>
|
||||
<snailjob.version>1.3.0</snailjob.version>
|
||||
<snailjob.version>1.4.0-beta2</snailjob.version>
|
||||
<mapstruct-plus.version>1.4.6</mapstruct-plus.version>
|
||||
<mapstruct-plus.lombok.version>0.2.0</mapstruct-plus.lombok.version>
|
||||
<lombok.version>1.18.36</lombok.version>
|
||||
@ -43,13 +43,13 @@
|
||||
<!-- OSS 配置 -->
|
||||
<aws.sdk.version>2.28.22</aws.sdk.version>
|
||||
<!-- SMS 配置 -->
|
||||
<sms4j.version>3.3.3</sms4j.version>
|
||||
<sms4j.version>3.3.4</sms4j.version>
|
||||
<!-- 限制框架中的fastjson版本 -->
|
||||
<fastjson.version>1.2.83</fastjson.version>
|
||||
<!-- 面向运行时的D-ORM依赖 -->
|
||||
<anyline.version>8.7.2-20250101</anyline.version>
|
||||
<!--工作流配置-->
|
||||
<warm-flow.version>1.6.7</warm-flow.version>
|
||||
<warm-flow.version>1.6.8</warm-flow.version>
|
||||
|
||||
<!-- 插件版本 -->
|
||||
<maven-jar-plugin.version>3.2.2</maven-jar-plugin.version>
|
||||
@ -57,6 +57,8 @@
|
||||
<maven-compiler-plugin.version>3.11.0</maven-compiler-plugin.version>
|
||||
<maven-surefire-plugin.version>3.1.2</maven-surefire-plugin.version>
|
||||
<flatten-maven-plugin.version>1.3.0</flatten-maven-plugin.version>
|
||||
<!-- 打包默认跳过测试 -->
|
||||
<skipTests>true</skipTests>
|
||||
</properties>
|
||||
|
||||
<profiles>
|
||||
|
@ -14,7 +14,7 @@
|
||||
</description>
|
||||
|
||||
<properties>
|
||||
<revision>5.3.1-BETA</revision>
|
||||
<revision>5.3.1-BETA2</revision>
|
||||
</properties>
|
||||
|
||||
<dependencyManagement>
|
||||
|
@ -35,6 +35,7 @@ import org.springframework.expression.spel.standard.SpelExpressionParser;
|
||||
import org.springframework.expression.spel.support.StandardEvaluationContext;
|
||||
import org.springframework.util.ClassUtils;
|
||||
|
||||
import java.lang.reflect.Method;
|
||||
import java.util.*;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
import java.util.function.Function;
|
||||
@ -229,10 +230,7 @@ public class PlusDataPermissionHandler {
|
||||
// 获取资源对应的类对象
|
||||
Class<?> clazz = Resources.classForName(classMetadata.getClassName());
|
||||
// 查找类中的特定注解
|
||||
if (AnnotationUtil.hasAnnotation(clazz, DataPermission.class)) {
|
||||
DataPermission dataPermission = AnnotationUtil.getAnnotation(clazz, DataPermission.class);
|
||||
dataPermissionCacheMap.put(clazz.getName(), dataPermission);
|
||||
}
|
||||
findAnnotation(clazz);
|
||||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
@ -240,6 +238,29 @@ public class PlusDataPermissionHandler {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 在指定的类中查找特定的注解 DataPermission,并将带有这个注解的方法或类存储到 dataPermissionCacheMap 中
|
||||
*
|
||||
* @param clazz 要查找的类
|
||||
*/
|
||||
private void findAnnotation(Class<?> clazz) {
|
||||
DataPermission dataPermission;
|
||||
for (Method method : clazz.getMethods()) {
|
||||
if (method.isDefault() || method.isVarArgs()) {
|
||||
continue;
|
||||
}
|
||||
String mappedStatementId = clazz.getName() + "." + method.getName();
|
||||
if (AnnotationUtil.hasAnnotation(method, DataPermission.class)) {
|
||||
dataPermission = AnnotationUtil.getAnnotation(method, DataPermission.class);
|
||||
dataPermissionCacheMap.put(mappedStatementId, dataPermission);
|
||||
}
|
||||
}
|
||||
if (AnnotationUtil.hasAnnotation(clazz, DataPermission.class)) {
|
||||
dataPermission = AnnotationUtil.getAnnotation(clazz, DataPermission.class);
|
||||
dataPermissionCacheMap.put(clazz.getName(), dataPermission);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据映射语句 ID 或类名获取对应的 DataPermission 注解对象
|
||||
*
|
||||
@ -251,6 +272,10 @@ public class PlusDataPermissionHandler {
|
||||
if (DataPermissionHelper.getPermission() != null) {
|
||||
return DataPermissionHelper.getPermission();
|
||||
}
|
||||
// 检查缓存中是否包含映射语句 ID 对应的 DataPermission 注解对象
|
||||
if (dataPermissionCacheMap.containsKey(mapperId)) {
|
||||
return dataPermissionCacheMap.get(mapperId);
|
||||
}
|
||||
// 如果缓存中不包含映射语句 ID 对应的 DataPermission 注解对象,则尝试使用类名作为键查找
|
||||
String clazzName = mapperId.substring(0, mapperId.lastIndexOf("."));
|
||||
if (dataPermissionCacheMap.containsKey(clazzName)) {
|
||||
|
@ -8,7 +8,7 @@ import org.dromara.common.core.utils.StringUtils;
|
||||
import org.dromara.common.core.utils.file.FileUtils;
|
||||
import org.dromara.common.oss.constant.OssConstant;
|
||||
import org.dromara.common.oss.entity.UploadResult;
|
||||
import org.dromara.common.oss.enumd.AccessPolicyType;
|
||||
import org.dromara.common.oss.enums.AccessPolicyType;
|
||||
import org.dromara.common.oss.exception.OssException;
|
||||
import org.dromara.common.oss.properties.OssProperties;
|
||||
import software.amazon.awssdk.auth.credentials.AwsBasicCredentials;
|
||||
|
@ -1,4 +1,4 @@
|
||||
package org.dromara.common.oss.enumd;
|
||||
package org.dromara.common.oss.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
@ -26,7 +26,7 @@ public class SseMessageUtils {
|
||||
}
|
||||
|
||||
/**
|
||||
* 向指定的WebSocket会话发送消息
|
||||
* 向指定的SSE会话发送消息
|
||||
*
|
||||
* @param userId 要发送消息的用户id
|
||||
* @param message 要发送的消息内容
|
||||
|
@ -22,21 +22,10 @@ snail-job:
|
||||
job-pull-page-size: 1000
|
||||
# 服务器端口
|
||||
server-port: 17888
|
||||
# 一个客户端每秒最多接收的重试数量指令
|
||||
limiter: 1000
|
||||
# 号段模式下步长配置
|
||||
step: 100
|
||||
# 日志保存时间(单位: day)
|
||||
log-storage: 90
|
||||
# 回调配置
|
||||
callback:
|
||||
#回调最大执行次数
|
||||
max-count: 288
|
||||
#间隔时间
|
||||
trigger-interval: 900
|
||||
# 重试每次拉取的次数
|
||||
retry-max-pull-count: 10
|
||||
# RPC通讯类型: netty,grpc
|
||||
rpc-type: grpc
|
||||
|
||||
--- # 监控中心配置
|
||||
|
@ -22,21 +22,10 @@ snail-job:
|
||||
job-pull-page-size: 1000
|
||||
# 服务器端口
|
||||
server-port: 17888
|
||||
# 一个客户端每秒最多接收的重试数量指令
|
||||
limiter: 1000
|
||||
# 号段模式下步长配置
|
||||
step: 100
|
||||
# 日志保存时间(单位: day)
|
||||
log-storage: 90
|
||||
# 回调配置
|
||||
callback:
|
||||
#回调最大执行次数
|
||||
max-count: 288
|
||||
#间隔时间
|
||||
trigger-interval: 900
|
||||
# 重试每次拉取的次数
|
||||
retry-max-pull-count: 10
|
||||
# RPC通讯类型: netty,grpc
|
||||
rpc-type: grpc
|
||||
|
||||
--- # 监控中心配置
|
||||
|
@ -87,6 +87,6 @@ public class SysDept extends TenantEntity {
|
||||
* 子部门
|
||||
*/
|
||||
@TableField(exist = false)
|
||||
private List<SysMenu> children = new ArrayList<>();
|
||||
private List<SysDept> children = new ArrayList<>();
|
||||
|
||||
}
|
||||
|
@ -73,4 +73,9 @@ public class SysDeptBo extends BaseEntity {
|
||||
*/
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 归属部门id(部门树)
|
||||
*/
|
||||
private Long belongDeptId;
|
||||
|
||||
}
|
||||
|
@ -7,7 +7,6 @@ import lombok.Data;
|
||||
import org.dromara.common.excel.annotation.ExcelDictFormat;
|
||||
import org.dromara.common.excel.convert.ExcelDictConvert;
|
||||
import org.dromara.system.domain.SysDept;
|
||||
import org.dromara.system.domain.SysMenu;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
@ -105,6 +104,6 @@ public class SysDeptVo implements Serializable {
|
||||
/**
|
||||
* 子部门
|
||||
*/
|
||||
private List<SysMenu> children = new ArrayList<>();
|
||||
private List<SysDept> children = new ArrayList<>();
|
||||
|
||||
}
|
||||
|
@ -1,6 +1,8 @@
|
||||
package org.dromara.system.service;
|
||||
|
||||
import cn.hutool.core.lang.tree.Tree;
|
||||
import org.dromara.common.mybatis.core.page.PageQuery;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
import org.dromara.system.domain.bo.SysDeptBo;
|
||||
import org.dromara.system.domain.vo.SysDeptVo;
|
||||
|
||||
@ -12,6 +14,16 @@ import java.util.List;
|
||||
* @author Lion Li
|
||||
*/
|
||||
public interface ISysDeptService {
|
||||
|
||||
/**
|
||||
* 分页查询部门管理数据
|
||||
*
|
||||
* @param dept 部门信息
|
||||
* @param pageQuery 分页对象
|
||||
* @return 部门信息集合
|
||||
*/
|
||||
TableDataInfo<SysDeptVo> selectPageDeptList(SysDeptBo dept, PageQuery pageQuery);
|
||||
|
||||
/**
|
||||
* 查询部门管理数据
|
||||
*
|
||||
|
@ -8,6 +8,7 @@ import cn.hutool.core.util.ObjectUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.core.constant.CacheNames;
|
||||
import org.dromara.common.core.constant.SystemConstants;
|
||||
@ -15,6 +16,8 @@ import org.dromara.common.core.domain.dto.DeptDTO;
|
||||
import org.dromara.common.core.exception.ServiceException;
|
||||
import org.dromara.common.core.service.DeptService;
|
||||
import org.dromara.common.core.utils.*;
|
||||
import org.dromara.common.mybatis.core.page.PageQuery;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
import org.dromara.common.mybatis.helper.DataBaseHelper;
|
||||
import org.dromara.common.redis.utils.CacheUtils;
|
||||
import org.dromara.common.satoken.utils.LoginHelper;
|
||||
@ -50,6 +53,19 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService {
|
||||
private final SysRoleMapper roleMapper;
|
||||
private final SysUserMapper userMapper;
|
||||
|
||||
/**
|
||||
* 分页查询部门管理数据
|
||||
*
|
||||
* @param dept 部门信息
|
||||
* @param pageQuery 分页对象
|
||||
* @return 部门信息集合
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<SysDeptVo> selectPageDeptList(SysDeptBo dept, PageQuery pageQuery) {
|
||||
Page<SysDeptVo> page = baseMapper.selectPageDeptList(pageQuery.build(), buildQueryWrapper(dept));
|
||||
return TableDataInfo.build(page);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询部门管理数据
|
||||
*
|
||||
@ -87,6 +103,16 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService {
|
||||
lqw.orderByAsc(SysDept::getParentId);
|
||||
lqw.orderByAsc(SysDept::getOrderNum);
|
||||
lqw.orderByAsc(SysDept::getDeptId);
|
||||
if (ObjectUtil.isNotNull(bo.getBelongDeptId())) {
|
||||
//部门树搜索
|
||||
lqw.and(x -> {
|
||||
Long parentId = bo.getBelongDeptId();
|
||||
List<SysDept> deptList = baseMapper.selectListByParentId(parentId);
|
||||
List<Long> deptIds = StreamUtils.toList(deptList, SysDept::getDeptId);
|
||||
deptIds.add(parentId);
|
||||
x.in(SysDept::getDeptId, deptIds);
|
||||
});
|
||||
}
|
||||
return lqw;
|
||||
}
|
||||
|
||||
|
@ -33,10 +33,7 @@ import org.springframework.cache.annotation.Cacheable;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
@ -265,7 +262,12 @@ public class SysDictTypeServiceImpl implements ISysDictTypeService, DictService
|
||||
@Override
|
||||
public Map<String, String> getAllDictByDictType(String dictType) {
|
||||
List<SysDictDataVo> list = SpringUtils.getAopProxy(this).selectDictDataByType(dictType);
|
||||
return StreamUtils.toMap(list, SysDictDataVo::getDictValue, SysDictDataVo::getDictLabel);
|
||||
// 保证顺序
|
||||
LinkedHashMap<String, String> map = new LinkedHashMap<>();
|
||||
for (SysDictDataVo vo : list) {
|
||||
map.put(vo.getDictValue(), vo.getDictLabel());
|
||||
}
|
||||
return map;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -21,7 +21,7 @@ import org.dromara.common.mybatis.core.page.PageQuery;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
import org.dromara.common.oss.core.OssClient;
|
||||
import org.dromara.common.oss.entity.UploadResult;
|
||||
import org.dromara.common.oss.enumd.AccessPolicyType;
|
||||
import org.dromara.common.oss.enums.AccessPolicyType;
|
||||
import org.dromara.common.oss.factory.OssFactory;
|
||||
import org.dromara.system.domain.SysOss;
|
||||
import org.dromara.system.domain.bo.SysOssBo;
|
||||
|
@ -1,32 +1,28 @@
|
||||
package org.dromara.system.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import cn.hutool.core.convert.Convert;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.core.constant.SystemConstants;
|
||||
import org.dromara.common.core.domain.dto.TaskAssigneeDTO;
|
||||
import org.dromara.common.core.domain.model.TaskAssigneeBody;
|
||||
import org.dromara.common.core.service.TaskAssigneeService;
|
||||
import org.dromara.common.core.utils.StreamUtils;
|
||||
import org.dromara.common.core.utils.StringUtils;
|
||||
import org.dromara.common.mybatis.core.page.PageQuery;
|
||||
import org.dromara.system.domain.SysDept;
|
||||
import org.dromara.system.domain.SysPost;
|
||||
import org.dromara.system.domain.SysRole;
|
||||
import org.dromara.system.domain.SysUser;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
import org.dromara.system.domain.bo.SysDeptBo;
|
||||
import org.dromara.system.domain.bo.SysPostBo;
|
||||
import org.dromara.system.domain.bo.SysRoleBo;
|
||||
import org.dromara.system.domain.bo.SysUserBo;
|
||||
import org.dromara.system.domain.vo.SysDeptVo;
|
||||
import org.dromara.system.domain.vo.SysPostVo;
|
||||
import org.dromara.system.domain.vo.SysRoleVo;
|
||||
import org.dromara.system.domain.vo.SysUserVo;
|
||||
import org.dromara.system.mapper.SysDeptMapper;
|
||||
import org.dromara.system.mapper.SysPostMapper;
|
||||
import org.dromara.system.mapper.SysRoleMapper;
|
||||
import org.dromara.system.mapper.SysUserMapper;
|
||||
import org.dromara.system.service.ISysDeptService;
|
||||
import org.dromara.system.service.ISysPostService;
|
||||
import org.dromara.system.service.ISysRoleService;
|
||||
import org.dromara.system.service.ISysUserService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 工作流设计器获取任务执行人
|
||||
@ -37,10 +33,11 @@ import java.util.List;
|
||||
@Service
|
||||
public class SysTaskAssigneeServiceImpl implements TaskAssigneeService {
|
||||
|
||||
private final SysPostMapper postMapper;
|
||||
private final SysDeptMapper deptMapper;
|
||||
private final SysUserMapper userMapper;
|
||||
private final SysRoleMapper roleMapper;
|
||||
// 上级Service注入下级Service 其他Service永远不可能注入当前类 避免循环注入
|
||||
private final ISysPostService postService;
|
||||
private final ISysDeptService deptService;
|
||||
private final ISysUserService userService;
|
||||
private final ISysRoleService roleService;
|
||||
|
||||
/**
|
||||
* 查询角色并返回任务指派的列表,支持分页
|
||||
@ -51,17 +48,15 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService {
|
||||
@Override
|
||||
public TaskAssigneeDTO selectRolesByTaskAssigneeList(TaskAssigneeBody taskQuery) {
|
||||
PageQuery pageQuery = new PageQuery(taskQuery.getPageSize(), taskQuery.getPageNum());
|
||||
QueryWrapper<SysRole> wrapper = Wrappers.query();
|
||||
wrapper.eq("r.del_flag", SystemConstants.NORMAL)
|
||||
.eq("r.status", SystemConstants.NORMAL)
|
||||
.like(StringUtils.isNotBlank(taskQuery.getHandlerCode()), "r.role_name", taskQuery.getHandlerCode())
|
||||
.like(StringUtils.isNotBlank(taskQuery.getHandlerName()), "r.role_key", taskQuery.getHandlerName())
|
||||
.between(StringUtils.isNotBlank(taskQuery.getBeginTime()) && StringUtils.isNotBlank(taskQuery.getEndTime()),
|
||||
"r.create_time", taskQuery.getBeginTime(), taskQuery.getEndTime())
|
||||
.orderByAsc("r.role_sort").orderByAsc("r.create_time");
|
||||
Page<SysRoleVo> page = roleMapper.selectPageRoleList(pageQuery.build(), wrapper);
|
||||
SysRoleBo bo = new SysRoleBo();
|
||||
bo.setRoleName(taskQuery.getHandlerCode());
|
||||
bo.setRoleKey(taskQuery.getHandlerName());
|
||||
Map<String, Object> params = bo.getParams();
|
||||
params.put("beginTime", taskQuery.getBeginTime());
|
||||
params.put("endTime", taskQuery.getEndTime());
|
||||
TableDataInfo<SysRoleVo> page = roleService.selectPageRoleList(bo, pageQuery);
|
||||
// 使用封装的字段映射方法进行转换
|
||||
List<TaskAssigneeDTO.TaskHandler> handlers = TaskAssigneeDTO.convertToHandlerList(page.getRecords(),
|
||||
List<TaskAssigneeDTO.TaskHandler> handlers = TaskAssigneeDTO.convertToHandlerList(page.getRows(),
|
||||
SysRoleVo::getRoleId, SysRoleVo::getRoleKey, SysRoleVo::getRoleName, null, SysRoleVo::getCreateTime);
|
||||
return new TaskAssigneeDTO(page.getTotal(), handlers);
|
||||
}
|
||||
@ -75,24 +70,16 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService {
|
||||
@Override
|
||||
public TaskAssigneeDTO selectPostsByTaskAssigneeList(TaskAssigneeBody taskQuery) {
|
||||
PageQuery pageQuery = new PageQuery(taskQuery.getPageSize(), taskQuery.getPageNum());
|
||||
LambdaQueryWrapper<SysPost> wrapper = Wrappers.<SysPost>lambdaQuery()
|
||||
.eq(SysPost::getStatus, SystemConstants.NORMAL)
|
||||
.like(StringUtils.isNotBlank(taskQuery.getHandlerCode()), SysPost::getPostCategory, taskQuery.getHandlerCode())
|
||||
.like(StringUtils.isNotBlank(taskQuery.getHandlerName()), SysPost::getPostName, taskQuery.getHandlerName())
|
||||
.between(StringUtils.isNotBlank(taskQuery.getBeginTime()) && StringUtils.isNotBlank(taskQuery.getEndTime()),
|
||||
SysPost::getCreateTime, taskQuery.getBeginTime(), taskQuery.getEndTime());
|
||||
if (StringUtils.isNotBlank(taskQuery.getGroupId())) {
|
||||
Long belongDeptId = Long.valueOf(taskQuery.getGroupId());
|
||||
wrapper.and(x -> {
|
||||
List<SysDept> deptList = deptMapper.selectListByParentId(belongDeptId);
|
||||
List<Long> deptIds = StreamUtils.toList(deptList, SysDept::getDeptId);
|
||||
deptIds.add(belongDeptId);
|
||||
x.in(SysPost::getDeptId, deptIds);
|
||||
});
|
||||
}
|
||||
Page<SysPostVo> page = postMapper.selectPagePostList(pageQuery.build(), wrapper);
|
||||
SysPostBo bo = new SysPostBo();
|
||||
bo.setPostCategory(taskQuery.getHandlerCode());
|
||||
bo.setPostName(taskQuery.getHandlerName());
|
||||
Map<String, Object> params = bo.getParams();
|
||||
params.put("beginTime", taskQuery.getBeginTime());
|
||||
params.put("endTime", taskQuery.getEndTime());
|
||||
bo.setBelongDeptId(Convert.toLong(taskQuery.getGroupId()));
|
||||
TableDataInfo<SysPostVo> page = postService.selectPagePostList(bo, pageQuery);
|
||||
// 使用封装的字段映射方法进行转换
|
||||
List<TaskAssigneeDTO.TaskHandler> handlers = TaskAssigneeDTO.convertToHandlerList(page.getRecords(),
|
||||
List<TaskAssigneeDTO.TaskHandler> handlers = TaskAssigneeDTO.convertToHandlerList(page.getRows(),
|
||||
SysPostVo::getPostId, SysPostVo::getPostCategory, SysPostVo::getPostName, SysPostVo::getDeptId, SysPostVo::getCreateTime);
|
||||
return new TaskAssigneeDTO(page.getTotal(), handlers);
|
||||
}
|
||||
@ -106,30 +93,16 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService {
|
||||
@Override
|
||||
public TaskAssigneeDTO selectDeptsByTaskAssigneeList(TaskAssigneeBody taskQuery) {
|
||||
PageQuery pageQuery = new PageQuery(taskQuery.getPageSize(), taskQuery.getPageNum());
|
||||
LambdaQueryWrapper<SysDept> wrapper = Wrappers.<SysDept>lambdaQuery()
|
||||
.eq(SysDept::getDelFlag, SystemConstants.NORMAL)
|
||||
.eq(SysDept::getStatus, SystemConstants.NORMAL)
|
||||
.like(StringUtils.isNotBlank(taskQuery.getHandlerCode()), SysDept::getDeptCategory, taskQuery.getHandlerCode())
|
||||
.like(StringUtils.isNotBlank(taskQuery.getHandlerName()), SysDept::getDeptName, taskQuery.getHandlerName())
|
||||
.between(StringUtils.isNotBlank(taskQuery.getBeginTime()) && StringUtils.isNotBlank(taskQuery.getEndTime()),
|
||||
SysDept::getCreateTime, taskQuery.getBeginTime(), taskQuery.getEndTime())
|
||||
.orderByAsc(SysDept::getAncestors)
|
||||
.orderByAsc(SysDept::getParentId)
|
||||
.orderByAsc(SysDept::getOrderNum)
|
||||
.orderByAsc(SysDept::getDeptId);
|
||||
if (StringUtils.isNotBlank(taskQuery.getGroupId())) {
|
||||
//部门树搜索
|
||||
wrapper.and(x -> {
|
||||
Long parentId = Long.valueOf(taskQuery.getGroupId());
|
||||
List<SysDept> deptList = deptMapper.selectListByParentId(parentId);
|
||||
List<Long> deptIds = StreamUtils.toList(deptList, SysDept::getDeptId);
|
||||
deptIds.add(parentId);
|
||||
x.in(SysDept::getDeptId, deptIds);
|
||||
});
|
||||
}
|
||||
Page<SysDeptVo> page = deptMapper.selectPageDeptList(pageQuery.build(), wrapper);
|
||||
SysDeptBo bo = new SysDeptBo();
|
||||
bo.setDeptCategory(taskQuery.getHandlerCode());
|
||||
bo.setDeptName(taskQuery.getHandlerName());
|
||||
Map<String, Object> params = bo.getParams();
|
||||
params.put("beginTime", taskQuery.getBeginTime());
|
||||
params.put("endTime", taskQuery.getEndTime());
|
||||
bo.setBelongDeptId(Convert.toLong(taskQuery.getGroupId()));
|
||||
TableDataInfo<SysDeptVo> page = deptService.selectPageDeptList(bo, pageQuery);
|
||||
// 使用封装的字段映射方法进行转换
|
||||
List<TaskAssigneeDTO.TaskHandler> handlers = TaskAssigneeDTO.convertToHandlerList(page.getRecords(),
|
||||
List<TaskAssigneeDTO.TaskHandler> handlers = TaskAssigneeDTO.convertToHandlerList(page.getRows(),
|
||||
SysDeptVo::getDeptId, SysDeptVo::getDeptCategory, SysDeptVo::getDeptName, SysDeptVo::getParentId, SysDeptVo::getCreateTime);
|
||||
return new TaskAssigneeDTO(page.getTotal(), handlers);
|
||||
}
|
||||
@ -144,27 +117,16 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService {
|
||||
@Override
|
||||
public TaskAssigneeDTO selectUsersByTaskAssigneeList(TaskAssigneeBody taskQuery) {
|
||||
PageQuery pageQuery = new PageQuery(taskQuery.getPageSize(), taskQuery.getPageNum());
|
||||
QueryWrapper<SysUser> wrapper = Wrappers.query();
|
||||
wrapper.eq("u.del_flag", SystemConstants.NORMAL)
|
||||
.eq("u.status", SystemConstants.NORMAL)
|
||||
.like(StringUtils.isNotBlank(taskQuery.getHandlerCode()), "u.user_name", taskQuery.getHandlerCode())
|
||||
.like(StringUtils.isNotBlank(taskQuery.getHandlerName()), "u.nick_name", taskQuery.getHandlerName())
|
||||
.between(taskQuery.getBeginTime() != null && taskQuery.getEndTime() != null,
|
||||
"u.create_time", taskQuery.getBeginTime(), taskQuery.getEndTime())
|
||||
.orderByAsc("u.user_id");
|
||||
if (StringUtils.isNotBlank(taskQuery.getGroupId())) {
|
||||
//部门树搜索
|
||||
wrapper.and(x -> {
|
||||
Long parentId = Long.valueOf(taskQuery.getGroupId());
|
||||
List<SysDept> deptList = deptMapper.selectListByParentId(parentId);
|
||||
List<Long> deptIds = StreamUtils.toList(deptList, SysDept::getDeptId);
|
||||
deptIds.add(parentId);
|
||||
x.in("u.dept_id", deptIds);
|
||||
});
|
||||
}
|
||||
Page<SysUserVo> page = userMapper.selectPageUserList(pageQuery.build(), wrapper);
|
||||
SysUserBo bo = new SysUserBo();
|
||||
bo.setUserName(taskQuery.getHandlerCode());
|
||||
bo.setNickName(taskQuery.getHandlerName());
|
||||
Map<String, Object> params = bo.getParams();
|
||||
params.put("beginTime", taskQuery.getBeginTime());
|
||||
params.put("endTime", taskQuery.getEndTime());
|
||||
bo.setDeptId(Convert.toLong(taskQuery.getGroupId()));
|
||||
TableDataInfo<SysUserVo> page = userService.selectPageUserList(bo, pageQuery);
|
||||
// 使用封装的字段映射方法进行转换
|
||||
List<TaskAssigneeDTO.TaskHandler> handlers = TaskAssigneeDTO.convertToHandlerList(page.getRecords(),
|
||||
List<TaskAssigneeDTO.TaskHandler> handlers = TaskAssigneeDTO.convertToHandlerList(page.getRows(),
|
||||
SysUserVo::getUserId, SysUserVo::getUserName, SysUserVo::getNickName, SysUserVo::getDeptId, SysUserVo::getCreateTime);
|
||||
return new TaskAssigneeDTO(page.getTotal(), handlers);
|
||||
}
|
||||
|
@ -21,7 +21,7 @@ public class FlowNextNodeBo implements Serializable {
|
||||
/**
|
||||
* 任务id
|
||||
*/
|
||||
private String taskId;
|
||||
private Long taskId;
|
||||
|
||||
/**
|
||||
* 流程变量
|
||||
|
@ -186,7 +186,7 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService {
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean deleteByBusinessIds(List<Long> businessIds) {
|
||||
List<FlowInstance> flowInstances = flowInstanceMapper.selectList(new LambdaQueryWrapper<FlowInstance>().in(FlowInstance::getBusinessId, businessIds));
|
||||
List<FlowInstance> flowInstances = flowInstanceMapper.selectList(new LambdaQueryWrapper<FlowInstance>().in(FlowInstance::getBusinessId, StreamUtils.toList(businessIds,Convert::toStr)));
|
||||
if (CollUtil.isEmpty(flowInstances)) {
|
||||
log.warn("未找到对应的流程实例信息,无法执行删除操作。");
|
||||
return false;
|
||||
|
@ -6,7 +6,6 @@ import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.dromara.common.core.domain.dto.DictTypeDTO;
|
||||
import org.dromara.common.core.service.DictService;
|
||||
import org.dromara.common.core.utils.StringUtils;
|
||||
import org.dromara.warm.flow.ui.service.NodeExtService;
|
||||
import org.dromara.warm.flow.ui.vo.NodeExt;
|
||||
import org.dromara.workflow.common.ConditionalOnEnable;
|
||||
@ -37,11 +36,6 @@ public class FlwNodeExtServiceImpl implements NodeExtService {
|
||||
*/
|
||||
private static final String PERMISSION_TAB_NAME = "权限";
|
||||
|
||||
/**
|
||||
* 枚举类型标识
|
||||
*/
|
||||
private static final String ENUM_TYPE_PREFIX = "enum:";
|
||||
|
||||
/**
|
||||
* 基础设置
|
||||
*/
|
||||
@ -58,7 +52,7 @@ public class FlwNodeExtServiceImpl implements NodeExtService {
|
||||
private static final Map<String, Map<String, Object>> CHILD_NODE_MAP = new HashMap<>();
|
||||
|
||||
static {
|
||||
CHILD_NODE_MAP.put(ButtonPermissionEnum.class.getName(),
|
||||
CHILD_NODE_MAP.put(ButtonPermissionEnum.class.getSimpleName(),
|
||||
Map.of("label", "权限按钮", "type", 4, "must", false, "multiple", true));
|
||||
}
|
||||
|
||||
@ -67,33 +61,41 @@ public class FlwNodeExtServiceImpl implements NodeExtService {
|
||||
/**
|
||||
* 获取节点扩展属性
|
||||
*
|
||||
* @return 结果
|
||||
* @return 节点扩展属性列表
|
||||
*/
|
||||
@Override
|
||||
public List<NodeExt> getNodeExt() {
|
||||
List<NodeExt> nodeExtList = new ArrayList<>();
|
||||
// 构建按钮权限页面
|
||||
nodeExtList.add(buildNodeExt(PERMISSION_TAB, PERMISSION_TAB_NAME, TYPE_NEW_TAB,
|
||||
ENUM_TYPE_PREFIX + ButtonPermissionEnum.class.getName()));
|
||||
List.of(ButtonPermissionEnum.class)));
|
||||
return nodeExtList;
|
||||
}
|
||||
|
||||
/**
|
||||
* 构建一个 NodeExt 对象
|
||||
* 构建一个 `NodeExt` 对象
|
||||
*
|
||||
* @param code 编码,此json中唯一
|
||||
* @param name 名称,如果type为新页签时,作为页签名称
|
||||
* @param type 节点类型,1:基础设置,2:新页签
|
||||
* @param sourceTypes 字典/枚举类型来源(逗号分隔)
|
||||
* @return 返回构建好的 NodeExt 对象
|
||||
* @param code 唯一编码
|
||||
* @param name 名称(新页签时,作为页签名称)
|
||||
* @param type 节点类型(1: 基础设置,2: 新页签)
|
||||
* @param sources 数据来源(枚举类或字典类型)
|
||||
* @return 构建的 `NodeExt` 对象
|
||||
*/
|
||||
private NodeExt buildNodeExt(String code, String name, int type, String sourceTypes) {
|
||||
@SuppressWarnings("unchecked cast")
|
||||
private NodeExt buildNodeExt(String code, String name, int type, List<Object> sources) {
|
||||
NodeExt nodeExt = new NodeExt();
|
||||
nodeExt.setCode(code);
|
||||
nodeExt.setType(type);
|
||||
nodeExt.setName(name);
|
||||
nodeExt.setChilds(StringUtils.splitList(sourceTypes)
|
||||
.stream().map(this::buildChildNode)
|
||||
nodeExt.setChilds(sources.stream()
|
||||
.map(source -> {
|
||||
if (source instanceof Class<?> clazz && NodeExtEnum.class.isAssignableFrom(clazz)) {
|
||||
return buildChildNode((Class<? extends NodeExtEnum>) clazz);
|
||||
} else if (source instanceof String dictType) {
|
||||
return buildChildNode(dictType);
|
||||
}
|
||||
return null;
|
||||
})
|
||||
.filter(ObjectUtil::isNotNull)
|
||||
.toList()
|
||||
);
|
||||
@ -101,52 +103,35 @@ public class FlwNodeExtServiceImpl implements NodeExtService {
|
||||
}
|
||||
|
||||
/**
|
||||
* 构建一个 ChildNode 对象
|
||||
* 根据枚举类型构建一个 `ChildNode` 对象
|
||||
*
|
||||
* @param sourceType 字典类型
|
||||
* @return 返回构建好的 ChildNode 对象
|
||||
* @param enumClass 枚举类,必须实现 `NodeExtEnum` 接口
|
||||
* @return 构建的 `ChildNode` 对象
|
||||
*/
|
||||
private NodeExt.ChildNode buildChildNode(String sourceType) {
|
||||
return sourceType.startsWith(ENUM_TYPE_PREFIX) ?
|
||||
buildChildNodeFromEnum(sourceType.substring(ENUM_TYPE_PREFIX.length())) : buildChildNodeFromDict(sourceType);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据枚举构建一个 ChildNode 对象
|
||||
*
|
||||
* @param enumClassName 枚举名称
|
||||
* @return 返回构建好的 ChildNode 对象
|
||||
*/
|
||||
private NodeExt.ChildNode buildChildNodeFromEnum(String enumClassName) {
|
||||
try {
|
||||
Class<?> enumClass = Class.forName(enumClassName);
|
||||
if (!enumClass.isEnum()) {
|
||||
return null;
|
||||
}
|
||||
NodeExt.ChildNode childNode = buildChildNodeMap(enumClassName);
|
||||
// 编码,此json中唯
|
||||
childNode.setCode(ENUM_TYPE_PREFIX + enumClassName);
|
||||
// 字典,下拉框和复选框时用到
|
||||
childNode.setDict(Arrays.stream(enumClass.getEnumConstants())
|
||||
.filter(NodeExtEnum.class::isInstance)
|
||||
.map(NodeExtEnum.class::cast)
|
||||
.map(x ->
|
||||
new NodeExt.DictItem(x.getLabel(), x.getValue(), x.isSelected())
|
||||
).toList());
|
||||
return childNode;
|
||||
} catch (ClassNotFoundException e) {
|
||||
log.error("Enum class not found: {}", enumClassName, e);
|
||||
private NodeExt.ChildNode buildChildNode(Class<? extends NodeExtEnum> enumClass) {
|
||||
if (!enumClass.isEnum()) {
|
||||
return null;
|
||||
}
|
||||
return null;
|
||||
String simpleName = enumClass.getSimpleName();
|
||||
NodeExt.ChildNode childNode = buildChildNodeMap(simpleName);
|
||||
// 编码,此json中唯
|
||||
childNode.setCode(simpleName);
|
||||
// 字典,下拉框和复选框时用到
|
||||
childNode.setDict(Arrays.stream(enumClass.getEnumConstants())
|
||||
.map(NodeExtEnum.class::cast)
|
||||
.map(x ->
|
||||
new NodeExt.DictItem(x.getLabel(), x.getValue(), x.isSelected())
|
||||
).toList());
|
||||
return childNode;
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据字典构建一个 ChildNode 对象
|
||||
* 根据字典类型构建 `ChildNode` 对象
|
||||
*
|
||||
* @param dictType 字典类型
|
||||
* @return 返回构建好的 ChildNode 对象
|
||||
* @return 构建的 `ChildNode` 对象
|
||||
*/
|
||||
private NodeExt.ChildNode buildChildNodeFromDict(String dictType) {
|
||||
private NodeExt.ChildNode buildChildNode(String dictType) {
|
||||
DictTypeDTO dictTypeDTO = dictService.getDictType(dictType);
|
||||
if (ObjectUtil.isNull(dictTypeDTO)) {
|
||||
return null;
|
||||
|
@ -1,6 +1,7 @@
|
||||
package org.dromara.workflow.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
@ -25,9 +26,7 @@ import org.dromara.workflow.common.enums.TaskAssigneeEnum;
|
||||
import org.dromara.workflow.service.IFlwTaskAssigneeService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* 流程设计器-获取办理人权限设置列表
|
||||
@ -132,15 +131,26 @@ public class FlwTaskAssigneeServiceImpl implements IFlwTaskAssigneeService, Hand
|
||||
@Override
|
||||
public List<UserDTO> fetchUsersByStorageId(String storageId) {
|
||||
List<UserDTO> list = new ArrayList<>();
|
||||
Map<TaskAssigneeEnum, List<Long>> typeIdMap = new EnumMap<>(TaskAssigneeEnum.class);
|
||||
for (String str : storageId.split(StrUtil.COMMA)) {
|
||||
String[] parts = str.split(StrUtil.COLON, 2);
|
||||
TaskAssigneeEnum type;
|
||||
Long id;
|
||||
if (parts.length < 2) {
|
||||
list.addAll(getUsersByType(TaskAssigneeEnum.USER, List.of(Long.valueOf(parts[0]))));
|
||||
// 无前缀时默认是用户类型
|
||||
type = TaskAssigneeEnum.USER;
|
||||
id = Long.valueOf(parts[0]);
|
||||
} else {
|
||||
list.addAll(getUsersByType(TaskAssigneeEnum.fromCode(parts[0] + StrUtil.COLON), List.of(Long.valueOf(parts[1]))));
|
||||
// 根据前缀解析类型(如 "role:123" -> ROLE 类型)
|
||||
type = TaskAssigneeEnum.fromCode(parts[0] + StrUtil.COLON);
|
||||
id = Long.valueOf(parts[1]);
|
||||
}
|
||||
typeIdMap.computeIfAbsent(type, k -> new ArrayList<>()).add(id);
|
||||
}
|
||||
return list;
|
||||
typeIdMap.entrySet().stream()
|
||||
.filter(entry -> CollUtil.isNotEmpty(entry.getValue()))
|
||||
.forEach(entry -> list.addAll(getUsersByType(entry.getKey(), entry.getValue())));
|
||||
return list.stream().distinct().toList();
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -575,7 +575,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService {
|
||||
*/
|
||||
@Override
|
||||
public List<FlowNode> getNextNodeList(FlowNextNodeBo bo) {
|
||||
String taskId = bo.getTaskId();
|
||||
Long taskId = bo.getTaskId();
|
||||
Map<String, Object> variables = bo.getVariables();
|
||||
Task task = taskService.getById(taskId);
|
||||
Instance instance = insService.getById(task.getInstanceId());
|
||||
|
@ -54,7 +54,7 @@ public class TestLeaveServiceImpl implements ITestLeaveService {
|
||||
* @return boolean
|
||||
*/
|
||||
public boolean eval(Integer leaveDays) {
|
||||
if (leaveDays < 2) {
|
||||
if (leaveDays <= 2) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
|
@ -98,7 +98,7 @@ services:
|
||||
network_mode: "host"
|
||||
|
||||
ruoyi-server1:
|
||||
image: ruoyi/ruoyi-server:5.3.1-BETA
|
||||
image: ruoyi/ruoyi-server:5.3.1-BETA2
|
||||
container_name: ruoyi-server1
|
||||
environment:
|
||||
# 时区上海
|
||||
@ -113,7 +113,7 @@ services:
|
||||
network_mode: "host"
|
||||
|
||||
ruoyi-server2:
|
||||
image: ruoyi/ruoyi-server:5.3.1-BETA
|
||||
image: ruoyi/ruoyi-server:5.3.1-BETA2
|
||||
container_name: ruoyi-server2
|
||||
environment:
|
||||
# 时区上海
|
||||
@ -128,7 +128,7 @@ services:
|
||||
network_mode: "host"
|
||||
|
||||
ruoyi-monitor-admin:
|
||||
image: ruoyi/ruoyi-monitor-admin:5.3.1-BETA
|
||||
image: ruoyi/ruoyi-monitor-admin:5.3.1-BETA2
|
||||
container_name: ruoyi-monitor-admin
|
||||
environment:
|
||||
# 时区上海
|
||||
@ -140,7 +140,7 @@ services:
|
||||
network_mode: "host"
|
||||
|
||||
ruoyi-snailjob-server:
|
||||
image: ruoyi/ruoyi-snailjob-server:5.3.1-BETA
|
||||
image: ruoyi/ruoyi-snailjob-server:5.3.1-BETA2
|
||||
container_name: ruoyi-snailjob-server
|
||||
environment:
|
||||
# 时区上海
|
||||
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
"flowCode" : "leave1",
|
||||
"flowName" : "请假申请-普通",
|
||||
"category" : "1",
|
||||
"category" : "100",
|
||||
"version" : "1",
|
||||
"formCustom" : "N",
|
||||
"formPath" : "/workflow/leaveEdit/index",
|
||||
@ -11,8 +11,8 @@
|
||||
"nodeName" : "开始",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "200,200|200,200",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "d5ee3ddf-3968-4379-a86f-9ceabde5faac",
|
||||
"nextNodeCode" : "dd515cdd-59f6-446f-94ca-25ca062afb42",
|
||||
@ -25,8 +25,8 @@
|
||||
"nodeName" : "申请人",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "360,200|360,200",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "dd515cdd-59f6-446f-94ca-25ca062afb42",
|
||||
"nextNodeCode" : "78fa8e5b-e809-44ed-978a-41092409ebcf",
|
||||
@ -40,8 +40,8 @@
|
||||
"permissionFlag" : "role:1",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "540,200|540,200",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[{\"code\":\"ButtonPermissionEnum\",\"value\":\"back,termination\"}]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "78fa8e5b-e809-44ed-978a-41092409ebcf",
|
||||
"nextNodeCode" : "a8abf15f-b83e-428a-86cc-033555ea9bbe",
|
||||
@ -55,8 +55,8 @@
|
||||
"permissionFlag" : "role:3,role:4",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "720,200|720,200",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[{\"code\":\"ButtonPermissionEnum\",\"value\":\"back,termination\"}]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "a8abf15f-b83e-428a-86cc-033555ea9bbe",
|
||||
"nextNodeCode" : "8b82b7d7-8660-455e-b880-d6d22ea3eb6d",
|
||||
@ -69,7 +69,7 @@
|
||||
"nodeName" : "结束",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "900,200|900,200",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N"
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]"
|
||||
} ]
|
||||
}
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
"flowCode" : "leave2",
|
||||
"flowName" : "请假申请-排他网关",
|
||||
"category" : "1",
|
||||
"category" : "100",
|
||||
"version" : "1",
|
||||
"formCustom" : "N",
|
||||
"formPath" : "/workflow/leaveEdit/index",
|
||||
@ -11,8 +11,8 @@
|
||||
"nodeName" : "开始",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "300,240|300,240",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "cef3895c-f7d8-4598-8bf3-8ec2ef6ce84a",
|
||||
"nextNodeCode" : "fdcae93b-b69c-498a-b231-09255e74bcbd",
|
||||
@ -25,8 +25,8 @@
|
||||
"nodeName" : "申请人",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "440,240|440,240",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "fdcae93b-b69c-498a-b231-09255e74bcbd",
|
||||
"nextNodeCode" : "7b8c7ead-7dc8-4951-a7f3-f0c41995909e",
|
||||
@ -38,8 +38,8 @@
|
||||
"nodeCode" : "7b8c7ead-7dc8-4951-a7f3-f0c41995909e",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "560,240",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "7b8c7ead-7dc8-4951-a7f3-f0c41995909e",
|
||||
"nextNodeCode" : "b3528155-dcb7-4445-bbdf-3d00e3499e86",
|
||||
@ -61,8 +61,8 @@
|
||||
"permissionFlag" : "3,4",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "720,320|720,320",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[{\"code\":\"ButtonPermissionEnum\",\"value\":\"back,termination\"}]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "b3528155-dcb7-4445-bbdf-3d00e3499e86",
|
||||
"nextNodeCode" : "c9fa6d7d-2a74-4e78-b947-0cad8a6af869",
|
||||
@ -76,8 +76,8 @@
|
||||
"permissionFlag" : "role:1",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "860,240|860,240",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "c9fa6d7d-2a74-4e78-b947-0cad8a6af869",
|
||||
"nextNodeCode" : "40aa65fd-0712-4d23-b6f7-d0432b920fd1",
|
||||
@ -90,8 +90,8 @@
|
||||
"nodeName" : "结束",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "1000,240|1000,240",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N"
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]"
|
||||
}, {
|
||||
"nodeType" : 1,
|
||||
"nodeCode" : "5ed2362b-fc0c-4d52-831f-95208b830605",
|
||||
@ -99,8 +99,8 @@
|
||||
"permissionFlag" : "role:1",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "720,160|720,160",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[{\"code\":\"ButtonPermissionEnum\",\"value\":\"back,termination\"}]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "5ed2362b-fc0c-4d52-831f-95208b830605",
|
||||
"nextNodeCode" : "c9fa6d7d-2a74-4e78-b947-0cad8a6af869",
|
||||
@ -108,4 +108,4 @@
|
||||
"coordinate" : "770,160;860,160;860,200"
|
||||
} ]
|
||||
} ]
|
||||
}
|
||||
}
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
"flowCode" : "leave3",
|
||||
"flowName" : "请假申请-并行网关",
|
||||
"category" : "1",
|
||||
"category" : "100",
|
||||
"version" : "1",
|
||||
"formCustom" : "N",
|
||||
"formPath" : "/workflow/leaveEdit/index",
|
||||
@ -11,8 +11,8 @@
|
||||
"nodeName" : "开始",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "380,220|380,220",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "a80ecf9f-f465-4ae5-a429-e30ec5d0f957",
|
||||
"nextNodeCode" : "b7bbb571-06de-455c-8083-f83c07bf0b99",
|
||||
@ -25,8 +25,8 @@
|
||||
"nodeName" : "申请人",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "520,220|520,220",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "b7bbb571-06de-455c-8083-f83c07bf0b99",
|
||||
"nextNodeCode" : "84d7ed24-bb44-4ba1-bf1f-e6f5092d3f0a",
|
||||
@ -38,8 +38,8 @@
|
||||
"nodeCode" : "84d7ed24-bb44-4ba1-bf1f-e6f5092d3f0a",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "680,220",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "84d7ed24-bb44-4ba1-bf1f-e6f5092d3f0a",
|
||||
"nextNodeCode" : "4b7743cd-940c-431b-926f-e7b614fbf1fe",
|
||||
@ -58,8 +58,8 @@
|
||||
"permissionFlag" : "role:1",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "800,140|800,140",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "4b7743cd-940c-431b-926f-e7b614fbf1fe",
|
||||
"nextNodeCode" : "b66b6563-f9fe-41cc-a782-f7837bb6f3d2",
|
||||
@ -71,8 +71,8 @@
|
||||
"nodeCode" : "b66b6563-f9fe-41cc-a782-f7837bb6f3d2",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "920,220",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "b66b6563-f9fe-41cc-a782-f7837bb6f3d2",
|
||||
"nextNodeCode" : "23e7429e-2b47-4431-b93e-40db7c431ce6",
|
||||
@ -86,8 +86,8 @@
|
||||
"permissionFlag" : "1",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "1040,220|1040,220",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "23e7429e-2b47-4431-b93e-40db7c431ce6",
|
||||
"nextNodeCode" : "f5ace37f-5a5e-4e64-a6f6-913ab9a71cd1",
|
||||
@ -100,8 +100,8 @@
|
||||
"nodeName" : "结束",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "1160,220|1160,220",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N"
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]"
|
||||
}, {
|
||||
"nodeType" : 1,
|
||||
"nodeCode" : "762cb975-37d8-4276-b6db-79a4c3606394",
|
||||
@ -109,8 +109,8 @@
|
||||
"permissionFlag" : "role:3,role:4",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "800,300|800,300",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "762cb975-37d8-4276-b6db-79a4c3606394",
|
||||
"nextNodeCode" : "b66b6563-f9fe-41cc-a782-f7837bb6f3d2",
|
||||
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
"flowCode" : "leave4",
|
||||
"flowName" : "请假申请-会签",
|
||||
"category" : "1",
|
||||
"category" : "100",
|
||||
"version" : "1",
|
||||
"formCustom" : "N",
|
||||
"formPath" : "/workflow/leaveEdit/index",
|
||||
@ -11,8 +11,8 @@
|
||||
"nodeName" : "开始",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "320,240|320,240",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "9ce8bf00-f25b-4fc6-91b8-827082fc4876",
|
||||
"nextNodeCode" : "e90b98ef-35b4-410c-a663-bae8b7624b9f",
|
||||
@ -25,8 +25,8 @@
|
||||
"nodeName" : "申请人",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "460,240|460,240",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "e90b98ef-35b4-410c-a663-bae8b7624b9f",
|
||||
"nextNodeCode" : "768b5b1a-6726-4d67-8853-4cc70d5b1045",
|
||||
@ -40,8 +40,8 @@
|
||||
"permissionFlag" : "${userList}",
|
||||
"nodeRatio" : 60.000,
|
||||
"coordinate" : "640,240|640,240",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "768b5b1a-6726-4d67-8853-4cc70d5b1045",
|
||||
"nextNodeCode" : "2f9f2e21-9bcf-42a3-a07c-13037aad22d1",
|
||||
@ -55,8 +55,8 @@
|
||||
"permissionFlag" : "role:1,role:3",
|
||||
"nodeRatio" : 100.000,
|
||||
"coordinate" : "820,240|820,240",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "2f9f2e21-9bcf-42a3-a07c-13037aad22d1",
|
||||
"nextNodeCode" : "27461e01-3d9f-4530-8fe3-bd5ec7f9571f",
|
||||
@ -70,8 +70,8 @@
|
||||
"permissionFlag" : "1",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "1000,240|1000,240",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "27461e01-3d9f-4530-8fe3-bd5ec7f9571f",
|
||||
"nextNodeCode" : "b62b88c3-8d8d-4969-911e-2aaea219e7fc",
|
||||
@ -84,7 +84,7 @@
|
||||
"nodeName" : "结束",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "1120,240|1120,240",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N"
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]"
|
||||
} ]
|
||||
}
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
"flowCode" : "leave5",
|
||||
"flowName" : "请假申请-并行会签网关",
|
||||
"category" : "1",
|
||||
"category" : "100",
|
||||
"version" : "1",
|
||||
"formCustom" : "N",
|
||||
"formPath" : "/workflow/leaveEdit/index",
|
||||
@ -11,8 +11,8 @@
|
||||
"nodeName" : "开始",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "300,220|300,220",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "ebebaf26-9cb6-497e-8119-4c9fed4c597c",
|
||||
"nextNodeCode" : "e1b04e96-dc81-4858-a309-2fe945d2f374",
|
||||
@ -25,8 +25,8 @@
|
||||
"nodeName" : "申请人",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "420,220|420,220",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "e1b04e96-dc81-4858-a309-2fe945d2f374",
|
||||
"nextNodeCode" : "3e743f4f-51ca-41d4-8e94-21f5dd9b59c9",
|
||||
@ -38,8 +38,8 @@
|
||||
"nodeCode" : "3e743f4f-51ca-41d4-8e94-21f5dd9b59c9",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "560,220",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "3e743f4f-51ca-41d4-8e94-21f5dd9b59c9",
|
||||
"nextNodeCode" : "c80f273e-1f17-4bd8-9ad1-04a4a94ea862",
|
||||
@ -58,8 +58,8 @@
|
||||
"permissionFlag" : "role:1,role:3",
|
||||
"nodeRatio" : 100.000,
|
||||
"coordinate" : "700,320|700,320",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "c80f273e-1f17-4bd8-9ad1-04a4a94ea862",
|
||||
"nextNodeCode" : "1a20169e-3d82-4926-a151-e2daad28de1b",
|
||||
@ -71,8 +71,8 @@
|
||||
"nodeCode" : "1a20169e-3d82-4926-a151-e2daad28de1b",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "860,220",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "1a20169e-3d82-4926-a151-e2daad28de1b",
|
||||
"nextNodeCode" : "7a8f0473-e409-442e-a843-5c2b813d00e9",
|
||||
@ -86,8 +86,8 @@
|
||||
"permissionFlag" : "1",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "1000,220|1000,220",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "7a8f0473-e409-442e-a843-5c2b813d00e9",
|
||||
"nextNodeCode" : "03c4d2bc-58b5-4408-a2e4-65afb046f169",
|
||||
@ -100,8 +100,8 @@
|
||||
"nodeName" : "结束",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "1140,220|1140,220",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N"
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]"
|
||||
}, {
|
||||
"nodeType" : 1,
|
||||
"nodeCode" : "1e3e8d3b-18ae-4d6c-a814-ce0d724adfa4",
|
||||
@ -109,8 +109,8 @@
|
||||
"permissionFlag" : "${userList}",
|
||||
"nodeRatio" : 60.000,
|
||||
"coordinate" : "700,120|700,120",
|
||||
"skipAnyNode" : "N",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "1e3e8d3b-18ae-4d6c-a814-ce0d724adfa4",
|
||||
"nextNodeCode" : "1a20169e-3d82-4926-a151-e2daad28de1b",
|
||||
|
@ -2,7 +2,7 @@
|
||||
"flowCode" : "leave6",
|
||||
"flowName" : "请假申请-排他并行会签",
|
||||
"category" : "100",
|
||||
"version" : "4",
|
||||
"version" : "1",
|
||||
"formCustom" : "N",
|
||||
"formPath" : "/workflow/leaveEdit/index",
|
||||
"nodeList" : [ {
|
||||
@ -25,7 +25,8 @@
|
||||
"nodeName" : "申请人",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "400,300|400,300",
|
||||
"ext" : "[{\"code\":\"enum:org.dromara.workflow.common.enums.ButtonPermissionEnum\",\"value\":\"back,termination\"}]",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[{\"code\":\"ButtonPermissionEnum\",\"value\":\"back,termination\"}]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "c25a0e86-fdd1-4f03-8e22-14db70389dbd",
|
||||
"nextNodeCode" : "07ecda1d-7a0a-47b5-8a91-6186c9473742",
|
||||
@ -39,7 +40,8 @@
|
||||
"permissionFlag" : "role:1@@role:3@@role:4",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "860,200|860,200",
|
||||
"ext" : "[{\"code\":\"enum:org.dromara.workflow.common.enums.ButtonPermissionEnum\",\"value\":\"back,termination\"}]",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[{\"code\":\"ButtonPermissionEnum\",\"value\":\"back,termination\"}]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "2bfa3919-78cf-4bc1-b59b-df463a4546f9",
|
||||
"nextNodeCode" : "394e1cc8-b8b2-4189-9f81-44448e88ac32",
|
||||
@ -54,7 +56,7 @@
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "860,400|860,400",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[{\"code\":\"enum:org.dromara.workflow.common.enums.ButtonPermissionEnum\",\"value\":\"back,termination\"}]",
|
||||
"ext" : "[{\"code\":\"ButtonPermissionEnum\",\"value\":\"back,termination\"}]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "ec17f60e-94e0-4d96-a3ce-3417e9d32d60",
|
||||
"nextNodeCode" : "394e1cc8-b8b2-4189-9f81-44448e88ac32",
|
||||
@ -68,7 +70,8 @@
|
||||
"permissionFlag" : "1",
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "560,300|560,300",
|
||||
"ext" : "[{\"code\":\"enum:org.dromara.workflow.common.enums.ButtonPermissionEnum\",\"value\":\"back,termination,copy,trust,transfer\"}]",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[{\"code\":\"ButtonPermissionEnum\",\"value\":\"back,termination,transfer,copy,pop\"}]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "07ecda1d-7a0a-47b5-8a91-6186c9473742",
|
||||
"nextNodeCode" : "48117e2c-6328-406b-b102-c4a9d115bb13",
|
||||
@ -117,7 +120,7 @@
|
||||
"nodeRatio" : 100.000,
|
||||
"coordinate" : "1180,300|1180,300",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[{\"code\":\"enum:org.dromara.workflow.common.enums.ButtonPermissionEnum\",\"value\":\"back,termination,pop,addSign,subSign\"}]",
|
||||
"ext" : "[{\"code\":\"ButtonPermissionEnum\",\"value\":\"back,termination,pop,addSign,subSign\"}]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "9c93a195-cff2-4e17-ab0a-a4f264191496",
|
||||
"nextNodeCode" : "a1a42056-afd1-4e90-88bc-36cbf5a66992",
|
||||
@ -150,7 +153,7 @@
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "1480,200|1480,200",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[{\"code\":\"enum:org.dromara.workflow.common.enums.ButtonPermissionEnum\",\"value\":\"back,termination\"}]",
|
||||
"ext" : "[{\"code\":\"ButtonPermissionEnum\",\"value\":\"back,termination\"}]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "350dfa0c-a77c-4efa-8527-10efa02d8be4",
|
||||
"nextNodeCode" : "c36a46ef-04f9-463f-bad7-4b395c818519",
|
||||
@ -165,7 +168,7 @@
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "1480,400|1480,400",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[{\"code\":\"enum:org.dromara.workflow.common.enums.ButtonPermissionEnum\",\"value\":\"back,termination\"}]",
|
||||
"ext" : "[{\"code\":\"ButtonPermissionEnum\",\"value\":\"back,termination\"}]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "fcfdd9f6-f526-4c1a-b71d-88afa31aebc5",
|
||||
"nextNodeCode" : "c36a46ef-04f9-463f-bad7-4b395c818519",
|
||||
@ -193,7 +196,7 @@
|
||||
"nodeRatio" : 0.000,
|
||||
"coordinate" : "1820,300|1820,300",
|
||||
"formCustom" : "N",
|
||||
"ext" : "[{\"code\":\"enum:org.dromara.workflow.common.enums.ButtonPermissionEnum\",\"value\":\"back,termination\"}]",
|
||||
"ext" : "[{\"code\":\"ButtonPermissionEnum\",\"value\":\"back,termination\"}]",
|
||||
"skipList" : [ {
|
||||
"nowNodeCode" : "3fcea762-b53a-4ae1-8365-7bec90444828",
|
||||
"nextNodeCode" : "9cfbfd3e-6c04-41d6-9fc2-6787a7d2cd31",
|
||||
@ -209,4 +212,4 @@
|
||||
"formCustom" : "N",
|
||||
"ext" : "[]"
|
||||
} ]
|
||||
}
|
||||
}
|
||||
|
@ -1,8 +1,9 @@
|
||||
|
||||
/*
|
||||
SnailJob Database Transfer Tool
|
||||
Source Server Type : MySQL
|
||||
Target Server Type : Oracle
|
||||
Date: 2024-12-27 22:22:15
|
||||
Date: 2025-02-25 22:16:28
|
||||
*/
|
||||
|
||||
|
||||
@ -48,7 +49,6 @@ CREATE TABLE sj_group_config
|
||||
group_partition number NOT NULL,
|
||||
id_generator_mode smallint DEFAULT 1 NOT NULL,
|
||||
init_scene smallint DEFAULT 0 NOT NULL,
|
||||
bucket_index number DEFAULT 0 NOT NULL,
|
||||
create_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL,
|
||||
update_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL
|
||||
);
|
||||
@ -68,13 +68,12 @@ COMMENT ON COLUMN sj_group_config.version IS '版本号';
|
||||
COMMENT ON COLUMN sj_group_config.group_partition IS '分区';
|
||||
COMMENT ON COLUMN sj_group_config.id_generator_mode IS '唯一id生成模式 默认号段模式';
|
||||
COMMENT ON COLUMN sj_group_config.init_scene IS '是否初始化场景 0:否 1:是';
|
||||
COMMENT ON COLUMN sj_group_config.bucket_index IS 'bucket';
|
||||
COMMENT ON COLUMN sj_group_config.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_group_config.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_group_config IS '组配置';
|
||||
|
||||
INSERT INTO sj_group_config (namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, bucket_index, create_dt, update_dt) VALUES ('dev', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, 4, sysdate, sysdate);
|
||||
INSERT INTO sj_group_config (namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, bucket_index, create_dt, update_dt) VALUES ('prod', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, 4, sysdate, sysdate);
|
||||
INSERT INTO sj_group_config (namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, create_dt, update_dt) VALUES ('dev', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, sysdate, sysdate);
|
||||
INSERT INTO sj_group_config (namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, create_dt, update_dt) VALUES ('prod', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, sysdate, sysdate);
|
||||
|
||||
-- sj_notify_config
|
||||
CREATE TABLE sj_notify_config
|
||||
@ -144,12 +143,11 @@ COMMENT ON COLUMN sj_notify_recipient.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_notify_recipient.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_notify_recipient IS '告警通知接收人';
|
||||
|
||||
-- sj_retry_dead_letter_0
|
||||
CREATE TABLE sj_retry_dead_letter_0
|
||||
-- sj_retry_dead_letter
|
||||
CREATE TABLE sj_retry_dead_letter
|
||||
(
|
||||
id number GENERATED ALWAYS AS IDENTITY,
|
||||
namespace_id varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
|
||||
unique_id varchar2(64) NULL,
|
||||
group_name varchar2(64) NULL,
|
||||
scene_name varchar2(64) NULL,
|
||||
idempotent_id varchar2(64) NULL,
|
||||
@ -157,40 +155,34 @@ CREATE TABLE sj_retry_dead_letter_0
|
||||
executor_name varchar2(512) DEFAULT '' NULL,
|
||||
args_str clob NULL,
|
||||
ext_attrs clob NULL,
|
||||
task_type smallint DEFAULT 1 NOT NULL,
|
||||
create_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL
|
||||
);
|
||||
|
||||
ALTER TABLE sj_retry_dead_letter_0
|
||||
ADD CONSTRAINT pk_sj_retry_dead_letter_0 PRIMARY KEY (id);
|
||||
ALTER TABLE sj_retry_dead_letter
|
||||
ADD CONSTRAINT pk_sj_retry_dead_letter PRIMARY KEY (id);
|
||||
|
||||
CREATE UNIQUE INDEX uk_sj_retry_dead_letter_0_01 ON sj_retry_dead_letter_0 (namespace_id, group_name, unique_id);
|
||||
CREATE INDEX idx_sj_retry_dead_letter_01 ON sj_retry_dead_letter (namespace_id, group_name, scene_name);
|
||||
CREATE INDEX idx_sj_retry_dead_letter_02 ON sj_retry_dead_letter (idempotent_id);
|
||||
CREATE INDEX idx_sj_retry_dead_letter_03 ON sj_retry_dead_letter (biz_no);
|
||||
CREATE INDEX idx_sj_retry_dead_letter_04 ON sj_retry_dead_letter (create_dt);
|
||||
|
||||
CREATE INDEX idx_sj_retry_dead_letter_0_01 ON sj_retry_dead_letter_0 (namespace_id, group_name, scene_name);
|
||||
CREATE INDEX idx_sj_retry_dead_letter_0_02 ON sj_retry_dead_letter_0 (idempotent_id);
|
||||
CREATE INDEX idx_sj_retry_dead_letter_0_03 ON sj_retry_dead_letter_0 (biz_no);
|
||||
CREATE INDEX idx_sj_retry_dead_letter_0_04 ON sj_retry_dead_letter_0 (create_dt);
|
||||
COMMENT ON COLUMN sj_retry_dead_letter.id IS '主键';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter.scene_name IS '场景名称';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter.idempotent_id IS '幂等id';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter.biz_no IS '业务编号';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter.executor_name IS '执行器名称';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter.args_str IS '执行方法参数';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter.ext_attrs IS '扩展字段';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter.create_dt IS '创建时间';
|
||||
COMMENT ON TABLE sj_retry_dead_letter IS '死信队列表';
|
||||
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.id IS '主键';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.unique_id IS '同组下id唯一';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.scene_name IS '场景名称';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.idempotent_id IS '幂等id';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.biz_no IS '业务编号';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.executor_name IS '执行器名称';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.args_str IS '执行方法参数';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.ext_attrs IS '扩展字段';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.task_type IS '任务类型 1、重试数据 2、回调数据';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.create_dt IS '创建时间';
|
||||
COMMENT ON TABLE sj_retry_dead_letter_0 IS '死信队列表';
|
||||
|
||||
-- sj_retry_task_0
|
||||
CREATE TABLE sj_retry_task_0
|
||||
-- sj_retry
|
||||
CREATE TABLE sj_retry
|
||||
(
|
||||
id number GENERATED ALWAYS AS IDENTITY,
|
||||
namespace_id varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
|
||||
unique_id varchar2(64) NULL,
|
||||
group_name varchar2(64) NULL,
|
||||
scene_name varchar2(64) NULL,
|
||||
idempotent_id varchar2(64) NULL,
|
||||
@ -198,112 +190,113 @@ CREATE TABLE sj_retry_task_0
|
||||
executor_name varchar2(512) DEFAULT '' NULL,
|
||||
args_str clob NULL,
|
||||
ext_attrs clob NULL,
|
||||
next_trigger_at date NOT NULL,
|
||||
next_trigger_at number NOT NULL,
|
||||
retry_count number DEFAULT 0 NOT NULL,
|
||||
retry_status smallint DEFAULT 0 NOT NULL,
|
||||
task_type smallint DEFAULT 1 NOT NULL,
|
||||
bucket_index number DEFAULT 0 NOT NULL,
|
||||
parent_id number DEFAULT 0 NOT NULL,
|
||||
deleted number DEFAULT 0 NOT NULL,
|
||||
create_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL,
|
||||
update_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL
|
||||
);
|
||||
|
||||
ALTER TABLE sj_retry_task_0
|
||||
ADD CONSTRAINT pk_sj_retry_task_0 PRIMARY KEY (id);
|
||||
ALTER TABLE sj_retry
|
||||
ADD CONSTRAINT pk_sj_retry PRIMARY KEY (id);
|
||||
|
||||
CREATE UNIQUE INDEX uk_sj_retry_task_0_01 ON sj_retry_task_0 (namespace_id, group_name, unique_id);
|
||||
CREATE UNIQUE INDEX uk_sj_retry_01 ON sj_retry (namespace_id, group_name, task_type, idempotent_id, deleted);
|
||||
|
||||
CREATE INDEX idx_sj_retry_task_0_01 ON sj_retry_task_0 (namespace_id, group_name, scene_name);
|
||||
CREATE INDEX idx_sj_retry_task_0_02 ON sj_retry_task_0 (namespace_id, group_name, task_type);
|
||||
CREATE INDEX idx_sj_retry_task_0_03 ON sj_retry_task_0 (namespace_id, group_name, retry_status);
|
||||
CREATE INDEX idx_sj_retry_task_0_04 ON sj_retry_task_0 (idempotent_id);
|
||||
CREATE INDEX idx_sj_retry_task_0_05 ON sj_retry_task_0 (biz_no);
|
||||
CREATE INDEX idx_sj_retry_task_0_06 ON sj_retry_task_0 (create_dt);
|
||||
CREATE INDEX idx_sj_retry_01 ON sj_retry (namespace_id, group_name, scene_name);
|
||||
CREATE INDEX idx_sj_retry_02 ON sj_retry (namespace_id, group_name, retry_status);
|
||||
CREATE INDEX idx_sj_retry_03 ON sj_retry (idempotent_id);
|
||||
CREATE INDEX idx_sj_retry_04 ON sj_retry (biz_no);
|
||||
CREATE INDEX idx_sj_retry_05 ON sj_retry (parent_id);
|
||||
CREATE INDEX idx_sj_retry_06 ON sj_retry (create_dt);
|
||||
|
||||
COMMENT ON COLUMN sj_retry_task_0.id IS '主键';
|
||||
COMMENT ON COLUMN sj_retry_task_0.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_retry_task_0.unique_id IS '同组下id唯一';
|
||||
COMMENT ON COLUMN sj_retry_task_0.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_retry_task_0.scene_name IS '场景名称';
|
||||
COMMENT ON COLUMN sj_retry_task_0.idempotent_id IS '幂等id';
|
||||
COMMENT ON COLUMN sj_retry_task_0.biz_no IS '业务编号';
|
||||
COMMENT ON COLUMN sj_retry_task_0.executor_name IS '执行器名称';
|
||||
COMMENT ON COLUMN sj_retry_task_0.args_str IS '执行方法参数';
|
||||
COMMENT ON COLUMN sj_retry_task_0.ext_attrs IS '扩展字段';
|
||||
COMMENT ON COLUMN sj_retry_task_0.next_trigger_at IS '下次触发时间';
|
||||
COMMENT ON COLUMN sj_retry_task_0.retry_count IS '重试次数';
|
||||
COMMENT ON COLUMN sj_retry_task_0.retry_status IS '重试状态 0、重试中 1、成功 2、最大重试次数';
|
||||
COMMENT ON COLUMN sj_retry_task_0.task_type IS '任务类型 1、重试数据 2、回调数据';
|
||||
COMMENT ON COLUMN sj_retry_task_0.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_retry_task_0.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_retry_task_0 IS '任务表';
|
||||
COMMENT ON COLUMN sj_retry.id IS '主键';
|
||||
COMMENT ON COLUMN sj_retry.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_retry.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_retry.scene_name IS '场景名称';
|
||||
COMMENT ON COLUMN sj_retry.idempotent_id IS '幂等id';
|
||||
COMMENT ON COLUMN sj_retry.biz_no IS '业务编号';
|
||||
COMMENT ON COLUMN sj_retry.executor_name IS '执行器名称';
|
||||
COMMENT ON COLUMN sj_retry.args_str IS '执行方法参数';
|
||||
COMMENT ON COLUMN sj_retry.ext_attrs IS '扩展字段';
|
||||
COMMENT ON COLUMN sj_retry.next_trigger_at IS '下次触发时间';
|
||||
COMMENT ON COLUMN sj_retry.retry_count IS '重试次数';
|
||||
COMMENT ON COLUMN sj_retry.retry_status IS '重试状态 0、重试中 1、成功 2、最大重试次数';
|
||||
COMMENT ON COLUMN sj_retry.task_type IS '任务类型 1、重试数据 2、回调数据';
|
||||
COMMENT ON COLUMN sj_retry.bucket_index IS 'bucket';
|
||||
COMMENT ON COLUMN sj_retry.parent_id IS '父节点id';
|
||||
COMMENT ON COLUMN sj_retry.deleted IS '逻辑删除';
|
||||
COMMENT ON COLUMN sj_retry.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_retry.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_retry IS '重试信息表';
|
||||
|
||||
-- sj_retry_task_log
|
||||
CREATE TABLE sj_retry_task_log
|
||||
-- sj_retry_task
|
||||
CREATE TABLE sj_retry_task
|
||||
(
|
||||
id number GENERATED ALWAYS AS IDENTITY,
|
||||
namespace_id varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
|
||||
unique_id varchar2(64) NULL,
|
||||
group_name varchar2(64) NULL,
|
||||
scene_name varchar2(64) NULL,
|
||||
idempotent_id varchar2(64) NULL,
|
||||
biz_no varchar2(64) DEFAULT '' NULL,
|
||||
executor_name varchar2(512) DEFAULT '' NULL,
|
||||
args_str clob NULL,
|
||||
ext_attrs clob NULL,
|
||||
retry_status smallint DEFAULT 0 NOT NULL,
|
||||
task_type smallint DEFAULT 1 NOT NULL,
|
||||
create_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL,
|
||||
update_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL
|
||||
id number GENERATED ALWAYS AS IDENTITY,
|
||||
namespace_id varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
|
||||
group_name varchar2(64) NULL,
|
||||
scene_name varchar2(64) NULL,
|
||||
retry_id number NOT NULL,
|
||||
ext_attrs clob NULL,
|
||||
task_status smallint DEFAULT 1 NOT NULL,
|
||||
task_type smallint DEFAULT 1 NOT NULL,
|
||||
operation_reason smallint DEFAULT 0 NOT NULL,
|
||||
client_info varchar2(128) DEFAULT NULL NULL,
|
||||
create_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL,
|
||||
update_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL
|
||||
);
|
||||
|
||||
ALTER TABLE sj_retry_task_log
|
||||
ADD CONSTRAINT pk_sj_retry_task_log PRIMARY KEY (id);
|
||||
ALTER TABLE sj_retry_task
|
||||
ADD CONSTRAINT pk_sj_retry_task PRIMARY KEY (id);
|
||||
|
||||
CREATE INDEX idx_sj_retry_task_log_01 ON sj_retry_task_log (namespace_id, group_name, scene_name);
|
||||
CREATE INDEX idx_sj_retry_task_log_02 ON sj_retry_task_log (retry_status);
|
||||
CREATE INDEX idx_sj_retry_task_log_03 ON sj_retry_task_log (idempotent_id);
|
||||
CREATE INDEX idx_sj_retry_task_log_04 ON sj_retry_task_log (unique_id);
|
||||
CREATE INDEX idx_sj_retry_task_log_05 ON sj_retry_task_log (biz_no);
|
||||
CREATE INDEX idx_sj_retry_task_log_06 ON sj_retry_task_log (create_dt);
|
||||
CREATE INDEX idx_sj_retry_task_01 ON sj_retry_task (namespace_id, group_name, scene_name);
|
||||
CREATE INDEX idx_sj_retry_task_02 ON sj_retry_task (task_status);
|
||||
CREATE INDEX idx_sj_retry_task_03 ON sj_retry_task (create_dt);
|
||||
CREATE INDEX idx_sj_retry_task_04 ON sj_retry_task (retry_id);
|
||||
|
||||
COMMENT ON COLUMN sj_retry_task_log.id IS '主键';
|
||||
COMMENT ON COLUMN sj_retry_task_log.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_retry_task_log.unique_id IS '同组下id唯一';
|
||||
COMMENT ON COLUMN sj_retry_task_log.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_retry_task_log.scene_name IS '场景名称';
|
||||
COMMENT ON COLUMN sj_retry_task_log.idempotent_id IS '幂等id';
|
||||
COMMENT ON COLUMN sj_retry_task_log.biz_no IS '业务编号';
|
||||
COMMENT ON COLUMN sj_retry_task_log.executor_name IS '执行器名称';
|
||||
COMMENT ON COLUMN sj_retry_task_log.args_str IS '执行方法参数';
|
||||
COMMENT ON COLUMN sj_retry_task_log.ext_attrs IS '扩展字段';
|
||||
COMMENT ON COLUMN sj_retry_task_log.retry_status IS '重试状态 0、重试中 1、成功 2、最大次数';
|
||||
COMMENT ON COLUMN sj_retry_task_log.task_type IS '任务类型 1、重试数据 2、回调数据';
|
||||
COMMENT ON COLUMN sj_retry_task_log.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_retry_task_log.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_retry_task_log IS '任务日志基础信息表';
|
||||
COMMENT ON COLUMN sj_retry_task.id IS '主键';
|
||||
COMMENT ON COLUMN sj_retry_task.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_retry_task.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_retry_task.scene_name IS '场景名称';
|
||||
COMMENT ON COLUMN sj_retry_task.retry_id IS '重试信息Id';
|
||||
COMMENT ON COLUMN sj_retry_task.ext_attrs IS '扩展字段';
|
||||
COMMENT ON COLUMN sj_retry_task.task_status IS '重试状态';
|
||||
COMMENT ON COLUMN sj_retry_task.task_type IS '任务类型 1、重试数据 2、回调数据';
|
||||
COMMENT ON COLUMN sj_retry_task.operation_reason IS '操作原因';
|
||||
COMMENT ON COLUMN sj_retry_task.client_info IS '客户端地址 clientId#ip:port';
|
||||
COMMENT ON COLUMN sj_retry_task.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_retry_task.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_retry_task IS '重试任务表';
|
||||
|
||||
-- sj_retry_task_log_message
|
||||
CREATE TABLE sj_retry_task_log_message
|
||||
(
|
||||
id number GENERATED ALWAYS AS IDENTITY,
|
||||
namespace_id varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
|
||||
group_name varchar2(64) NULL,
|
||||
unique_id varchar2(64) NULL,
|
||||
message clob NULL,
|
||||
log_num number DEFAULT 1 NOT NULL,
|
||||
real_time number DEFAULT 0 NOT NULL,
|
||||
create_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL
|
||||
id number GENERATED ALWAYS AS IDENTITY,
|
||||
namespace_id varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
|
||||
group_name varchar2(64) NULL,
|
||||
retry_id number NOT NULL,
|
||||
retry_task_id number NOT NULL,
|
||||
message clob NULL,
|
||||
log_num number DEFAULT 1 NOT NULL,
|
||||
real_time number DEFAULT 0 NOT NULL,
|
||||
create_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL
|
||||
);
|
||||
|
||||
ALTER TABLE sj_retry_task_log_message
|
||||
ADD CONSTRAINT pk_sj_retry_task_log_message PRIMARY KEY (id);
|
||||
|
||||
CREATE INDEX idx_sj_rt_log_message_01 ON sj_retry_task_log_message (namespace_id, group_name, unique_id);
|
||||
CREATE INDEX idx_sj_rt_log_message_01 ON sj_retry_task_log_message (namespace_id, group_name, retry_task_id);
|
||||
CREATE INDEX idx_sj_rt_log_message_02 ON sj_retry_task_log_message (create_dt);
|
||||
|
||||
COMMENT ON COLUMN sj_retry_task_log_message.id IS '主键';
|
||||
COMMENT ON COLUMN sj_retry_task_log_message.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_retry_task_log_message.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_retry_task_log_message.unique_id IS '同组下id唯一';
|
||||
COMMENT ON COLUMN sj_retry_task_log_message.retry_id IS '重试信息Id';
|
||||
COMMENT ON COLUMN sj_retry_task_log_message.retry_task_id IS '重试任务Id';
|
||||
COMMENT ON COLUMN sj_retry_task_log_message.message IS '异常信息';
|
||||
COMMENT ON COLUMN sj_retry_task_log_message.log_num IS '日志数量';
|
||||
COMMENT ON COLUMN sj_retry_task_log_message.real_time IS '上报时间';
|
||||
@ -313,21 +306,26 @@ COMMENT ON TABLE sj_retry_task_log_message IS '任务调度日志信息记录表
|
||||
-- sj_retry_scene_config
|
||||
CREATE TABLE sj_retry_scene_config
|
||||
(
|
||||
id number GENERATED ALWAYS AS IDENTITY,
|
||||
namespace_id varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
|
||||
scene_name varchar2(64) NULL,
|
||||
group_name varchar2(64) NULL,
|
||||
scene_status smallint DEFAULT 0 NOT NULL,
|
||||
max_retry_count number DEFAULT 5 NOT NULL,
|
||||
back_off smallint DEFAULT 1 NOT NULL,
|
||||
trigger_interval varchar2(16) DEFAULT '' NULL,
|
||||
notify_ids varchar2(128) DEFAULT '' NULL,
|
||||
deadline_request number DEFAULT 60000 NOT NULL,
|
||||
executor_timeout number DEFAULT 5 NOT NULL,
|
||||
route_key smallint DEFAULT 4 NOT NULL,
|
||||
description varchar2(256) DEFAULT '' NULL,
|
||||
create_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL,
|
||||
update_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL
|
||||
id number GENERATED ALWAYS AS IDENTITY,
|
||||
namespace_id varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
|
||||
scene_name varchar2(64) NULL,
|
||||
group_name varchar2(64) NULL,
|
||||
scene_status smallint DEFAULT 0 NOT NULL,
|
||||
max_retry_count number DEFAULT 5 NOT NULL,
|
||||
back_off smallint DEFAULT 1 NOT NULL,
|
||||
trigger_interval varchar2(16) DEFAULT '' NULL,
|
||||
notify_ids varchar2(128) DEFAULT '' NULL,
|
||||
deadline_request number DEFAULT 60000 NOT NULL,
|
||||
executor_timeout number DEFAULT 5 NOT NULL,
|
||||
route_key smallint DEFAULT 4 NOT NULL,
|
||||
block_strategy smallint DEFAULT 1 NOT NULL,
|
||||
cb_status smallint DEFAULT 0 NOT NULL,
|
||||
cb_trigger_type smallint DEFAULT 1 NOT NULL,
|
||||
cb_max_count number DEFAULT 16 NOT NULL,
|
||||
cb_trigger_interval varchar2(16) DEFAULT '' NULL,
|
||||
description varchar2(256) DEFAULT '' NULL,
|
||||
create_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL,
|
||||
update_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL
|
||||
);
|
||||
|
||||
ALTER TABLE sj_retry_scene_config
|
||||
@ -347,6 +345,11 @@ COMMENT ON COLUMN sj_retry_scene_config.notify_ids IS '通知告警场景配置i
|
||||
COMMENT ON COLUMN sj_retry_scene_config.deadline_request IS 'Deadline Request 调用链超时 单位毫秒';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.executor_timeout IS '任务执行超时时间,单位秒';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.route_key IS '路由策略';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.cb_status IS '回调状态 0、不开启 1、开启';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.cb_trigger_type IS '1、默认等级 2、固定间隔时间 3、CRON 表达式';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.cb_max_count IS '回调的最大执行次数';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.cb_trigger_interval IS '回调的最大执行次数';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.description IS '描述';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.update_dt IS '修改时间';
|
||||
@ -538,11 +541,11 @@ COMMENT ON COLUMN sj_job.executor_type IS '执行器类型';
|
||||
COMMENT ON COLUMN sj_job.executor_info IS '执行器名称';
|
||||
COMMENT ON COLUMN sj_job.trigger_type IS '触发类型 1.CRON 表达式 2. 固定时间';
|
||||
COMMENT ON COLUMN sj_job.trigger_interval IS '间隔时长';
|
||||
COMMENT ON COLUMN sj_job.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行';
|
||||
COMMENT ON COLUMN sj_job.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行 4、恢复';
|
||||
COMMENT ON COLUMN sj_job.executor_timeout IS '任务执行超时时间,单位秒';
|
||||
COMMENT ON COLUMN sj_job.max_retry_times IS '最大重试次数';
|
||||
COMMENT ON COLUMN sj_job.parallel_num IS '并行数';
|
||||
COMMENT ON COLUMN sj_job.retry_interval IS '重试间隔 ( s ) ';
|
||||
COMMENT ON COLUMN sj_job.retry_interval IS '重试间隔 ( s)';
|
||||
COMMENT ON COLUMN sj_job.bucket_index IS 'bucket';
|
||||
COMMENT ON COLUMN sj_job.resident IS '是否是常驻任务';
|
||||
COMMENT ON COLUMN sj_job.notify_ids IS '通知告警场景配置id列表';
|
||||
@ -721,7 +724,7 @@ CREATE INDEX idx_sj_job_summary_01 ON sj_job_summary (namespace_id, group_name,
|
||||
COMMENT ON COLUMN sj_job_summary.id IS '主键';
|
||||
COMMENT ON COLUMN sj_job_summary.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_job_summary.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_job_summary.business_id IS '业务id ( job_id或workflow_id ) ';
|
||||
COMMENT ON COLUMN sj_job_summary.business_id IS '业务id ( job_id或workflow_id)';
|
||||
COMMENT ON COLUMN sj_job_summary.system_task_type IS '任务类型 3、JOB任务 4、WORKFLOW任务';
|
||||
COMMENT ON COLUMN sj_job_summary.trigger_at IS '统计时间';
|
||||
COMMENT ON COLUMN sj_job_summary.success_num IS '执行成功-日志数量';
|
||||
|
@ -278,6 +278,7 @@ comment on column FLOW_USER.DEL_FLAG is '删除标志';
|
||||
comment on column FLOW_USER.TENANT_ID is '租户id';
|
||||
|
||||
create index USER_PROCESSED_TYPE on FLOW_USER (PROCESSED_BY, TYPE);
|
||||
create index USER_ASSOCIATED_IDX on FLOW_USER (ASSOCIATED);
|
||||
|
||||
-- ----------------------------
|
||||
-- 流程分类表
|
||||
|
@ -2,7 +2,7 @@
|
||||
SnailJob Database Transfer Tool
|
||||
Source Server Type : MySQL
|
||||
Target Server Type : PostgreSQL
|
||||
Date: 2024-12-27 22:13:49
|
||||
Date: 2025-02-25 22:15:32
|
||||
*/
|
||||
|
||||
|
||||
@ -45,7 +45,6 @@ CREATE TABLE sj_group_config
|
||||
group_partition int NOT NULL,
|
||||
id_generator_mode smallint NOT NULL DEFAULT 1,
|
||||
init_scene smallint NOT NULL DEFAULT 0,
|
||||
bucket_index int NOT NULL DEFAULT 0,
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
@ -62,13 +61,12 @@ COMMENT ON COLUMN sj_group_config.version IS '版本号';
|
||||
COMMENT ON COLUMN sj_group_config.group_partition IS '分区';
|
||||
COMMENT ON COLUMN sj_group_config.id_generator_mode IS '唯一id生成模式 默认号段模式';
|
||||
COMMENT ON COLUMN sj_group_config.init_scene IS '是否初始化场景 0:否 1:是';
|
||||
COMMENT ON COLUMN sj_group_config.bucket_index IS 'bucket';
|
||||
COMMENT ON COLUMN sj_group_config.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_group_config.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_group_config IS '组配置';
|
||||
|
||||
INSERT INTO sj_group_config VALUES (1, 'dev', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, 4, now(), now());
|
||||
INSERT INTO sj_group_config VALUES (2, 'prod', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, 4, now(), now());
|
||||
INSERT INTO sj_group_config VALUES (1, 'dev', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, now(), now());
|
||||
INSERT INTO sj_group_config VALUES (2, 'prod', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, now(), now());
|
||||
|
||||
-- sj_notify_config
|
||||
CREATE TABLE sj_notify_config
|
||||
@ -132,12 +130,11 @@ COMMENT ON COLUMN sj_notify_recipient.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_notify_recipient.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_notify_recipient IS '告警通知接收人';
|
||||
|
||||
-- sj_retry_dead_letter_0
|
||||
CREATE TABLE sj_retry_dead_letter_0
|
||||
-- sj_retry_dead_letter
|
||||
CREATE TABLE sj_retry_dead_letter
|
||||
(
|
||||
id bigserial PRIMARY KEY,
|
||||
namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
unique_id varchar(64) NOT NULL,
|
||||
group_name varchar(64) NOT NULL,
|
||||
scene_name varchar(64) NOT NULL,
|
||||
idempotent_id varchar(64) NOT NULL,
|
||||
@ -145,37 +142,31 @@ CREATE TABLE sj_retry_dead_letter_0
|
||||
executor_name varchar(512) NOT NULL DEFAULT '',
|
||||
args_str text NOT NULL,
|
||||
ext_attrs text NOT NULL,
|
||||
task_type smallint NOT NULL DEFAULT 1,
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE UNIQUE INDEX uk_sj_retry_dead_letter_0_01 ON sj_retry_dead_letter_0 (namespace_id, group_name, unique_id);
|
||||
CREATE INDEX idx_sj_retry_dead_letter_01 ON sj_retry_dead_letter (namespace_id, group_name, scene_name);
|
||||
CREATE INDEX idx_sj_retry_dead_letter_02 ON sj_retry_dead_letter (idempotent_id);
|
||||
CREATE INDEX idx_sj_retry_dead_letter_03 ON sj_retry_dead_letter (biz_no);
|
||||
CREATE INDEX idx_sj_retry_dead_letter_04 ON sj_retry_dead_letter (create_dt);
|
||||
|
||||
CREATE INDEX idx_sj_retry_dead_letter_0_01 ON sj_retry_dead_letter_0 (namespace_id, group_name, scene_name);
|
||||
CREATE INDEX idx_sj_retry_dead_letter_0_02 ON sj_retry_dead_letter_0 (idempotent_id);
|
||||
CREATE INDEX idx_sj_retry_dead_letter_0_03 ON sj_retry_dead_letter_0 (biz_no);
|
||||
CREATE INDEX idx_sj_retry_dead_letter_0_04 ON sj_retry_dead_letter_0 (create_dt);
|
||||
COMMENT ON COLUMN sj_retry_dead_letter.id IS '主键';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter.scene_name IS '场景名称';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter.idempotent_id IS '幂等id';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter.biz_no IS '业务编号';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter.executor_name IS '执行器名称';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter.args_str IS '执行方法参数';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter.ext_attrs IS '扩展字段';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter.create_dt IS '创建时间';
|
||||
COMMENT ON TABLE sj_retry_dead_letter IS '死信队列表';
|
||||
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.id IS '主键';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.unique_id IS '同组下id唯一';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.scene_name IS '场景名称';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.idempotent_id IS '幂等id';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.biz_no IS '业务编号';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.executor_name IS '执行器名称';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.args_str IS '执行方法参数';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.ext_attrs IS '扩展字段';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.task_type IS '任务类型 1、重试数据 2、回调数据';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.create_dt IS '创建时间';
|
||||
COMMENT ON TABLE sj_retry_dead_letter_0 IS '死信队列表';
|
||||
|
||||
-- sj_retry_task_0
|
||||
CREATE TABLE sj_retry_task_0
|
||||
-- sj_retry
|
||||
CREATE TABLE sj_retry
|
||||
(
|
||||
id bigserial PRIMARY KEY,
|
||||
namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
unique_id varchar(64) NOT NULL,
|
||||
group_name varchar(64) NOT NULL,
|
||||
scene_name varchar(64) NOT NULL,
|
||||
idempotent_id varchar(64) NOT NULL,
|
||||
@ -183,103 +174,104 @@ CREATE TABLE sj_retry_task_0
|
||||
executor_name varchar(512) NOT NULL DEFAULT '',
|
||||
args_str text NOT NULL,
|
||||
ext_attrs text NOT NULL,
|
||||
next_trigger_at timestamp NOT NULL,
|
||||
next_trigger_at bigint NOT NULL,
|
||||
retry_count int NOT NULL DEFAULT 0,
|
||||
retry_status smallint NOT NULL DEFAULT 0,
|
||||
task_type smallint NOT NULL DEFAULT 1,
|
||||
bucket_index int NOT NULL DEFAULT 0,
|
||||
parent_id bigint NOT NULL DEFAULT 0,
|
||||
deleted bigint NOT NULL DEFAULT 0,
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE UNIQUE INDEX uk_sj_retry_task_0_01 ON sj_retry_task_0 (namespace_id, group_name, unique_id);
|
||||
CREATE UNIQUE INDEX uk_sj_retry_01 ON sj_retry (namespace_id, group_name, task_type, idempotent_id, deleted);
|
||||
|
||||
CREATE INDEX idx_sj_retry_task_0_01 ON sj_retry_task_0 (namespace_id, group_name, scene_name);
|
||||
CREATE INDEX idx_sj_retry_task_0_02 ON sj_retry_task_0 (namespace_id, group_name, task_type);
|
||||
CREATE INDEX idx_sj_retry_task_0_03 ON sj_retry_task_0 (namespace_id, group_name, retry_status);
|
||||
CREATE INDEX idx_sj_retry_task_0_04 ON sj_retry_task_0 (idempotent_id);
|
||||
CREATE INDEX idx_sj_retry_task_0_05 ON sj_retry_task_0 (biz_no);
|
||||
CREATE INDEX idx_sj_retry_task_0_06 ON sj_retry_task_0 (create_dt);
|
||||
CREATE INDEX idx_sj_retry_01 ON sj_retry (namespace_id, group_name, scene_name);
|
||||
CREATE INDEX idx_sj_retry_02 ON sj_retry (namespace_id, group_name, retry_status);
|
||||
CREATE INDEX idx_sj_retry_03 ON sj_retry (idempotent_id);
|
||||
CREATE INDEX idx_sj_retry_04 ON sj_retry (biz_no);
|
||||
CREATE INDEX idx_sj_retry_05 ON sj_retry (parent_id);
|
||||
CREATE INDEX idx_sj_retry_06 ON sj_retry (create_dt);
|
||||
|
||||
COMMENT ON COLUMN sj_retry_task_0.id IS '主键';
|
||||
COMMENT ON COLUMN sj_retry_task_0.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_retry_task_0.unique_id IS '同组下id唯一';
|
||||
COMMENT ON COLUMN sj_retry_task_0.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_retry_task_0.scene_name IS '场景名称';
|
||||
COMMENT ON COLUMN sj_retry_task_0.idempotent_id IS '幂等id';
|
||||
COMMENT ON COLUMN sj_retry_task_0.biz_no IS '业务编号';
|
||||
COMMENT ON COLUMN sj_retry_task_0.executor_name IS '执行器名称';
|
||||
COMMENT ON COLUMN sj_retry_task_0.args_str IS '执行方法参数';
|
||||
COMMENT ON COLUMN sj_retry_task_0.ext_attrs IS '扩展字段';
|
||||
COMMENT ON COLUMN sj_retry_task_0.next_trigger_at IS '下次触发时间';
|
||||
COMMENT ON COLUMN sj_retry_task_0.retry_count IS '重试次数';
|
||||
COMMENT ON COLUMN sj_retry_task_0.retry_status IS '重试状态 0、重试中 1、成功 2、最大重试次数';
|
||||
COMMENT ON COLUMN sj_retry_task_0.task_type IS '任务类型 1、重试数据 2、回调数据';
|
||||
COMMENT ON COLUMN sj_retry_task_0.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_retry_task_0.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_retry_task_0 IS '任务表';
|
||||
COMMENT ON COLUMN sj_retry.id IS '主键';
|
||||
COMMENT ON COLUMN sj_retry.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_retry.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_retry.scene_name IS '场景名称';
|
||||
COMMENT ON COLUMN sj_retry.idempotent_id IS '幂等id';
|
||||
COMMENT ON COLUMN sj_retry.biz_no IS '业务编号';
|
||||
COMMENT ON COLUMN sj_retry.executor_name IS '执行器名称';
|
||||
COMMENT ON COLUMN sj_retry.args_str IS '执行方法参数';
|
||||
COMMENT ON COLUMN sj_retry.ext_attrs IS '扩展字段';
|
||||
COMMENT ON COLUMN sj_retry.next_trigger_at IS '下次触发时间';
|
||||
COMMENT ON COLUMN sj_retry.retry_count IS '重试次数';
|
||||
COMMENT ON COLUMN sj_retry.retry_status IS '重试状态 0、重试中 1、成功 2、最大重试次数';
|
||||
COMMENT ON COLUMN sj_retry.task_type IS '任务类型 1、重试数据 2、回调数据';
|
||||
COMMENT ON COLUMN sj_retry.bucket_index IS 'bucket';
|
||||
COMMENT ON COLUMN sj_retry.parent_id IS '父节点id';
|
||||
COMMENT ON COLUMN sj_retry.deleted IS '逻辑删除';
|
||||
COMMENT ON COLUMN sj_retry.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_retry.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_retry IS '重试信息表';
|
||||
|
||||
-- sj_retry_task_log
|
||||
CREATE TABLE sj_retry_task_log
|
||||
-- sj_retry_task
|
||||
CREATE TABLE sj_retry_task
|
||||
(
|
||||
id bigserial PRIMARY KEY,
|
||||
namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
unique_id varchar(64) NOT NULL,
|
||||
group_name varchar(64) NOT NULL,
|
||||
scene_name varchar(64) NOT NULL,
|
||||
idempotent_id varchar(64) NOT NULL,
|
||||
biz_no varchar(64) NOT NULL DEFAULT '',
|
||||
executor_name varchar(512) NOT NULL DEFAULT '',
|
||||
args_str text NOT NULL,
|
||||
ext_attrs text NOT NULL,
|
||||
retry_status smallint NOT NULL DEFAULT 0,
|
||||
task_type smallint NOT NULL DEFAULT 1,
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
id bigserial PRIMARY KEY,
|
||||
namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
group_name varchar(64) NOT NULL,
|
||||
scene_name varchar(64) NOT NULL,
|
||||
retry_id bigint NOT NULL,
|
||||
ext_attrs text NOT NULL,
|
||||
task_status smallint NOT NULL DEFAULT 1,
|
||||
task_type smallint NOT NULL DEFAULT 1,
|
||||
operation_reason smallint NOT NULL DEFAULT 0,
|
||||
client_info varchar(128) NULL DEFAULT NULL,
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE INDEX idx_sj_retry_task_log_01 ON sj_retry_task_log (namespace_id, group_name, scene_name);
|
||||
CREATE INDEX idx_sj_retry_task_log_02 ON sj_retry_task_log (retry_status);
|
||||
CREATE INDEX idx_sj_retry_task_log_03 ON sj_retry_task_log (idempotent_id);
|
||||
CREATE INDEX idx_sj_retry_task_log_04 ON sj_retry_task_log (unique_id);
|
||||
CREATE INDEX idx_sj_retry_task_log_05 ON sj_retry_task_log (biz_no);
|
||||
CREATE INDEX idx_sj_retry_task_log_06 ON sj_retry_task_log (create_dt);
|
||||
CREATE INDEX idx_sj_retry_task_01 ON sj_retry_task (namespace_id, group_name, scene_name);
|
||||
CREATE INDEX idx_sj_retry_task_02 ON sj_retry_task (task_status);
|
||||
CREATE INDEX idx_sj_retry_task_03 ON sj_retry_task (create_dt);
|
||||
CREATE INDEX idx_sj_retry_task_04 ON sj_retry_task (retry_id);
|
||||
|
||||
COMMENT ON COLUMN sj_retry_task_log.id IS '主键';
|
||||
COMMENT ON COLUMN sj_retry_task_log.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_retry_task_log.unique_id IS '同组下id唯一';
|
||||
COMMENT ON COLUMN sj_retry_task_log.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_retry_task_log.scene_name IS '场景名称';
|
||||
COMMENT ON COLUMN sj_retry_task_log.idempotent_id IS '幂等id';
|
||||
COMMENT ON COLUMN sj_retry_task_log.biz_no IS '业务编号';
|
||||
COMMENT ON COLUMN sj_retry_task_log.executor_name IS '执行器名称';
|
||||
COMMENT ON COLUMN sj_retry_task_log.args_str IS '执行方法参数';
|
||||
COMMENT ON COLUMN sj_retry_task_log.ext_attrs IS '扩展字段';
|
||||
COMMENT ON COLUMN sj_retry_task_log.retry_status IS '重试状态 0、重试中 1、成功 2、最大次数';
|
||||
COMMENT ON COLUMN sj_retry_task_log.task_type IS '任务类型 1、重试数据 2、回调数据';
|
||||
COMMENT ON COLUMN sj_retry_task_log.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_retry_task_log.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_retry_task_log IS '任务日志基础信息表';
|
||||
COMMENT ON COLUMN sj_retry_task.id IS '主键';
|
||||
COMMENT ON COLUMN sj_retry_task.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_retry_task.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_retry_task.scene_name IS '场景名称';
|
||||
COMMENT ON COLUMN sj_retry_task.retry_id IS '重试信息Id';
|
||||
COMMENT ON COLUMN sj_retry_task.ext_attrs IS '扩展字段';
|
||||
COMMENT ON COLUMN sj_retry_task.task_status IS '重试状态';
|
||||
COMMENT ON COLUMN sj_retry_task.task_type IS '任务类型 1、重试数据 2、回调数据';
|
||||
COMMENT ON COLUMN sj_retry_task.operation_reason IS '操作原因';
|
||||
COMMENT ON COLUMN sj_retry_task.client_info IS '客户端地址 clientId#ip:port';
|
||||
COMMENT ON COLUMN sj_retry_task.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_retry_task.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_retry_task IS '重试任务表';
|
||||
|
||||
-- sj_retry_task_log_message
|
||||
CREATE TABLE sj_retry_task_log_message
|
||||
(
|
||||
id bigserial PRIMARY KEY,
|
||||
namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
group_name varchar(64) NOT NULL,
|
||||
unique_id varchar(64) NOT NULL,
|
||||
message text NOT NULL,
|
||||
log_num int NOT NULL DEFAULT 1,
|
||||
real_time bigint NOT NULL DEFAULT 0,
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
id bigserial PRIMARY KEY,
|
||||
namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
group_name varchar(64) NOT NULL,
|
||||
retry_id bigint NOT NULL,
|
||||
retry_task_id bigint NOT NULL,
|
||||
message text NOT NULL,
|
||||
log_num int NOT NULL DEFAULT 1,
|
||||
real_time bigint NOT NULL DEFAULT 0,
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE INDEX idx_sj_retry_task_log_message_01 ON sj_retry_task_log_message (namespace_id, group_name, unique_id);
|
||||
CREATE INDEX idx_sj_retry_task_log_message_01 ON sj_retry_task_log_message (namespace_id, group_name, retry_task_id);
|
||||
CREATE INDEX idx_sj_retry_task_log_message_02 ON sj_retry_task_log_message (create_dt);
|
||||
|
||||
COMMENT ON COLUMN sj_retry_task_log_message.id IS '主键';
|
||||
COMMENT ON COLUMN sj_retry_task_log_message.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_retry_task_log_message.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_retry_task_log_message.unique_id IS '同组下id唯一';
|
||||
COMMENT ON COLUMN sj_retry_task_log_message.retry_id IS '重试信息Id';
|
||||
COMMENT ON COLUMN sj_retry_task_log_message.retry_task_id IS '重试任务Id';
|
||||
COMMENT ON COLUMN sj_retry_task_log_message.message IS '异常信息';
|
||||
COMMENT ON COLUMN sj_retry_task_log_message.log_num IS '日志数量';
|
||||
COMMENT ON COLUMN sj_retry_task_log_message.real_time IS '上报时间';
|
||||
@ -289,21 +281,26 @@ COMMENT ON TABLE sj_retry_task_log_message IS '任务调度日志信息记录表
|
||||
-- sj_retry_scene_config
|
||||
CREATE TABLE sj_retry_scene_config
|
||||
(
|
||||
id bigserial PRIMARY KEY,
|
||||
namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
scene_name varchar(64) NOT NULL,
|
||||
group_name varchar(64) NOT NULL,
|
||||
scene_status smallint NOT NULL DEFAULT 0,
|
||||
max_retry_count int NOT NULL DEFAULT 5,
|
||||
back_off smallint NOT NULL DEFAULT 1,
|
||||
trigger_interval varchar(16) NOT NULL DEFAULT '',
|
||||
notify_ids varchar(128) NOT NULL DEFAULT '',
|
||||
deadline_request bigint NOT NULL DEFAULT 60000,
|
||||
executor_timeout int NOT NULL DEFAULT 5,
|
||||
route_key smallint NOT NULL DEFAULT 4,
|
||||
description varchar(256) NOT NULL DEFAULT '',
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
id bigserial PRIMARY KEY,
|
||||
namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
scene_name varchar(64) NOT NULL,
|
||||
group_name varchar(64) NOT NULL,
|
||||
scene_status smallint NOT NULL DEFAULT 0,
|
||||
max_retry_count int NOT NULL DEFAULT 5,
|
||||
back_off smallint NOT NULL DEFAULT 1,
|
||||
trigger_interval varchar(16) NOT NULL DEFAULT '',
|
||||
notify_ids varchar(128) NOT NULL DEFAULT '',
|
||||
deadline_request bigint NOT NULL DEFAULT 60000,
|
||||
executor_timeout int NOT NULL DEFAULT 5,
|
||||
route_key smallint NOT NULL DEFAULT 4,
|
||||
block_strategy smallint NOT NULL DEFAULT 1,
|
||||
cb_status smallint NOT NULL DEFAULT 0,
|
||||
cb_trigger_type smallint NOT NULL DEFAULT 1,
|
||||
cb_max_count int NOT NULL DEFAULT 16,
|
||||
cb_trigger_interval varchar(16) NOT NULL DEFAULT '',
|
||||
description varchar(256) NOT NULL DEFAULT '',
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE UNIQUE INDEX uk_sj_retry_scene_config_01 ON sj_retry_scene_config (namespace_id, group_name, scene_name);
|
||||
@ -320,6 +317,11 @@ COMMENT ON COLUMN sj_retry_scene_config.notify_ids IS '通知告警场景配置i
|
||||
COMMENT ON COLUMN sj_retry_scene_config.deadline_request IS 'Deadline Request 调用链超时 单位毫秒';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.executor_timeout IS '任务执行超时时间,单位秒';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.route_key IS '路由策略';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.cb_status IS '回调状态 0、不开启 1、开启';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.cb_trigger_type IS '1、默认等级 2、固定间隔时间 3、CRON 表达式';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.cb_max_count IS '回调的最大执行次数';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.cb_trigger_interval IS '回调的最大执行次数';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.description IS '描述';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.update_dt IS '修改时间';
|
||||
@ -362,7 +364,7 @@ COMMENT ON TABLE sj_server_node IS '服务器节点';
|
||||
-- sj_distributed_lock
|
||||
CREATE TABLE sj_distributed_lock
|
||||
(
|
||||
name varchar(64) PRIMARY KEY,
|
||||
name varchar(64) NOT NULL,
|
||||
lock_until timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
|
||||
locked_at timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
|
||||
locked_by varchar(255) NOT NULL,
|
||||
@ -493,11 +495,11 @@ COMMENT ON COLUMN sj_job.executor_type IS '执行器类型';
|
||||
COMMENT ON COLUMN sj_job.executor_info IS '执行器名称';
|
||||
COMMENT ON COLUMN sj_job.trigger_type IS '触发类型 1.CRON 表达式 2. 固定时间';
|
||||
COMMENT ON COLUMN sj_job.trigger_interval IS '间隔时长';
|
||||
COMMENT ON COLUMN sj_job.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行';
|
||||
COMMENT ON COLUMN sj_job.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行 4、恢复';
|
||||
COMMENT ON COLUMN sj_job.executor_timeout IS '任务执行超时时间,单位秒';
|
||||
COMMENT ON COLUMN sj_job.max_retry_times IS '最大重试次数';
|
||||
COMMENT ON COLUMN sj_job.parallel_num IS '并行数';
|
||||
COMMENT ON COLUMN sj_job.retry_interval IS '重试间隔 ( s ) ';
|
||||
COMMENT ON COLUMN sj_job.retry_interval IS '重试间隔 ( s)';
|
||||
COMMENT ON COLUMN sj_job.bucket_index IS 'bucket';
|
||||
COMMENT ON COLUMN sj_job.resident IS '是否是常驻任务';
|
||||
COMMENT ON COLUMN sj_job.notify_ids IS '通知告警场景配置id列表';
|
||||
@ -664,7 +666,7 @@ CREATE INDEX idx_sj_job_summary_01 ON sj_job_summary (namespace_id, group_name,
|
||||
COMMENT ON COLUMN sj_job_summary.id IS '主键';
|
||||
COMMENT ON COLUMN sj_job_summary.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_job_summary.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_job_summary.business_id IS '业务id ( job_id或workflow_id ) ';
|
||||
COMMENT ON COLUMN sj_job_summary.business_id IS '业务id ( job_id或workflow_id)';
|
||||
COMMENT ON COLUMN sj_job_summary.system_task_type IS '任务类型 3、JOB任务 4、WORKFLOW任务';
|
||||
COMMENT ON COLUMN sj_job_summary.trigger_at IS '统计时间';
|
||||
COMMENT ON COLUMN sj_job_summary.success_num IS '执行成功-日志数量';
|
||||
|
@ -262,6 +262,8 @@ CREATE TABLE flow_user
|
||||
CONSTRAINT flow_user_pk PRIMARY KEY (id)
|
||||
);
|
||||
CREATE INDEX user_processed_type ON flow_user USING btree (processed_by, type);
|
||||
CREATE INDEX user_associated_idx ON FLOW_USER USING btree (associated);
|
||||
|
||||
COMMENT ON TABLE flow_user IS '流程用户表';
|
||||
|
||||
COMMENT ON COLUMN flow_user.id IS '主键id';
|
||||
|
@ -30,7 +30,6 @@ CREATE TABLE `sj_group_config`
|
||||
`group_partition` int(11) NOT NULL COMMENT '分区',
|
||||
`id_generator_mode` tinyint(4) NOT NULL DEFAULT 1 COMMENT '唯一id生成模式 默认号段模式',
|
||||
`init_scene` tinyint(4) NOT NULL DEFAULT 0 COMMENT '是否初始化场景 0:否 1:是',
|
||||
`bucket_index` int(11) NOT NULL DEFAULT 0 COMMENT 'bucket',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
|
||||
PRIMARY KEY (`id`),
|
||||
@ -39,8 +38,8 @@ CREATE TABLE `sj_group_config`
|
||||
AUTO_INCREMENT = 0
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='组配置';
|
||||
|
||||
INSERT INTO `sj_group_config` VALUES (1, 'dev', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, 4, now(), now());
|
||||
INSERT INTO `sj_group_config` VALUES (2, 'prod', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, 4, now(), now());
|
||||
INSERT INTO `sj_group_config` VALUES (1, 'dev', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, now(), now());
|
||||
INSERT INTO `sj_group_config` VALUES (2, 'prod', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, now(), now());
|
||||
|
||||
CREATE TABLE `sj_notify_config`
|
||||
(
|
||||
@ -80,11 +79,10 @@ CREATE TABLE `sj_notify_recipient`
|
||||
AUTO_INCREMENT = 0
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='告警通知接收人';
|
||||
|
||||
CREATE TABLE `sj_retry_dead_letter_0`
|
||||
CREATE TABLE `sj_retry_dead_letter`
|
||||
(
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
|
||||
`unique_id` varchar(64) NOT NULL COMMENT '同组下id唯一',
|
||||
`group_name` varchar(64) NOT NULL COMMENT '组名称',
|
||||
`scene_name` varchar(64) NOT NULL COMMENT '场景名称',
|
||||
`idempotent_id` varchar(64) NOT NULL COMMENT '幂等id',
|
||||
@ -92,23 +90,20 @@ CREATE TABLE `sj_retry_dead_letter_0`
|
||||
`executor_name` varchar(512) NOT NULL DEFAULT '' COMMENT '执行器名称',
|
||||
`args_str` text NOT NULL COMMENT '执行方法参数',
|
||||
`ext_attrs` text NOT NULL COMMENT '扩展字段',
|
||||
`task_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '任务类型 1、重试数据 2、回调数据',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_namespace_id_group_name_scene_name` (`namespace_id`, `group_name`, `scene_name`),
|
||||
KEY `idx_idempotent_id` (`idempotent_id`),
|
||||
KEY `idx_biz_no` (`biz_no`),
|
||||
KEY `idx_create_dt` (`create_dt`),
|
||||
UNIQUE KEY `uk_namespace_id_group_name_unique_id` (`namespace_id`, `group_name`, `unique_id`)
|
||||
KEY `idx_create_dt` (`create_dt`)
|
||||
) ENGINE = InnoDB
|
||||
AUTO_INCREMENT = 0
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='死信队列表';
|
||||
|
||||
CREATE TABLE `sj_retry_task_0`
|
||||
CREATE TABLE `sj_retry`
|
||||
(
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
|
||||
`unique_id` varchar(64) NOT NULL COMMENT '同组下id唯一',
|
||||
`group_name` varchar(64) NOT NULL COMMENT '组名称',
|
||||
`scene_name` varchar(64) NOT NULL COMMENT '场景名称',
|
||||
`idempotent_id` varchar(64) NOT NULL COMMENT '幂等id',
|
||||
@ -116,63 +111,63 @@ CREATE TABLE `sj_retry_task_0`
|
||||
`executor_name` varchar(512) NOT NULL DEFAULT '' COMMENT '执行器名称',
|
||||
`args_str` text NOT NULL COMMENT '执行方法参数',
|
||||
`ext_attrs` text NOT NULL COMMENT '扩展字段',
|
||||
`next_trigger_at` datetime NOT NULL COMMENT '下次触发时间',
|
||||
`next_trigger_at` bigint(13) NOT NULL COMMENT '下次触发时间',
|
||||
`retry_count` int(11) NOT NULL DEFAULT 0 COMMENT '重试次数',
|
||||
`retry_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '重试状态 0、重试中 1、成功 2、最大重试次数',
|
||||
`task_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '任务类型 1、重试数据 2、回调数据',
|
||||
`bucket_index` int(11) NOT NULL DEFAULT 0 COMMENT 'bucket',
|
||||
`parent_id` bigint(20) NOT NULL DEFAULT 0 COMMENT '父节点id',
|
||||
`deleted` bigint(20) NOT NULL DEFAULT 0 COMMENT '逻辑删除',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_namespace_id_group_name_scene_name` (`namespace_id`, `group_name`, `scene_name`),
|
||||
KEY `idx_namespace_id_group_name_task_type` (`namespace_id`, `group_name`, `task_type`),
|
||||
KEY `idx_namespace_id_group_name_retry_status` (`namespace_id`, `group_name`, `retry_status`),
|
||||
KEY `idx_idempotent_id` (`idempotent_id`),
|
||||
KEY `idx_biz_no` (`biz_no`),
|
||||
KEY `idx_parent_id` (`parent_id`),
|
||||
KEY `idx_create_dt` (`create_dt`),
|
||||
UNIQUE KEY `uk_name_unique_id` (`namespace_id`, `group_name`, `unique_id`)
|
||||
UNIQUE KEY `uk_name_task_type_idempotent_id_deleted` (`namespace_id`, `group_name`, `task_type`, `idempotent_id`, `deleted`)
|
||||
) ENGINE = InnoDB
|
||||
AUTO_INCREMENT = 0
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='任务表';
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='重试信息表';
|
||||
|
||||
CREATE TABLE `sj_retry_task_log`
|
||||
CREATE TABLE `sj_retry_task`
|
||||
(
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
|
||||
`unique_id` varchar(64) NOT NULL COMMENT '同组下id唯一',
|
||||
`group_name` varchar(64) NOT NULL COMMENT '组名称',
|
||||
`scene_name` varchar(64) NOT NULL COMMENT '场景名称',
|
||||
`idempotent_id` varchar(64) NOT NULL COMMENT '幂等id',
|
||||
`biz_no` varchar(64) NOT NULL DEFAULT '' COMMENT '业务编号',
|
||||
`executor_name` varchar(512) NOT NULL DEFAULT '' COMMENT '执行器名称',
|
||||
`args_str` text NOT NULL COMMENT '执行方法参数',
|
||||
`ext_attrs` text NOT NULL COMMENT '扩展字段',
|
||||
`retry_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '重试状态 0、重试中 1、成功 2、最大次数',
|
||||
`task_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '任务类型 1、重试数据 2、回调数据',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
|
||||
`group_name` varchar(64) NOT NULL COMMENT '组名称',
|
||||
`scene_name` varchar(64) NOT NULL COMMENT '场景名称',
|
||||
`retry_id` bigint(20) NOT NULL COMMENT '重试信息Id',
|
||||
`ext_attrs` text NOT NULL COMMENT '扩展字段',
|
||||
`task_status` tinyint(4) NOT NULL DEFAULT 1 COMMENT '重试状态',
|
||||
`task_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '任务类型 1、重试数据 2、回调数据',
|
||||
`operation_reason` tinyint(4) NOT NULL DEFAULT 0 COMMENT '操作原因',
|
||||
`client_info` varchar(128) DEFAULT NULL COMMENT '客户端地址 clientId#ip:port',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_group_name_scene_name` (`namespace_id`, `group_name`, `scene_name`),
|
||||
KEY `idx_retry_status` (`retry_status`),
|
||||
KEY `idx_idempotent_id` (`idempotent_id`),
|
||||
KEY `idx_unique_id` (`unique_id`),
|
||||
KEY `idx_biz_no` (`biz_no`),
|
||||
KEY `idx_create_dt` (`create_dt`)
|
||||
KEY `task_status` (`task_status`),
|
||||
KEY `idx_create_dt` (`create_dt`),
|
||||
KEY `idx_retry_id` (`retry_id`)
|
||||
) ENGINE = InnoDB
|
||||
AUTO_INCREMENT = 0
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='任务日志基础信息表';
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='重试任务表';
|
||||
|
||||
CREATE TABLE `sj_retry_task_log_message`
|
||||
(
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
|
||||
`group_name` varchar(64) NOT NULL COMMENT '组名称',
|
||||
`unique_id` varchar(64) NOT NULL COMMENT '同组下id唯一',
|
||||
`message` longtext NOT NULL COMMENT '异常信息',
|
||||
`log_num` int(11) NOT NULL DEFAULT 1 COMMENT '日志数量',
|
||||
`real_time` bigint(13) NOT NULL DEFAULT 0 COMMENT '上报时间',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
|
||||
`group_name` varchar(64) NOT NULL COMMENT '组名称',
|
||||
`retry_id` bigint(20) NOT NULL COMMENT '重试信息Id',
|
||||
`retry_task_id` bigint(20) NOT NULL COMMENT '重试任务Id',
|
||||
`message` longtext NOT NULL COMMENT '异常信息',
|
||||
`log_num` int(11) NOT NULL DEFAULT 1 COMMENT '日志数量',
|
||||
`real_time` bigint(13) NOT NULL DEFAULT 0 COMMENT '上报时间',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_namespace_id_group_name_scene_name` (`namespace_id`, `group_name`, `unique_id`),
|
||||
KEY `idx_namespace_id_group_name_retry_task_id` (`namespace_id`, `group_name`, `retry_task_id`),
|
||||
KEY `idx_create_dt` (`create_dt`)
|
||||
) ENGINE = InnoDB
|
||||
AUTO_INCREMENT = 0
|
||||
@ -180,21 +175,26 @@ CREATE TABLE `sj_retry_task_log_message`
|
||||
|
||||
CREATE TABLE `sj_retry_scene_config`
|
||||
(
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
|
||||
`scene_name` varchar(64) NOT NULL COMMENT '场景名称',
|
||||
`group_name` varchar(64) NOT NULL COMMENT '组名称',
|
||||
`scene_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '组状态 0、未启用 1、启用',
|
||||
`max_retry_count` int(11) NOT NULL DEFAULT 5 COMMENT '最大重试次数',
|
||||
`back_off` tinyint(4) NOT NULL DEFAULT 1 COMMENT '1、默认等级 2、固定间隔时间 3、CRON 表达式',
|
||||
`trigger_interval` varchar(16) NOT NULL DEFAULT '' COMMENT '间隔时长',
|
||||
`notify_ids` varchar(128) NOT NULL DEFAULT '' COMMENT '通知告警场景配置id列表',
|
||||
`deadline_request` bigint(20) unsigned NOT NULL DEFAULT 60000 COMMENT 'Deadline Request 调用链超时 单位毫秒',
|
||||
`executor_timeout` int(11) unsigned NOT NULL DEFAULT 5 COMMENT '任务执行超时时间,单位秒',
|
||||
`route_key` tinyint(4) NOT NULL DEFAULT 4 COMMENT '路由策略',
|
||||
`description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
|
||||
`scene_name` varchar(64) NOT NULL COMMENT '场景名称',
|
||||
`group_name` varchar(64) NOT NULL COMMENT '组名称',
|
||||
`scene_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '组状态 0、未启用 1、启用',
|
||||
`max_retry_count` int(11) NOT NULL DEFAULT 5 COMMENT '最大重试次数',
|
||||
`back_off` tinyint(4) NOT NULL DEFAULT 1 COMMENT '1、默认等级 2、固定间隔时间 3、CRON 表达式',
|
||||
`trigger_interval` varchar(16) NOT NULL DEFAULT '' COMMENT '间隔时长',
|
||||
`notify_ids` varchar(128) NOT NULL DEFAULT '' COMMENT '通知告警场景配置id列表',
|
||||
`deadline_request` bigint(20) unsigned NOT NULL DEFAULT 60000 COMMENT 'Deadline Request 调用链超时 单位毫秒',
|
||||
`executor_timeout` int(11) unsigned NOT NULL DEFAULT 5 COMMENT '任务执行超时时间,单位秒',
|
||||
`route_key` tinyint(4) NOT NULL DEFAULT 4 COMMENT '路由策略',
|
||||
`block_strategy` tinyint(4) NOT NULL DEFAULT 1 COMMENT '阻塞策略 1、丢弃 2、覆盖 3、并行',
|
||||
`cb_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '回调状态 0、不开启 1、开启',
|
||||
`cb_trigger_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '1、默认等级 2、固定间隔时间 3、CRON 表达式',
|
||||
`cb_max_count` int(11) NOT NULL DEFAULT 16 COMMENT '回调的最大执行次数',
|
||||
`cb_trigger_interval` varchar(16) NOT NULL DEFAULT '' COMMENT '回调的最大执行次数',
|
||||
`description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_namespace_id_group_name_scene_name` (`namespace_id`, `group_name`, `scene_name`)
|
||||
) ENGINE = InnoDB
|
||||
@ -249,7 +249,8 @@ CREATE TABLE `sj_system_user`
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='系统用户表';
|
||||
|
||||
-- pwd: admin
|
||||
INSERT INTO `sj_system_user` VALUES (1, 'admin', '465c194afb65670f38322df087f0a9bb225cc257e43eb4ac5a0c98ef5b3173ac', 2, now(), now());
|
||||
INSERT INTO `sj_system_user` (username, password, role)
|
||||
VALUES ('admin', '465c194afb65670f38322df087f0a9bb225cc257e43eb4ac5a0c98ef5b3173ac', 2);
|
||||
|
||||
CREATE TABLE `sj_system_user_permission`
|
||||
(
|
||||
@ -294,7 +295,7 @@ CREATE TABLE `sj_job`
|
||||
`executor_info` varchar(255) DEFAULT NULL COMMENT '执行器名称',
|
||||
`trigger_type` tinyint(4) NOT NULL COMMENT '触发类型 1.CRON 表达式 2. 固定时间',
|
||||
`trigger_interval` varchar(255) NOT NULL COMMENT '间隔时长',
|
||||
`block_strategy` tinyint(4) NOT NULL DEFAULT 1 COMMENT '阻塞策略 1、丢弃 2、覆盖 3、并行',
|
||||
`block_strategy` tinyint(4) NOT NULL DEFAULT 1 COMMENT '阻塞策略 1、丢弃 2、覆盖 3、并行 4、恢复',
|
||||
`executor_timeout` int(11) NOT NULL DEFAULT 0 COMMENT '任务执行超时时间,单位秒',
|
||||
`max_retry_times` int(11) NOT NULL DEFAULT 0 COMMENT '最大重试次数',
|
||||
`parallel_num` int(11) NOT NULL DEFAULT 1 COMMENT '并行数',
|
||||
@ -448,7 +449,7 @@ CREATE TABLE `sj_workflow`
|
||||
`workflow_status` tinyint(4) NOT NULL DEFAULT 1 COMMENT '工作流状态 0、关闭、1、开启',
|
||||
`trigger_type` tinyint(4) NOT NULL COMMENT '触发类型 1.CRON 表达式 2. 固定时间',
|
||||
`trigger_interval` varchar(255) NOT NULL COMMENT '间隔时长',
|
||||
`next_trigger_at` bigint(13) NOT NULL COMMENT '下次触发时间',
|
||||
`next_trigger_at` bigint NOT NULL COMMENT '下次触发时间',
|
||||
`block_strategy` tinyint(4) NOT NULL DEFAULT 1 COMMENT '阻塞策略 1、丢弃 2、覆盖 3、并行',
|
||||
`executor_timeout` int(11) NOT NULL DEFAULT 0 COMMENT '任务执行超时时间,单位秒',
|
||||
`description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述',
|
||||
|
@ -146,7 +146,8 @@ CREATE TABLE `flow_user`
|
||||
`del_flag` char(1) DEFAULT '0' COMMENT '删除标志',
|
||||
`tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `user_processed_type` (`processed_by`, `type`)
|
||||
KEY `user_processed_type` (`processed_by`, `type`),
|
||||
KEY `user_associated` (`associated`) USING BTREE
|
||||
) ENGINE = InnoDB COMMENT ='流程用户表';
|
||||
|
||||
-- ----------------------------
|
||||
|
@ -2,7 +2,7 @@
|
||||
SnailJob Database Transfer Tool
|
||||
Source Server Type : MySQL
|
||||
Target Server Type : Microsoft SQL Server
|
||||
Date: 2024-12-27 22:24:37
|
||||
Date: 2025-02-25 22:16:48
|
||||
*/
|
||||
|
||||
|
||||
@ -95,7 +95,6 @@ CREATE TABLE sj_group_config
|
||||
group_partition int NOT NULL,
|
||||
id_generator_mode tinyint NOT NULL DEFAULT 1,
|
||||
init_scene tinyint NOT NULL DEFAULT 0,
|
||||
bucket_index int NOT NULL DEFAULT 0,
|
||||
create_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
)
|
||||
@ -174,13 +173,6 @@ EXEC sp_addextendedproperty
|
||||
'COLUMN', N'init_scene'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'bucket',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_group_config',
|
||||
'COLUMN', N'bucket_index'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'创建时间',
|
||||
'SCHEMA', N'dbo',
|
||||
@ -201,9 +193,9 @@ EXEC sp_addextendedproperty
|
||||
'TABLE', N'sj_group_config'
|
||||
GO
|
||||
|
||||
INSERT INTO sj_group_config(namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, bucket_index, create_dt, update_dt) VALUES (N'dev', N'ruoyi_group', N'', N'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', N'1', N'1', N'0', N'1', N'1', N'4', getdate(), getdate())
|
||||
INSERT INTO sj_group_config(namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, create_dt, update_dt) VALUES (N'dev', N'ruoyi_group', N'', N'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', N'1', N'1', N'0', N'1', N'1', getdate(), getdate())
|
||||
GO
|
||||
INSERT INTO sj_group_config(namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, bucket_index, create_dt, update_dt) VALUES (N'prod', N'ruoyi_group', N'', N'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', N'1', N'1', N'0', N'1', N'1', N'4', getdate(), getdate())
|
||||
INSERT INTO sj_group_config(namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, create_dt, update_dt) VALUES (N'prod', N'ruoyi_group', N'', N'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', N'1', N'1', N'0', N'1', N'1', getdate(), getdate())
|
||||
GO
|
||||
|
||||
-- sj_notify_config
|
||||
@ -412,12 +404,11 @@ EXEC sp_addextendedproperty
|
||||
'TABLE', N'sj_notify_recipient'
|
||||
GO
|
||||
|
||||
-- sj_retry_dead_letter_0
|
||||
CREATE TABLE sj_retry_dead_letter_0
|
||||
-- sj_retry_dead_letter
|
||||
CREATE TABLE sj_retry_dead_letter
|
||||
(
|
||||
id bigint NOT NULL PRIMARY KEY IDENTITY,
|
||||
namespace_id nvarchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
unique_id nvarchar(64) NOT NULL,
|
||||
group_name nvarchar(64) NOT NULL,
|
||||
scene_name nvarchar(64) NOT NULL,
|
||||
idempotent_id nvarchar(64) NOT NULL,
|
||||
@ -425,119 +416,100 @@ CREATE TABLE sj_retry_dead_letter_0
|
||||
executor_name nvarchar(512) NOT NULL DEFAULT '',
|
||||
args_str nvarchar(max) NOT NULL,
|
||||
ext_attrs nvarchar(max) NOT NULL,
|
||||
task_type tinyint NOT NULL DEFAULT 1,
|
||||
create_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
)
|
||||
GO
|
||||
|
||||
CREATE UNIQUE INDEX uk_sj_retry_dead_letter_0_01 ON sj_retry_dead_letter_0 (namespace_id, group_name, unique_id)
|
||||
CREATE INDEX idx_sj_retry_dead_letter_01 ON sj_retry_dead_letter (namespace_id, group_name, scene_name)
|
||||
GO
|
||||
|
||||
CREATE INDEX idx_sj_retry_dead_letter_0_01 ON sj_retry_dead_letter_0 (namespace_id, group_name, scene_name)
|
||||
CREATE INDEX idx_sj_retry_dead_letter_02 ON sj_retry_dead_letter (idempotent_id)
|
||||
GO
|
||||
CREATE INDEX idx_sj_retry_dead_letter_0_02 ON sj_retry_dead_letter_0 (idempotent_id)
|
||||
CREATE INDEX idx_sj_retry_dead_letter_03 ON sj_retry_dead_letter (biz_no)
|
||||
GO
|
||||
CREATE INDEX idx_sj_retry_dead_letter_0_03 ON sj_retry_dead_letter_0 (biz_no)
|
||||
GO
|
||||
CREATE INDEX idx_sj_retry_dead_letter_0_04 ON sj_retry_dead_letter_0 (create_dt)
|
||||
CREATE INDEX idx_sj_retry_dead_letter_04 ON sj_retry_dead_letter (create_dt)
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'主键',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_dead_letter_0',
|
||||
'TABLE', N'sj_retry_dead_letter',
|
||||
'COLUMN', N'id'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'命名空间id',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_dead_letter_0',
|
||||
'TABLE', N'sj_retry_dead_letter',
|
||||
'COLUMN', N'namespace_id'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'同组下id唯一',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_dead_letter_0',
|
||||
'COLUMN', N'unique_id'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'组名称',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_dead_letter_0',
|
||||
'TABLE', N'sj_retry_dead_letter',
|
||||
'COLUMN', N'group_name'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'场景名称',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_dead_letter_0',
|
||||
'TABLE', N'sj_retry_dead_letter',
|
||||
'COLUMN', N'scene_name'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'幂等id',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_dead_letter_0',
|
||||
'TABLE', N'sj_retry_dead_letter',
|
||||
'COLUMN', N'idempotent_id'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'业务编号',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_dead_letter_0',
|
||||
'TABLE', N'sj_retry_dead_letter',
|
||||
'COLUMN', N'biz_no'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'执行器名称',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_dead_letter_0',
|
||||
'TABLE', N'sj_retry_dead_letter',
|
||||
'COLUMN', N'executor_name'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'执行方法参数',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_dead_letter_0',
|
||||
'TABLE', N'sj_retry_dead_letter',
|
||||
'COLUMN', N'args_str'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'扩展字段',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_dead_letter_0',
|
||||
'TABLE', N'sj_retry_dead_letter',
|
||||
'COLUMN', N'ext_attrs'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'任务类型 1、重试数据 2、回调数据',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_dead_letter_0',
|
||||
'COLUMN', N'task_type'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'创建时间',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_dead_letter_0',
|
||||
'TABLE', N'sj_retry_dead_letter',
|
||||
'COLUMN', N'create_dt'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'死信队列表',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_dead_letter_0'
|
||||
'TABLE', N'sj_retry_dead_letter'
|
||||
GO
|
||||
|
||||
-- sj_retry_task_0
|
||||
CREATE TABLE sj_retry_task_0
|
||||
-- sj_retry
|
||||
CREATE TABLE sj_retry
|
||||
(
|
||||
id bigint NOT NULL PRIMARY KEY IDENTITY,
|
||||
namespace_id nvarchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
unique_id nvarchar(64) NOT NULL,
|
||||
group_name nvarchar(64) NOT NULL,
|
||||
scene_name nvarchar(64) NOT NULL,
|
||||
idempotent_id nvarchar(64) NOT NULL,
|
||||
@ -545,301 +517,299 @@ CREATE TABLE sj_retry_task_0
|
||||
executor_name nvarchar(512) NOT NULL DEFAULT '',
|
||||
args_str nvarchar(max) NOT NULL,
|
||||
ext_attrs nvarchar(max) NOT NULL,
|
||||
next_trigger_at datetime2 NOT NULL,
|
||||
next_trigger_at bigint NOT NULL,
|
||||
retry_count int NOT NULL DEFAULT 0,
|
||||
retry_status tinyint NOT NULL DEFAULT 0,
|
||||
task_type tinyint NOT NULL DEFAULT 1,
|
||||
bucket_index int NOT NULL DEFAULT 0,
|
||||
parent_id bigint NOT NULL DEFAULT 0,
|
||||
deleted bigint NOT NULL DEFAULT 0,
|
||||
create_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
)
|
||||
GO
|
||||
|
||||
CREATE UNIQUE INDEX uk_sj_retry_task_0_01 ON sj_retry_task_0 (namespace_id, group_name, unique_id)
|
||||
CREATE UNIQUE INDEX uk_sj_retry_01 ON sj_retry (namespace_id, group_name, task_type, idempotent_id, deleted)
|
||||
GO
|
||||
|
||||
CREATE INDEX idx_sj_retry_task_0_01 ON sj_retry_task_0 (namespace_id, group_name, scene_name)
|
||||
CREATE INDEX idx_sj_retry_01 ON sj_retry (namespace_id, group_name, scene_name)
|
||||
GO
|
||||
CREATE INDEX idx_sj_retry_task_0_02 ON sj_retry_task_0 (namespace_id, group_name, task_type)
|
||||
CREATE INDEX idx_sj_retry_02 ON sj_retry (namespace_id, group_name, retry_status)
|
||||
GO
|
||||
CREATE INDEX idx_sj_retry_task_0_03 ON sj_retry_task_0 (namespace_id, group_name, retry_status)
|
||||
CREATE INDEX idx_sj_retry_03 ON sj_retry (idempotent_id)
|
||||
GO
|
||||
CREATE INDEX idx_sj_retry_task_0_04 ON sj_retry_task_0 (idempotent_id)
|
||||
CREATE INDEX idx_sj_retry_04 ON sj_retry (biz_no)
|
||||
GO
|
||||
CREATE INDEX idx_sj_retry_task_0_05 ON sj_retry_task_0 (biz_no)
|
||||
CREATE INDEX idx_sj_retry_05 ON sj_retry (parent_id)
|
||||
GO
|
||||
CREATE INDEX idx_sj_retry_task_0_06 ON sj_retry_task_0 (create_dt)
|
||||
CREATE INDEX idx_sj_retry_06 ON sj_retry (create_dt)
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'主键',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_0',
|
||||
'TABLE', N'sj_retry',
|
||||
'COLUMN', N'id'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'命名空间id',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_0',
|
||||
'TABLE', N'sj_retry',
|
||||
'COLUMN', N'namespace_id'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'同组下id唯一',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_0',
|
||||
'COLUMN', N'unique_id'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'组名称',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_0',
|
||||
'TABLE', N'sj_retry',
|
||||
'COLUMN', N'group_name'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'场景名称',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_0',
|
||||
'TABLE', N'sj_retry',
|
||||
'COLUMN', N'scene_name'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'幂等id',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_0',
|
||||
'TABLE', N'sj_retry',
|
||||
'COLUMN', N'idempotent_id'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'业务编号',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_0',
|
||||
'TABLE', N'sj_retry',
|
||||
'COLUMN', N'biz_no'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'执行器名称',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_0',
|
||||
'TABLE', N'sj_retry',
|
||||
'COLUMN', N'executor_name'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'执行方法参数',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_0',
|
||||
'TABLE', N'sj_retry',
|
||||
'COLUMN', N'args_str'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'扩展字段',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_0',
|
||||
'TABLE', N'sj_retry',
|
||||
'COLUMN', N'ext_attrs'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'下次触发时间',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_0',
|
||||
'TABLE', N'sj_retry',
|
||||
'COLUMN', N'next_trigger_at'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'重试次数',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_0',
|
||||
'TABLE', N'sj_retry',
|
||||
'COLUMN', N'retry_count'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'重试状态 0、重试中 1、成功 2、最大重试次数',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_0',
|
||||
'TABLE', N'sj_retry',
|
||||
'COLUMN', N'retry_status'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'任务类型 1、重试数据 2、回调数据',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_0',
|
||||
'TABLE', N'sj_retry',
|
||||
'COLUMN', N'task_type'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'bucket',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry',
|
||||
'COLUMN', N'bucket_index'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'父节点id',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry',
|
||||
'COLUMN', N'parent_id'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'逻辑删除',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry',
|
||||
'COLUMN', N'deleted'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'创建时间',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_0',
|
||||
'TABLE', N'sj_retry',
|
||||
'COLUMN', N'create_dt'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'修改时间',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_0',
|
||||
'TABLE', N'sj_retry',
|
||||
'COLUMN', N'update_dt'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'任务表',
|
||||
'MS_Description', N'重试信息表',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_0'
|
||||
'TABLE', N'sj_retry'
|
||||
GO
|
||||
|
||||
-- sj_retry_task_log
|
||||
CREATE TABLE sj_retry_task_log
|
||||
-- sj_retry_task
|
||||
CREATE TABLE sj_retry_task
|
||||
(
|
||||
id bigint NOT NULL PRIMARY KEY IDENTITY,
|
||||
namespace_id nvarchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
unique_id nvarchar(64) NOT NULL,
|
||||
group_name nvarchar(64) NOT NULL,
|
||||
scene_name nvarchar(64) NOT NULL,
|
||||
idempotent_id nvarchar(64) NOT NULL,
|
||||
biz_no nvarchar(64) NOT NULL DEFAULT '',
|
||||
executor_name nvarchar(512) NOT NULL DEFAULT '',
|
||||
args_str nvarchar(max) NOT NULL,
|
||||
ext_attrs nvarchar(max) NOT NULL,
|
||||
retry_status tinyint NOT NULL DEFAULT 0,
|
||||
task_type tinyint NOT NULL DEFAULT 1,
|
||||
create_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
id bigint NOT NULL PRIMARY KEY IDENTITY,
|
||||
namespace_id nvarchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
group_name nvarchar(64) NOT NULL,
|
||||
scene_name nvarchar(64) NOT NULL,
|
||||
retry_id bigint NOT NULL,
|
||||
ext_attrs nvarchar(max) NOT NULL,
|
||||
task_status tinyint NOT NULL DEFAULT 1,
|
||||
task_type tinyint NOT NULL DEFAULT 1,
|
||||
operation_reason tinyint NOT NULL DEFAULT 0,
|
||||
client_info nvarchar(128) NULL DEFAULT NULL,
|
||||
create_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
)
|
||||
GO
|
||||
|
||||
CREATE INDEX idx_sj_retry_task_log_01 ON sj_retry_task_log (namespace_id, group_name, scene_name)
|
||||
CREATE INDEX idx_sj_retry_task_01 ON sj_retry_task (namespace_id, group_name, scene_name)
|
||||
GO
|
||||
CREATE INDEX idx_sj_retry_task_log_02 ON sj_retry_task_log (retry_status)
|
||||
CREATE INDEX idx_sj_retry_task_02 ON sj_retry_task (task_status)
|
||||
GO
|
||||
CREATE INDEX idx_sj_retry_task_log_03 ON sj_retry_task_log (idempotent_id)
|
||||
CREATE INDEX idx_sj_retry_task_03 ON sj_retry_task (create_dt)
|
||||
GO
|
||||
CREATE INDEX idx_sj_retry_task_log_04 ON sj_retry_task_log (unique_id)
|
||||
GO
|
||||
CREATE INDEX idx_sj_retry_task_log_05 ON sj_retry_task_log (biz_no)
|
||||
GO
|
||||
CREATE INDEX idx_sj_retry_task_log_06 ON sj_retry_task_log (create_dt)
|
||||
CREATE INDEX idx_sj_retry_task_04 ON sj_retry_task (retry_id)
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'主键',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_log',
|
||||
'TABLE', N'sj_retry_task',
|
||||
'COLUMN', N'id'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'命名空间id',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_log',
|
||||
'TABLE', N'sj_retry_task',
|
||||
'COLUMN', N'namespace_id'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'同组下id唯一',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_log',
|
||||
'COLUMN', N'unique_id'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'组名称',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_log',
|
||||
'TABLE', N'sj_retry_task',
|
||||
'COLUMN', N'group_name'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'场景名称',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_log',
|
||||
'TABLE', N'sj_retry_task',
|
||||
'COLUMN', N'scene_name'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'幂等id',
|
||||
'MS_Description', N'重试信息Id',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_log',
|
||||
'COLUMN', N'idempotent_id'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'业务编号',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_log',
|
||||
'COLUMN', N'biz_no'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'执行器名称',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_log',
|
||||
'COLUMN', N'executor_name'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'执行方法参数',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_log',
|
||||
'COLUMN', N'args_str'
|
||||
'TABLE', N'sj_retry_task',
|
||||
'COLUMN', N'retry_id'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'扩展字段',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_log',
|
||||
'TABLE', N'sj_retry_task',
|
||||
'COLUMN', N'ext_attrs'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'重试状态 0、重试中 1、成功 2、最大次数',
|
||||
'MS_Description', N'重试状态',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_log',
|
||||
'COLUMN', N'retry_status'
|
||||
'TABLE', N'sj_retry_task',
|
||||
'COLUMN', N'task_status'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'任务类型 1、重试数据 2、回调数据',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_log',
|
||||
'TABLE', N'sj_retry_task',
|
||||
'COLUMN', N'task_type'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'操作原因',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task',
|
||||
'COLUMN', N'operation_reason'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'客户端地址 clientId#ip:port',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task',
|
||||
'COLUMN', N'client_info'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'创建时间',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_log',
|
||||
'TABLE', N'sj_retry_task',
|
||||
'COLUMN', N'create_dt'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'修改时间',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_log',
|
||||
'TABLE', N'sj_retry_task',
|
||||
'COLUMN', N'update_dt'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'任务日志基础信息表',
|
||||
'MS_Description', N'重试任务表',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_log'
|
||||
'TABLE', N'sj_retry_task'
|
||||
GO
|
||||
|
||||
-- sj_retry_task_log_message
|
||||
CREATE TABLE sj_retry_task_log_message
|
||||
(
|
||||
id bigint NOT NULL PRIMARY KEY IDENTITY,
|
||||
namespace_id nvarchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
group_name nvarchar(64) NOT NULL,
|
||||
unique_id nvarchar(64) NOT NULL,
|
||||
message nvarchar(max) NOT NULL,
|
||||
log_num int NOT NULL DEFAULT 1,
|
||||
real_time bigint NOT NULL DEFAULT 0,
|
||||
create_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
id bigint NOT NULL PRIMARY KEY IDENTITY,
|
||||
namespace_id nvarchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
group_name nvarchar(64) NOT NULL,
|
||||
retry_id bigint NOT NULL,
|
||||
retry_task_id bigint NOT NULL,
|
||||
message nvarchar(max) NOT NULL,
|
||||
log_num int NOT NULL DEFAULT 1,
|
||||
real_time bigint NOT NULL DEFAULT 0,
|
||||
create_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
)
|
||||
GO
|
||||
|
||||
CREATE INDEX idx_sj_retry_task_log_message_01 ON sj_retry_task_log_message (namespace_id, group_name, unique_id)
|
||||
CREATE INDEX idx_sj_retry_task_log_message_01 ON sj_retry_task_log_message (namespace_id, group_name, retry_task_id)
|
||||
GO
|
||||
CREATE INDEX idx_sj_retry_task_log_message_02 ON sj_retry_task_log_message (create_dt)
|
||||
GO
|
||||
@ -866,10 +836,17 @@ EXEC sp_addextendedproperty
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'同组下id唯一',
|
||||
'MS_Description', N'重试信息Id',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_log_message',
|
||||
'COLUMN', N'unique_id'
|
||||
'COLUMN', N'retry_id'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'重试任务Id',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_task_log_message',
|
||||
'COLUMN', N'retry_task_id'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
@ -909,21 +886,26 @@ GO
|
||||
-- sj_retry_scene_config
|
||||
CREATE TABLE sj_retry_scene_config
|
||||
(
|
||||
id bigint NOT NULL PRIMARY KEY IDENTITY,
|
||||
namespace_id nvarchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
scene_name nvarchar(64) NOT NULL,
|
||||
group_name nvarchar(64) NOT NULL,
|
||||
scene_status tinyint NOT NULL DEFAULT 0,
|
||||
max_retry_count int NOT NULL DEFAULT 5,
|
||||
back_off tinyint NOT NULL DEFAULT 1,
|
||||
trigger_interval nvarchar(16) NOT NULL DEFAULT '',
|
||||
notify_ids nvarchar(128) NOT NULL DEFAULT '',
|
||||
deadline_request bigint NOT NULL DEFAULT 60000,
|
||||
executor_timeout int NOT NULL DEFAULT 5,
|
||||
route_key tinyint NOT NULL DEFAULT 4,
|
||||
description nvarchar(256) NOT NULL DEFAULT '',
|
||||
create_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
id bigint NOT NULL PRIMARY KEY IDENTITY,
|
||||
namespace_id nvarchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
scene_name nvarchar(64) NOT NULL,
|
||||
group_name nvarchar(64) NOT NULL,
|
||||
scene_status tinyint NOT NULL DEFAULT 0,
|
||||
max_retry_count int NOT NULL DEFAULT 5,
|
||||
back_off tinyint NOT NULL DEFAULT 1,
|
||||
trigger_interval nvarchar(16) NOT NULL DEFAULT '',
|
||||
notify_ids nvarchar(128) NOT NULL DEFAULT '',
|
||||
deadline_request bigint NOT NULL DEFAULT 60000,
|
||||
executor_timeout int NOT NULL DEFAULT 5,
|
||||
route_key tinyint NOT NULL DEFAULT 4,
|
||||
block_strategy tinyint NOT NULL DEFAULT 1,
|
||||
cb_status tinyint NOT NULL DEFAULT 0,
|
||||
cb_trigger_type tinyint NOT NULL DEFAULT 1,
|
||||
cb_max_count int NOT NULL DEFAULT 16,
|
||||
cb_trigger_interval nvarchar(16) NOT NULL DEFAULT '',
|
||||
description nvarchar(256) NOT NULL DEFAULT '',
|
||||
create_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
)
|
||||
GO
|
||||
|
||||
@ -1014,6 +996,41 @@ EXEC sp_addextendedproperty
|
||||
'COLUMN', N'route_key'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'阻塞策略 1、丢弃 2、覆盖 3、并行',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_scene_config',
|
||||
'COLUMN', N'block_strategy'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'回调状态 0、不开启 1、开启',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_scene_config',
|
||||
'COLUMN', N'cb_status'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'1、默认等级 2、固定间隔时间 3、CRON 表达式',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_scene_config',
|
||||
'COLUMN', N'cb_trigger_type'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'回调的最大执行次数',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_scene_config',
|
||||
'COLUMN', N'cb_max_count'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'回调的最大执行次数',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_retry_scene_config',
|
||||
'COLUMN', N'cb_trigger_interval'
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'描述',
|
||||
'SCHEMA', N'dbo',
|
||||
@ -1152,7 +1169,7 @@ GO
|
||||
-- sj_distributed_lock
|
||||
CREATE TABLE sj_distributed_lock
|
||||
(
|
||||
name nvarchar(64) NOT NULL PRIMARY KEY,
|
||||
name nvarchar(64) NOT NULL,
|
||||
lock_until datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
locked_at datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
locked_by nvarchar(255) NOT NULL,
|
||||
@ -1539,7 +1556,7 @@ EXEC sp_addextendedproperty
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'阻塞策略 1、丢弃 2、覆盖 3、并行',
|
||||
'MS_Description', N'阻塞策略 1、丢弃 2、覆盖 3、并行 4、恢复',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_job',
|
||||
'COLUMN', N'block_strategy'
|
||||
@ -1567,7 +1584,7 @@ EXEC sp_addextendedproperty
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'重试间隔 ( s ) ',
|
||||
'MS_Description', N'重试间隔 ( s)',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_job',
|
||||
'COLUMN', N'retry_interval'
|
||||
@ -2121,7 +2138,7 @@ EXEC sp_addextendedproperty
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'业务id ( job_id或workflow_id ) ',
|
||||
'MS_Description', N'业务id ( job_id或workflow_id)',
|
||||
'SCHEMA', N'dbo',
|
||||
'TABLE', N'sj_job_summary',
|
||||
'COLUMN', N'business_id'
|
||||
|
@ -918,6 +918,8 @@ GO
|
||||
|
||||
CREATE NONCLUSTERED INDEX user_processed_type ON flow_user (processed_by ASC, type ASC)
|
||||
GO
|
||||
CREATE NONCLUSTERED INDEX user_associated_idx ON flow_user (associated ASC)
|
||||
GO
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
'MS_Description', N'主键id',
|
||||
|
@ -1,6 +1,7 @@
|
||||
ALTER TABLE flow_node DROP COLUMN skip_any_node;
|
||||
ALTER TABLE flow_node ADD (ext VARCHAR2(500));
|
||||
COMMENT ON COLUMN flow_node.ext IS '扩展属性';
|
||||
create index USER_ASSOCIATED_IDX on FLOW_USER (ASSOCIATED);
|
||||
|
||||
ALTER TABLE sys_oss ADD (ext1 VARCHAR2(500));
|
||||
COMMENT ON COLUMN sys_oss.ext1 IS '扩展属性';
|
||||
|
@ -1,6 +1,7 @@
|
||||
ALTER TABLE flow_node DROP COLUMN skip_any_node;
|
||||
ALTER TABLE flow_node ADD COLUMN ext varchar(500);
|
||||
COMMENT ON COLUMN flow_node.ext IS '扩展属性';
|
||||
CREATE INDEX user_associated_idx ON FLOW_USER USING btree (associated);
|
||||
|
||||
ALTER TABLE sys_oss ADD COLUMN ext1 varchar(500));
|
||||
COMMENT ON COLUMN sys_oss.ext1 IS '扩展属性';
|
||||
|
@ -8,6 +8,9 @@ EXEC sp_addextendedproperty
|
||||
'COLUMN', N'ext'
|
||||
GO
|
||||
|
||||
CREATE NONCLUSTERED INDEX user_associated_idx ON flow_user (associated ASC)
|
||||
GO
|
||||
|
||||
ALTER TABLE sys_oss ADD ext1 nvarchar(500) NULL;
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
|
@ -1,6 +1,7 @@
|
||||
ALTER TABLE `flow_node` DROP COLUMN `skip_any_node`;
|
||||
ALTER TABLE `flow_node`
|
||||
ADD COLUMN `ext` text NULL COMMENT '扩展属性' AFTER `update_time`;
|
||||
ALTER TABLE `flow_user` ADD INDEX `user_associated`(`associated`) USING BTREE
|
||||
|
||||
ALTER TABLE `sys_oss`
|
||||
ADD COLUMN `ext1` text NULL COMMENT '扩展属性' AFTER `url`;
|
||||
|
Loading…
x
Reference in New Issue
Block a user