allow finalizing orders

This commit is contained in:
2025-03-25 20:36:28 +01:00
parent 30b32a571c
commit 854573eb3a
6 changed files with 360 additions and 88 deletions

View File

@@ -12,6 +12,7 @@ type OrderRepository interface {
GetAll() ([]models.Order, error)
GetById(string) (models.Order, error)
GetBySession(string) (models.Order, error)
GetByToken(string) (models.Order, error)
Update(models.Order) (models.Order, error)
DeleteById(string) error
}
@@ -62,12 +63,19 @@ func (t *GORMOrderRepository) GetById(id string) (models.Order, error) {
func (r *GORMOrderRepository) GetBySession(sessionId string) (models.Order, error) {
var orders models.Order
result := r.DB.Preload("CartItems").Where("session_id = ?", sessionId).First(&orders)
result := r.DB.Preload("CartItems").Preload("CartItems.ShopItem").Preload("CartItems.ItemVariant").Where("session_id = ?", sessionId).First(&orders)
return orders, result.Error
}
func (r *GORMOrderRepository) GetByToken(token string) (models.Order, error) {
var orders models.Order
result := r.DB.Preload("CartItems").Preload("CartItems.ShopItem").Preload("CartItems.ItemVariant").Where("token = ?", token).First(&orders)
return orders, result.Error
}
func (r *GORMOrderRepository) Update(order models.Order) (models.Order, error) {
result := r.DB.Save(&order)
if result.Error != nil {