Commit 72e54c70 by Tobin

Merge branch 'master' of https://gitlab.techware.co.in/tobin/dcarfixers into tobin

parents af34c65e 1a3f5be7
......@@ -36,7 +36,8 @@ class Bookings extends CI_Controller {
$template['menu'] = "Bookings Management";
$template['smenu'] = "View Bookings";
$template['mechanic_id'] = $mechanic_id;
$template['mechanic_id'] = ($this->session->userdata('user_type')==1 &&
empty($mechanic_id))?'1':$mechanic_id;
$template['mechanic_data'] = $mechanic_data;
$template['bookingData'] = $this->Booking_model->getMechBookings($mechanic_id,'','0,1,3,4');
$this->load->view('template',$template);
......@@ -64,13 +65,44 @@ class Bookings extends CI_Controller {
echo json_encode($return_arr);exit;
}
$booking_id = decode_param($_POST['booking_id']);
$bookingData = $this->Booking_model->getMechBookings('',$booking_id,'0,1,3,4');
$mechanic_id = ($this->session->userdata('user_type')==2)?$this->session->userdata('id'):'';
$bookingData = $this->Booking_model->getMechBookings($mechanic_id,$booking_id,'0,1,3,4');
if(!empty($bookingData)){
$return_arr['status'] = 1;
$return_arr['data'] = $bookingData;
echo json_encode($return_arr);exit;
}
echo json_encode($return_arr);exit;
}
public function insertCustomQuote(){
$return_arr = array('status'=>'error');
parse_str($_POST['data'], $output);
if(!isset($output) || empty($output)){
echo json_encode($return_arr);exit;
}
$return_arr = $this->Booking_model->insertCustomQuote($output);
echo json_encode($return_arr);exit;
}
public function getCustomData(){
$return_arr = array('status'=>'0');
if(!isset($_POST) || empty($_POST) || !isset($_POST['custom_id']) || empty($_POST['custom_id']) ||
empty(decode_param($_POST['custom_id']))){
echo json_encode($return_arr);exit;
}
$custom_booking_id = decode_param($_POST['custom_id']);
// print_r($custom_booking_id);exit();
$CustData = $this->Booking_model->getCustomData($custom_booking_id);
if(!empty($CustData)){
$return_arr['status'] = 1;
$return_arr['data'] = $CustData;
echo json_encode($return_arr);exit;
}
echo json_encode($return_arr);exit;
}
}
?>
\ No newline at end of file
......@@ -105,7 +105,7 @@ class Booking_model extends CI_Model {
}
function getMechBookings($mechanic_id = '', $booking_id = '', $status = '1'){
if(empty($mechanic_id) && empty($booking_id)){
if($this->session->userdata('user_type') != 1 && empty($mechanic_id)){
return 0;
}
......@@ -119,12 +119,13 @@ class Booking_model extends CI_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
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";
......@@ -143,5 +144,43 @@ class Booking_model extends CI_Model {
$status=$this->db->update('bookings',array('status'=>$status),array('booking_id'=>$booking_id));
return $status;
}
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;
}
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;
}
}
?>
......@@ -62,7 +62,7 @@ class Mechanic_model extends CI_Model {
$cond .= (!empty($cond))?" AND ":$cond;
$cond .= (!empty($view_all))?" ADMN.status IN (0,1) ":" ADMN.status IN (1) ";
$sql = "SELECT ADMN.username,ADMN.user_type,ADMN.display_name,ADMN.profile_image,ADMN.status,
$sql = "SELECT ADMN.username,ADMN.user_type,TRIM(CONCAT(MECH.first_name,' ' ,IFNULL(MECH.last_name,''))) as display_name,ADMN.profile_image,ADMN.status,
MSH.shop_name, MSH.address AS shop_address, MSH.phone AS shop_phone,
MSH.email_id AS shop_email, MECH.*
FROM mechanic AS MECH
......@@ -107,7 +107,8 @@ class Mechanic_model extends CI_Model {
if(!$status) { return 0; }
$upMecArr = array('city'=>$mechanic_data['city'],'first_name'=>$mechanic_data['first_name'],
'state'=>$mechanic_data['state'],'shop_id'=>$mechanic_data['shop_id'],
'state'=>$mechanic_data['state'],
'shop_id'=>(!empty($mechanic_data['shop_id']) ? $mechanic_data['shop_id'] : '0'),
'address'=>$mechanic_data['address'],'email_id'=>$mechanic_data['email_id'],
'last_name'=>$mechanic_data['last_name'],'phone'=>$mechanic_data['phone'],
'location'=>$mechanic_data['location'],
......
......@@ -38,8 +38,11 @@
<label>Choose a Mechanic</label>
<select name="mechanic_id" class="form-control required" data-parsley-trigger="change"
onchange="changeMechanic()" dmClick="0" required>
<option selected disabled>Select Mechanic</option>
<?php
<?php if($this->session->userdata['user_type'] == 1){?>
<option>View All</option>
<?php }else{ ?>
<option selected disabled>Select Mechanic</option>
<?php }
if(!empty($mechanic_data)){
foreach ($mechanic_data as $mechanic) {
$chkFlg = ($mechanic_id == $mechanic->mechanic_id)?'selected':'';
......@@ -116,6 +119,17 @@
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 } ?>
</td>
</tr>
<?php } } ?>
......
......@@ -37,8 +37,7 @@
<div class="col-md-6">
<div class="form-group">
<label>Display Name</label>
<input type="text" class="form-control required" data-parsley-trigger="change"
data-parsley-minlength="2" name="display_name" required=""
<input type="text" class="form-control required" data-parsley-trigger="change" data-parsley-minlength="2" name="display_name" required=""
placeholder="Enter Display Name" value="<?= (isset($user_data->display_name))?$user_data->display_name:'' ?>">
<span class="glyphicon form-control-feedback"></span>
</div>
......
......@@ -495,3 +495,15 @@
border-right: 1px solid #e5e5e5;
border-top: 1px solid #e5e5e5;
}
.errInput{
border: 1px solid red !important;
}
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
margin: 0;
}
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