/** * function for send ajax request to view * * @return Response */ public function listingJson() { $query = UnitType::select('id', 'name', 'project_id', 'building_area', 'base_price', 'changed_by')->with('User')->with('Project')->get(); return Datatable::collection($query)->addColumn('name', function ($model) { return ucfirst($model->name); })->addColumn('project_id', function ($model) { // return $model->project_id; return ucfirst($model->project->name); })->addColumn('building_area', function ($model) { return $model->building_area; })->addColumn('base_price', function ($model) { return $model->base_price; })->addColumn('changed_by', function ($model) { return $model->user->name; })->addColumn('show', function ($model) { return '<a href="' . action('UnitTypesController@detail', $model->id) . '" class="btn btn-small btn-primary btn-constant"><i class="fa fa-eye fa-fw"></i></a>'; })->addColumn('edit', function ($model) { return '<a href="' . action('UnitTypesController@edit', $model->id) . '" class="btn btn-small btn-success btn-constant"><i class="fa fa-edit fa-fw"></i></a>'; })->addColumn('delete', function ($model) { return '<form action="' . action('UnitTypesController@delete', $model->id) . '" method="POST"><button type="submit" class="btn btn-small btn-danger btn-constant" onclick = "return confirm(\'Are you sure?\')"><i class="fa fa-times fa-fw"></i></button></form>'; })->searchColumns('block', 'additional_land_area', 'status_id')->orderColumns('id', 'block', 'unit_type_id', 'additional_land_area', 'additional_facility')->make(); }
public static function delete($id) { $connection = Flight::dbMain(); try { /* Begin Transaction */ $connection->beginTransaction(); /*Query 1 Select unit*/ $sql = "SELECT * FROM unit WHERE id = :id;"; $query = $connection->prepare($sql); $query->bindParam(':id', $id, PDO::PARAM_INT); $query->execute(); $rows = $query->fetchAll(PDO::FETCH_ASSOC); $row = $rows[0]; $unit = new Unit(); $unit->Id = (int) $row['id']; $unit->Imei = $row['unit_imei']; $unit->DtCreated = $row['unit_dt_created']; $unit->SerialNumber = $row['unit_serial_number']; $unit->Sim = Sim::select($row['sim_id']); $unit->UnitStatus = UnitStatus::select($row['e_status_unit_id']); $unit->UnitType = UnitType::select($row['unit_type_id']); $unit->Company = Company::select($row['company_id']); /*Query 2 Delete unit*/ $sql = "\n\t\t\tDELETE FROM unit \n\t\t\tWHERE\n\t\t\tid = :id"; $query = $connection->prepare($sql); $query->bindParam(':id', $id, PDO::PARAM_INT); $query->execute(); /*Query 3 Drop data_unit.imei table*/ $year = date('Y'); $schema = "app_data_{$year}"; $imei = $unit->Imei; $tableName = "data_{$imei}"; $sql = "\n\t\t\t\n\t\t\tDROP TABLE IF EXISTS {$schema}.{$tableName};\n\n\t\t\t"; $query = $connection->prepare($sql); $query->execute(); $connection->commit(); $result = new Result(); $result->Status = Result::DELETED; $result->Message = 'Done'; $result->Id = $id; return $result; } catch (PDOException $pdoException) { $connection->rollBack(); throw $pdoException; } catch (Exception $exception) { $connection->rollBack(); throw $exception; } finally { $connection = null; } }
} }); //============================================================================= //UnitType //============================================================================= Flight::route('GET /v1/main/unittype', function () { try { $array = UnitType::selectAll(); Flight::ok($array); } catch (Exception $exception) { Flight::error($exception); } }); Flight::route('GET /v1/main/unittype/@id', function ($id) { try { $object = UnitType::select($id); Flight::ok($object); } catch (Exception $exception) { Flight::error($exception); } }); Flight::route('POST /v1/main/unittype', function () { try { $object = UnitType::insert(); Flight::ok($object); } catch (Exception $exception) { Flight::error($exception); } }); Flight::route('PUT /v1/main/unittype/@id', function ($id) { try {