model = new DeliverySettingModel(); } public function index() { $data = $this->model->findAll(); // $this->model->orderBy('status', 'active'); return $this->response->setJSON([ 'status' => 'success', 'data' => $data, ]); } public function create() { $data = $this->request->getJSON(true) ?? $this->request->getPost(); if (!$this->model->insert($data)) { return $this->response->setStatusCode(ResponseInterface::HTTP_BAD_REQUEST) ->setJSON([ 'status' => 'error', 'errors' => $this->model->errors(), ]); } return $this->response->setStatusCode(ResponseInterface::HTTP_CREATED) ->setJSON([ 'status' => 'success', 'message' => 'Delivery setting created', 'data' => $this->model->find($this->model->getInsertID()), ]); } public function show($id = null) { $row = $this->model->find($id); if (!$row) { return $this->response->setStatusCode(ResponseInterface::HTTP_NOT_FOUND) ->setJSON(['status' => 'error', 'message' => 'Not found']); } return $this->response->setJSON([ 'status' => 'success', 'data' => $row, ]); } public function update($id = null) { $data = $this->request->getJSON(true) ?? $this->request->getRawInput(); if (!$this->model->find($id)) { return $this->response->setStatusCode(ResponseInterface::HTTP_NOT_FOUND) ->setJSON(['status' => 'error', 'message' => 'Not found']); } if (!$this->model->update($id, $data)) { return $this->response->setStatusCode(ResponseInterface::HTTP_BAD_REQUEST) ->setJSON([ 'status' => 'error', 'errors' => $this->model->errors(), ]); } return $this->response->setJSON([ 'status' => 'success', 'message' => 'Delivery setting updated', 'data' => $this->model->find($id), ]); } public function delete($id = null) { if (!$this->model->find($id)) { return $this->response->setStatusCode(ResponseInterface::HTTP_NOT_FOUND) ->setJSON(['status' => 'error', 'message' => 'Not found']); } $this->model->delete($id); return $this->response->setJSON([ 'status' => 'success', 'message' => 'Delivery setting deleted', ]); } }