From d665d6aac107492b74efda078002d2215c9a1b62 Mon Sep 17 00:00:00 2001 From: tobin <tobin@techware.in> Date: Thu, 4 Jul 2019 21:48:54 +0530 Subject: [PATCH] dc --- application/controllers/Webservices.php | 15 ++++++++++++--- application/helpers/generals_helper.php | 6 +++--- application/models/Webservice_model.php | 27 ++++++++++++++++----------- application/models/Webservices_driver_model.php | 8 -------- 4 files changed, 31 insertions(+), 25 deletions(-) diff --git a/application/controllers/Webservices.php b/application/controllers/Webservices.php index 7e094a2..8a37dad 100644 --- a/application/controllers/Webservices.php +++ b/application/controllers/Webservices.php @@ -521,18 +521,27 @@ class Webservices extends CI_Controller { continue; } if($ride['request_type'] == 3 && - (empty($ride['appointment_time'])||$ride['appointment_time']<strtotime(date('Y-m-d H:i:s')))){ + (empty($ride['appointment_time']) || + $ride['appointment_time'] < strtotime(date('Y-m-d H:i:s')) || + $ride['appointment_time'] > (strtotime(date('Y-m-d H:i:s'))+7200))){ continue; } - $driver_data=$this->Webservice_model->getAvailableDrivers($ride['pickup_lat'],$ride['pickup_lng']); + $driver_data = $this->Webservice_model->getAvailableDrivers($ride['pickup_lat'],$ride['pickup_lng'],$ride['transport_id']); if(empty($driver_data)){ continue; } if(!empty($driver_data) && !empty($driver_data['driver_id']) && !empty($driver_data['distance']) && !empty($driver_data['fcm_token'])){ + + $this->db->update('transport_details',array('status'=>'3'),array('transport_id'=>$ride_id)); + $this->db->insert('driver_request',array('trip_id'=>$ride_id, + 'driver_id'=>$driverData[$key]['driver_id'], + 'request_time'=>date('Y-m-d H:i:s'),'status'=>'0')); + + $type = ($ride['request_type'] == 3)?'2':'1'; $fcm_data = array('title'=>'Ride Request','message'=>'Emergency Ride Request', 'request_id'=>$ride['transport_id']); - push_sent_cancel(1,$driver_data['fcm_token'],$fcm_data); + push_sent_cancel($type,$driver_data['fcm_token'],$fcm_data); } } } diff --git a/application/helpers/generals_helper.php b/application/helpers/generals_helper.php index 9cb9da2..be00940 100644 --- a/application/helpers/generals_helper.php +++ b/application/helpers/generals_helper.php @@ -152,9 +152,9 @@ function push_sent_cancel($type='1', $fcm_token='', $fcm_data=array()) { case '1': $data = "{ \"notification\": { \"title\": \"".$fcm_data['title']."\", \"text\": \"".$fcm_data['message']."\", \"sound\": \"default\" }, \"time_to_live\": 60, \"data\" : {\"response\" : {\"status\" : \"success\", \"data\" : {\"request_id\" : \"".$fcm_data['request_id']."\", \"request_type\" : 0}}}, \"collapse_key\" : \"trip\", \"priority\":\"high\", \"to\" : \"".$fcm_token."\"}"; break; - // case '2': - // $data = "{ \"notification\": { \"title\": \"".$fcm_data['title']."\", \"text\": \"".$fcm_data['message']."\", \"sound\": \"default\" }, \"time_to_live\": 60, \"data\" : {\"response\" : {\"status\" : \"success\", \"data\" : {\"booking_id\" : \"".$fcm_data['id']."\", \"trip_status\" : 0}}}, \"collapse_key\" : \"trip\", \"priority\":\"high\", \"to\" : \"".$fcm_token."\"}"; - // break; + case '2': + $data = "{ \"notification\": { \"title\": \"".$fcm_data['title']."\", \"text\": \"".$fcm_data['message']."\", \"sound\": \"default\" }, \"time_to_live\": 60, \"data\" : {\"response\" : {\"status\" : \"success\", \"data\" : {\"request_id\" : \"".$fcm_data['request_id']."\", \"request_type\" : 1}}}, \"collapse_key\" : \"trip\", \"priority\":\"high\", \"to\" : \"".$fcm_token."\"}"; + break; } $ch = curl_init("https://fcm.googleapis.com/fcm/send"); diff --git a/application/models/Webservice_model.php b/application/models/Webservice_model.php index 40cb308..bf4c23f 100644 --- a/application/models/Webservice_model.php +++ b/application/models/Webservice_model.php @@ -480,14 +480,19 @@ class Webservice_model extends CI_Model { } public function driverAssignCrone(){ + $date = date('Y-m-d H:i:s',strtotime('-3 minutes',strtotime(date('Y-m-d H:i:s')))); + $sql = "UPDATE transport_details AS TD + INNER JOIN driver_request AS DR ON (DR.trip_id=TD.transport_id) + SET TD.status='1',DR.status='3' WHERE DR.request_time<='$date' AND DR.status='0'"; + $this->db->query($sql); + $sql = "SELECT TD.transport_id,TD.appointment_time,TD.pickup_lat,TD.pickup_lng,TD.drop_lat, - TD.drop_lng,TD.vehicle_type,TD.status,TD.is_scheduled,DR.request_time,DR.status,TD.request_type - FROM transport_details AS TD - LEFT JOIN driver_request AS DR ON (TD.transport_id=DR.trip_id) - LEFT JOIN drivers AS DRV ON (DR.driver_id=DR.driver_id) - WHERE ((request_type='3' AND is_scheduled='1') OR (request_type='1')) AND - TD.status IN ('1','3','7') - ORDER BY TD.transport_id DESC"; + TD.drop_lng,TD.vehicle_type,TD.status,TD.is_scheduled,TD.request_type + FROM transport_details AS TD + LEFT JOIN driver_request AS DR ON (TD.transport_id=DR.trip_id AND DR.status IN (2,3)) + WHERE ((TD.request_type='3' AND TD.is_scheduled='1') OR (TD.request_type='1')) AND + TD.status IN ('1','3','7') + ORDER BY TD.transport_id DESC"; $ride_data = $this->db->query($sql); if(empty($ride_data)){ return 0; @@ -495,8 +500,8 @@ class Webservice_model extends CI_Model { return $ride_data->result_array(); } - public function getAvailableDrivers($lat='',$lng=''){ - if(empty($lat) || empty($lng)){ + public function getAvailableDrivers($lat='',$lng='',$ride_id=''){ + if(empty($lat) || empty($lng) || empty($ride_id)){ return; } $cTime = date('H:i'); @@ -506,8 +511,8 @@ class Webservice_model extends CI_Model { cos(($lat*pi()/180))*cos((lat_driver*pi()/180))* cos((($lng-lng_driver)*pi()/180))))*180/pi())*60*1.1515) as distance FROM drivers AS d - WHERE d.status='1' AND d.online_start_time < '$cTime' AND d.online_end_time > '$cTime' - HAVING distance<15 + WHERE d.status='1' AND d.online_start_time<'$cTime' AND d.online_end_time>'$cTime' + -- HAVING distance<15 ORDER BY distance DESC"); if(!empty($data) && !empty($driverData = $data->result_array())){ diff --git a/application/models/Webservices_driver_model.php b/application/models/Webservices_driver_model.php index 915fa9b..0403515 100644 --- a/application/models/Webservices_driver_model.php +++ b/application/models/Webservices_driver_model.php @@ -2383,10 +2383,6 @@ function booster_seat($request) { function push_sent_cancel($fcm_token, $fcm_data) { - - // print_r($fcm_data); - - $data1 = "SELECT * FROM settings WHERE id = '1' "; $query1 = $this->db->query($data1); $rs = $query1->row(); @@ -2406,10 +2402,6 @@ function booster_seat($request) { curl_setopt($ch, CURLOPT_POSTFIELDS, $data); - // curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); - - // curl_close($ch); - $out = curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_exec($ch); -- libgit2 0.27.1