From 11ccbd6a91f3981d11c40af457af42c41aaad315 Mon Sep 17 00:00:00 2001 From: Nazri Date: Wed, 30 May 2018 12:24:30 +0800 Subject: [PATCH] fix discussion --- app/Http/Controllers/BookingController.php | 104 ++++-------------- app/PurchaseOrder.php | 2 +- app/UserBankSlip.php | 2 +- ...28_085925_create_purchase_orders_table.php | 2 +- ..._030248_update_upload_booking_bankslip.php | 31 ++++++ routes/api.php | 4 +- tests/Unit/BookingTest.php | 2 +- 7 files changed, 61 insertions(+), 86 deletions(-) create mode 100644 database/migrations/2018_05_30_030248_update_upload_booking_bankslip.php diff --git a/app/Http/Controllers/BookingController.php b/app/Http/Controllers/BookingController.php index 7c6f105c..4d6975ef 100644 --- a/app/Http/Controllers/BookingController.php +++ b/app/Http/Controllers/BookingController.php @@ -12,32 +12,7 @@ use Auth; class BookingController extends Controller { - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - //public function index() - //{ - // return response()->json(['success' => true, 'message'=> "You have successfully logged out."]); - //} - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - //public function create() - //{ - // return response()->json(['success' => true, 'message'=> "Success"]); - //} - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ public function store(Request $request) { $rates = Rate::all()->last(); @@ -74,7 +49,7 @@ class BookingController extends Controller } //Calculation part - // $bookings = Booking::all(); + //$bookings = Booking::all(); $amount = $request->input("amount"); if ($amount >= 10000 && ($term == 'x2_cash' || $term = 'x2_cheque' || $term = 'x2_ba')) { $svcharge = 0; @@ -130,7 +105,7 @@ class BookingController extends Controller } - public function uploadbankslip(Request $request) + public function uploadbankslip(Request $request, $id) { // Handle File Upload if($request->hasFile('bankslip_url')){ @@ -145,75 +120,53 @@ class BookingController extends Controller // Upload Image $path = $request->file('bankslip_url')->storeAs('public/userbankslip', $fileNameToStore); } else { - $fileNameToStore = 'hello.jpg'; + return response()->json(['message'=>'No file detected'],200); + } + + $id = Booking::find($id); + $id->book_id = $request->input('book_id'); + $id->cust_marking = $request->input('cust_marking'); + $id->is_approve = $request->input('is_approve'); + $id->bank_slip_type = $request->input('bank_slip_type'); + // Create Post $post = new UserBankSlip; - $post->bank_slip_type = $request->input('bank_slip_type'); $post->transfer_amount = $request->input('transfer_amount'); - $post->book_id = $request->input('book_id'); - $post->cust_marking = $request->input('cust_marking'); - $post->is_approve = $request->input('is_approve'); $post->bankslip_url = $fileNameToStore; $post->save();; + + } - public function uploadPurchaseOrder(Request $request) + public function uploadPurchaseOrder(Request $request, $id) { // Handle File Upload - if($request->hasFile('image_location')){ + if($request->hasFile('image_url')){ // Get filename with the extension - $filenameWithExt = $request->file('image_location')->getClientOriginalName(); + $filenameWithExt = $request->file('image_url')->getClientOriginalName(); // Get just filename $filename = pathinfo($filenameWithExt, PATHINFO_FILENAME); // Get just ext - $extension = $request->file('image_location')->getClientOriginalExtension(); + $extension = $request->file('image_url')->getClientOriginalExtension(); // Filename to store $fileNameToStore= $filename.'_'.time().'.'.$extension; // Upload Image - $path = $request->file('image_location')->storeAs('public/userPurchaseOrder', $fileNameToStore); + $path = $request->file('image_url')->storeAs('public/userPurchaseOrder', $fileNameToStore); } else { - $fileNameToStore = 'hello.jpg'; + return response()->json(['message'=>'No file detected'],200); } + + $id = Booking::find($id); + $id->book_id = $request->input('book_id'); + // Create Post $post = new PurchaseOrder; $post->amount = $request->input('amount'); - $post->book_id = $request->input('book_id'); - $post->image_location = $fileNameToStore; + $post->image_url = $fileNameToStore; $post->save();; } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - //public function show($id) - //{ - // $booking = Booking::find($id); - // return view('booking.index'); - //} - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - //public function edit($id) - //{ - // - //} - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ public function update(Request $request, $book_id) { $book_id = Booking::find($book_id); @@ -231,17 +184,8 @@ class BookingController extends Controller $book_id->save(); return response()->json(['book_id'=>$book_id],200); - - - } - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ public function delete(Booking $book_id) { $book_id->delete($book_id); diff --git a/app/PurchaseOrder.php b/app/PurchaseOrder.php index 8aab2697..6a5a9374 100644 --- a/app/PurchaseOrder.php +++ b/app/PurchaseOrder.php @@ -6,5 +6,5 @@ use Illuminate\Database\Eloquent\Model; class PurchaseOrder extends Model { - protected $fillable = ['image_location','amount','book_id']; + protected $fillable = ['image_url','amount','book_id']; } diff --git a/app/UserBankSlip.php b/app/UserBankSlip.php index c169e599..8aa809a6 100644 --- a/app/UserBankSlip.php +++ b/app/UserBankSlip.php @@ -6,5 +6,5 @@ use Illuminate\Database\Eloquent\Model; class UserBankSlip extends Model { - protected $fillable = ['bank_slip_type','bankslip_url','transfer_amount','book_id','cust_marking', 'is_approve']; + protected $fillable = ['bank_slip_type','bankslip_url','transfer_amount','book_id','cust_marking']; } diff --git a/database/migrations/2018_05_28_085925_create_purchase_orders_table.php b/database/migrations/2018_05_28_085925_create_purchase_orders_table.php index 910a6991..08ebcbd2 100644 --- a/database/migrations/2018_05_28_085925_create_purchase_orders_table.php +++ b/database/migrations/2018_05_28_085925_create_purchase_orders_table.php @@ -15,7 +15,7 @@ class CreatePurchaseOrdersTable extends Migration { Schema::create('purchase_orders', function (Blueprint $table) { $table->increments('id'); - $table->string('image_location'); + $table->string('image_url'); $table->double('amount'); $table->integer('book_id')->unsigned(); $table->foreign('book_id')->references('id')->on('bookings'); diff --git a/database/migrations/2018_05_30_030248_update_upload_booking_bankslip.php b/database/migrations/2018_05_30_030248_update_upload_booking_bankslip.php new file mode 100644 index 00000000..3e020dee --- /dev/null +++ b/database/migrations/2018_05_30_030248_update_upload_booking_bankslip.php @@ -0,0 +1,31 @@ +boolean('is_approve')->default('false'); + }); + } + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::table('user_bank_slips', function (Blueprint $table) { + // + }); + } +} diff --git a/routes/api.php b/routes/api.php index da4caed6..917a0732 100644 --- a/routes/api.php +++ b/routes/api.php @@ -81,5 +81,5 @@ Route::delete('setting-supplier/{supplier}', 'SettingSupplierController@delete') Route::post('upload-china-bankslip', 'ChinaBankSlipController@store'); -Route::post('upload-bs', 'BookingController@uploadbankslip'); -Route::post('upload-po', 'BookingController@uploadPurchaseOrder'); \ No newline at end of file +Route::post('booking/{id}/upload-user-bankslip', 'BookingController@uploadbankslip'); +Route::post('booking/{id}/upload-po', 'BookingController@uploadPurchaseOrder'); \ No newline at end of file diff --git a/tests/Unit/BookingTest.php b/tests/Unit/BookingTest.php index a3a100dc..598336a8 100644 --- a/tests/Unit/BookingTest.php +++ b/tests/Unit/BookingTest.php @@ -40,7 +40,7 @@ class BookingTest extends TestCase 'term' => 'x2_cash', 'amount' => '14000' ]); - $response->assertStatus(500); + $response->assertStatus(200); } public function testImageUpload()