feat: 完善会员和课程管理模块
This commit is contained in:
parent
103ce228f0
commit
7c1b021178
8 changed files with 580 additions and 6 deletions
57
src/mock/member.js
Normal file
57
src/mock/member.js
Normal file
|
|
@ -0,0 +1,57 @@
|
|||
const list = [
|
||||
{"id":1,"name":"张三","sex":1,"avatar":"","phone":"13800138001","remark":"年卡会员,喜欢瑜伽","expireDate":"2025-12-31"},
|
||||
{"id":2,"name":"李四","sex":2,"avatar":"","phone":"13800138002","remark":"季卡会员,减脂塑形","expireDate":"2025-09-15"},
|
||||
{"id":3,"name":"王五","sex":1,"avatar":"","phone":"13800138003","remark":"月卡会员,增肌训练","expireDate":"2025-08-01"},
|
||||
{"id":4,"name":"赵六","sex":2,"avatar":"","phone":"13800138004","remark":"年卡会员,产后恢复","expireDate":null},
|
||||
{"id":5,"name":"钱七","sex":1,"avatar":"","phone":"13800138005","remark":"次卡会员,游泳爱好者","expireDate":"2025-07-20"},
|
||||
{"id":6,"name":"孙八","sex":2,"avatar":"","phone":"13800138006","remark":"年卡会员,搏击训练","expireDate":null},
|
||||
{"id":7,"name":"周九","sex":1,"avatar":"","phone":"13800138007","remark":"季卡会员,普拉提","expireDate":"2025-10-10"},
|
||||
{"id":8,"name":"吴十","sex":2,"avatar":"","phone":"13800138008","remark":"月卡会员,有氧舞蹈","expireDate":"2025-07-30"},
|
||||
{"id":9,"name":"郑十一","sex":1,"avatar":"","phone":"13800138009","remark":"年卡会员,自由重量","expireDate":"2026-01-15"},
|
||||
{"id":10,"name":"冯十二","sex":2,"avatar":"","phone":"13800138010","remark":"次卡会员,动感单车","expireDate":"2025-08-25"},
|
||||
{"id":11,"name":"陈十三","sex":1,"avatar":"","phone":"13800138011","remark":"年卡会员,拳击训练","expireDate":null},
|
||||
{"id":12,"name":"楚十四","sex":2,"avatar":"","phone":"13800138012","remark":"季卡会员,形体塑造","expireDate":"2025-11-30"},
|
||||
{"id":13,"name":"魏十五","sex":1,"avatar":"","phone":"13800138013","remark":"月卡会员,康复训练","expireDate":"2025-07-25"},
|
||||
{"id":14,"name":"蒋十六","sex":2,"avatar":"","phone":"13800138014","remark":"年卡会员,舞蹈培训","expireDate":"2026-02-28"},
|
||||
{"id":15,"name":"沈十七","sex":1,"avatar":"","phone":"13800138015","remark":"次卡会员,攀岩爱好者","expireDate":"2025-09-05"},
|
||||
{"id":16,"name":"韩十八","sex":2,"avatar":"","phone":"13800138016","remark":"季卡会员,有氧操","expireDate":"2025-12-01"},
|
||||
{"id":17,"name":"杨十九","sex":1,"avatar":"","phone":"13800138017","remark":"年卡会员,力量训练","expireDate":null},
|
||||
{"id":18,"name":"朱二十","sex":2,"avatar":"","phone":"13800138018","remark":"月卡会员,纤体瑜伽","expireDate":"2025-08-10"},
|
||||
{"id":19,"name":"秦廿一","sex":1,"avatar":"","phone":"13800138019","remark":"年卡会员,CrossFit","expireDate":"2026-03-20"},
|
||||
{"id":20,"name":"许廿二","sex":2,"avatar":"","phone":"13800138020","remark":"季卡会员,空中瑜伽","expireDate":"2025-10-25"}
|
||||
]
|
||||
|
||||
export const getByPage = (query) => {
|
||||
const { sex, name, page, limit, status } = query
|
||||
const result = list.filter(item => {
|
||||
if (sex && item.sex !== sex) return false
|
||||
if (name && item.name.indexOf(name) === -1) return false
|
||||
if (status == 2 && item.expireDate !== null) return false
|
||||
if (status == 3 && item.expireDate === null) return false
|
||||
return true
|
||||
})
|
||||
const start = (page - 1) * limit
|
||||
return { total: result.length, data: result.slice(start, start + limit) }
|
||||
}
|
||||
|
||||
// 注销
|
||||
export const cancel = (id) => {
|
||||
const target = list.find(item => item.id === id)
|
||||
target.expireDate = new Date().toLocaleDateString()
|
||||
}
|
||||
|
||||
// 续费
|
||||
export const renew = (id) => {
|
||||
const target = list.find(item => item.id === id)
|
||||
target.expireDate = null
|
||||
}
|
||||
|
||||
// 新增会员
|
||||
export const add = (member) => {
|
||||
const newMember = {
|
||||
id: list.length === 0 ? 1 : list[list.length - 1].id + 1,
|
||||
...member,
|
||||
expireDate: null
|
||||
}
|
||||
list.push(newMember)
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue