fix:任务执行优化,文件上传优化
This commit is contained in:
@@ -31,7 +31,9 @@ export const checklocalresourceApi = async (params: any) => {
|
||||
|
||||
/**
|
||||
* 本地任务提交接口
|
||||
* @param params taskName:任务名称 taskId:任务id taskCmd:启动软件路径 taskPreCmd:任务前处理命令 taskPostCmd:任务后处理命令 taskCmdParam:任务命令参数 taskPreCmdParam:任务前处理命令参数 taskPostCmdParam:任务后处理命令参数 fileIds:[输入文件id] fileNames:[输入文件名称] fileType:文件类型分类 owner:任务所有人 tenantId:id userId:用户id appName:应用名称 uploadId:回传文件夹id
|
||||
* @param params --subRunId 当前提交的节点id --taskName 工况名 --taskId 工况id --runId 算例id --runName 算例名 --asyncTaskId 节点同步的任务id --taskCmd 本地应用的地址 --taskPreCmd 任务前处理命令 --taskPostCmd 任务后处理命令
|
||||
* --taskCmdParam 任务命令参数 --taskPreCmdParam 任务前处理参数 --taskPostCmdParam --fileIds 下载文件的id列表 --fileNames 下载文件的名称列表 --fileType 关闭应用后回传的文件类型
|
||||
* --owner 任务发起人 --tenantId 团队id --userId 用户id --localAppName 本地应用名称 --localAppVersion 本地应用版本 --uploadId 回传文件夹的id
|
||||
* @returns
|
||||
*/
|
||||
export const submittaskApi = async (params: any) => {
|
||||
|
||||
@@ -94,16 +94,17 @@ const initFun = (data: any) => {
|
||||
if (uploading.value) {
|
||||
return;
|
||||
}
|
||||
const isSaveLocal = data.data?.isSaveLocal || 'N';
|
||||
listData.value.some((item: any, index: number) => {
|
||||
if (item.data.status === '0') {
|
||||
sliceFileFun(index);
|
||||
sliceFileFun(index, isSaveLocal);
|
||||
return true;
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
// 分片并上传
|
||||
const sliceFileFun = async (fileIndex: number) => {
|
||||
const sliceFileFun = async (fileIndex: number, isSaveLocal?: any) => {
|
||||
uploading.value = true;
|
||||
const fileObj = listData.value[fileIndex];
|
||||
const file = fileObj.file;
|
||||
@@ -123,6 +124,7 @@ const sliceFileFun = async (fileIndex: number) => {
|
||||
chunk: chunkIndex + 1,
|
||||
chunkTotal: totalChunks,
|
||||
file: chunkFile,
|
||||
isSaveLocal,
|
||||
};
|
||||
if (fileTempPath) {
|
||||
params.fileTempPath = fileTempPath;
|
||||
|
||||
@@ -184,6 +184,8 @@ import parameterReference from '@/views/task/execution/components/runDetailPage/
|
||||
import { ElMessage } from 'element-plus';
|
||||
import emitter from '@/utils/eventBus';
|
||||
import { fileUploadAllocationTypeFun } from '@/utils/file';
|
||||
import { getUserData } from '@/utils/user';
|
||||
import dayjs from 'dayjs';
|
||||
|
||||
const props = defineProps({
|
||||
nodeParams: {
|
||||
@@ -262,6 +264,10 @@ const saveNodeParamFun = async () => {
|
||||
if (runNodeData.nodeType === 'HPC') {
|
||||
setSpecialParamData(inputParams, runNodeData);
|
||||
}
|
||||
|
||||
if (runNodeData.nodeType === '脚本节点' && runNodeData.label.includes('报告')) {
|
||||
setReportSpecialParamDataFun(inputParams);
|
||||
}
|
||||
const params: any = {
|
||||
nodeUuid: runNodeInfo.uuid,
|
||||
runId: runNodeInfo.runId,
|
||||
@@ -363,6 +369,7 @@ const runUploadRunFilesFun = async (list: any) => {
|
||||
...item,
|
||||
isApprove: 0, // 0否 1是
|
||||
taskType: 4, // 4交付物
|
||||
isSaveLocal: 'Y',
|
||||
},
|
||||
});
|
||||
});
|
||||
@@ -455,6 +462,24 @@ const setSpecialParamData = (param: any, data: any) => {
|
||||
}
|
||||
};
|
||||
|
||||
// 报告脚本生成参数填写
|
||||
const setReportSpecialParamDataFun = (param: any) => {
|
||||
const projectInfo = JSON.parse(
|
||||
localStorage.getItem('CURRENT_FILTER_RUN_TASK_TREE_PARAM') as string
|
||||
);
|
||||
|
||||
param.reportName = '算例报告_' + dayjs().format('YYYY_MM_DD_HH_mm');
|
||||
param.applicants = getUserData().nickname;
|
||||
param.date = dayjs().format('YYYY-MM-DD HH:mm:ss');
|
||||
param.loadcaseName = props.runInfo.parentName;
|
||||
param.projectNum = projectInfo?.projectCode;
|
||||
param.formulateTime = dayjs().format('YYYY-MM-DD HH:mm:ss');
|
||||
param.checkTime = dayjs().format('YYYY-MM-DD HH:mm:ss');
|
||||
param.approveTime = dayjs().format('YYYY-MM-DD HH:mm:ss');
|
||||
param.workspace = '';
|
||||
param.workspaceNum = '';
|
||||
};
|
||||
|
||||
const updateRowInfo = (data: any) => {
|
||||
for (let i = 0; i < tableData.value.length; i++) {
|
||||
if (
|
||||
@@ -481,6 +506,9 @@ watch(
|
||||
if (tableData.value[i].englishLabel === 'jobName') {
|
||||
tableData.value[i].defaultValue = '测试任务' + new Date().getTime();
|
||||
}
|
||||
if (tableData.value[i].englishLabel === 'reportName') {
|
||||
tableData.value[i].defaultValue = '报告_' + new Date().getTime();
|
||||
}
|
||||
}
|
||||
|
||||
formatDataFun(tableData.value, 0);
|
||||
|
||||
@@ -591,7 +591,7 @@ const createRunFun = async (data: any) => {
|
||||
// info.label = info.runNames;
|
||||
runInfo.nodeType = NODE_TYPE.RUN;
|
||||
// info.id = new Date().getTime();
|
||||
|
||||
ElMessage.success('创建成功');
|
||||
if (flag != 'createRun') {
|
||||
taskTreeRef.value.insertAfter(runInfo, rightClickNode.value);
|
||||
} else {
|
||||
|
||||
@@ -62,7 +62,24 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="task-operate">
|
||||
<el-button
|
||||
<el-dropdown placement="bottom-end">
|
||||
<el-button type="primary">
|
||||
操作 <el-icon class="el-icon--right"><ArrowDown /></el-icon>
|
||||
</el-button>
|
||||
<template #dropdown>
|
||||
<el-dropdown-menu>
|
||||
<el-dropdown-item
|
||||
v-if="runInfo.status === RUN_STATUS.UNSTART"
|
||||
@click="startTaskRunJobFun"
|
||||
>开始</el-dropdown-item
|
||||
>
|
||||
<el-dropdown-item v-if="runInfo.status === RUN_STATUS.RUNNING">暂停</el-dropdown-item>
|
||||
<el-dropdown-item @click="refreshFun">刷新</el-dropdown-item>
|
||||
<el-dropdown-item @click="visible = true">查看所有活动</el-dropdown-item>
|
||||
</el-dropdown-menu>
|
||||
</template>
|
||||
</el-dropdown>
|
||||
<!-- <el-button
|
||||
size="small"
|
||||
type="primary"
|
||||
v-if="runInfo.status === RUN_STATUS.UNSTART"
|
||||
@@ -74,10 +91,10 @@
|
||||
>暂停</el-button
|
||||
>
|
||||
|
||||
<!-- <el-button size="small" type="primary">完成</el-button> -->
|
||||
<el-button size="small" type="primary">完成</el-button>
|
||||
<el-button size="small" @click="refreshFun">刷新</el-button>
|
||||
|
||||
<el-button size="small" @click="visible = true">查看所有活动</el-button>
|
||||
<el-button size="small" @click="visible = true">查看所有活动</el-button> -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -148,7 +165,7 @@
|
||||
<el-button
|
||||
type="primary"
|
||||
@click="skipCurrentNodeFlowFun"
|
||||
v-if="flowNodeParamData.value?.nodeTypeValue === '1'"
|
||||
v-if="flowNodeParamData?.nodeTypeValue === '1'"
|
||||
>跳过当前本地节点</el-button
|
||||
>
|
||||
</div>
|
||||
@@ -633,7 +650,6 @@ const startLocalAppFun = async () => {
|
||||
|
||||
if (uuid) {
|
||||
const result: any = await checklocalresourceFun(appPath);
|
||||
|
||||
if (result) {
|
||||
const params = await getSubmitParamFun();
|
||||
const res: any = await submittaskApi(params);
|
||||
@@ -694,10 +710,11 @@ const getSubmitParamFun = async () => {
|
||||
const owner = getUserData()?.nickname;
|
||||
const tenantId = getUserTenantId().toString();
|
||||
const userId = getUserId().toString();
|
||||
const localAppName = flowNodeParamData.value.label;
|
||||
const localAppName = flowNodeData.value.nodeName;
|
||||
const localAppVersion = '';
|
||||
const creatorId = getUserId().toString();
|
||||
|
||||
const subRunId = flowNodeData.value.nodeId;
|
||||
const asyncTaskId = flowNodeData.value.nodeDetailInfo?.asyncTaskId;
|
||||
return {
|
||||
runId,
|
||||
runName,
|
||||
@@ -719,6 +736,8 @@ const getSubmitParamFun = async () => {
|
||||
localAppName,
|
||||
localAppVersion,
|
||||
creatorId,
|
||||
subRunId,
|
||||
asyncTaskId,
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user