Class: Jpi::V1::Admin::Impac::KpisController
- Inherits:
-
BaseResourceController
- Object
- BaseResourceController
- Jpi::V1::Admin::Impac::KpisController
- Defined in:
- app/controllers/mno_enterprise/jpi/v1/admin/impac/kpis_controller.rb
Overview
From the Admin panel, an admin can create/update/delete kpis to/from a dashboard template
Instance Method Summary collapse
-
#create ⇒ Object
POST /mnoe/jpi/v1/admin/impac/dashboard_templates/:id/kpis.
-
#destroy ⇒ Object
DELETE /mnoe/jpi/v1/admin/impac/kpis/:id.
-
#update ⇒ Object
PUT /mnoe/jpi/v1/admin/impac/kpis/:id.
Instance Method Details
#create ⇒ Object
POST /mnoe/jpi/v1/admin/impac/dashboard_templates/:id/kpis
7 8 9 10 11 12 13 14 15 16 |
# File 'app/controllers/mno_enterprise/jpi/v1/admin/impac/kpis_controller.rb', line 7 def create return render json: { errors: { message: 'Dashboard template not found' } }, status: :not_found unless template.present? @kpi = template.kpis.create(kpi_create_params) return render json: { errors: (@kpi && @kpi.errors).to_a }, status: :bad_request unless @kpi.present? && @kpi.valid? MnoEnterprise::EventLogger.info('kpi_create', current_user.id, 'Template KPI Creation', @kpi) @no_content = true render 'show' end |
#destroy ⇒ Object
DELETE /mnoe/jpi/v1/admin/impac/kpis/:id
30 31 32 33 34 35 36 37 |
# File 'app/controllers/mno_enterprise/jpi/v1/admin/impac/kpis_controller.rb', line 30 def destroy unless kpi.present? && kpi.destroy return render json: { errors: 'Cannot delete kpi' }, status: :bad_request end MnoEnterprise::EventLogger.info('kpi_delete', current_user.id, 'Template KPI Deletion', kpi) head status: :ok end |
#update ⇒ Object
PUT /mnoe/jpi/v1/admin/impac/kpis/:id
19 20 21 22 23 24 25 26 27 |
# File 'app/controllers/mno_enterprise/jpi/v1/admin/impac/kpis_controller.rb', line 19 def update unless kpi.present? && kpi.update(kpi_update_params) return render json: { errors: 'Cannot update kpi' }, status: :bad_request end MnoEnterprise::EventLogger.info('kpi_update', current_user.id, 'Template KPI Update', kpi) @nocontent = !params['metadata'] render 'show' end |