mirror of
https://gitee.com/orangeform/orange-admin.git
synced 2026-01-17 18:46:36 +08:00
commit:同步2.1版本
This commit is contained in:
@@ -4,7 +4,7 @@
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<parent>
|
||||
<artifactId>common</artifactId>
|
||||
<groupId>com.flow.demo</groupId>
|
||||
<groupId>com.orangeforms</groupId>
|
||||
<version>1.0.0</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
@@ -16,12 +16,12 @@
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>com.flow.demo</groupId>
|
||||
<groupId>com.orangeforms</groupId>
|
||||
<artifactId>common-flow</artifactId>
|
||||
<version>1.0.0</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.flow.demo</groupId>
|
||||
<groupId>com.orangeforms</groupId>
|
||||
<artifactId>common-online</artifactId>
|
||||
<version>1.0.0</version>
|
||||
</dependency>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.flow.demo.common.flow.online.config;
|
||||
package com.orangeforms.common.flow.online.config;
|
||||
|
||||
import org.springframework.boot.context.properties.EnableConfigurationProperties;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.flow.demo.common.flow.online.config;
|
||||
package com.orangeforms.common.flow.online.config;
|
||||
|
||||
import lombok.Data;
|
||||
import org.springframework.boot.context.properties.ConfigurationProperties;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.flow.demo.common.flow.online.controller;
|
||||
package com.orangeforms.common.flow.online.controller;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
@@ -8,33 +8,33 @@ import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.github.pagehelper.page.PageMethod;
|
||||
import com.flow.demo.common.core.annotation.MyRequestBody;
|
||||
import com.flow.demo.common.core.constant.ErrorCodeEnum;
|
||||
import com.flow.demo.common.core.object.*;
|
||||
import com.flow.demo.common.core.util.MyModelUtil;
|
||||
import com.flow.demo.common.core.util.MyPageUtil;
|
||||
import com.flow.demo.common.flow.dto.FlowWorkOrderDto;
|
||||
import com.flow.demo.common.flow.vo.FlowEntryVo;
|
||||
import com.flow.demo.common.flow.vo.FlowWorkOrderVo;
|
||||
import com.flow.demo.common.online.dto.OnlineFilterDto;
|
||||
import com.flow.demo.common.online.model.*;
|
||||
import com.flow.demo.common.online.model.constant.FieldFilterType;
|
||||
import com.flow.demo.common.online.model.constant.RelationType;
|
||||
import com.flow.demo.common.online.object.ColumnData;
|
||||
import com.flow.demo.common.online.service.OnlineFormService;
|
||||
import com.flow.demo.common.online.service.OnlinePageService;
|
||||
import com.flow.demo.common.online.service.OnlineOperationService;
|
||||
import com.flow.demo.common.online.service.OnlineTableService;
|
||||
import com.flow.demo.common.online.util.OnlineOperationHelper;
|
||||
import com.flow.demo.common.flow.online.service.FlowOnlineOperationService;
|
||||
import com.flow.demo.common.flow.constant.FlowApprovalType;
|
||||
import com.flow.demo.common.flow.util.FlowOperationHelper;
|
||||
import com.flow.demo.common.flow.constant.FlowTaskStatus;
|
||||
import com.flow.demo.common.flow.dto.FlowTaskCommentDto;
|
||||
import com.flow.demo.common.flow.exception.FlowOperationException;
|
||||
import com.flow.demo.common.flow.model.*;
|
||||
import com.flow.demo.common.flow.service.*;
|
||||
import com.flow.demo.common.flow.vo.TaskInfoVo;
|
||||
import com.orangeforms.common.core.annotation.MyRequestBody;
|
||||
import com.orangeforms.common.core.constant.ErrorCodeEnum;
|
||||
import com.orangeforms.common.core.object.*;
|
||||
import com.orangeforms.common.core.util.MyModelUtil;
|
||||
import com.orangeforms.common.core.util.MyPageUtil;
|
||||
import com.orangeforms.common.flow.dto.FlowWorkOrderDto;
|
||||
import com.orangeforms.common.flow.vo.FlowEntryVo;
|
||||
import com.orangeforms.common.flow.vo.FlowWorkOrderVo;
|
||||
import com.orangeforms.common.online.dto.OnlineFilterDto;
|
||||
import com.orangeforms.common.online.model.*;
|
||||
import com.orangeforms.common.online.model.constant.FieldFilterType;
|
||||
import com.orangeforms.common.online.model.constant.RelationType;
|
||||
import com.orangeforms.common.online.object.ColumnData;
|
||||
import com.orangeforms.common.online.service.OnlineFormService;
|
||||
import com.orangeforms.common.online.service.OnlinePageService;
|
||||
import com.orangeforms.common.online.service.OnlineOperationService;
|
||||
import com.orangeforms.common.online.service.OnlineTableService;
|
||||
import com.orangeforms.common.online.util.OnlineOperationHelper;
|
||||
import com.orangeforms.common.flow.online.service.FlowOnlineOperationService;
|
||||
import com.orangeforms.common.flow.constant.FlowApprovalType;
|
||||
import com.orangeforms.common.flow.util.FlowOperationHelper;
|
||||
import com.orangeforms.common.flow.constant.FlowTaskStatus;
|
||||
import com.orangeforms.common.flow.dto.FlowTaskCommentDto;
|
||||
import com.orangeforms.common.flow.exception.FlowOperationException;
|
||||
import com.orangeforms.common.flow.model.*;
|
||||
import com.orangeforms.common.flow.service.*;
|
||||
import com.orangeforms.common.flow.vo.TaskInfoVo;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.activiti.engine.history.HistoricProcessInstance;
|
||||
import org.activiti.engine.history.HistoricTaskInstance;
|
||||
@@ -333,7 +333,10 @@ public class FlowOnlineOperationController {
|
||||
List<FlowWorkOrder> flowWorkOrderList = flowWorkOrderService.getFlowWorkOrderList(flowWorkOrderFilter, orderBy);
|
||||
MyPageData<FlowWorkOrderVo> resultData =
|
||||
MyPageUtil.makeResponseData(flowWorkOrderList, FlowWorkOrder.INSTANCE);
|
||||
this.makeWorkOrderTaskInfo(resultData.getDataList());
|
||||
ResponseResult<Void> responseResult = this.makeWorkOrderTaskInfo(resultData.getDataList());
|
||||
if (!responseResult.isSuccess()) {
|
||||
return ResponseResult.errorFrom(responseResult);
|
||||
}
|
||||
return ResponseResult.success(resultData);
|
||||
}
|
||||
|
||||
@@ -562,7 +565,7 @@ public class FlowOnlineOperationController {
|
||||
errorMessage = "数据验证失败,从表主键Id不存在!";
|
||||
return ResponseResult.error(ErrorCodeEnum.DATA_VALIDATED_FAILED, errorMessage);
|
||||
}
|
||||
OnlineColumn slaveColumn = slaveTable.getColumnMap().get(relation.getSlaveColumnId());
|
||||
OnlineColumn slaveColumn = relation.getSlaveColumn();
|
||||
Object relationSlaveDataId = dataMap.get(slaveColumn.getColumnName());
|
||||
if (relationSlaveDataId == null) {
|
||||
errorMessage = "数据验证失败,当前关联的从表字段值为NULL!";
|
||||
@@ -628,9 +631,9 @@ public class FlowOnlineOperationController {
|
||||
return ResponseResult.success(businessKey);
|
||||
}
|
||||
|
||||
private void makeWorkOrderTaskInfo(List<FlowWorkOrderVo> flowWorkOrderVoList) {
|
||||
private ResponseResult<Void> makeWorkOrderTaskInfo(List<FlowWorkOrderVo> flowWorkOrderVoList) {
|
||||
if (CollUtil.isEmpty(flowWorkOrderVoList)) {
|
||||
return;
|
||||
return ResponseResult.success();
|
||||
}
|
||||
Set<String> definitionIdSet =
|
||||
flowWorkOrderVoList.stream().map(FlowWorkOrderVo::getProcessDefinitionId).collect(Collectors.toSet());
|
||||
@@ -653,8 +656,20 @@ public class FlowOnlineOperationController {
|
||||
filterDto.setColumnName(masterTable.getPrimaryKeyColumn().getColumnName());
|
||||
filterDto.setFilterType(FieldFilterType.IN_LIST_FILTER);
|
||||
filterDto.setColumnValue(convertedBusinessKeySet);
|
||||
TaskInfoVo taskInfoVo = JSON.parseObject(flowWorkOrderVoList.get(0).getInitTaskInfo(), TaskInfoVo.class);
|
||||
// 验证在线表单及其关联数据源的合法性。
|
||||
ResponseResult<OnlineDatasource> datasourceResult = this.verifyAndGetOnlineDatasource(taskInfoVo.getFormId());
|
||||
if (!datasourceResult.isSuccess()) {
|
||||
return ResponseResult.errorFrom(datasourceResult);
|
||||
}
|
||||
OnlineDatasource datasource = datasourceResult.getData();
|
||||
ResponseResult<List<OnlineDatasourceRelation>> relationListResult =
|
||||
onlineOperationHelper.verifyAndGetRelationList(datasource.getDatasourceId(), RelationType.ONE_TO_ONE);
|
||||
if (!relationListResult.isSuccess()) {
|
||||
return ResponseResult.errorFrom(relationListResult);
|
||||
}
|
||||
List<Map<String, Object>> dataList = onlineOperationService.getMasterDataList(
|
||||
masterTable, null, null, filterList, null);
|
||||
masterTable, relationListResult.getData(), null, filterList, null);
|
||||
Map<Object, Map<String, Object>> dataMap = dataList.stream()
|
||||
.collect(Collectors.toMap(c -> c.get(masterTable.getPrimaryKeyColumn().getColumnName()), c -> c));
|
||||
for (FlowWorkOrderVo flowWorkOrderVo : flowWorkOrderVoList) {
|
||||
@@ -670,7 +685,7 @@ public class FlowOnlineOperationController {
|
||||
.map(FlowWorkOrderVo::getProcessInstanceId)
|
||||
.collect(Collectors.toList());
|
||||
if (CollUtil.isEmpty(unfinishedProcessInstanceIds)) {
|
||||
return;
|
||||
return ResponseResult.success();
|
||||
}
|
||||
List<Task> taskList = flowApiService.getTaskListByProcessInstanceIds(unfinishedProcessInstanceIds);
|
||||
Map<String, List<Task>> taskMap =
|
||||
@@ -691,5 +706,6 @@ public class FlowOnlineOperationController {
|
||||
}
|
||||
flowWorkOrderVo.setRuntimeTaskInfoList(taskArray);
|
||||
}
|
||||
return ResponseResult.success();
|
||||
}
|
||||
}
|
||||
@@ -1,10 +1,10 @@
|
||||
package com.flow.demo.common.flow.online.service;
|
||||
package com.orangeforms.common.flow.online.service;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.flow.demo.common.online.model.OnlineDatasourceRelation;
|
||||
import com.flow.demo.common.online.model.OnlineTable;
|
||||
import com.flow.demo.common.online.object.ColumnData;
|
||||
import com.flow.demo.common.flow.model.FlowTaskComment;
|
||||
import com.orangeforms.common.online.model.OnlineDatasourceRelation;
|
||||
import com.orangeforms.common.online.model.OnlineTable;
|
||||
import com.orangeforms.common.online.object.ColumnData;
|
||||
import com.orangeforms.common.flow.model.FlowTaskComment;
|
||||
import org.activiti.engine.task.Task;
|
||||
|
||||
import java.util.List;
|
||||
@@ -1,24 +1,24 @@
|
||||
package com.flow.demo.common.flow.online.service.impl;
|
||||
package com.orangeforms.common.flow.online.service.impl;
|
||||
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.map.MapUtil;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.flow.demo.common.core.object.ResponseResult;
|
||||
import com.flow.demo.common.online.model.OnlineColumn;
|
||||
import com.flow.demo.common.online.model.OnlineDatasourceRelation;
|
||||
import com.flow.demo.common.online.model.OnlineTable;
|
||||
import com.flow.demo.common.online.model.constant.RelationType;
|
||||
import com.flow.demo.common.online.object.ColumnData;
|
||||
import com.flow.demo.common.online.service.OnlineOperationService;
|
||||
import com.flow.demo.common.online.util.OnlineOperationHelper;
|
||||
import com.flow.demo.common.flow.constant.FlowApprovalType;
|
||||
import com.flow.demo.common.flow.constant.FlowTaskStatus;
|
||||
import com.flow.demo.common.flow.exception.FlowOperationException;
|
||||
import com.flow.demo.common.flow.model.FlowTaskComment;
|
||||
import com.flow.demo.common.flow.service.FlowApiService;
|
||||
import com.flow.demo.common.flow.service.FlowWorkOrderService;
|
||||
import com.flow.demo.common.flow.online.service.FlowOnlineOperationService;
|
||||
import com.orangeforms.common.core.object.ResponseResult;
|
||||
import com.orangeforms.common.online.model.OnlineColumn;
|
||||
import com.orangeforms.common.online.model.OnlineDatasourceRelation;
|
||||
import com.orangeforms.common.online.model.OnlineTable;
|
||||
import com.orangeforms.common.online.model.constant.RelationType;
|
||||
import com.orangeforms.common.online.object.ColumnData;
|
||||
import com.orangeforms.common.online.service.OnlineOperationService;
|
||||
import com.orangeforms.common.online.util.OnlineOperationHelper;
|
||||
import com.orangeforms.common.flow.constant.FlowApprovalType;
|
||||
import com.orangeforms.common.flow.constant.FlowTaskStatus;
|
||||
import com.orangeforms.common.flow.exception.FlowOperationException;
|
||||
import com.orangeforms.common.flow.model.FlowTaskComment;
|
||||
import com.orangeforms.common.flow.service.FlowApiService;
|
||||
import com.orangeforms.common.flow.service.FlowWorkOrderService;
|
||||
import com.orangeforms.common.flow.online.service.FlowOnlineOperationService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.activiti.engine.runtime.ProcessInstance;
|
||||
import org.activiti.engine.task.Task;
|
||||
@@ -53,7 +53,7 @@ public class FlowOnlineOperationServiceImpl implements FlowOnlineOperationServic
|
||||
Object dataId = onlineOperationService.saveNew(table, columnDataList);
|
||||
ProcessInstance instance =
|
||||
flowApiService.startAndTakeFirst(processDefinitionId, dataId, flowTaskComment, taskVariableData);
|
||||
flowWorkOrderService.saveNew(instance, dataId, table.getTableId());
|
||||
flowWorkOrderService.saveNew(instance, dataId, table.getTableId(), null);
|
||||
}
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
@@ -69,7 +69,7 @@ public class FlowOnlineOperationServiceImpl implements FlowOnlineOperationServic
|
||||
masterTable, masterColumnDataList, slaveColumnDataListMap);
|
||||
ProcessInstance instance =
|
||||
flowApiService.startAndTakeFirst(processDefinitionId, dataId, flowTaskComment, taskVariableData);
|
||||
flowWorkOrderService.saveNew(instance, dataId, masterTable.getTableId());
|
||||
flowWorkOrderService.saveNew(instance, dataId, masterTable.getTableId(), null);
|
||||
}
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
@@ -92,7 +92,7 @@ public class FlowOnlineOperationServiceImpl implements FlowOnlineOperationServic
|
||||
taskVariableData.putAll(variables);
|
||||
flowApiService.completeTask(task, flowTaskComment, taskVariableData);
|
||||
ProcessInstance instance = flowApiService.getProcessInstance(processInstanceId);
|
||||
flowWorkOrderService.saveNew(instance, dataId, table.getTableId());
|
||||
flowWorkOrderService.saveNew(instance, dataId, table.getTableId(), null);
|
||||
}
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
@@ -117,7 +117,7 @@ public class FlowOnlineOperationServiceImpl implements FlowOnlineOperationServic
|
||||
taskVariableData.putAll(variables);
|
||||
flowApiService.completeTask(task, flowTaskComment, taskVariableData);
|
||||
ProcessInstance instance = flowApiService.getProcessInstance(processInstanceId);
|
||||
flowWorkOrderService.saveNew(instance, dataId, masterTable.getTableId());
|
||||
flowWorkOrderService.saveNew(instance, dataId, masterTable.getTableId(), null);
|
||||
}
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
@@ -1,2 +1,2 @@
|
||||
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
|
||||
com.flow.demo.common.flow.online.config.FlowOnlineAutoConfig
|
||||
com.orangeforms.common.flow.online.config.FlowOnlineAutoConfig
|
||||
Reference in New Issue
Block a user