| 463 | } |
| 464 | |
| 465 | bool UtilityBill_Impl::setConsumptionUnit(const std::string& consumptionUnit) { |
| 466 | bool result = false; |
| 467 | std::vector<std::string> consumptionUnitValues = this->consumptionUnitValues(); |
| 468 | auto it = std::find(consumptionUnitValues.begin(), consumptionUnitValues.end(), consumptionUnit); |
| 469 | if (it != consumptionUnitValues.end()) { |
| 470 | std::string oldConsumptionUnit = this->consumptionUnit(); |
| 471 | result = setString(OS_UtilityBillFields::ConsumptionUnit, consumptionUnit); |
| 472 | if (result && (oldConsumptionUnit != consumptionUnit)) { |
| 473 | resetConsumptionUnitConversionFactor(); |
| 474 | } |
| 475 | } |
| 476 | return result; |
| 477 | } |
| 478 | |
| 479 | bool UtilityBill_Impl::setConsumptionUnitConversionFactor(double consumptionUnitConversionFactor) { |
| 480 | bool result = setDouble(OS_UtilityBillFields::ConsumptionUnitConversionFactor, consumptionUnitConversionFactor); |