mirror of
https://gitlab.com/CIEFWorldwideSdnBhd/exchange.git
synced 2026-08-25 23:34:11 +00:00
cancel bookings
This commit is contained in:
@@ -23,30 +23,10 @@ class BookingController extends Controller
|
||||
{
|
||||
|
||||
public function index(){
|
||||
$user = Auth::user();
|
||||
$bookings = Booking::select('user_id', 'id', 'created_at', 'is_cancel', 'status', 'rate', 'term', 'amount', 'bia', 'verification_status')
|
||||
->where('user_id', Auth::user()->id)
|
||||
->where('is_cancel', 0)
|
||||
->where(function ($query) {
|
||||
$query->where(function($query){
|
||||
$query->where('status', '<', '5')
|
||||
->where(function ($query) {
|
||||
$query->where('term', '=', 'x2_cheque')
|
||||
->orwhere('term', '=', 'x2_ba')
|
||||
->orwhere('term', '=', 'x2_cash');
|
||||
});
|
||||
})
|
||||
->orwhere(function ($query) {
|
||||
$query->where('status', '<', '7')
|
||||
->where(function ($query) {
|
||||
$query->where('term', '=', 'x1_cheque')
|
||||
->orwhere('term', '=', 'x1_ba')
|
||||
->orwhere('term', '=', 'x1_cash');
|
||||
});
|
||||
});
|
||||
})
|
||||
->orderby('updated_at','desc')
|
||||
->paginate(10);
|
||||
$bookings = Booking::UserBooking(Auth::user()->id)->InCompleteOrders()
|
||||
->where('is_cancel', 0)
|
||||
->orderby('updated_at','desc')
|
||||
->paginate(10);
|
||||
|
||||
|
||||
// reformat to fit frontend structure
|
||||
@@ -105,28 +85,7 @@ class BookingController extends Controller
|
||||
}
|
||||
|
||||
public function userComplete(){
|
||||
$user = Auth::user();
|
||||
$bookings = Booking::where('user_id', $user->id)
|
||||
->where(function ($query) {
|
||||
$query->where(function ($query) {
|
||||
$query->where('status', '5')
|
||||
->where(function ($query) {
|
||||
$query->where('term', 'x2_cash')
|
||||
->orwhere('term', 'x2_cheque')
|
||||
->orwhere('term', 'x2_ba');
|
||||
});
|
||||
})
|
||||
->orwhere(function ($query) {
|
||||
$query->where('status', '7')
|
||||
->where(function ($query) {
|
||||
$query->where('term', 'x1_cash')
|
||||
->orwhere('term', 'x1_cheque')
|
||||
->orwhere('term', 'x1_ba');
|
||||
});
|
||||
});
|
||||
})
|
||||
->orderby('updated_at','desc')
|
||||
->paginate(10);
|
||||
$bookings = Booking::UserBooking(Auth::user()->id)->CompleteOrders()->orderby('updated_at','desc')->paginate(10);
|
||||
|
||||
// reformat to fit frontend structure
|
||||
foreach ($bookings as $booking) {
|
||||
@@ -151,36 +110,7 @@ class BookingController extends Controller
|
||||
if ($booking->term == "x2_cash" || $booking->term == "x2_cheque" || $booking->term == "x2_ba") {
|
||||
$booking->track_status = "(". $booking->status ."/5)";
|
||||
}
|
||||
|
||||
switch ($booking->status) {
|
||||
case 1:
|
||||
$status_desc = "Order in progress";
|
||||
break;
|
||||
case 2:
|
||||
$status_desc = "Waiting for payment";
|
||||
break;
|
||||
case 3:
|
||||
$status_desc = "Waiting verification";
|
||||
break;
|
||||
case 4:
|
||||
$status_desc = "Processing transfer";
|
||||
break;
|
||||
case 5:
|
||||
$status_desc = "Transfer Complete, please upload your PO";
|
||||
if ($booking->term == "x2_cash" || $booking->term == "x2_cheque" || $booking->term == "x2_ba"){
|
||||
$status_desc = "Order Completed";
|
||||
}
|
||||
break;
|
||||
case 6:
|
||||
$status_desc = "Processing invoice";
|
||||
break;
|
||||
case 7:
|
||||
$status_desc = "Order Completed";
|
||||
break;
|
||||
default:
|
||||
$status_desc = "";
|
||||
}
|
||||
$booking->status_desc = $status_desc;
|
||||
$booking->status_desc = "Order Completed";
|
||||
$booking->marking = $booking->user->marking;
|
||||
}
|
||||
|
||||
@@ -188,28 +118,7 @@ class BookingController extends Controller
|
||||
}
|
||||
|
||||
public function adminIndex(?string $userId = null){
|
||||
$user = Auth::user();
|
||||
$bookings = Booking::UserBooking($userId)->select('user_id', 'id', 'created_at', 'admin_status', 'rate', 'term', 'amount', 'bia', 'verification_status')
|
||||
->where(function ($query) {
|
||||
$query->where(function ($query) {
|
||||
$query->where('admin_status', '<', '6')
|
||||
->where(function ($query) {
|
||||
$query->where('term', 'x2_cash')
|
||||
->orwhere('term', 'x2_cheque')
|
||||
->orwhere('term', 'x2_ba');
|
||||
});
|
||||
})
|
||||
->orwhere(function ($query) {
|
||||
$query->where('status', '<', '7')
|
||||
->where(function ($query) {
|
||||
$query->where('term', 'x1_cash')
|
||||
->orwhere('term', 'x1_cheque')
|
||||
->orwhere('term', 'x1_ba');
|
||||
});
|
||||
});
|
||||
})
|
||||
->orderby('updated_at','desc')
|
||||
->paginate(30);
|
||||
$bookings = Booking::UserBooking($userId)->InCompleteOrders()->orderby('updated_at', "desc")->paginate(30);
|
||||
|
||||
// reformat to fit frontend structure
|
||||
foreach ($bookings as $booking) {
|
||||
@@ -275,27 +184,7 @@ class BookingController extends Controller
|
||||
|
||||
public function adminBookComplete(?string $userId = null){
|
||||
$user = Auth::user();
|
||||
$bookings = Booking::UserBooking($userId)->select('user_id', 'id', 'created_at', 'admin_status', 'rate', 'term', 'amount', 'bia', 'verification_status')
|
||||
->where(function ($query) {
|
||||
$query->where(function ($query) {
|
||||
$query->where('admin_status', '6')
|
||||
->where(function ($query) {
|
||||
$query->where('term', 'x2_cash')
|
||||
->orwhere('term', 'x2_cheque')
|
||||
->orwhere('term', 'x2_ba');
|
||||
});
|
||||
})
|
||||
->orwhere(function ($query) {
|
||||
$query->where('admin_status', '7')
|
||||
->where(function ($query) {
|
||||
$query->where('term', 'x1_cash')
|
||||
->orwhere('term', 'x1_cheque')
|
||||
->orwhere('term', 'x1_ba');
|
||||
});
|
||||
});
|
||||
})
|
||||
->orderby('updated_at','desc')
|
||||
->paginate(10);
|
||||
$bookings = Booking::UserBooking($userId)->CompleteOrders()->orderby('updated_at', "desc")->paginate(10);
|
||||
// reformat to fit frontend structure
|
||||
foreach ($bookings as $booking) {
|
||||
// set timeout
|
||||
@@ -321,39 +210,8 @@ class BookingController extends Controller
|
||||
$booking->track_status = "(". $booking->admin_status ."/7)";
|
||||
}
|
||||
|
||||
switch ($booking->admin_status) {
|
||||
case 1:
|
||||
$status_desc = "Waiting customer upload bank slip";
|
||||
break;
|
||||
case 2:
|
||||
$status_desc = "Verify user bank slip";
|
||||
break;
|
||||
case 3:
|
||||
$status_desc = "Generate supplier booking report";
|
||||
break;
|
||||
case 4:
|
||||
$status_desc = "Supplier booking report. Please confirm with your booking.";
|
||||
break;
|
||||
case 5:
|
||||
$status_desc = "Please, upload China Bankslip";
|
||||
break;
|
||||
case 6:
|
||||
$status_desc = "Waiting customer to upload purchase order";
|
||||
if ($booking->term == "x2_cash" || $booking->term == "x2_cheque" || $booking->term == "x2_ba"){
|
||||
$status_desc = "Order Completed";
|
||||
}
|
||||
break;
|
||||
case 7:
|
||||
$status_desc = "Customer has uploaded purchase order, please upload invoice";
|
||||
break;
|
||||
case 8:
|
||||
$status_desc = "Booking Completed";
|
||||
break;
|
||||
default:
|
||||
$status_desc = "";
|
||||
}
|
||||
$booking->marking = $booking->user->marking;
|
||||
$booking->status_desc = $status_desc;
|
||||
$booking->status_desc = "Booking Completed";
|
||||
}
|
||||
return $bookings;
|
||||
}
|
||||
@@ -750,30 +608,49 @@ class BookingController extends Controller
|
||||
return response()->json($book_id, 204);
|
||||
}
|
||||
|
||||
// public function userCanceledBooking(Request $request)
|
||||
// {
|
||||
// $user = Auth::user();
|
||||
// $bookings = Booking::select('user_id', 'id', 'created_at', 'is_cancel', 'status', 'rate', 'term', 'amount', 'bia', 'verification_status')
|
||||
// ->where('user_id', Auth::user()->id)
|
||||
// ->where('is_cancel', 1)
|
||||
// ->get();
|
||||
// return $bookings;
|
||||
public function CancelledBookings()
|
||||
{
|
||||
$bookings = Booking::where('is_cancel', 1)->paginate(10);
|
||||
foreach ($bookings as $booking) {
|
||||
// set timeout
|
||||
$date1 = new DateTime($booking->created_at);
|
||||
$date2 = new DateTime();
|
||||
$time_in_seconds = SettingCredit::orderby('updated_at','desc')->first()->time_limit;
|
||||
$difference_in_seconds = ($date1->format('U') + $time_in_seconds) - ($date2->format('U'));
|
||||
$booking->timeout = $difference_in_seconds;
|
||||
|
||||
// }
|
||||
// TODO : you can make it better
|
||||
if($difference_in_seconds < 0 ){
|
||||
$booking->timeout = 0;
|
||||
}
|
||||
|
||||
// public function cancelBooking(Request $request, $book_id)
|
||||
// {
|
||||
// $user = Auth::user();
|
||||
// $bookings = DB::table('booking')
|
||||
// ->where('user_id', Auth::user()->id);
|
||||
// TODO : transfer_amount change name to bia
|
||||
$booking->transfer_amount = $booking->bia;
|
||||
|
||||
// $bookings->is_cancel = 1;
|
||||
$term = $booking->term;
|
||||
if ($booking->term == "x2_cash" || $booking->term == "x2_cheque" || $booking->term == "x2_ba"){
|
||||
$booking->track_status = "(". $booking->admin_status ."/6)";
|
||||
}
|
||||
else{
|
||||
$booking->track_status = "(". $booking->admin_status ."/7)";
|
||||
}
|
||||
|
||||
// if($booking->save()){
|
||||
// return response()->json(['message'=> 'booking cancelled'], 200);
|
||||
// }
|
||||
$booking->marking = $booking->user->marking;
|
||||
$booking->status_desc = "Booking Canclled";
|
||||
}
|
||||
return $bookings;
|
||||
|
||||
// }
|
||||
}
|
||||
|
||||
public function cancelBooking($book_id)
|
||||
{
|
||||
$booking = Booking::findOrFail($book_id);
|
||||
$booking->is_cancel = 1;
|
||||
if($booking->save()){
|
||||
return response()->json(['message'=> 'booking cancelled'], 200);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public function calculation(Request $request)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user