public function prepareFormulaParams() { $this->formula_params['h_station_above_sea'] = $this->station_obj->altitude; // h_barometer_above_station $sensor_id_codes = $this->getUsedSensors($this->station_obj->station_id); $sensor_id_code = array_shift(preg_grep('/^PR.$/', $sensor_id_codes)); $qb = new CDbCriteria(); $qb->with = ['sensor.handler', 'metric']; $qb->addCondition('sensor.sensor_id_code LIKE \'' . $sensor_id_code . '\''); $qb->addCondition('sensor.station_id = ' . $this->station_obj->station_id); $qb->addCondition('handler.handler_id_code LIKE \'Pressure\''); $qb->addCondition('t.feature_code LIKE \'height\''); $res = StationSensorFeature::model()->find($qb); $h_barometer_above_station = 0; if ($res && !is_null($res->feature_constant_value) && !is_null($res->metric->code)) { $h_barometer_above_station = It::convertMetric($res->feature_constant_value, $res->metric->code, 'meter'); } $this->formula_params['h_barometer_above_station'] = $h_barometer_above_station; // coefficient_from_station_gravity $station_gravity = floatval($this->station_obj->station_gravity); $this->formula_params['coefficient_from_station_gravity'] = ($station_gravity > 0 ? $station_gravity : array_shift(array_keys(yii::app()->params['station_gravity']))) / 0.0065 / 287; return parent::prepareFormulaParams(); }
public function prepareFormulaParams() { return parent::prepareFormulaParams(); }