Commit 36c641a9 by Jansa Jose

Merge branch 'jansa' into 'master'

dc- admin panel booking responses See merge request !39
parents 56c0da32 7c783121
......@@ -40,6 +40,7 @@ class Bookings extends CI_Controller {
empty($mechanic_id))?'':$mechanic_id;
$template['mechanic_data'] = $mechanic_data;
$template['bookingData'] = $this->Booking_model->getMechBookings($mechanic_id,'','0,1,3,4');
//pr($template['bookingData']);
$this->load->view('template',$template);
}
......
......@@ -285,9 +285,9 @@
header('Content-type: application/json');
$postData = $_POST;
$optionalData = array('optionlaDescription'=>'','optionalImages'=>array(),'optionalVideos'=>array());
$optionalData=array('optionlaDescription'=>'','optionalImages'=>array(),'optionalVideos'=>array());
$respArr = array('status'=>'0','message'=>'Something went wrong.');
//pr(json_decode($postData['data']));
if(empty($postData) || empty($postData = json_decode($postData['data'],true)) ||
!isset($postData['cost']) || empty($postData['cost']) ||
!isset($postData['customer_id']) || empty($postData['customer_id']) ||
......@@ -472,7 +472,7 @@
echo json_encode($respArr);exit;
}
$status=$this->Booking_model->changeBookStatus($postData['customer_id'],$postData['booking_id'],'3');
$status=$this->Booking_model->changeBookStatus($postData['customer_id'],$postData['booking_id'],'4');
if($status){
$respArr['status'] = 1;
......@@ -1343,6 +1343,17 @@
$result = $this->Webservice_model->rate_mechanic($postData);
echo json_encode($result);exit;
}
public function acceptMechanicQuote(){
header('Content-type:application/json');
$headers = apache_request_headers();
$post = file_get_contents("php://input");
$postData = json_decode($post,true);
$result = $this->Webservice_model->acceptMechanicQuote($postData);
echo json_encode($result);exit;
}
}
?>
......@@ -6,184 +6,314 @@ class Booking_model extends CI_Model {
}
public function scheduleBooking($postData = array()){
if(empty($postData) ||
!isset($postData['customer_id']) || empty($postData['customer_id']) ||
!isset($postData['pickup_data']) || empty($postData['pickup_data']) ||
!isset($postData['vechile_info']) || empty($postData['vechile_info']) ||
!isset($postData['mechanic_id']) || empty($postData['mechanic_id']) ||
!isset($postData['selected_issues']) || empty($postData['selected_issues'])){
return 0;
}
if(empty($postData) ||
!isset($postData['customer_id']) || empty($postData['customer_id']) ||
!isset($postData['pickup_data']) || empty($postData['pickup_data']) ||
!isset($postData['vechile_info']) || empty($postData['vechile_info']) ||
!isset($postData['mechanic_id']) || empty($postData['mechanic_id']) ||
!isset($postData['selected_issues']) || empty($postData['selected_issues'])){
return 0;
}
$vehData = $postData['vechile_info'];
$car_name = $vehData['modelYear'].' '.$vehData['maker'].' '.$vehData['modelName'];
$vehJson = array('vehicle' => $car_name,'attributes' =>
array('Year' => $vehData['modelYear'],
'Make' => $vehData['maker'],
'Trim' => $vehData['trim'],
'Model' => $vehData['modelName'],
'Engine' => $vehData['emgine']));
if(isset($vehData['lastMaintanceDate']) && !empty($vehData['lastMaintanceDate'])){
$last_date = $vehData['lastMaintanceDate'];
}else{
$last_date ='';
}
$insert_array = array('customer_id' => $postData['customer_id'],
'car_name' => $car_name,
'car_model' => $vehData['modelName'],
'car_maker' => $vehData['maker'],
'car_loc_lat' => $postData['pickup_data']['pickup_lat'],
'car_loc_lng' => $postData['pickup_data']['pickup_lng'],
'car_location' => $postData['pickup_data']['pickup_loc'],
'vehicle_data' => json_encode($vehJson),
'car_model_year'=> $vehData['modelYear'],
'last_maintenance_date'=>$last_date,
'status' => '3');
$selected_issues = array();
foreach($postData['selected_issues'] AS $selIssue){
$selected_issues[] = array('issue' => $selIssue['issue'],
'issue_id' => $selIssue['issue_id'],
'sub_issue_id' => $selIssue['sub_issue_id'],
'issue_category' => $selIssue['issue_category']);
}
if($this->db->insert('customer_vehicle',$insert_array)){
$last_id = $this->db->insert_id();
$book_data = array('cost' => $postData['cost'],
'mileage' => $vehData['milage'],
'customer_id' => $postData['customer_id'],
'mechanic_id' => $postData['mechanic_id'],
'scheduled_date' => $postData['schedule_date']['date'],
'scheduled_time' => $postData['schedule_date']['time'],
'issues_selected' => json_encode($selected_issues),
'customer_veh_id' => $last_id,
'custom_issue_data'=> json_encode($postData['optionalData']),
'status' => '0');
if($this->db->insert('bookings',$book_data)){
return 1;
}
}
return 0;
$vehJson = array('vehicle' => $car_name,
'attributes' => array(
'Year' => $vehData['modelYear'],
'Make' => $vehData['maker'],
'Trim' => $vehData['trim'],
'Model' => $vehData['modelName'],
'Engine' => $vehData['emgine']
)
);
$last_date ='';
if(isset($vehData['lastMaintanceDate']) && !empty($vehData['lastMaintanceDate'])){
$last_date = $vehData['lastMaintanceDate'];
}
function getCustBookDetails($postData = array(), $status = ''){
$cond = array();
if(empty($postData) || !isset($postData['customer_id']) || empty($postData['customer_id'])){
return 0;
}
$cond = "BK.customer_id='".$postData['customer_id']."' ";
$cond .= (!empty($status))?"AND BK.status IN (".$status.") ":'';
$sql = "SELECT BK.booking_id,BK.customer_id,BK.mechanic_id,BK.customer_veh_id,BK.scheduled_date,
BK.scheduled_time,BK.cost,BK.status,MECH.first_name,MECH.last_name,VEH.car_name,
BK.status
FROM bookings AS BK
INNER JOIN mechanic AS MECH ON (MECH.mechanic_id = BK.mechanic_id)
INNER JOIN customer_vehicle AS VEH ON (VEH.customer_veh_id = BK.customer_veh_id)
WHERE $cond
GROUP BY BK.booking_id";
$bookData = $this->db->query($sql);
if(!empty($bookData)){
return $bookData->result();
}
return 0;
$last_maintanence_date ='';
if(isset($vehData['maintanenceInterval']) && !empty($vehData['maintanenceInterval'])){
$last_maintanence_date = $vehData['maintanenceInterval'];
}
function changeBookStatus($customer_id = '', $booking_id = '', $status = ''){
if(empty($customer_id) || empty($booking_id) || $status == ''){
return 0;
}
$last_id = '';
if(isset($postData['customer_vehicle_id']) && !empty($postData['customer_vehicle_id'])){
$last_id = $postData['customer_vehicle_id'];
$this->db->update('customer_vehicle',array('last_maintenance_date'=>$last_date,'maintanence_interval'=>$last_maintanence_date),array('customer_veh_id'=>$postData['customer_vehicle_id']));
}
$status = $this->db->update('bookings',
array('status'=>$status),
array('customer_id'=>$customer_id,'booking_id'=>$booking_id));
$insert_array = array('customer_id' => $postData['customer_id'],
'car_name' => $car_name,
'car_model' => $vehData['modelName'],
'car_maker' => $vehData['maker'],
'car_loc_lat' => $postData['pickup_data']['pickup_lat'],
'car_loc_lng' => $postData['pickup_data']['pickup_lng'],
'car_location' => $postData['pickup_data']['pickup_loc'],
'vehicle_data' => json_encode($vehJson),
'car_model_year' => $vehData['modelYear'],
'last_maintenance_date'=> $last_date,
'maintanence_interval' => (int)$last_maintanence_date,
'status' => '3');
return $status;
$selected_issues = array();
foreach($postData['selected_issues'] AS $selIssue){
$selected_issues[] = array('issue' => $selIssue['issue'],
'issue_id' => $selIssue['issue_id'],
'sub_issue_id' => $selIssue['sub_issue_id'],
'issue_category' => $selIssue['issue_category']);
}
if(empty($last_id)){
$this->db->insert('customer_vehicle',$insert_array);
$last_id = $this->db->insert_id();
}
function getMechBookings($mechanic_id = '', $booking_id = '', $status = '1'){
if($this->session->userdata('user_type') != 1 && empty($mechanic_id)){
return 0;
}
$book_data = array('cost' => $postData['cost'],
'mileage' => $vehData['milage'],
'customer_id' => $postData['customer_id'],
//'mechanic_id' => $postData['mechanic_id'],
'scheduled_date' => $postData['schedule_date']['date'],
'scheduled_time' => $postData['schedule_date']['time'],
'issues_selected' => json_encode($selected_issues),
'customer_veh_id' => $last_id,
'custom_issue_data'=> json_encode($postData['optionalData']),
'car_loc_lat' => $postData['pickup_data']['pickup_lat'],
'car_loc_lng' => $postData['pickup_data']['pickup_lng'],
'car_location' => $postData['pickup_data']['pickup_loc'],
'is_multiple' => (isset($postData['multiple']))?$postData['multiple']:0,
'status' => '0');
if($this->db->insert('bookings',$book_data)){
$insertBookMech = array();
$book_id = $this->db->insert_id();
$mechanic_id = explode(',',$postData['mechanic_id']);
foreach ($mechanic_id AS $mech_id) {
$insertBookMech[] = array('booking_id'=>$book_id,'mechanic_id'=>$mech_id,'status'=>'0');
}
if(!empty($insertBookMech)){
$this->db->insert_batch('mechanic_booking',$insertBookMech);
}
return 1;
}
return 0;
}
$cond = " BK.status IN (".$status.") ";
$cond .= (!empty($booking_id))?" AND BK.booking_id='".$booking_id."' ":"";
$cond .= (!empty($mechanic_id))?" AND BK.mechanic_id='".$mechanic_id."' ":"";
$sql = "SELECT BK.booking_id,BK.customer_id,BK.mechanic_id,BK.customer_veh_id,BK.scheduled_date,
BK.scheduled_time,BK.cost,BK.status,BK.mileage,BK.issues_selected,VEH.car_name,
BK.custom_issue_data,MECH.first_name AS mechFirstName,VEH.car_model,
MECH.last_name AS mechLastName,VEH.car_maker,VEH.car_model_year,VEH.car_vin,
VEH.vehicle_data,VEH.car_location,VEH.car_loc_lat,VEH.car_loc_lng,
CUST.first_name AS custFirstName,CUST.last_name AS custLastName,CUST.phone,
CUST.email,CUST.address,CUST.profile_image,CUST.date_of_birth,CUSQTE.custom_id
FROM bookings AS BK
INNER JOIN mechanic AS MECH ON (MECH.mechanic_id=BK.mechanic_id)
INNER JOIN customers AS CUST ON (CUST.customer_id=BK.customer_id)
INNER JOIN admin_users AS ADM ON (ADM.id=BK.mechanic_id)
INNER JOIN customer_vehicle AS VEH ON (VEH.customer_veh_id=BK.customer_veh_id)
LEFT JOIN custom_quote AS CUSQTE on (CUSQTE.booking_id = BK.booking_id)
WHERE $cond AND ADM.status='1' AND CUST.status='1'
GROUP BY BK.booking_id";
$bookData = $this->db->query($sql);
if(!empty($bookData)){
$bookData = (!empty($booking_id))?$bookData->row():$bookData->result();
return $bookData;
}
return 0;
function getCustBookDetails($postData = array(), $status = ''){
$cond = array();
$where_cond = array();
if(empty($postData) || !isset($postData['customer_id']) || empty($postData['customer_id'])){
return 0;
}
$cond = "BK.customer_id='".$postData['customer_id']."' ";
$cond .= (!empty($status))?"AND BK.status IN (".$status.") ":'';
function changeStatus($booking_id = '', $status = '0'){
if(empty($booking_id)){
return 0;
}
$status=$this->db->update('bookings',array('status'=>$status),array('booking_id'=>$booking_id));
return $status;
$sql = "SELECT BK.booking_id,BK.customer_id,BK.customer_veh_id,BK.scheduled_date,
BK.scheduled_time,BK.cost,BK.is_multiple,BK.status,VEH.car_name,VEH.car_maker,
VEH.car_model,VEH.car_model_year,BK.status
FROM bookings AS BK
INNER JOIN customer_vehicle AS VEH ON (VEH.customer_veh_id = BK.customer_veh_id)
WHERE $cond
GROUP BY BK.booking_id";
$bookData = $this->db->query($sql);
if(empty($bookData)){
return 0;
}
function insertCustomQuote($data){
$custData = array();$total=0;
$book_id = decode_param($data['booking_id']);
unset($data['booking_id']);
for($i=0 ; $i < count($data['description']);$i++){
$custData[$i]['issue_id']=$data['issue_id'][$i];
$custData[$i]['sub_issue_id']=$data['sub_issue_id'][$i];
$custData[$i]['description']=$data['description'][$i];
$custData[$i]['amount']=$data['amount'][$i];
$total += $data['amount'][$i];
}
$book_data = $this->db->get_where('custom_quote',array('booking_id'=>$book_id));
if(!empty($book_data) && $book_data->num_rows() > 0){
$this->db->update('custom_quote',array('custom_service_quote'=>json_encode($custData),'custom_amount'=>$total),array('booking_id'=>$book_id));
$res = array('status'=>'success');
}else{
if($this->db->insert('custom_quote',array('booking_id'=>$book_id,'custom_service_quote'=>json_encode($custData),'custom_amount'=>$total))){
$last_id = $this->db->insert_id();
$res = array('status'=>'success','data'=>encode_param($last_id));
}
}
return $res;
$bookDetails = array();
$bookData = $bookData->result();
foreach($bookData AS $book) {
$bookMechData=$this->db->query("SELECT * FROM mechanic_booking
WHERE booking_id='$book->booking_id' AND status!='2'");
if(!empty($bookMechData)){
$bookMechData = $bookMechData->result();
foreach ($bookMechData AS $mech_value) {
$mechanic_data = $this->db->query("
SELECT ROUND(AVG(MR.rate),2) AS rating,MCH.mechanic_id,MCH.first_name,
MCH.last_name,MCH.phone,CQ.custom_service_quote,MCH.location,
MCH.email_id,CQ.custom_amount,BK.status
FROM mechanic_booking AS BK
INNER JOIN mechanic MCH ON BK.mechanic_id=MCH.mechanic_id
INNER JOIN admin_users AU ON AU.id=MCH.mechanic_id
LEFT JOIN custom_quote CQ ON
CQ.mechanic_id=BK.mechanic_id AND
CQ.booking_id=BK.booking_id AND CQ.status='1'
LEFT JOIN mechanic_rating MR ON
MR.mechanic_id=BK.mechanic_id AND MR.status='1'
WHERE AU.status='1' AND BK.mechanic_id='$mech_value->mechanic_id' AND
BK.booking_id='$book->booking_id'");
if(!empty($mechanic_data)){
$mechData = $mechanic_data->row();
$mechData->custom_service_quote = json_decode($mechData->custom_service_quote);
$book->mechanic_data[] = $mechData;
$sTime = strtotime($book->scheduled_date.' '.$book->scheduled_time);
$cTime = strtotime('+1 hour');
if($cTime >= $sTime){
$book->status = '4';
}
}
}
}
$bookDetails[] = $book;
}
return $bookDetails;
}
function changeBookStatus($customer_id = '', $booking_id = '', $status = ''){
if(empty($customer_id) || empty($booking_id) || $status == ''){
return 0;
}
$status = $this->db->update('bookings',
array('status'=>$status),
array('customer_id'=>$customer_id,'booking_id'=>$booking_id));
return $status;
}
public function getCustomData($customid){
$this->db->select('custom_quote.custom_service_quote,custom_quote.custom_amount,bookings.issues_selected');
$this->db->join('bookings','bookings.booking_id = custom_quote.booking_id');
$this->db->where('custom_quote.custom_id',$customid);
$custData = $this->db->get('custom_quote');
function getMechBookings($mechanic_id = '', $booking_id = '', $status = '1'){
if($this->session->userdata('user_type') != 1 && empty($mechanic_id)){
return 0;
}
if(!empty($custData) && $custData->num_rows() > 0){
$custData = $custData->row_array();
return $custData;
$cond = " BK.status IN (".$status.") ";
$cond .= (!empty($booking_id))?" AND BK.booking_id='".$booking_id."' ":"";
$cond .= (!empty($mechanic_id))?" AND MBK.mechanic_id='".$mechanic_id."' ":"";
$sql = "SELECT GROUP_CONCAT(DISTINCT(MBK.mechanic_id)) AS mechanic_ids,BK.booking_id,BK.customer_id,
BK.customer_veh_id,BK.scheduled_date,BK.scheduled_time,BK.cost,BK.status,BK.mileage,
BK.issues_selected,VEH.car_name,BK.custom_issue_data,VEH.car_model,VEH.car_maker,
VEH.car_model_year,VEH.car_vin,VEH.vehicle_data,BK.car_location,BK.car_loc_lat,
BK.car_loc_lng,CUST.first_name AS custFirstName,CUST.last_name AS custLastName,CUST.phone,
CUST.email,CUST.address,CUST.profile_image,CUST.date_of_birth,CUSQTE.custom_id,
MBK.status AS mech_status
FROM bookings AS BK
INNER JOIN mechanic_booking AS MBK ON (MBK.booking_id=BK.booking_id)
INNER JOIN customers AS CUST ON (CUST.customer_id=BK.customer_id)
INNER JOIN admin_users AS ADM ON (ADM.id=MBK.mechanic_id)
INNER JOIN customer_vehicle AS VEH ON (VEH.customer_veh_id=BK.customer_veh_id)
LEFT JOIN custom_quote AS CUSQTE on (CUSQTE.booking_id = BK.booking_id
AND CUSQTE.mechanic_id=MBK.mechanic_id)
WHERE $cond AND ADM.status='1' AND CUST.status='1'
GROUP BY BK.booking_id";
$bookData = $this->db->query($sql);
if(!empty($bookData)){
if(empty($booking_id)){
return $bookData->result();
}
$bookedMechanics = array();
$bookData = $bookData->row();
if(!empty($bookData->mechanic_ids)){
$mechanics = explode(',',$bookData->mechanic_ids);
foreach ($mechanics AS $mech_id) {
$mechanic_data = $this->db->query("
SELECT ROUND(AVG(MR.rate),2) AS rating,MCH.mechanic_id,MCH.first_name,
MCH.last_name,MCH.phone,CQ.custom_service_quote,MCH.location,
MCH.email_id,CQ.custom_amount,
CASE
WHEN BK.status = '0' THEN 'Pending'
WHEN BK.status = '1' THEN 'Accept'
ELSE 'Reject' END as status
FROM mechanic_booking AS BK
INNER JOIN mechanic MCH ON BK.mechanic_id=MCH.mechanic_id
INNER JOIN admin_users AU ON AU.id=MCH.mechanic_id
LEFT JOIN custom_quote CQ ON
CQ.mechanic_id=BK.mechanic_id AND
CQ.booking_id=BK.booking_id AND CQ.status='1'
LEFT JOIN mechanic_rating MR ON
MR.mechanic_id=BK.mechanic_id AND MR.status='1'
WHERE AU.status='1' AND BK.mechanic_id='$mech_id' AND BK.booking_id='$booking_id'");
if(!empty($mechanic_data)){
$mechData = $mechanic_data->row();
$mechData->custom_service_quote = json_decode($mechData->custom_service_quote);
$bookedMechanics[] = $mechData;
}
}
$bookData->mechanic_data = $bookedMechanics;
}
// pr($bookData);
return $bookData;
}
return 0;
}
function changeStatus($booking_id = '', $status = '0'){
if(empty($booking_id)){
return 0;
}
if($this->session->userdata('user_type')==1){
if($status == '1'){
$status=$this->db->update('bookings',array('status'=>'0'),array('booking_id'=>$booking_id));
}
else if($status == '4'){
$status=$this->db->update('bookings',array('status'=>'4'),array('booking_id'=>$booking_id));
}
return 0;
else if($status == '2'){
$this->db->update('bookings',array('status'=>'2'),array('booking_id'=>$booking_id));
}
}else{
$id = $this->session->userdata('id');
if($status == '4'){
$this->db->update('mechanic_booking',
array('status'=>'2'),
array('booking_id'=>$booking_id,'mechanic_id'=> $id));
}
else if($status == '1'){
$this->db->update('mechanic_booking',
array('status'=>'1'),
array('booking_id'=>$booking_id,'mechanic_id'=> $id));
}
else if($status == '2'){
$this->db->update('mechanic_booking',
array('status'=>'2'),
array('booking_id'=>$booking_id,'mechanic_id'=> $id));
}
}
return $status;
}
function insertCustomQuote($data){
$custData = array();$total=0;
$book_id = decode_param($data['booking_id']);
$mechanic_id = ($this->session->userdata('user_type')==2)?$this->session->userdata('id'):'';
unset($data['booking_id']);
for($i=0 ; $i < count($data['description']);$i++){
$custData[$i]['issue_id']=$data['issue_id'][$i];
$custData[$i]['sub_issue_id']=$data['sub_issue_id'][$i];
$custData[$i]['issue_category']=$data['issue_category'][$i];
$custData[$i]['description']=$data['description'][$i];
$custData[$i]['amount']=$data['amount'][$i];
$total += $data['amount'][$i];
}
$book_data = $this->db->get_where('custom_quote',array('booking_id'=>$book_id));
if(!empty($book_data) && $book_data->num_rows() > 0){
$this->db->update('custom_quote',array('custom_service_quote'=>json_encode($custData),'mechanic_id'=>$mechanic_id,'custom_amount'=>$total),array('booking_id'=>$book_id));
$res = array('status'=>'success');
}else{
if($this->db->insert('custom_quote',array('booking_id'=>$book_id,'mechanic_id'=>$mechanic_id,'custom_service_quote'=>json_encode($custData),'custom_amount'=>$total))){
$last_id = $this->db->insert_id();
$res = array('status'=>'success','data'=>encode_param($last_id));
}
}
return $res;
}
public function getCustomData($customid){
$this->db->select('custom_quote.custom_service_quote,custom_quote.custom_amount,bookings.issues_selected');
$this->db->join('bookings','bookings.booking_id = custom_quote.booking_id');
$this->db->where('custom_quote.custom_id',$customid);
$custData = $this->db->get('custom_quote');
if(!empty($custData) && $custData->num_rows() > 0){
$custData = $custData->row_array();
return $custData;
}
return 0;
}
}
?>
......@@ -150,9 +150,9 @@ class Mechanic_model extends CI_Model {
POWER(SIN(($current_lng-ME.location_lng)*pi()/180/2),2) )) AS distance
FROM mechanic AS ME
INNER JOIN admin_users AS AU ON (AU.id=ME.mechanic_id)
LEFT JOIN mechanic_rating AS MR ON (MR.mechanic_id=ME.mechanic_id)
LEFT JOIN mechanic_shop AS MS ON (MS.shop_id=ME.shop_id AND MS.status='1')
WHERE AU.status='1'
-- GROUP BY ME.mechanic_id
-- HAVING distance<30";
$mechData = $this->db->query($sql);
......
......@@ -513,12 +513,33 @@ class Webservice_model extends CI_Model {
$respArr['message'] = 'Sorry, You are already Rated for this mechanic';
return $respArr;
}
$postData['status'] = '1';
if($this->db->insert('mechanic_rating',$postData)){
$respArr['status'] = 'success';
$respArr['message'] = 'success';
}
return $respArr;
}
public function acceptMechanicQuote($postData){
$respArr = array('status'=>'error','message'=>'Something went Wrong.. Try Again');
if(empty($postData['bookingId'])){
$respArr['message'] = 'Booking Id is Required';
return $respArr;
}
if(empty($postData['mechanicId'])){
$respArr['message'] = 'Mechanic Id is Required';
return $respArr;
}
if($this->db->update('mechanic_booking',array('status'=>'1'),array('booking_id'=>$postData['bookingId'],'mechanic_id'=>$postData['mechanicId']))){
$this->db->update('mechanic_booking',array('status'=>'2'),array('booking_id'=>$postData['bookingId'],'mechanic_id !='=>$postData['mechanicId']));
$this->db->update('bookings',array('status'=>'1'),array('booking_id'=>$postData['bookingId']));
$respArr['status'] = 'success';
$respArr['message'] = 'Updated Successfully';
}
return $respArr;
}
}
?>
......@@ -69,7 +69,7 @@
<tr>
<th class="hidden">ID</th>
<th width="18%;">Car Name</th>
<th width="12%;">Mechanic</th>
<!-- <th width="12%;">Mechanic</th> -->
<th width="12%;">Customer</th>
<th width="15%;">Scheduled Date</th>
<th width="11%;">Service Fee</th>
......@@ -84,7 +84,6 @@
<tr>
<th class="hidden"><?= $bookData->booking_id ?></th>
<th class="center"><?= $bookData->car_name ?></th>
<th class="center"><?= $bookData->mechFirstName.' '.$bookData->mechLastName ?></th>
<th class="center"><?= $bookData->custFirstName.' '.$bookData->custLastName ?></th>
<th class="center">
<?= $bookData->scheduled_date.' '.$bookData->scheduled_time ?>
......@@ -92,44 +91,65 @@
<th class="center"><?= $bookData->cost ?></th>
<th class="center">
<?php
switch($bookData->status){
case 0: echo 'Pending'; break;
case 1: echo 'Accepted'; break;
case 3: echo 'Completed'; break;
case 4: echo 'Cancelled'; break;
if($this->session->userdata['user_type'] == 1 ){
switch($bookData->status){
case 0: echo 'Pending'; break;
case 1: echo 'Accepted'; break;
case 3: echo 'Completed'; break;
case 4: echo 'Cancelled'; break;
}
} else {
switch($bookData->mech_status){
case 0: echo 'Pending'; break;
case 1: echo 'Accepted'; break;
case 2: echo 'Rejected'; break;
}
}
?>
</th>
<td class="center float-right">
<td class="center">
<button class="btn btn-sm btn-primary" booking_id="<?= encode_param($bookData->booking_id) ?>" id="showBookinDetails">
<i class="fa fa-fw fa-edit"></i>View Quote
</button>
<?php if($bookData->status == 1){ ?>
<a class="btn btn-sm btn-success" style="background-color:#ac2925" href="<?= base_url("Bookings/changeBookingStatus/".encode_param($bookData->booking_id)."/4/".encode_param($mechanic_id)) ?>">
<i class="fa fa-cog"></i> Cancel
</a>
<?php } ?>
<?php if($bookData->status == 0 || $bookData->status == 4){ ?>
<a class="btn btn-sm btn-success" href="<?= base_url("Bookings/changeBookingStatus/".encode_param($bookData->booking_id)."/1/".encode_param($mechanic_id)) ?>">
<i class="fa fa-cog"></i> Accept
</a>
<?php } ?>
<?php if($this->session->userdata['user_type'] == 1){
if($bookData->status == 0 || $bookData->status == 1){ ?>
<a class="btn btn-sm btn-success" style="background-color:#ac2925" href="<?= base_url("Bookings/changeBookingStatus/".encode_param($bookData->booking_id)."/4/".encode_param($mechanic_id)) ?>">
<i class="fa fa-cog"></i> Cancel
</a>
<?php } if($bookData->status == 4 ){ ?>
<a class="btn btn-sm btn-success" href="<?= base_url("Bookings/changeBookingStatus/".encode_param($bookData->booking_id)."/1/".encode_param($mechanic_id)) ?>">
<i class="fa fa-cog"></i> Accept
</a>
<?php }
} else {
if($bookData->mech_status == 0 || $bookData->mech_status == 1){ ?>
<a class="btn btn-sm btn-success" style="background-color:#ac2925" href="<?= base_url("Bookings/changeBookingStatus/".encode_param($bookData->booking_id)."/4/".encode_param($mechanic_id)) ?>">
<i class="fa fa-cog"></i> Cancel
</a>
<?php } if($bookData->mech_status == 2 || $bookData->mech_status == 0){ ?>
<a class="btn btn-sm btn-success" href="<?= base_url("Bookings/changeBookingStatus/".encode_param($bookData->booking_id)."/1/".encode_param($mechanic_id)) ?>">
<i class="fa fa-cog"></i> Accept
</a>
<?php }
} ?>
<a class="btn btn-sm btn-danger"
href="<?= base_url("Bookings/changeBookingStatus/".encode_param($bookData->booking_id)."/2/".encode_param($mechanic_id))?>"
onClick="return doconfirm()">
<i class="fa fa-fw fa-trash"></i>Delete
</a>
<?php if($bookData->custom_id == ''){
if($this->session->userdata['user_type'] != 1 ){
?>
<button class="btn btn-sm btn-primary" style="margin-top:3px;" booking_id="<?= encode_param($bookData->booking_id) ?>" id="customQuote" view="0">
<i class="fa fa-fw fa-edit"></i><span>Generate Custom Quote</span>
</button>
<?php } } else{ ?>
<button class="btn btn-sm btn-primary" style="margin-top:3px;" booking_id="<?= encode_param($bookData->custom_id) ?>" id="customQuote" view="1">
<i class="fa fa-fw fa-edit"></i><span>View Custom Quote</span>
</button>
<?php } ?>
if($this->session->userdata['user_type'] != 1 ){ ?>
<button class="btn btn-sm btn-primary" style="margin-top:3px;" booking_id="<?= encode_param($bookData->booking_id) ?>" id="customQuote" view="0">
<i class="fa fa-fw fa-edit"></i><span>Generate Custom Quote</span>
</button>
<?php } ?>
<?php } else { ?>
<button class="btn btn-sm btn-primary" style="margin-top:3px;" booking_id="<?= encode_param($bookData->custom_id) ?>" id="customQuote" view="1">
<i class="fa fa-fw fa-edit"></i><span>View Custom Quote</span>
</button>
<?php } ?>
</td>
</tr>
<?php } } ?>
......
......@@ -52,7 +52,7 @@
jQuery(function () {
jQuery('.datatable').DataTable({
"ordering" : jQuery(this).data("ordering"),
"order": [[ 0, "asc" ]]
"order": [[ 0, "desc" ]]
});
});
<?php //} ?>
......
......@@ -830,7 +830,8 @@ function customQuote(thisObj){
'</div>'+
'<input type="hidden" name="issue_id[]" value="'+value['issue_id']+'">'+
'<input type="hidden" name="sub_issue_id[]" value="'+value['sub_issue_id']+'">'+
'</div>';
'</div>'+
'<input type="hidden" name="issue_category[]" value="'+value['issue_category']+'">';
});
issueHtml += '<input type="hidden" id="array_count" name="count" value="'+issues_selected.length+'">'+
'</div>'+
......@@ -1113,11 +1114,6 @@ jQuery('[id="showBookinDetails"]').on('click',function() {
'<div class="col-md-6"><label>'+booking_data['custFirstName']+' '+booking_data['custLastName']+'</label></div>'+
'</div> '+
'<div class="row">'+
'<div class="col-md-4">Mechanic</div>'+
'<div class="col-md-1">:</div>'+
'<div class="col-md-6"><label>'+booking_data['mechFirstName']+' '+booking_data['mechLastName']+'</label></div>'+
'</div> '+
'<div class="row">'+
'<div class="col-md-4">Current Milage</div>'+
'<div class="col-md-1">:</div>'+
'<div class="col-md-6"><label>'+booking_data['mileage']+'</label></div>'+
......@@ -1165,7 +1161,26 @@ jQuery('[id="showBookinDetails"]').on('click',function() {
'<div class="col-md-1">:</div>'+
'<div class="col-md-6"><label>'+booking_data['car_location']+'</label></div>'+
'</div> '+
'</div> '+issueHtml+optionalHtml+
'</div> '+issueHtml+
'<div class="col-md-12"> '+
'<div class="row"><label>Mechanic Details</label></div>'+
'<div class="col-md-3"><div class="row"><label>Mechanic Name</label></div></div>'+
'<div class="col-md-3"><div class="row"><label>Amount</label></div></div>'+
'<div class="col-md-2"><div class="row"><label>status</label></div></div>'+
'<div class="row">';
jQuery.each(booking_data['mechanic_data'], function (index1, value1) {
if(value1['custom_amount'] == '' || value1['custom_amount'] == null || value1['custom_amount'] == undefined || value1['custom_amount'] == 'null' || value1['custom_amount'] == 'undefined'){
value1['custom_amount'] = booking_data['cost'];
}
html+= '<div class="col-md-12">'+
'<div class="col-md-3">'+value1['first_name']+' '+value1['last_name']+'</div>'+
'<div class="col-md-3">'+value1['custom_amount']+'</div>'+
'<div class="col-md-2">'+value1['status']+'</div>'+
'</div>';
});
html+= '</div>'+
'</div>'+
optionalHtml+
'</div>';
remModalLoader();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment