session = session(); // Initialize session $this->UsersModel = new UsersModel(); $this->VehicleModel = new VehicleModel(); } public function client_index() { if(!$this->session->has('logged_user')) { return redirect()->to(base_url()); } $ClientModel = new ClientModel(); $client = $ClientModel->where('branch_id',$this->session->get('logged_user_branch_id'))->findAll(); $data['client']=$client; return view('client_list',$data); } public function new_client($client_id) { if(!$this->session->has('logged_user')) { return redirect()->to(base_url()); } if ($client_id === '0') { $data['client'] = []; $data['page_name']="Add Client"; } else if ($client_id !== '0') { $data['page_name']="Edit Client"; $ClientModel = new ClientModel(); $client=$ClientModel->where('client_id', $client_id)->get()->getRowArray(); $data['client']=$client; } $data['client_id'] = $client_id; return view('client_form',$data); } public function add_client() { if(!$this->session->has('logged_user')) { return redirect()->to(base_url()); } $ClientModel = new ClientModel(); $mobile_no = $this->request->getPost('mobile'); $data = [ 'client_name' => $this->request->getPost('client_name'), 'email' => $this->request->getPost('email'), 'address' => $this->request->getPost('address'), 'mobile_no' =>$mobile_no, 'city' => $this->request->getPost('city'), 'state' => $this->request->getPost('state'), 'postal_code' => $this->request->getPost('postalcode'), 'gstnumber' => $this->request->getPost('gstnumber'), 'client_type' => $this->request->getPost('clienttype'), 'isactive' => 1 , 'branch_id' => $this->session->get('logged_user_branch_id') ]; // print_r($data);die; $client_id = $this->request->getPost('client_id'); if (!empty($client_id)) { $data['updated_by'] = (int)$this->session->get('logged_user'); $update= $ClientModel->update($client_id, $data); if($update){ return json_encode("update"); } } else { if($ClientModel->where('mobile_no', $mobile_no)->first()){ $error = "Mobile number already exists"; return json_encode(false); }else{ $data['created_by'] = (int)$this->session->get('logged_user'); $ClientModel->insert($data); return json_encode(true); } } // return redirect()->to('client_index'); } public function delete_client($client_id) { if(!$this->session->has('logged_user')) { return redirect()->to(base_url()); } $model = new ClientModel(); $where = ['client_id' => $client_id, 'isactive' => 1 , 'branch_id' => $this->session->get('logged_user_branch_id')]; // Assuming 'isactive' is a column in your database $existingBusiness = $model->where($where)->first(); if ($existingBusiness) { $data['isactive'] = 0; if ($model->update($client_id, $data)) { $vehicle_list = $this->VehicleModel->where('client_id',$client_id)->where('isactive',1)->findAll(); if (count($vehicle_list)) { foreach ($vehicle_list as $key => $value) { $this->VehicleModel->update($value['vehicle_id'], $data); } } session()->setFlashdata('success', 'Deleted successfully.'); $this->logger->info("Users: has been Inactivated successfully. Inactivated ID = ".$client_id); } } return redirect()->to('client_index'); } public function client_quick_create(){ if(!$this->session->has('logged_user')) { return redirect()->to(base_url()); } // Load ClientModel $ClientModel = new ClientModel(); // Validate inputs $validationRules = [ 'client_name' => 'required|max_length[100]', 'mobile_no' => 'required' // Assuming mobile number is 10 digits long ]; if (!$this->validate($validationRules)) { // If validation fails, return validation errors return $this->response->setJSON(['success' => false, 'errors' => $this->validator->getErrors()]); } // If validation passes, proceed to save the client $data = [ 'client_name' => $this->request->getPost('client_name'), 'mobile_no' => $this->request->getPost('mobile_no'), 'client_type' => $this->request->getPost('client_type'), 'branch_id'=> $this->session->get('logged_user_branch_id'), 'city'=>'Chennai', 'state'=>'Tamil Nadu', 'isactive' => 1 ]; // Attempt to insert the client data $id = $ClientModel->insert($data); if ($id) { $clientData = $ClientModel->where('client_id',$id)->first(); // If insertion succeeds, return success response return $this->response->setJSON(['success' => true, 'message' => 'Client saved successfully.','clientData'=>$clientData]); } else { // If insertion fails, return error response return $this->response->setJSON(['success' => false, 'message' => 'Failed to save client.']); } } }