diff --git a/app/Config/Routes.php b/app/Config/Routes.php index 6b1cd00..1af1be4 100755 --- a/app/Config/Routes.php +++ b/app/Config/Routes.php @@ -98,6 +98,7 @@ $routes->get("new_jobcard/(:any)", "Jobcard::new_jobcard/$1"); $routes->get("delete_jobcard/(:any)", "Jobcard::delete_jobcard/$1"); $routes->get("preview_jobcard_invoice/(:any)", "Jobcard::preview_jobcard_invoice/$1"); $routes->get("preview_jobcard/(:any)", "Jobcard::preview_jobcard/$1"); +$routes->get("download_jobcard_files/(:any)", "Jobcard::download_jobcard_files/$1"); // $routes->post("delete_sales_product", "Jobcard::delete_sales_product"); $routes->get("download_jobcard_invoice/(:any)", "Jobcard::download_jobcard_invoice/$1"); // $routes->post("save_vehicle", "Jobcard::save_vehicle"); diff --git a/app/Controllers/Client.php b/app/Controllers/Client.php index 04734b8..d502070 100755 --- a/app/Controllers/Client.php +++ b/app/Controllers/Client.php @@ -79,7 +79,7 @@ class Client extends BaseController if (!empty($client_id)) { - + $data['updated_by'] = (int)$this->session->get('logged_user'); $update= $ClientModel->update($client_id, $data); if($update){ @@ -91,6 +91,7 @@ class Client extends BaseController $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); } diff --git a/app/Controllers/Complaint.php b/app/Controllers/Complaint.php index e12b1fd..cf206fc 100755 --- a/app/Controllers/Complaint.php +++ b/app/Controllers/Complaint.php @@ -29,6 +29,19 @@ class Complaint extends BaseController { if(!$this->session->has('logged_user')) { return redirect()->to(base_url()); } try { + $name = $this->request->getPost('name'); + $ComplaintModel = new ComplaintModel(); + if ($complaint_id>0) { + $complaint = $ComplaintModel->where(['name' => $name, 'isactive' => 1]) + ->where('complaint_id !=', $complaint_id) + ->findAll(); + } else { + $complaint = $ComplaintModel->where(['name' => $name, 'isactive' => 1])->findAll(); + } + if (!empty($complaint)) { + $result = "Name Already Exist"; + return $this->respond(['status' => 'failed','code' => 404,'data' => $result], 200); + } $data = [ "name" => $this->request->getPost('name'), diff --git a/app/Controllers/Jobcard.php b/app/Controllers/Jobcard.php index 393010c..b2e120f 100755 --- a/app/Controllers/Jobcard.php +++ b/app/Controllers/Jobcard.php @@ -25,6 +25,7 @@ use Mpdf\Mpdf; use DateTime; use CodeIgniter\API\ResponseTrait; use App\Helpers\InvNoHelper; +use App\Helpers\ClientDetailsUpdate; class Jobcard extends BaseController { @@ -112,6 +113,7 @@ class Jobcard extends BaseController /** CALCULATE LABOURCOST WITH TAX */ $totalAmount = 0; $totalTax = 0; + $hsn_sac = 0; // Calculate total amount and total tax foreach ($labourcost as $product) { @@ -150,6 +152,8 @@ class Jobcard extends BaseController //asign values to same array $data['job_card_products'][$key]['tax_amount'] = $tax; $data['job_card_products'][$key]['total_amount'] = $total; + $data['job_card_products'][$key]['taxable_value'] = $amount; + $data['job_card_products'][$key]['hsn_sac'] = $hsn_sac; //calculate sum $data['sum_of_tax'] += $tax; @@ -228,6 +232,19 @@ class Jobcard extends BaseController } } + public function download_jobcard_files($job_card_id) + { + try { + + $data = $this->JobcardFileModel->where(['job_card_id'=>$job_card_id,'isactive'=>1])->findAll(); + + return $this->respond(['status' => 'success','code' => 200,'data' => $data],200); + + } catch (\Exception $e) { + return $this->respond(['status' => 'failed','code' => 500,'data' => $e],500); + } + } + public function download_jobcard($job_card_id) { $data = $this->getJobCardData($job_card_id); @@ -640,8 +657,7 @@ class Jobcard extends BaseController public function add_jobs() { - - if($this->session->get('logged_user_role') == "Store Manager") { + if($this->session->get('logged_user_role') == "Store Manager") { $data['status'] = $this->request->getPost('status'); $job_card_id = $this->request->getPost('job_card_id'); $this->JobcardModel->update($job_card_id, $data); // issued status update @@ -682,7 +698,11 @@ class Jobcard extends BaseController 'total'=> $this->request->getPost('grand_total'), 'isactive' => 1 ]; - + $update_client_address = $this->request->getPost('update_client_address'); + if(isset($update_client_address) && $update_client_address == 'on') + { + ClientDetailsUpdate::updateClientAddress($this->request->getPost('vehicle_id'),$job_card_data); + } $status = $this->request->getPost('status'); // Insert or update sales order $job_card_id = $this->request->getPost('job_card_id'); diff --git a/app/Controllers/Manufacturer.php b/app/Controllers/Manufacturer.php index b255a74..daa809f 100755 --- a/app/Controllers/Manufacturer.php +++ b/app/Controllers/Manufacturer.php @@ -39,6 +39,20 @@ class Manufacturer extends BaseController $manufacturer_name = $this->request->getPost('manufacturername'); $quality = $this->request->getPost('quality'); $ManufacturerModel = new ManufacturerModel(); + + if ($manufacturer_id>0) { + $manufacturer = $ManufacturerModel->where(['manufacturer_name' => $manufacturer_name, 'isactive' => 1]) + ->where('manufacturer_id !=', $manufacturer_id) + ->findAll(); + } else { + $manufacturer = $ManufacturerModel->where(['manufacturer_name' => $manufacturer_name, 'isactive' => 1])->findAll(); + } + + if (!empty($manufacturer)) { + $result = "Name Already Exist"; + return $this->respond(['status' => 'failed','code' => 404,'data' => $result], 200); + } + $data = [ 'manufacturer_name' => $manufacturer_name, 'quality' => $quality, diff --git a/app/Controllers/Model.php b/app/Controllers/Model.php index 6f7b03f..0b9d59b 100755 --- a/app/Controllers/Model.php +++ b/app/Controllers/Model.php @@ -64,8 +64,21 @@ class Model extends BaseController try { $make_id = $this->request->getPost('make_id'); $model_name = $this->request->getPost('modelname'); - $BikemodelsModel = new BikemodelsModel(); + if ($make_id>0) { + $make = $BikemodelsModel->where(['make' => $model_name, 'isactive' => 1]) + ->where('make_id !=', $make_id) + ->findAll(); + } else { + $make = $BikemodelsModel->where(['make' => $model_name, 'isactive' => 1])->findAll(); + } + + if (!empty($make)) { + $result = "Name Already Exist"; + return $this->respond(['status' => 'failed','code' => 404,'data' => $result], 200); + } + + $data = [ 'make_id' => $make_id, 'model_name' => $model_name diff --git a/app/Controllers/Outsourcing.php b/app/Controllers/Outsourcing.php index ac2116f..5b43dc9 100755 --- a/app/Controllers/Outsourcing.php +++ b/app/Controllers/Outsourcing.php @@ -28,16 +28,30 @@ class Outsourcing extends BaseController { 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" => $this->request->getPost('name'), + "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 ($this->request->getPost('id') == '') { + if ($id == '') { $OutsourceModel = new OutsourceModel(); $data['business_id'] = $this->session->get('logged_user_business_id'); $inserted = $OutsourceModel->insert($data); diff --git a/app/Controllers/Vehicle.php b/app/Controllers/Vehicle.php index d7ab1e6..f0e7942 100755 --- a/app/Controllers/Vehicle.php +++ b/app/Controllers/Vehicle.php @@ -102,8 +102,10 @@ class Vehicle extends BaseController $vehicle_id = $this->request->getPost('vehicle_id'); if (!empty($vehicle_id)) { + $data['updated_by'] = (int)$this->session->get('logged_user'); $VehicleModel->update($vehicle_id, $data); } else { + $data['created_by'] = (int)$this->session->get('logged_user'); $VehicleModel->insert($data); } return redirect()->to('vehicle_index'); diff --git a/app/Controllers/Vendor.php b/app/Controllers/Vendor.php index b5891da..9744196 100755 --- a/app/Controllers/Vendor.php +++ b/app/Controllers/Vendor.php @@ -71,10 +71,25 @@ class Vendor extends BaseController { if(!$this->session->has('logged_user')) { return redirect()->to(base_url()); } $VendorModel = new VendorModel(); - + + $vendor_name = $this->request->getPost('vendor_name'); + $vendor_id = $this->request->getPost('vendor_id'); + + if ($vendor_id>0) { + $vendor = $VendorModel->where(['vendor_name' => $vendor_name, 'isactive' => 1]) + ->where('vendor_id !=', $vendor_id) + ->findAll(); + } else { + $vendor = $VendorModel->where(['vendor_name' => $vendor_name, 'isactive' => 1])->findAll(); + } + if (!empty($vendor)) { + session()->setFlashdata('warning', 'Vendor Name Already Exist.'); + $this->logger->info("Vendor: Name Already Exist ID = ".$vendor_id); + return redirect()->to('vendor_index'); + } $data = [ - 'vendor_name' => $this->request->getPost('vendor_name'), + 'vendor_name' => $vendor_name, 'gstnumber' => $this->request->getPost('gstnumber'), 'vendor_email' => $this->request->getPost('email'), 'address' => $this->request->getPost('address'), diff --git a/app/Models/ClientModel.php b/app/Models/ClientModel.php index 5bf42a6..8143a86 100755 --- 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_type','gstnumber','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','updated_by','created_by']; } \ No newline at end of file diff --git a/app/Models/JobcardModel.php b/app/Models/JobcardModel.php index 1844692..607b366 100755 --- a/app/Models/JobcardModel.php +++ b/app/Models/JobcardModel.php @@ -83,7 +83,7 @@ class JobcardModel extends Model public function get_jobcard_products_details($job_id) { - $this->select('job_card_product.*, products.product_name, products.per'); + $this->select('job_card_product.*, products.product_name, products.per,products.hsn_sac'); $this->join('job_card_product', 'job_card_product.job_card_id = job_card.job_card_id'); $this->join('products', 'products.product_id = job_card_product.product_id'); $this->where('job_card_product.is_active', 1); diff --git a/app/Models/SalesOrderModel.php b/app/Models/SalesOrderModel.php index aa14d53..dd5b3ac 100755 --- a/app/Models/SalesOrderModel.php +++ b/app/Models/SalesOrderModel.php @@ -46,7 +46,7 @@ class SalesOrderModel extends Model $result = $this->db->table('sales_order_product') ->where('sales_order_product.sales_order_id', $sales_order_id) ->join('products', 'products.product_id = sales_order_product.product_id') - ->select('sales_order_product.*, products.product_name, products.per, products.ml') + ->select('sales_order_product.*, products.product_name, products.per, products.ml,products.hsn_sac') ->get() ->getResult(); diff --git a/app/Models/VehicleModel.php b/app/Models/VehicleModel.php index 81bf969..0f42b8b 100755 --- a/app/Models/VehicleModel.php +++ b/app/Models/VehicleModel.php @@ -7,7 +7,7 @@ class VehicleModel extends Model protected $table = 'vehicle'; protected $primaryKey = 'vehicle_id'; - protected $allowedFields = ['branch_id','vehicle_id','make','model','reg_no','year_of_manufacturing','colour','client_id','address','country','state','city','gstnumber','email','postal_code','mobile_no','specific','isactive']; + protected $allowedFields = ['branch_id','vehicle_id','make','model','reg_no','year_of_manufacturing','colour','client_id','address','country','state','city','gstnumber','email','postal_code','mobile_no','specific','isactive','updated_by','created_by']; public function getCustomerandVehicle($branch_id) { diff --git a/app/Views/client_form.php b/app/Views/client_form.php index 949d146..22601e5 100755 --- a/app/Views/client_form.php +++ b/app/Views/client_form.php @@ -20,7 +20,7 @@
- +
@@ -70,7 +70,7 @@
- + @@ -92,6 +92,22 @@ // action="" var formData = $('#client_form').serialize(); + const submitButton = $('#client_form_submit'); + var mobile = $('#mobile').val(); + var clientname = $('#client_name').val(); + if (!clientname) { + toastr.warning("Client Name cannot be empty!"); + $('#client_name').focus(); + submitButton.prop('disabled', false).text('Submit'); + return; + } + if (!mobile) { + toastr.warning("mobile Number cannot be empty!"); + $('#mobile').focus(); + submitButton.prop('disabled', false).text('Submit'); + return; + } + submitButton.prop('disabled', true).text('Processing...'); $.ajax({ type: 'POST', @@ -102,12 +118,12 @@ console.log(response); if(response == 'update'){ toastr.success('Client Updated Succssfully'); - window.location.href = ''; + // submitButton.prop('disabled', false).text('Submit'); }else if(response){ toastr.success('Client Added Succssfully'); - window.location.href = ''; + // submitButton.prop('disabled', false).text('Submit'); }else{ toastr.warning('Mobile number already exists'); $('#mobile_error').html('Mobile number already exists'); @@ -115,8 +131,8 @@ $('#mobile').focus(); setTimeout(() => { $('#mobile').css('border', '1px solid #ced4da'); - }, 2000); + submitButton.prop('disabled', false).text('Submit'); } }, error: function(xhr, status, error) { diff --git a/app/Views/complaint_list.php b/app/Views/complaint_list.php index 38d74f6..9d7020a 100755 --- a/app/Views/complaint_list.php +++ b/app/Views/complaint_list.php @@ -19,9 +19,9 @@ - + + - @@ -34,8 +34,8 @@ $color ='red'; }?> - + - + + - - + + + @@ -114,9 +116,11 @@ - - - + + + + + diff --git a/app/Views/invoice_pdf_template_jobcard.php b/app/Views/invoice_pdf_template_jobcard.php index d7a07c8..e4178a7 100755 --- a/app/Views/invoice_pdf_template_jobcard.php +++ b/app/Views/invoice_pdf_template_jobcard.php @@ -89,10 +89,12 @@ - + + - - + + + @@ -105,12 +107,14 @@ $value) { ?> - - + + + - - - + + + + diff --git a/app/Views/job_card_form.php b/app/Views/job_card_form.php index 14f5d7f..0ce1660 100755 --- a/app/Views/job_card_form.php +++ b/app/Views/job_card_form.php @@ -6,6 +6,19 @@ opacity: 0.5; cursor: not-allowed; } + hr{ + margin-top:0 !important; + } + .file-append-row{ + margin-bottom:-18px !important; + } + .file-append-row,.file-exist-row{ + /* margin-bottom:-18px !important; */ + margin-top:-35px !important; + } + + +
ComplaintComplaintUnit Price (Including Tax) TaxLabour Charge With Tax Labour Charge Actions
NoNo DescriptionHSN/SAC Rate(₹)QtyPerQtyTaxable ValuePer GST(%) Total Tax(₹) Total(₹)
product_name; ?> net_price; ?>qty; ?>per; ?>hsn_sac; ?>net_price; ?>qty; ?>net_price * $value->qty); ?>per; ?> tax; ?>   amount, 2, '.', ''); ?>
NoDescriptionDescriptionHSN/SAC Rate(₹)QtyPerQtyTaxable ValuePer GST(%) Total Tax(₹) Total(₹)