last(); $term = $request->input('term'); $rate = 1; // default switch ($term) { case "x1_cash": $rate = $rates->x1_cash; break; case "x1_cheque": $rate = $rates->x1_cheque; break; case "x1_ba": $rate = $rates->x1_ba; break; case "x2_cash": $rate = $rates->x2_cash; break; case "x2_cheque": $rate = $rates->x2_cheque; break; case "x2_ba": $rate = $rates->x2_ba; break; default: return Response::json(array( 'success' => false, 'message' => 'Invalid input', ), 422); break; } <<<<<<< HEAD // Calculation Service charge ======= // Calculation // Service charge >>>>>>> 83dfca2ae18825a69bca7aec5619abf7f4d0671f $amount = $request->input("amount"); //logic : if amount higher than 10,000, no service charge. if amount lower than 10,000, 20.00 service charge if ($amount >= 10000 && ($term == 'x2_cash' || $term = 'x2_cheque' || $term = 'x2_ba')) { $svcharge = 0; } else { $svcharge = 20.00; } //initial calculation $RMBinMYR = (($amount + $svcharge) / $rate); //calculate gst, 0% after 1june 2018 $gst = 0*$RMBinMYR; //calculate Sales Tax, 10% of initial calculation $sales_tax = 0.10*$RMBinMYR; //calculate billing, 1.5% of initial calculation $billing = 0.015*$RMBinMYR; //bia = bank in amount in MYR $bia = round($RMBinMYR + $gst + $sales_tax + $billing,2); $user = Auth::user(); $booking = new Booking(); $booking->account_name = $request->input('account_name'); $booking->account_num = $request->input('account_num'); $booking->bank_name = $request->input('bank_name'); $booking->bank_branch = $request->input('bank_branch'); $booking->company_name = $request->input('company_name'); $booking->company_address = $request->input('company_address'); $booking->bank_address = $request->input('bank_address'); $booking->swift_code = $request->input('swift_code'); $booking->cnap = $request->input('cnap'); $booking->term = $request->input('term'); $booking->amount = $request->input('amount'); $booking->rate_id = $rate; $booking->rmb_book_amount = $request->input('rmb_book_amount'); $booking->rmb_book_pay_method = $request->input('rmb_book_pay_method'); $booking->rmb_book_account_name = $request->input('rmb_book_account_name'); $booking->rmb_book_acc_no = $request->input('rmb_book_acc_no'); $booking->rmb_book_bank_branch = $request->input('rmb_book_bank_branch'); $booking->usd_book_amount = $request->input('usd_book_amount'); $booking->usd_book_pay_method = $request->input('usd_book_pay_method'); $booking->usd_book_company_name = $request->input('usd_book_company_name'); $booking->usd_book_company_address = $request->input('usd_book_company_address'); $booking->usd_book_swift_code = $request->input('usd_book_swift_code'); $booking->usd_book_cnap = $request->input('usd_book_cnap'); $booking->usd_book_bank_branch = $request->input('usd_book_bank_branch'); $booking->verification_status = $request->input('verification_status'); $booking->user()->associate($user); $booking->bia = $bia; $booking->save(); return response()->json($booking, 201); } public function update(Request $request, $book_id) { $book_id = Booking::find($book_id); $book_id->account_name = $request->input('account_name'); $book_id->account_num = $request->input('account_num'); $book_id->bank_name = $request->input('bank_name'); $book_id->bank_branch = $request->input('bank_branch'); $book_id->company_name = $request->input('company_name'); $book_id->company_address = $request->input('company_address'); $book_id->bank_address = $request->input('bank_address'); $book_id->swift_code = $request->input('swift_code'); $book_id->cnap = $request->input('cnap'); $book_id->save(); return response()->json(['book_id'=>$book_id],200); } public function uploadbankslip(Request $request, $id) { $user_bankslip = Booking::where("user_id", Auth::user()->id)->first(); if (!$user_bankslip) { return response()->json(['message'=>'Access denied'], 200); } $validator = Validator::make($request->all(), [ 'bankslip_url' => 'image|mimes:jpg,jpeg,bmp,png' ]); if($validator->fails()) { return response()->json(['message'=>'Incorrect format'],200); } $unique_image_url = ""; //init variable if($bankslip_url = $request->file('bankslip_url')) { // Get image name and store it $filename = $bankslip_url->getClientOriginalName(); $input['bankslip_url'] = $filename; //hash image name $unique_name = 'bank_slip_' . md5($filename. time()); // Get image extension concentae it with hashed image name $ext = $bankslip_url->getClientOriginalExtension(); $unique_image_url = $unique_name. '.' .$ext; //update database Storage::putFileAs( 'bankslip_url',/*folder name*/ $bankslip_url, $unique_image_url ); } //end if else { return response()->json(['message' => 'No file detected'], 400); } $booking = Booking::find($id); $booking->cust_marking = $request->input('cust_marking'); $booking->bank_slip_type = $request->input('bank_slip_type'); // Create Post $user_bankslip = new UserBankSlip; $user_bankslip->book_id = $booking->id; $user_bankslip->bankslip_url = $unique_image_url; $user_bankslip->transfer_amount = $request->input('transfer_amount'); $user_bankslip->save(); return response()->json(['message'=>$user_bankslip],200); } public function uploadPurchaseOrder(Request $request, $id) { $user_po = Booking::where("user_id", Auth::user()->id)->first(); if (!$user_po) { return response()->json(['message'=>'Access denied'], 200); } $validator = Validator::make($request->all(), [ 'image_url' => 'image|mimes:jpg,jpeg,bmp,png' ]); if($validator->fails()) { return response()->json(['message'=>'Incorrect format'],200); } $unique_image_url = ""; // declare variable if($image_url = $request->file('image_url')) { // Get image name and store it $filename = $image_url->getClientOriginalName(); $input['image_url'] = $filename; // hash image name $unique_name = 'purchase_order_' . md5($filename. time()); // Get image extension concentae it with hashed image name $ext = $image_url->getClientOriginalExtension(); $unique_image_url = $unique_name. '.' .$ext; //update database Storage::putFileAs( 'image_url',/*folder name*/ $image_url, $unique_image_url ); } //end if else { return response()->json(['message' => 'No file detected'], 400); } $booking = Booking::find($id); $user_po = new PurchaseOrder; $user_po->image_url = $unique_image_url; $user_po->book_id = $booking->id; $user_po->amount = $request->input('amount'); $user_po->save(); return response()->json(['message'=>'Success'],200); } <<<<<<< HEAD ======= public function update(Request $request, $book_id) { $book_id = Booking::find($book_id); $book_id->account_name = $request->input('account_name'); $book_id->account_num = $request->input('account_num'); $book_id->bank_name = $request->input('bank_name'); $book_id->bank_branch = $request->input('bank_branch'); $book_id->company_name = $request->input('company_name'); $book_id->company_address = $request->input('company_address'); $book_id->bank_address = $request->input('bank_address'); $book_id->swift_code = $request->input('swift_code'); $book_id->cnap = $request->input('cnap'); $book_id->save(); return response()->json(['book_id'=>$book_id],200); } >>>>>>> 83dfca2ae18825a69bca7aec5619abf7f4d0671f public function delete(Booking $book_id) { $booking->delete($book_id); return response()->json($book_id, 204); } // TODO : cancel booking feature }