parent
25eab6a92d
commit
d55f5ff35b
@ -0,0 +1,26 @@
|
|||||||
|
<?php
|
||||||
|
header('Content-Type: application/json');
|
||||||
|
include_once __DIR__ . '/../models/job.php';
|
||||||
|
|
||||||
|
if($_REQUEST['action'] === 'index'){
|
||||||
|
echo json_encode(Jobs::find());
|
||||||
|
} else if ($_REQUEST['action'] === 'post'){
|
||||||
|
$requestBody = file_get_contents('php://input');
|
||||||
|
$body = json_decode($requestBody);
|
||||||
|
|
||||||
|
$newJob = new Job(null, $body->person_id, $body->job_type, $body->company_id);
|
||||||
|
|
||||||
|
$allJobs = Jobs::create($newJob);
|
||||||
|
|
||||||
|
echo json_encode($allJobs);
|
||||||
|
} else if ($_REQUEST['action'] === 'delete'){
|
||||||
|
$allJobs = Jobs::delete($_REQUEST['id']);
|
||||||
|
echo json_encode($allJobs);
|
||||||
|
} else if ($_REQUEST['action'] === 'update'){
|
||||||
|
$requestBody = file_get_contents('php://input');
|
||||||
|
$body = json_decode($requestBody);
|
||||||
|
$updatedJob = new Job(null, $body->person_id, $body->job_type, $body->company_id);
|
||||||
|
$allJobs = Jobs::update($_REQUEST['id'], $updatedJob);
|
||||||
|
|
||||||
|
echo json_encode($allJobs);
|
||||||
|
}
|
||||||
@ -0,0 +1 @@
|
|||||||
|
INSERT INTO jobs (person_id, job_type, company_id) VALUES ($1, $2, $3)
|
||||||
@ -0,0 +1 @@
|
|||||||
|
DELETE FROM jobs WHERE id = $1
|
||||||
@ -0,0 +1 @@
|
|||||||
|
SELECT * FROM jobs
|
||||||
@ -0,0 +1 @@
|
|||||||
|
UPDATE jobs SET person_id = $1, job_type = $2, company_id = $3 WHERE id = $4
|
||||||
@ -0,0 +1,49 @@
|
|||||||
|
<?
|
||||||
|
include_once __DIR__ . '/../database/db.php';
|
||||||
|
|
||||||
|
class Job {
|
||||||
|
public $id;
|
||||||
|
public $job_type;
|
||||||
|
public function __construct($id, $person_id, $job_type, $company_id) {
|
||||||
|
$this->id = $id;
|
||||||
|
if($person_id){
|
||||||
|
$this->person_id = $person_id;
|
||||||
|
}
|
||||||
|
$this->job_type = $job_type;
|
||||||
|
if($company_id){
|
||||||
|
$this->company_id = $company_id;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class Jobs {
|
||||||
|
static function find(){
|
||||||
|
$query = file_get_contents(__DIR__ . '/../database/sql/jobs/find.sql');
|
||||||
|
$result = pg_query($query);
|
||||||
|
$jobs = array();
|
||||||
|
while($data = pg_fetch_object($result)){
|
||||||
|
$jobs[] = new Job(intval($data->id), intval($data->person_id), $data->job_type, intval($data->company_id));
|
||||||
|
}
|
||||||
|
|
||||||
|
return $jobs;
|
||||||
|
}
|
||||||
|
static function create($job){
|
||||||
|
$query = file_get_contents(__DIR__ . '/../database/sql/jobs/create.sql');
|
||||||
|
$result = pg_query_params($query, array($job->person_id, $job->job_type, $job->company_id));
|
||||||
|
|
||||||
|
return self::find();
|
||||||
|
}
|
||||||
|
static function delete($id){
|
||||||
|
$query = file_get_contents(__DIR__ . '/../database/sql/jobs/delete.sql');
|
||||||
|
$result = pg_query_params($query, array($id));
|
||||||
|
|
||||||
|
return self::find();
|
||||||
|
}
|
||||||
|
static function update($id, $updatedJob){
|
||||||
|
$query = file_get_contents(__DIR__ . '/../database/sql/jobs/update.sql');
|
||||||
|
$result = pg_query_params($query, array($updatedJob->person_id, $updatedJob->job_type, $updatedJob->company_id, $id));
|
||||||
|
|
||||||
|
return self::find();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
?>
|
||||||
Loading…
Reference in new issue