This commit is contained in:
扶桑花间 2025-09-11 21:49:58 +08:00
parent db74209ab5
commit 2eafae8fbe
4 changed files with 21 additions and 36 deletions

View File

@ -16,8 +16,6 @@ export async function pageMembers(params: MemberParam) {
return Promise.reject(new Error(res.data.message)); return Promise.reject(new Error(res.data.message));
} }
/** /**
* *
*/ */

View File

@ -7,4 +7,6 @@ export interface Member {}
/** /**
* *
*/ */
export interface MemberParam extends PageParam {} export interface MemberParam extends PageParam {
account?: string;
}

View File

@ -8,19 +8,10 @@
> >
<el-row :gutter="8"> <el-row :gutter="8">
<el-col :lg="6" :md="8" :sm="12" :xs="24"> <el-col :lg="6" :md="8" :sm="12" :xs="24">
<el-form-item label="角色名称"> <el-form-item label="会员ID/会员手机号">
<el-input <el-input
clearable clearable
v-model.trim="form.roleName" v-model.trim="form.account"
placeholder="请输入"
/>
</el-form-item>
</el-col>
<el-col :lg="6" :md="8" :sm="12" :xs="24">
<el-form-item label="角色标识">
<el-input
clearable
v-model.trim="form.roleCode"
placeholder="请输入" placeholder="请输入"
/> />
</el-form-item> </el-form-item>
@ -38,17 +29,15 @@
<script lang="ts" setup> <script lang="ts" setup>
import { useFormData } from '@/utils/use-form-data'; import { useFormData } from '@/utils/use-form-data';
import type { RoleParam } from '@/api/system/role/model'; import type { MemberParam } from '@/api/xm/member/model';
const emit = defineEmits<{ const emit = defineEmits<{
(e: 'search', where?: RoleParam): void; (e: 'search', where?: MemberParam): void;
}>(); }>();
/** 表单数据 */ /** 表单数据 */
const [form, resetFields] = useFormData<RoleParam>({ const [form, resetFields] = useFormData<MemberParam>({
roleName: '', account: ''
roleCode: '',
comments: ''
}); });
/** 搜索 */ /** 搜索 */

View File

@ -43,8 +43,8 @@
import MemberSearch from './components/member-search.vue'; import MemberSearch from './components/member-search.vue';
import MemberEdit from './components/member-edit.vue'; import MemberEdit from './components/member-edit.vue';
import { removeRoles } from '@/api/system/role'; import { removeRoles } from '@/api/system/role';
import type { Role, RoleParam } from '@/api/system/role/model'; import type { Member, MemberParam } from '@/api/xm/member/model';
import { pageMembers } from '@/api/member/member'; import { pageMembers } from '@/api/xm/member';
defineOptions({ name: 'SystemRole' }); defineOptions({ name: 'SystemRole' });
@ -72,12 +72,12 @@
width: 80 width: 80
}, },
{ {
prop: 'realname', prop: 'channel.name',
label: '姓名', label: '注册渠道',
width: 80 minWidth: 120
}, },
{ {
prop: 'channel.name', prop: 'realname',
label: '姓名', label: '姓名',
width: 80 width: 80
}, },
@ -117,10 +117,10 @@
]); ]);
/** 表格选中数据 */ /** 表格选中数据 */
const selections = ref<Role[]>([]); const selections = ref<Member[]>([]);
/** 当前编辑数据 */ /** 当前编辑数据 */
const current = ref<Role | null>(null); const current = ref<Member | null>(null);
/** 是否显示编辑弹窗 */ /** 是否显示编辑弹窗 */
const showEdit = ref(false); const showEdit = ref(false);
@ -134,25 +134,21 @@
}; };
/** 搜索 */ /** 搜索 */
const reload = (where?: RoleParam) => { const reload = (where?: MemberParam) => {
selections.value = []; selections.value = [];
tableRef.value?.reload?.({ page: 1, where }); tableRef.value?.reload?.({ page: 1, where });
}; };
/** 打开编辑弹窗 */ /** 打开编辑弹窗 */
const openEdit = (row?: Role) => { const openEdit = (row?: Member) => {
current.value = row ?? null; current.value = row ?? null;
showEdit.value = true; showEdit.value = true;
}; };
/** 打开权限分配弹窗 */
const openAuth = (row?: Role) => {
current.value = row ?? null;
showAuth.value = true;
};
/** 删除单个 */ /** 删除单个 */
const remove = (row?: Role) => { const remove = (row?: Member) => {
const rows = row == null ? selections.value : [row]; const rows = row == null ? selections.value : [row];
if (!rows.length) { if (!rows.length) {
EleMessage.error({ message: '请至少选择一条数据', plain: true }); EleMessage.error({ message: '请至少选择一条数据', plain: true });