public function getStationStatusHandler() { // set handler $handles = StationStatusHandler::find()->where(['station_id' => $this->request['id'], 'updated' => StationStatusHandler::STATUS_NOT_UPDATE])->orderBy('created_at DESC')->all(); if (!empty($handles)) { foreach ($handles as $hand) { if ($hand['type'] == StationStatusHandler::TYPE_EQUIPMENT) { $this->handler['equip'][] = ['equip_id' => $hand['equip_id'], 'status' => $hand['status'], 'configure' => $hand['configure'], 'station_id' => $hand['station_id']]; } if ($hand['type'] == StationStatusHandler::TYPE_SENSOR_SECURITY) { $this->handler['security'] = ['equip_id' => Sensor::ID_SECURITY, 'status' => $hand['status'], 'station_id' => $hand['station_id']]; } } } }
public function actionDelete($id) { $id = Yii::$app->request->get('id'); if ($id > 0) { // delete equipment status DcEquipmentStatus::deleteAll(['station_id' => $id]); // delete sensor status SensorStatus::deleteAll(['station_id' => $id]); // delete dc equipment status DcEquipmentStatus::deleteAll(['station_id' => $id]); // delete power status PowerStatus::deleteAll(['station_id' => $id]); // delete station status StationStatus::deleteAll(['station_id' => $id]); // delete station status controller StationStatusHandler::deleteAll(['station_id' => $id]); // delete warning $warnings = Warning::findAll(['station_id' => $id]); if (!empty($warnings)) { foreach ($warnings as $w) { Yii::$app->db->createCommand()->delete('warning_picture', ['warning_id' => $w['id']])->execute(); } } Warning::deleteAll(['station_id' => $id]); // delete station Station::deleteAll(['id' => $id]); //write log action Log::logControl(Yii::$app->user->id, Log::ACTION_DELETE_STATION, $id); } return $this->redirect(['index']); }