2025-08-27 11:24:22 +08:00
|
|
|
import { Entity, PrimaryGeneratedColumn, Column, OneToMany } from 'typeorm';
|
|
|
|
|
import { BaseEntity } from '@wwjCore/base/BaseEntity';
|
2025-08-24 02:31:42 +08:00
|
|
|
import { Member } from './Member';
|
|
|
|
|
|
|
|
|
|
@Entity('member_level')
|
2025-08-27 11:24:22 +08:00
|
|
|
export class MemberLevel extends BaseEntity {
|
2025-08-24 02:31:42 +08:00
|
|
|
@PrimaryGeneratedColumn()
|
|
|
|
|
level_id: number;
|
|
|
|
|
|
|
|
|
|
@Column({ type: 'varchar', length: 50, comment: '等级名称' })
|
|
|
|
|
level_name: string;
|
|
|
|
|
|
|
|
|
|
@Column({ type: 'varchar', length: 255, comment: '等级图标' })
|
|
|
|
|
level_icon: string;
|
|
|
|
|
|
|
|
|
|
@Column({ type: 'int', default: 0, comment: '升级所需积分' })
|
|
|
|
|
upgrade_point: number;
|
|
|
|
|
|
2025-08-27 11:24:22 +08:00
|
|
|
@Column({
|
|
|
|
|
type: 'decimal',
|
|
|
|
|
precision: 5,
|
|
|
|
|
scale: 2,
|
|
|
|
|
default: 1.0,
|
|
|
|
|
comment: '积分倍率',
|
|
|
|
|
})
|
2025-08-24 02:31:42 +08:00
|
|
|
point_rate: number;
|
|
|
|
|
|
2025-08-27 11:24:22 +08:00
|
|
|
@Column({
|
|
|
|
|
type: 'decimal',
|
|
|
|
|
precision: 5,
|
|
|
|
|
scale: 2,
|
|
|
|
|
default: 1.0,
|
|
|
|
|
comment: '折扣率',
|
|
|
|
|
})
|
2025-08-24 02:31:42 +08:00
|
|
|
discount_rate: number;
|
|
|
|
|
|
|
|
|
|
@Column({ type: 'int', default: 0, comment: '排序' })
|
|
|
|
|
sort: number;
|
|
|
|
|
|
|
|
|
|
@Column({ type: 'tinyint', default: 1, comment: '状态 1:启用 0:禁用' })
|
|
|
|
|
status: number;
|
|
|
|
|
|
|
|
|
|
@Column({ type: 'varchar', length: 255, comment: '等级描述' })
|
|
|
|
|
description: string;
|
|
|
|
|
|
|
|
|
|
@Column({ type: 'varchar', length: 255, comment: '等级权益' })
|
|
|
|
|
benefits: string;
|
|
|
|
|
|
|
|
|
|
// 关联关系
|
2025-08-27 11:24:22 +08:00
|
|
|
@OneToMany(() => Member, (member) => member.level)
|
2025-08-24 02:31:42 +08:00
|
|
|
members: Member[];
|
2025-08-27 11:24:22 +08:00
|
|
|
}
|