task.entity.ts 930 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. import { Column, CreateDateColumn, Entity, Index, PrimaryGeneratedColumn, UpdateDateColumn } from 'typeorm'
  2. export enum TaskStatus {
  3. PENDING = 'pending',
  4. SENDING = 'sending',
  5. PAUSED = 'paused',
  6. COMPLETED = 'completed'
  7. }
  8. @Entity()
  9. export class Task {
  10. @PrimaryGeneratedColumn()
  11. id: number
  12. @Column()
  13. name: string
  14. @Column()
  15. userId: number
  16. @Column({ type: 'text', nullable: false })
  17. message: string
  18. @Column({ default: 0 })
  19. total: number
  20. @Column({ default: 0 })
  21. sent: number
  22. @Column({ default: 0 })
  23. successCount: number
  24. @Column({ default: false })
  25. delFlag: boolean
  26. @Column({
  27. type: 'enum',
  28. enum: TaskStatus,
  29. default: TaskStatus.PENDING
  30. })
  31. status: TaskStatus
  32. @Column({ default: 5 })
  33. sendLimit: number
  34. @Column({ type: 'datetime', precision: 6, default: null })
  35. startedAt: Date
  36. @CreateDateColumn()
  37. createdAt: Date
  38. @UpdateDateColumn()
  39. updatedAt: Date
  40. }