Skip to content

Commit ea120fb

Browse files
committed
fix: filter mapping
1 parent aba1390 commit ea120fb

2 files changed

Lines changed: 16 additions & 7 deletions

File tree

api/v3/handlers/customers/credits/convert.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -239,19 +239,19 @@ func convertAPITaxConfig(tc *api.BillingCreditGrantTaxConfig) *productcatalog.Ta
239239
return config
240240
}
241241

242-
func convertAPIStatusToChargeStatus(status api.BillingCreditGrantStatus) meta.ChargeStatus {
242+
func convertAPIStatusToChargeStatus(status api.BillingCreditGrantStatus) (meta.ChargeStatus, error) {
243243
switch status {
244244
case api.BillingCreditGrantStatusActive:
245-
return meta.ChargeStatusActive
245+
return meta.ChargeStatusActive, nil
246246
case api.BillingCreditGrantStatusPending:
247-
return meta.ChargeStatusCreated
247+
return meta.ChargeStatusCreated, nil
248248
case api.BillingCreditGrantStatusVoided:
249-
return meta.ChargeStatusDeleted
249+
return meta.ChargeStatusDeleted, nil
250250
case api.BillingCreditGrantStatusExpired:
251251
// Expired maps to final (terminal state, no further actions).
252-
return meta.ChargeStatusFinal
252+
return meta.ChargeStatusFinal, nil
253253
default:
254-
return meta.ChargeStatus(status)
254+
return "", fmt.Errorf("unsupported credit grant status: %s", status)
255255
}
256256
}
257257

api/v3/handlers/customers/credits/list_grants.go

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,16 @@ func (h *handler) ListCreditGrants() ListCreditGrantsHandler {
6363

6464
if args.Params.Filter != nil {
6565
if args.Params.Filter.Status != nil {
66-
status := convertAPIStatusToChargeStatus(*args.Params.Filter.Status)
66+
status, err := convertAPIStatusToChargeStatus(*args.Params.Filter.Status)
67+
if err != nil {
68+
return ListCreditGrantsRequest{}, apierrors.NewBadRequestError(ctx, err, apierrors.InvalidParameters{
69+
{
70+
Field: "filter[status]",
71+
Reason: err.Error(),
72+
Source: apierrors.InvalidParamSourceQuery,
73+
},
74+
})
75+
}
6776
req.Status = &status
6877
}
6978

0 commit comments

Comments
 (0)