diff --git a/api/db/order.go b/api/db/order.go index 4f37ef982a713995d82bf4521bf1aa5863de52b1..c6bbff30f38bcbd293e92731d7c25ef63889cf93 100644 --- a/api/db/order.go +++ b/api/db/order.go @@ -114,11 +114,14 @@ func (d *DB) UpdateOrder(memberNum int, id int, order *Order) error { totalSum := 0 for i, t := range dbOrder.Transactions { var transaction Transaction - err = tx.Preload("OrderPurchase.OrderProduct").First(&transaction, id).Error + err = tx.Preload("OrderPurchase.OrderProduct").First(&transaction, t.ID).Error + if err != nil { + return err + } + total, err := calculateOrderPurchaseTotal(transaction.OrderPurchase, order.Products) if err != nil { return err } - total, _ := calculateOrderPurchaseTotal(transaction.OrderPurchase, order.Products) err = updateOrderPurchase(tx, t.MemberNum, &dbOrder.Transactions[i], total, t.OrderPurchase) if err != nil { return err @@ -309,7 +312,7 @@ func calculateOrderPurchaseTotal(purchase []OrderPurchase, products []OrderProdu } if !found { - log.Printf("Order purchase product %d not in order: %v", p.OrderProductID, purchase) + log.Printf("Order purchase product %d not in order: %v", p.OrderProductID, products) err = ErrorInvalidRequest } }