You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
weaver-develop/src/weaver/formmode/hty/modeexpand/activity/FlowUtil.java

82 lines
2.8 KiB
Java

package weaver.formmode.hty.modeexpand.activity;
import cn.hutool.core.convert.Convert;
import org.apache.commons.lang3.StringUtils;
import weaver.conn.RecordSet;
import weaver.workflow.webservices.*;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @author:dxfeng
* @createTime: 2024/09/06
* @version: 1.0
*/
public class FlowUtil {
public static String parseBlankToNull(String str) {
return StringUtils.isBlank(str) ? null : str;
}
public static List<Map<String, String>> getRecordMapList(RecordSet rs) {
List<Map<String, String>> list = new ArrayList<>();
while (rs.next()) {
String[] columnNames = rs.getColumnName();
Map<String, String> dataMap = new HashMap<>();
for (String columnName : columnNames) {
dataMap.put(columnName.toLowerCase(), parseBlankToNull(rs.getString(columnName)));
}
list.add(dataMap);
}
return list;
}
public static WorkflowRequestTableField createWorkflowRequestTableField(String fieldName, String fieldValue) {
WorkflowRequestTableField tableField = new WorkflowRequestTableField();
tableField.setFieldName(fieldName);
tableField.setFieldValue(fieldValue);
tableField.setView(true);
tableField.setEdit(true);
return tableField;
}
/**
* 创建流程
*
* @param flowId
* @param title
* @param creatorId
* @param isNextFlow
* @param workflowMainTableInfo
* @param workflowDetailTableInfoArray
* @return
*/
public static String createWorkflow(String flowId, String title, String creatorId, String isNextFlow, WorkflowMainTableInfo workflowMainTableInfo, WorkflowDetailTableInfo[] workflowDetailTableInfoArray) {
WorkflowBaseInfo workflowBaseInfo = new WorkflowBaseInfo();
workflowBaseInfo.setWorkflowId(flowId);
//工作流程请求信息
WorkflowRequestInfo workflowRequestInfo = new WorkflowRequestInfo();
//请求标题
workflowRequestInfo.setRequestName(title);
//请求重要级别
workflowRequestInfo.setRequestLevel("1");
//显示
workflowRequestInfo.setCanView(true);
//创建者id
workflowRequestInfo.setCreatorId(creatorId);
//工作流信息
workflowRequestInfo.setWorkflowBaseInfo(workflowBaseInfo);
//主表
workflowRequestInfo.setWorkflowMainTableInfo(workflowMainTableInfo);
workflowRequestInfo.setWorkflowDetailTableInfos(workflowDetailTableInfoArray);
//是否提交下一节点
workflowRequestInfo.setIsnextflow(isNextFlow);
WorkflowService workflow = new WorkflowServiceImpl();
return workflow.doCreateWorkflowRequest(workflowRequestInfo, Convert.toInt(creatorId, 1));
}
}