38 lines
832 B
TypeScript
38 lines
832 B
TypeScript
import {
|
||
Entity,
|
||
PrimaryGeneratedColumn,
|
||
Column,
|
||
CreateDateColumn,
|
||
UpdateDateColumn,
|
||
Index,
|
||
} from 'typeorm';
|
||
|
||
@Entity('wx_users')
|
||
export class User {
|
||
@PrimaryGeneratedColumn('uuid')
|
||
id: string;
|
||
|
||
@Index('idx_user_openid', { unique: true })
|
||
@Column({ type: 'varchar', length: 128 })
|
||
openid: string;
|
||
|
||
@Column({ type: 'varchar', length: 255, name: 'session_key', nullable: true })
|
||
sessionKey: string | null;
|
||
|
||
@Column({ type: 'varchar', length: 100, nullable: true })
|
||
nickname: string | null;
|
||
|
||
@Column({ type: 'text', name: 'avatar_url', nullable: true })
|
||
avatarUrl: string | null;
|
||
|
||
/** 积分(默认 10) */
|
||
@Column({ type: 'int', default: 10 })
|
||
points: number;
|
||
|
||
@CreateDateColumn({ name: 'created_at' })
|
||
createdAt: Date;
|
||
|
||
@UpdateDateColumn({ name: 'updated_at' })
|
||
updatedAt: Date;
|
||
}
|