|
@@ -3,20 +3,26 @@
|
|
<div class="mymain-container">
|
|
<div class="mymain-container">
|
|
<div>
|
|
<div>
|
|
<el-select v-model="value1" multiple placeholder="显示层级">
|
|
<el-select v-model="value1" multiple placeholder="显示层级">
|
|
- <el-option v-for="item in levels" :key="item.value" :label="item + '级'" :value="item"> </el-option>
|
|
|
|
|
|
+ <el-option v-for="item in levels" :key="item.value" :label="['平台', '商户', '网点'][item - 1]" :value="item">
|
|
|
|
+ </el-option>
|
|
</el-select>
|
|
</el-select>
|
|
- <span style="display: inline-block; width: 220px; margin-left: 10px"
|
|
|
|
- ><el-input v-model="input" placeholder="模糊搜索"></el-input
|
|
|
|
- ></span>
|
|
|
|
|
|
+ <span style="display: inline-block; width: 220px; margin-left: 10px"><el-input v-model="input"
|
|
|
|
+ placeholder="模糊搜索"></el-input></span>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div class="table">
|
|
<div class="table">
|
|
<el-table :data="showList" border>
|
|
<el-table :data="showList" border>
|
|
- <el-table-column prop="level" label="级别" width="50"></el-table-column>
|
|
|
|
- <el-table-column prop="name" label="部门名称"> </el-table-column>
|
|
|
|
|
|
+ <el-table-column prop="level" label="级别" width="70">
|
|
|
|
+ <template slot-scope="scope">
|
|
|
|
+ <el-tag v-if="scope.row.level == 1" type="success">平台</el-tag>
|
|
|
|
+ <el-tag v-if="scope.row.level == 2">商户</el-tag>
|
|
|
|
+ <el-tag v-if="scope.row.level == 3" type="warning">网点</el-tag>
|
|
|
|
+ </template>
|
|
|
|
+ </el-table-column>
|
|
|
|
+ <el-table-column prop="name" label="网点名称"> </el-table-column>
|
|
<el-table-column prop="" label="结构">
|
|
<el-table-column prop="" label="结构">
|
|
<template slot-scope="scope">
|
|
<template slot-scope="scope">
|
|
- {{ scope.row.pname.join(' / ') }}
|
|
|
|
|
|
+ {{ scope.row.pname.join(' -> ') }}
|
|
</template>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table-column>
|
|
<el-table-column align="center" label="状态" class-name="status-col" width="80">
|
|
<el-table-column align="center" label="状态" class-name="status-col" width="80">
|
|
@@ -28,68 +34,38 @@
|
|
</el-table-column>
|
|
</el-table-column>
|
|
<el-table-column label="操作" width="268" fixed="right">
|
|
<el-table-column label="操作" width="268" fixed="right">
|
|
<template slot-scope="scope">
|
|
<template slot-scope="scope">
|
|
- <el-button
|
|
|
|
- type="primary"
|
|
|
|
- size="mini"
|
|
|
|
- icon="el-icon-plus"
|
|
|
|
- @click="openMainForm('add', scope.row.websitId)"
|
|
|
|
- >添加子部门</el-button
|
|
|
|
- >
|
|
|
|
- <el-button
|
|
|
|
- type="primary"
|
|
|
|
- size="mini"
|
|
|
|
- icon="el-icon-edit"
|
|
|
|
- @click="openMainForm('edit', scope.row.websitId)"
|
|
|
|
- >编辑</el-button
|
|
|
|
- >
|
|
|
|
- <el-button
|
|
|
|
- type="primary"
|
|
|
|
- size="mini"
|
|
|
|
- icon="el-icon-edit"
|
|
|
|
- @click="handleDelete(scope.row.websitId)"
|
|
|
|
- >删除</el-button
|
|
|
|
- >
|
|
|
|
|
|
+ <el-button type="primary" size="mini" icon="el-icon-edit"
|
|
|
|
+ @click="openMainForm('edit', scope.row.websitId)">编辑</el-button>
|
|
|
|
+ <el-button type="primary" size="mini" icon="el-icon-edit"
|
|
|
|
+ @click="handleDelete(scope.row.websitId)">删除</el-button>
|
|
|
|
+ <el-button v-if="scope.row.level < 3" :type="['primary', 'warning'][scope.row.level - 1]" plain size="mini"
|
|
|
|
+ icon="el-icon-plus" @click="openMainForm('add', scope.row.websitId)">添加{{ scope.row.level == 1 ? '商户' :
|
|
|
|
+ scope.row.level == 2 ? '网点' : '网点' }}</el-button>
|
|
</template>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table-column>
|
|
</el-table>
|
|
</el-table>
|
|
</div>
|
|
</div>
|
|
<div class="pagination clearfix">
|
|
<div class="pagination clearfix">
|
|
<div class="fr">
|
|
<div class="fr">
|
|
- <el-pagination
|
|
|
|
- @size-change="handleSizeChange"
|
|
|
|
- @current-change="handleCurrentChange"
|
|
|
|
- :current-page="currentPage"
|
|
|
|
- :page-sizes="[15, 20, 30, 50]"
|
|
|
|
- :page-size="pageSize"
|
|
|
|
- layout="total, sizes, prev, pager, next, jumper"
|
|
|
|
- :total="listTotal"
|
|
|
|
- >
|
|
|
|
|
|
+ <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage"
|
|
|
|
+ :page-sizes="[15, 20, 30, 50]" :page-size="pageSize" layout="total, sizes, prev, pager, next, jumper"
|
|
|
|
+ :total="listTotal">
|
|
</el-pagination>
|
|
</el-pagination>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
- <!-- 添加编辑部门 -->
|
|
|
|
- <el-dialog
|
|
|
|
- :title="mainFormType == 'add' ? '添加部门' : '编辑部门'"
|
|
|
|
- :visible.sync="mainFormVisible"
|
|
|
|
- :show-close="false"
|
|
|
|
- width="40%"
|
|
|
|
- :close-on-click-modal="false"
|
|
|
|
- >
|
|
|
|
|
|
+ <!-- 添加编辑网点 -->
|
|
|
|
+ <el-dialog :title="mainFormType == 'add' ? '添加' : '编辑'" :visible.sync="mainFormVisible" :show-close="false"
|
|
|
|
+ width="40%" :close-on-click-modal="false">
|
|
<el-form ref="mainForm" :model="mainForm" :rules="mainFormRules" label-position="top" label-width="80px">
|
|
<el-form ref="mainForm" :model="mainForm" :rules="mainFormRules" label-position="top" label-width="80px">
|
|
- <el-form-item label="上级部门" prop="parentId">
|
|
|
|
- <el-cascader
|
|
|
|
- style="width: 100%"
|
|
|
|
- :options="dataList2"
|
|
|
|
- :props="{ checkStrictly: true, value: 'websitId', label: 'name' }"
|
|
|
|
- v-model="mainForm.parentId"
|
|
|
|
- filterable
|
|
|
|
- clearable
|
|
|
|
- >
|
|
|
|
|
|
+ <el-form-item label="上级" prop="parentId">
|
|
|
|
+ <el-cascader style="width: 100%" :options="dataList2"
|
|
|
|
+ :props="{ checkStrictly: true, value: 'websitId', label: 'name' }" v-model="mainForm.parentId" filterable
|
|
|
|
+ clearable>
|
|
</el-cascader>
|
|
</el-cascader>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
- <el-form-item label="部门名称" prop="name">
|
|
|
|
- <el-input placeholder="请输入部门名称" v-model="mainForm.name"></el-input>
|
|
|
|
|
|
+ <el-form-item label="名称" prop="name">
|
|
|
|
+ <el-input placeholder="请输入网点名称" v-model="mainForm.name"></el-input>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="状态" prop="status">
|
|
<el-form-item label="状态" prop="status">
|
|
<el-radio-group v-model="mainForm.status">
|
|
<el-radio-group v-model="mainForm.status">
|
|
@@ -128,7 +104,7 @@ export default {
|
|
status: true,
|
|
status: true,
|
|
},
|
|
},
|
|
mainFormRules: {
|
|
mainFormRules: {
|
|
- name: [{ required: true, message: '请填写部门名称', trigger: 'blur' }]
|
|
|
|
|
|
+ name: [{ required: true, message: '请填写网点名称', trigger: 'blur' }]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
},
|
|
@@ -170,14 +146,14 @@ export default {
|
|
}
|
|
}
|
|
},
|
|
},
|
|
methods: {
|
|
methods: {
|
|
- // 获取部门列表
|
|
|
|
|
|
+ // 获取网点列表
|
|
getList() {
|
|
getList() {
|
|
var list_ = []
|
|
var list_ = []
|
|
var levels = []
|
|
var levels = []
|
|
function dg(list, level = 1, pname = []) {
|
|
function dg(list, level = 1, pname = []) {
|
|
for (let { children, name, ...item } of list) {
|
|
for (let { children, name, ...item } of list) {
|
|
var n_ = ''
|
|
var n_ = ''
|
|
- for (var i = 1; i < level; i++) n_ += ` - `
|
|
|
|
|
|
+ for (var i = 1; i < level; i++) n_ += ` -> `
|
|
list_.push({ ...item, name: n_ + name, level, pname: [...pname] })
|
|
list_.push({ ...item, name: n_ + name, level, pname: [...pname] })
|
|
if (!~levels.indexOf(level)) levels.push(level)
|
|
if (!~levels.indexOf(level)) levels.push(level)
|
|
if (children && children.length) dg(children, level + 1, [...pname, name])
|
|
if (children && children.length) dg(children, level + 1, [...pname, name])
|
|
@@ -207,22 +183,22 @@ export default {
|
|
// 操作 - 删除
|
|
// 操作 - 删除
|
|
handleDelete(id) {
|
|
handleDelete(id) {
|
|
this.$confirm('此操作将永久删除, 是否继续?', '提示', {
|
|
this.$confirm('此操作将永久删除, 是否继续?', '提示', {
|
|
- confirmButtonText: '确定',
|
|
|
|
- cancelButtonText: '取消',
|
|
|
|
- showClose: false,
|
|
|
|
- type: 'warning'
|
|
|
|
- }).then(() => {
|
|
|
|
- deleteDepartment({ id: id }).then(res => {
|
|
|
|
- this.getList()
|
|
|
|
- this.$successMsg()
|
|
|
|
- })
|
|
|
|
- }).catch(() => {
|
|
|
|
|
|
+ confirmButtonText: '确定',
|
|
|
|
+ cancelButtonText: '取消',
|
|
|
|
+ showClose: false,
|
|
|
|
+ type: 'warning'
|
|
|
|
+ }).then(() => {
|
|
|
|
+ deleteDepartment({ id: id }).then(res => {
|
|
|
|
+ this.getList()
|
|
|
|
+ this.$successMsg()
|
|
|
|
+ })
|
|
|
|
+ }).catch(() => {
|
|
|
|
|
|
- });
|
|
|
|
|
|
+ });
|
|
|
|
|
|
},
|
|
},
|
|
|
|
|
|
- // 打开 新增编辑 部门表单
|
|
|
|
|
|
+ // 打开 新增编辑 网点表单
|
|
openMainForm(type, id) {
|
|
openMainForm(type, id) {
|
|
this.mainFormType = type
|
|
this.mainFormType = type
|
|
this.mainFormVisible = true
|
|
this.mainFormVisible = true
|
|
@@ -240,14 +216,14 @@ export default {
|
|
}
|
|
}
|
|
},
|
|
},
|
|
|
|
|
|
- // 取消 新增编辑 部门表单
|
|
|
|
|
|
+ // 取消 新增编辑 网点表单
|
|
cancelMainForm() {
|
|
cancelMainForm() {
|
|
this.mainFormVisible = false
|
|
this.mainFormVisible = false
|
|
this.$refs.mainForm.resetFields()
|
|
this.$refs.mainForm.resetFields()
|
|
this.mainForm.name = ''
|
|
this.mainForm.name = ''
|
|
},
|
|
},
|
|
|
|
|
|
- // 提交 部门表单
|
|
|
|
|
|
+ // 提交 网点表单
|
|
submitMainForm() {
|
|
submitMainForm() {
|
|
this.$refs.mainForm.validate(valid => {
|
|
this.$refs.mainForm.validate(valid => {
|
|
if (valid) {
|
|
if (valid) {
|