3 changed files with 112 additions and 1 deletions
@ -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> |
Write
Preview
Loading…
Cancel
Save
Reference in new issue