diff options
Diffstat (limited to 'UI source code/dns_mapping_ui-master/src/views/system/job/index.vue')
| -rw-r--r-- | UI source code/dns_mapping_ui-master/src/views/system/job/index.vue | 110 |
1 files changed, 110 insertions, 0 deletions
diff --git a/UI source code/dns_mapping_ui-master/src/views/system/job/index.vue b/UI source code/dns_mapping_ui-master/src/views/system/job/index.vue new file mode 100644 index 0000000..e17ea75 --- /dev/null +++ b/UI source code/dns_mapping_ui-master/src/views/system/job/index.vue @@ -0,0 +1,110 @@ +<template> + <div class="app-container"> + <!--工具栏--> + <div class="head-container"> + <eHeader :dict="dict" :permission="permission" /> + <crudOperation :permission="permission" /> + </div> + <!--表格渲染--> + <el-table ref="table" v-loading="crud.loading" :data="crud.data" style="width: 100%;" @selection-change="crud.selectionChangeHandler"> + <el-table-column type="selection" width="55" /> + <el-table-column prop="name" label="名称" /> + <el-table-column prop="jobSort" label="排序"> + <template slot-scope="scope"> + {{ scope.row.jobSort }} + </template> + </el-table-column> + <el-table-column prop="status" label="状态" align="center"> + <template slot-scope="scope"> + <el-switch + v-model="scope.row.enabled" + active-color="#409EFF" + inactive-color="#F56C6C" + @change="changeEnabled(scope.row, scope.row.enabled)" + /> + </template> + </el-table-column> + <el-table-column prop="createTime" label="创建日期" /> + <!-- 编辑与删除 --> + <el-table-column + v-if="checkPer(['admin','job:edit','job:del'])" + label="操作" + width="130px" + align="center" + fixed="right" + > + <template slot-scope="scope"> + <udOperation + :data="scope.row" + :permission="permission" + /> + </template> + </el-table-column> + </el-table> + <!--分页组件--> + <pagination /> + <!--表单渲染--> + <eForm :job-status="dict.job_status" /> + </div> +</template> + +<script> +import crudJob from '@/api/system/job' +import eHeader from './module/header' +import eForm from './module/form' +import CRUD, { presenter } from '@crud/crud' +import crudOperation from '@crud/CRUD.operation' +import pagination from '@crud/Pagination' +import udOperation from '@crud/UD.operation' +export default { + name: 'Job', + components: { eHeader, eForm, crudOperation, pagination, udOperation }, + cruds() { + return CRUD({ + title: '岗位', + url: 'api/job', + sort: ['jobSort,asc', 'id,desc'], + crudMethod: { ...crudJob } + }) + }, + mixins: [presenter()], + // 数据字典 + dicts: ['job_status'], + data() { + return { + permission: { + add: ['admin', 'job:add'], + edit: ['admin', 'job:edit'], + del: ['admin', 'job:del'] + } + } + }, + methods: { + // 改变状态 + changeEnabled(data, val) { + this.$confirm('此操作将 "' + this.dict.label.job_status[val] + '" ' + data.name + '岗位, 是否继续?', '提示', { + confirmButtonText: '确定', + cancelButtonText: '取消', + type: 'warning' + }).then(() => { + // eslint-disable-next-line no-undef + crudJob.edit(data).then(() => { + // eslint-disable-next-line no-undef + this.crud.notify(this.dict.label.job_status[val] + '成功', 'success') + }).catch(err => { + data.enabled = !data.enabled + console.log(err.data.message) + }) + }).catch(() => { + data.enabled = !data.enabled + }) + } + } +} +</script> + +<style rel="stylesheet/scss" lang="scss" scoped> + ::v-deep .el-input-number .el-input__inner { + text-align: left; + } +</style> |
