Răsfoiți Sursa

新增多个实体类,包括财务、收入记录、推广链接和团队,定义了相关字段和枚举类型。

wuyi 4 luni în urmă
părinte
comite
3635b455c6

+ 81 - 0
src/entities/finance.entity.ts

@@ -0,0 +1,81 @@
+import { Column, CreateDateColumn, Entity, PrimaryGeneratedColumn, UpdateDateColumn } from 'typeorm'
+
+export enum FinanceStatus {
+  WITHDRAWN = 'withdrawn',
+  REJECTED = 'rejected',
+  PROCESSING = 'processing'
+}
+
+@Entity()
+export class Finance {
+  @PrimaryGeneratedColumn()
+  id: number
+
+  @Column({
+    type: 'decimal',
+    precision: 10,
+    scale: 5
+  })
+  reminderAmount: number
+
+  @Column({
+    type: 'varchar',
+    length: 500,
+    nullable: true
+  })
+  paymentQrCode: string
+
+  @Column({
+    type: 'varchar',
+    length: 100,
+    nullable: true
+  })
+  paymentName: string
+
+  @Column({
+    type: 'varchar',
+    length: 100,
+    nullable: true
+  })
+  paymentAccount: string
+
+  @Column({
+    type: 'varchar',
+    length: 200,
+    nullable: true
+  })
+  bankName: string
+
+  @Column({
+    type: 'enum',
+    enum: FinanceStatus,
+    default: FinanceStatus.PROCESSING
+  })
+  status: FinanceStatus
+
+  @Column({
+    type: 'varchar',
+    length: 500,
+    nullable: true
+  })
+  rejectReason: string
+
+  @Column({
+    type: 'varchar',
+    length: 500,
+    nullable: true
+  })
+  remark: string
+
+  @Column({
+    type: 'datetime',
+    nullable: true
+  })
+  processedAt: Date
+
+  @CreateDateColumn()
+  createdAt: Date
+
+  @UpdateDateColumn()
+  updatedAt: Date
+}

+ 73 - 0
src/entities/income-records.entity.ts

@@ -0,0 +1,73 @@
+import { Column, CreateDateColumn, Entity, PrimaryGeneratedColumn, UpdateDateColumn } from 'typeorm'
+
+export enum IncomeType {
+  TIP = 'tip',
+  COMMISSION = 'commission'
+}
+
+export enum OrderType {
+  SINGLE_TIP = 'single_tip',
+  HOURLY_MEMBER = 'hourly_member',
+  WEEKLY_MEMBER = 'weekly_member',
+  MONTHLY_MEMBER = 'monthly_member',
+  YEARLY_MEMBER = 'yearly_member',
+  LIFETIME_MEMBER = 'lifetime_member'
+}
+
+@Entity()
+export class IncomeRecords {
+  @PrimaryGeneratedColumn()
+  id: number
+
+  @Column({
+    type: 'decimal',
+    precision: 10,
+    scale: 5
+  })
+  incomeAmount: number
+
+  @Column()
+  agentName: string
+
+  @Column({
+    type: 'enum',
+    enum: IncomeType,
+    default: IncomeType.TIP
+  })
+  incomeType: IncomeType
+
+  @Column({
+    type: 'enum',
+    enum: OrderType,
+    default: OrderType.SINGLE_TIP
+  })
+  orderType: OrderType
+
+  @Column()
+  video: string
+
+  @Column({
+    type: 'decimal',
+    precision: 10,
+    scale: 5
+  })
+  price: number
+
+  @Column()
+  tipOrderId: string
+
+  @Column()
+  payChannel: string
+
+  @Column()
+  payNo: string
+
+  @Column({ nullable: true })
+  source: string
+
+  @CreateDateColumn()
+  createdAt: Date
+
+  @UpdateDateColumn()
+  updatedAt: Date
+}

+ 35 - 0
src/entities/promotion-link.entity.ts

@@ -0,0 +1,35 @@
+import { Column, CreateDateColumn, Entity, PrimaryGeneratedColumn, UpdateDateColumn } from 'typeorm'
+
+export enum LinkType {
+  GENERAL = 'general',
+  SUPER = 'super',
+  BROWSER = 'browser'
+}
+
+@Entity()
+export class PromotionLink {
+  @PrimaryGeneratedColumn()
+  id: number
+
+  @Column()
+  name: string
+
+  @Column()
+  image: string
+
+  @Column()
+  link: string
+
+  @Column({
+    type: 'enum',
+    enum: LinkType,
+    default: LinkType.GENERAL
+  })
+  type: LinkType
+
+  @CreateDateColumn()
+  createdAt: Date
+
+  @UpdateDateColumn()
+  updatedAt: Date
+}

+ 25 - 0
src/entities/team.entity.ts

@@ -0,0 +1,25 @@
+import { Column, CreateDateColumn, Entity, PrimaryGeneratedColumn, UpdateDateColumn } from 'typeorm'
+
+@Entity()
+export class Team {
+  @PrimaryGeneratedColumn()
+  id: number
+
+  @Column()
+  name: string
+
+  @Column({ type: 'decimal', precision: 10, scale: 5, default: 0 })
+  totalRevenue: number
+
+  @Column({ type: 'decimal', precision: 10, scale: 5, default: 0 })
+  todayRevenue: number
+
+  @Column({ type: 'decimal', precision: 5, scale: 2, default: 0 })
+  commissionRate: number
+
+  @CreateDateColumn()
+  createdAt: Date
+
+  @UpdateDateColumn()
+  updatedAt: Date
+}