forked from liweijie/education
1、正课与学期关系关联;
2、天假删除保护; 3、教学任务计划增加了「结束发布」。已发布或库里的「已发布」都可以结束;结束后写入结束时间,任务书和班次课程任务只读 4、班次学期操作内容调整修改;
This commit is contained in:
@@ -23,7 +23,7 @@
|
||||
<el-form-item label="状态">
|
||||
<el-select v-model="searchForm.zt" placeholder="请选择状态" clearable style="width: 140px">
|
||||
<el-option
|
||||
v-for="opt in statusOptions"
|
||||
v-for="opt in searchStatusOptions"
|
||||
:key="opt.value"
|
||||
:label="opt.label"
|
||||
:value="opt.value"
|
||||
@@ -54,8 +54,8 @@
|
||||
<el-table-column prop="nd" label="年度" width="150" align="center" />
|
||||
<el-table-column label="状态" width="100" align="center">
|
||||
<template slot-scope="{ row }">
|
||||
<el-tag :type="row.zt === '发布' ? 'success' : 'info'" size="small">
|
||||
{{ row.zt || '-' }}
|
||||
<el-tag :type="taskTagType(row.zt)" size="small">
|
||||
{{ taskStatusLabel(row.zt) }}
|
||||
</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
@@ -63,17 +63,23 @@
|
||||
<el-table-column prop="jssj" label="结束时间" width="180" align="center" :formatter="fmtDateTime" />
|
||||
<el-table-column prop="cjsj" label="创建时间" width="180" align="center" :formatter="fmtDateTime" />
|
||||
<el-table-column prop="jcxqscsj" label="教材需求生成时间" align="center" :formatter="fmtDateTime" />
|
||||
<el-table-column label="操作" width="300" align="center" fixed="right">
|
||||
<el-table-column label="操作" width="380" align="center" fixed="right">
|
||||
<template slot-scope="{ row }">
|
||||
<el-button type="text" size="small" @click="handleDetail(row)">详情</el-button>
|
||||
<el-button type="text" size="small" @click="handleEdit(row)">编辑</el-button>
|
||||
<el-button type="text" size="small" :disabled="isTaskLocked(row)" @click="handleEdit(row)">编辑</el-button>
|
||||
<el-button
|
||||
type="text"
|
||||
size="small"
|
||||
:disabled="row.zt === '发布'"
|
||||
:disabled="isTaskPublished(row) || isTaskEnded(row)"
|
||||
@click="handlePublish(row)"
|
||||
>发布</el-button>
|
||||
<el-button type="text" size="small" class="text-danger" @click="handleDelete(row)">删除</el-button>
|
||||
<el-button
|
||||
type="text"
|
||||
size="small"
|
||||
:disabled="!isTaskPublished(row)"
|
||||
@click="handleEndPublish(row)"
|
||||
>结束发布</el-button>
|
||||
<el-button type="text" size="small" class="text-danger" :disabled="isTaskEnded(row)" @click="handleDelete(row)">删除</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
@@ -116,7 +122,7 @@
|
||||
<el-form-item label="状态" prop="zt">
|
||||
<el-select v-model="form.zt" placeholder="请选择状态" style="width: 100%">
|
||||
<el-option
|
||||
v-for="opt in statusOptions"
|
||||
v-for="opt in formStatusOptions"
|
||||
:key="opt.value"
|
||||
:label="opt.label"
|
||||
:value="opt.value"
|
||||
@@ -197,7 +203,8 @@ import {
|
||||
addTeachingTask,
|
||||
updateTeachingTask,
|
||||
deleteTeachingTask,
|
||||
publishTeachingTask
|
||||
publishTeachingTask,
|
||||
endPublishTeachingTask
|
||||
} from '@/api/teachBusiness/teachingTask'
|
||||
import { listAllSemester } from '@/api/teachBusiness/semester'
|
||||
|
||||
@@ -212,7 +219,13 @@ export default {
|
||||
zt: ''
|
||||
},
|
||||
yearOptions: [],
|
||||
statusOptions: [
|
||||
searchStatusOptions: [
|
||||
{ label: '未发布', value: '未发布' },
|
||||
{ label: '发布', value: '发布' },
|
||||
{ label: '已发布', value: '已发布' },
|
||||
{ label: '已结束', value: '已结束' }
|
||||
],
|
||||
formStatusOptions: [
|
||||
{ label: '未发布', value: '未发布' },
|
||||
{ label: '发布', value: '发布' }
|
||||
],
|
||||
@@ -425,6 +438,25 @@ export default {
|
||||
}).catch(() => {})
|
||||
},
|
||||
|
||||
isTaskPublished(row) {
|
||||
return row && (row.zt === '发布' || row.zt === '已发布')
|
||||
},
|
||||
isTaskEnded(row) {
|
||||
return row && row.zt === '已结束'
|
||||
},
|
||||
isTaskLocked(row) {
|
||||
return this.isTaskPublished(row) || this.isTaskEnded(row)
|
||||
},
|
||||
taskStatusLabel(zt) {
|
||||
if (zt === '已结束') return '已结束'
|
||||
if (zt === '发布' || zt === '已发布') return '已发布'
|
||||
return zt || '未发布'
|
||||
},
|
||||
taskTagType(zt) {
|
||||
if (zt === '已结束') return 'warning'
|
||||
if (zt === '发布' || zt === '已发布') return 'success'
|
||||
return 'info'
|
||||
},
|
||||
/* ---------- 发布 ---------- */
|
||||
handlePublish(row) {
|
||||
this.$confirm(`确定要发布教学任务「${row.rwmc || row.bh || '该记录'}」吗?发布前请先填写关联的教研室任务书。`, '系统提示', {
|
||||
@@ -435,6 +467,16 @@ export default {
|
||||
this.$message.success('发布成功')
|
||||
this.fetchList()
|
||||
}).catch(() => {})
|
||||
},
|
||||
handleEndPublish(row) {
|
||||
this.$confirm(`确定要结束发布教学任务「${row.rwmc || row.bh || '该记录'}」吗?结束后任务书和班次课程任务将只读。`, '系统提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
}).then(() => endPublishTeachingTask(row.bh)).then(() => {
|
||||
this.$message.success('已结束发布')
|
||||
this.fetchList()
|
||||
}).catch(() => {})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user