Spaces:
Sleeping
Sleeping
| import { | |
| Entity, | |
| Column, | |
| PrimaryGeneratedColumn, | |
| CreateDateColumn, | |
| ManyToOne, | |
| JoinColumn, | |
| } from 'typeorm'; | |
| import { Order } from './order.entity'; | |
| export enum PayType { | |
| WECHAT = 'wechat', | |
| ALIPAY = 'alipay', | |
| } | |
| export enum PaymentStatus { | |
| PENDING = 'pending', | |
| SUCCESS = 'success', | |
| FAILED = 'failed', | |
| } | |
| ('payments') | |
| export class Payment { | |
| () | |
| id: number; | |
| ({ name: 'order_id' }) | |
| orderId: number; | |
| ({ type: 'varchar', length: 64, nullable: true, name: 'payment_no' }) | |
| paymentNo: string; | |
| ({ type: 'varchar', name: 'pay_type' }) | |
| payType: PayType; | |
| ({ type: 'decimal', precision: 10, scale: 2 }) | |
| amount: number; | |
| ({ type: 'varchar', default: PaymentStatus.PENDING }) | |
| status: PaymentStatus; | |
| ({ type: 'simple-json', nullable: true, name: 'callback_data' }) | |
| callbackData: any; | |
| ({ name: 'created_at' }) | |
| createdAt: Date; | |
| ({ type: 'datetime', nullable: true, name: 'completed_at' }) | |
| completedAt: Date; | |
| (() => Order, (order) => order.payments) | |
| ({ name: 'order_id' }) | |
| order: Order; | |
| } | |