package models

import "time"

type PaymentTransaction struct {
	ID               uint       `gorm:"primaryKey;autoIncrement" json:"id"`
	UserID           *uint      `gorm:"column:userId" json:"userId"`
	PaymentMode      *string    `gorm:"column:paymentMode;type:varchar(45)" json:"paymentMode"`
	PaymentReference *string    `gorm:"column:paymentReference;type:varchar(45)" json:"paymentReference"`
	Amount           *float64   `gorm:"column:amount;type:double" json:"amount"`
	PaymentStatus    *string    `gorm:"column:paymentStatus;type:varchar(45)" json:"paymentStatus"`
	Signature        *string    `gorm:"column:signature;type:varchar(200)" json:"signature"`
	OrderID          *string    `gorm:"column:orderId;type:longtext" json:"orderId"`
	CashbackAmount   *float64   `gorm:"column:cashback_amount;type:double" json:"cashback_amount"`
	CreatedAt        *time.Time `gorm:"column:created_at;autoCreateTime" json:"createdAt"`
}

func (PaymentTransaction) TableName() string {
	return "payment"
}
