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