streamline error handling

This commit is contained in:
kiwiidb
2023-02-17 15:28:28 +01:00
parent 7b29815ef8
commit 1e95f2677d
2 changed files with 7 additions and 13 deletions

View File

@@ -81,20 +81,18 @@ func (controller *PayInvoiceController) PayInvoice(c echo.Context) error {
}
lnPayReq.PayReq.NumSatoshis = amt
}
invoice, err := controller.svc.AddOutgoingInvoice(c.Request().Context(), userID, paymentRequest, lnPayReq)
if err != nil {
return err
}
ok, err := controller.svc.BalanceCheck(c.Request().Context(), lnPayReq, userID)
if err != nil {
sentry.CaptureException(err)
return c.JSON(http.StatusInternalServerError, err)
return err
}
if !ok {
c.Logger().Errorf("User does not have enough balance user_id:%v amount:%v", userID, lnPayReq.PayReq.NumSatoshis)
return c.JSON(http.StatusInternalServerError, responses.NotEnoughBalanceError)
}
invoice, err := controller.svc.AddOutgoingInvoice(c.Request().Context(), userID, paymentRequest, lnPayReq)
if err != nil {
return err
}
sendPaymentResponse, err := controller.svc.PayInvoice(c.Request().Context(), invoice)
if err != nil {
c.Logger().Errorf("Payment failed invoice_id:%v user_id:%v error: %v", invoice.ID, userID, err)