37 lines
2.0 KiB
Go
37 lines
2.0 KiB
Go
package model
|
|
|
|
import (
|
|
"time"
|
|
|
|
"gorm.io/datatypes"
|
|
)
|
|
|
|
type OrderCheckout struct {
|
|
ID uint64 `gorm:"primaryKey" json:"id"`
|
|
OrderID uint64 `gorm:"not null;index" json:"order_id"`
|
|
InitiatedBy uint64 `gorm:"not null" json:"initiated_by"`
|
|
Status string `gorm:"size:32;not null;default:'submitted'" json:"status"`
|
|
RentAmount float64 `gorm:"type:decimal(12,2);not null;default:0" json:"rent_amount"`
|
|
OwnerRentAmount float64 `gorm:"type:decimal(12,2);not null;default:0" json:"owner_rent_amount"`
|
|
PlatformFee float64 `gorm:"type:decimal(12,2);not null;default:0" json:"platform_fee"`
|
|
DepositAmount float64 `gorm:"type:decimal(12,2);not null;default:0" json:"deposit_amount"`
|
|
ConsumableAmount float64 `gorm:"type:decimal(12,2);not null;default:0" json:"consumable_amount"`
|
|
CoinConsumedM float64 `gorm:"type:decimal(12,2);not null;default:0" json:"coin_consumed_m"`
|
|
OtherAmount float64 `gorm:"type:decimal(12,2);not null;default:0" json:"other_amount"`
|
|
DepositDeductAmount float64 `gorm:"type:decimal(12,2);not null;default:0" json:"deposit_deduct_amount"`
|
|
RenterRefundAmount float64 `gorm:"type:decimal(12,2);not null;default:0" json:"renter_refund_amount"`
|
|
OwnerIncomeAmount float64 `gorm:"type:decimal(12,2);not null;default:0" json:"owner_income_amount"`
|
|
Content string `json:"content"`
|
|
EvidenceURLS datatypes.JSON `gorm:"column:evidence_urls" json:"evidence_urls"`
|
|
OwnerAdjustmentReason string `json:"owner_adjustment_reason"`
|
|
OwnerAdjustedAt *time.Time `json:"owner_adjusted_at"`
|
|
RenterConfirmedAt *time.Time `json:"renter_confirmed_at"`
|
|
RenterRejectedAt *time.Time `json:"renter_rejected_at"`
|
|
CreatedAt time.Time `json:"created_at"`
|
|
UpdatedAt time.Time `json:"updated_at"`
|
|
}
|
|
|
|
func (OrderCheckout) TableName() string {
|
|
return "order_checkouts"
|
|
}
|