mirror of
https://github.com/nottinghamtec/PyRIGS.git
synced 2026-01-31 12:22:14 +00:00
Add ability to mark event checklists as Large Event
This just disables the checks to allow the rest of it to be filled out for large events, though I expect paper forms may still be used...
This commit is contained in:
23
RIGS/migrations/0040_auto_20200925_2141.py
Normal file
23
RIGS/migrations/0040_auto_20200925_2141.py
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
# Generated by Django 3.1 on 2020-09-25 20:41
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('RIGS', '0039_auto_20200915_0937'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.RemoveField(
|
||||||
|
model_name='eventchecklist',
|
||||||
|
name='medium_event',
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='eventchecklist',
|
||||||
|
name='event_size',
|
||||||
|
field=models.IntegerField(choices=[(0, 'Small'), (1, 'Medium'), (2, 'Large')], default=0),
|
||||||
|
preserve_default=False,
|
||||||
|
),
|
||||||
|
]
|
||||||
@@ -680,6 +680,10 @@ class RiskAssessment(models.Model, RevisionMixin):
|
|||||||
|
|
||||||
@reversion.register(follow=['vehicles', 'crew'])
|
@reversion.register(follow=['vehicles', 'crew'])
|
||||||
class EventChecklist(models.Model, RevisionMixin):
|
class EventChecklist(models.Model, RevisionMixin):
|
||||||
|
SMALL = (0, 'Small')
|
||||||
|
MEDIUM = (1, 'Medium')
|
||||||
|
LARGE = (2, 'Large')
|
||||||
|
SIZES = (SMALL, MEDIUM, LARGE)
|
||||||
event = models.OneToOneField('Event', on_delete=models.CASCADE)
|
event = models.OneToOneField('Event', on_delete=models.CASCADE)
|
||||||
|
|
||||||
# General
|
# General
|
||||||
@@ -704,7 +708,7 @@ class EventChecklist(models.Model, RevisionMixin):
|
|||||||
earthing = models.BooleanField(help_text="Equipment appropriately earthed?<br><small>(truss, stage, generators etc)</small>")
|
earthing = models.BooleanField(help_text="Equipment appropriately earthed?<br><small>(truss, stage, generators etc)</small>")
|
||||||
pat = models.BooleanField(help_text="All equipment in PAT period?")
|
pat = models.BooleanField(help_text="All equipment in PAT period?")
|
||||||
|
|
||||||
medium_event = models.BooleanField()
|
event_size = models.IntegerField(choices=SIZES)
|
||||||
# Medium Electrical Checks
|
# Medium Electrical Checks
|
||||||
source_rcd = models.BooleanField(blank=True, null=True, help_text="Source RCD protected?<br><small>(if cable is more than 3m long) </small>")
|
source_rcd = models.BooleanField(blank=True, null=True, help_text="Source RCD protected?<br><small>(if cable is more than 3m long) </small>")
|
||||||
labelling = models.BooleanField(blank=True, null=True, help_text="Appropriate and clear labelling on distribution and cabling?")
|
labelling = models.BooleanField(blank=True, null=True, help_text="Appropriate and clear labelling on distribution and cabling?")
|
||||||
@@ -753,10 +757,10 @@ class EventChecklist(models.Model, RevisionMixin):
|
|||||||
if self.earthing is None or self.pat is None:
|
if self.earthing is None or self.pat is None:
|
||||||
errdict['earthing'] = 'Fill out the electrical checks'
|
errdict['earthing'] = 'Fill out the electrical checks'
|
||||||
|
|
||||||
if not self.medium_event and (self.rcds is None or self.supply_test is None):
|
if self.event_size == 0 and (self.rcds is None or self.supply_test is None):
|
||||||
errdict['rcds'] = 'Fill out the small event electrical checks'
|
errdict['rcds'] = 'Fill out the small event electrical checks'
|
||||||
|
|
||||||
if self.medium_event:
|
if self.event_size == 1:
|
||||||
if self.source_rcd is None or self.labelling is None or self.all_rcds_tested is None or self.public_sockets_tested is None:
|
if self.source_rcd is None or self.labelling is None or self.all_rcds_tested is None or self.public_sockets_tested is None:
|
||||||
errdict['source_rcd'] = 'Fill out the medium event electrical checks'
|
errdict['source_rcd'] = 'Fill out the medium event electrical checks'
|
||||||
|
|
||||||
|
|||||||
@@ -92,9 +92,15 @@
|
|||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
<div class="card card-default mb-3">
|
<div class="card card-default mb-3">
|
||||||
<div class="card-header">Power {% if object.medium_event %}<span class="badge badge-warning p-2 my-3">Medium Event</span>{%else%}<span class="badge badge-success p-2 my-3">Small Event</span>{%endif%}</div>
|
<div class="card-header">Power {% if object.event_size == 2 %}
|
||||||
|
<span class="badge badge-danger p-2 my-3">Large Event</span>
|
||||||
|
{% elif object.event_size == 1 %}
|
||||||
|
<span class="badge badge-warning p-2 my-3">Medium Event</span>
|
||||||
|
{%else%}<span class="badge badge-success p-2 my-3">Small Event</span>
|
||||||
|
{%endif%}</div>
|
||||||
|
{% if object.event_size != 2 %}
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
{% if object.medium_event %}
|
{% if object.event_size == 1 %}
|
||||||
<dl class="row">
|
<dl class="row">
|
||||||
<dt class="col-10">{{ object|help_text:'source_rcd'|safe }}</dt>
|
<dt class="col-10">{{ object|help_text:'source_rcd'|safe }}</dt>
|
||||||
<dd class="col-2">
|
<dd class="col-2">
|
||||||
@@ -220,6 +226,7 @@
|
|||||||
</dl>
|
</dl>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-12 text-right">
|
<div class="col-12 text-right">
|
||||||
|
|||||||
@@ -32,31 +32,28 @@
|
|||||||
{% if not object.pk %}
|
{% if not object.pk %}
|
||||||
$('.form-hide').slideUp();
|
$('.form-hide').slideUp();
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if object.medium_event %}
|
$('#size-selector button[data-event-size={{object.event_size}}]').addClass('active');
|
||||||
$('#small-event').slideUp();
|
for(i = 0; i < 3; i++) {
|
||||||
$('#medium-event').slideDown();
|
if(i == {{object.event_size}}) {
|
||||||
$('#size-selector button[data-event-size=1]').addClass('active');
|
$('#size-{{object.event_size}}').slideDown();
|
||||||
{% else %}
|
}
|
||||||
$('#small-event').slideDown();
|
else {
|
||||||
$('#medium-event').slideUp();
|
$('#size-' + i).slideUp();
|
||||||
$('#size-selector button[data-event-size=0]').addClass('active');
|
}
|
||||||
{% endif%}
|
}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
$('#size-selector button').on('click', function () {
|
$('#size-selector button').on('click', function () {
|
||||||
|
$('#{{form.event_size.auto_id}}').val($(this).data('event-size'))
|
||||||
$(this).toggleClass('active');
|
$(this).toggleClass('active');
|
||||||
$('#size-selector button').not(this).removeClass('active');
|
$('#size-selector button').not(this).removeClass('active');
|
||||||
if ($(this).data('event-size') == 1) {
|
$('#size-' + $(this).data('event-size')).slideDown();
|
||||||
$('#{{form.medium_event.auto_id}}').prop('checked', true);
|
for(i = 0; i < 3; i++) {
|
||||||
$('#small-event').slideUp();
|
if(i == $(this).data('event-size')) {
|
||||||
$('#medium-event').slideDown();
|
$('#size-' + $(this).data('event-size')).slideDown();
|
||||||
//$('#medium-event').find('select,input').attr('required', 'true');
|
}
|
||||||
//$('#small-event').find('select,input').removeAttr('required');
|
else {
|
||||||
} else {
|
$('#size-' + i).slideUp();
|
||||||
$('#{{form.medium_event.auto_id}}').prop('checked', false);
|
}
|
||||||
$('#small-event').slideDown();
|
|
||||||
$('#medium-event').slideUp();
|
|
||||||
//('#small-event').find('select,input').attr('required', 'true');
|
|
||||||
//('#medium-event').find('select,input').removeAttr('required');
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
$('button[data-action=add]').on('click', function (event) {
|
$('button[data-action=add]').on('click', function (event) {
|
||||||
@@ -238,14 +235,15 @@
|
|||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-header">Event Size</div>
|
<div class="card-header">Event Size</div>
|
||||||
<div class="card-body" id="size-selector">
|
<div class="card-body" id="size-selector">
|
||||||
{% render_field form.medium_event style="display: none" %}
|
{% render_field form.event_size style="display: none;" %}
|
||||||
<button type="button" class="btn btn-success" data-event-size="0" style="width: 10rem;">Small</button>
|
<button type="button" class="btn btn-success" data-event-size="0" style="width: 10rem;">Small</button>
|
||||||
<button type="button" class="btn btn-warning" data-event-size="1" style="width: 10rem;">Medium</button>
|
<button type="button" class="btn btn-warning" data-event-size="1" style="width: 10rem;">Medium</button>
|
||||||
|
<button type="button" class="btn btn-danger" data-event-size="2" style="width: 10rem;">Large</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row my-3 form-hide" id="small-event">
|
<div class="row my-3 form-hide" id="size-0">
|
||||||
<div class="col-12">
|
<div class="col-12">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-header">Electrical Checks <small>for ‘Small’ TEC Events <6kVA (aprox. 26A)</small></div>
|
<div class="card-header">Electrical Checks <small>for ‘Small’ TEC Events <6kVA (aprox. 26A)</small></div>
|
||||||
@@ -258,7 +256,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row my-3 form-hide" id="medium-event">
|
<div class="row my-3 form-hide" id="size-1">
|
||||||
<div class="col-12">
|
<div class="col-12">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-header">Electrical Checks <small>for ‘Medium’ TEC Events </small></div>
|
<div class="card-header">Electrical Checks <small>for ‘Medium’ TEC Events </small></div>
|
||||||
@@ -348,6 +346,16 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="row my-3 form-hide" id="size-2">
|
||||||
|
<div class="col-12">
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-header">Electrical Checks <small>for ‘Large’ TEC Events</div>
|
||||||
|
<div class="card-body">
|
||||||
|
<p>Outside the scope of this assessment. Carry on.</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
<div class="row mt-3">
|
<div class="row mt-3">
|
||||||
<div class="col-sm-12 text-right">
|
<div class="col-sm-12 text-right">
|
||||||
<div class="btn-group">
|
<div class="btn-group">
|
||||||
|
|||||||
Reference in New Issue
Block a user