134 lines
4.6 KiB
PHP
Executable File
134 lines
4.6 KiB
PHP
Executable File
<?php
|
|
|
|
namespace App\Controllers;
|
|
|
|
use App\Models\OutsourceModel;
|
|
use CodeIgniter\API\ResponseTrait;
|
|
|
|
class Outsourcing extends BaseController
|
|
{
|
|
public $session;
|
|
use ResponseTrait;
|
|
|
|
public function __construct()
|
|
{
|
|
$this->session = session();
|
|
}
|
|
|
|
public function outsourcing_index()
|
|
{
|
|
if(!$this->session->has('logged_user')) { return redirect()->to(base_url()); }
|
|
$OutsourceModel = new OutsourceModel();
|
|
$os_data = $OutsourceModel->findAll();
|
|
$data['out_source'] = $os_data;
|
|
return view('outsourcing_list', $data);
|
|
}
|
|
|
|
public function create_os()
|
|
{
|
|
if(!$this->session->has('logged_user')) { return redirect()->to(base_url()); }
|
|
try {
|
|
$name = $this->request->getPost('name');
|
|
$id = $this->request->getPost('id');
|
|
$OutsourceModel = new OutsourceModel();
|
|
if ($id == '') {
|
|
$complaint = $OutsourceModel->where(['name' => $name, 'is_active' => 1])
|
|
->where('id !=', $id)
|
|
->findAll();
|
|
} else {
|
|
$complaint = $OutsourceModel->where(['name' => $name, 'is_active' => 1])->findAll();
|
|
}
|
|
if (!empty($complaint)) {
|
|
$result = "Name Already Exist";
|
|
return $this->respond(['status' => 'failed','code' => 404,'data' => $result], 200);
|
|
}
|
|
|
|
$data = [
|
|
"name" => $name,
|
|
"labour_cost" => $this->request->getPost('labour_cost'),
|
|
"cost_with_tax" => $this->request->getPost('cost_with_tax'),
|
|
"tax" => $this->request->getPost('tax'),
|
|
"description" => $this->request->getPost('description'),
|
|
];
|
|
|
|
if ($id == '') {
|
|
$OutsourceModel = new OutsourceModel();
|
|
$data['business_id'] = $this->session->get('logged_user_business_id');
|
|
$inserted = $OutsourceModel->insert($data);
|
|
if ($inserted) {
|
|
$result = $data;
|
|
return $this->respond(['status' => 'success','code' => 200,'data' => $result],200);
|
|
} else {
|
|
$result = "No Match's";
|
|
return $this->respond(['status' => 'failed','code' => 404,'data' => $result],404);
|
|
}
|
|
} else {
|
|
$OutsourceModel = new OutsourceModel();
|
|
$updated = $OutsourceModel->update($this->request->getPost('id'),$data);
|
|
if ($updated) {
|
|
$result = $data;
|
|
return $this->respond(['status' => 'success','code' => 200,'data' => $result],200);
|
|
} else {
|
|
$result = "No Match's";
|
|
return $this->respond(['status' => 'failed','code' => 404,'data' => $result],404);
|
|
}
|
|
}
|
|
|
|
} catch (\Exception $e) {
|
|
return $this->respond(['status' => 'failed','code' => 500,'data' => $e],500);
|
|
}
|
|
}
|
|
|
|
public function edit_OS($id)
|
|
{
|
|
$OutsourceModel = new OutsourceModel();
|
|
$os_data = $OutsourceModel->where('id',$id)->findAll();
|
|
|
|
$data['page_name']= 'Edit Out Source';
|
|
$data['os_data']= $os_data;
|
|
return json_encode($data);
|
|
}
|
|
|
|
public function delete_outsource($id)
|
|
{
|
|
|
|
if (!empty($id)) {
|
|
$OutsourceModel = new OutsourceModel();
|
|
$data['is_active'] = 0;
|
|
if ($OutsourceModel->update($id, $data)) {
|
|
// Return success response
|
|
return redirect()->to('outsourcing_index');
|
|
}
|
|
}
|
|
|
|
// Return error response if deletion fails
|
|
return $this->response->setJSON(['success' => false]);
|
|
}
|
|
|
|
public function status_outsource()
|
|
{
|
|
|
|
try {
|
|
$id = $this->request->getPost('outsource_id');
|
|
$isactive = $this->request->getPost('isactive');
|
|
|
|
$OutsourceModel = new OutsourceModel();
|
|
$data = [
|
|
'is_active' => $isactive
|
|
];
|
|
$updated = $OutsourceModel->update($id, $data);
|
|
|
|
if ($updated) {
|
|
$result = $data;
|
|
return $this->respond(['status' => 'success','code' => 200],200);
|
|
} else {
|
|
$result = "No Match's";
|
|
return $this->respond(['status' => 'failed','code' => 404],404);
|
|
}
|
|
} catch (\Exception $exception) {
|
|
return $this->respond(['status' => 'failed','code' => 500,'data' => $exception],500);
|
|
}
|
|
}
|
|
|
|
}
|
|
?>
|