add meter model for smart meter
This commit is contained in:
parent
02415f4dee
commit
68cf7761d7
3 changed files with 67 additions and 3 deletions
|
|
@ -86,7 +86,11 @@
|
|||
<p class="text-nowrap mb-2"><i class="bx bx-purchase-tag bx-sm me-2"></i>سریال جدید: {{ report.new_water_meter_serial|default:'-' }}</p>
|
||||
<p class="text-nowrap mb-2"><i class="bx bx-lock-alt bx-sm me-2"></i>شماره پلمپ: {{ report.seal_number|default:'-' }}</p>
|
||||
<p class="text-nowrap mb-2"><i class="bx bx-chip bx-sm me-2"></i>نوع کنتور: {{ report.get_meter_type_display|default:'-' }}</p>
|
||||
{% if report.meter_type == 'smart' %}
|
||||
<p class="text-nowrap mb-2"><i class="bx bx-chip bx-sm me-2"></i>مدل کنتور: {{ report.get_meter_model_display|default:'-' }}</p>
|
||||
{% else %}
|
||||
<p class="text-nowrap mb-2"><i class="bx bx-ruler bx-sm me-2"></i>سایز کنتور: {{ report.meter_size|default:'-' }}</p>
|
||||
{% endif %}
|
||||
<p class="text-nowrap mb-2"><i class="bx bx-tachometer bx-sm me-2"></i>قطر لوله آبده (اینچ): {{ report.discharge_pipe_diameter|default:'-' }}</p>
|
||||
<p class="text-nowrap mb-2"><i class="bx bx-building bx-sm me-2"></i>سازنده کنتور: {{ report.water_meter_manufacturer|default:'-' }}</p>
|
||||
<p class="text-nowrap mb-2"><i class="bx bx-sim-card bx-sm me-2"></i>شماره سیمکارت: {{ report.sim_number|default:'-' }}</p>
|
||||
|
|
@ -279,13 +283,20 @@
|
|||
<div class="invalid-feedback">{{ form.meter_type.errors.0 }}</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
<div class="col-md-3" id="meter_size_wrapper">
|
||||
{{ form.meter_size.label_tag }}
|
||||
{{ form.meter_size }}
|
||||
{% if form.meter_size.errors %}
|
||||
<div class="invalid-feedback">{{ form.meter_size.errors.0 }}</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
<div class="col-md-3" id="meter_model_wrapper">
|
||||
{{ form.meter_model.label_tag }}
|
||||
{{ form.meter_model }}
|
||||
{% if form.meter_model.errors %}
|
||||
<div class="invalid-feedback">{{ form.meter_size.errors.0 }}</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
{{ form.discharge_pipe_diameter.label_tag }}
|
||||
{{ form.discharge_pipe_diameter }}
|
||||
|
|
@ -329,7 +340,7 @@
|
|||
{% endif %}
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
{{ form.water_meter_manufacturer.label_tag }}
|
||||
{{ form.water_meter_manufacturer.label_tag }}حجمی
|
||||
<div class="input-group">
|
||||
{{ form.water_meter_manufacturer }}
|
||||
{{ form.new_manufacturer }}
|
||||
|
|
@ -759,6 +770,47 @@
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Dynamic meter field visibility based on meter type
|
||||
(function() {
|
||||
const meterTypeSelect = document.getElementById('{{ form.meter_type.id_for_label }}');
|
||||
const meterSizeWrapper = document.getElementById('meter_size_wrapper');
|
||||
const meterModelWrapper = document.getElementById('meter_model_wrapper');
|
||||
|
||||
function updateMeterFields() {
|
||||
if (!meterTypeSelect) return;
|
||||
|
||||
const selectedType = meterTypeSelect.value;
|
||||
|
||||
if (selectedType === 'smart') {
|
||||
// Show meter_model, hide meter_size
|
||||
meterModelWrapper.style.display = '';
|
||||
meterSizeWrapper.style.display = 'none';
|
||||
// Clear meter_size value when hidden
|
||||
const meterSizeInput = meterSizeWrapper.querySelector('input, select');
|
||||
if (meterSizeInput) meterSizeInput.value = '';
|
||||
} else if (selectedType === 'volumetric') {
|
||||
// Show meter_size, hide meter_model
|
||||
meterSizeWrapper.style.display = '';
|
||||
meterModelWrapper.style.display = 'none';
|
||||
// Clear meter_model value when hidden
|
||||
const meterModelSelect = meterModelWrapper.querySelector('select');
|
||||
if (meterModelSelect) meterModelSelect.value = '';
|
||||
} else {
|
||||
// No selection: hide both
|
||||
meterSizeWrapper.style.display = 'none';
|
||||
meterModelWrapper.style.display = 'none';
|
||||
}
|
||||
}
|
||||
|
||||
// Initial update on page load
|
||||
updateMeterFields();
|
||||
|
||||
// Update on change
|
||||
if (meterTypeSelect) {
|
||||
meterTypeSelect.addEventListener('change', updateMeterFields);
|
||||
}
|
||||
})();
|
||||
</script>
|
||||
{% endblock %}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue