From 2f3a6e35e9d6d91886b6b51e81adbe3cb42bdaae Mon Sep 17 00:00:00 2001 From: Gitea Date: Thu, 14 Dec 2023 20:59:58 +0300 Subject: [PATCH] api fixes for list filters --- cmd/dev/sravnicli/products.go | 9 ++++++++- internal/common/client/sravni/client.go | 4 ++-- internal/common/client/sravni/entities.go | 2 +- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/cmd/dev/sravnicli/products.go b/cmd/dev/sravnicli/products.go index aaf2a52..38453bd 100644 --- a/cmd/dev/sravnicli/products.go +++ b/cmd/dev/sravnicli/products.go @@ -9,6 +9,7 @@ import ( "git.loyso.art/frx/kurious/internal/common/client/sravni" "git.loyso.art/frx/kurious/internal/common/errors" + "git.loyso.art/frx/kurious/internal/common/xslice" "github.com/teris-io/cli" ) @@ -184,7 +185,13 @@ func (a *productsFilterCountAction) parse(args []string, options map[string]stri return errors.SimpleError(learningTypeOptName + " is empty") } - a.params.courseThematic = strings.Split(options[courseThematicOptName], ",") + filterNotEmpty := func(value string) bool { + return value != "" + } + a.params.courseThematic = xslice.Filter( + strings.Split(options[courseThematicOptName], ","), + filterNotEmpty, + ) a.params.learningSelectionType = options[learningTypeSelectionOptName] client, err := makeSravniClient(a.ctx, a.log, options) diff --git a/internal/common/client/sravni/client.go b/internal/common/client/sravni/client.go index 0b9603d..f2325d9 100644 --- a/internal/common/client/sravni/client.go +++ b/internal/common/client/sravni/client.go @@ -276,7 +276,7 @@ func (c *client) ListEducationalProductsFilterCount( ctx context.Context, params ListEducationProductsParams, ) (result ProductsFilterCount, err error) { - const urlPath = "/v2/education/prodicts/fitter/count" + const urlPath = "/v2/education/products/filter/count" if err = c.checkClientInited(); err != nil { return result, err } @@ -307,7 +307,7 @@ func (c *client) ListEducationalProductsFilterCount( var respData DataContainer[ProductsFilterCount] resp, err := c.http.R(). SetBody(reqParams). - SetResult(&result). + SetResult(&respData). EnableTrace(). Post(c.makeEducationURL(urlPath)) if err != nil { diff --git a/internal/common/client/sravni/entities.go b/internal/common/client/sravni/entities.go index 9c55cea..5b84076 100644 --- a/internal/common/client/sravni/entities.go +++ b/internal/common/client/sravni/entities.go @@ -130,7 +130,7 @@ type ReduxConfigSorting struct { type ReduxConfig struct { Default struct { - SortingParameters []string `json:"sortingParameters"` + SortingParameters []ReduxConfigSorting `json:"sortingParameters"` } `json:"default"` DataSources map[string]ReduxDataSource `json:"dataSources"` Dictionaries struct {