Commit 9c296e92 authored by xd's avatar xd

修改后台管理系统

parent 3732acb8
......@@ -140,6 +140,7 @@ export function getHistoryList(data) {
params
})
}
// 根据关键字查询
export function search(params) {
return request({
url: '/admin/auth/addressbook/clerk/getByUserName',
......@@ -147,4 +148,11 @@ export function getHistoryList(data) {
params
})
}
\ No newline at end of file
// 把店员移到未分组
export function deleteNormalPerson(params) {
return request({
url: '/admin/auth/addressbook/clerk/delete',
method: 'put',
params
})
}
\ No newline at end of file
<template>
<el-dropdown size="small" class="d2-mr">
<span class="btn-text">{{info.name ? `你好 ${info.name}` : '未登录'}}</span>
<!-- <span class="btn-text">{{info.name ? `你好 ${info.name}` : '未登录'}}</span> -->
<el-dropdown-menu slot="dropdown">
<el-dropdown-item @click.native="logOff">
<d2-icon name="power-off" class="d2-mr-5"/>
注销
<el-dropdown-item >
<!-- <d2-icon name="power-off" class="d2-mr-5"/>
注销 -->
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
......
......@@ -20,16 +20,16 @@
<d2-menu-header class="header-menus" flex-box="1" />
<!-- 顶栏右侧 -->
<div class="d2-header-right" flex-box="0">
<!-- <div class="d2-header-right" flex-box="0"> -->
<!-- 如果你只想在开发环境显示这个按钮请添加 v-if="$env === 'development'" -->
<!--<d2-header-search @click="handleSearchClick" />-->
<!--<d2-header-log />-->
<d2-header-fullscreen />
<!-- <d2-header-fullscreen /> -->
<!--<d2-header-theme />-->
<!--<d2-header-size />-->
<!--<d2-header-locales />-->
<!--<d2-header-color />-->
<d2-header-user />
<!-- <d2-header-user /> -->
</div>
</div>
<!-- 下面 主体 -->
......
......@@ -39,7 +39,6 @@
v-model="addForm.oyStallCode"
placeholder="请输入门店Id"
style="width: 50%;"
type='number'
/>
</el-form-item>
<el-form-item label="门店会员id:" prop="oyStallMemberId" v-if="detail == 1">
......@@ -93,7 +92,16 @@ export default {
} else {
callback();
}
}
}
// 限制id
const idNumber = (rule, value, callback) => {
let idReg = /^\+?(0|[1-9][0-9]*)$/
if (!idReg.test(value)) {
callback(new Error("只可以输入正整数"))
} else {
callback();
}
}
return {
treeData: [],
group_name: "",
......@@ -124,10 +132,11 @@ export default {
orgTree: [],
rules: {
label: [
{ required: true, validator: checkLabel, trigger: "blur" },
{ required: true, message: "请输入部门名称", trigger: "blur" },
{ max: 50, message: "长度在50个字符以内", trigger: "blur" }
],
parentId: [{ required: true, message: "请选择上级部门", trigger: "change" }]
parentId: [{ required: true, message: "请选择上级部门", trigger: "change" }],
oyStallCode: [{ validator: idNumber, trigger: "blur" }]
},
deptOption: {
value: 'id',
......
......@@ -96,7 +96,16 @@ export default {
} else {
callback();
}
}
}
// 限制id
const idNumber = (rule, value, callback) => {
let idReg = /^\+?(0|[1-9][0-9]*)$/
if (!idReg.test(value)) {
callback(new Error("只可以输入正整数"))
} else {
callback();
}
}
return {
treeData: [],
group_name: "",
......@@ -126,11 +135,11 @@ export default {
orgTree: [],
rules: {
label: [
{ required: true, validator: checkLabel, trigger: "blur" },
{ max: 50, message: "长度在50个字符以内", trigger: "blur" }
{ required: true, message: "请输入部门名称", trigger: "blur" },
{ max: 50, message: "长度在50个字符以内", trigger: "blur" },
],
parentId: [{ required: true, message: "请选择上级部门", trigger: "change" }]
parentId: [{ required: true, message: "请选择上级部门", trigger: "change" }],
oyStallCode: [{ validator: idNumber, trigger: "blur" }]
},
deptOption: {
value: 'id',
......
......@@ -56,7 +56,7 @@
</div>
<div class="line">
<span class="number">全部({{totalNumber}}</span>
<el-button class="button buttondark" size="small" style="margin-left:20px;" @click="handleMove" :disabled="idList.length>0? false:true">批量移动</el-button>
<el-button class="button buttondark" size="small" style="margin-left:20px;" @click="handleMove" :disabled="idList.length>0 ? false : true">批量移动</el-button>
</div>
<el-table
stripe
......@@ -68,9 +68,11 @@
v-loading="tableLoading"
element-loading-text="正在加载中"
height="calc(100% - 140px)"
:cell-class-name="cellcb"
@selection-change="handleMemberChange"
>
<el-table-column type="selection" width="60"></el-table-column>
<el-table-column type="selection" width="60">
</el-table-column>
<el-table-column prop="userName" label="姓名" align="center"></el-table-column>
<el-table-column prop="userId" label="企业微信ID" align="center"></el-table-column>
<el-table-column prop="oyStallName" label="门店" align="center"></el-table-column>
......@@ -78,15 +80,15 @@
<el-table-column prop="oyStallMemberId" label="门店会员ID" align="center"></el-table-column>
<el-table-column prop="isManager" label="角色" align="center">
<template slot-scope="scope">
<span v-if="scope.row.isSupervisor == false">普通用户</span>
<span v-if="scope.row.isSupervisor == true">主管</span>
<span>{{ scope.row.isSupervisor ? '主管' : '普通用户' }}</span>
</template>
</el-table-column>
<el-table-column prop="mobile" label="手机号" align="center"></el-table-column>
<el-table-column prop="synchronization" label="同步时间" align="center"></el-table-column>
<el-table-column prop="isManager" label="操作" align="center">
<el-table-column prop="isManager" label="操作" align="center" width="200">
<template slot-scope="scope">
<el-button :disabled="scope.row.isSupervisor? true:false" @click="handleSingleMove(scope.row.id)">移动</el-button>
<el-button :disabled="scope.row.isSupervisor ? true:false" @click="handleSingleMove(scope.row.id)">移动</el-button>
<el-button v-if="deleteShow === 'yes' " :disabled="scope.row.isSupervisor ? true:false" @click="handleSingleDelete(scope.row.id)">删除</el-button>
</template>
</el-table-column>
</el-table>
......@@ -145,11 +147,12 @@ import {
storeNameChange,
getGroupById,
changeRole,
search
search,
deleteNormalPerson
} from "@/api/in/mail";
import { log } from 'util';
export default {
data() {
data() {
return {
data1: [],
groupName: '',
......@@ -187,7 +190,8 @@ export default {
nowNode: {},
flag: 0,
orgLoading: false,
tableLoading: false
tableLoading: false,
deleteShow: 'no'
};
},
components: {
......@@ -197,32 +201,37 @@ export default {
EditDialog
},
created() {
this.getOrgTree();
this.getMailList(1,1);
this.getOrgTree()
this.getMailList(1,1)
},
methods: {
getOrgTree() {
this.orgLoading = true
getOrgTree().then(res => {
let data = res.data;
this.allNumber = data.numOfClerks;
this.allNumber = data.numOfClerks
this.wNumber = data.numOfClerksArrangeNot
this.data1 = [data.organizations];
this.data1 = [data.organizations]
this.orgLoading = false
});
})
},
handleTreeClick(data) {
handleTreeClick(data) {
this.deleteShow = 'yes'
this.flag = ''
this.nowNode = data
this.groupName = data.label
this.groupId = data.id
this.getGroupMember(1,1)
this.getGroupMember(1,1)
},
// 表格判断
cellcb(row){
if(row.row.isSupervisor === true &&row.columnIndex === 0){
return "myCell"
}
},
getGroupMember(page,ctPage) {
this.page.currentPage = ctPage
this.type = this.sType = 3
let params = {
pageNum: page,
id: this.groupId
......@@ -266,6 +275,7 @@ export default {
this.handleTypeChange(val,ctPage)
},
getMailList(page,ctPage) {
this.deleteShow = 'no'
this.tableLoading = true
this.groupName = ''
this.formData.keywords = ''
......@@ -283,8 +293,11 @@ export default {
this.tableLoading = false
});
},
handleShopowner() {},
handleShopowner() {
},
getNoGroupMember(page,ctPage) {
this.deleteShow = 'no'
this.groupName = ''
this.formData.keywords = ''
this.page.currentPage = ctPage
......@@ -404,6 +417,24 @@ export default {
this.getOrgTree();
this.getMailList(1,1)
this.$message.success('删除成功')
},
handleSingleDelete(id) {
this.$confirm('删除后该店员将会被移到未分组, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
deleteNormalPerson({id}).then(res => {
if(res.result == 'success') {
this.$message.success("操作成功!")
this.getMailList(1,1)
}else {
this.$message.error("操作失败!")
}
})
}).catch(() => {
this.$message.info("取消删除")
});
}
}
};
......@@ -412,6 +443,9 @@ export default {
.el-tree--highlight-current .el-tree-node.is-current > .el-tree-node__content {
background-color: #d0d0d0 !important;
}
.myCell .el-checkbox__input {
display: none
}
</style>
<style scoped>
.trees >>> .el-tree--highlight-current .el-tree-node.is-current > .el-tree-node__content {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment