24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
# File 'app/models/ecom/core/resource_requisition_item.rb', line 24
def quantity_validator
if requested_quantity.nil? || awaiting_quantity.nil? ||
requested_quantity_measurement_unit_id.nil? ||
awaiting_quantity_measurement_unit_id.nil?
return
end
requested_quantity_measurement_unit =
Ecom::Core::MeasurementUnit.find_by(id: requested_quantity_measurement_unit_id)
awaiting_quantity_measurement_unit =
Ecom::Core::MeasurementUnit.find_by(id: awaiting_quantity_measurement_unit_id)
requested_quantity_in_si_unit = requested_quantity / requested_quantity_measurement_unit.conversion_factor
awaiting_quantity_in_si_unit = awaiting_quantity / awaiting_quantity_measurement_unit.conversion_factor
return unless awaiting_quantity_in_si_unit > requested_quantity_in_si_unit
errors.add(:awaiting_quantity, 'awaiting quantity can not be greater than requested quantity')
end
|