From ee23c9c9efb71c94eb8c15a5fc72bb7fe75e18c9 Mon Sep 17 00:00:00 2001 From: heama Date: Mon, 8 Apr 2024 10:32:11 +0530 Subject: [PATCH 1/6] vendor --- app/Controllers/Vendor.php | 11 ++++-- app/Models/VendorModel.php | 2 +- app/Views/layout/header.php | 4 +-- app/Views/vendor_form.php | 70 ++++++++++++++++++++++++++++++++++--- 4 files changed, 77 insertions(+), 10 deletions(-) diff --git a/app/Controllers/Vendor.php b/app/Controllers/Vendor.php index 14aed1d..a5a5cb0 100644 --- a/app/Controllers/Vendor.php +++ b/app/Controllers/Vendor.php @@ -59,6 +59,9 @@ class Vendor extends BaseController $data = [ 'vendor_name' => $this->request->getPost('vendor_name'), + 'contact_name' => $this->request->getPost('contact_name'), + + 'gstnumber' => $this->request->getPost('gstnumber'), 'vendor_email' => $this->request->getPost('email'), 'address' => $this->request->getPost('address'), 'vendor_mobile' => $this->request->getPost('mobile'), @@ -71,10 +74,14 @@ class Vendor extends BaseController 'isactive' => 1 , 'branch_id' => $this->session->get('logged_user_branch_id') ]; - // print_r($data);die; + + $make_array = $this->request->getPost('vendortype'); // Assuming 'make' is an array + $make_json = json_encode($make_array); + $data['vendortype'] = $make_json; + $vendor_id = $this->request->getPost('vendor_id'); - + print_r($data);die; if (!empty($vendor_id)) { diff --git a/app/Models/VendorModel.php b/app/Models/VendorModel.php index 13549f9..d6b35d9 100644 --- a/app/Models/VendorModel.php +++ b/app/Models/VendorModel.php @@ -5,7 +5,7 @@ class VendorModel extends Model { protected $table = 'vendor'; protected $primaryKey = 'vendor_id'; - protected $allowedFields = ['vendor_id','branch_id','vendor_name','vendor_email','vendor_mobile','website','gl_account','category','address','state','posta_code','city','country','description','isactive']; + protected $allowedFields = ['vendor_id','branch_id','vendor_name','vendor_email','vendor_mobile','contact_name','website','gstnumber','conatct_person','vendortype','make','model','category','address','state','postal_code','city','country','description','isactive']; } \ No newline at end of file diff --git a/app/Views/layout/header.php b/app/Views/layout/header.php index 42c1ddc..efc1dd0 100644 --- a/app/Views/layout/header.php +++ b/app/Views/layout/header.php @@ -116,9 +116,9 @@
  • Sales Order
  • - + diff --git a/app/Views/vendor_form.php b/app/Views/vendor_form.php index 9927b4f..5809e24 100644 --- a/app/Views/vendor_form.php +++ b/app/Views/vendor_form.php @@ -27,10 +27,7 @@ -
    - - -
    +
    @@ -44,8 +41,55 @@
    +
    + + +
    +
    + + +
    + +
    + + +
    +
    + + +
    +
    +

    Contact Person Details :

    +
    +
    + + +
    +
    + + +
    +

    Address Information :

    @@ -86,4 +130,20 @@ if(charcode>= 48 && charcode <= 57)return true; return false; } - \ No newline at end of file + + + + + From 3ea3593b06ddd660bf7770297cfff1fab4a449f6 Mon Sep 17 00:00:00 2001 From: heama Date: Mon, 8 Apr 2024 12:16:21 +0530 Subject: [PATCH 2/6] vendor-make-model --- app/Config/Routes.php | 1 + app/Controllers/Vendor.php | 107 +++++++++++++++++++++++++++---------- app/Views/vendor_form.php | 85 ++++++++++++++++++++++++----- 3 files changed, 150 insertions(+), 43 deletions(-) diff --git a/app/Config/Routes.php b/app/Config/Routes.php index 0ddab8a..7c8a199 100644 --- a/app/Config/Routes.php +++ b/app/Config/Routes.php @@ -62,6 +62,7 @@ $routes->get('vendor_index/', 'Vendor::vendor_index'); $routes->post("add_vendor", "Vendor::add_vendor"); $routes->get("new_vendor/(:any)", "Vendor::new_vendor/$1"); $routes->get("delete_vendor/(:any)", "Vendor::delete_vendor/$1"); +$routes->post("fetch_models", "Vendor::fetch_models"); //end Vendor //Vehicle// diff --git a/app/Controllers/Vendor.php b/app/Controllers/Vendor.php index a5a5cb0..27c917d 100644 --- a/app/Controllers/Vendor.php +++ b/app/Controllers/Vendor.php @@ -5,6 +5,8 @@ namespace App\Controllers; use App\Models\VendorModel; use App\Models\UsersModel; +use App\Models\BikemakeModel; +use App\Models\BikemodelsModel; class Vendor extends BaseController @@ -31,36 +33,54 @@ class Vendor extends BaseController public function new_vendor($vendor_id) { - - if ($vendor_id === '0') { - - $data['vendor'] = []; - $data['page_name']="Add Vendor"; - } else if ($vendor_id !== '0') { - $data['page_name']="Edit Vendor"; + $data['vendor'] = []; + $data['page_name'] = "Add Vendor"; + $BikemakeModel = new BikemakeModel(); + $data['make'] = $BikemakeModel->findAll(); + $data['models'] = []; // Initialize models array for the view + } else { $VendorModel = new VendorModel(); - - $vendor=$VendorModel->where('vendor_id', $vendor_id)->get()->getRowArray(); - - $data['vendor']=$vendor; + $vendor = $VendorModel->where('vendor_id', $vendor_id)->get()->getRowArray(); + $vendor['model_ids'] = json_decode($vendor['model'], true); + $vendor['make_ids'] = json_decode($vendor['make'], true); + + $data['vendor'] = $vendor; + $data['page_name'] = "Edit Vendor"; + + // Load models based on the selected make IDs + $BikemodelModel = new BikemodelsModel(); + $models = []; + foreach ($vendor['make_ids'] as $make_id) { + $models[] = $BikemodelModel->where('make_id', $make_id)->findAll(); + } + $data['models'] = $models; // Pass models array to the view + + // Load make data + $BikemakeModel = new BikemakeModel(); + $data['make'] = $BikemakeModel->findAll(); } + $data['vendor_id'] = $vendor_id; - - return view('vendor_form',$data); + + return view('vendor_form', $data); } - + public function add_vendor() { - $VendorModel = new VendorModel(); - + // Retrieve the selected make IDs and model IDs from the form + $make_ids = $this->request->getPost('make'); + $model_ids = $this->request->getPost('model'); + + // Convert model IDs to JSON format + $model_json = json_encode($model_ids); + $make_json=json_encode($make_ids); $data = [ 'vendor_name' => $this->request->getPost('vendor_name'), 'contact_name' => $this->request->getPost('contact_name'), - 'gstnumber' => $this->request->getPost('gstnumber'), 'vendor_email' => $this->request->getPost('email'), 'address' => $this->request->getPost('address'), @@ -72,28 +92,22 @@ class Vendor extends BaseController 'category' => $this->request->getPost('category'), 'website' => $this->request->getPost('website'), 'isactive' => 1 , - 'branch_id' => $this->session->get('logged_user_branch_id') + 'branch_id' => $this->session->get('logged_user_branch_id'), + 'make' => $make_json, // Store the selected make IDs + 'model' => $model_json, // Store the selected model IDs in JSON format ]; - - $make_array = $this->request->getPost('vendortype'); // Assuming 'make' is an array - $make_json = json_encode($make_array); - $data['vendortype'] = $make_json; - - + $vendor_id = $this->request->getPost('vendor_id'); - print_r($data);die; - + if (!empty($vendor_id)) { - $VendorModel->update($vendor_id, $data); } else { - $VendorModel->insert($data); } - return redirect()->to('vendor_index'); } + public function delete_vendor($vendor_id) { $model = new VendorModel(); @@ -112,5 +126,40 @@ class Vendor extends BaseController return redirect()->to('vendor_index'); } + public function fetch_models() + { + // Retrieve the selected make IDs from the AJAX request + $selected_makes = $this->request->getPost('selected_makes'); + + // Load the BikemakeModel to fetch models + $BikemodelModel = new BikemodelsModel(); + + // Initialize an empty array to store formatted model data + $formatted_models = []; + + // Iterate over each selected make ID + foreach ($selected_makes as $make_id) { + // Fetch models based on the selected make ID + $models = $BikemodelModel->where('make_id', $make_id)->findAll(); + + // Iterate over each fetched model and format it as needed + foreach ($models as $model) { + // Create an associative array with 'model_id' and 'model_name' properties + $formatted_model = [ + 'model_id' => $model['model_id'], + 'model_name' => $model['model_name'] + // Add other properties if needed + ]; + + // Push the formatted model into the array + $formatted_models[] = $formatted_model; + } + } + + // Send the formatted models as JSON response back to the client + return $this->response->setJSON($formatted_models); + } + + } \ No newline at end of file diff --git a/app/Views/vendor_form.php b/app/Views/vendor_form.php index 5809e24..e97ef79 100644 --- a/app/Views/vendor_form.php +++ b/app/Views/vendor_form.php @@ -56,26 +56,28 @@
    -
    +
    - + + + +
    -
    +
    - + + + + + +
    + +

    @@ -140,6 +142,7 @@ $(document).ready(function(){ }); + + \ No newline at end of file From aa528d341178709c56e9952faf4da86f94720219 Mon Sep 17 00:00:00 2001 From: heama Date: Mon, 8 Apr 2024 13:34:17 +0530 Subject: [PATCH 3/6] client --- app/Controllers/Client.php | 3 ++- app/Models/ClientModel.php | 2 +- app/Views/client_form.php | 15 +++++++++++++++ 3 files changed, 18 insertions(+), 2 deletions(-) diff --git a/app/Controllers/Client.php b/app/Controllers/Client.php index 13c171b..7f63ade 100644 --- a/app/Controllers/Client.php +++ b/app/Controllers/Client.php @@ -65,7 +65,8 @@ class Client extends BaseController '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') ]; diff --git a/app/Models/ClientModel.php b/app/Models/ClientModel.php index 2e0dd03..5bf42a6 100644 --- a/app/Models/ClientModel.php +++ b/app/Models/ClientModel.php @@ -5,7 +5,7 @@ class ClientModel extends Model { protected $table = 'client'; protected $primaryKey = 'client_id'; - protected $allowedFields = ['client_id','client_name','email','mobile_no','address','city','state','postal_code','country','description','isactive','branch_id']; + protected $allowedFields = ['client_id','client_type','gstnumber','client_name','email','mobile_no','address','city','state','postal_code','country','description','isactive','branch_id']; } \ No newline at end of file diff --git a/app/Views/client_form.php b/app/Views/client_form.php index cb19780..a8c072a 100644 --- a/app/Views/client_form.php +++ b/app/Views/client_form.php @@ -34,6 +34,21 @@
    +
    + + +
    +
    + + +
    + From 1022a2cca337329f74a971b72f89ec8ccb2c2ae6 Mon Sep 17 00:00:00 2001 From: bitbucket Date: Mon, 8 Apr 2024 13:38:16 +0530 Subject: [PATCH 4/6] CHANGE_vehicle_module:GWM --- app/Controllers/Vehicle.php | 12 ++++++++++++ app/Views/layout/footer.php | 2 +- app/Views/layout/header.php | 5 +++-- app/Views/vehicle_form.php | 35 +++++++++++++++++++++++++++++++++-- 4 files changed, 49 insertions(+), 5 deletions(-) diff --git a/app/Controllers/Vehicle.php b/app/Controllers/Vehicle.php index c75918e..56fdebb 100644 --- a/app/Controllers/Vehicle.php +++ b/app/Controllers/Vehicle.php @@ -4,10 +4,21 @@ namespace App\Controllers; use App\Models\VehicleModel; use App\Models\ClientModel; use App\Models\RoleModel; +use App\Models\BikemakeModel; +use App\Models\BikemodelsModel; class Vehicle extends BaseController { + + + public $session; + public function __construct() + { + $this->session = session(); + $this->bikeMakeModel = new BikemakeModel(); + $this->bikeModelsModel = new BikemodelsModel(); + } public function vehicle_index() { @@ -43,6 +54,7 @@ class Vehicle extends BaseController $data['client']=$client; } $data['vehicle_id'] = $vehicle_id; + $data['makeData'] =$this->bikeMakeModel->findAll(); return view('vehicle_form',$data); } diff --git a/app/Views/layout/footer.php b/app/Views/layout/footer.php index a8aa427..18a13c8 100644 --- a/app/Views/layout/footer.php +++ b/app/Views/layout/footer.php @@ -35,7 +35,7 @@ -
    + diff --git a/app/Views/layout/header.php b/app/Views/layout/header.php index 52bf83a..88d37a8 100644 --- a/app/Views/layout/header.php +++ b/app/Views/layout/header.php @@ -98,10 +98,11 @@ get('logged_user_role') == 'Floor Manager' || - session()->get('logged_user_role') == 'Job Card Manager') { ?> + session()->get('logged_user_role') == 'Job Card Manager' || + session()->get('logged_user_role') == 'Store Manager') { ?>
  • - + Vehicle
  • diff --git a/app/Views/vehicle_form.php b/app/Views/vehicle_form.php index c5475ca..eceeb51 100644 --- a/app/Views/vehicle_form.php +++ b/app/Views/vehicle_form.php @@ -25,7 +25,16 @@
    - +
    @@ -121,10 +130,32 @@ $(document).ready(function() { $('input[name="postalcode"]').val(selectedClient.postal_code); } }); + + + + $(".SelExample").select2(); + }); \ No newline at end of file + + + \ No newline at end of file From 94588d9d891da8f99b9527aea07012b9f9b4e1c4 Mon Sep 17 00:00:00 2001 From: bitbucket Date: Mon, 8 Apr 2024 16:50:30 +0530 Subject: [PATCH 5/6] CHANGES_Vehicle_module_crud:GWM --- app/Controllers/Sales.php | 7 +- app/Controllers/Vehicle.php | 23 +++-- app/Models/VehicleModel.php | 12 ++- app/Views/sales_order_form.php | 4 - app/Views/vehicle_form.php | 169 ++++++++++++++++++++++++++++----- app/Views/vehicle_list.php | 22 ++--- 6 files changed, 182 insertions(+), 55 deletions(-) diff --git a/app/Controllers/Sales.php b/app/Controllers/Sales.php index 5fb89fe..9f2895e 100644 --- a/app/Controllers/Sales.php +++ b/app/Controllers/Sales.php @@ -306,9 +306,12 @@ public function delete_sales_product() ]; // Attempt to insert the client data - if ($ClientModel->insert($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.']); + 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.']); diff --git a/app/Controllers/Vehicle.php b/app/Controllers/Vehicle.php index 56fdebb..7613135 100644 --- a/app/Controllers/Vehicle.php +++ b/app/Controllers/Vehicle.php @@ -24,11 +24,13 @@ class Vehicle extends BaseController { $VehicleModel = new VehicleModel(); - $vehicle=$VehicleModel->getCustomerandVehicle(); - $data['vehicle']=$vehicle; + $vehicle = $VehicleModel->getCustomerandVehicle($this->session->get('logged_user_branch_id')); + $data['vehicle'] = $vehicle; + $ClientModel = new ClientModel(); - $client=$ClientModel->findAll(); + $client = $ClientModel->where('branch_id', $this->session->get('logged_user_branch_id'))->findAll(); $data['client']=$client; + return view('vehicle_list',$data); } @@ -41,16 +43,21 @@ class Vehicle extends BaseController $ClientModel = new ClientModel(); $data['vehicle'] = []; $data['page_name']="Add vehicle"; - $client=$ClientModel->findAll(); + $client = $ClientModel->where('branch_id', $this->session->get('logged_user_branch_id'))->findAll(); $data['client']=$client; } else if ($vehicle_id !== '0') { + $data['page_name']="Edit vehicle"; $VehicleModel = new VehicleModel(); - $vehicle=$VehicleModel->where('vehicle_id', $vehicle_id)->get()->getRowArray(); + $vehicle= $VehicleModel->select('vehicle.*, model.model_name as model_name') + ->join('model', 'model.model_id = vehicle.model') + ->where('vehicle.vehicle_id', $vehicle_id) + ->where('vehicle.branch_id', $this->session->get('logged_user_branch_id')) + ->get()->getRowArray(); $data['vehicle']=$vehicle; $ClientModel = new ClientModel(); - $client=$ClientModel->findAll(); + $client=$ClientModel->where('branch_id', $this->session->get('logged_user_branch_id'))->findAll(); $data['client']=$client; } $data['vehicle_id'] = $vehicle_id; @@ -74,12 +81,12 @@ class Vehicle extends BaseController 'city' => $this->request->getPost('city'), 'state' => $this->request->getPost('state'), 'postal_code' => $this->request->getPost('postalcode'), - 'country' => $this->request->getPost('country'), 'make' => $this->request->getPost('make'), 'model' => $this->request->getPost('model'), 'reg_no' => $this->request->getPost('regno'), 'colour' => $this->request->getPost('colour'), - + 'year_of_manufacturing' => $this->request->getPost('year_of_manufacturing'), + 'branch_id' => $this->session->get('logged_user_branch_id'), 'isactive' => 1 // Assuming this is a default value or handled separately ]; // print_r($data);die; diff --git a/app/Models/VehicleModel.php b/app/Models/VehicleModel.php index 67874b9..23d716b 100644 --- a/app/Models/VehicleModel.php +++ b/app/Models/VehicleModel.php @@ -3,16 +3,20 @@ namespace App\Models; use CodeIgniter\Model; class VehicleModel extends Model { + + protected $table = 'vehicle'; protected $primaryKey = 'vehicle_id'; - protected $allowedFields = ['vehicle_id','make','model','reg_no','colour','client_id','address','country','state','city','email','postal_code','mobile_no','isactive']; + protected $allowedFields = ['branch_id','vehicle_id','make','model','reg_no','year_of_manufacturing','colour','client_id','address','country','state','city','email','postal_code','mobile_no','isactive']; - public function getCustomerandVehicle() + public function getCustomerandVehicle($branch_id) { // Select required fields from both tables - $this->select('vehicle.*, client.client_name'); + $this->select('vehicle.*, client.client_name , make.make as make_name , model.model_name as model_name'); $this->join('client', 'client.client_id = vehicle.client_id'); - // Add condition to fetch only active sales orders + $this->join('make', 'make.make_id = vehicle.make'); + $this->join('model', 'model.model_id = vehicle.model'); + $this->where('vehicle.branch_id', $branch_id); $this->where('vehicle.isactive', 1); // Get the results diff --git a/app/Views/sales_order_form.php b/app/Views/sales_order_form.php index 38adb3c..7b1ef4c 100644 --- a/app/Views/sales_order_form.php +++ b/app/Views/sales_order_form.php @@ -487,10 +487,6 @@ function initializeSelect2() { \ No newline at end of file + + + + + + \ No newline at end of file