修改运营后台用户管理

This commit is contained in:
lcc
2025-09-05 23:32:24 +08:00
parent f12d07568a
commit 070f8d8aa3
4 changed files with 117 additions and 13 deletions
@@ -26,16 +26,47 @@
placeholder="请输入手机号"
/>
</el-form-item>
<el-form-item label="用户角色:" prop="roleIds">
<el-select v-model="form.groupType" clearable>
<el-form-item label="工号:" prop="userCode">
<el-input clearable v-model="form.userCode" placeholder="请输入工号" />
</el-form-item>
<el-form-item label="城市:">
<regions-select
v-model="form.citys"
type="provinceCity"
placeholder="请选择省市"
class="ele-fluid"
/>
</el-form-item>
<el-form-item label="系统机构:" prop="orgId">
<el-select v-model="form.orgId" clearable>
<el-option
v-for="(item, index) in groupList"
:value="index"
v-for="(item, index) in orgList"
:value="item.id"
:key="index"
:label="item"
:label="item.title"
/>
</el-select>
</el-form-item>
<template v-if="form.orgId === 1">
<el-form-item label="用户角色:" prop="roleIds">
<el-select v-model="form.groupType" clearable>
<el-option
v-for="(item, index) in groupList"
:value="index"
:key="index"
:label="item"
/>
</el-select>
</el-form-item>
</template>
<el-form-item label="备注:" prop="remark">
<el-input
type="textarea"
clearable
v-model="form.remark"
placeholder="请输入备注"
/>
</el-form-item>
</el-form>
<template v-slot:footer>
<el-button @click="updateVisible(false)">取消</el-button>
@@ -48,10 +79,12 @@
<script>
import { phoneReg } from 'ele-admin';
import { groupTypeUsers, updateUser } from '@/api/organization/user';
import { addUser, groupTypeUsers, updateUser } from '@/api/organization/user';
import { listOrganizations } from '@/api/organization/manage';
import RegionsSelect from '@/components/RegionsSelect/index.vue';
export default {
components: {},
components: { RegionsSelect },
props: {
// 弹窗是否打开
visible: Boolean,
@@ -63,7 +96,11 @@
id: null,
username: '',
mobile: '',
groupType: ''
userCode: '',
groupType: '',
orgId: '',
citys: [],
remark: ''
};
return {
defaultForm,
@@ -84,13 +121,21 @@
message: '手机号格式不正确',
trigger: 'blur'
}
],
userCode: [
{
required: true,
message: '请输入工号',
trigger: 'blur'
}
]
},
// 提交状态
loading: false,
// 是否是修改
isUpdate: false,
groupList: []
groupList: [],
orgList: []
};
},
computed: {
@@ -100,9 +145,29 @@
}
},
created() {
this.getGroupTypeList();
// this.getGroupTypeList();
},
methods: {
initData() {
this.loadOrg();
this.getGroupTypeList();
},
loadOrg() {
return new Promise((resolve, reject) => {
listOrganizations({ pid: 0 })
.then((data) => {
this.orgList = data;
if (!this.form.orgId) {
this.form.orgId = data[0]?.id || '';
}
resolve();
})
.catch((e) => {
this.$message.error(e.message);
reject(e);
});
});
},
getGroupTypeList() {
groupTypeUsers()
.then((data) => {
@@ -122,7 +187,7 @@
const data = {
...this.form
};
const saveOrUpdate = this.isUpdate ? updateUser : updateUser;
const saveOrUpdate = this.isUpdate ? updateUser : addUser;
saveOrUpdate(data)
.then((msg) => {
this.loading = false;
@@ -144,7 +209,8 @@
watch: {
visible(visible) {
if (visible) {
if (this.data) {
this.initData();
if (this.data && this.data.id) {
this.$util.assignObject(this.form, {
...this.data
});
@@ -41,6 +41,18 @@
/>
</el-form-item>
</el-col>
<el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
<el-form-item label="系统机构">
<el-select value="" v-model="where.orgId" clearable filterable>
<el-option
v-for="(item, index) in orgList"
:value="item.id"
:key="index"
:label="item.title"
/>
</el-select>
</el-form-item>
</el-col>
<el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
<el-form-item label="机构">
<el-select value="" v-model="where.orgName" clearable filterable>
@@ -131,7 +143,8 @@
teamList: [],
groupList: [],
centerList: [],
orgNameList: []
orgNameList: [],
orgList: []
};
},
computed: {
@@ -182,6 +195,7 @@
return new Promise((resolve, reject) => {
listOrganizations({ pid: 0 })
.then((data) => {
this.orgList = data;
this.where.orgId = data[0]?.id || '';
console.log('Set orgId:', this.where.orgId);
resolve();
@@ -13,6 +13,14 @@
>
<!-- 表头工具栏 -->
<template v-slot:toolbar>
<el-button
type="primary"
size="small"
class="ele-btn-icon"
@click="openEdit({})"
>
新增
</el-button>
<el-button
size="small"
type="danger"
@@ -26,6 +26,14 @@
placeholder="请输入手机号"
/>
</el-form-item>
<el-form-item label="工号:" prop="userCode">
<el-input
clearable
:maxlength="11"
v-model="form.userCode"
placeholder="请输入工号"
/>
</el-form-item>
<el-form-item label="用户角色:" prop="roleIds">
<el-select v-model="form.groupType" clearable>
<el-option
@@ -63,6 +71,7 @@
id: null,
username: '',
mobile: '',
userCode: '',
groupType: ''
};
return {
@@ -84,6 +93,13 @@
message: '手机号格式不正确',
trigger: 'blur'
}
],
userCode: [
{
required: true,
message: '请输入工号',
trigger: 'blur'
}
]
},
// 提交状态