|
|
@@ -5,48 +5,41 @@
|
|
|
<template #query-form>
|
|
|
<el-form-item label="任务名称">
|
|
|
<el-input
|
|
|
- v-model="queryForm.name"
|
|
|
- placeholder="请输入任务名称"
|
|
|
- clearable
|
|
|
+ v-model="queryForm.name"
|
|
|
+ placeholder="请输入任务名称"
|
|
|
+ clearable
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="任务代号">
|
|
|
<el-input
|
|
|
- v-model="queryForm.taskCode"
|
|
|
- placeholder="请输入任务代号"
|
|
|
- clearable
|
|
|
+ v-model="queryForm.taskCode"
|
|
|
+ placeholder="请输入任务代号"
|
|
|
+ clearable
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
</template>
|
|
|
|
|
|
<!-- Header右侧操作按钮 -->
|
|
|
<template #header-actions>
|
|
|
-
|
|
|
<el-button icon="el-icon-search" type="primary" @click="handleQuery">
|
|
|
查询
|
|
|
</el-button>
|
|
|
-
|
|
|
<el-button
|
|
|
- @click="handleAdd"
|
|
|
- icon="el-icon-plus" class="blue-btn"
|
|
|
+ @click="showParseMethodModal"
|
|
|
+ icon="el-icon-plus" class="blue-btn"
|
|
|
> 添加 </el-button>
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
</template>
|
|
|
|
|
|
<!-- 主要内容 -->
|
|
|
<template #main>
|
|
|
<TaskUserCard
|
|
|
- v-for="plan in planList"
|
|
|
- :key="plan.id"
|
|
|
- :plan="plan"
|
|
|
- v-if="planList.length > 0"
|
|
|
- @select="handleSelect"
|
|
|
- @edit="handleEdit"
|
|
|
- @view-detail="viewDetails"
|
|
|
+ v-for="plan in planList"
|
|
|
+ :key="plan.id"
|
|
|
+ :plan="plan"
|
|
|
+ v-if="planList.length > 0"
|
|
|
+ @select="handleSelect"
|
|
|
+ @edit="handleEdit"
|
|
|
+ @view-detail="viewDetails"
|
|
|
/>
|
|
|
<el-empty v-else description="暂无方案数据" />
|
|
|
</template>
|
|
|
@@ -54,35 +47,61 @@
|
|
|
<!-- 底部右侧分页 -->
|
|
|
<template #footer-actions>
|
|
|
<el-pagination
|
|
|
- @size-change="handleSizeChange"
|
|
|
- @current-change="handleCurrentChange"
|
|
|
- :current-page="pagination.currentPage"
|
|
|
- :page-sizes="[10, 20, 50, 100]"
|
|
|
- :page-size="pagination.pageSize"
|
|
|
- layout="total, sizes, prev, pager, next, jumper"
|
|
|
- :total="pagination.total"
|
|
|
+ @size-change="handleSizeChange"
|
|
|
+ @current-change="handleCurrentChange"
|
|
|
+ :current-page="pagination.currentPage"
|
|
|
+ :page-sizes="[10, 20, 50, 100]"
|
|
|
+ :page-size="pagination.pageSize"
|
|
|
+ layout="total, sizes, prev, pager, next, jumper"
|
|
|
+ :total="pagination.total"
|
|
|
/>
|
|
|
</template>
|
|
|
|
|
|
</DarkLayout>
|
|
|
+
|
|
|
<!-- 任务详情弹窗 -->
|
|
|
<DarkDialog title="任务详情"
|
|
|
:visible.sync="dialogVisible"
|
|
|
width="50%"
|
|
|
:before-close="handleClose">
|
|
|
<el-descriptions :column="2" border>
|
|
|
- <el-descriptions-item label="方案名称">{{ currentPlan.planName }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="任务名称">{{ currentPlan.taskName }}</el-descriptions-item>
|
|
|
<el-descriptions-item label="任务名称">{{ currentPlan.taskName }}</el-descriptions-item>
|
|
|
<el-descriptions-item label="任务代号">{{ currentPlan.taskCode }}</el-descriptions-item>
|
|
|
- <el-descriptions-item label="开始时间">{{ currentPlan.startTime }}</el-descriptions-item>
|
|
|
- <el-descriptions-item label="结束时间">{{ currentPlan.endTime }}</el-descriptions-item>
|
|
|
- <el-descriptions-item label="编制状态">{{ currentPlan.compileStatus }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="开始时间">{{ currentPlan.taskStartTime }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="结束时间">{{ currentPlan.taskEndTime }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="处理状态">{{ currentPlan.taskStatus }}</el-descriptions-item>
|
|
|
<el-descriptions-item label="密级">{{ currentPlan.secretLevel }}</el-descriptions-item>
|
|
|
- <el-descriptions-item label="保密期限">{{ currentPlan.secretYears }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="保密期限">{{ currentPlan.confidentialLevelYears }}</el-descriptions-item>
|
|
|
<el-descriptions-item label="状态">{{ currentPlan.status }}</el-descriptions-item>
|
|
|
</el-descriptions>
|
|
|
<span slot="footer" class="dialog-footer">
|
|
|
- <el-button @click="dialogVisible = false">关闭</el-button>
|
|
|
+ <el-button @click="dialogVisible = false">确认</el-button>
|
|
|
+ </span>
|
|
|
+ </DarkDialog>
|
|
|
+
|
|
|
+ <!-- 解析方式选择弹窗 -->
|
|
|
+ <DarkDialog
|
|
|
+ title="选择解析方式"
|
|
|
+ :visible.sync="parseMethodVisible"
|
|
|
+ width="400px"
|
|
|
+ :before-close="() => { parseMethodVisible = false; }"
|
|
|
+ >
|
|
|
+ <el-form :model="parseForm" label-width="100px" class="mt-4">
|
|
|
+ <el-form-item label="解析方式" required>
|
|
|
+ <el-select
|
|
|
+ v-model="parseForm.method"
|
|
|
+ placeholder="请选择解析方式"
|
|
|
+ style="width: 100%"
|
|
|
+ >
|
|
|
+ <el-option label="手工录入" value="manual"></el-option>
|
|
|
+ <el-option label="文件上传" value="upload"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ <span slot="footer" class="dialog-footer">
|
|
|
+ <el-button @click="parseMethodVisible = false">取消</el-button>
|
|
|
+ <el-button type="primary" @click="confirmParseMethod">确定</el-button>
|
|
|
</span>
|
|
|
</DarkDialog>
|
|
|
|
|
|
@@ -115,13 +134,18 @@ export default {
|
|
|
}
|
|
|
],
|
|
|
dialogVisible: false,
|
|
|
+ parseMethodVisible: false, // 解析方式选择弹窗
|
|
|
currentPlan: {}, // 当前选中的任务数据
|
|
|
queryForm: {
|
|
|
name: '',
|
|
|
taskCode: ''
|
|
|
},
|
|
|
+ parseForm: {
|
|
|
+ method: 'upload' // 默认选中文件上传
|
|
|
+ },
|
|
|
planList: [
|
|
|
{
|
|
|
+ id: '1',
|
|
|
status: '已确认',
|
|
|
taskCode: 'plan-001',
|
|
|
taskName: '新型导弹打击试验',
|
|
|
@@ -134,6 +158,7 @@ export default {
|
|
|
createTime:"2023-01-01",
|
|
|
},
|
|
|
{
|
|
|
+ id: '2',
|
|
|
status: '已确认',
|
|
|
taskCode: 'plan-002',
|
|
|
taskName: '电子对抗演练',
|
|
|
@@ -146,6 +171,7 @@ export default {
|
|
|
createTime:"2023-01-01",
|
|
|
},
|
|
|
{
|
|
|
+ id: '3',
|
|
|
status: '已确认',
|
|
|
taskCode: 'plan-003',
|
|
|
taskName: '电子对抗演练',
|
|
|
@@ -158,6 +184,7 @@ export default {
|
|
|
createTime:"2023-01-01",
|
|
|
},
|
|
|
{
|
|
|
+ id: '4',
|
|
|
status: '未确认',
|
|
|
taskCode: 'plan-004',
|
|
|
taskName: '电子对抗演练',
|
|
|
@@ -170,6 +197,7 @@ export default {
|
|
|
createTime:"2023-01-01",
|
|
|
},
|
|
|
{
|
|
|
+ id: '5',
|
|
|
status: '未确认',
|
|
|
taskCode: 'plan-005',
|
|
|
taskName: '新型导弹打击试验',
|
|
|
@@ -182,6 +210,7 @@ export default {
|
|
|
createTime:"2023-01-01",
|
|
|
},
|
|
|
{
|
|
|
+ id: '6',
|
|
|
status: '未确认',
|
|
|
taskCode: 'plan-006',
|
|
|
taskName: '电子对抗演练',
|
|
|
@@ -194,6 +223,7 @@ export default {
|
|
|
createTime:"2023-01-01",
|
|
|
},
|
|
|
{
|
|
|
+ id: '7',
|
|
|
status: '未确认',
|
|
|
taskCode: 'plan-007',
|
|
|
taskName: '电子对抗演练',
|
|
|
@@ -217,7 +247,6 @@ export default {
|
|
|
},
|
|
|
methods: {
|
|
|
handleClose(done) {
|
|
|
- // 可以在这里添加关闭前的确认逻辑
|
|
|
done()
|
|
|
},
|
|
|
handleSelect(plan) {
|
|
|
@@ -227,14 +256,20 @@ export default {
|
|
|
this.$router.push({ path: '/home/taskMage' })
|
|
|
// this.$router.push({ path: '/home/taskCreate' })
|
|
|
},
|
|
|
- handleAdd(){
|
|
|
- this.$router.push({ path: '/home/taskCreate' })
|
|
|
+ // 显示解析方式选择弹窗
|
|
|
+ showParseMethodModal() {
|
|
|
+ this.parseMethodVisible = true;
|
|
|
+ },
|
|
|
+ // 确认解析方式并跳转
|
|
|
+ confirmParseMethod() {
|
|
|
+ this.parseMethodVisible = false;
|
|
|
+ // 根据选择的解析方式跳转到不同路由
|
|
|
+ // 如果需要区分不同方式,可以在这里添加判断
|
|
|
+ this.$router.push({ path: '/home/taskCreate' });
|
|
|
},
|
|
|
viewDetails(plan) {
|
|
|
- console.log("000")
|
|
|
- this.currentPlan = plan
|
|
|
- this.dialogVisible = true
|
|
|
- console.log(111)
|
|
|
+ this.currentPlan = plan;
|
|
|
+ this.dialogVisible = true;
|
|
|
},
|
|
|
handleQuery() {
|
|
|
// 查询逻辑
|
|
|
@@ -264,3 +299,4 @@ export default {
|
|
|
<style scoped>
|
|
|
|
|
|
</style>
|
|
|
+
|