public function actionEditMolUser($table, $action, $id, $value) { switch ($table) { case 'po_name': switch ($action) { case 'add': $po_name = new po_name(); $po_name->po_name = $value; $po_name->po_type_id = $id; if ($po_name->save()) { $result = 'ПО добавлено'; } break; case 'delete': $po_name = po_name::findOne($id); if ($po_name->active == '1') { $po_name->active = '0'; } else { $po_name->active = '1'; } if ($po_name->save()) { $result = 'Статус изменен'; } break; case 'edit': if ($value != '') { $po_name = po_name::findOne($id); $po_name->po_name = $value; if ($po_name->save()) { $result = 'ПО переименовано'; } } else { $result = 'Введите новое наименование!'; } break; } break; case 'po_type': switch ($action) { case 'add': $po_type = new po_type(); $po_type->po_type = $value; if ($po_type->save()) { $result = 'Тип ПО добавлен'; } break; case 'delete': $po_type = po_type::findOne($id); if ($po_type->active == '1') { $po_type->active = '0'; } else { $po_type->active = '1'; } if ($po_type->save()) { $result = 'Статус изменен'; } break; case 'edit': if ($value != '') { $po_type = po_type::findOne($id); $po_type->po_type = $value; if ($po_type->save()) { $result = 'Тип ПО переименован'; } } else { $result = 'Введите новое наименование!'; } break; } break; case 'mol': switch ($action) { case 'add': $mol = new mol(); $mol->value = $value; if ($mol->save()) { $result = 'МОЛ добавлено'; } break; case 'delete': $mol = mol::findOne($id); if ($mol->active == '1') { $mol->active = '0'; } else { $mol->active = '1'; } if ($mol->save()) { $result = 'Статус изменен'; } break; case 'edit': if ($value != '') { $mol = mol::findOne($id); $mol->value = $value; if ($mol->save()) { $result = 'МОЛ переименовано'; } } else { $result = 'Введите новое наименование!'; } break; } break; case 'cpu': switch ($action) { case 'add': $cpu = new cpu(); $cpu->name = $value; if ($cpu->save()) { $result = 'Процессор добавлен'; } break; case 'delete': $cpu = cpu::findOne($id); if ($cpu->active == '1') { $cpu->active = '0'; } else { $cpu->active = '1'; } if ($cpu->save()) { $result = 'Статус изменен'; } break; case 'edit': if ($value != '') { $cpu = cpu::findOne($id); $cpu->name = $value; if ($cpu->save()) { $result = 'Процессор переименован'; } } else { $result = 'Введите новое наименование!'; } break; } break; case 'cartridge_type': switch ($action) { case 'add': $type = new CartridgeType(); $type->type = $value; if ($type->save()) { $result = 'Тип картриджа добавлен'; } break; case 'delete': $type = CartridgeType::find()->where(['type' => $id])->One(); if ($type->delete()) { $result = 'Тип картриджа удален'; } break; case 'edit': if ($value != '') { $type = CartridgeType::find()->where(['type' => $id])->One(); $type->type = $value; if ($type->update()) { $result = 'Картридж переименован'; } } else { $result = 'Введите новое наименование!'; } break; } break; case 'consignment': switch ($action) { case 'add': $consignment = new consignment(); $consignment->name = $value; if ($consignment->save()) { $result = 'Партия добавлена'; } else { $result = 'Партия НЕ добавлена'; } break; case 'delete': // $query_str = 'UPDATE consignment SET active = NOT active WHERE id = "'.$id.'"'; //$consignment = consignment::findOne($id); //if ($consignment -> active == '1') $consignment -> active = '0'; else $consignment -> active = '1'; //$consignment -> save(); //$result = 'Статус изменен'; break; case 'edit': if ($value != '') { $consignment = consignment::findOne($id); $consignment->name = $value; if ($consignment->save()) { $result = 'Партия переименована'; } } else { $result = 'Введите новое наименование!'; } break; } break; case 'type': switch ($action) { case 'add': $device_type = new deviceType(); $device_type->value = $value; if ($device_type->save()) { $result = 'Тип добавлен'; } break; case 'delete': $device_type = deviceType::findOne($id); if ($device_type->active == '1') { $device_type->active = '0'; } else { $device_type->active = '1'; } if ($device_type->save()) { $result = 'Статус изменен'; } break; case 'edit': if ($value != '') { $device_type = deviceType::findOne($id); $device_type->value = $value; if ($device_type->save()) { $result = 'Тип переименован'; } } else { $result = 'Введите новое наименование!'; } break; } break; case 'mark': switch ($action) { case 'add': $mark = new trademarks(); $mark->value = $value; if ($mark->save()) { $result = 'Марка добавлена'; } break; case 'delete': $mark = mark::findOne($id); if ($mark->active == '1') { $mark->active = '0'; } else { $mark->active = '1'; } if ($mark->save()) { $result = 'Статус изменен'; } break; case 'edit': if ($value != '') { $mark = mark::findOne($id); $mark->value = $value; if ($mark->save()) { $result = 'Марка переименована'; } } else { $result = 'Введите новое наименование!'; } break; } break; case 'user': switch ($action) { case 'add': $user = new user(); $user->name = $value; $user->password = sha1('1'); if ($user->save()) { $result = 'Сотрудник добавлен'; } break; case 'delete': if ($value != '') { $user = user::findOne($id); if ($user->active == '1') { $user->active = '0'; } else { $user->active = '1'; } if ($user->save()) { $result = 'Статус изменен'; } } else { $result = 'Введите новое наименование!'; } break; case 'edit': $user = user::findOne($id); $user->name = $value; if ($user->save()) { $result = 'Сотрудник переименован'; } break; } break; case 'room': switch ($action) { case 'add': $room = new room(); $room->value = $value; $room->building_id = $id; if ($room->save()) { $result = 'Кабинет добавлен'; } else { $result = print_r($room->getErrors()); } break; case 'delete': $room = room::findOne($id); if ($room->active == '1') { $room->active = '0'; } else { $room->active = '1'; } $room->save(); //$result = 'Статус изменен'; $result = ''; break; case 'edit': if ($value != '') { $room = room::findOne($id); $room->value = $value; if ($room->save()) { $result = 'Кабинет переименован'; } } else { $result = 'Введите новое наименование!'; } break; } break; case 'device': switch ($action) { case 'add': switch (substr($id, 0, 3)) { case 'mrk': $result = 'Марка не добавлена! Выберите тип устройства для добавления!'; break; case 'typ': $type_id = intval(substr($id, 4)); $trademark = new trademark(); $trademark->value = $value; $TypeLinkMark = new TypeLinkMark(); $TypeLinkMark->type_id = $type_id; $TypeLinkMark->mark_id = Yii::app()->db->getLastInsertID(); if ($TypeLinkMark->save() && $trademark->save()) { $result = 'Марка добавлена'; } break; } break; case 'delete': $device = new device(); $device->value = $value; if ($device->save()) { $result = 'Статус изменен'; } break; case 'edit': $query_str = 'UPDATE user SET value = "' . $value . '" WHERE id = "' . $id . '"'; $result = 'Сотрудник переименован'; break; } break; case 'model': switch ($action) { case 'add': $model = new model(); $model->value = $value; $model->save(); $result = 'Модель добавлена'; break; case 'delete': $model = model::findOne($id); if ($model->active == '1') { $model->active = '0'; } else { $model->active = '1'; } $model->save(); //$result = 'Статус изменен'; $result = ''; break; case 'edit': if ($value != '') { $model = model::findOne($id); $model->value = $value; if ($model->save()) { $result = 'Модель переименована'; } } else { $result = 'Введите новое наименование!'; } break; } break; case 'department': switch ($action) { case 'delete': //$result = 'Статус изменен'; $department = department::findOne($id); if ($department->active == '1') { $department->active = '0'; } else { $department->active = '1'; } $department->save(); $result = ''; break; case 'edit': if ($value != '') { $department = department::findOne($id); $department->value = $value; if ($department->save()) { $result = 'Подразделение переименовано'; } } else { $result = 'Введите новое наименование!'; } break; case 'add': $department = new Department(); $department->value = $value; if ($department->save()) { $result = 'Подразделение добавлено'; } break; } break; case 'building': switch ($action) { case 'delete': $building = building::findOne($id); if ($building->active == '1') { $building->active = '0'; } else { $building->active = '1'; } $building->save(); //$result = 'Статус изменен'; $result = ''; break; case 'edit': if ($value != '') { $building = building::findOne($id); $building->value = $value; if ($building->save()) { $result = 'Здание переименовано'; } } else { $result = 'Введите новое наименование!'; } break; case 'add': $building = new Building(); $building->value = $value; $building->department_id = $id; if ($building->save()) { $result = 'Здание добавлено'; } break; } break; } echo $result; }