|
@@ -16,18 +16,27 @@
|
|
>
|
|
>
|
|
批量删除
|
|
批量删除
|
|
</el-button>
|
|
</el-button>
|
|
- <el-button type="primary" v-auth="['identification:identificationSubtaskDetails:add']" icon="View" @click="contrastResults()"> 对比结果 </el-button>
|
|
|
|
|
|
+ <el-button type="primary" icon="View" @click="showCompareResult"> 对比结果 </el-button>
|
|
</template>
|
|
</template>
|
|
<!-- 表格操作 -->
|
|
<!-- 表格操作 -->
|
|
<template #operation="scope">
|
|
<template #operation="scope">
|
|
<el-button type="primary" link icon="View" v-auth="['identification:identificationSubtaskDetails:query']" @click="openDialog(3, '算法业务处理查看', scope.row)">
|
|
<el-button type="primary" link icon="View" v-auth="['identification:identificationSubtaskDetails:query']" @click="openDialog(3, '算法业务处理查看', scope.row)">
|
|
- 查看
|
|
|
|
|
|
+ 查看详情
|
|
</el-button>
|
|
</el-button>
|
|
- <el-button type="primary" link icon="EditPen" v-auth="['identification:identificationSubtaskDetails:edit']" @click="openDialog(2, '算法业务处理编辑', scope.row)">
|
|
|
|
- 编辑
|
|
|
|
|
|
+
|
|
|
|
+ <el-button type="primary" link icon="finished" @click="showResult(scope.row)">
|
|
|
|
+ 执行结果
|
|
|
|
+ </el-button>
|
|
|
|
+
|
|
|
|
+ <el-button type="primary" link icon="Refresh" @click="reRunTask(scope.row)">
|
|
|
|
+ 重新执行
|
|
</el-button>
|
|
</el-button>
|
|
- <el-button type="primary" link icon="Delete" v-auth="['identification:identificationSubtaskDetails:remove']" @click="deleteBizProcess(scope.row)"> 删除 </el-button>
|
|
|
|
- <el-button type="primary" link icon="View" v-auth="['identification:identificationSubtaskDetails:query']" @click="viewLog(scope.row)"> 查看日志 </el-button>
|
|
|
|
|
|
+
|
|
|
|
+<!-- <el-button type="primary" link icon="EditPen" v-auth="['identification:identificationSubtaskDetails:edit']" @click="openDialog(2, '算法业务处理编辑', scope.row)">-->
|
|
|
|
+<!-- 编辑-->
|
|
|
|
+<!-- </el-button>-->
|
|
|
|
+<!-- <el-button type="primary" link icon="Delete" v-auth="['identification:identificationSubtaskDetails:remove']" @click="deleteBizProcess(scope.row)"> 删除 </el-button>-->
|
|
|
|
+ <el-button type="primary" link icon="document" v-auth="['identification:identificationSubtaskDetails:query']" @click="viewLog(scope.row)"> 查看日志 </el-button>
|
|
</template>
|
|
</template>
|
|
</ProTable>
|
|
</ProTable>
|
|
<FormDialog ref="formDialogRef" />
|
|
<FormDialog ref="formDialogRef" />
|
|
@@ -98,6 +107,83 @@
|
|
</el-row>
|
|
</el-row>
|
|
</div>
|
|
</div>
|
|
</el-dialog>
|
|
</el-dialog>
|
|
|
|
+
|
|
|
|
+ <el-dialog
|
|
|
|
+ v-model="resultDialogVisible"
|
|
|
|
+ title="执行结果"
|
|
|
|
+ >
|
|
|
|
+<!-- style="width: 70vw"-->
|
|
|
|
+ <el-card :body-style="{ padding: '0px' }">
|
|
|
|
+ <div style="padding: 14px;">
|
|
|
|
+ <span>P_curve</span>
|
|
|
|
+ </div>
|
|
|
|
+ <el-image :src="PATH_PREFIX + refSelectData.resultPath + '/P_curve.png'"></el-image>
|
|
|
|
+ </el-card>
|
|
|
|
+
|
|
|
|
+ <el-card :body-style="{ padding: '0px' }" style="margin-top: 10px">
|
|
|
|
+ <div style="padding: 14px;">
|
|
|
|
+ <span>R_curve</span>
|
|
|
|
+ </div>
|
|
|
|
+ <el-image :src="PATH_PREFIX + refSelectData.resultPath + '/R_curve.png'"></el-image>
|
|
|
|
+ </el-card>
|
|
|
|
+
|
|
|
|
+ <el-card :body-style="{ padding: '0px' }" style="margin-top: 10px">
|
|
|
|
+ <div style="padding: 14px;">
|
|
|
|
+ <span>PR_curve</span>
|
|
|
|
+ </div>
|
|
|
|
+ <el-image :src="PATH_PREFIX + refSelectData.resultPath + '/PR_curve.png'"></el-image>
|
|
|
|
+ </el-card>
|
|
|
|
+
|
|
|
|
+ <el-card :body-style="{ padding: '0px' }" style="margin-top: 10px">
|
|
|
|
+ <div style="padding: 14px;">
|
|
|
|
+ <span>F1_curve</span>
|
|
|
|
+ </div>
|
|
|
|
+ <el-image :src="PATH_PREFIX + refSelectData.resultPath + '/F1_curve.png'"></el-image>
|
|
|
|
+ </el-card>
|
|
|
|
+
|
|
|
|
+ </el-dialog>
|
|
|
|
+
|
|
|
|
+ <el-dialog
|
|
|
|
+ v-model="compareDialogVisible"
|
|
|
|
+ title="执行结果对比"
|
|
|
|
+ >
|
|
|
|
+ <!-- style="width: 70vw"-->
|
|
|
|
+ <el-container style="display: flex; flex-direction: row">
|
|
|
|
+ <el-container v-for="(item, index) in listData" :key="index" style="display: flex; flex-direction: column">
|
|
|
|
+<!-- <el-button @click="console.log(item)">test</el-button>-->
|
|
|
|
+ <span style="font-size: 18px"> {{ item.name }} </span>
|
|
|
|
+ <el-card :body-style="{ padding: '0px' }" style="margin-top: 3px">
|
|
|
|
+ <div style="padding: 14px;">
|
|
|
|
+ <span>P_curve</span>
|
|
|
|
+ </div>
|
|
|
|
+ <el-image :src="PATH_PREFIX + item.resultPath + '/P_curve.png'"></el-image>
|
|
|
|
+ </el-card>
|
|
|
|
+
|
|
|
|
+ <el-card :body-style="{ padding: '0px' }" style="margin-top: 10px">
|
|
|
|
+ <div style="padding: 14px;">
|
|
|
|
+ <span>R_curve</span>
|
|
|
|
+ </div>
|
|
|
|
+ <el-image :src="PATH_PREFIX + item.resultPath + '/R_curve.png'"></el-image>
|
|
|
|
+ </el-card>
|
|
|
|
+
|
|
|
|
+ <el-card :body-style="{ padding: '0px' }" style="margin-top: 10px">
|
|
|
|
+ <div style="padding: 14px;">
|
|
|
|
+ <span>PR_curve</span>
|
|
|
|
+ </div>
|
|
|
|
+ <el-image :src="PATH_PREFIX + item.resultPath + '/PR_curve.png'"></el-image>
|
|
|
|
+ </el-card>
|
|
|
|
+
|
|
|
|
+ <el-card :body-style="{ padding: '0px' }" style="margin-top: 10px">
|
|
|
|
+ <div style="padding: 14px;">
|
|
|
|
+ <span>F1_curve</span>
|
|
|
|
+ </div>
|
|
|
|
+ <el-image :src="PATH_PREFIX + item.resultPath + '/F1_curve.png'"></el-image>
|
|
|
|
+ </el-card>
|
|
|
|
+ </el-container>
|
|
|
|
+ </el-container>
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ </el-dialog>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
</template>
|
|
|
|
|
|
@@ -126,7 +212,25 @@ import { getSubtaskApi } from '@/api/modules/task/subtask'
|
|
import { getDictsApi } from '@/api/modules/system/dictData'
|
|
import { getDictsApi } from '@/api/modules/system/dictData'
|
|
import { useRoute } from 'vue-router'
|
|
import { useRoute } from 'vue-router'
|
|
import ImagePreview from '@/components/ImagePreview/index.vue'
|
|
import ImagePreview from '@/components/ImagePreview/index.vue'
|
|
|
|
+import http from "@/api";
|
|
const route = useRoute()
|
|
const route = useRoute()
|
|
|
|
+const PATH_PREFIX = 'api/profile/task'
|
|
|
|
+let resultDialogVisible = ref(false)
|
|
|
|
+let refSelectData = ref(reactive({}))
|
|
|
|
+const reRunTask = row => {
|
|
|
|
+ http.post<any>('/identification/identificationSubtaskDetails/execute', {taskId: row.id}, { loading: false })
|
|
|
|
+}
|
|
|
|
+let compareDialogVisible = ref(false)
|
|
|
|
+let listData = ref(reactive([]))
|
|
|
|
+const showCompareResult = () => {
|
|
|
|
+ console.log(listData.value)
|
|
|
|
+ compareDialogVisible.value = true
|
|
|
|
+}
|
|
|
|
+const showResult = row => {
|
|
|
|
+ refSelectData.value = reactive(row)
|
|
|
|
+ resultDialogVisible.value = true
|
|
|
|
+ console.log(row)
|
|
|
|
+}
|
|
const subTaskId = route.query.id as string
|
|
const subTaskId = route.query.id as string
|
|
// ProTable 实例
|
|
// ProTable 实例
|
|
const proTable = ref<ProTableInstance>()
|
|
const proTable = ref<ProTableInstance>()
|
|
@@ -153,6 +257,7 @@ const refreshList = () => {
|
|
subtaskId: subTaskId
|
|
subtaskId: subTaskId
|
|
}).then(res => {
|
|
}).then(res => {
|
|
bizProcessList.value = res.data['list'].sort((a, b) => b.index - a.index)
|
|
bizProcessList.value = res.data['list'].sort((a, b) => b.index - a.index)
|
|
|
|
+ listData.value = reactive(res.data['list'].sort((a, b) => b.index - a.index))
|
|
})
|
|
})
|
|
}, 0)
|
|
}, 0)
|
|
}
|
|
}
|
|
@@ -257,7 +362,7 @@ const viewLog = row => {
|
|
// ElMessage.warning('算法状态为待处理,暂无日志')
|
|
// ElMessage.warning('算法状态为待处理,暂无日志')
|
|
// return
|
|
// return
|
|
// }
|
|
// }
|
|
- const url = `/api/profile${row.log}`
|
|
|
|
|
|
+ const url = `/api/profile/task` + row.resultPath + '/log/log.log'
|
|
logShow(url)
|
|
logShow(url)
|
|
dialogVisible.value = true
|
|
dialogVisible.value = true
|
|
timer2.value = setInterval(() => {
|
|
timer2.value = setInterval(() => {
|