From 3f2d9fbfb8be0960d6f285695f9a0c686fb5ce31 Mon Sep 17 00:00:00 2001 From: Too Date: Wed, 20 Jun 2018 00:38:32 +0800 Subject: [PATCH] Add controller and table for marking --- app/Http/Controllers/BookingController.php | 36 ++++++++--------- app/Http/Controllers/MarkingController.php | 40 +++++++++++++++++++ app/Marking.php | 10 +++++ ...2018_06_19_144347_create_marking_table.php | 33 +++++++++++++++ routes/api.php | 7 +++- tests/Feature/MarkingTest.php | 34 ++++++++++++++++ 6 files changed, 141 insertions(+), 19 deletions(-) create mode 100644 app/Http/Controllers/MarkingController.php create mode 100644 app/Marking.php create mode 100644 database/migrations/2018_06_19_144347_create_marking_table.php create mode 100644 tests/Feature/MarkingTest.php diff --git a/app/Http/Controllers/BookingController.php b/app/Http/Controllers/BookingController.php index 722e6416..03214b45 100644 --- a/app/Http/Controllers/BookingController.php +++ b/app/Http/Controllers/BookingController.php @@ -109,25 +109,25 @@ class BookingController extends Controller // The test failed due to ->save() before filling up the information at below // TODO : handle RMB, MYR and USD (we can use exchange type: USDtoMYR, RMBtoMYR vise versa to switch case) - // $booking->rmb_book_pay_method = $request->input('payment_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->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->rmb_book_pay_method = $request->input('payment_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->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->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->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->save(); return response()->json($booking, 201); } diff --git a/app/Http/Controllers/MarkingController.php b/app/Http/Controllers/MarkingController.php new file mode 100644 index 00000000..1d432333 --- /dev/null +++ b/app/Http/Controllers/MarkingController.php @@ -0,0 +1,40 @@ +all()); + + return response()->json($marking, 201); + } + + public function update(Request $request, Marking $marking) + { + $marking->update($request->all()); + + return response()->json($marking, 200); + } + + public function delete(Marking $marking) + { + $marking->delete(); + + return response()->json(null, 204); + } +} diff --git a/app/Marking.php b/app/Marking.php new file mode 100644 index 00000000..84f70b6a --- /dev/null +++ b/app/Marking.php @@ -0,0 +1,10 @@ +increments('id'); + $table->string('email')->unique(); + $table->string('marking')->unique(); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('marking'); + } +} diff --git a/routes/api.php b/routes/api.php index 38322b8f..0eaf288a 100644 --- a/routes/api.php +++ b/routes/api.php @@ -81,8 +81,13 @@ Route::group(['middleware' => 'role:admin'], function() { Route::post('setting-beneficiary', 'SettingBeneficiaryController@store'); Route::put('setting-beneficiary/{beneficiary}', 'SettingBeneficiaryController@update'); Route::delete('setting-beneficiary/{beneficiary}', 'SettingBeneficiaryController@delete'); -}); + Route::get('marking', 'MarkingController@index'); + Route::get('marking/{beneficiary}', 'MarkingController@show'); + Route::put('marking/{beneficiary}', 'MarkingController@update'); + Route::delete('marking/{beneficiary}', 'MarkingController@delete'); +}); +Route::post('marking', 'MarkingController@store'); Route::get('update-rate', 'RateController@index'); Route::get('update-rate/{rate}', 'RateController@show'); diff --git a/tests/Feature/MarkingTest.php b/tests/Feature/MarkingTest.php new file mode 100644 index 00000000..ecd1103d --- /dev/null +++ b/tests/Feature/MarkingTest.php @@ -0,0 +1,34 @@ +user = factory(User::class)->create(); + $this->user->attachRole(Role::Where('name','admin')->first()); + } + + public function testStore(){ + $response = + $this->actingAs($this->user) + ->postJson('/api/marking/',[ + 'email' => 'user@example.com', + 'marking' => 'markingcode123' + ]) + ->assertStatus(201); + } +}