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); } } } ?>