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.
 
 

41 lines
846 B

import { BelongsTo, Column, DataType, ForeignKey, Model, Table } from "sequelize-typescript";
import { User } from "src/users/entities/user.entity";
import { Wallet } from "./wallet.entity";
@Table
export class Payment extends Model<Payment> {
@ForeignKey(() => User)
@Column
userId: number;
@BelongsTo(() => User, { onDelete: "CASCADE" })
user: User;
@ForeignKey(() => Wallet)
@Column
walletId: number;
@BelongsTo(() => Wallet, { onDelete: "CASCADE" })
wallet: Wallet;
@Column({
type: DataType.INTEGER,
allowNull: false,
})
paymentAmount: number;
@Column({
type: DataType.ENUM( "completed", "failed",),
allowNull: false,
defaultValue: "failed",
})
status: string;
@Column({
type: DataType.DATE,
allowNull: false,
defaultValue: DataType.NOW,
})
paymentDate: Date;
}