feat(会员管理): 添加第三方账户绑定和会员等级功能

- 在登录API中新增获取第三方账户绑定列表、绑定和解绑功能
- 在会员API中新增获取当前会员等级、等级规则和等级列表的接口
- 在会员中心页面中添加第三方账户绑定的UI和逻辑
- 新增会员等级页面,展示当前等级、经验值和经验值记录
This commit is contained in:
pikachu1995@126.com
2026-05-13 18:53:33 +08:00
parent fe4e0ce75c
commit aa4bc81da4
22 changed files with 3262 additions and 386 deletions

View File

@@ -23,6 +23,11 @@
<Option v-for="item in memberGroupList" :value="item.id" :key="item.id">{{ item.groupName }}</Option>
</Select>
</Form-item>
<Form-item label="会员等级" prop="gradeId">
<Select v-model="searchForm.gradeId" clearable filterable style="width: 240px">
<Option v-for="item in memberGradeList" :value="item.id" :key="item.id">{{ item.gradeName }}</Option>
</Select>
</Form-item>
<Button @click="handleSearch" class="search-btn" type="primary" icon="ios-search">搜索</Button>
</Form>
</Row>
@@ -255,6 +260,7 @@ export default {
groupId: [{ required: true, message: "请选择会员分组", trigger: "change" }],
},
memberGroupList: [],
memberGradeList: [],
memberPointRule: {
type: [{ required: true, message: "请选择类型", trigger: "change" }],
point: [
@@ -358,6 +364,23 @@ export default {
);
},
},
{
title: "经验值",
key: "experience",
minWidth: 100,
render: (h, params) => {
return h("div", {}, params.row.experience == null ? "0" : params.row.experience);
},
},
{
title: "会员等级",
key: "gradeName",
minWidth: 120,
tooltip: true,
render: (h, params) => {
return h("div", {}, params.row.gradeName || "-");
},
},
{
title: "余额",
key: "memberWallet",
@@ -589,6 +612,13 @@ export default {
}
});
},
loadMemberGradeList() {
API_Member.getMemberGradeByPage({ pageNumber: 1, pageSize: 1000 }).then((res) => {
if (res && res.success && res.result) {
this.memberGradeList = res.result || [];
}
});
},
clearSelection() {
if (this.$refs.table && this.$refs.table.clearSelection) {
this.$refs.table.clearSelection();
@@ -867,6 +897,7 @@ export default {
this.getData();
if (!this.selectedMember) {
this.loadMemberGroupList();
this.loadMemberGradeList();
}
},
};