diff --git a/app/controllers/project/show/project-instance-action/index.coffee b/app/controllers/project/show/project-instance-action/index.coffee index a7422eb..7d47951 100644 --- a/app/controllers/project/show/project-instance-action/index.coffee +++ b/app/controllers/project/show/project-instance-action/index.coffee @@ -2,6 +2,7 @@ import Ember from 'ember' import {create_date_sort} from 'ember-cli-dunlop/utils/date-sort' date_sort = create_date_sort('date') export default Ember.Controller.extend + queryParams: ['state'] #filter: Ember.Object.create # workflow_action_definition_id_in: [] # project_instance_group_workflow_group_id_in: [] diff --git a/app/controllers/project/show/project-instance-group/index.coffee b/app/controllers/project/show/project-instance-group/index.coffee new file mode 100644 index 0000000..6f35479 --- /dev/null +++ b/app/controllers/project/show/project-instance-group/index.coffee @@ -0,0 +1,3 @@ +import Controller from '@ember/controller' +export default Controller.extend + queryParams: ['state'] diff --git a/app/controllers/project/show/project-instance/index.coffee b/app/controllers/project/show/project-instance/index.coffee index f2f1eec..f7d08bd 100644 --- a/app/controllers/project/show/project-instance/index.coffee +++ b/app/controllers/project/show/project-instance/index.coffee @@ -3,6 +3,7 @@ import {create_date_sort} from 'ember-cli-dunlop/utils/date-sort' {get} = Ember date_sort = create_date_sort('reference_date') export default Ember.Controller.extend + queryParams: ['state'] #filter: Ember.Object.create # project_scenario_id_in: [] # state_in: [] diff --git a/app/routes/project/show/project-instance-action/index.coffee b/app/routes/project/show/project-instance-action/index.coffee index f93b77f..17b436a 100644 --- a/app/routes/project/show/project-instance-action/index.coffee +++ b/app/routes/project/show/project-instance-action/index.coffee @@ -1,6 +1,6 @@ import Ember from 'ember' -import PagedRemoteArray from 'ember-cli-pagination/remote/paged-remote-array' -export default_filter = Ember.Object.create +import PagedRemoteArray from 'ember-cli-dunlop/utils/paged-remote-array' +export filters = Ember.Object.create workflow_action_definition_id_in: [] project_instance_group_workflow_group_id: '' state_in: [] @@ -9,27 +9,25 @@ export default_filter = Ember.Object.create s: 'target_date asc' export default Ember.Route.extend + modelName: 'panda/project-instance-action' queryParams: - q: - refreshModel: true + state: {refreshModel: true} + page: {refreshModel: true} + perPage: {refreshModel: true} setupController: (controller, model) -> - controller.set 'filters', default_filter + controller.set 'filters', filters controller.set 'project', @modelFor('project.show') @_super arguments... model: (params) -> project = @modelFor 'project.show' - #@store.findAll('epots/migration-window-planning') - default_filter.project_id = project.id - otherParams = {q: default_filter.toProperties()} + filters.project_id = project.id includes = 'action-list' - otherParams.include = includes + filters.state_in = [params.state] if params.state PagedRemoteArray.create - modelName: 'panda/project-instance-action' + modelName: @modelName store: @store + filters: filters page: params.page || 1 perPage: params.perPage || 30 - otherParams: otherParams - paramMapping: - total_pages: 'total-pages' - total_count: 'total-count' + otherParams: {includes: includes} diff --git a/app/routes/project/show/project-instance-group/index.coffee b/app/routes/project/show/project-instance-group/index.coffee index 98de963..71ae001 100644 --- a/app/routes/project/show/project-instance-group/index.coffee +++ b/app/routes/project/show/project-instance-group/index.coffee @@ -1,30 +1,28 @@ import Ember from 'ember' -import PagedRemoteArray from 'ember-cli-pagination/remote/paged-remote-array' -export default_filter = Ember.Object.create +import PagedRemoteArray from 'ember-cli-dunlop/utils/paged-remote-array' +export filters = Ember.Object.create workflow_group_id_in: [] state_in: [] s: 'project_instance_reference_date asc' export default Ember.Route.extend + modelName: 'panda/project-instance-group' queryParams: - q: - refreshModel: true + state: {refreshModel: true} + page: {refreshModel: true} + perPage: {refreshModel: true} setupController: (controller, model) -> - controller.set 'filters', default_filter + controller.set 'filters', filters controller.set 'project', @modelFor('project.show') @_super arguments... model: (params) -> project = @modelFor 'project.show' - #@store.findAll('epots/migration-window-planning') - default_filter.project_id = project.id - otherParams = {q: default_filter.toProperties()} + filters.project_id = project.id + filters.state_in = [params.state] if params.state PagedRemoteArray.create - modelName: 'panda/project-instance-group' + modelName: @modelName store: @store + filters: filters page: params.page || 1 perPage: params.perPage || 30 - otherParams: otherParams - paramMapping: - total_pages: 'total-pages' - total_count: 'total-count' diff --git a/app/routes/project/show/project-instance/index.coffee b/app/routes/project/show/project-instance/index.coffee index 458239a..ba0d1da 100644 --- a/app/routes/project/show/project-instance/index.coffee +++ b/app/routes/project/show/project-instance/index.coffee @@ -1,32 +1,30 @@ import Ember from 'ember' -import PagedRemoteArray from 'ember-cli-pagination/remote/paged-remote-array' -export default_filter = Ember.Object.create +import PagedRemoteArray from 'ember-cli-dunlop/utils/paged-remote-array' +export filters = Ember.Object.create state_in: [] s: 'reference_date asc' export default Ember.Route.extend + modelName: 'panda/project-instance' queryParams: - q: - refreshModel: true + state: {refreshModel: true} + page: {refreshModel: true} + perPage: {refreshModel: true} setupController: (controller, model) -> - controller.set 'filters', default_filter + controller.set 'filters', filters controller.set 'project', @modelFor('project.show') @_super arguments... model: (params) -> project = @modelFor 'project.show' - #@store.findAll('epots/migration-window-planning') - default_filter.project_id = project.id - otherParams = {q: default_filter.toProperties()} + filters.project_id = project.id + filters.state_in = [params.state] if params.state PagedRemoteArray.create - modelName: 'panda/project-instance' + modelName: @modelName store: @store + filters: filters page: params.page || 1 perPage: params.perPage || 30 - otherParams: otherParams - paramMapping: - total_pages: 'total-pages' - total_count: 'total-count' actions: new_project_instance: -> diff --git a/app/templates/project/show/analysis.emblem b/app/templates/project/show/analysis.emblem index ea5a438..13badee 100644 --- a/app/templates/project/show/analysis.emblem +++ b/app/templates/project/show/analysis.emblem @@ -14,22 +14,34 @@ d-breadcrumbs as |breadcrumb| span.resource-name= project.name span.resource-suffix= t 'project.analysis.title' .ui.divider - each project.sorted_workflow_groups as |workflow_group| - .ui.segment - span= workflow_group.name - span - - span= workflow_group.id - each-in (get (get model.analytics 'instance_groups') workflow_group.id) as |state count| + .ui.segment + each-in model.analytics.instances as |state count| + = link-to 'project.show.project-instance' project (query-params state=state) = state-badge state ' span.between-brackets= count + + each project.sorted_workflow_groups as |workflow_group| + .ui.segment + .ui.header + .content + span= workflow_group.name + span - + span= workflow_group.id + each-in (get (get model.analytics 'instance_groups') workflow_group.id) as |state count| + = link-to 'project.show.project-instance-group' project (query-params state=state) + = state-badge state + ' + span.between-brackets= count .ui.segments each workflow_group.sorted_workflow_action_definitions as |workflow_action_definition| .ui.segment span= workflow_action_definition.title each-in (get (get model.analytics 'instance_actions') workflow_action_definition.id) as |state count| - = state-badge state - ' - span.between-brackets= count - br - = panda-image path="under-construction.svg" + ' + = link-to 'project.show.project-instance-action' project (query-params state=state) + = state-badge state + ' + span.between-brackets= count + /br + /= panda-image path="under-construction.svg"