mirror of
https://github.com/Karaka-Management/phpOMS.git
synced 2026-01-18 04:48:39 +00:00
parent
0deb040847
commit
7d3620c4f4
|
|
@ -30,4 +30,13 @@ use phpOMS\Datatypes\Enum;
|
|||
*/
|
||||
abstract class EnergyPowerType extends Enum
|
||||
{
|
||||
const KILOWATT_HOUERS = 'kWh';
|
||||
const MEGAWATT_HOUERS = 'MWh';
|
||||
const KILOTONS = 'kt';
|
||||
const JOULS = 'J';
|
||||
const CALORIES = 'Cal';
|
||||
const BTU = 'BTU';
|
||||
const KILOJOULS = 'kJ';
|
||||
const THERMEC = 'thmEC';
|
||||
const NEWTON_METERS = 'Nm';
|
||||
}
|
||||
|
|
|
|||
|
|
@ -38,8 +38,6 @@ class Measurement
|
|||
*
|
||||
* @return float
|
||||
*
|
||||
* @todo : implement more
|
||||
*
|
||||
* @since 1.0.0
|
||||
* @author Dennis Eichhorn <d.eichhorn@oms.com>
|
||||
*/
|
||||
|
|
@ -114,8 +112,6 @@ class Measurement
|
|||
*
|
||||
* @return float
|
||||
*
|
||||
* @todo : implement more
|
||||
*
|
||||
* @since 1.0.0
|
||||
* @author Dennis Eichhorn <d.eichhorn@oms.com>
|
||||
*/
|
||||
|
|
@ -1237,8 +1233,68 @@ class Measurement
|
|||
* @since 1.0.0
|
||||
* @author Dennis Eichhorn <d.eichhorn@oms.com>
|
||||
*/
|
||||
public static function convertEnergie(float $value, string $from = WeightType::GRAM, string $to = WeightType::KILOGRAM) : float
|
||||
public static function convertEnergie(float $value, string $from = EnergyPowerType::JOULS, string $to = EnergyPowerType::KILOWATT_HOUERS) : float
|
||||
{
|
||||
switch ($from) {
|
||||
case EnergyPowerType::JOULS:
|
||||
break;
|
||||
case EnergyPowerType::KILOWATT_HOUERS:
|
||||
$value /= 0.00000027778;
|
||||
break;
|
||||
case EnergyPowerType::MEGAWATT_HOUERS:
|
||||
$value /= 0.00000000027778;
|
||||
break;
|
||||
case EnergyPowerType::KILOTONS:
|
||||
$value /= 0.00000000000023901;
|
||||
break;
|
||||
case EnergyPowerType::CALORIES:
|
||||
$value /= 0.00023885;
|
||||
break;
|
||||
case EnergyPowerType::BTU:
|
||||
$value /= 0.00094782;
|
||||
break;
|
||||
case EnergyPowerType::KILOJOULS:
|
||||
$value /= 0.0010000;
|
||||
break;
|
||||
case EnergyPowerType::THERMEC:
|
||||
$value /= 0.0000000094782;
|
||||
break;
|
||||
case EnergyPowerType::NEWTON_METERS:
|
||||
break;
|
||||
default:
|
||||
throw new \InvalidArgumentException('Energy not supported');
|
||||
}
|
||||
|
||||
switch ($to) {
|
||||
case EnergyPowerType::JOULS:
|
||||
break;
|
||||
case EnergyPowerType::KILOWATT_HOUERS:
|
||||
$value *= 0.00000027778;
|
||||
break;
|
||||
case EnergyPowerType::MEGAWATT_HOUERS:
|
||||
$value *= 0.00000000027778;
|
||||
break;
|
||||
case EnergyPowerType::KILOTONS:
|
||||
$value *= 0.00000000000023901;
|
||||
break;
|
||||
case EnergyPowerType::CALORIES:
|
||||
$value *= 0.00023885;
|
||||
break;
|
||||
case EnergyPowerType::BTU:
|
||||
$value *= 0.00094782;
|
||||
break;
|
||||
case EnergyPowerType::KILOJOULS:
|
||||
$value *= 0.0010000;
|
||||
break;
|
||||
case EnergyPowerType::THERMEC:
|
||||
$value *= 0.0000000094782;
|
||||
break;
|
||||
case EnergyPowerType::NEWTON_METERS:
|
||||
break;
|
||||
default:
|
||||
throw new \InvalidArgumentException('Energy not supported');
|
||||
}
|
||||
|
||||
return $value;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user