commit
296466fa13
@ -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.0-BETA" />
|
||||
<option name="imageTag" value="ruoyi/ruoyi-monitor-admin:5.3.0" />
|
||||
<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.0-BETA" />
|
||||
<option name="imageTag" value="ruoyi/ruoyi-server:5.3.0" />
|
||||
<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.0-BETA" />
|
||||
<option name="imageTag" value="ruoyi/ruoyi-snailjob-server:5.3.0" />
|
||||
<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)
|
||||
[]()
|
||||
[]()
|
||||
[]()
|
||||
@ -23,7 +23,6 @@
|
||||
> 系统演示: [传送门](https://plus-doc.dromara.org/#/common/demo_system)
|
||||
|
||||
> 官方前端项目地址: [plus-ui](https://gitee.com/JavaLionLi/plus-ui)<br>
|
||||
> 成员前端项目地址: 基于vben [ruoyi-plus-vben](https://gitee.com/dapppp/ruoyi-plus-vben)<br>
|
||||
> 成员前端项目地址: 基于vben5 [ruoyi-plus-vben5](https://gitee.com/dapppp/ruoyi-plus-vben5)
|
||||
|
||||
> 文档地址: [plus-doc](https://plus-doc.dromara.org)
|
||||
|
6
pom.xml
6
pom.xml
@ -13,7 +13,7 @@
|
||||
<description>Dromara RuoYi-Vue-Plus多租户管理系统</description>
|
||||
|
||||
<properties>
|
||||
<revision>5.3.0-BETA</revision>
|
||||
<revision>5.3.0</revision>
|
||||
<spring-boot.version>3.4.1</spring-boot.version>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
||||
@ -31,7 +31,7 @@
|
||||
<redisson.version>3.43.0</redisson.version>
|
||||
<lock4j.version>2.2.7</lock4j.version>
|
||||
<dynamic-ds.version>4.3.1</dynamic-ds.version>
|
||||
<snailjob.version>1.3.0-beta1.1</snailjob.version>
|
||||
<snailjob.version>1.3.0</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>
|
||||
@ -50,7 +50,7 @@
|
||||
<!-- 面向运行时的D-ORM依赖 -->
|
||||
<anyline.version>8.7.2-20250101</anyline.version>
|
||||
<!--工作流配置-->
|
||||
<warm-flow.version>1.6.0-m5</warm-flow.version>
|
||||
<warm-flow.version>1.6.6</warm-flow.version>
|
||||
|
||||
<!-- 插件版本 -->
|
||||
<maven-jar-plugin.version>3.2.2</maven-jar-plugin.version>
|
||||
|
@ -14,7 +14,7 @@
|
||||
</description>
|
||||
|
||||
<properties>
|
||||
<revision>5.3.0-BETA</revision>
|
||||
<revision>5.3.0</revision>
|
||||
</properties>
|
||||
|
||||
<dependencyManagement>
|
||||
|
@ -0,0 +1,30 @@
|
||||
package org.dromara.common.core.domain.dto;
|
||||
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 启动流程返回对象
|
||||
*
|
||||
* @author Lion Li
|
||||
*/
|
||||
@Data
|
||||
public class StartProcessReturnDTO implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 流程实例id
|
||||
*/
|
||||
private Long processInstanceId;
|
||||
|
||||
/**
|
||||
* 任务id
|
||||
*/
|
||||
private Long taskId;
|
||||
|
||||
}
|
@ -4,6 +4,7 @@ import lombok.Data;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 总体流程监听
|
||||
@ -36,6 +37,11 @@ public class ProcessEvent implements Serializable {
|
||||
*/
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 办理参数
|
||||
*/
|
||||
private Map<String, Object> params;
|
||||
|
||||
/**
|
||||
* 当为true时为申请人节点办理
|
||||
*/
|
||||
|
@ -2,6 +2,7 @@ package org.dromara.common.core.service;
|
||||
|
||||
import org.dromara.common.core.domain.dto.CompleteTaskDTO;
|
||||
import org.dromara.common.core.domain.dto.StartProcessDTO;
|
||||
import org.dromara.common.core.domain.dto.StartProcessReturnDTO;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@ -45,6 +46,13 @@ public interface WorkflowService {
|
||||
*/
|
||||
void setVariable(Long instanceId, Map<String, Object> variable);
|
||||
|
||||
/**
|
||||
* 获取流程变量
|
||||
*
|
||||
* @param instanceId 流程实例id
|
||||
*/
|
||||
Map<String, Object> instanceVariable(Long instanceId);
|
||||
|
||||
/**
|
||||
* 按照业务id查询流程实例id
|
||||
*
|
||||
@ -66,7 +74,7 @@ public interface WorkflowService {
|
||||
* @param startProcess 参数
|
||||
* @return 结果
|
||||
*/
|
||||
Map<String, Object> startWorkFlow(StartProcessDTO startProcess);
|
||||
StartProcessReturnDTO startWorkFlow(StartProcessDTO startProcess);
|
||||
|
||||
/**
|
||||
* 办理任务
|
||||
|
@ -125,7 +125,7 @@ public class FlwCategoryController extends BaseController {
|
||||
* @param categoryBo 流程分类
|
||||
*/
|
||||
@GetMapping("/categoryTree")
|
||||
public R<List<Tree<Long>>> categoryTree(FlowCategoryBo categoryBo) {
|
||||
public R<List<Tree<String>>> categoryTree(FlowCategoryBo categoryBo) {
|
||||
return R.ok(flwCategoryService.selectCategoryTreeList(categoryBo));
|
||||
}
|
||||
|
||||
|
@ -138,7 +138,7 @@ public class FlwInstanceController extends BaseController {
|
||||
* @param instanceId 流程实例id
|
||||
*/
|
||||
@GetMapping("/instanceVariable/{instanceId}")
|
||||
public R<Map<String, Object>> instanceVariable(@PathVariable String instanceId) {
|
||||
public R<Map<String, Object>> instanceVariable(@PathVariable Long instanceId) {
|
||||
return R.ok(flwInstanceService.instanceVariable(instanceId));
|
||||
}
|
||||
|
||||
|
@ -2,6 +2,7 @@ package org.dromara.workflow.controller;
|
||||
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.core.domain.dto.StartProcessReturnDTO;
|
||||
import org.dromara.common.core.domain.dto.UserDTO;
|
||||
import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.idempotent.annotation.RepeatSubmit;
|
||||
@ -20,7 +21,6 @@ import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 任务管理 控制层
|
||||
@ -44,9 +44,9 @@ public class FlwTaskController extends BaseController {
|
||||
@Log(title = "任务管理", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping("/startWorkFlow")
|
||||
public R<Map<String, Object>> startWorkFlow(@Validated(AddGroup.class) @RequestBody StartProcessBo startProcessBo) {
|
||||
Map<String, Object> map = flwTaskService.startWorkFlow(startProcessBo);
|
||||
return R.ok("提交成功", map);
|
||||
public R<StartProcessReturnDTO> startWorkFlow(@Validated(AddGroup.class) @RequestBody StartProcessBo startProcessBo) {
|
||||
StartProcessReturnDTO startProcessReturn = flwTaskService.startWorkFlow(startProcessBo);
|
||||
return R.ok("提交成功", startProcessReturn);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -30,6 +30,11 @@ public class BackProcessBo implements Serializable {
|
||||
@NotNull(message = "任务ID不能为空", groups = AddGroup.class)
|
||||
private Long taskId;
|
||||
|
||||
/**
|
||||
* 附件id
|
||||
*/
|
||||
private String fileId;
|
||||
|
||||
/**
|
||||
* 消息类型
|
||||
*/
|
||||
|
@ -4,8 +4,6 @@ import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import org.dromara.common.excel.annotation.ExcelDictFormat;
|
||||
import org.dromara.common.excel.convert.ExcelDictConvert;
|
||||
import org.dromara.workflow.domain.FlowCategory;
|
||||
|
||||
import java.io.Serial;
|
||||
|
@ -9,6 +9,8 @@ import org.dromara.common.tenant.helper.TenantHelper;
|
||||
import org.dromara.workflow.common.ConditionalOnEnable;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 流程监听服务
|
||||
*
|
||||
@ -28,7 +30,7 @@ public class FlowProcessEventHandler {
|
||||
* @param status 状态
|
||||
* @param submit 当为true时为申请人节点办理
|
||||
*/
|
||||
public void processHandler(String flowCode, String businessId, String status, boolean submit) {
|
||||
public void processHandler(String flowCode, String businessId, String status, Map<String, Object> params, boolean submit) {
|
||||
String tenantId = TenantHelper.getTenantId();
|
||||
log.info("发布流程事件,租户ID: {}, 流程状态: {}, 流程编码: {}, 业务ID: {}, 是否申请人节点办理: {}", tenantId, status, flowCode, businessId, submit);
|
||||
ProcessEvent processEvent = new ProcessEvent();
|
||||
@ -36,6 +38,7 @@ public class FlowProcessEventHandler {
|
||||
processEvent.setFlowCode(flowCode);
|
||||
processEvent.setBusinessId(businessId);
|
||||
processEvent.setStatus(status);
|
||||
processEvent.setParams(params);
|
||||
processEvent.setSubmit(submit);
|
||||
SpringUtils.context().publishEvent(processEvent);
|
||||
}
|
||||
|
@ -17,7 +17,9 @@ import org.dromara.workflow.service.IFlwInstanceService;
|
||||
import org.dromara.workflow.service.IFlwTaskService;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 全局任务办理监听
|
||||
@ -81,10 +83,17 @@ public class WorkflowGlobalListener implements GlobalListener {
|
||||
Definition definition = listenerVariable.getDefinition();
|
||||
String businessId = instance.getBusinessId();
|
||||
String flowStatus = instance.getFlowStatus();
|
||||
Map<String, Object> params = new HashMap<>();
|
||||
// 历史任务扩展(通常为附件)
|
||||
params.put("hisTaskExt", listenerVariable.getFlowParams().getHisTaskExt());
|
||||
// 办理人
|
||||
params.put("handler", listenerVariable.getFlowParams().getHandler());
|
||||
// 办理意见
|
||||
params.put("message", listenerVariable.getFlowParams().getMessage());
|
||||
// 判断流程状态(发布:撤销,退回,作废,终止,已完成事件)
|
||||
String status = determineFlowStatus(instance, flowStatus);
|
||||
if (StringUtils.isNotBlank(status)) {
|
||||
flowProcessEventHandler.processHandler(definition.getFlowCode(), businessId, status, false);
|
||||
flowProcessEventHandler.processHandler(definition.getFlowCode(), businessId, status, params, false);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -27,7 +27,7 @@ public interface IFlwCategoryService {
|
||||
* @param categoryId 流程分类ID
|
||||
* @return 流程分类名称
|
||||
*/
|
||||
String selectCategoryNameById(String categoryId);
|
||||
String selectCategoryNameById(Long categoryId);
|
||||
|
||||
/**
|
||||
* 查询符合条件的流程分类列表
|
||||
@ -43,7 +43,7 @@ public interface IFlwCategoryService {
|
||||
* @param category 流程分类信息
|
||||
* @return 流程分类树信息集合
|
||||
*/
|
||||
List<Tree<Long>> selectCategoryTreeList(FlowCategoryBo category);
|
||||
List<Tree<String>> selectCategoryTreeList(FlowCategoryBo category);
|
||||
|
||||
/**
|
||||
* 校验流程分类是否有数据权限
|
||||
|
@ -123,7 +123,7 @@ public interface IFlwInstanceService {
|
||||
* @param instanceId 实例id
|
||||
* @return 结果
|
||||
*/
|
||||
Map<String, Object> instanceVariable(String instanceId);
|
||||
Map<String, Object> instanceVariable(Long instanceId);
|
||||
|
||||
/**
|
||||
* 设置流程变量
|
||||
|
@ -1,5 +1,6 @@
|
||||
package org.dromara.workflow.service;
|
||||
|
||||
import org.dromara.common.core.domain.dto.StartProcessReturnDTO;
|
||||
import org.dromara.common.core.domain.dto.UserDTO;
|
||||
import org.dromara.common.mybatis.core.page.PageQuery;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
@ -26,7 +27,7 @@ public interface IFlwTaskService {
|
||||
* @param startProcessBo 启动流程参数
|
||||
* @return 结果
|
||||
*/
|
||||
Map<String, Object> startWorkFlow(StartProcessBo startProcessBo);
|
||||
StartProcessReturnDTO startWorkFlow(StartProcessBo startProcessBo);
|
||||
|
||||
/**
|
||||
* 办理任务
|
||||
|
@ -1,5 +1,6 @@
|
||||
package org.dromara.workflow.service.impl;
|
||||
|
||||
import cn.hutool.core.convert.Convert;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.dromara.common.translation.annotation.TranslationType;
|
||||
@ -25,9 +26,12 @@ public class CategoryNameTranslationImpl implements TranslationInterface<String>
|
||||
|
||||
@Override
|
||||
public String translation(Object key, String other) {
|
||||
Long id = null;
|
||||
if (key instanceof String categoryId) {
|
||||
return flwCategoryService.selectCategoryNameById(categoryId);
|
||||
id = Convert.toLong(categoryId);
|
||||
} else if (key instanceof Long categoryId) {
|
||||
id = categoryId;
|
||||
}
|
||||
return null;
|
||||
return flwCategoryService.selectCategoryNameById(id);
|
||||
}
|
||||
}
|
||||
|
@ -66,8 +66,8 @@ public class FlwCategoryServiceImpl implements IFlwCategoryService {
|
||||
*/
|
||||
@Cacheable(cacheNames = FlowConstant.FLOW_CATEGORY_NAME, key = "#categoryId")
|
||||
@Override
|
||||
public String selectCategoryNameById(String categoryId) {
|
||||
if (StringUtils.isBlank(categoryId)) {
|
||||
public String selectCategoryNameById(Long categoryId) {
|
||||
if (ObjectUtil.isNull(categoryId)) {
|
||||
return null;
|
||||
}
|
||||
FlowCategory category = baseMapper.selectOne(new LambdaQueryWrapper<FlowCategory>()
|
||||
@ -94,24 +94,24 @@ public class FlwCategoryServiceImpl implements IFlwCategoryService {
|
||||
* @return 流程分类树信息集合
|
||||
*/
|
||||
@Override
|
||||
public List<Tree<Long>> selectCategoryTreeList(FlowCategoryBo category) {
|
||||
public List<Tree<String>> selectCategoryTreeList(FlowCategoryBo category) {
|
||||
LambdaQueryWrapper<FlowCategory> lqw = buildQueryWrapper(category);
|
||||
List<FlowCategoryVo> categorys = baseMapper.selectVoList(lqw);
|
||||
if (CollUtil.isEmpty(categorys)) {
|
||||
return CollUtil.newArrayList();
|
||||
}
|
||||
// 获取当前列表中每一个节点的parentId,然后在列表中查找是否有id与其parentId对应,若无对应,则表明此时节点列表中,该节点在当前列表中属于顶级节点
|
||||
List<Tree<Long>> treeList = CollUtil.newArrayList();
|
||||
List<Tree<String>> treeList = CollUtil.newArrayList();
|
||||
for (FlowCategoryVo d : categorys) {
|
||||
Long parentId = d.getParentId();
|
||||
FlowCategoryVo categoryVo = StreamUtils.findFirst(categorys, it -> it.getCategoryId().longValue() == parentId);
|
||||
String parentId = d.getParentId().toString();
|
||||
FlowCategoryVo categoryVo = StreamUtils.findFirst(categorys, it -> it.getCategoryId().toString().equals(parentId));
|
||||
if (ObjectUtil.isNull(categoryVo)) {
|
||||
List<Tree<Long>> trees = TreeBuildUtils.build(categorys, parentId, (dept, tree) ->
|
||||
tree.setId(dept.getCategoryId())
|
||||
.setParentId(dept.getParentId())
|
||||
List<Tree<String>> trees = TreeBuildUtils.build(categorys, parentId, (dept, tree) ->
|
||||
tree.setId(dept.getCategoryId().toString())
|
||||
.setParentId(dept.getParentId().toString())
|
||||
.setName(dept.getCategoryName())
|
||||
.setWeight(dept.getOrderNum()));
|
||||
Tree<Long> tree = StreamUtils.findFirst(trees, it -> it.getId().longValue() == d.getCategoryId());
|
||||
Tree<String> tree = StreamUtils.findFirst(trees, it -> it.getId().equals(d.getCategoryId().toString()));
|
||||
treeList.add(tree);
|
||||
}
|
||||
}
|
||||
|
@ -107,7 +107,7 @@ public class FlwDefinitionServiceImpl implements IFlwDefinitionService {
|
||||
wrapper.like(StringUtils.isNotBlank(flowDefinition.getFlowName()), FlowDefinition::getFlowName, flowDefinition.getFlowName());
|
||||
if (StringUtils.isNotBlank(flowDefinition.getCategory())) {
|
||||
List<Long> categoryIds = flwCategoryMapper.selectCategoryIdsByParentId(Convert.toLong(flowDefinition.getCategory()));
|
||||
wrapper.in(FlowDefinition::getCategory, categoryIds);
|
||||
wrapper.in(FlowDefinition::getCategory, StreamUtils.toList(categoryIds, Convert::toStr));
|
||||
}
|
||||
wrapper.orderByDesc(FlowDefinition::getCreateTime);
|
||||
return wrapper;
|
||||
|
@ -138,7 +138,7 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService {
|
||||
queryWrapper.like(StringUtils.isNotBlank(flowInstanceBo.getFlowCode()), "fd.flow_code", flowInstanceBo.getFlowCode());
|
||||
if (StringUtils.isNotBlank(flowInstanceBo.getCategory())) {
|
||||
List<Long> categoryIds = flwCategoryMapper.selectCategoryIdsByParentId(Convert.toLong(flowInstanceBo.getCategory()));
|
||||
queryWrapper.in("fd.category", categoryIds);
|
||||
queryWrapper.in("fd.category", StreamUtils.toList(categoryIds, Convert::toStr));
|
||||
}
|
||||
queryWrapper.eq(StringUtils.isNotBlank(flowInstanceBo.getBusinessId()), "fi.business_id", flowInstanceBo.getBusinessId());
|
||||
queryWrapper.in(CollUtil.isNotEmpty(flowInstanceBo.getCreateByIds()), "fi.create_by", flowInstanceBo.getCreateByIds());
|
||||
@ -344,7 +344,7 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService {
|
||||
* @param instanceId 实例id
|
||||
*/
|
||||
@Override
|
||||
public Map<String, Object> instanceVariable(String instanceId) {
|
||||
public Map<String, Object> instanceVariable(Long instanceId) {
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
FlowInstance flowInstance = flowInstanceMapper.selectById(instanceId);
|
||||
Map<String, Object> variableMap = flowInstance.getVariableMap();
|
||||
|
@ -11,6 +11,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.dromara.common.core.domain.dto.StartProcessReturnDTO;
|
||||
import org.dromara.common.core.domain.dto.UserDTO;
|
||||
import org.dromara.common.core.enums.BusinessStatusEnum;
|
||||
import org.dromara.common.core.exception.ServiceException;
|
||||
@ -86,7 +87,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService {
|
||||
*/
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Map<String, Object> startWorkFlow(StartProcessBo startProcessBo) {
|
||||
public StartProcessReturnDTO startWorkFlow(StartProcessBo startProcessBo) {
|
||||
String businessId = startProcessBo.getBusinessId();
|
||||
if (StringUtils.isBlank(businessId)) {
|
||||
throw new ServiceException("启动工作流时必须包含业务ID");
|
||||
@ -102,7 +103,10 @@ public class FlwTaskServiceImpl implements IFlwTaskService {
|
||||
if (ObjectUtil.isNotNull(flowInstance)) {
|
||||
BusinessStatusEnum.checkStartStatus(flowInstance.getFlowStatus());
|
||||
List<Task> taskList = taskService.list(new FlowTask().setInstanceId(flowInstance.getId()));
|
||||
return Map.of(PROCESS_INSTANCE_ID, taskList.get(0).getInstanceId(), TASK_ID, taskList.get(0).getId());
|
||||
StartProcessReturnDTO dto = new StartProcessReturnDTO();
|
||||
dto.setProcessInstanceId(taskList.get(0).getInstanceId());
|
||||
dto.setTaskId(taskList.get(0).getId());
|
||||
return dto;
|
||||
}
|
||||
FlowParams flowParams = new FlowParams();
|
||||
flowParams.flowCode(startProcessBo.getFlowCode());
|
||||
@ -119,7 +123,10 @@ public class FlwTaskServiceImpl implements IFlwTaskService {
|
||||
if (taskList.size() > 1) {
|
||||
throw new ServiceException("请检查流程第一个环节是否为申请人!");
|
||||
}
|
||||
return Map.of(PROCESS_INSTANCE_ID, instance.getId(), TASK_ID, taskList.get(0).getId());
|
||||
StartProcessReturnDTO dto = new StartProcessReturnDTO();
|
||||
dto.setProcessInstanceId(instance.getId());
|
||||
dto.setTaskId(taskList.get(0).getId());
|
||||
return dto;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -146,7 +153,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService {
|
||||
Definition definition = defService.getById(flowTask.getDefinitionId());
|
||||
// 检查流程状态是否为草稿、已撤销或已退回状态,若是则执行流程提交监听
|
||||
if (BusinessStatusEnum.isDraftOrCancelOrBack(ins.getFlowStatus())) {
|
||||
flowProcessEventHandler.processHandler(definition.getFlowCode(), ins.getBusinessId(), ins.getFlowStatus(), true);
|
||||
flowProcessEventHandler.processHandler(definition.getFlowCode(), ins.getBusinessId(), ins.getFlowStatus(), null, true);
|
||||
}
|
||||
// 构建流程参数,包括变量、跳转类型、消息、处理人、权限等信息
|
||||
FlowParams flowParams = new FlowParams();
|
||||
@ -347,7 +354,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService {
|
||||
wrapper.in(CollUtil.isNotEmpty(flowTaskBo.getCreateByIds()), "t.create_by", flowTaskBo.getCreateByIds());
|
||||
if (StringUtils.isNotBlank(flowTaskBo.getCategory())) {
|
||||
List<Long> categoryIds = flwCategoryMapper.selectCategoryIdsByParentId(Convert.toLong(flowTaskBo.getCategory()));
|
||||
wrapper.in("t.category", categoryIds);
|
||||
wrapper.in("t.category", StreamUtils.toList(categoryIds, Convert::toStr));
|
||||
}
|
||||
wrapper.orderByDesc("t.create_time");
|
||||
return wrapper;
|
||||
@ -381,6 +388,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService {
|
||||
flowParams.skipType(SkipType.REJECT.getKey());
|
||||
flowParams.flowStatus(applyNodeCode.equals(bo.getNodeCode()) ? TaskStatusEnum.BACK.getStatus() : TaskStatusEnum.WAITING.getStatus())
|
||||
.hisStatus(TaskStatusEnum.BACK.getStatus());
|
||||
flowParams.hisTaskExt(bo.getFileId());
|
||||
taskService.skip(task.getId(), flowParams);
|
||||
|
||||
Instance instance = insService.getById(inst.getId());
|
||||
|
@ -1,6 +1,8 @@
|
||||
package org.dromara.workflow.service.impl;
|
||||
|
||||
import cn.hutool.core.convert.Convert;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.map.MapUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
@ -28,6 +30,7 @@ import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 请假Service业务层处理
|
||||
@ -131,6 +134,16 @@ public class TestLeaveServiceImpl implements ITestLeaveService {
|
||||
log.info("当前任务执行了{}", processEvent.toString());
|
||||
TestLeave testLeave = baseMapper.selectById(Long.valueOf(processEvent.getBusinessId()));
|
||||
testLeave.setStatus(processEvent.getStatus());
|
||||
// 用于例如审批附件 审批意见等 存储到业务表内 自行根据业务实现存储流程
|
||||
Map<String, Object> params = processEvent.getParams();
|
||||
if (MapUtil.isNotEmpty(params)) {
|
||||
// 历史任务扩展(通常为附件)
|
||||
String hisTaskExt = Convert.toStr(params.get("hisTaskExt"));
|
||||
// 办理人
|
||||
String handler = Convert.toStr(params.get("handler"));
|
||||
// 办理意见
|
||||
String message = Convert.toStr(params.get("message"));
|
||||
}
|
||||
if (processEvent.isSubmit()) {
|
||||
testLeave.setStatus(BusinessStatusEnum.WAITING.getStatus());
|
||||
}
|
||||
|
@ -5,6 +5,7 @@ import cn.hutool.core.util.ObjectUtil;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.core.domain.dto.CompleteTaskDTO;
|
||||
import org.dromara.common.core.domain.dto.StartProcessDTO;
|
||||
import org.dromara.common.core.domain.dto.StartProcessReturnDTO;
|
||||
import org.dromara.common.core.service.WorkflowService;
|
||||
import org.dromara.common.core.utils.StringUtils;
|
||||
import org.dromara.warm.flow.orm.entity.FlowInstance;
|
||||
@ -77,6 +78,16 @@ public class WorkflowServiceImpl implements WorkflowService {
|
||||
flwInstanceService.setVariable(instanceId, variables);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取流程变量
|
||||
*
|
||||
* @param instanceId 流程实例id
|
||||
*/
|
||||
@Override
|
||||
public Map<String, Object> instanceVariable(Long instanceId) {
|
||||
return flwInstanceService.instanceVariable(instanceId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 按照业务id查询流程实例id
|
||||
*
|
||||
@ -105,7 +116,7 @@ public class WorkflowServiceImpl implements WorkflowService {
|
||||
* @param startProcess 参数
|
||||
*/
|
||||
@Override
|
||||
public Map<String, Object> startWorkFlow(StartProcessDTO startProcess) {
|
||||
public StartProcessReturnDTO startWorkFlow(StartProcessDTO startProcess) {
|
||||
return flwTaskService.startWorkFlow(BeanUtil.toBean(startProcess, StartProcessBo.class));
|
||||
}
|
||||
|
||||
|
@ -98,7 +98,7 @@ services:
|
||||
network_mode: "host"
|
||||
|
||||
ruoyi-server1:
|
||||
image: ruoyi/ruoyi-server:5.3.0-BETA
|
||||
image: ruoyi/ruoyi-server:5.3.0
|
||||
container_name: ruoyi-server1
|
||||
environment:
|
||||
# 时区上海
|
||||
@ -113,7 +113,7 @@ services:
|
||||
network_mode: "host"
|
||||
|
||||
ruoyi-server2:
|
||||
image: ruoyi/ruoyi-server:5.3.0-BETA
|
||||
image: ruoyi/ruoyi-server:5.3.0
|
||||
container_name: ruoyi-server2
|
||||
environment:
|
||||
# 时区上海
|
||||
@ -128,7 +128,7 @@ services:
|
||||
network_mode: "host"
|
||||
|
||||
ruoyi-monitor-admin:
|
||||
image: ruoyi/ruoyi-monitor-admin:5.3.0-BETA
|
||||
image: ruoyi/ruoyi-monitor-admin:5.3.0
|
||||
container_name: ruoyi-monitor-admin
|
||||
environment:
|
||||
# 时区上海
|
||||
@ -140,7 +140,7 @@ services:
|
||||
network_mode: "host"
|
||||
|
||||
ruoyi-snailjob-server:
|
||||
image: ruoyi/ruoyi-snailjob-server:5.3.0-BETA
|
||||
image: ruoyi/ruoyi-snailjob-server:5.3.0
|
||||
container_name: ruoyi-snailjob-server
|
||||
environment:
|
||||
# 时区上海
|
||||
|
@ -615,6 +615,8 @@ insert into sys_role_menu values ('3', '105');
|
||||
insert into sys_role_menu values ('3', '106');
|
||||
insert into sys_role_menu values ('3', '107');
|
||||
insert into sys_role_menu values ('3', '108');
|
||||
insert into sys_role_menu values ('3', '118');
|
||||
insert into sys_role_menu values ('3', '123');
|
||||
insert into sys_role_menu values ('3', '500');
|
||||
insert into sys_role_menu values ('3', '501');
|
||||
insert into sys_role_menu values ('3', '1001');
|
||||
@ -662,6 +664,12 @@ insert into sys_role_menu values ('3', '1042');
|
||||
insert into sys_role_menu values ('3', '1043');
|
||||
insert into sys_role_menu values ('3', '1044');
|
||||
insert into sys_role_menu values ('3', '1045');
|
||||
insert into sys_role_menu values ('3', '1050');
|
||||
insert into sys_role_menu values ('3', '1061');
|
||||
insert into sys_role_menu values ('3', '1062');
|
||||
insert into sys_role_menu values ('3', '1063');
|
||||
insert into sys_role_menu values ('3', '1064');
|
||||
insert into sys_role_menu values ('3', '1065');
|
||||
insert into sys_role_menu values ('3', '1500');
|
||||
insert into sys_role_menu values ('3', '1501');
|
||||
insert into sys_role_menu values ('3', '1502');
|
||||
@ -674,6 +682,25 @@ insert into sys_role_menu values ('3', '1508');
|
||||
insert into sys_role_menu values ('3', '1509');
|
||||
insert into sys_role_menu values ('3', '1510');
|
||||
insert into sys_role_menu values ('3', '1511');
|
||||
insert into sys_role_menu values ('3', '1600');
|
||||
insert into sys_role_menu values ('3', '1601');
|
||||
insert into sys_role_menu values ('3', '1602');
|
||||
insert into sys_role_menu values ('3', '1603');
|
||||
insert into sys_role_menu values ('3', '1620');
|
||||
insert into sys_role_menu values ('3', '1621');
|
||||
insert into sys_role_menu values ('3', '1622');
|
||||
insert into sys_role_menu values ('3', '1623');
|
||||
insert into sys_role_menu values ('3', '11618');
|
||||
insert into sys_role_menu values ('3', '11619');
|
||||
insert into sys_role_menu values ('3', '11629');
|
||||
insert into sys_role_menu values ('3', '11632');
|
||||
insert into sys_role_menu values ('3', '11633');
|
||||
insert into sys_role_menu values ('3', '11638');
|
||||
insert into sys_role_menu values ('3', '11639');
|
||||
insert into sys_role_menu values ('3', '11640');
|
||||
insert into sys_role_menu values ('3', '11641');
|
||||
insert into sys_role_menu values ('3', '11642');
|
||||
insert into sys_role_menu values ('3', '11643');
|
||||
insert into sys_role_menu values ('4', '5');
|
||||
insert into sys_role_menu values ('4', '1500');
|
||||
insert into sys_role_menu values ('4', '1501');
|
||||
|
@ -617,6 +617,8 @@ insert into sys_role_menu values ('3', '105');
|
||||
insert into sys_role_menu values ('3', '106');
|
||||
insert into sys_role_menu values ('3', '107');
|
||||
insert into sys_role_menu values ('3', '108');
|
||||
insert into sys_role_menu values ('3', '118');
|
||||
insert into sys_role_menu values ('3', '123');
|
||||
insert into sys_role_menu values ('3', '500');
|
||||
insert into sys_role_menu values ('3', '501');
|
||||
insert into sys_role_menu values ('3', '1001');
|
||||
@ -664,6 +666,12 @@ insert into sys_role_menu values ('3', '1042');
|
||||
insert into sys_role_menu values ('3', '1043');
|
||||
insert into sys_role_menu values ('3', '1044');
|
||||
insert into sys_role_menu values ('3', '1045');
|
||||
insert into sys_role_menu values ('3', '1050');
|
||||
insert into sys_role_menu values ('3', '1061');
|
||||
insert into sys_role_menu values ('3', '1062');
|
||||
insert into sys_role_menu values ('3', '1063');
|
||||
insert into sys_role_menu values ('3', '1064');
|
||||
insert into sys_role_menu values ('3', '1065');
|
||||
insert into sys_role_menu values ('3', '1500');
|
||||
insert into sys_role_menu values ('3', '1501');
|
||||
insert into sys_role_menu values ('3', '1502');
|
||||
@ -676,6 +684,25 @@ insert into sys_role_menu values ('3', '1508');
|
||||
insert into sys_role_menu values ('3', '1509');
|
||||
insert into sys_role_menu values ('3', '1510');
|
||||
insert into sys_role_menu values ('3', '1511');
|
||||
insert into sys_role_menu values ('3', '1600');
|
||||
insert into sys_role_menu values ('3', '1601');
|
||||
insert into sys_role_menu values ('3', '1602');
|
||||
insert into sys_role_menu values ('3', '1603');
|
||||
insert into sys_role_menu values ('3', '1620');
|
||||
insert into sys_role_menu values ('3', '1621');
|
||||
insert into sys_role_menu values ('3', '1622');
|
||||
insert into sys_role_menu values ('3', '1623');
|
||||
insert into sys_role_menu values ('3', '11618');
|
||||
insert into sys_role_menu values ('3', '11619');
|
||||
insert into sys_role_menu values ('3', '11629');
|
||||
insert into sys_role_menu values ('3', '11632');
|
||||
insert into sys_role_menu values ('3', '11633');
|
||||
insert into sys_role_menu values ('3', '11638');
|
||||
insert into sys_role_menu values ('3', '11639');
|
||||
insert into sys_role_menu values ('3', '11640');
|
||||
insert into sys_role_menu values ('3', '11641');
|
||||
insert into sys_role_menu values ('3', '11642');
|
||||
insert into sys_role_menu values ('3', '11643');
|
||||
insert into sys_role_menu values ('4', '5');
|
||||
insert into sys_role_menu values ('4', '1500');
|
||||
insert into sys_role_menu values ('4', '1501');
|
||||
|
@ -136,6 +136,7 @@ CREATE TABLE flow_instance
|
||||
variable text NULL, -- 任务变量
|
||||
flow_status varchar(20) NOT NULL, -- 流程状态(0待提交 1审批中 2 审批通过 8已完成 9已退回 10失效)
|
||||
activity_status int2 NOT NULL DEFAULT 1, -- 流程激活状态(0挂起 1激活)
|
||||
def_json text NULL, -- 流程定义json
|
||||
create_by varchar(64) NULL DEFAULT '':: character varying, -- 创建者
|
||||
create_time timestamp NULL, -- 创建时间
|
||||
update_time timestamp NULL, -- 更新时间
|
||||
@ -155,6 +156,7 @@ COMMENT ON COLUMN flow_instance.node_name IS '流程节点名称';
|
||||
COMMENT ON COLUMN flow_instance.variable IS '任务变量';
|
||||
COMMENT ON COLUMN flow_instance.flow_status IS '流程状态(0待提交 1审批中 2 审批通过 3自动通过 4终止 5作废 6撤销 7取回 8已完成 9已退回 10失效)';
|
||||
COMMENT ON COLUMN flow_instance.activity_status IS '流程激活状态(0挂起 1激活)';
|
||||
COMMENT ON COLUMN flow_instance.def_json IS '流程定义json';
|
||||
COMMENT ON COLUMN flow_instance.create_by IS '创建者';
|
||||
COMMENT ON COLUMN flow_instance.create_time IS '创建时间';
|
||||
COMMENT ON COLUMN flow_instance.update_time IS '更新时间';
|
||||
@ -199,8 +201,8 @@ CREATE TABLE flow_his_task
|
||||
definition_id int8 NOT NULL, -- 对应flow_definition表的id
|
||||
instance_id int8 NOT NULL, -- 对应flow_instance表的id
|
||||
task_id int8 NOT NULL, -- 对应flow_task表的id
|
||||
node_code varchar(100) NULL, -- 开始节点编码
|
||||
node_name varchar(100) NULL, -- 开始节点名称
|
||||
node_code varchar(200) NULL, -- 开始节点编码
|
||||
node_name varchar(200) NULL, -- 开始节点名称
|
||||
node_type int2 NULL, -- 开始节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)
|
||||
target_node_code varchar(200) NULL, -- 目标节点编码
|
||||
target_node_name varchar(200) NULL, -- 结束节点名称
|
||||
|
@ -441,6 +441,8 @@ insert into sys_role_menu values ('3', '105');
|
||||
insert into sys_role_menu values ('3', '106');
|
||||
insert into sys_role_menu values ('3', '107');
|
||||
insert into sys_role_menu values ('3', '108');
|
||||
insert into sys_role_menu values ('3', '118');
|
||||
insert into sys_role_menu values ('3', '123');
|
||||
insert into sys_role_menu values ('3', '500');
|
||||
insert into sys_role_menu values ('3', '501');
|
||||
insert into sys_role_menu values ('3', '1001');
|
||||
@ -488,6 +490,12 @@ insert into sys_role_menu values ('3', '1042');
|
||||
insert into sys_role_menu values ('3', '1043');
|
||||
insert into sys_role_menu values ('3', '1044');
|
||||
insert into sys_role_menu values ('3', '1045');
|
||||
insert into sys_role_menu values ('3', '1050');
|
||||
insert into sys_role_menu values ('3', '1061');
|
||||
insert into sys_role_menu values ('3', '1062');
|
||||
insert into sys_role_menu values ('3', '1063');
|
||||
insert into sys_role_menu values ('3', '1064');
|
||||
insert into sys_role_menu values ('3', '1065');
|
||||
insert into sys_role_menu values ('3', '1500');
|
||||
insert into sys_role_menu values ('3', '1501');
|
||||
insert into sys_role_menu values ('3', '1502');
|
||||
@ -500,6 +508,25 @@ insert into sys_role_menu values ('3', '1508');
|
||||
insert into sys_role_menu values ('3', '1509');
|
||||
insert into sys_role_menu values ('3', '1510');
|
||||
insert into sys_role_menu values ('3', '1511');
|
||||
insert into sys_role_menu values ('3', '1600');
|
||||
insert into sys_role_menu values ('3', '1601');
|
||||
insert into sys_role_menu values ('3', '1602');
|
||||
insert into sys_role_menu values ('3', '1603');
|
||||
insert into sys_role_menu values ('3', '1620');
|
||||
insert into sys_role_menu values ('3', '1621');
|
||||
insert into sys_role_menu values ('3', '1622');
|
||||
insert into sys_role_menu values ('3', '1623');
|
||||
insert into sys_role_menu values ('3', '11618');
|
||||
insert into sys_role_menu values ('3', '11619');
|
||||
insert into sys_role_menu values ('3', '11629');
|
||||
insert into sys_role_menu values ('3', '11632');
|
||||
insert into sys_role_menu values ('3', '11633');
|
||||
insert into sys_role_menu values ('3', '11638');
|
||||
insert into sys_role_menu values ('3', '11639');
|
||||
insert into sys_role_menu values ('3', '11640');
|
||||
insert into sys_role_menu values ('3', '11641');
|
||||
insert into sys_role_menu values ('3', '11642');
|
||||
insert into sys_role_menu values ('3', '11643');
|
||||
insert into sys_role_menu values ('4', '5');
|
||||
insert into sys_role_menu values ('4', '1500');
|
||||
insert into sys_role_menu values ('4', '1501');
|
||||
|
@ -1239,7 +1239,7 @@ INSERT sys_dict_data VALUES (18, N'000000', 1, N'新增', N'1', N'sys_oper_type'
|
||||
GO
|
||||
INSERT sys_dict_data VALUES (19, N'000000', 2, N'修改', N'2', N'sys_oper_type', N'', N'info', N'N', 103, 1, getdate(), NULL, NULL, N'修改操作')
|
||||
GO
|
||||
INSERT sys_dict_data VALUES (20, N'000000', 3, N'删除', N'3', N'sys_oper_type', N'', N'danger', N'N', 103, 1, getdate(), NULL, NULL, N'删除操作')
|
||||
INSERT sys_dict_data VALUES (20, N'000000', 3, N'删除', N3, N'sys_oper_type', N'', N'danger', N'N', 103, 1, getdate(), NULL, NULL, N'删除操作')
|
||||
GO
|
||||
INSERT sys_dict_data VALUES (21, N'000000', 4, N'授权', N'4', N'sys_oper_type', N'', N'primary', N'N', 103, 1, getdate(), NULL, NULL, N'授权操作')
|
||||
GO
|
||||
@ -2479,6 +2479,10 @@ INSERT sys_role_menu VALUES (3, 107);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 108);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 118);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 123);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 500);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 501);
|
||||
@ -2573,6 +2577,18 @@ INSERT sys_role_menu VALUES (3, 1044);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 1045);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 1050);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 1061);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 1062);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 1063);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 1064);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 1065);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 1500);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 1501);
|
||||
@ -2597,6 +2613,44 @@ INSERT sys_role_menu VALUES (3, 1510);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 1511);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 1600);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 1601);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 1602);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 1603);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 1620);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 1621);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 1622);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 1623);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 11618);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 11619);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 11629);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 11632);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 11633);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 11638);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 11639);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 11640);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 11641);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 11642);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (3, 11643);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (4, 5);
|
||||
GO
|
||||
INSERT sys_role_menu VALUES (4, 1500);
|
||||
@ -3119,7 +3173,7 @@ INSERT INTO sys_oss_config VALUES (N'1', N'000000', N'minio', N'ruoyi',
|
||||
GO
|
||||
INSERT INTO sys_oss_config VALUES (N'2', N'000000', N'qiniu', N'XXXXXXXXXXXXXXXX', N'XXXXXXXXXXXXXXX', N'ruoyi', N'', N's3-cn-north-1.qiniucs.com', N'',N'N', N'', N'1', N'1', N'', 103, 1, getdate(), 1, getdate(), NULL)
|
||||
GO
|
||||
INSERT INTO sys_oss_config VALUES (N'3', N'000000', N'aliyun', N'XXXXXXXXXXXXXXX', N'XXXXXXXXXXXXXXX', N'ruoyi', N'', N'oss-cn-beijing.aliyuncs.com', N'',N'N', N'', N'1', N'1', N'', 103, 1, getdate(), 1, getdate(), NULL)
|
||||
INSERT INTO sys_oss_config VALUES (N3, N'000000', N'aliyun', N'XXXXXXXXXXXXXXX', N'XXXXXXXXXXXXXXX', N'ruoyi', N'', N'oss-cn-beijing.aliyuncs.com', N'',N'N', N'', N'1', N'1', N'', 103, 1, getdate(), 1, getdate(), NULL)
|
||||
GO
|
||||
INSERT INTO sys_oss_config VALUES (N'4', N'000000', N'qcloud', N'XXXXXXXXXXXXXXX', N'XXXXXXXXXXXXXXX', N'ruoyi-1250000000', N'', N'cos.ap-beijing.myqcloud.com', N'',N'N', N'ap-beijing', N'1', N'1', N'', 103, 1, getdate(), 1, getdate(), NULL)
|
||||
GO
|
||||
|
Loading…
x
Reference in New Issue
Block a user