问题列表修改
This commit is contained in:
parent
0824476574
commit
582c9ff550
|
|
@ -116,6 +116,10 @@ body {
|
||||||
line-height: 1;
|
line-height: 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
html, body {
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
ol,
|
ol,
|
||||||
ul {
|
ul {
|
||||||
list-style: none;
|
list-style: none;
|
||||||
|
|
|
||||||
|
|
@ -211,7 +211,7 @@
|
||||||
"dataSourceAddress": "数据源地址",
|
"dataSourceAddress": "数据源地址",
|
||||||
"DBLink": "DBLink",
|
"DBLink": "DBLink",
|
||||||
"detail": "详情",
|
"detail": "详情",
|
||||||
"singleTableBatchFetchCount": "单表批次获取数",
|
"singleTableBatchFetchCount": "单表批次同步数量",
|
||||||
"cronExpression": "cron表达式",
|
"cronExpression": "cron表达式",
|
||||||
"sourceDatabase": "源数据库",
|
"sourceDatabase": "源数据库",
|
||||||
"targetDatabase": "目标数据库",
|
"targetDatabase": "目标数据库",
|
||||||
|
|
@ -238,7 +238,7 @@
|
||||||
"isCancel": "取消",
|
"isCancel": "取消",
|
||||||
"totalMemory": "总内存",
|
"totalMemory": "总内存",
|
||||||
"deadlock": "死锁统计",
|
"deadlock": "死锁统计",
|
||||||
"syncDay": "同步条数",
|
"syncDay": "单表批次同步天数",
|
||||||
"test": "测试",
|
"test": "测试",
|
||||||
"field": "字段",
|
"field": "字段",
|
||||||
"targetUserName": "目标用户名",
|
"targetUserName": "目标用户名",
|
||||||
|
|
@ -271,6 +271,8 @@
|
||||||
"timeBatch": "批次",
|
"timeBatch": "批次",
|
||||||
"checkTheMonitoringData": "查看监测数据",
|
"checkTheMonitoringData": "查看监测数据",
|
||||||
"monitoringData": "监测数据",
|
"monitoringData": "监测数据",
|
||||||
"ImportMonitoringData": "导入监测数据"
|
"ImportMonitoringData": "导入监测数据",
|
||||||
|
"pinToTop": "置顶",
|
||||||
|
"unpin": "取消置顶"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -64,7 +64,7 @@ const configDataValues = ref<string[]>([]);
|
||||||
// 初始化思维导图画布
|
// 初始化思维导图画布
|
||||||
function initGraph() {
|
function initGraph() {
|
||||||
// 初始化画布(容器ID为 graph-container)
|
// 初始化画布(容器ID为 graph-container)
|
||||||
graph.value = new X6Graph('graphContainer').init();
|
graph.value = new X6Graph('graphContainer').init({ grid: false, zoom: true });
|
||||||
|
|
||||||
// 1. 创建根节点
|
// 1. 创建根节点
|
||||||
const root = graph.value.addRootNode({
|
const root = graph.value.addRootNode({
|
||||||
|
|
@ -396,30 +396,30 @@ function handleCancel() {
|
||||||
<ElOption v-for="(item, index) in modeList" :key="index" :label="item.label" :value="item.value" />
|
<ElOption v-for="(item, index) in modeList" :key="index" :label="item.label" :value="item.value" />
|
||||||
</ElSelect>
|
</ElSelect>
|
||||||
</ElFormItem>
|
</ElFormItem>
|
||||||
<ElFormItem label="手动输入模式">
|
<ElFormItem label="手动输入模式" v-show="!formData.mode || !formData.mode.length">
|
||||||
<div style="display: flex; align-items: center;">
|
<div style="display: flex; align-items: center;">
|
||||||
<ElInput v-model="manualModeInput" style="width: 160px" placeholder="输入模式名" @keyup.enter="handleAddMode" />
|
<ElInput v-model="manualModeInput" style="width: 160px" placeholder="输入模式名" @keyup.enter="handleAddMode" />
|
||||||
<ElButton type="primary" style="margin-left: 8px;" @click="handleAddMode">
|
<ElButton type="primary" style="margin-left: 4px; height: 34px; border-radius: 4px;" @click="handleAddMode">
|
||||||
添加
|
添加
|
||||||
</ElButton>
|
</ElButton>
|
||||||
</div>
|
</div>
|
||||||
</ElFormItem>
|
</ElFormItem>
|
||||||
<ElFormItem :label="t('dataTable')">
|
<ElFormItem :label="t('dataTable')">
|
||||||
<ElSelect ref="level3" v-model="formData.dataValue" style="width: 220px" multiple :max-collapse-tags="0"
|
<ElSelect ref="level3" v-model="formData.dataValue" style="width: 220px" multiple :max-collapse-tags="0"
|
||||||
collapse-tags collapse-tags-tooltip :placeholder="t('pleaseSelect')" class="custom-select"
|
collapse-tags collapse-tags-tooltip filterable :placeholder="t('pleaseSelect')" class="custom-select"
|
||||||
@change="handleDataListChange">
|
@change="handleDataListChange">
|
||||||
<ElOption v-for="(item, index) in dataList" :key="index" :label="item.label" :value="item.value" />
|
<ElOption v-for="(item, index) in dataList" :key="index" :label="item.label" :value="item.value" />
|
||||||
</ElSelect>
|
</ElSelect>
|
||||||
</ElFormItem>
|
</ElFormItem>
|
||||||
<ElFormItem :label="t('field')">
|
<ElFormItem :label="t('field')">
|
||||||
<ElSelect ref="level4" v-model="formData.field" style="width: 220px" :placeholder="t('pleaseSelect')"
|
<ElSelect ref="level4" v-model="formData.field" style="width: 220px" filterable :placeholder="t('pleaseSelect')"
|
||||||
class="custom-select" @change="handleFieldListChange">
|
class="custom-select" @change="handleFieldListChange">
|
||||||
<ElOption v-for="(item, index) in fieldList" :key="index" :label="item.label" :value="item.value"
|
<ElOption v-for="(item, index) in fieldList" :key="index" :label="item.label" :value="item.value"
|
||||||
:disabled="formData.dataValue.length === 0" />
|
:disabled="formData.dataValue.length === 0" />
|
||||||
</ElSelect>
|
</ElSelect>
|
||||||
</ElFormItem>
|
</ElFormItem>
|
||||||
<ElFormItem :label="t('targetUserName')">
|
<ElFormItem :label="t('targetUserName')">
|
||||||
<ElSelect v-model="formData.targetUserName" style="width: 220px" :placeholder="t('pleaseSelect')"
|
<ElSelect v-model="formData.targetUserName" style="width: 220px" filterable :placeholder="t('pleaseSelect')"
|
||||||
class="custom-select">
|
class="custom-select">
|
||||||
<ElOption v-for="(item, index) in targetUserNameList" :key="index" :label="item.label" :value="item.value" />
|
<ElOption v-for="(item, index) in targetUserNameList" :key="index" :label="item.label" :value="item.value" />
|
||||||
</ElSelect>
|
</ElSelect>
|
||||||
|
|
|
||||||
|
|
@ -237,7 +237,7 @@ getSelectList();
|
||||||
<Dialog v-model="logVisible" :title="t('operationLog')" width="56vw" class="child-custom">
|
<Dialog v-model="logVisible" :title="t('operationLog')" width="56vw" class="child-custom">
|
||||||
<log :data="form" />
|
<log :data="form" />
|
||||||
</Dialog>
|
</Dialog>
|
||||||
<Dialog v-model="dataTableVisible" :title="t('dataTable')" width="80vw" class="child-custom">
|
<Dialog v-model="dataTableVisible" :title="t('dataTable')" :z-index="1000" width="80vw" class="child-custom">
|
||||||
<dataTable :data="mindMap" @cancel="dataTableVisible = false" />
|
<dataTable :data="mindMap" @cancel="dataTableVisible = false" />
|
||||||
</Dialog>
|
</Dialog>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -15,7 +15,7 @@
|
||||||
<div class="log" >
|
<div class="log" >
|
||||||
<ElTable ref="multipleTableRef" :data="props.data" width="100%" max-height="580px" class="custom-table">
|
<ElTable ref="multipleTableRef" :data="props.data" width="100%" max-height="580px" class="custom-table">
|
||||||
<!-- <ElTableColumn type="selection" width="55" /> -->
|
<!-- <ElTableColumn type="selection" width="55" /> -->
|
||||||
<ElTableColumn prop="startTime" :label="t('creationTime')" />
|
<ElTableColumn prop="startTime" :label="t('creationTime')" width="200px" />
|
||||||
<ElTableColumn prop="description" :label="t('description')" />
|
<ElTableColumn prop="description" :label="t('description')" />
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -58,11 +58,11 @@ function refresh() {
|
||||||
function showLog(task) {
|
function showLog(task) {
|
||||||
console.log('显示运行日志');
|
console.log('显示运行日志');
|
||||||
getDetailList({
|
getDetailList({
|
||||||
pageSize: 380,
|
// pageSize: 380,
|
||||||
pageNum: 1,
|
// pageNum: 1,
|
||||||
recordId: task.id,
|
recordId: task.id,
|
||||||
}, (res) => {
|
}, (res) => {
|
||||||
logData.value = res.records;
|
logData.value = res;
|
||||||
logVisible.value = true;
|
logVisible.value = true;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import type { SvgMarkerOptions } from '@/gis/ol/olTarget.ts';
|
import type { SvgMarkerOptions } from '@/gis/ol/olTarget.ts';
|
||||||
import dayjs from 'dayjs';
|
import dayjs from 'dayjs';
|
||||||
import { ElMessage, ElMessageBox, ElNotification } from 'element-plus';
|
import {ElButton, ElMessage, ElMessageBox, ElNotification, ElOption} from 'element-plus';
|
||||||
import { useI18n } from 'vue-i18n';
|
import { useI18n } from 'vue-i18n';
|
||||||
import targetIconA from '@/assets/icon/targetIconA.svg';
|
import targetIconA from '@/assets/icon/targetIconA.svg';
|
||||||
import targetIconB from '@/assets/icon/targetIconB.svg';
|
import targetIconB from '@/assets/icon/targetIconB.svg';
|
||||||
|
|
@ -9,7 +9,7 @@ import targetIconB from '@/assets/icon/targetIconB.svg';
|
||||||
import { setAnimationTime, setMultiplier } from '@/gis/ol/olClock';
|
import { setAnimationTime, setMultiplier } from '@/gis/ol/olClock';
|
||||||
import { classInstances } from '@/gis/ol/olHandleEntry';
|
import { classInstances } from '@/gis/ol/olHandleEntry';
|
||||||
import { sendPlaybackPostMassage } from '@/gis/worker/playbackWorkerMa';
|
import { sendPlaybackPostMassage } from '@/gis/worker/playbackWorkerMa';
|
||||||
import { add, deleteData, edit, getAllNuclearfacility, getAllStations,getReleaseDataByForwardId,saveSiteAndReleaseData,delSiteAndReleaseData, getById, getData, getTaskLog, resume, exportTemplate, importFile } from '@/utils/axios/symn';
|
import { add, deleteData, edit, getAllNuclearfacility, getAllStations,getReleaseDataByForwardId,saveSiteAndReleaseData,delSiteAndReleaseData, getById, getData, getTaskLog, resume, exportTemplate, importFile, pinToTopOrUnpin } from '@/utils/axios/symn';
|
||||||
import fhdfx from './compliance/index.vue';
|
import fhdfx from './compliance/index.vue';
|
||||||
import gxfx from './contribution/index.vue';
|
import gxfx from './contribution/index.vue';
|
||||||
import log from './log/index.vue';
|
import log from './log/index.vue';
|
||||||
|
|
@ -142,6 +142,20 @@ const taskList = ref<any[]>([
|
||||||
|
|
||||||
]);
|
]);
|
||||||
|
|
||||||
|
interface OptionItem {
|
||||||
|
label: string;
|
||||||
|
value: number;
|
||||||
|
}
|
||||||
|
const taskStatusList = ref<OptionItem[]>([
|
||||||
|
// -1执行失败,0未开始,1等待中,2运行中,3已完成,4任务检查未通过
|
||||||
|
{ label: '执行失败', value: -1 },
|
||||||
|
{ label: '未开始', value: 0 },
|
||||||
|
{ label: '等待中', value: 1 },
|
||||||
|
{ label: '运行中', value: 2 },
|
||||||
|
{ label: '已完成', value: 3 },
|
||||||
|
{ label: '任务检查未通过', value: 4 },
|
||||||
|
]);
|
||||||
|
|
||||||
function handleClose() {
|
function handleClose() {
|
||||||
dialogVisible.value = false;
|
dialogVisible.value = false;
|
||||||
}
|
}
|
||||||
|
|
@ -240,6 +254,15 @@ function addChild3() {
|
||||||
function clearChild() {
|
function clearChild() {
|
||||||
childList.splice(0);
|
childList.splice(0);
|
||||||
}
|
}
|
||||||
|
// 置顶和取消置顶
|
||||||
|
const pinToTopTask = (row: any) => {
|
||||||
|
pinToTopOrUnpin({ id: row.id }, (res) => {
|
||||||
|
if (res.code === 200) {
|
||||||
|
ElMessage.success('操作成功!');
|
||||||
|
getList();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
};
|
||||||
function viewTask(task: any) {
|
function viewTask(task: any) {
|
||||||
console.log('查看任务:', task);
|
console.log('查看任务:', task);
|
||||||
handleClose();
|
handleClose();
|
||||||
|
|
@ -352,7 +375,7 @@ function saveConfigForm(formEl: FormInstance | undefined) {
|
||||||
}
|
}
|
||||||
editValue.forwardChild = nuclearfacilityChild;
|
editValue.forwardChild = nuclearfacilityChild;
|
||||||
}else{
|
}else{
|
||||||
editValue.backwardChild = childList;
|
editValue.backwardChild = childList.map(({ id, ...rest }) => rest);
|
||||||
}
|
}
|
||||||
edit(editValue, () => {
|
edit(editValue, () => {
|
||||||
ElNotification({
|
ElNotification({
|
||||||
|
|
@ -444,6 +467,12 @@ function editTask(task: any, $index?: any) {
|
||||||
lastSelectedKeys.value = new Set(arr);
|
lastSelectedKeys.value = new Set(arr);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
configForm.value.z1 = res.z1;
|
||||||
|
configForm.value.z2 = res.z2;
|
||||||
|
configForm.value.particleCount = res.particleCount;
|
||||||
|
configForm.value.startTime = res.startTime;
|
||||||
|
configForm.value.endTime = res.endTime;
|
||||||
|
configForm.value.releaseDataSource = res.releaseDataSource;
|
||||||
});
|
});
|
||||||
|
|
||||||
configForm.value = {
|
configForm.value = {
|
||||||
|
|
@ -928,8 +957,10 @@ getStations();
|
||||||
<el-form-item :label="t('taskStatus')">
|
<el-form-item :label="t('taskStatus')">
|
||||||
<el-input v-if="form.taskStatus === -1" value="执行失败" />
|
<el-input v-if="form.taskStatus === -1" value="执行失败" />
|
||||||
<el-input v-if="form.taskStatus === 0" value="未开始" />
|
<el-input v-if="form.taskStatus === 0" value="未开始" />
|
||||||
<el-input v-if="form.taskStatus === 1" value="运行中" />
|
<el-input v-if="form.taskStatus === 1" value="等待中" />
|
||||||
<el-input v-if="form.taskStatus === 2" value="已完成" />
|
<el-input v-if="form.taskStatus === 2" value="运行中" />
|
||||||
|
<el-input v-if="form.taskStatus === 3" value="已完成" />
|
||||||
|
<el-input v-if="form.taskStatus === 4" value="任务检查未通过" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item :label="t('dataSource')">
|
<el-form-item :label="t('dataSource')">
|
||||||
<el-input v-if="form.useMetType === 1" value="盘古模型" />
|
<el-input v-if="form.useMetType === 1" value="盘古模型" />
|
||||||
|
|
@ -1074,10 +1105,7 @@ getStations();
|
||||||
</ElFormItem>
|
</ElFormItem>
|
||||||
<ElFormItem :label="t('taskStatus')">
|
<ElFormItem :label="t('taskStatus')">
|
||||||
<ElSelect v-model="searchForm.taskStatus" clearable :placeholder="t('pleaseSelect')" class="custom-select">
|
<ElSelect v-model="searchForm.taskStatus" clearable :placeholder="t('pleaseSelect')" class="custom-select">
|
||||||
<ElOption label="执行失败" :value="-1" />
|
<ElOption v-for="item in taskStatusList" :key="item.value" :label="item.label" :value="item.value" />
|
||||||
<ElOption label="未开始" :value="0" />
|
|
||||||
<ElOption label="运行中" :value="1" />
|
|
||||||
<ElOption label="已完成" :value="2" />
|
|
||||||
</ElSelect>
|
</ElSelect>
|
||||||
</ElFormItem>
|
</ElFormItem>
|
||||||
<ElFormItem :label="t('dataSource')">
|
<ElFormItem :label="t('dataSource')">
|
||||||
|
|
@ -1123,18 +1151,12 @@ getStations();
|
||||||
<!-- </ElTableColumn> -->
|
<!-- </ElTableColumn> -->
|
||||||
<ElTableColumn :label="t('taskStatus')">
|
<ElTableColumn :label="t('taskStatus')">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<div v-if="scope.row.taskStatus === -1" style="color:red;">
|
<div v-if="scope.row.taskStatus === -1" style="color:#f42a2a;">执行失败</div>
|
||||||
执行失败
|
<div v-if="scope.row.taskStatus === 0" style="color:#f42a2a;">未开始</div>
|
||||||
</div>
|
<div v-if="scope.row.taskStatus === 1" style="color:#ffcb40;">等待中</div>
|
||||||
<div v-if="scope.row.taskStatus === 0" style="color:#F1C13D;">
|
<div v-if="scope.row.taskStatus === 2" style="color:#ffcb40;">运行中</div>
|
||||||
未开始
|
<div v-if="scope.row.taskStatus === 3" style="color:#2af442;">已完成</div>
|
||||||
</div>
|
<div v-if="scope.row.taskStatus === 4" style="color:#f42a2a;">任务检查未通过</div>
|
||||||
<div v-if="scope.row.taskStatus === 1" style="color:#22CE3D;">
|
|
||||||
运行中
|
|
||||||
</div>
|
|
||||||
<div v-if="scope.row.taskStatus === 2" style="color:#01E3C6;">
|
|
||||||
已完成
|
|
||||||
</div>
|
|
||||||
</template>
|
</template>
|
||||||
</ElTableColumn>
|
</ElTableColumn>
|
||||||
<ElTableColumn :label="t('dataSource')">
|
<ElTableColumn :label="t('dataSource')">
|
||||||
|
|
@ -1165,21 +1187,31 @@ getStations();
|
||||||
<div>{{scope.row.timeConsuming}}分钟</div>
|
<div>{{scope.row.timeConsuming}}分钟</div>
|
||||||
</template>
|
</template>
|
||||||
</ElTableColumn>
|
</ElTableColumn>
|
||||||
<ElTableColumn prop="createBy" :label="t('creator')" />
|
<!--<ElTableColumn prop="createBy" :label="t('creator')" />-->
|
||||||
<ElTableColumn prop="createTime" :label="t('creationTime')" />
|
<ElTableColumn prop="createTime" :label="t('creationTime')" />
|
||||||
<ElTableColumn :label="t('operation')" width="330">
|
<ElTableColumn :label="t('operation')" width="330">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
|
<ElButton v-if="scope.row.taskStatus === 1" type="text" class="table-btn" @click="pinToTopTask(scope)">
|
||||||
|
{{ true ? t('pinToTop') : t('unpin') }}
|
||||||
|
</ElButton>
|
||||||
|
<ElButton v-else type="text" style="color:#588589;cursor:no-drop">
|
||||||
|
{{ true ? t('pinToTop') : t('unpin') }}
|
||||||
|
</ElButton>
|
||||||
|
<!-- -1执行失败,0未开始,1等待中,2运行中,3已完成,4任务检查未通过-->
|
||||||
|
<!--任务处于等待中,运行中状态时,不能编辑和删除;处于未开始,已完成,检查未通过时可以删除;处于已完成状态时也不能编辑-->
|
||||||
<ElButton type="text" class="custom-text-btn" @click="viewTask(scope.row)">
|
<ElButton type="text" class="custom-text-btn" @click="viewTask(scope.row)">
|
||||||
{{ t('view') }}
|
{{ t('view') }}
|
||||||
</ElButton>
|
</ElButton>
|
||||||
<ElButton v-if="scope.row.taskStatus === 1 || scope.row.taskStatus === 2" type="text"
|
<ElButton v-if="scope.row.taskStatus !== 1 && scope.row.taskStatus !== 2 && scope.row.taskStatus !== 3" type="text" class="custom-text-btn" @click="editTask(scope.row, scope.$index)">
|
||||||
style="color:#588589;cursor:no-drop">
|
|
||||||
{{ t('edit') }}
|
{{ t('edit') }}
|
||||||
</ElButton>
|
</ElButton>
|
||||||
<ElButton v-else type="text" class="custom-text-btn" @click="editTask(scope.row, scope.$index)">
|
<ElButton v-else type="text" style="color:#588589;cursor:no-drop">
|
||||||
{{ t('edit') }}
|
{{ t('edit') }}
|
||||||
</ElButton>
|
</ElButton>
|
||||||
<ElButton type="text" class="custom-text-btn" @click="deleteTask(scope.row)">
|
<ElButton v-if="scope.row.taskStatus == 0 || scope.row.taskStatus === 3 || scope.row.taskStatus === 4" type="text" class="custom-text-btn" @click="deleteTask(scope.row)">
|
||||||
|
{{ t('delete') }}
|
||||||
|
</ElButton>
|
||||||
|
<ElButton v-else type="text" style="color:#588589;cursor:no-drop">
|
||||||
{{ t('delete') }}
|
{{ t('delete') }}
|
||||||
</ElButton>
|
</ElButton>
|
||||||
<ElButton type="text" class="custom-text-btn" @click="showLog(scope.row.id)">
|
<ElButton type="text" class="custom-text-btn" @click="showLog(scope.row.id)">
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@ import { ElButton, ElCol, ElDatePicker, ElForm, ElFormItem, ElInput, ElLoading,
|
||||||
import { useI18n } from 'vue-i18n';
|
import { useI18n } from 'vue-i18n';
|
||||||
import Table from '@/components/Table/index.vue';
|
import Table from '@/components/Table/index.vue';
|
||||||
import { activeMoudleInf } from '@/gis/ol/index';
|
import { activeMoudleInf } from '@/gis/ol/index';
|
||||||
import { createTask, deleteTask as deleteData, exportAcTimeSeriesTxt, exportBayesProbLocTxt, exportBivariateTxt, exportTemplate, exportUnivariateTxt, getBayesProbLoc, getById, getIdDetail, getPage, getTaskLog, importTask, runTask, updateTask } from '@/utils/axios/yxcj';
|
import { createTask, deleteTask as deleteData, exportAcTimeSeriesTxt, exportBayesProbLocTxt, exportBivariateTxt, exportTemplate, exportUnivariateTxt, getBayesProbLoc, getById, getIdDetail, getPage, getTaskLog, importTask, runTask, updateTask, pinToTopOrUnpin } from '@/utils/axios/yxcj';
|
||||||
import { transformLogData } from '@/utils/index';
|
import { transformLogData } from '@/utils/index';
|
||||||
import { exportCharts } from '@/utils/index'; // 下载图表图片
|
import { exportCharts } from '@/utils/index'; // 下载图表图片
|
||||||
import scatter from './dbvarScatter/index.vue';
|
import scatter from './dbvarScatter/index.vue';
|
||||||
|
|
@ -123,9 +123,13 @@ interface OptionItem {
|
||||||
}
|
}
|
||||||
|
|
||||||
const taskStatusList = ref<OptionItem[]>([
|
const taskStatusList = ref<OptionItem[]>([
|
||||||
|
// -1执行失败,0未开始,1等待中,2运行中,3已完成,4任务检查未通过
|
||||||
|
{ label: '执行失败', value: -1 },
|
||||||
{ label: '未开始', value: 0 },
|
{ label: '未开始', value: 0 },
|
||||||
{ label: '进行中', value: 1 },
|
{ label: '等待中', value: 1 },
|
||||||
{ label: '已完成', value: 2 },
|
{ label: '运行中', value: 2 },
|
||||||
|
{ label: '已完成', value: 3 },
|
||||||
|
{ label: '任务检查未通过', value: 4 },
|
||||||
]);
|
]);
|
||||||
const releaseTypeList = ref<OptionItem[]>([
|
const releaseTypeList = ref<OptionItem[]>([
|
||||||
{ label: '持续释放', value: 1 },
|
{ label: '持续释放', value: 1 },
|
||||||
|
|
@ -168,7 +172,7 @@ interface QueryFormData {
|
||||||
}
|
}
|
||||||
const queryForm = ref<QueryFormData>({
|
const queryForm = ref<QueryFormData>({
|
||||||
taskName: '',
|
taskName: '',
|
||||||
taskStatus: 0,
|
taskStatus: null,
|
||||||
// releaseType: '',
|
// releaseType: '',
|
||||||
startDate: '',
|
startDate: '',
|
||||||
endDate: '',
|
endDate: '',
|
||||||
|
|
@ -248,7 +252,7 @@ function viewTask(row: any): void {
|
||||||
curRow.value = row;
|
curRow.value = row;
|
||||||
getData(row.id);
|
getData(row.id);
|
||||||
// getDetail(row.id);
|
// getDetail(row.id);
|
||||||
getLog(row);
|
// getLog(row);
|
||||||
|
|
||||||
getBayesProbLoc({ taskId: row.id }).then((respon: any) => {
|
getBayesProbLoc({ taskId: row.id }).then((respon: any) => {
|
||||||
console.log(respon, '概率分布书局');
|
console.log(respon, '概率分布书局');
|
||||||
|
|
@ -266,12 +270,12 @@ function listUpload() {
|
||||||
|
|
||||||
const columns = ref<TableColumn[]>([
|
const columns = ref<TableColumn[]>([
|
||||||
{ prop: 'taskName', label: '任务名称', type: 'text' }, // width: 180
|
{ prop: 'taskName', label: '任务名称', type: 'text' }, // width: 180
|
||||||
{ prop: 'taskStatus', label: '任务状态', type: 'select', colorArr: ['#f42a2a', '#ffcb40', '#2af442'], width: 90 },
|
{ prop: 'taskStatus', label: '任务状态', type: 'select', colorArr: ['#f42a2a', '#f42a2a', '#ffcb40', '#ffcb40', '#2af442', '#f42a2a'], width: 90 },
|
||||||
{ prop: 'releaseType', label: '释放类型', type: 'select', width: 90 },
|
{ prop: 'releaseType', label: '释放类型', type: 'select', width: 90 },
|
||||||
{ prop: 'releaseSourceLocation', label: '释放源位置', type: 'select', width: 100 },
|
{ prop: 'releaseSourceLocation', label: '释放源位置', type: 'select', width: 100 },
|
||||||
{ prop: 'timeRange', label: '数据时间范围', type: 'text', width: 200 },
|
{ prop: 'timeRange', label: '数据时间范围', type: 'text', width: 200 },
|
||||||
{ prop: 'time', label: '耗时', type: 'text', width: 60 },
|
{ prop: 'time', label: '耗时', type: 'text', width: 60 },
|
||||||
{ prop: 'creator', label: '创建人', type: 'text' },
|
// { prop: 'creator', label: '创建人', type: 'text' },
|
||||||
{ prop: 'createTime', label: '创建时间', type: 'text', width: 180 }, // width: 200
|
{ prop: 'createTime', label: '创建时间', type: 'text', width: 180 }, // width: 200
|
||||||
]);
|
]);
|
||||||
|
|
||||||
|
|
@ -351,7 +355,9 @@ async function submitTask() {
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
detailForm.value.taskStatus = null;
|
detailForm.value.taskStatus = null;
|
||||||
updateTask({ ...detailForm.value }, (res) => {
|
const obj = JSON.parse(JSON.stringify(detailForm.value)); // 新建一个对象,避免对原对象造成污染
|
||||||
|
delete obj.timeConsuming;
|
||||||
|
updateTask(obj, (res) => {
|
||||||
if (res.code === 200) {
|
if (res.code === 200) {
|
||||||
ElMessage.success('修改成功');
|
ElMessage.success('修改成功');
|
||||||
addVisible.value = false;
|
addVisible.value = false;
|
||||||
|
|
@ -433,6 +439,15 @@ function getData(id: string) {
|
||||||
form.value = res.result;
|
form.value = res.result;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
// 置顶和取消置顶
|
||||||
|
const pinToTopTask = (row: any) => {
|
||||||
|
pinToTopOrUnpin({ id: row.id }, (res) => {
|
||||||
|
if (res.code === 200) {
|
||||||
|
ElMessage.success('操作成功!');
|
||||||
|
getList();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
};
|
||||||
// 执行重建任务
|
// 执行重建任务
|
||||||
function runTaskId(row: any) {
|
function runTaskId(row: any) {
|
||||||
// form.value = row;
|
// form.value = row;
|
||||||
|
|
@ -743,13 +758,13 @@ onMounted(() => {
|
||||||
<ElFormItem :label="t('releaseStartTime')">
|
<ElFormItem :label="t('releaseStartTime')">
|
||||||
<ElDatePicker
|
<ElDatePicker
|
||||||
v-model="detailForm.releaseStartTime" type="datetime" style="width:100%" :placeholder="t('selectDateTime')"
|
v-model="detailForm.releaseStartTime" type="datetime" style="width:100%" :placeholder="t('selectDateTime')"
|
||||||
value-format="YYYY-MM-DD"
|
value-format="YYYY-MM-DD HH:mm:ss"
|
||||||
/>
|
/>
|
||||||
</ElFormItem>
|
</ElFormItem>
|
||||||
<ElFormItem :label="t('releaseEndTime')">
|
<ElFormItem :label="t('releaseEndTime')">
|
||||||
<ElDatePicker
|
<ElDatePicker
|
||||||
v-model="detailForm.releaseEndTime" type="datetime" style="width:100%" :placeholder="t('selectDateTime')"
|
v-model="detailForm.releaseEndTime" type="datetime" style="width:100%" :placeholder="t('selectDateTime')"
|
||||||
value-format="YYYY-MM-DD"
|
value-format="YYYY-MM-DD HH:mm:ss"
|
||||||
/>
|
/>
|
||||||
</ElFormItem>
|
</ElFormItem>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -935,36 +950,44 @@ onMounted(() => {
|
||||||
@pagination="handlePagination"
|
@pagination="handlePagination"
|
||||||
>
|
>
|
||||||
<template #operate="{ scope }">
|
<template #operate="{ scope }">
|
||||||
<ElButton v-if="scope.taskStatus === 0" type="text" class="table-btn" @click="runTaskId(scope)">
|
<ElButton v-if="scope.row.taskStatus === 1" type="text" class="table-btn" @click="pinToTopTask(scope)">
|
||||||
|
{{ true ? t('pinToTop') : t('unpin') }}
|
||||||
|
</ElButton>
|
||||||
|
<ElButton v-else type="text" style="color:#588589;cursor:no-drop">
|
||||||
|
{{ true ? t('pinToTop') : t('unpin') }}
|
||||||
|
</ElButton>
|
||||||
|
<!-- -1执行失败,0未开始,1等待中,2运行中,3已完成,4任务检查未通过-->
|
||||||
|
<!--任务处于等待中,运行中状态时,不能编辑和删除;处于未开始,已完成,检查未通过时可以删除;处于已完成状态时也不能编辑-->
|
||||||
|
<ElButton v-if="scope.row.taskStatus === 0" type="text" class="table-btn" @click="runTaskId(scope)">
|
||||||
{{ t('start') }}
|
{{ t('start') }}
|
||||||
</ElButton>
|
</ElButton>
|
||||||
<ElButton v-else type="text" style="color:#588589;cursor:no-drop">
|
<ElButton v-else type="text" style="color:#588589;cursor:no-drop">
|
||||||
{{ t('start') }}
|
{{ t('start') }}
|
||||||
</ElButton>
|
</ElButton>
|
||||||
<ElButton v-if="scope.taskStatus === 2" type="text" class="table-btn" @click="viewTask(scope)">
|
<ElButton v-if="scope.row.taskStatus === 2" type="text" class="table-btn" @click="viewTask(scope)">
|
||||||
{{ t('view') }}
|
{{ t('view') }}
|
||||||
</ElButton>
|
</ElButton>
|
||||||
<ElButton v-else type="text" style="color:#588589;cursor:no-drop">
|
<ElButton v-else type="text" style="color:#588589;cursor:no-drop">
|
||||||
{{ t('view') }}
|
{{ t('view') }}
|
||||||
</ElButton>
|
</ElButton>
|
||||||
<ElButton v-if="scope.taskStatus === 0" type="text" class="table-btn" @click="editTask(scope)">
|
<ElButton v-if="scope.row.taskStatus !== 1 && scope.row.taskStatus !== 2 && scope.row.taskStatus !== 3" type="text" class="table-btn" @click="editTask(scope)">
|
||||||
{{ t('edit') }}
|
{{ t('edit') }}
|
||||||
</ElButton>
|
</ElButton>
|
||||||
<ElButton v-else type="text" style="color:#588589;cursor:no-drop">
|
<ElButton v-else type="text" style="color:#588589;cursor:no-drop">
|
||||||
{{ t('edit') }}
|
{{ t('edit') }}
|
||||||
</ElButton>
|
</ElButton>
|
||||||
<ElButton v-if="scope.taskStatus !== 1" type="text" class="table-btn" @click="deleteTask(scope)">
|
<ElButton v-if="scope.row.taskStatus == 0 || scope.row.taskStatus === 3 || scope.row.taskStatus === 4" type="text" class="table-btn" @click="deleteTask(scope)">
|
||||||
{{ t('delete') }}
|
{{ t('delete') }}
|
||||||
</ElButton>
|
</ElButton>
|
||||||
<ElButton v-else type="text" style="color:#588589;cursor:no-drop">
|
<ElButton v-else type="text" style="color:#588589;cursor:no-drop">
|
||||||
{{ t('delete') }}
|
{{ t('delete') }}
|
||||||
</ElButton>
|
</ElButton>
|
||||||
<ElButton v-if="scope.taskStatus === 0" type="text" class="table-btn" @click="listUpload">
|
<!--<ElButton v-if="scope.row.taskStatus === 0" type="text" class="table-btn" @click="listUpload">
|
||||||
{{ t('upload') }}
|
{{ t('upload') }}
|
||||||
</ElButton>
|
</ElButton>
|
||||||
<ElButton v-else type="text" style="color:#588589;cursor:no-drop">
|
<ElButton v-else type="text" style="color:#588589;cursor:no-drop">
|
||||||
{{ t('upload') }}
|
{{ t('upload') }}
|
||||||
</ElButton>
|
</ElButton>-->
|
||||||
<ElButton type="text" class="table-btn" @click="getLog(scope)">
|
<ElButton type="text" class="table-btn" @click="getLog(scope)">
|
||||||
{{ t('operationLog') }}
|
{{ t('operationLog') }}
|
||||||
</ElButton>
|
</ElButton>
|
||||||
|
|
@ -1051,18 +1074,23 @@ onMounted(() => {
|
||||||
<ElFormItem :label="t('releaseStartTime')" prop="releaseStartTime" style="width: 46%;">
|
<ElFormItem :label="t('releaseStartTime')" prop="releaseStartTime" style="width: 46%;">
|
||||||
<ElDatePicker
|
<ElDatePicker
|
||||||
v-model="detailForm.releaseStartTime" type="datetime" :placeholder="t('selectDateTime')"
|
v-model="detailForm.releaseStartTime" type="datetime" :placeholder="t('selectDateTime')"
|
||||||
value-format="YYYY-MM-DD"
|
value-format="YYYY-MM-DD HH:mm:ss"
|
||||||
/>
|
/>
|
||||||
</ElFormItem>
|
</ElFormItem>
|
||||||
<ElFormItem :label="t('releaseEndTime')" prop="releaseEndTime" style="width: 46%;">
|
<ElFormItem :label="t('releaseEndTime')" prop="releaseEndTime" style="width: 46%;">
|
||||||
<ElDatePicker
|
<ElDatePicker
|
||||||
v-model="detailForm.releaseEndTime" type="datetime" :placeholder="t('selectDateTime')"
|
v-model="detailForm.releaseEndTime" type="datetime" :placeholder="t('selectDateTime')"
|
||||||
value-format="YYYY-MM-DD"
|
value-format="YYYY-MM-DD HH:mm:ss"
|
||||||
/>
|
/>
|
||||||
</ElFormItem>
|
</ElFormItem>
|
||||||
<ElFormItem :label="t('sourceStrength')" prop="halflife" style="width: 40%;">
|
<ElFormItem :label="t('sourceStrength')" prop="halflife" style="width: 40%;">
|
||||||
<ElInput v-model="detailForm.sourceStrength" type="number" :placeholder="t('pleaseEnter')" />
|
<ElInput v-model="detailForm.sourceStrength" type="number" :placeholder="t('pleaseEnter')" />
|
||||||
</ElFormItem>
|
</ElFormItem>
|
||||||
|
|
||||||
|
<ElFormItem :label="t('upload')" style="width: 40%;">
|
||||||
|
<ElButton type="default" class="custom-btn" @click="listUpload">{{ t('upload') }}</ElButton>
|
||||||
|
</ElFormItem>
|
||||||
|
|
||||||
<!-- <ElFormItem label="耗时">
|
<!-- <ElFormItem label="耗时">
|
||||||
<ElInput v-model="detailForm.time" :placeholder="t('pleaseEnter')" />
|
<ElInput v-model="detailForm.time" :placeholder="t('pleaseEnter')" />
|
||||||
</ElFormItem> -->
|
</ElFormItem> -->
|
||||||
|
|
@ -1375,4 +1403,9 @@ onMounted(() => {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
.custom-btn {
|
||||||
|
background-color: #1397a3;
|
||||||
|
border-color: #1397a3;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
||||||
|
|
@ -80,6 +80,23 @@ export async function delSiteAndReleaseData(params: any, callback?: (data: any)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @method 置顶任务和取消置顶
|
||||||
|
* @param {string} [params.id] - id
|
||||||
|
* @returns {Promise<any>}
|
||||||
|
*/
|
||||||
|
export async function pinToTopOrUnpin(params: {
|
||||||
|
id: string;
|
||||||
|
}, callback?: (data: any) => void): Promise<any> {
|
||||||
|
const response = await request({
|
||||||
|
url: `${serverIp}${baseURL}/source/uuuuuuuuuu`,
|
||||||
|
method: 'GET',
|
||||||
|
params,
|
||||||
|
});
|
||||||
|
// 执行回调(如果存在)
|
||||||
|
callback?.(response);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 添加
|
* 添加
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
|
|
@ -210,6 +210,23 @@ export async function deleteTask(params: {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @method 置顶任务和取消置顶
|
||||||
|
* @param {string} [params.id] - id
|
||||||
|
* @returns {Promise<any>}
|
||||||
|
*/
|
||||||
|
export async function pinToTopOrUnpin(params: {
|
||||||
|
id: string;
|
||||||
|
}, callback?: (data: any) => void): Promise<any> {
|
||||||
|
const response = await request({
|
||||||
|
url: `${serverIp}${baseURL}/source/xxxxxxxxx`,
|
||||||
|
method: 'GET',
|
||||||
|
params,
|
||||||
|
});
|
||||||
|
// 执行回调(如果存在)
|
||||||
|
callback?.(response);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @method 执行重建任务
|
* @method 执行重建任务
|
||||||
* @param {object} data - 查询参数
|
* @param {object} data - 查询参数
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user