advertisement.entity.ts 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. import { Entity, PrimaryGeneratedColumn, Column, ManyToOne, JoinColumn, CreateDateColumn, UpdateDateColumn } from 'typeorm';
  2. import { File } from '@d8d/file-module';
  3. import { AdvertisementType } from './advertisement-type.entity';
  4. @Entity('ad')
  5. export class Advertisement {
  6. @PrimaryGeneratedColumn({ unsigned: true })
  7. id!: number;
  8. @Column({
  9. name: 'title',
  10. type: 'varchar',
  11. length: 30,
  12. nullable: true,
  13. comment: '标题'
  14. })
  15. title!: string | null;
  16. @Column({
  17. name: 'type_id',
  18. type: 'int',
  19. nullable: true,
  20. unsigned: true,
  21. comment: '广告类型'
  22. })
  23. typeId!: number | null;
  24. @Column({
  25. name: 'code',
  26. type: 'varchar',
  27. length: 20,
  28. nullable: true,
  29. comment: '调用别名'
  30. })
  31. code!: string | null;
  32. @Column({
  33. name: 'url',
  34. type: 'varchar',
  35. length: 255,
  36. nullable: true,
  37. comment: 'url'
  38. })
  39. url!: string | null;
  40. @Column({
  41. name: 'image_file_id',
  42. type: 'int',
  43. unsigned: true,
  44. nullable: true,
  45. comment: '图片文件ID'
  46. })
  47. imageFileId!: number | null;
  48. @ManyToOne(() => File, { nullable: true })
  49. @JoinColumn({
  50. name: 'image_file_id',
  51. referencedColumnName: 'id'
  52. })
  53. imageFile!: File | null;
  54. @ManyToOne(() => AdvertisementType, { nullable: true })
  55. @JoinColumn({
  56. name: 'type_id',
  57. referencedColumnName: 'id'
  58. })
  59. advertisementType!: AdvertisementType | null;
  60. @Column({
  61. name: 'sort',
  62. type: 'int',
  63. default: 0,
  64. comment: '排序'
  65. })
  66. sort!: number;
  67. @CreateDateColumn({
  68. name: 'created_at',
  69. type: 'timestamp',
  70. comment: '创建时间'
  71. })
  72. createdAt!: Date;
  73. @UpdateDateColumn({
  74. name: 'updated_at',
  75. type: 'timestamp',
  76. comment: '更新时间'
  77. })
  78. updatedAt!: Date;
  79. @Column({
  80. name: 'created_by',
  81. type: 'int',
  82. unsigned: true,
  83. nullable: true,
  84. comment: '创建用户ID'
  85. })
  86. createdBy!: number | null;
  87. @Column({
  88. name: 'updated_by',
  89. type: 'int',
  90. unsigned: true,
  91. nullable: true,
  92. comment: '更新用户ID'
  93. })
  94. updatedBy!: number | null;
  95. @Column({
  96. name: 'status',
  97. type: 'int',
  98. unsigned: true,
  99. default: 0,
  100. comment: '状态'
  101. })
  102. status!: number;
  103. @Column({
  104. name: 'action_type',
  105. type: 'int',
  106. default: 1,
  107. comment: '跳转类型 0 不跳转 1webview 2小程序页面'
  108. })
  109. actionType!: number;
  110. }