fix: edit existing payment account in binding form

This commit is contained in:
richjohnrambo
2026-10-16 14:58:45 +08:00
parent 70cd0e592a
commit a86db10342
8 changed files with 200 additions and 83 deletions
+9 -3
View File
@@ -12,8 +12,8 @@ import (
)
func (a *API) paymentAccounts(w http.ResponseWriter, r *http.Request) {
if r.Method != http.MethodGet && r.Method != http.MethodPost {
methodNotAllowed(w, r, http.MethodGet, http.MethodPost)
if r.Method != http.MethodGet && r.Method != http.MethodPost && r.Method != http.MethodPut {
methodNotAllowed(w, r, http.MethodGet, http.MethodPost, http.MethodPut)
return
}
principal, ok := a.authenticateFinanceMember(w, r)
@@ -33,7 +33,13 @@ func (a *API) paymentAccounts(w http.ResponseWriter, r *http.Request) {
if !decodeBody(w, r, &body) {
return
}
result, err := a.finance.CreatePaymentAccount(r.Context(), principal.TenantID, principal.MemberID, body)
var result *finance.PaymentAccount
var err error
if r.Method == http.MethodPut {
result, err = a.finance.UpdatePaymentAccount(r.Context(), principal.TenantID, principal.MemberID, body)
} else {
result, err = a.finance.CreatePaymentAccount(r.Context(), principal.TenantID, principal.MemberID, body)
}
if err != nil {
writeFinanceError(w, r, err)
return