diff --git a/app/Booking.php b/app/Booking.php index 6daa1d89..beae4a40 100644 --- a/app/Booking.php +++ b/app/Booking.php @@ -47,5 +47,11 @@ class Booking extends Model public function purchaseOrder(){ return $this->hasOne(PurchaseOrder::class); } + + public function invoice(){ + return $this->hasOne(Invoice::class); + } + + } diff --git a/app/Http/Controllers/BookingController.php b/app/Http/Controllers/BookingController.php index 022a8c95..30a650a5 100644 --- a/app/Http/Controllers/BookingController.php +++ b/app/Http/Controllers/BookingController.php @@ -423,19 +423,6 @@ class BookingController extends Controller return response()->json(['message'=>'Success'],200); } - public function confirmPurchaseOrder($id){ - $booking = Booking::where('user_id',Auth::user()->id)->where('id',$id)->first(); - - $purchase_order = $booking->purchaseOrder()->first(); - - if(!$purchase_order){ - return response()->json(["message"=> "Please upload your purchase order"],400); - } - - $booking->status = 6; - $booking->save(); - return response()->json(['message'=>'Success'],200); - } public function showPurchaseOrder($id){ $booking = Booking::where('id',$id)->first(); @@ -657,8 +644,38 @@ class BookingController extends Controller if($booking->save()){ return response()->json(['message'=>"Success"],200); } + } + + public function confirmPurchaseOrder($id){ + $booking = Booking::where('user_id',Auth::user()->id)->where('id',$id)->first(); + + $purchase_order = $booking->purchaseOrder()->first(); + + if(!$purchase_order){ + return response()->json(["message"=> "Please upload your purchase order"],400); + } + + $booking->status = 6; + $booking->save(); + return response()->json(['message'=>'Success'],200); + } + + public function confirmInvoice(Request $request, $id) + { + $booking = Booking::where('id', $id)->firstOrFail(); + + $invoice = $booking->invoice()->first; + + if(!$invoice){ + return response()->json(["message"=> "Please upload your invoice"],400); + } + + $booking->status = 7; // processing transfer + $booking->admin_status = 6; // upload china bankslip - + if($booking->save()){ + return response()->json(['message'=>"Success"],200); + } } } diff --git a/app/Invoice.php b/app/Invoice.php index 570dc72b..5150b1e4 100644 --- a/app/Invoice.php +++ b/app/Invoice.php @@ -7,4 +7,8 @@ use Illuminate\Database\Eloquent\Model; class Invoice extends Model { protected $fillable = ['invoice_url','amount','booking_id']; + + public function booking(){ + return $this->hasOne('App\Booking'); + } } diff --git a/resources/assets/js/pages/admin/booking/uploadInvoice.vue b/resources/assets/js/pages/admin/booking/uploadInvoice.vue index 5ccd8559..7e2d0d89 100644 --- a/resources/assets/js/pages/admin/booking/uploadInvoice.vue +++ b/resources/assets/js/pages/admin/booking/uploadInvoice.vue @@ -5,7 +5,7 @@