add notes

This commit is contained in:
aditya.siregar
2025-05-16 13:18:11 +07:00
parent dea7d4c2b3
commit 2b1c49ad63
7 changed files with 18 additions and 2 deletions
+2
View File
@@ -92,6 +92,7 @@ type OrderItem struct {
Product *Product `gorm:"foreignKey:ItemID;references:ID"`
ItemName string `gorm:"type:varchar;column:item_name"`
Description string `gorm:"type:varchar;column:description"`
Notes string `gorm:"type:varchar;column:notes"`
}
func (OrderItem) TableName() string {
@@ -118,6 +119,7 @@ type OrderItemRequest struct {
ProductID int64 `json:"product_id" validate:"required"`
Quantity int `json:"quantity" validate:"required"`
Description string `json:"description"`
Notes string `json:"notes"`
}
type OrderExecuteRequest struct {
+2
View File
@@ -87,6 +87,7 @@ func (oi *OrderInquiry) AddOrderItem(item OrderItemRequest, product *Product) {
Quantity: item.Quantity,
CreatedBy: oi.CreatedBy,
Product: product,
Notes: item.Notes,
})
}
@@ -122,6 +123,7 @@ func (i *OrderInquiry) ToOrder(paymentMethod, paymentProvider string) *Order {
CreatedBy: i.CreatedBy,
CreatedAt: now,
Product: item.Product,
Notes: item.Notes,
}
}
+2
View File
@@ -60,6 +60,7 @@ func (o *InquiryRequest) GetPaymentProvider() string {
type OrderItemRequest struct {
ProductID int64 `json:"product_id" validate:"required"`
Quantity int `json:"quantity" validate:"required,min=1"`
Notes string `json:"notes"`
}
type ExecuteRequest struct {
@@ -91,6 +92,7 @@ func (h *Handler) Inquiry(c *gin.Context) {
orderItems[i] = entity.OrderItemRequest{
ProductID: item.ProductID,
Quantity: item.Quantity,
Notes: item.Notes,
}
}
+2
View File
@@ -95,6 +95,7 @@ type OrderItem struct {
ProductID int64 `json:"product_id" validate:"required"`
Quantity int `json:"quantity" validate:"required"`
Description string `json:"description"`
Notes string `json:"notes"`
}
func (o *Order) ToEntity(partnerID, createdBy int64) *entity.OrderRequest {
@@ -162,6 +163,7 @@ func (o *OrderCustomer) ToEntity(partnerID, createdBy int64) *entity.OrderReques
ProductID: item.ProductID,
Quantity: item.Quantity,
Description: item.Description,
Notes: item.Notes,
}
}
@@ -28,6 +28,7 @@ type OrderItemResponse struct {
Price float64 `json:"price"`
Quantity int `json:"quantity"`
Subtotal float64 `json:"subtotal"`
Notes string `json:"notes"`
}
func mapToOrderItemResponses(items []entity.OrderItem) []OrderItemResponse {
@@ -113,6 +114,7 @@ func MapToOrderItemResponses(items []entity.OrderItem) []OrderItemResponse {
Price: item.Price,
Quantity: item.Quantity,
Subtotal: item.Price * float64(item.Quantity),
Notes: item.Notes,
})
}
return result
+2
View File
@@ -40,6 +40,7 @@ type OrderItemDB struct {
CreatedBy int64 `gorm:"column:created_by"`
CreatedAt time.Time `gorm:"column:created_at"`
Product ProductDB `gorm:"foreignKey:ItemID;references:ID"`
Notes string `gorm:"column:notes"`
}
func (OrderItemDB) TableName() string {
@@ -83,6 +84,7 @@ type InquiryItemDB struct {
Quantity int `gorm:"column:quantity"`
CreatedBy int64 `gorm:"column:created_by"`
CreatedAt time.Time `gorm:"column:created_at"`
Notes string `gorm:"column:notes"`
}
func (InquiryItemDB) TableName() string {
+4
View File
@@ -148,6 +148,7 @@ func (r *orderRepository) CreateInquiry(ctx mycontext.Context, inquiry *entity.O
Quantity: item.Quantity,
CreatedBy: item.CreatedBy,
CreatedAt: time.Now(),
Notes: item.Notes,
})
}
@@ -202,6 +203,7 @@ func (r *orderRepository) FindInquiryByID(ctx mycontext.Context, id string) (*en
Quantity: itemDB.Quantity,
CreatedBy: itemDB.CreatedBy,
CreatedAt: itemDB.CreatedAt,
Notes: itemDB.Notes,
})
}
inquiry.OrderItems = orderItems
@@ -264,6 +266,7 @@ func (r *orderRepository) toDomainOrderModel(dbModel *models.OrderDB) *entity.Or
Quantity: itemDB.Quantity,
CreatedBy: itemDB.CreatedBy,
CreatedAt: itemDB.CreatedAt,
Notes: itemDB.Notes,
})
}
@@ -300,6 +303,7 @@ func (r *orderRepository) toOrderItemDBModel(item *entity.OrderItem) models.Orde
Quantity: item.Quantity,
CreatedBy: item.CreatedBy,
CreatedAt: item.CreatedAt,
Notes: item.Notes,
}
}