From c7bd1a3fd46b5d5f887ce4f674387294ee1e8ccd Mon Sep 17 00:00:00 2001 From: 马宇豪 <978517621@qq.com> Date: 星期二, 31 十月 2023 17:09:29 +0800 Subject: [PATCH] 添加手机校验 --- src/views/Admin/userManage.vue | 199 ++++++++++++++++++++++++++----------------------- 1 files changed, 105 insertions(+), 94 deletions(-) diff --git a/src/views/Admin/userManage.vue b/src/views/Admin/userManage.vue index 7ca56eb..87f8b2b 100644 --- a/src/views/Admin/userManage.vue +++ b/src/views/Admin/userManage.vue @@ -7,7 +7,7 @@ <a-col :span="20"> <a-row type="flex" justify="end" :gutter="12"> <a-col :span="4"> - <a-cascader :options="areaData" v-model="areaVal" placeholder="行政规划" expandTrigger="hover" changeOnSelect @change="onChange" style="width: 100%"/> + <a-cascader :options="areaData" v-model="areaVal" placeholder="行政规划" expandTrigger="hover" :fieldNames="fieldNames" changeOnSelect @change="onChange" style="width: 100%"/> </a-col> <a-col :span="4"> <a-select v-model="search.searchParams.unittype" placeholder="监管层级" style="width: 100%"> @@ -28,7 +28,7 @@ <a-col :span="4"> <a-input v-model="search.searchParams.realName" placeholder="姓名" style="width: 100%"/> </a-col> - <a-col :span="4"> + <a-col :span="6"> <a-button type="primary" @click="getUserList">查询</a-button> <a-button style="margin-left: 12px" @click="resetSearch">重置</a-button> </a-col> @@ -38,38 +38,49 @@ <div class="table-cont"> <a-table :columns="columns" :data-source="tableData" :pagination="pagination" :rowKey="record=>record.id" bordered> <template #sex="sex"> - {{ sex == 0?'男':'女' }} + {{ sex == 1?'男':'女'}} </template> - <template #level="level"> + <template #unittype="unittype"> <a-tag - :key="level" - :color="level === 1 ? 'pink' : level === 2 ? 'blue' : 'green'" + :color="unittype === 1 ? 'purple' : unittype === 2 ? 'blue' : unittype === 3 ? 'cyan' : 'green'" > - {{ level==1?'省级':level==2?'地(市、州)级':level==3?'区县级':'村(乡、镇)级' }} + {{ unittype==1?'省级':unittype==2?'地(市、州)级':unittype==3?'区县级':unittype==4?'村(乡、镇)级':'管理员' }} </a-tag> </template> - <template #area="area"> - {{findAreaById(areaData,area)}} + <template #area="text,row"> + <span v-if="row.province !== null && row.province !== ''">{{row.province}}</span> + <span v-if="row.city !== null && row.city !== ''">-{{row.city}}</span> + <span v-if="row.area !== null && row.area !== ''">-{{row.area}}</span> + <span v-if="row.town !== null && row.town !== ''">-{{row.town}}</span> </template> <template #role="role"> - {{ role == 1?'领导':'工作人员'}} + {{ role.roleName}} </template> <template #action="action,row"> <a-button type="link" @click="editData('edit',row)">编辑</a-button> - <a-button type="link" class="delBtn">删除</a-button> + <a-button type="link" class="delBtn" @click="delData(row)">删除</a-button> <a-button type="link" @click="editPwd(row)">重置密码</a-button> </template> </a-table> +<!-- <a-pagination--> +<!-- :total="85"--> +<!-- :show-total="total => `Total ${total} items`"--> +<!-- :page-size="20"--> +<!-- :default-current="1"--> +<!-- />--> </div> - <user-mod ref="userMod" @refrech="getUserList"></user-mod> - <pwd-mod ref="pwdMod" @refrech="getUserList"></pwd-mod> + <user-mod ref="userMod" :unitType="unittype" @refresh="getUserList"></user-mod> + <pwd-mod ref="pwdMod" @refresh="getUserList"></pwd-mod> </div> </template> <script> -import {getUser} from '@/api/user' +import {getUser,delUser} from '@/api/user' import userMod from "@/views/Admin/components/userMod" import pwdMod from "@/views/Admin/components/pwdMod"; +import {getDistrictInfo, loginOut} from "@/api/login"; +import {getUserInfo, Session} from "@/util/storage"; +import Cookies from "js-cookie"; export default { name: 'user', components: { @@ -79,13 +90,14 @@ data () { return { areaVal: [], + unittype: null, search:{ pageIndex: 1, pageSize: 10, searchParams:{ realName: '', districtId: null, - unittype: undefined + unittype: null } }, columns:[ @@ -96,8 +108,8 @@ }, { title: '姓名', - dataIndex: 'name', - key: 'name' + dataIndex: 'realName', + key: 'realName' }, { title: '手机号码', @@ -106,8 +118,8 @@ }, { title: '用户名', - dataIndex: 'userName', - key: 'userName' + dataIndex: 'name', + key: 'name' }, { title: '性别', @@ -117,14 +129,14 @@ }, { title: '级别', - dataIndex: 'level', - key: 'level', - scopedSlots: { customRender: 'level' } + dataIndex: 'unittype', + // key: 'unittype', + scopedSlots: { customRender: 'unittype' } }, { title: '行政区划', dataIndex: 'area', - key: 'area', + // key: 'area', scopedSlots: { customRender: 'area' } }, { @@ -136,92 +148,88 @@ { title: '操作', key: 'action', + width: '18%', scopedSlots: { customRender: 'action' }, }, ], - tableData: [ - { - id: 1, - name: 'John Brown', - phone: '15261806177', - userName: 'JBrown', - sex: 0, - level: 1, - area: 111, - role: 1 - }, - { - id: 2, - name: 'Jim Green', - phone: '15261806178', - userName: 'JGreen', - sex: 1, - level: 2, - area: 211, - role: 2 - }, - { - id: 3, - name: 'Joe Black', - phone: '15261806176', - userName: 'JBlack', - sex: 0, - level: 3, - area: 11, - role: 1 - }, - ], + tableData: [], pagination: { current: 1, defaultCurrent: 1, defaultPageSize: 10, - total: 11, - onChange: ( page, pageSize ) => this.onPageChange(page,pageSize) + total: 0, + onChange: ( page, pageSize ) => this.onPageChange(page,pageSize), + showTotal: total => `共 ${total} 条` }, - areaData: [ - { - value: 1, - label: '江苏省', - children: [ - { - value: 11, - label: '苏州市', - children: [ - { - value: 111, - label: '工业园区', - }, - ], - }, - ], - }, - { - value: 2, - label: '新疆维吾尔自治区', - children: [ - { - value: 21, - label: '乌鲁木齐市', - children: [ - { - value: 211, - label: '国泰新华', - }, - ], - }, - ], - }, - ] + areaData: [], + fieldNames:{ + label: 'name', + value: 'id', + children: 'children' + } } }, created() { const t = this + t.unittype = getUserInfo().unittype + console.log(t.unittype,'unit') t.getUserList() + t.getDistrictInfo() }, methods:{ async getUserList(){ const t = this - const res = await getUser(t.search) + if(t.search.searchParams.realName == '' && t.search.searchParams.districtId == null && t.search.searchParams.unittype == null){ + const {searchParams,...data} = t.search + const res = await getUser(data) + if(res.data.code == 100){ + t.tableData = res.data.data + t.pagination.total = res.data.total + }else{ + t.$message.warning(res.data.msg); + } + }else{ + const res = await getUser(t.search) + if(res.data.code == 100){ + t.tableData = res.data.data + t.pagination.total = res.data.total + }else{ + t.$message.warning(res.data.msg); + } + } + }, + + async getDistrictInfo(){ + let res = await getDistrictInfo() + if(res.data.code == 100){ + this.areaData = res.data.data + } else { + this.$message.warning(res.data.msg); + } + }, + + async delData(row){ + const t = this + this.$confirm({ + title: '提示', + content: h => <div>是否删除该条用户信息?</div>, + cancelText: '取消', + okText: '确认', + centered: true, + onOk() { + delUser(row.id).then(res=>{ + if(res.data.code == 100){ + t.$message.success('删除用户信息成功'); + t.getUserList() + }else{ + t.$message.warning(res.data.msg); + } + }) + }, + onCancel() { + console.log('Cancel'); + }, + }); }, resetSearch(){ @@ -233,7 +241,7 @@ searchParams:{ realName: '', districtId: null, - unittype: undefined + unittype: null } } t.getUserList() @@ -247,13 +255,16 @@ editPwd(record){ const t = this - t.$refs.pwdMod.form.id = record.id + t.$refs.pwdMod.form.uid = record.id + t.$refs.pwdMod.updateType = 2 t.$refs.pwdMod.visible = true }, onPageChange(page, pageSize) { const t= this t.pagination.current = page + t.search.pageIndex = page + t.getUserList() }, onChange(value) { const t = this -- Gitblit v1.9.2