72 lines
1.7 KiB
JavaScript
72 lines
1.7 KiB
JavaScript
/**
|
||
* 会员接口模块
|
||
* Requirements: 10.1, 10.2
|
||
*/
|
||
|
||
import { get, post, del } from './request'
|
||
|
||
/**
|
||
* 获取会员信息
|
||
* WHEN a user visits member page, THE XiangYi_MiniApp SHALL display three membership tiers
|
||
* Requirements: 10.1
|
||
*
|
||
* @returns {Promise<Object>} 会员信息
|
||
*/
|
||
export async function getMemberInfo() {
|
||
const response = await get('/member/info')
|
||
return response
|
||
}
|
||
|
||
/**
|
||
* 购买会员
|
||
* WHEN a user selects a membership tier and clicks purchase, THE XiangYi_MiniApp SHALL call endpoint
|
||
* Requirements: 10.2
|
||
*
|
||
* @param {number} memberLevel - 会员等级:1不限时会员(1299) 2诚意会员(1999) 3家庭版(2999)
|
||
* @returns {Promise<Object>} 订单信息和支付参数
|
||
*/
|
||
export async function purchase(memberLevel) {
|
||
const response = await post('/member/purchase', { memberLevel })
|
||
return response
|
||
}
|
||
|
||
/**
|
||
* 绑定家庭成员(家庭版会员功能)
|
||
*
|
||
* @param {number} bindUserId - 要绑定的用户ID
|
||
* @returns {Promise<Object>} 绑定结果
|
||
*/
|
||
export async function bindFamily(bindUserId) {
|
||
const response = await post('/member/bindFamily', { bindUserId })
|
||
return response
|
||
}
|
||
|
||
/**
|
||
* 获取家庭成员列表
|
||
*
|
||
* @returns {Promise<Object>} 家庭成员列表
|
||
*/
|
||
export async function getFamilyMembers() {
|
||
const response = await get('/member/familyMembers')
|
||
return response
|
||
}
|
||
|
||
/**
|
||
* 解绑家庭成员
|
||
*
|
||
* @param {number} bindUserId - 被绑定用户ID
|
||
* @returns {Promise<Object>} 解绑结果
|
||
*/
|
||
export async function unbindFamilyMember(bindUserId) {
|
||
const response = await del(`/member/familyMembers/${bindUserId}`)
|
||
return response
|
||
}
|
||
|
||
export default {
|
||
getMemberInfo,
|
||
purchase,
|
||
bindFamily,
|
||
getFamilyMembers,
|
||
unbindFamilyMember
|
||
}
|