app/views/schools/meters/show.html.erb
<div class="d-flex justify-content-between align-items-center">
<h1>
<% meter_name = @meter.name.present? ? @meter.name : t('schools.meters.show.meter') %>
<%= t('schools.meters.show.title', meter_name: meter_name, meter_mpan_mprn: @meter.mpan_mprn) %>
</h1>
<div class="h5">
<%= link_to t('schools.meters.show.school_meter_management'), school_meters_path(@school), class: 'btn btn-outline-dark round-pill' %>
</div>
</div>
<div class="mb-2 alert alert-secondary row">
<div class="col-md-5">
<%= link_to "#{fa_icon('file-download')} #{t('schools.meters.show.download_readings')}".html_safe, school_meter_path(@school, @meter, format: "csv"), class: 'btn btn-info btn-sm' if @meter.amr_validated_readings.any? %>
<%= link_to t('common.labels.edit'), edit_school_meter_path(@school, @meter), class: 'btn btn-sm btn-warning' %>
<% if can?(:report_on, @meter) && @meter.amr_validated_readings.any? %>
<%= link_to t('common.labels.report'), admin_reports_amr_validated_reading_path(@meter), class: 'btn btn-info btn-sm' %>
<% end %>
<% if can?(:view_meter_attributes, @meter) %>
<%= link_to t('common.labels.attributes'), admin_school_single_meter_attribute_path(@school, @meter), class: 'btn btn-sm' %>
<% end %>
<% if @meter.active? %>
<%= link_to t('common.labels.deactivate'), deactivate_school_meter_path(@school, @meter), method: :put, class: 'btn btn-sm btn-secondary' %>
<% else %>
<%= link_to t('common.labels.activate'), activate_school_meter_path(@school, @meter), method: :put, class: 'btn btn-sm btn-secondary' %>
<% end %>
<%= render 'admin/issues/modal', label: t("schools.meters.meter_issues.button_label"), meter: @meter if current_user.admin? %>
</div>
<div class="col-md-7">
<% if @meter.dcc_meter? %>
<% if @meter.can_withdraw_consent? && can?(:withdraw_consent, @meter) %>
<%= link_to t('schools.meters.show.withdraw_consent'), admin_withdraw_dcc_consent_path(mpxn: @meter.mpan_mprn), method: :post, class: 'btn btn-info btn-sm' %>
<% end %>
<% if @meter.can_grant_consent? && can?(:grant_consent, @meter) %>
<%= link_to t('schools.meters.show.grant_consent'), admin_grant_dcc_consent_path(mpxn: @meter.mpan_mprn), method: :post, class: 'btn btn-info btn-sm' %>
<% end %>
<% if can?(:view_inventory, @meter) %>
<%= link_to t('schools.meters.show.inventory'), inventory_school_meter_path(@school, @meter), class: 'btn btn-info btn-sm' %>
<% end %>
<% if can?(:view_tariff_reports, @meter)%>
<%= link_to t('schools.meters.show.tariff_report'), smart_meter_tariffs_school_energy_tariffs_path(@school), class: 'btn btn-info btn-sm' %>
<% end %>
<% end %>
</div>
</div>
<div class="row">
<div class="col-md-5">
<h3><%= t('schools.meters.show.basic_information') %></h3>
<dl class="row">
<% if current_user.admin? %>
<dt class="col-sm-3"><%= t('schools.meters.show.data_source') %></dt>
<dd class="col-sm-9"><%= @meter.data_source ? link_to(@meter.data_source.name, admin_data_source_path(@meter.data_source)) : t('common.labels.not_set') %></dd>
<% end %>
<dt class="col-sm-3">MPAN/MPRN</dt>
<dd class="col-sm-9"><%= @meter.mpan_mprn %></dd>
<dt class="col-sm-3"><%= t('schools.meters.show.serial_number') %></dt>
<dd class="col-sm-9"><%= @meter.meter_serial_number %></dd>
<dt class="col-sm-3"><%= t('common.labels.type') %></dt>
<dd class="col-sm-9"><%= @meter.meter_type.capitalize %></dd>
<dt class="col-sm-3"><%= t('common.labels.status') %></dt>
<dd class="col-sm-9"><%= @meter.active ? t('common.labels.active') : t('common.labels.inactive') %></dd>
<dt class="col-sm-3"><%= t('common.labels.created') %></dt>
<dd class="col-sm-9"><%= nice_date_times @meter.created_at %></dd>
<dt class="col-sm-3"><%= t('common.labels.last_updated') %></dt>
<dd class="col-sm-9"><%= nice_date_times @meter.updated_at %></dd>
</dl>
</div>
<div class="col-md-7">
<% if current_user.admin? %>
<h3><%= t('schools.meters.show.dcc_information') %></h3>
<% if @meter.dcc_meter? %>
<dl class="row">
<dt class="col-sm-3"><%= t('schools.meters.show.n3rgy_known_meter') %></dt>
<dd class="col-sm-9"><%= @known_to_n3rgy %></dd>
<dt class="col-sm-3"><%= t('schools.meters.show.user_consented') %>?</dt>
<dd class="col-sm-9"><%= @meter.meter_review.present? %></dd>
<dt class="col-sm-3"><%= t('schools.meters.show.dcc_consented') %>?</dt>
<dd class="col-sm-9"><%= @meter.consent_granted? %></dd>
<dt class="col-sm-3"><%= t('schools.meters.show.n3rgy_consent_confirmed') %>?</dt>
<dd class="col-sm-9"><%= @n3rgy_consent_confirmed %></dd>
<dt class="col-sm-3"><%= t('schools.meters.show.n3rgy_api_status') %></dt>
<dd class="col-sm-9"><%= @n3rgy_status.to_s.humanize %></dd>
<dt class="col-sm-3"><%= t('schools.meters.show.available_cache_range') %></dt>
<dd class="col-sm-9"><%= @available_cache_range %></dd>
</dl>
<% else %>
<p><%= t('schools.meters.show.not_configured_as_a_dcc_meter') %></p>
<dl class="row">
<dt class="col-sm-3"><%= t('schools.meters.show.dcc_last_checked') %></dt>
<dd class="col-sm-9"><%= nice_date_times @meter.dcc_checked_at %></dd>
<dt class="col-sm-3"><%= t('schools.meters.show.n3rgy_known_meter') %></dt>
<dd class="col-sm-9"><%= @known_to_n3rgy %></dd>
</dl>
<% end %>
<% end %>
</div>
</div>