✨ 小程序用户支持重置密码,列表隐藏 openid
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -56,7 +56,7 @@ export default {
|
||||
addBtn: false,
|
||||
selection: true,
|
||||
dialogClickModal: false,
|
||||
menuWidth: 280,
|
||||
menuWidth: 320,
|
||||
column: [
|
||||
{
|
||||
label: '手机号',
|
||||
@@ -140,8 +140,10 @@ export default {
|
||||
prop: 'openid',
|
||||
minWidth: 180,
|
||||
overHidden: true,
|
||||
hide: true,
|
||||
addDisplay: false,
|
||||
editDisplay: true,
|
||||
viewDisplay: true,
|
||||
order: 40,
|
||||
placeholder: '可清空以解绑微信',
|
||||
},
|
||||
|
||||
@@ -97,7 +97,7 @@ export const userOption = safe => {
|
||||
{
|
||||
label: '账号名',
|
||||
prop: 'account',
|
||||
span: 12,
|
||||
span: 6,
|
||||
rules: [
|
||||
{
|
||||
required: true,
|
||||
|
||||
@@ -77,6 +77,13 @@
|
||||
>
|
||||
{{ row.status === 1 ? '停用' : '启用' }}
|
||||
</el-link>
|
||||
<el-link
|
||||
type="primary"
|
||||
v-if="permission.mp_user_reset"
|
||||
@click="handleResetForRow(row)"
|
||||
>
|
||||
重置密码
|
||||
</el-link>
|
||||
<el-link
|
||||
type="danger"
|
||||
v-if="permission.mp_user_delete"
|
||||
@@ -85,6 +92,15 @@
|
||||
删除
|
||||
</el-link>
|
||||
</template>
|
||||
<template #menu-form="{ size }">
|
||||
<el-button
|
||||
v-if="permission.mp_user_reset && form.id && dialogType === 'edit'"
|
||||
:size="size"
|
||||
@click="handleResetForRow(form)"
|
||||
>
|
||||
重置密码
|
||||
</el-button>
|
||||
</template>
|
||||
</avue-crud>
|
||||
</basic-container>
|
||||
</template>
|
||||
@@ -105,6 +121,7 @@ export default {
|
||||
data() {
|
||||
return {
|
||||
form: {},
|
||||
dialogType: '',
|
||||
query: {},
|
||||
loading: true,
|
||||
page: {
|
||||
@@ -160,6 +177,7 @@ export default {
|
||||
return payload;
|
||||
},
|
||||
beforeOpen(done, type) {
|
||||
this.dialogType = type;
|
||||
if (['edit', 'view'].includes(type) && this.form.id) {
|
||||
getDetail(this.form.id).then(res => {
|
||||
const detail = res.data.data || {};
|
||||
@@ -258,6 +276,22 @@ export default {
|
||||
this.$refs.crud.toggleSelection();
|
||||
});
|
||||
},
|
||||
handleResetForRow(row) {
|
||||
if (!row || !row.id) {
|
||||
this.$message.warning('请先保存用户后再重置密码');
|
||||
return;
|
||||
}
|
||||
const account = row.account || row.phone || row.id;
|
||||
this.$confirm(`确定将账号【${account}】的密码重置为随机密码?`, '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning',
|
||||
})
|
||||
.then(() => resetPassword(row.id))
|
||||
.then(res => {
|
||||
this.showResetPassword(res.data.data);
|
||||
});
|
||||
},
|
||||
showResetPassword(passwordMap) {
|
||||
const passwordList = Object.keys(passwordMap || {}).map(account =>
|
||||
h('div', null, `${account}:${passwordMap[account]}`)
|
||||
|
||||
@@ -139,7 +139,7 @@
|
||||
<section-card title="用户信息">
|
||||
<el-form ref="userFormRef" :model="form" :rules="isUserViewMode ? {} : userRules" label-position="right" label-width="calc(6em + 24px)">
|
||||
<el-row :gutter="18">
|
||||
<el-col :span="12"><el-form-item label="账号名" prop="account"><el-input v-model="form.account" :disabled="isUserViewMode" /></el-form-item></el-col>
|
||||
<el-col :span="6"><el-form-item label="账号名" prop="account"><el-input v-model="form.account" :disabled="isUserViewMode" /></el-form-item></el-col>
|
||||
<el-col v-if="userDialogMode === 'add'" :span="6">
|
||||
<el-form-item label="登录密码" prop="password">
|
||||
<el-input
|
||||
|
||||
Reference in New Issue
Block a user