Fix connector filter

Signed-off-by: Sacha Al Himdani <sacha@getprobo.com>
This commit is contained in:
Sacha Al Himdani
2025-10-23 12:27:48 +02:00
parent 5384337061
commit 1097874639
3 changed files with 11 additions and 15 deletions

View File

@@ -63,7 +63,7 @@ func (c *Connectors) LoadByOrganizationID(
organizationID gid.GID, organizationID gid.GID,
cursor *page.Cursor[ConnectorOrderField], cursor *page.Cursor[ConnectorOrderField],
encryptionKey cipher.EncryptionKey, encryptionKey cipher.EncryptionKey,
filter *ConnectorProviderFilter, filter *ConnectorFilter,
) error { ) error {
if err := c.loadByOrganizationIDWithPagination(ctx, conn, scope, organizationID, cursor, filter); err != nil { if err := c.loadByOrganizationIDWithPagination(ctx, conn, scope, organizationID, cursor, filter); err != nil {
return fmt.Errorf("cannot load connectors by organization ID: %w", err) return fmt.Errorf("cannot load connectors by organization ID: %w", err)
@@ -120,7 +120,7 @@ func (c *Connectors) LoadByOrganizationIDWithoutDecryptedConnection(
scope Scoper, scope Scoper,
organizationID gid.GID, organizationID gid.GID,
cursor *page.Cursor[ConnectorOrderField], cursor *page.Cursor[ConnectorOrderField],
filter *ConnectorProviderFilter, filter *ConnectorFilter,
) error { ) error {
return c.loadByOrganizationIDWithPagination(ctx, conn, scope, organizationID, cursor, filter) return c.loadByOrganizationIDWithPagination(ctx, conn, scope, organizationID, cursor, filter)
} }
@@ -246,7 +246,7 @@ func (c *Connectors) loadByOrganizationIDWithPagination(
scope Scoper, scope Scoper,
organizationID gid.GID, organizationID gid.GID,
cursor *page.Cursor[ConnectorOrderField], cursor *page.Cursor[ConnectorOrderField],
filter *ConnectorProviderFilter, filter *ConnectorFilter,
) error { ) error {
q := ` q := `
SELECT SELECT

View File

@@ -19,28 +19,24 @@ import (
) )
type ( type (
ConnectorProviderFilter struct { ConnectorFilter struct {
provider *ConnectorProvider provider *ConnectorProvider
} }
) )
func NewConnectorProviderFilter(provider *ConnectorProvider) *ConnectorProviderFilter { func NewConnectorProviderFilter(provider *ConnectorProvider) *ConnectorFilter {
return &ConnectorProviderFilter{ return &ConnectorFilter{
provider: provider, provider: provider,
} }
} }
func (f *ConnectorProviderFilter) SQLArguments() pgx.NamedArgs { func (f *ConnectorFilter) SQLArguments() pgx.NamedArgs {
args := pgx.NamedArgs{} return pgx.NamedArgs{
"provider": f.provider,
if f.provider != nil {
args["provider"] = *f.provider
} }
return args
} }
func (f *ConnectorProviderFilter) SQLFragment() string { func (f *ConnectorFilter) SQLFragment() string {
return ` return `
( (
CASE CASE

View File

@@ -59,7 +59,7 @@ func (s *ConnectorService) ListForOrganizationID(
ctx context.Context, ctx context.Context,
organizationID gid.GID, organizationID gid.GID,
cursor *page.Cursor[coredata.ConnectorOrderField], cursor *page.Cursor[coredata.ConnectorOrderField],
filter *coredata.ConnectorProviderFilter, filter *coredata.ConnectorFilter,
) (*page.Page[*coredata.Connector, coredata.ConnectorOrderField], error) { ) (*page.Page[*coredata.Connector, coredata.ConnectorOrderField], error) {
var connectors coredata.Connectors var connectors coredata.Connectors