Add Order Detail

This commit is contained in:
aditya.siregar 2024-08-21 22:27:05 +07:00
parent 90ef6b910b
commit c4e0c6d2c8
4 changed files with 10 additions and 0 deletions

View File

@ -13,6 +13,7 @@ type Order struct {
Total float64 `gorm:"type:numeric;not null;column:total"`
Fee float64 `gorm:"type:numeric;not null;column:fee"`
SiteID *int64 `gorm:"type:numeric;not null;column:site_id"`
Site *Site `gorm:"foreignKey:SiteID;constraint:OnDelete:CASCADE;"`
CreatedAt time.Time `gorm:"autoCreateTime;column:created_at"`
UpdatedAt time.Time `gorm:"autoUpdateTime;column:updated_at"`
CreatedBy int64 `gorm:"type:int;column:created_by"`

View File

@ -233,6 +233,12 @@ func (h *Handler) toOrderDetail(order *entity.Order) *response.OrderDetail {
qrCode = order.RefID
}
var siteName string
if order.Site != nil {
siteName = order.Site.Name
}
orderDetail := &response.OrderDetail{
ID: order.ID,
QRCode: qrCode,
@ -244,6 +250,7 @@ func (h *Handler) toOrderDetail(order *entity.Order) *response.OrderDetail {
Status: order.Status,
PaymentLink: paymentLink,
PaymentToken: paymentToken,
SiteName: siteName,
}
orderDetail.OrderItems = make([]response.OrderDetailItem, len(order.OrderItems))

View File

@ -167,6 +167,7 @@ type PaymentDistribution struct {
type OrderDetail struct {
ID int64 `json:"id"`
QRCode string `json:"qr_code"`
SiteName string `json:"site_name"`
FullName string `json:"full_name"`
Email string `json:"email"`
PhoneNumber string `json:"phone_number"`

View File

@ -52,6 +52,7 @@ func (r *OrderRepository) FindByID(ctx context.Context, id int64) (*entity.Order
Preload("OrderItems", func(db *gorm.DB) *gorm.DB {
return db.Preload("Product")
}).
Preload("Site").
Preload("User").
Preload("Payment").
First(&order, id).Error