Fix workflow filtering and response encodings
Fix backend and replaced []uint64 with []string for filter.workflowID that corrupted the input value for JavaScript (uint64 vs int64). Also implements actual filtering by workflow on RDBMS that was missing
This commit is contained in:
parent
1fa5f39ab2
commit
ca7d4b00c0
@ -12,7 +12,6 @@ import (
|
||||
"github.com/cortezaproject/corteza-server/pkg/api"
|
||||
"github.com/cortezaproject/corteza-server/pkg/expr"
|
||||
"github.com/cortezaproject/corteza-server/pkg/filter"
|
||||
"github.com/cortezaproject/corteza-server/pkg/payload"
|
||||
)
|
||||
|
||||
type (
|
||||
@ -83,7 +82,7 @@ func (ctrl Workflow) List(ctx context.Context, r *request.WorkflowList) (interfa
|
||||
var (
|
||||
err error
|
||||
f = types.WorkflowFilter{
|
||||
WorkflowID: payload.ParseUint64s(r.WorkflowID),
|
||||
WorkflowID: r.WorkflowID,
|
||||
Query: r.Query,
|
||||
Labels: r.Labels,
|
||||
Deleted: filter.State(r.Deleted),
|
||||
|
||||
@ -46,7 +46,7 @@ type (
|
||||
}
|
||||
|
||||
WorkflowFilter struct {
|
||||
WorkflowID []uint64 `json:"workflowID"`
|
||||
WorkflowID []string `json:"workflowID"`
|
||||
|
||||
Query string `json:"query"`
|
||||
|
||||
|
||||
@ -62,12 +62,15 @@ workflow: {
|
||||
|
||||
filter: {
|
||||
struct: {
|
||||
workflow_id: { goType: "[]string", ident: "workflowID", storeIdent: "id" }
|
||||
sub_workflow: { goType: "filter.State", storeIdent: "deleted_at" }
|
||||
deleted: { goType: "filter.State", storeIdent: "deleted_at" }
|
||||
disabled: { goType: "filter.State", storeIdent: "enabled" }
|
||||
}
|
||||
|
||||
query: ["handle"]
|
||||
byNilState: ["deleted"]
|
||||
byValue: ["workflow_id"]
|
||||
byNilState: ["deleted", "sub_workflow"]
|
||||
byFalseState: ["disabled"]
|
||||
}
|
||||
|
||||
|
||||
8
store/adapters/rdbms/filters.gen.go
generated
8
store/adapters/rdbms/filters.gen.go
generated
@ -451,10 +451,18 @@ func AutomationWorkflowFilter(f automationType.WorkflowFilter) (ee []goqu.Expres
|
||||
ee = append(ee, expr)
|
||||
}
|
||||
|
||||
if expr := stateNilComparison("deleted_at", f.SubWorkflow); expr != nil {
|
||||
ee = append(ee, expr)
|
||||
}
|
||||
|
||||
if expr := stateFalseComparison("enabled", f.Disabled); expr != nil {
|
||||
ee = append(ee, expr)
|
||||
}
|
||||
|
||||
if ss := trimStringSlice(f.WorkflowID); len(ss) > 0 {
|
||||
ee = append(ee, goqu.C("id").In(ss))
|
||||
}
|
||||
|
||||
if len(f.LabeledIDs) > 0 {
|
||||
ee = append(ee, goqu.I("id").In(f.LabeledIDs))
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user