delete invoices when balance check fails

This commit is contained in:
kiwiidb
2022-10-06 13:03:07 +02:00
parent de592ffccc
commit b00a69d9ef

View File

@@ -89,6 +89,7 @@ func (controller *PayInvoiceController) PayInvoice(c echo.Context) error {
currentBalance, err := controller.svc.CurrentUserBalance(c.Request().Context(), userID)
if err != nil {
controller.svc.DB.NewDelete().Model(&invoice).Where("id = ?", invoice.ID).Exec(c.Request().Context())
return err
}
@@ -98,6 +99,7 @@ func (controller *PayInvoiceController) PayInvoice(c echo.Context) error {
}
if currentBalance < minimumBalance {
c.Logger().Errorf("User does not have enough balance invoice_id:%v user_id:%v balance:%v amount:%v", invoice.ID, userID, currentBalance, invoice.Amount)
controller.svc.DB.NewDelete().Model(&invoice).Where("id = ?", invoice.ID).Exec(c.Request().Context())
return c.JSON(http.StatusBadRequest, responses.NotEnoughBalanceError)
}