You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

59 lines
1.1 KiB

import {
Table,
Column,
Model,
DataType,
ForeignKey,
BelongsTo,
} from 'sequelize-typescript';
import { User } from 'src/modules/users/entities/user.entity';
import { OrderStatuses } from 'src/modules/orders/entities/order-status.entity';
import { Product } from 'src/modules/products/entities/product.entity';
@Table({ tableName: 'orders' })
export class Order extends Model<Order> {
@Column({
type: DataType.DATE,
allowNull: true,
defaultValue: new Date(),
})
orderDate: Date;
@Column({
type: DataType.ARRAY(DataType.INTEGER),
allowNull: false,
})
products: number[];
@ForeignKey(() => OrderStatuses)
@Column
status: number;
@Column({
type: DataType.STRING,
allowNull: true,
})
comments: string;
@Column({
type: DataType.DATE,
allowNull: true,
})
shippedDate: Date;
@Column({
type: DataType.STRING,
allowNull: true,
})
shipperName: string;
@ForeignKey(() => User)
@Column
userId: number;
@BelongsTo(() => User)
user: User;
@BelongsTo(() => OrderStatuses)
orderStatuses: OrderStatuses;
}