From ba65f512ffd867d5042bb0b628f0f18f1bd3fefc Mon Sep 17 00:00:00 2001 From: VE10-Sanjeev Date: Wed, 5 Feb 2025 11:59:39 +0000 Subject: [PATCH 1/3] Driver Module : ps --- app/Config/Routes.php | 13 + app/Controllers/Driver.php | 280 ++++++++++++++ app/Controllers/Inwardgateregister.php | 4 +- app/Helpers/datetime_helper.php | 13 +- app/Models/Driver_model.php | 96 +++++ app/Views/driverAttendance.php | 486 +++++++++++++++++++++++++ app/Views/driverListing.php | 307 ++++++++++++++++ app/Views/includes/new_header.php | 1 + 8 files changed, 1194 insertions(+), 6 deletions(-) create mode 100755 app/Controllers/Driver.php create mode 100755 app/Models/Driver_model.php create mode 100755 app/Views/driverAttendance.php create mode 100755 app/Views/driverListing.php diff --git a/app/Config/Routes.php b/app/Config/Routes.php index 94478251..82d879b7 100755 --- a/app/Config/Routes.php +++ b/app/Config/Routes.php @@ -77,6 +77,19 @@ $routes->get('deleteCostCenter', 'CostCenter::deleteCostCenter'); $routes->post('checkCostCenter', 'CostCenter::checkCostCenter'); $routes->get('exportcost', 'CostCenter::exportcost'); +// Driver Routes +$routes->get('DriverListing', 'Driver::index'); +$routes->post('fetchDriverDetails', 'Driver::fetchDriverDetails');// for Ajax both add and edit.... +$routes->get('reActivateDriver', 'Driver::reActivateDriver'); +$routes->get('deleteDriver', 'Driver::deleteDriver'); +$routes->post('checkDriver', 'Driver::checkDriver'); + +$routes->match(['GET', 'POST'], 'loadDriverAttendance', 'Driver::loadDriverAttendance'); +$routes->post('fetchDriverAttendanceDetails', 'Driver::fetchDriverAttendanceDetails'); +$routes->get('reActivateDriverAttendance', 'Driver::reActivateDriverAttendance'); +$routes->get('deleteDriverAttendance', 'Driver::deleteDriverAttendance'); +$routes->post('gatheredCustAndQty', 'Driver::gatheredCustAndQty'); + // Asset Detail Routes $routes->get('assetListing', 'Assetdetails::assetListing'); $routes->get('addasset', 'Assetdetails::addasset'); diff --git a/app/Controllers/Driver.php b/app/Controllers/Driver.php new file mode 100755 index 00000000..0094c6e2 --- /dev/null +++ b/app/Controllers/Driver.php @@ -0,0 +1,280 @@ +driver_model = new Driver_model(); + $this->session = session(); + helper('form'); + $this->isLoggedIn(); + } + + public function index() + { + $data['driver_list'] = $this->driver_model->useDriverTable()->getDriverList(); + $this->global['pageTitle'] = 'Driver List'; + $this->loadViews("driverListing", $this->global, $data, NULL); + } + + /** + * This function is used to add/edit driver details + */ + public function fetchDriverDetails() { + + $id = $this->request->getPost('driver_id'); + log_message('error', 'driver_id: ' . $id); + $Name = $this->request->getPost('driver_name'); + $Mobile = $this->request->getPost('driver_mobile'); + $userId = $this->session->get('userId'); + + + $data = ['status' => false, 'message' => 'An error occurred while creating driver details']; + + if ((int)$id == 0) { + log_message('error', 'LAST DriverID : ' . $id); + $driver_details = [ + 'driver_name' => $Name, + 'driver_mobile' => $Mobile, + 'created_by' => $userId, + ]; + $this->driver_model->useDriverTable()->insert($driver_details); + $insertedId = $this->driver_model->insertID(); + if ($insertedId > 0) { + $data = ['status' => true, 'message' => 'Successfully created driver details']; + } + } else { + $driver_details = [ + 'driver_id' => $id, + 'driver_name' => $Name, + 'driver_mobile' => $Mobile, + 'updated_by' => $userId, + ]; + $this->driver_model->useDriverTable()->update($id, $driver_details); + + if ($this->driver_model->affectedRows() > 0) { + $data = ['status' => true, 'message' => 'Successfully updated driver details']; + } + + } + + return $this->response->setJSON($data); + } + + /** + * reactive the driver details isactive - 0 into 1 + */ + public function reActivateDriver(){ + + $driverId = $_GET['driverId']; + if(!empty($driverId)){ + $data = ['isactive' => 1,'updated_by' => $this->session->get('userId')]; + $this->driver_model->useDriverTable()->update($driverId, $data); + if ($this->driver_model->affectedRows() > 0) { + // $data = ['status' => true, 'message' => 'Successfully updated driver details']; + $message = 'Successfully Updated Driver details'; + } + }else{ + $message = "Driver details Not Avalable"; + } + $this->session->setFlashdata('success', $message); + return redirect()->route('DriverListing'); + + } + + /** + * delete the driver details + */ + function deleteDriver($driverId = NULL) + { + + $driverId = $driverId ?? $_GET['driverId']; + if(!empty($driverId)){ + $data = ['isactive' => 0,'updated_by' => $this->session->get('userId')]; + $this->driver_model->useDriverTable()->update($driverId, $data); + $message = ($this->driver_model->affectedRows() > 0) ? "Driver Deleted Successfully." : "Driver already Deleted States"; + }else{ + $message = "Driver details Not Avalable"; + } + $this->session->setFlashdata('success', $message); + return redirect()->route('DriverListing'); + + } + + + /** + * check Driver mobile number Exsiting or not + */ + function checkDriver(){ + + $data = $this->request->getPost(); + + $Id = $data['DriverId']; + $Mobile = $data['DriverMobile']; + $mobile = str_replace(' ', '', $Mobile); + $results = $this->driver_model->useDriverTable() + ->select('driver_mobile, driver_name, isactive') + ->where('driver_id !=', $Id) + ->where('REPLACE(driver_mobile, " ", "")', $mobile) + ->get() + ->getResult(); + + return $this->response->setJSON($results); + } + + public function loadDriverAttendance() + { + + + + // $input_driver_id = $this->request->getGet('driverId') ? $this->request->getGet('driverId') : ''; + $input_driver_id = $this->request->getPost('driver_id') ? $this->request->getPost('driver_id') : $this->request->getGet('driverId'); + // echo($input_driver_id); + $input_month_year = $this->request->getPost('monthyear') ? $this->request->getPost('monthyear') : date('M-Y'); + list($month, $year) = explode('-', $input_month_year); + + $month_in_number = get_date_time_dynamical_format('M','m',"$month");// refer helper + $get_last_date_of_the_month = cal_days_in_month(CAL_GREGORIAN, $month_in_number, $year); + $from_mysql_date = get_date_time_dynamical_format('d-m-Y','Y-m-d',"01-$month_in_number-$year"); + $to_mysql_date = get_date_time_dynamical_format('d-m-Y','Y-m-d',"$get_last_date_of_the_month-$month_in_number-$year"); + $indian_date = get_date_time_dynamical_format('d-m-Y','d-m-Y',"$get_last_date_of_the_month-$month_in_number-$year"); + $data['driver_attendance_list'] = $this->driver_model->useDriverAttendanceTable()->getDriverAttendanceList($input_driver_id,$from_mysql_date,$to_mysql_date); + $data['page_driver_name'] = $this->driver_model->getDriverName($input_driver_id); + $data['invoice_info'] = $this->driver_model->getInvoiceInfo(); + $data['datefordropdown'] = $input_month_year; + $data['driver_id'] = $input_driver_id; + + $this->global['pageTitle'] = 'Driver Attendance List'; + $this->loadViews("driverAttendance", $this->global, $data, NULL); + } + + public function fetchDriverAttendanceDetails(){ + $userId = $this->session->get('userId'); + + $id = $this->request->getPost('driver_attendance_id'); + $date = $this->request->getPost('date'); + $driver_id = $this->request->getPost('driver_id'); + $inv = $this->request->getPost('invoice_number'); + $veh = $this->request->getPost('vehicle_number'); + $load = $this->request->getPost('load_type'); + $sal = $this->request->getPost('salary_amount'); + $food = $this->request->getPost('food_amount'); + + + + $data = ['status' => false, 'message' => 'An error occurred while creating driver Trip details']; + + if ((int)$id == 0) { + log_message('error', 'LAST DriverID : ' . $id); + $driver_details = [ + + 'date' => $date, + 'driver_id' =>$driver_id, + 'invoice_number' =>$inv, + 'vehicle_number' =>$veh, + 'load_type' =>$load, + 'salary_amount' => $sal, + 'food_amount' =>$food, + 'created_by' => $userId, + ]; + $this->driver_model->useDriverAttendanceTable()->insert($driver_details); + $insertedId = $this->driver_model->insertID(); + if ($insertedId > 0) { + $data = ['status' => true, 'message' => 'Successfully created driver Trip details']; + } + } else { + $driver_details = [ + + 'driver_attendance_id' => $id, + 'date' => $date, + 'driver_id' =>$driver_id, + 'invoice_number' =>$inv, + 'vehicle_number' =>$veh, + 'load_type' =>$load, + 'salary_amount' => $sal, + 'food_amount' =>$food, + 'updated_by' => $userId, + ]; + $this->driver_model->useDriverAttendanceTable()->update($id, $driver_details); + + if ($this->driver_model->affectedRows() > 0) { + $data = ['status' => true, 'message' => 'Successfully updated driver Trip details']; + } + + } + + return $this->response->setJSON($data); + } + + /** + * reactive the driver Attendance details isactive - 0 into 1 + */ + public function reActivateDriverAttendance(){ + + $driverAttendanceId = $_GET['driverAttendanceId']; + $driverId = $_GET['driverId']; + if(!empty($driverAttendanceId)){ + $data = ['isactive' => 1,'updated_by' => $this->session->get('userId')]; + $this->driver_model->useDriverAttendanceTable()->update($driverAttendanceId, $data); + if ($this->driver_model->affectedRows() > 0) { + // $data = ['status' => true, 'message' => 'Successfully updated Driver Trip details']; + $message = 'Successfully Updated Driver Trip details'; + } + }else{ + $message = "Driver Trip details Not Avalable"; + } + + + $this->session->setFlashdata('success', $message); + return redirect()->to(current_url()); + // return redirect()->route('loadDriverAttendance'); + // return redirect()->to(base_url('loadDriverAttendance?driverId=' . $driverId)); + + } + + + /** + * delete the driver Attendance details + */ + function deleteDriverAttendance() + { + $driverId = $this->request->getGet('driverId') ? $this->request->getGet('driverId') : ''; + $driverAttendanceId = $this->request->getGet('driverAttendanceId') ? $this->request->getGet('driverAttendanceId') : ''; + // echo "*****"; + // echo $driverAttendanceId."**"; + // echo "-------------"; + // die; + if(!empty($driverAttendanceId)){ + $data = ['isactive' => 0,'updated_by' => $this->session->get('userId')]; + $this->driver_model->useDriverAttendanceTable()->update($driverAttendanceId, $data); + $message = ($this->driver_model->affectedRows() > 0) ? "Driver Trip Deleted Successfully." : "Driver Trip already Deleted States"; + }else{ + $message = "Driver Trip details Not Avalable"; + } + $this->session->setFlashdata('success', $message); + // return redirect()->to(current_url()); + return redirect()->route('loadDriverAttendance'); + // return redirect()->to(base_url('loadDriverAttendance?driverId=' . $driverId)); + + } + + function gatheredCustAndQty(){ + $data = $this->request->getPost(); + $invoice = $data['invoiceNumber']; + $results = $this->driver_model->gatheredCustAndQty($invoice); + return $this->response->setJSON($results); + } + + + +} diff --git a/app/Controllers/Inwardgateregister.php b/app/Controllers/Inwardgateregister.php index 485a6421..2465fd89 100755 --- a/app/Controllers/Inwardgateregister.php +++ b/app/Controllers/Inwardgateregister.php @@ -400,9 +400,9 @@ class Inwardgateregister extends BaseController $IsThisOpenOrderPO = $this->request->getPost('hiddenIsOpenOrder'); $DeliveryChellanOrInvoiceNo = $this->request->getPost('InvoiceNo'); $DeliveryChellan = (string)$this->request->getPost('InvoiceDate'); - $DeliveryChellanDate = get_date_time_dynamical_format('d-m-Y',$DeliveryChellan); + $DeliveryChellanDate = get_date_time_dynamical_format('d-m-Y','',$DeliveryChellan); $Mat_Rcvd_Dt = (string)$this->request->getPost('MaterialRcvdDate'); - $MaterialRcvdDt = get_date_time_dynamical_format('d-m-Y',$Mat_Rcvd_Dt); + $MaterialRcvdDt = get_date_time_dynamical_format('d-m-Y','',$Mat_Rcvd_Dt); $VehicleNo = $this->request->getPost('VehicleNo'); $TransporterId = $this->request->getPost('TransporterId'); $DriverName = $this->request->getPost('DriverName'); diff --git a/app/Helpers/datetime_helper.php b/app/Helpers/datetime_helper.php index e3638ecb..75a9dd26 100755 --- a/app/Helpers/datetime_helper.php +++ b/app/Helpers/datetime_helper.php @@ -33,10 +33,14 @@ if (!function_exists('get_date_time_format')) { } if (!function_exists('get_date_time_dynamical_format')) { - function get_date_time_dynamical_format($format,$val) - { - $date = \DateTime::createFromFormat($format, $val, new \DateTimeZone('Asia/Kolkata')); - return $date->format('Y-m-d H:i:s'); + function get_date_time_dynamical_format($inputformat, $outputformat, $val) + { + $format = !empty($outputformat) ? $outputformat : 'Y-m-d H:i:s'; + $date = \DateTime::createFromFormat($inputformat, $val, new \DateTimeZone('Asia/Kolkata')); + if (!$date) { + return "Invalid Date: $val (Expected format: $inputformat)"; + } + return $date->format($format); } } @@ -257,6 +261,7 @@ if (!function_exists('get_pre_financial_years')) { return $fiscalYears; } } + if (!function_exists('generate_pos_number')) { diff --git a/app/Models/Driver_model.php b/app/Models/Driver_model.php new file mode 100755 index 00000000..75a801ec --- /dev/null +++ b/app/Models/Driver_model.php @@ -0,0 +1,96 @@ +table = 't_driver'; + $this->primaryKey = 'driver_id'; + $this->allowedFields = ['driver_id', 'driver_name', 'driver_mobile','created_on','created_by','updated_on','updated_by','isactive']; + return $this; + } + + public function useDriverAttendanceTable() + { + $this->table = 't_driver_attendance'; + $this->primaryKey = 'driver_attendance_id'; + $this->allowedFields = ['driver_attendance_id','date','driver_id','invoice_number','vehicle_number','load_type','salary_amount','food_amount','created_on','created_by','updated_on','updated_by','isactive']; + return $this; + } + + public function getDriverList() + { + if (empty($this->allowedFields)) { return []; } + $fields = implode(', ', array_map(function($field) { + return $this->table . '.' . $field; + }, $this->allowedFields)); + + + $selectFields = "CONCAT_WS(' ', t_employee_details.FirstName, t_employee_details.LastName) AS FullName, t_employee_details.IsActive as employee_isactive, " . $fields; + + return $this->select($selectFields) + ->join('tbl_users', 'tbl_users.userId = ' . $this->table . '.created_by', 'left') + ->join('t_employee_details', 'tbl_users.EmpID = t_employee_details.EmpID', 'left') + ->findAll(); + } + + public function getDriverAttendanceList($driver_id,$from,$to){ + if (empty($this->allowedFields)) { return []; } + $fields = implode(', ', array_map(function($field) { + return $this->table . '.' . $field; + }, $this->allowedFields)); + + $selectFields = "CONCAT_WS(' ', t_employee_details.FirstName, t_employee_details.LastName) AS FullName, t_employee_details.IsActive as employee_isactive, t_driver.driver_name,ip_clients.client_name as customer,ip_invoices.received_qty as quantity," . $fields; + + return $this->select($selectFields) + ->join('t_driver', 't_driver.driver_id = ' . $this->table . '.driver_id', 'left') + ->join('tbl_users', 'tbl_users.userId = ' . $this->table . '.created_by', 'left') + ->join('t_employee_details', 'tbl_users.EmpID = t_employee_details.EmpID', 'left') + ->join('ip_invoices', 'ip_invoices.invoice_number = ' . $this->table . '.invoice_number', 'left') + ->join('ip_clients', 'ip_clients.client_id = ip_invoices.client_id', 'left') + ->where($this->table.'.date BETWEEN "'.$from.'" AND "'.$to.'"') + ->where($this->table . '.driver_id', $driver_id) + ->findAll(); + + } + function getInvoiceInfo() + { + $builder = $this->db->table('ip_invoices') + ->select('invoice_number,invoice_id'); + $query = $builder->get(); + return $query->getResult(); + } + + function getDriverName($id) + { + $builder = $this->db->table('t_driver') + ->select('driver_name') + ->where('driver_id', $id); + + $query = $builder->get()->getRow(); + + $driver_name = $query ? $query->driver_name : null; + + return $driver_name; + } + + function gatheredCustAndQty($invoice){ + $builder = $this->db->table('ip_invoices') + ->select('invoice_number,received_qty as quantity,ip_clients.client_name as customer') + ->join('ip_clients', 'ip_clients.client_id = ip_invoices.client_id', 'left') + ->where('invoice_number', $invoice); + $query = $builder->get(); + return $query->getRowArray() ?: []; + } + + + +} +?> diff --git a/app/Views/driverAttendance.php b/app/Views/driverAttendance.php new file mode 100755 index 00000000..1c06ada2 --- /dev/null +++ b/app/Views/driverAttendance.php @@ -0,0 +1,486 @@ + + + + + +
+ + +
+
+ +
+ +
+
+
+
+
+ +
+ +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + + +
+ +
+ +
+
+

+
+
+
+
+
+ +
+

+ +
+ + + + + + + + + + + + + + + + + + + + format('d-m-Y'); + $time = $createdat->format('h:i A'); + $attendancedate = new DateTime($record['date']); + $attdate = $attendancedate->format('d-m-Y'); + + ?> + + + + + + + + + + + + + + + + + + + +
Create DateCreate ByDriver NameDateInvoice NumberVehicle NumberSalary AmountFood AmountLoad TypeCustomerQuantityStatusAction
+ + + '> +     + + + +
+
+

 

+
+ +
+
+ +
+
+
+
+
+
+
+
+
+ + + + + + + + + + + + + diff --git a/app/Views/driverListing.php b/app/Views/driverListing.php new file mode 100755 index 00000000..9dc0c6c5 --- /dev/null +++ b/app/Views/driverListing.php @@ -0,0 +1,307 @@ +
+
+ +
+ +
+
+ +
+
+ +
+ Add Driver Details +
+
+
+ +
+
+
+ +
+ + + + + + + + + + + + + + format('d-m-Y'); + $time = $createdat->format('h:i A'); + ?> + + + + + + + + + + + +
Create DateDriver NameDriver Mobile Create ByStatusAction
+ +     + + + +     + + +     + + +     + + +
+ +
+
+
+
+ +
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/app/Views/includes/new_header.php b/app/Views/includes/new_header.php index 4ce942dc..3cbb8fb7 100755 --- a/app/Views/includes/new_header.php +++ b/app/Views/includes/new_header.php @@ -849,6 +849,7 @@ Users Factory Machines Details + Driver Details From d1d2e37bcda626e78f0e330f709838b0642ce359 Mon Sep 17 00:00:00 2001 From: Gowtham M Date: Wed, 5 Feb 2025 18:04:31 +0530 Subject: [PATCH 2/3] Igr list based on invoice date : GWM --- app/Models/Inwardgateregister_model.php | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/app/Models/Inwardgateregister_model.php b/app/Models/Inwardgateregister_model.php index 66c96781..6d05c7a2 100755 --- a/app/Models/Inwardgateregister_model.php +++ b/app/Models/Inwardgateregister_model.php @@ -416,10 +416,22 @@ class Inwardgateregister_model extends Model ->join('t_transporter trans', 'igr.TransporterId = trans.id', 'left') ->join('t_igr_details IGRD', 'igr.IGRNo = IGRD.IGRNo') ->where('igr.IGRStatus !=', MRIR_CREATED) - ->where('Date(igr.CreatedDate) >=', "$fromDate") - ->where('Date(igr.CreatedDate) <=', "$toDate") - ->groupBy('IGRD.IGRNo') - ->orderBy('igr.CreatedDate', 'desc'); + ->groupBy('IGRD.IGRNo'); + if(session()->get('roleText') == 'Auditor'){ + + $builder->where('Date(igr.DeliveryChellanDate) >=', "$fromDate") + ->where('Date(igr.DeliveryChellanDate) <=', "$toDate") + ->orderBy('igr.DeliveryChellanDate', 'desc'); + }else{ + $builder->where('Date(igr.CreatedDate) >=', "$fromDate") + ->where('Date(igr.CreatedDate) <=', "$toDate") + ->orderBy('igr.CreatedDate', 'desc'); + + } + + + + $query = $builder->get(); $result = $query->getResult(); From 1ec0d90bca10c8f7700fa5b4ecf54163eea73b74 Mon Sep 17 00:00:00 2001 From: VE10-Sanjeev Date: Wed, 5 Feb 2025 13:22:47 +0000 Subject: [PATCH 3/3] fixes : ps --- app/Controllers/Driver.php | 3 +- app/Views/driverAttendance.php | 95 +++++++++++++++++++++---------- app/Views/includes/new_header.php | 2 +- 3 files changed, 66 insertions(+), 34 deletions(-) diff --git a/app/Controllers/Driver.php b/app/Controllers/Driver.php index 0094c6e2..a3af18f5 100755 --- a/app/Controllers/Driver.php +++ b/app/Controllers/Driver.php @@ -152,7 +152,7 @@ class Driver extends BaseController $data['page_driver_name'] = $this->driver_model->getDriverName($input_driver_id); $data['invoice_info'] = $this->driver_model->getInvoiceInfo(); $data['datefordropdown'] = $input_month_year; - $data['driver_id'] = $input_driver_id; + $data['gobal_driver_id'] = $input_driver_id; $this->global['pageTitle'] = 'Driver Attendance List'; $this->loadViews("driverAttendance", $this->global, $data, NULL); @@ -177,7 +177,6 @@ class Driver extends BaseController if ((int)$id == 0) { log_message('error', 'LAST DriverID : ' . $id); $driver_details = [ - 'date' => $date, 'driver_id' =>$driver_id, 'invoice_number' =>$inv, diff --git a/app/Views/driverAttendance.php b/app/Views/driverAttendance.php index 1c06ada2..e3534d3c 100755 --- a/app/Views/driverAttendance.php +++ b/app/Views/driverAttendance.php @@ -60,7 +60,7 @@ $datefordropdown = format_date($datefordropdown, 0, 'M-Y');
- +
@@ -123,13 +123,16 @@ $datefordropdown = format_date($datefordropdown, 0, 'M-Y'); - + '>     + + + @@ -184,8 +187,8 @@ $datefordropdown = format_date($datefordropdown, 0, 'M-Y');
- - + +
@@ -204,6 +207,19 @@ $datefordropdown = format_date($datefordropdown, 0, 'M-Y'); +
+
+ + +
+ +
+ + +
+ +
+
@@ -224,28 +240,21 @@ $datefordropdown = format_date($datefordropdown, 0, 'M-Y');
-
+
- +
-
+
- + +
+
+ +
-
-
- - -
- -
- - -
- -
+
@@ -286,16 +295,22 @@ $datefordropdown = format_date($datefordropdown, 0, 'M-Y'); $("#driver_name").val(""); let urlParams = new URLSearchParams(window.location.search); - let driver_id = urlParams.get("driver_id"); - if (driver_id !== null) { $("#driver_id").val(driver_id);} - else { $("#driver_id").val(""); } + let gobal_driver_id = urlParams.get("driverId"); + if (gobal_driver_id !== null) { + $("#gobal_driver_id").val(gobal_driver_id); + $("#driver_id").val(gobal_driver_id); + } + else { + $("#gobal_driver_id").val(""); + $("#driver_id").val(""); + } $("#attendanceModal").on("shown.bs.modal", function (e) { var id = $(e.relatedTarget).data('id'); - let fields = ['driver_attendance_id', 'date', 'driver_id', 'invoice_number', 'vehicle_number', 'load_type', 'salary_amount', 'food_amount','customer','quantity']; + let fields = ['invoice_number', 'vehicle_number', 'load_type', 'salary_amount', 'food_amount','customer','quantity']; fields.forEach(function(field) { $("#" + field).val(""); @@ -303,10 +318,23 @@ $datefordropdown = format_date($datefordropdown, 0, 'M-Y'); if (id == 0) { $('#attendanceTitle').html("Add Driver Trip"); + $("#driver_attendance_id").val(0); } else { + $("#driver_attendance_id").val(id); var arr = $(e.relatedTarget).data('arr'); + fields.forEach(function(field) { $("#" + field).val(arr && arr[field] ? arr[field] : ""); + if(field == 'date'){ + $("#date").val(arr && arr['date']); + } + if(field == 'driver_id'){ + $("#driver_id").val(arr && arr['driver_id']); + } + if(field == 'salary_amount' || field == 'food_amount') { + var ttl = parseFloat(arr['salary_amount']) + parseFloat(arr['food_amount']); + $('#total_amount').val(ttl.toFixed(2)); + } }); $('#attendanceTitle').html("Edit Driver Trip"); } @@ -335,13 +363,13 @@ $datefordropdown = format_date($datefordropdown, 0, 'M-Y'); return; } if ($('#salary_amount').val() === '') { - alert('Please Choosen the Load Type Properly'); + alert('Please Enter Salary Amount'); return; } var formData = { - driver_attendance_id:$('#driver_attendance_id').val(), + driver_attendance_id:$('#driver_attendance_id').val() ? $('#driver_attendance_id').val() : 0, date: $('#date').val(), driver_id: $('#driver_id').val(), invoice_number: $('#invoice_number').val(), @@ -364,7 +392,7 @@ $datefordropdown = format_date($datefordropdown, 0, 'M-Y'); if (response.status) { alert(response.message); - $('#ddwizard').modal('hide'); + // $('#ddwizard').modal('hide'); location.reload(); } else { alert(response.message); @@ -445,12 +473,17 @@ $datefordropdown = format_date($datefordropdown, 0, 'M-Y'); var type = $('#load_type').val(); if(type == 'Load'){ - var value = parseFloat(1300).toFixed(2); + var value = parseFloat(1300); $('#salary_amount').val(value); }else if(type == 'Waste Core'){ - var value = parseFloat(1050).toFixed(2); + var value = parseFloat(1050); $('#salary_amount').val(value); } + var sa = parseFloat($('#salary_amount').val()) || 0; + var fa = parseFloat($('#food_amount').val()) || 0; + var ttl = sa + fa; + + $('#total_amount').val(ttl.toFixed(2)); } diff --git a/app/Views/includes/new_header.php b/app/Views/includes/new_header.php index 3cbb8fb7..13b2d163 100755 --- a/app/Views/includes/new_header.php +++ b/app/Views/includes/new_header.php @@ -790,6 +790,7 @@
+ Driver Details
@@ -849,7 +850,6 @@ Users Factory Machines Details - Driver Details