|
@@ -2,6 +2,18 @@
|
|
|
import TableBase from '@/components/TableBase/index.vue'
|
|
|
import { ColumnProps } from '@/components/TableBase/interface/index'
|
|
|
import { Edit, Delete } from '@element-plus/icons-vue'
|
|
|
+import Drawer from '@/components/Drawer/index.vue'
|
|
|
+import { ref, reactive } from 'vue'
|
|
|
+const drawerRef = ref()
|
|
|
+const action = ref(true)
|
|
|
+const formLabelWidth = ref('80px')
|
|
|
+const form = reactive({
|
|
|
+ username: '',
|
|
|
+ password: '',
|
|
|
+ user: '',
|
|
|
+ department: '',
|
|
|
+ post: ''
|
|
|
+})
|
|
|
const columns: ColumnProps[] = [
|
|
|
{ type: 'index', label: '#', width: 80 },
|
|
|
{ prop: 'date', label: '时间', width: 120, search: { el: 'input' } },
|
|
@@ -28,20 +40,87 @@ const columns: ColumnProps[] = [
|
|
|
fieldNames: { label: 'userLabel', value: 'userStatus' }
|
|
|
},
|
|
|
{ prop: 'createTime', label: '创建时间', width: 180 },
|
|
|
- { prop: 'operation', label: '操作', width: 430, fixed: 'right' }
|
|
|
+ { prop: 'operation', label: '操作', width: 200, fixed: 'right' }
|
|
|
]
|
|
|
const requestApi = async () => {
|
|
|
return false
|
|
|
}
|
|
|
+
|
|
|
+const openDrawer = () => {
|
|
|
+ drawerRef.value.closeDrawer()
|
|
|
+ console.log(drawerRef.value)
|
|
|
+}
|
|
|
+
|
|
|
+type Fn = () => void
|
|
|
+const callbackDrawer = (done: Fn) => {
|
|
|
+ console.log('触发回调')
|
|
|
+ done()
|
|
|
+}
|
|
|
</script>
|
|
|
|
|
|
<template>
|
|
|
<TableBase :columns="columns" :requestApi="requestApi">
|
|
|
+ <template #table-header>
|
|
|
+ <div class="input-suffix">
|
|
|
+ <el-row :gutter="20">
|
|
|
+ <el-col :span="12">
|
|
|
+ <span class="ml-3 w-35 text-gray-600 inline-flex items-center">账户查询:</span>
|
|
|
+ <el-input type="text" class="w-50 m-2" />
|
|
|
+ <el-button type="primary">搜索</el-button>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="6" :offset="6"><el-button type="primary" @click="openDrawer">添加</el-button></el-col>
|
|
|
+ </el-row>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
<template #right>
|
|
|
<el-button link type="primary" size="small" :icon="Edit">编辑</el-button>
|
|
|
<el-button link type="danger" size="small" :icon="Delete">删除</el-button>
|
|
|
</template>
|
|
|
</TableBase>
|
|
|
+ <Drawer ref="drawerRef" :handleClose="callbackDrawer">
|
|
|
+ <template #header="{ params }">
|
|
|
+ <h4 :id="params.titleId" :class="params.titleClass">{{ action ? '添加' : '编辑' }} - 账户管理</h4>
|
|
|
+ </template>
|
|
|
+ <el-form :model="form" class="form">
|
|
|
+ <el-form-item label="用户名:" :label-width="formLabelWidth">
|
|
|
+ <el-input v-model="form.username" autocomplete="off" />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="密码:" :label-width="formLabelWidth">
|
|
|
+ <el-input v-model="form.username" autocomplete="off" />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="角色名:" :label-width="formLabelWidth">
|
|
|
+ <el-select v-model="form.password" placeholder="请选择角色">
|
|
|
+ <el-option label="Area1" value="shanghai" />
|
|
|
+ <el-option label="Area2" value="beijing" />
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="部门:" :label-width="formLabelWidth">
|
|
|
+ <el-select v-model="form.password" placeholder="请选择部门">
|
|
|
+ <el-option label="Area1" value="shanghai" />
|
|
|
+ <el-option label="Area2" value="beijing" />
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="岗位:" :label-width="formLabelWidth">
|
|
|
+ <el-select v-model="form.password" placeholder="请选择岗位">
|
|
|
+ <el-option label="Area1" value="shanghai" />
|
|
|
+ <el-option label="Area2" value="beijing" />
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item :label-width="formLabelWidth">
|
|
|
+ <el-button color="#626aef">添加</el-button>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ </Drawer>
|
|
|
</template>
|
|
|
|
|
|
-<style scoped></style>
|
|
|
+<style scoped lang="scss">
|
|
|
+.input-suffix {
|
|
|
+ width: 100%;
|
|
|
+ .w-50 {
|
|
|
+ width: 12.5rem;
|
|
|
+ }
|
|
|
+}
|
|
|
+.form {
|
|
|
+ margin-top: 3rem;
|
|
|
+}
|
|
|
+</style>
|