From 8e3e4cc4d135f38632effea3163a143d7a0e65fc Mon Sep 17 00:00:00 2001 From: Mohd Arief Date: Mon, 23 Apr 2018 14:54:06 +0800 Subject: [PATCH 01/17] added migration, model --- .env | 39 ++++++++++++++++++ app/Booking.php | 10 +++++ app/Http/Controllers/BookingController.php | 13 ++++++ app/Providers/AppServiceProvider.php | 4 +- config/database.php | 2 +- ...018_04_21_015344_create_bookings_table.php | 40 +++++++++++++++++++ env-example | 39 ++++++++++++++++++ routes/api.php | 1 + vendor/composer/autoload_classmap.php | 10 +++++ vendor/composer/autoload_static.php | 10 +++++ 10 files changed, 166 insertions(+), 2 deletions(-) create mode 100644 .env create mode 100644 app/Booking.php create mode 100644 app/Http/Controllers/BookingController.php create mode 100644 database/migrations/2018_04_21_015344_create_bookings_table.php create mode 100644 env-example diff --git a/.env b/.env new file mode 100644 index 00000000..8739f27a --- /dev/null +++ b/.env @@ -0,0 +1,39 @@ +APP_NAME=IZYIM +APP_ENV=local +APP_KEY=base64:Fu2YulXExzm9HJ5LgVmZUmcbRkchHkc82q02MorN5GQ= +APP_DEBUG=true +APP_URL=http://localhost + +LOG_CHANNEL=stack + +DB_CONNECTION=mysql +DB_HOST=127.0.0.1 +DB_PORT=3306 +DB_DATABASE=default +DB_USERNAME=root +DB_PASSWORD= + +BROADCAST_DRIVER=log +CACHE_DRIVER=file +SESSION_DRIVER=file +SESSION_LIFETIME=120 +QUEUE_DRIVER=sync + +REDIS_HOST=127.0.0.1 +REDIS_PASSWORD=null +REDIS_PORT=6379 + +MAIL_DRIVER=smtp +MAIL_HOST=smtp.mailtrap.io +MAIL_PORT=2525 +MAIL_USERNAME=null +MAIL_PASSWORD=null +MAIL_ENCRYPTION=null + +PUSHER_APP_ID= +PUSHER_APP_KEY= +PUSHER_APP_SECRET= +PUSHER_APP_CLUSTER=mt1 + +MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}" +MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}" diff --git a/app/Booking.php b/app/Booking.php new file mode 100644 index 00000000..663e86c3 --- /dev/null +++ b/app/Booking.php @@ -0,0 +1,10 @@ + [ 'driver' => 'mysql', - 'host' => env('DB_HOST', '127.0.0.1'), + 'host' => env('DB_HOST', 'localhost'), 'port' => env('DB_PORT', '3306'), 'database' => env('DB_DATABASE', 'forge'), 'username' => env('DB_USERNAME', 'forge'), diff --git a/database/migrations/2018_04_21_015344_create_bookings_table.php b/database/migrations/2018_04_21_015344_create_bookings_table.php new file mode 100644 index 00000000..e03ca6ac --- /dev/null +++ b/database/migrations/2018_04_21_015344_create_bookings_table.php @@ -0,0 +1,40 @@ +increments('id'); + $table->string('account_name'); + $table->integer('account_num'); + $table->string('bank_name'); + $table->string('bank_branch'); + $table->string('company_name'); + $table->string('company_address'); + $table->string('bank_address'); + $table->string('swift_code'); + $table->string('cnap'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('bookings'); + } +} diff --git a/env-example b/env-example new file mode 100644 index 00000000..8739f27a --- /dev/null +++ b/env-example @@ -0,0 +1,39 @@ +APP_NAME=IZYIM +APP_ENV=local +APP_KEY=base64:Fu2YulXExzm9HJ5LgVmZUmcbRkchHkc82q02MorN5GQ= +APP_DEBUG=true +APP_URL=http://localhost + +LOG_CHANNEL=stack + +DB_CONNECTION=mysql +DB_HOST=127.0.0.1 +DB_PORT=3306 +DB_DATABASE=default +DB_USERNAME=root +DB_PASSWORD= + +BROADCAST_DRIVER=log +CACHE_DRIVER=file +SESSION_DRIVER=file +SESSION_LIFETIME=120 +QUEUE_DRIVER=sync + +REDIS_HOST=127.0.0.1 +REDIS_PASSWORD=null +REDIS_PORT=6379 + +MAIL_DRIVER=smtp +MAIL_HOST=smtp.mailtrap.io +MAIL_PORT=2525 +MAIL_USERNAME=null +MAIL_PASSWORD=null +MAIL_ENCRYPTION=null + +PUSHER_APP_ID= +PUSHER_APP_KEY= +PUSHER_APP_SECRET= +PUSHER_APP_CLUSTER=mt1 + +MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}" +MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}" diff --git a/routes/api.php b/routes/api.php index c641ca5e..a95187dd 100644 --- a/routes/api.php +++ b/routes/api.php @@ -16,3 +16,4 @@ use Illuminate\Http\Request; Route::middleware('auth:api')->get('/user', function (Request $request) { return $request->user(); }); + diff --git a/vendor/composer/autoload_classmap.php b/vendor/composer/autoload_classmap.php index efa6fbe8..a8b2ac6d 100644 --- a/vendor/composer/autoload_classmap.php +++ b/vendor/composer/autoload_classmap.php @@ -6,6 +6,7 @@ $vendorDir = dirname(dirname(__FILE__)); $baseDir = dirname($vendorDir); return array( + 'App\\Booking' => $baseDir . '/app/Booking.php', 'App\\Console\\Kernel' => $baseDir . '/app/Console/Kernel.php', 'App\\Exceptions\\Handler' => $baseDir . '/app/Exceptions/Handler.php', 'App\\Http\\Controllers\\Auth\\ForgotPasswordController' => $baseDir . '/app/Http/Controllers/Auth/ForgotPasswordController.php', @@ -214,6 +215,7 @@ return array( 'Faker\\Provider\\cs_CZ\\Payment' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/cs_CZ/Payment.php', 'Faker\\Provider\\cs_CZ\\Person' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/cs_CZ/Person.php', 'Faker\\Provider\\cs_CZ\\PhoneNumber' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/cs_CZ/PhoneNumber.php', + 'Faker\\Provider\\cs_CZ\\Text' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/cs_CZ/Text.php', 'Faker\\Provider\\da_DK\\Address' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/da_DK/Address.php', 'Faker\\Provider\\da_DK\\Company' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/da_DK/Company.php', 'Faker\\Provider\\da_DK\\Internet' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/da_DK/Internet.php', @@ -252,6 +254,7 @@ return array( 'Faker\\Provider\\el_GR\\Payment' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/el_GR/Payment.php', 'Faker\\Provider\\el_GR\\Person' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/el_GR/Person.php', 'Faker\\Provider\\el_GR\\PhoneNumber' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/el_GR/PhoneNumber.php', + 'Faker\\Provider\\el_GR\\Text' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/el_GR/Text.php', 'Faker\\Provider\\en_AU\\Address' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/en_AU/Address.php', 'Faker\\Provider\\en_AU\\Internet' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/en_AU/Internet.php', 'Faker\\Provider\\en_AU\\PhoneNumber' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/en_AU/PhoneNumber.php', @@ -305,6 +308,7 @@ return array( 'Faker\\Provider\\es_ES\\Payment' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/es_ES/Payment.php', 'Faker\\Provider\\es_ES\\Person' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/es_ES/Person.php', 'Faker\\Provider\\es_ES\\PhoneNumber' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/es_ES/PhoneNumber.php', + 'Faker\\Provider\\es_ES\\Text' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/es_ES/Text.php', 'Faker\\Provider\\es_PE\\Address' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/es_PE/Address.php', 'Faker\\Provider\\es_PE\\Company' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/es_PE/Company.php', 'Faker\\Provider\\es_PE\\Person' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/es_PE/Person.php', @@ -348,6 +352,7 @@ return array( 'Faker\\Provider\\fr_FR\\Payment' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/fr_FR/Payment.php', 'Faker\\Provider\\fr_FR\\Person' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/fr_FR/Person.php', 'Faker\\Provider\\fr_FR\\PhoneNumber' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/fr_FR/PhoneNumber.php', + 'Faker\\Provider\\fr_FR\\Text' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/fr_FR/Text.php', 'Faker\\Provider\\he_IL\\Address' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/he_IL/Address.php', 'Faker\\Provider\\he_IL\\Company' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/he_IL/Company.php', 'Faker\\Provider\\he_IL\\Payment' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/he_IL/Payment.php', @@ -363,6 +368,7 @@ return array( 'Faker\\Provider\\hu_HU\\Payment' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/hu_HU/Payment.php', 'Faker\\Provider\\hu_HU\\Person' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/hu_HU/Person.php', 'Faker\\Provider\\hu_HU\\PhoneNumber' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/hu_HU/PhoneNumber.php', + 'Faker\\Provider\\hu_HU\\Text' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/hu_HU/Text.php', 'Faker\\Provider\\hy_AM\\Address' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/hy_AM/Address.php', 'Faker\\Provider\\hy_AM\\Color' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/hy_AM/Color.php', 'Faker\\Provider\\hy_AM\\Company' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/hy_AM/Company.php', @@ -408,6 +414,7 @@ return array( 'Faker\\Provider\\ka_GE\\Payment' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/ka_GE/Payment.php', 'Faker\\Provider\\ka_GE\\Person' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/ka_GE/Person.php', 'Faker\\Provider\\ka_GE\\PhoneNumber' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/ka_GE/PhoneNumber.php', + 'Faker\\Provider\\ka_GE\\Text' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/ka_GE/Text.php', 'Faker\\Provider\\kk_KZ\\Address' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/kk_KZ/Address.php', 'Faker\\Provider\\kk_KZ\\Color' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/kk_KZ/Color.php', 'Faker\\Provider\\kk_KZ\\Company' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/kk_KZ/Company.php', @@ -421,6 +428,7 @@ return array( 'Faker\\Provider\\ko_KR\\Internet' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/ko_KR/Internet.php', 'Faker\\Provider\\ko_KR\\Person' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/ko_KR/Person.php', 'Faker\\Provider\\ko_KR\\PhoneNumber' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/ko_KR/PhoneNumber.php', + 'Faker\\Provider\\ko_KR\\Text' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/ko_KR/Text.php', 'Faker\\Provider\\lt_LT\\Address' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/lt_LT/Address.php', 'Faker\\Provider\\lt_LT\\Company' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/lt_LT/Company.php', 'Faker\\Provider\\lt_LT\\Internet' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/lt_LT/Internet.php', @@ -497,6 +505,7 @@ return array( 'Faker\\Provider\\ru_RU\\Payment' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/ru_RU/Payment.php', 'Faker\\Provider\\ru_RU\\Person' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/ru_RU/Person.php', 'Faker\\Provider\\ru_RU\\PhoneNumber' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/ru_RU/PhoneNumber.php', + 'Faker\\Provider\\ru_RU\\Text' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/ru_RU/Text.php', 'Faker\\Provider\\sk_SK\\Address' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/sk_SK/Address.php', 'Faker\\Provider\\sk_SK\\Company' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/sk_SK/Company.php', 'Faker\\Provider\\sk_SK\\Internet' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/sk_SK/Internet.php', @@ -540,6 +549,7 @@ return array( 'Faker\\Provider\\uk_UA\\Internet' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/uk_UA/Internet.php', 'Faker\\Provider\\uk_UA\\Person' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/uk_UA/Person.php', 'Faker\\Provider\\uk_UA\\PhoneNumber' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/uk_UA/PhoneNumber.php', + 'Faker\\Provider\\uk_UA\\Text' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/uk_UA/Text.php', 'Faker\\Provider\\uk_Ua\\Payment' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/uk_UA/Payment.php', 'Faker\\Provider\\vi_VN\\Address' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/vi_VN/Address.php', 'Faker\\Provider\\vi_VN\\Color' => $vendorDir . '/fzaninotto/faker/src/Faker/Provider/vi_VN/Color.php', diff --git a/vendor/composer/autoload_static.php b/vendor/composer/autoload_static.php index 57b4235e..c96feda9 100644 --- a/vendor/composer/autoload_static.php +++ b/vendor/composer/autoload_static.php @@ -314,6 +314,7 @@ class ComposerStaticInitd0143684cbb8cb41ee360a72b2c4ce33 ); public static $classMap = array ( + 'App\\Booking' => __DIR__ . '/../..' . '/app/Booking.php', 'App\\Console\\Kernel' => __DIR__ . '/../..' . '/app/Console/Kernel.php', 'App\\Exceptions\\Handler' => __DIR__ . '/../..' . '/app/Exceptions/Handler.php', 'App\\Http\\Controllers\\Auth\\ForgotPasswordController' => __DIR__ . '/../..' . '/app/Http/Controllers/Auth/ForgotPasswordController.php', @@ -522,6 +523,7 @@ class ComposerStaticInitd0143684cbb8cb41ee360a72b2c4ce33 'Faker\\Provider\\cs_CZ\\Payment' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/cs_CZ/Payment.php', 'Faker\\Provider\\cs_CZ\\Person' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/cs_CZ/Person.php', 'Faker\\Provider\\cs_CZ\\PhoneNumber' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/cs_CZ/PhoneNumber.php', + 'Faker\\Provider\\cs_CZ\\Text' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/cs_CZ/Text.php', 'Faker\\Provider\\da_DK\\Address' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/da_DK/Address.php', 'Faker\\Provider\\da_DK\\Company' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/da_DK/Company.php', 'Faker\\Provider\\da_DK\\Internet' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/da_DK/Internet.php', @@ -560,6 +562,7 @@ class ComposerStaticInitd0143684cbb8cb41ee360a72b2c4ce33 'Faker\\Provider\\el_GR\\Payment' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/el_GR/Payment.php', 'Faker\\Provider\\el_GR\\Person' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/el_GR/Person.php', 'Faker\\Provider\\el_GR\\PhoneNumber' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/el_GR/PhoneNumber.php', + 'Faker\\Provider\\el_GR\\Text' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/el_GR/Text.php', 'Faker\\Provider\\en_AU\\Address' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/en_AU/Address.php', 'Faker\\Provider\\en_AU\\Internet' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/en_AU/Internet.php', 'Faker\\Provider\\en_AU\\PhoneNumber' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/en_AU/PhoneNumber.php', @@ -613,6 +616,7 @@ class ComposerStaticInitd0143684cbb8cb41ee360a72b2c4ce33 'Faker\\Provider\\es_ES\\Payment' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/es_ES/Payment.php', 'Faker\\Provider\\es_ES\\Person' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/es_ES/Person.php', 'Faker\\Provider\\es_ES\\PhoneNumber' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/es_ES/PhoneNumber.php', + 'Faker\\Provider\\es_ES\\Text' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/es_ES/Text.php', 'Faker\\Provider\\es_PE\\Address' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/es_PE/Address.php', 'Faker\\Provider\\es_PE\\Company' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/es_PE/Company.php', 'Faker\\Provider\\es_PE\\Person' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/es_PE/Person.php', @@ -656,6 +660,7 @@ class ComposerStaticInitd0143684cbb8cb41ee360a72b2c4ce33 'Faker\\Provider\\fr_FR\\Payment' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/fr_FR/Payment.php', 'Faker\\Provider\\fr_FR\\Person' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/fr_FR/Person.php', 'Faker\\Provider\\fr_FR\\PhoneNumber' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/fr_FR/PhoneNumber.php', + 'Faker\\Provider\\fr_FR\\Text' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/fr_FR/Text.php', 'Faker\\Provider\\he_IL\\Address' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/he_IL/Address.php', 'Faker\\Provider\\he_IL\\Company' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/he_IL/Company.php', 'Faker\\Provider\\he_IL\\Payment' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/he_IL/Payment.php', @@ -671,6 +676,7 @@ class ComposerStaticInitd0143684cbb8cb41ee360a72b2c4ce33 'Faker\\Provider\\hu_HU\\Payment' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/hu_HU/Payment.php', 'Faker\\Provider\\hu_HU\\Person' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/hu_HU/Person.php', 'Faker\\Provider\\hu_HU\\PhoneNumber' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/hu_HU/PhoneNumber.php', + 'Faker\\Provider\\hu_HU\\Text' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/hu_HU/Text.php', 'Faker\\Provider\\hy_AM\\Address' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/hy_AM/Address.php', 'Faker\\Provider\\hy_AM\\Color' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/hy_AM/Color.php', 'Faker\\Provider\\hy_AM\\Company' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/hy_AM/Company.php', @@ -716,6 +722,7 @@ class ComposerStaticInitd0143684cbb8cb41ee360a72b2c4ce33 'Faker\\Provider\\ka_GE\\Payment' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/ka_GE/Payment.php', 'Faker\\Provider\\ka_GE\\Person' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/ka_GE/Person.php', 'Faker\\Provider\\ka_GE\\PhoneNumber' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/ka_GE/PhoneNumber.php', + 'Faker\\Provider\\ka_GE\\Text' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/ka_GE/Text.php', 'Faker\\Provider\\kk_KZ\\Address' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/kk_KZ/Address.php', 'Faker\\Provider\\kk_KZ\\Color' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/kk_KZ/Color.php', 'Faker\\Provider\\kk_KZ\\Company' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/kk_KZ/Company.php', @@ -729,6 +736,7 @@ class ComposerStaticInitd0143684cbb8cb41ee360a72b2c4ce33 'Faker\\Provider\\ko_KR\\Internet' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/ko_KR/Internet.php', 'Faker\\Provider\\ko_KR\\Person' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/ko_KR/Person.php', 'Faker\\Provider\\ko_KR\\PhoneNumber' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/ko_KR/PhoneNumber.php', + 'Faker\\Provider\\ko_KR\\Text' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/ko_KR/Text.php', 'Faker\\Provider\\lt_LT\\Address' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/lt_LT/Address.php', 'Faker\\Provider\\lt_LT\\Company' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/lt_LT/Company.php', 'Faker\\Provider\\lt_LT\\Internet' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/lt_LT/Internet.php', @@ -805,6 +813,7 @@ class ComposerStaticInitd0143684cbb8cb41ee360a72b2c4ce33 'Faker\\Provider\\ru_RU\\Payment' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/ru_RU/Payment.php', 'Faker\\Provider\\ru_RU\\Person' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/ru_RU/Person.php', 'Faker\\Provider\\ru_RU\\PhoneNumber' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/ru_RU/PhoneNumber.php', + 'Faker\\Provider\\ru_RU\\Text' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/ru_RU/Text.php', 'Faker\\Provider\\sk_SK\\Address' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/sk_SK/Address.php', 'Faker\\Provider\\sk_SK\\Company' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/sk_SK/Company.php', 'Faker\\Provider\\sk_SK\\Internet' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/sk_SK/Internet.php', @@ -848,6 +857,7 @@ class ComposerStaticInitd0143684cbb8cb41ee360a72b2c4ce33 'Faker\\Provider\\uk_UA\\Internet' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/uk_UA/Internet.php', 'Faker\\Provider\\uk_UA\\Person' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/uk_UA/Person.php', 'Faker\\Provider\\uk_UA\\PhoneNumber' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/uk_UA/PhoneNumber.php', + 'Faker\\Provider\\uk_UA\\Text' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/uk_UA/Text.php', 'Faker\\Provider\\uk_Ua\\Payment' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/uk_UA/Payment.php', 'Faker\\Provider\\vi_VN\\Address' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/vi_VN/Address.php', 'Faker\\Provider\\vi_VN\\Color' => __DIR__ . '/..' . '/fzaninotto/faker/src/Faker/Provider/vi_VN/Color.php', From 77adb83fb744f2048f319491e036adf24dda1c14 Mon Sep 17 00:00:00 2001 From: Mohd Arief Date: Mon, 23 Apr 2018 17:31:02 +0800 Subject: [PATCH 02/17] edit controller --- routes/api.php | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/routes/api.php b/routes/api.php index a95187dd..bb300abd 100644 --- a/routes/api.php +++ b/routes/api.php @@ -17,3 +17,13 @@ Route::middleware('auth:api')->get('/user', function (Request $request) { return $request->user(); }); +/*Route for the booking */ +Route::get('api/booking/', 'BookingController@index'); + +Route::get('api/booking/', 'BookingController@show'); + +Route::post('api/booking/{user-id}', 'BookingController@store'); + +Route::put('api/booking/{user-id}', 'BookingController@update'); + +Route::delete('api/booking/{user-id}', 'BookingController@delete'); \ No newline at end of file From 0a13822716f60c42c3d994c1e6f17f2d9c7b751f Mon Sep 17 00:00:00 2001 From: Mohd Arief Date: Wed, 2 May 2018 11:13:14 +0800 Subject: [PATCH 03/17] update api and controller --- app/Booking.php | 3 +- app/Http/Controllers/BookingController.php | 31 +++++-- resources/views/booking/index.blade.php | 95 ++++++++++++++++++++++ routes/api.php | 12 +-- routes/web.php | 13 +++ 5 files changed, 140 insertions(+), 14 deletions(-) create mode 100644 resources/views/booking/index.blade.php diff --git a/app/Booking.php b/app/Booking.php index 663e86c3..fba195cb 100644 --- a/app/Booking.php +++ b/app/Booking.php @@ -6,5 +6,6 @@ use Illuminate\Database\Eloquent\Model; class Booking extends Model { - // + // protected $guarded = []; + protected $fillable = ['account_name', 'account_num', 'bank_name', 'bank_branch', 'company_name', 'company_address', 'bank_address', 'swift_code', 'cnap' ]; } diff --git a/app/Http/Controllers/BookingController.php b/app/Http/Controllers/BookingController.php index 3d60bd10..58066999 100644 --- a/app/Http/Controllers/BookingController.php +++ b/app/Http/Controllers/BookingController.php @@ -3,6 +3,7 @@ namespace App\Http\Controllers; use Illuminate\Http\Request; +use App\Booking; class BookingController extends Controller { @@ -13,7 +14,7 @@ class BookingController extends Controller */ public function index() { - // + return response()->json(['success' => true, 'message'=> "You have successfully logged out."]); } /** @@ -23,7 +24,7 @@ class BookingController extends Controller */ public function create() { - // + return response()->json(['success' => true, 'message'=> "Hohohoho"]); } /** @@ -34,7 +35,8 @@ class BookingController extends Controller */ public function store(Request $request) { - // + $booking = Booking::create($request->all()); + return response()->json($booking, 201); } /** @@ -45,7 +47,8 @@ class BookingController extends Controller */ public function show($id) { - // + // $booking = Booking::find($id); + return view('booking.index'); } /** @@ -66,9 +69,19 @@ class BookingController extends Controller * @param int $id * @return \Illuminate\Http\Response */ - public function update(Request $request, $id) + public function update(Request $request, $booking) { - // + // $booking->update($request->all()); + // $this->validate($request, [ + // 'account_name' => 'required', + // 'account_num' => 'required' + // ]); + //Update Post + $booking = Booking::find($booking); + // $booking->account_name = 'hello'; + // $booking->account_num = 'account_num'; + $booking->save(); + return response()->json($booking, 200); } /** @@ -77,8 +90,10 @@ class BookingController extends Controller * @param int $id * @return \Illuminate\Http\Response */ - public function destroy($id) + public function delete(Booking $booking) { - // + $booking->delete($booking); + + return response()->json($booking, 204); } } diff --git a/resources/views/booking/index.blade.php b/resources/views/booking/index.blade.php new file mode 100644 index 00000000..84583a52 --- /dev/null +++ b/resources/views/booking/index.blade.php @@ -0,0 +1,95 @@ + + + + + + + + Laravel + + + + + + + + +
+ @if (Route::has('login')) + + @endif + +
+
+ Laravelllll +
+ + +
+
+ + diff --git a/routes/api.php b/routes/api.php index f9d77e66..5d76c21f 100644 --- a/routes/api.php +++ b/routes/api.php @@ -18,15 +18,17 @@ Route::middleware('auth:api')->get('/user', function (Request $request) { }); /*Route for the booking */ -Route::get('/booking/', 'BookingController@index'); +Route::get('/booking', 'BookingController@index'); -Route::get('/booking/', 'BookingController@show'); +Route::get('/booking/{booking}', 'BookingController@show'); -Route::post('/booking/{user-id}', 'BookingController@store'); +Route::post('/booking', 'BookingController@store'); + +Route::put('/booking/{booking}', 'BookingController@update'); + +Route::delete('/booking/{booking}', 'BookingController@delete'); -Route::put('/booking/{user-id}', 'BookingController@update'); -Route::delete('/booking/{user-id}', 'BookingController@delete'); //Route::middleware('auth:api')->get('/user', function (Request $request) { // return $request->user(); //}); diff --git a/routes/web.php b/routes/web.php index 829e44a4..3bc9be87 100644 --- a/routes/web.php +++ b/routes/web.php @@ -15,5 +15,18 @@ Route::get('/', function () { return view('welcome'); }); +/*Route for the booking */ +// Route::get('/booking', 'BookingController@index'); + +// Route::get('/booking/{booking}', 'BookingController@show'); + +// Route::post('/booking', 'BookingController@create'); + +// Route::post('/booking', 'BookingController@store'); + +// Route::put('/booking/{user-id}', 'BookingController@update'); + +// Route::delete('/booking/{user-id}', 'BookingController@delete'); + Route::get('password/reset/{token}', 'Auth\ResetPasswordController@showResetForm')->name('password.request'); Route::post('password/reset', 'Auth\ResetPasswordController@postReset')->name('password.reset'); From bc6f948314018fa7ecbd6bda6178fcefeed26e59 Mon Sep 17 00:00:00 2001 From: Mohd Arief Date: Tue, 15 May 2018 10:59:26 +0800 Subject: [PATCH 04/17] added unit testing --- app/Http/Controllers/BookingController.php | 36 ++++++---- config/database.php | 15 ++++ phpunit.xml | 1 + routes/api.php | 8 +-- tests/Feature/ExampleTest.php | 21 ------ tests/Unit/ExampleTest.php | 19 ----- tests/Unit/OrderTest.php | 83 ++++++++++++++++++++++ 7 files changed, 124 insertions(+), 59 deletions(-) delete mode 100644 tests/Feature/ExampleTest.php delete mode 100644 tests/Unit/ExampleTest.php create mode 100644 tests/Unit/OrderTest.php diff --git a/app/Http/Controllers/BookingController.php b/app/Http/Controllers/BookingController.php index 58066999..65d802f5 100644 --- a/app/Http/Controllers/BookingController.php +++ b/app/Http/Controllers/BookingController.php @@ -69,19 +69,25 @@ class BookingController extends Controller * @param int $id * @return \Illuminate\Http\Response */ - public function update(Request $request, $booking) + public function update(Request $request, $book_id) { - // $booking->update($request->all()); - // $this->validate($request, [ - // 'account_name' => 'required', - // 'account_num' => 'required' - // ]); - //Update Post - $booking = Booking::find($booking); - // $booking->account_name = 'hello'; - // $booking->account_num = 'account_num'; - $booking->save(); - return response()->json($booking, 200); + $book_id = Booking::find($book_id); + + //$com_id->id = $request->input('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); + + } /** @@ -90,10 +96,10 @@ class BookingController extends Controller * @param int $id * @return \Illuminate\Http\Response */ - public function delete(Booking $booking) + public function delete(Booking $book_id) { - $booking->delete($booking); + $book_id->delete($book_id); - return response()->json($booking, 204); + return response()->json($book_id, 204); } } diff --git a/config/database.php b/config/database.php index de4ffe6f..52d3593b 100644 --- a/config/database.php +++ b/config/database.php @@ -54,6 +54,21 @@ return [ 'engine' => null, ], + 'testing' => [ + 'driver' => 'mysql', + 'host' => env('DB_HOST', 'localhost'), + 'port' => env('DB_PORT', '3306'), + 'database' => 'forunittest', + 'username' => 'root', + 'password' => '', + 'unix_socket' => env('DB_SOCKET', ''), + 'charset' => 'utf8mb4', + 'collation' => 'utf8mb4_unicode_ci', + 'prefix' => '', + 'strict' => true, + 'engine' => null, + ], + 'pgsql' => [ 'driver' => 'pgsql', 'host' => env('DB_HOST', '127.0.0.1'), diff --git a/phpunit.xml b/phpunit.xml index 9ee3e734..bb335921 100644 --- a/phpunit.xml +++ b/phpunit.xml @@ -27,6 +27,7 @@ + diff --git a/routes/api.php b/routes/api.php index 5d76c21f..f823d80c 100644 --- a/routes/api.php +++ b/routes/api.php @@ -20,13 +20,13 @@ Route::middleware('auth:api')->get('/user', function (Request $request) { /*Route for the booking */ Route::get('/booking', 'BookingController@index'); -Route::get('/booking/{booking}', 'BookingController@show'); +Route::get('/booking/{book_id}', 'BookingController@show'); -Route::post('/booking', 'BookingController@store'); +Route::post('/booking/{book_id}', 'BookingController@store'); -Route::put('/booking/{booking}', 'BookingController@update'); +Route::put('/booking/{book_id}', 'BookingController@update'); -Route::delete('/booking/{booking}', 'BookingController@delete'); +Route::delete('/booking/{book_id}', 'BookingController@delete'); //Route::middleware('auth:api')->get('/user', function (Request $request) { diff --git a/tests/Feature/ExampleTest.php b/tests/Feature/ExampleTest.php deleted file mode 100644 index f31e495c..00000000 --- a/tests/Feature/ExampleTest.php +++ /dev/null @@ -1,21 +0,0 @@ -get('/'); - - $response->assertStatus(200); - } -} diff --git a/tests/Unit/ExampleTest.php b/tests/Unit/ExampleTest.php deleted file mode 100644 index e9fe19c6..00000000 --- a/tests/Unit/ExampleTest.php +++ /dev/null @@ -1,19 +0,0 @@ -assertTrue(true); - } -} diff --git a/tests/Unit/OrderTest.php b/tests/Unit/OrderTest.php new file mode 100644 index 00000000..036149b6 --- /dev/null +++ b/tests/Unit/OrderTest.php @@ -0,0 +1,83 @@ +assertTrue(true); + // $response = $this->json('POST', '/api/booking', ['book_id' => '10']); + + // $response + // ->assertStatus(201) + // ->assertJson([ + // //'ff_id' => 'inserted', + // ]); + // } + + public function testGet() + { + $response = $this->get('/api/booking'); + + $response->assertStatus(200); + } + + // public function testPost() + // { + // $response = $this->json('POST', '/api/booking/2', [ + + // 'account_name' => 'kita', + // 'account_num' => '1234', + // 'bank_name' => 'ferdas', + // 'bank_branch' => 'dersa', + // 'company_name' => 'desaq', + // 'company_address' => 'qada', + // 'bank_address' => 'daqa', + // 'swift_code' => '3eds2', + // 'cnap' => 'redah' + + // ]); + + // $response + // ->assertStatus(201); + // } + + // public function testPut() + // { + // $response = $this->json('PUT', '/api/booking/1', [ + + // 'account_name' => 'kaokndfoanf', + // 'account_num' => '1234', + // 'bank_name' => 'ferdas', + // 'bank_branch' => 'dersa', + // 'company_name' => 'desaq', + // 'company_address' => 'qada', + // 'bank_address' => 'daqa', + // 'swift_code' => '3eds2', + // 'cnap' => 'redah' + + // ]); + + // $response + // ->assertStatus(200); + // } + + public function testDelete() + { + $response = $this->json('DELETE', '/api/booking/2'); + + $response->assertStatus(204); + } +} From 254077476ebab396d9a912ce6ebb5ebae80706e6 Mon Sep 17 00:00:00 2001 From: Mohd Arief Date: Tue, 15 May 2018 11:18:06 +0800 Subject: [PATCH 05/17] edit the unit test --- database/seeds/BookTableSeeder.php | 16 +++++++ tests/Unit/OrderTest.php | 66 +++++++++++++-------------- vendor/composer/autoload_classmap.php | 4 +- vendor/composer/autoload_static.php | 4 +- 4 files changed, 53 insertions(+), 37 deletions(-) create mode 100644 database/seeds/BookTableSeeder.php diff --git a/database/seeds/BookTableSeeder.php b/database/seeds/BookTableSeeder.php new file mode 100644 index 00000000..4817a214 --- /dev/null +++ b/database/seeds/BookTableSeeder.php @@ -0,0 +1,16 @@ +assertStatus(200); } - // public function testPost() - // { - // $response = $this->json('POST', '/api/booking/2', [ + public function testPost() + { + $response = $this->json('POST', '/api/booking/1', [ - // 'account_name' => 'kita', - // 'account_num' => '1234', - // 'bank_name' => 'ferdas', - // 'bank_branch' => 'dersa', - // 'company_name' => 'desaq', - // 'company_address' => 'qada', - // 'bank_address' => 'daqa', - // 'swift_code' => '3eds2', - // 'cnap' => 'redah' + 'account_name' => 'kijd', + 'account_num' => '1234', + 'bank_name' => 'ferdas', + 'bank_branch' => 'dersa', + 'company_name' => 'desaq', + 'company_address' => 'qada', + 'bank_address' => 'daqa', + 'swift_code' => '3eds2', + 'cnap' => 'redah' - // ]); + ]); - // $response - // ->assertStatus(201); - // } + $response + ->assertStatus(201); + } - // public function testPut() - // { - // $response = $this->json('PUT', '/api/booking/1', [ + public function testPut() + { + $response = $this->json('PUT', '/api/booking/1', [ - // 'account_name' => 'kaokndfoanf', - // 'account_num' => '1234', - // 'bank_name' => 'ferdas', - // 'bank_branch' => 'dersa', - // 'company_name' => 'desaq', - // 'company_address' => 'qada', - // 'bank_address' => 'daqa', - // 'swift_code' => '3eds2', - // 'cnap' => 'redah' + 'account_name' => 'kaokndfoanf', + 'account_num' => '1234', + 'bank_name' => 'ferdas', + 'bank_branch' => 'dersa', + 'company_name' => 'desaq', + 'company_address' => 'qada', + 'bank_address' => 'daqa', + 'swift_code' => '3eds2', + 'cnap' => 'redah' - // ]); + ]); - // $response - // ->assertStatus(200); - // } + $response + ->assertStatus(200); + } public function testDelete() { - $response = $this->json('DELETE', '/api/booking/2'); + $response = $this->json('DELETE', '/api/booking/1'); $response->assertStatus(204); } diff --git a/vendor/composer/autoload_classmap.php b/vendor/composer/autoload_classmap.php index 195a3a89..442bd6ab 100644 --- a/vendor/composer/autoload_classmap.php +++ b/vendor/composer/autoload_classmap.php @@ -28,6 +28,7 @@ return array( 'App\\Providers\\EventServiceProvider' => $baseDir . '/app/Providers/EventServiceProvider.php', 'App\\Providers\\RouteServiceProvider' => $baseDir . '/app/Providers/RouteServiceProvider.php', 'App\\User' => $baseDir . '/app/User.php', + 'BookTableSeeder' => $baseDir . '/database/seeds/BookTableSeeder.php', 'Carbon\\Carbon' => $vendorDir . '/nesbot/carbon/src/Carbon/Carbon.php', 'Carbon\\CarbonInterval' => $vendorDir . '/nesbot/carbon/src/Carbon/CarbonInterval.php', 'Carbon\\Exceptions\\InvalidDateException' => $vendorDir . '/nesbot/carbon/src/Carbon/Exceptions/InvalidDateException.php', @@ -3293,9 +3294,8 @@ return array( 'Symfony\\Polyfill\\Util\\TestListener' => $vendorDir . '/symfony/polyfill-util/TestListener.php', 'Symfony\\Polyfill\\Util\\TestListenerTrait' => $vendorDir . '/symfony/polyfill-util/TestListenerTrait.php', 'Tests\\CreatesApplication' => $baseDir . '/tests/CreatesApplication.php', - 'Tests\\Feature\\ExampleTest' => $baseDir . '/tests/Feature/ExampleTest.php', 'Tests\\TestCase' => $baseDir . '/tests/TestCase.php', - 'Tests\\Unit\\ExampleTest' => $baseDir . '/tests/Unit/ExampleTest.php', + 'Tests\\Unit\\OrderTest\\OrderTest' => $baseDir . '/tests/Unit/OrderTest.php', 'Text_Template' => $vendorDir . '/phpunit/php-text-template/src/Template.php', 'TheSeer\\Tokenizer\\Exception' => $vendorDir . '/theseer/tokenizer/src/Exception.php', 'TheSeer\\Tokenizer\\NamespaceUri' => $vendorDir . '/theseer/tokenizer/src/NamespaceUri.php', diff --git a/vendor/composer/autoload_static.php b/vendor/composer/autoload_static.php index 5edbc55f..e3088567 100644 --- a/vendor/composer/autoload_static.php +++ b/vendor/composer/autoload_static.php @@ -362,6 +362,7 @@ class ComposerStaticInitcf93d959a701f2cce72413258326eb20 'App\\Providers\\EventServiceProvider' => __DIR__ . '/../..' . '/app/Providers/EventServiceProvider.php', 'App\\Providers\\RouteServiceProvider' => __DIR__ . '/../..' . '/app/Providers/RouteServiceProvider.php', 'App\\User' => __DIR__ . '/../..' . '/app/User.php', + 'BookTableSeeder' => __DIR__ . '/../..' . '/database/seeds/BookTableSeeder.php', 'Carbon\\Carbon' => __DIR__ . '/..' . '/nesbot/carbon/src/Carbon/Carbon.php', 'Carbon\\CarbonInterval' => __DIR__ . '/..' . '/nesbot/carbon/src/Carbon/CarbonInterval.php', 'Carbon\\Exceptions\\InvalidDateException' => __DIR__ . '/..' . '/nesbot/carbon/src/Carbon/Exceptions/InvalidDateException.php', @@ -3627,9 +3628,8 @@ class ComposerStaticInitcf93d959a701f2cce72413258326eb20 'Symfony\\Polyfill\\Util\\TestListener' => __DIR__ . '/..' . '/symfony/polyfill-util/TestListener.php', 'Symfony\\Polyfill\\Util\\TestListenerTrait' => __DIR__ . '/..' . '/symfony/polyfill-util/TestListenerTrait.php', 'Tests\\CreatesApplication' => __DIR__ . '/../..' . '/tests/CreatesApplication.php', - 'Tests\\Feature\\ExampleTest' => __DIR__ . '/../..' . '/tests/Feature/ExampleTest.php', 'Tests\\TestCase' => __DIR__ . '/../..' . '/tests/TestCase.php', - 'Tests\\Unit\\ExampleTest' => __DIR__ . '/../..' . '/tests/Unit/ExampleTest.php', + 'Tests\\Unit\\OrderTest\\OrderTest' => __DIR__ . '/../..' . '/tests/Unit/OrderTest.php', 'Text_Template' => __DIR__ . '/..' . '/phpunit/php-text-template/src/Template.php', 'TheSeer\\Tokenizer\\Exception' => __DIR__ . '/..' . '/theseer/tokenizer/src/Exception.php', 'TheSeer\\Tokenizer\\NamespaceUri' => __DIR__ . '/..' . '/theseer/tokenizer/src/NamespaceUri.php', From 18d2ba4543c05cdaf2981e8bdaf528d98a463ba3 Mon Sep 17 00:00:00 2001 From: Mohd Arief Date: Thu, 17 May 2018 15:13:29 +0800 Subject: [PATCH 06/17] input data inside database using seeder --- app/Booking.php | 3 +- app/Http/Controllers/BookingController.php | 25 +++++++++++--- ...18_05_15_075453_create_bookings_table.php} | 10 +++++- ...90646_change_user_id_in_bookings_table.php | 34 +++++++++++++++++++ database/seeds/BookTableSeeder.php | 20 ++++++++++- database/seeds/DatabaseSeeder.php | 4 ++- database/seeds/RateTableSeeder.php | 14 ++++++++ server.php | 4 ++- 8 files changed, 103 insertions(+), 11 deletions(-) rename database/migrations/{2018_04_21_015344_create_bookings_table.php => 2018_05_15_075453_create_bookings_table.php} (75%) create mode 100644 database/migrations/2018_05_15_090646_change_user_id_in_bookings_table.php diff --git a/app/Booking.php b/app/Booking.php index 0ff14d7b..6144528c 100644 --- a/app/Booking.php +++ b/app/Booking.php @@ -7,6 +7,5 @@ use Illuminate\Database\Eloquent\Model; class Booking extends Model { // protected $guarded = []; - // TODO : add term, amount, rate_id (FK), user_id (FK) - protected $fillable = ['account_name', 'account_num', 'bank_name', 'bank_branch', 'company_name', 'company_address', 'bank_address', 'swift_code', 'cnap' ]; + protected $fillable = ['term', 'amount', 'rate_id', 'user_id', 'account_name', 'account_num', 'bank_name', 'bank_branch', 'company_name', 'company_address', 'bank_address', 'swift_code', 'cnap' ]; } diff --git a/app/Http/Controllers/BookingController.php b/app/Http/Controllers/BookingController.php index 1b4bf52c..b7514b28 100644 --- a/app/Http/Controllers/BookingController.php +++ b/app/Http/Controllers/BookingController.php @@ -36,23 +36,38 @@ class BookingController extends Controller */ public function store(Request $request) { - $rates = Rate::find(1); + $rates = Rate::all()->last(); $term = $request->input('term'); $rate = 1; switch($term){ - case "x1_cash": + case "x1_cash": $rate = $rates->x1_cash; - break; + 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: $rate = "no"; break; } return $rate; - + // return false; //$booking = Booking::create($request->all()); - //return response()->json($booking, 201); + // return response()->json($booking, 201); } diff --git a/database/migrations/2018_04_21_015344_create_bookings_table.php b/database/migrations/2018_05_15_075453_create_bookings_table.php similarity index 75% rename from database/migrations/2018_04_21_015344_create_bookings_table.php rename to database/migrations/2018_05_15_075453_create_bookings_table.php index e03ca6ac..a6a9d74d 100644 --- a/database/migrations/2018_04_21_015344_create_bookings_table.php +++ b/database/migrations/2018_05_15_075453_create_bookings_table.php @@ -23,7 +23,14 @@ class CreateBookingsTable extends Migration $table->string('company_address'); $table->string('bank_address'); $table->string('swift_code'); - $table->string('cnap'); + $table->string('cnap'); + $table->string('term'); + $table->double('amount'); + $table->unsignedInteger('rate_id'); + $table->foreign('rate_id') + ->references('id')->on('rates') + ->onDelete('cascade'); + $table->timestamps(); }); } @@ -36,5 +43,6 @@ class CreateBookingsTable extends Migration public function down() { Schema::dropIfExists('bookings'); + } } diff --git a/database/migrations/2018_05_15_090646_change_user_id_in_bookings_table.php b/database/migrations/2018_05_15_090646_change_user_id_in_bookings_table.php new file mode 100644 index 00000000..8175c68a --- /dev/null +++ b/database/migrations/2018_05_15_090646_change_user_id_in_bookings_table.php @@ -0,0 +1,34 @@ +unsignedInteger('user_id'); + $table->foreign('user_id') + ->references('id')->on('users') + ->onDelete('cascade'); + + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + + } +} diff --git a/database/seeds/BookTableSeeder.php b/database/seeds/BookTableSeeder.php index 4817a214..a0f1e51f 100644 --- a/database/seeds/BookTableSeeder.php +++ b/database/seeds/BookTableSeeder.php @@ -1,6 +1,7 @@ insert([ + // 'id' => '1', + 'account_name' => 'kazim', + 'account_num' => '1234', + 'bank_name' => 'maybank', + 'bank_branch' => 'rembau', + 'company_name' => 'ICEF', + 'company_address' => 'selangor', + 'bank_address' => 'cyber', + 'swift_code' => 'qwe123', + 'cnap' => '123asd', + 'term' => 'x1', + 'amount' => 1.2, + 'rate_id' => '1', + 'user_id' => '17', + 'created_at' => Carbon::now()->format('Y-m-d H:i:s'), + 'updated_at' => Carbon::now()->format('Y-m-d H:i:s'), + ]); } } diff --git a/database/seeds/DatabaseSeeder.php b/database/seeds/DatabaseSeeder.php index 3b0563d1..2a2ca345 100644 --- a/database/seeds/DatabaseSeeder.php +++ b/database/seeds/DatabaseSeeder.php @@ -13,7 +13,9 @@ class DatabaseSeeder extends Seeder { $this->call(UsersTableSeeder::class); $this->call(RolesAndPermissionsSeeder::class); - $this->call(RateTableSeeder::class); + // $this->call(RateTableSeeder::class); + $this->call('Database\Seeds\RateTableSeeder'); + $this->call('Database\Seeds\BookTableSeeder'); } } diff --git a/database/seeds/RateTableSeeder.php b/database/seeds/RateTableSeeder.php index 3378c6ad..5a3bd8e0 100644 --- a/database/seeds/RateTableSeeder.php +++ b/database/seeds/RateTableSeeder.php @@ -1,6 +1,7 @@ 1.2, 'x2_cheque' => 1.2, 'x2_ba' => 1.2, + 'created_at' => Carbon::now()->format('Y-m-d H:i:s'), + 'updated_at' => Carbon::now()->format('Y-m-d H:i:s'), + ]); + + DB::table('rates')->insert([ + 'x1_cash' => 1.3, + 'x1_cheque' => 1.3, + 'x1_ba' => 1.3, + 'x2_cash' => 1.3, + 'x2_cheque' => 1.3, + 'x2_ba' => 1.3, + 'created_at' => Carbon::now()->format('Y-m-d H:i:s'), + 'updated_at' => Carbon::now()->format('Y-m-d H:i:s'), ]); } } diff --git a/server.php b/server.php index 20bc389f..5fb6379e 100644 --- a/server.php +++ b/server.php @@ -1,10 +1,12 @@ */ + $uri = urldecode( parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH) ); From 315ed64520097420d9fb6699cbc09f6604c7f0f6 Mon Sep 17 00:00:00 2001 From: Mohd Arief Date: Sat, 19 May 2018 12:33:48 +0800 Subject: [PATCH 07/17] added booking seeder updated booking controller added test for booking --- app/Booking.php | 5 ++ app/Http/Controllers/BookingController.php | 32 +++++++- app/User.php | 6 +- composer.lock | 39 +++++---- ...05_18_063200_add_bia_in_bookings_table.php | 31 +++++++ database/seeds/BookTableSeeder.php | 6 +- phpunit.xml | 3 - routes/api.php | 6 +- tests/TestCase.php | 1 + tests/Unit/OrderTest.php | 81 ++++++++++--------- 10 files changed, 140 insertions(+), 70 deletions(-) create mode 100644 database/migrations/2018_05_18_063200_add_bia_in_bookings_table.php diff --git a/app/Booking.php b/app/Booking.php index 6144528c..a991d1a1 100644 --- a/app/Booking.php +++ b/app/Booking.php @@ -8,4 +8,9 @@ class Booking extends Model { // protected $guarded = []; protected $fillable = ['term', 'amount', 'rate_id', 'user_id', 'account_name', 'account_num', 'bank_name', 'bank_branch', 'company_name', 'company_address', 'bank_address', 'swift_code', 'cnap' ]; + public $timestamps = true; + public function user(){ + return $this->belongsTo('app\User'); + } } + diff --git a/app/Http/Controllers/BookingController.php b/app/Http/Controllers/BookingController.php index b7514b28..afa6ec6d 100644 --- a/app/Http/Controllers/BookingController.php +++ b/app/Http/Controllers/BookingController.php @@ -5,6 +5,7 @@ namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Booking; use App\Rate; +use App\User; class BookingController extends Controller { @@ -63,11 +64,36 @@ class BookingController extends Controller $rate = "no"; break; } - return $rate; - + + //Calculation part + // $bookings = Booking::all(); + $amount = $request->input("amount"); + $svcharge=20.00; + $bia = round(($amount + ($svcharge / $rate) + 0.06), 2); + + // return $bia; + $user = User::first(); + $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->user()->associate($user); + $booking->user_id = $request->input('user_id'); + $booking->bia = $bia; + $booking->save(); + // return false; //$booking = Booking::create($request->all()); - // return response()->json($booking, 201); + return response()->json($booking, 201); } diff --git a/app/User.php b/app/User.php index 1d093208..4ceda42b 100644 --- a/app/User.php +++ b/app/User.php @@ -58,7 +58,7 @@ class User extends Authenticatable implements JWTSubject */ public function getRoleAttribute() { - return $this->roles->first()->name; + // return $this->roles->first()->name; } /** @@ -98,4 +98,8 @@ class User extends Authenticatable implements JWTSubject return []; } + public function booking(){ + return $this->hasMany('App\Booking'); + } + } diff --git a/composer.lock b/composer.lock index fa74a2f6..50a353a1 100644 --- a/composer.lock +++ b/composer.lock @@ -706,16 +706,16 @@ }, { "name": "laravel/framework", - "version": "v5.6.21", + "version": "v5.6.22", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "458a89b1c5ff73072c27308566f444c790f76f28" + "reference": "637fd797a6dde8d24a9f07da77e375ec251c5d24" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/458a89b1c5ff73072c27308566f444c790f76f28", - "reference": "458a89b1c5ff73072c27308566f444c790f76f28", + "url": "https://api.github.com/repos/laravel/framework/zipball/637fd797a6dde8d24a9f07da77e375ec251c5d24", + "reference": "637fd797a6dde8d24a9f07da77e375ec251c5d24", "shasum": "" }, "require": { @@ -841,7 +841,7 @@ "framework", "laravel" ], - "time": "2018-05-08T13:30:15+00:00" + "time": "2018-05-15T13:34:20+00:00" }, { "name": "laravel/socialite", @@ -907,16 +907,16 @@ }, { "name": "laravel/tinker", - "version": "v1.0.6", + "version": "v1.0.7", "source": { "type": "git", "url": "https://github.com/laravel/tinker.git", - "reference": "b22fe905fcefdffae76b011e27c7ac09e07e052b" + "reference": "e3086ee8cb1f54a39ae8dcb72d1c37d10128997d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/tinker/zipball/b22fe905fcefdffae76b011e27c7ac09e07e052b", - "reference": "b22fe905fcefdffae76b011e27c7ac09e07e052b", + "url": "https://api.github.com/repos/laravel/tinker/zipball/e3086ee8cb1f54a39ae8dcb72d1c37d10128997d", + "reference": "e3086ee8cb1f54a39ae8dcb72d1c37d10128997d", "shasum": "" }, "require": { @@ -966,7 +966,7 @@ "laravel", "psysh" ], - "time": "2018-04-16T12:10:37+00:00" + "time": "2018-05-17T13:42:07+00:00" }, { "name": "laravelcollective/html", @@ -3157,34 +3157,39 @@ }, { "name": "facebook/webdriver", - "version": "1.5.0", + "version": "1.6.0", "source": { "type": "git", "url": "https://github.com/facebook/php-webdriver.git", - "reference": "86b5ca2f67173c9d34340845dd690149c886a605" + "reference": "bd8c740097eb9f2fc3735250fc1912bc811a954e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/facebook/php-webdriver/zipball/86b5ca2f67173c9d34340845dd690149c886a605", - "reference": "86b5ca2f67173c9d34340845dd690149c886a605", + "url": "https://api.github.com/repos/facebook/php-webdriver/zipball/bd8c740097eb9f2fc3735250fc1912bc811a954e", + "reference": "bd8c740097eb9f2fc3735250fc1912bc811a954e", "shasum": "" }, "require": { "ext-curl": "*", + "ext-json": "*", + "ext-mbstring": "*", "ext-zip": "*", "php": "^5.6 || ~7.0", "symfony/process": "^2.8 || ^3.1 || ^4.0" }, "require-dev": { "friendsofphp/php-cs-fixer": "^2.0", - "guzzle/guzzle": "^3.4.1", - "php-coveralls/php-coveralls": "^1.0.2", + "jakub-onderka/php-parallel-lint": "^0.9.2", + "php-coveralls/php-coveralls": "^2.0", "php-mock/php-mock-phpunit": "^1.1", "phpunit/phpunit": "^5.7", "sebastian/environment": "^1.3.4 || ^2.0 || ^3.0", "squizlabs/php_codesniffer": "^2.6", "symfony/var-dumper": "^3.3 || ^4.0" }, + "suggest": { + "ext-SimpleXML": "For Firefox profile creation" + }, "type": "library", "extra": { "branch-alias": { @@ -3208,7 +3213,7 @@ "selenium", "webdriver" ], - "time": "2017-11-15T11:08:09+00:00" + "time": "2018-05-16T17:37:13+00:00" }, { "name": "filp/whoops", diff --git a/database/migrations/2018_05_18_063200_add_bia_in_bookings_table.php b/database/migrations/2018_05_18_063200_add_bia_in_bookings_table.php new file mode 100644 index 00000000..5c58ba83 --- /dev/null +++ b/database/migrations/2018_05_18_063200_add_bia_in_bookings_table.php @@ -0,0 +1,31 @@ +double('bia'); + + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + // + } +} diff --git a/database/seeds/BookTableSeeder.php b/database/seeds/BookTableSeeder.php index a0f1e51f..27740fdd 100644 --- a/database/seeds/BookTableSeeder.php +++ b/database/seeds/BookTableSeeder.php @@ -14,8 +14,8 @@ class BookTableSeeder extends Seeder { DB::table('bookings')->insert([ // 'id' => '1', - 'account_name' => 'kazim', - 'account_num' => '1234', + 'account_name' => 'milah', + 'account_num' => '99898', 'bank_name' => 'maybank', 'bank_branch' => 'rembau', 'company_name' => 'ICEF', @@ -26,7 +26,7 @@ class BookTableSeeder extends Seeder 'term' => 'x1', 'amount' => 1.2, 'rate_id' => '1', - 'user_id' => '17', + 'user_id' => '3', 'created_at' => Carbon::now()->format('Y-m-d H:i:s'), 'updated_at' => Carbon::now()->format('Y-m-d H:i:s'), ]); diff --git a/phpunit.xml b/phpunit.xml index 5341ea60..2a973817 100644 --- a/phpunit.xml +++ b/phpunit.xml @@ -27,12 +27,9 @@ -<<<<<<< HEAD -======= ->>>>>>> 06aa931eb57dbc7c95748ade6e3bb659f0659abe diff --git a/routes/api.php b/routes/api.php index ebe30caf..bec708df 100644 --- a/routes/api.php +++ b/routes/api.php @@ -23,13 +23,9 @@ Route::middleware('auth:api')->get('/user', function (Request $request) { /*Route for the booking */ Route::get('/booking', 'BookingController@index'); - Route::get('/booking/{book_id}', 'BookingController@show'); - -Route::post('/booking', 'BookingController@store'); - +Route::post('/booking/', 'BookingController@store'); Route::put('/booking/{book_id}', 'BookingController@update'); - Route::delete('/booking/{book_id}', 'BookingController@delete'); diff --git a/tests/TestCase.php b/tests/TestCase.php index 5a1e7091..17678639 100644 --- a/tests/TestCase.php +++ b/tests/TestCase.php @@ -3,6 +3,7 @@ namespace Tests; use Illuminate\Foundation\Testing\RefreshDatabase; +use Illuminate\Foundation\Testing\DatabaseMigrations; use Illuminate\Foundation\Testing\TestCase as BaseTestCase; abstract class TestCase extends BaseTestCase diff --git a/tests/Unit/OrderTest.php b/tests/Unit/OrderTest.php index 838dfc57..e80291b8 100644 --- a/tests/Unit/OrderTest.php +++ b/tests/Unit/OrderTest.php @@ -27,57 +27,62 @@ class OrderTest extends TestCase // ]); // } - public function testGet() - { - $response = $this->get('/api/booking'); + // public function testGet() + // { + // $response = $this->get('/api/booking'); - $response->assertStatus(200); - } + // $response->assertStatus(200); + // } public function testPost() { - $response = $this->json('POST', '/api/booking/1', [ - - 'account_name' => 'kijd', - 'account_num' => '1234', - 'bank_name' => 'ferdas', - 'bank_branch' => 'dersa', - 'company_name' => 'desaq', - 'company_address' => 'qada', - 'bank_address' => 'daqa', - 'swift_code' => '3eds2', - 'cnap' => 'redah' + $response = $this->json('POST', '/api/booking/', [ + 'account_name' => 'johnny', + 'account_num' => '1234567', + 'bank_name' => 'myabnak', + 'bank_branch' => 'banking', + 'company_name' => 'besaras', + 'company_address' => 'californina', + 'bank_address' => 'cyber', + 'swift_code' => '123wert', + 'cnap' => '2131rew', + 'term' => 'x1_cash', + 'amount' => '14000', + 'user_id' => '1', + ]); - + // dd($response->getContent()); $response ->assertStatus(201); + + //dd($response->getContent()); } - public function testPut() - { - $response = $this->json('PUT', '/api/booking/1', [ + // public function testPut() + // { + // $response = $this->json('PUT', '/api/booking/1', [ - 'account_name' => 'kaokndfoanf', - 'account_num' => '1234', - 'bank_name' => 'ferdas', - 'bank_branch' => 'dersa', - 'company_name' => 'desaq', - 'company_address' => 'qada', - 'bank_address' => 'daqa', - 'swift_code' => '3eds2', - 'cnap' => 'redah' + // 'account_name' => 'kaokndfoanf', + // 'account_num' => '1234', + // 'bank_name' => 'ferdas', + // 'bank_branch' => 'dersa', + // 'company_name' => 'desaq', + // 'company_address' => 'qada', + // 'bank_address' => 'daqa', + // 'swift_code' => '3eds2', + // 'cnap' => 'redah' - ]); + // ]); - $response - ->assertStatus(200); - } + // $response + // ->assertStatus(200); + // } - public function testDelete() - { - $response = $this->json('DELETE', '/api/booking/1'); + // public function testDelete() + // { + // $response = $this->json('DELETE', '/api/booking/1'); - $response->assertStatus(204); - } + // $response->assertStatus(204); + // } } From 3a9b9492455109b13d93ea52969cf38c70717967 Mon Sep 17 00:00:00 2001 From: jack Date: Sat, 19 May 2018 12:59:28 +0800 Subject: [PATCH 08/17] changed ordertest to bookingtest updated databaseseeder to use class updated booking seeder --- database/seeds/BookTableSeeder.php | 12 ++++++++---- database/seeds/DatabaseSeeder.php | 6 ++---- tests/Unit/{OrderTest.php => BookingTest.php} | 6 +++--- vendor/composer/autoload_classmap.php | 2 +- vendor/composer/autoload_static.php | 12 ++++++------ 5 files changed, 20 insertions(+), 18 deletions(-) rename tests/Unit/{OrderTest.php => BookingTest.php} (95%) diff --git a/database/seeds/BookTableSeeder.php b/database/seeds/BookTableSeeder.php index 27740fdd..1f01c281 100644 --- a/database/seeds/BookTableSeeder.php +++ b/database/seeds/BookTableSeeder.php @@ -2,6 +2,8 @@ use Illuminate\Database\Seeder; use Carbon\Carbon; +use App\User; +use App\Rate; class BookTableSeeder extends Seeder { @@ -11,9 +13,11 @@ class BookTableSeeder extends Seeder * @return void */ public function run() - { + { + $user = User::where("email", "user@example.com")->first(); + $rate = Rate::all()->last(); + DB::table('bookings')->insert([ - // 'id' => '1', 'account_name' => 'milah', 'account_num' => '99898', 'bank_name' => 'maybank', @@ -25,8 +29,8 @@ class BookTableSeeder extends Seeder 'cnap' => '123asd', 'term' => 'x1', 'amount' => 1.2, - 'rate_id' => '1', - 'user_id' => '3', + 'rate_id' => $rate->id, + 'user_id' => $user->id, 'created_at' => Carbon::now()->format('Y-m-d H:i:s'), 'updated_at' => Carbon::now()->format('Y-m-d H:i:s'), ]); diff --git a/database/seeds/DatabaseSeeder.php b/database/seeds/DatabaseSeeder.php index 2a2ca345..b743b223 100644 --- a/database/seeds/DatabaseSeeder.php +++ b/database/seeds/DatabaseSeeder.php @@ -13,9 +13,7 @@ class DatabaseSeeder extends Seeder { $this->call(UsersTableSeeder::class); $this->call(RolesAndPermissionsSeeder::class); - // $this->call(RateTableSeeder::class); - $this->call('Database\Seeds\RateTableSeeder'); - $this->call('Database\Seeds\BookTableSeeder'); - + $this->call(RateTableSeeder::class); + $this->call(BookTableSeeder::class); } } diff --git a/tests/Unit/OrderTest.php b/tests/Unit/BookingTest.php similarity index 95% rename from tests/Unit/OrderTest.php rename to tests/Unit/BookingTest.php index e80291b8..b8d61f48 100644 --- a/tests/Unit/OrderTest.php +++ b/tests/Unit/BookingTest.php @@ -1,6 +1,6 @@ '1', ]); - // dd($response->getContent()); + dd($response->getContent()); $response ->assertStatus(201); diff --git a/vendor/composer/autoload_classmap.php b/vendor/composer/autoload_classmap.php index 56d8a22c..52cf85af 100644 --- a/vendor/composer/autoload_classmap.php +++ b/vendor/composer/autoload_classmap.php @@ -3731,7 +3731,7 @@ return array( 'Tests\\Feature\\SettingsTest' => $baseDir . '/tests/Feature/SettingsTest.php', 'Tests\\TestCase' => $baseDir . '/tests/TestCase.php', 'Tests\\Unit\\ExampleTest' => $baseDir . '/tests/Unit/ExampleTest.php', - 'Tests\\Unit\\OrderTest\\OrderTest' => $baseDir . '/tests/Unit/OrderTest.php', + 'Tests\\Unit\\OrderTest\\OrderTest' => $baseDir . '/tests/Unit/BookingTest.php', 'Text_Template' => $vendorDir . '/phpunit/php-text-template/src/Template.php', 'TheSeer\\Tokenizer\\Exception' => $vendorDir . '/theseer/tokenizer/src/Exception.php', 'TheSeer\\Tokenizer\\NamespaceUri' => $vendorDir . '/theseer/tokenizer/src/NamespaceUri.php', diff --git a/vendor/composer/autoload_static.php b/vendor/composer/autoload_static.php index 8eaf4c37..48d2d858 100644 --- a/vendor/composer/autoload_static.php +++ b/vendor/composer/autoload_static.php @@ -4,7 +4,7 @@ namespace Composer\Autoload; -class ComposerStaticInitcf93d959a701f2cce72413258326eb20 +class ComposerStaticInit51a2977d18ddf089cd82402f3476f1a0 { public static $files = array ( '0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/bootstrap.php', @@ -4130,7 +4130,7 @@ class ComposerStaticInitcf93d959a701f2cce72413258326eb20 'Tests\\Feature\\SettingsTest' => __DIR__ . '/../..' . '/tests/Feature/SettingsTest.php', 'Tests\\TestCase' => __DIR__ . '/../..' . '/tests/TestCase.php', 'Tests\\Unit\\ExampleTest' => __DIR__ . '/../..' . '/tests/Unit/ExampleTest.php', - 'Tests\\Unit\\OrderTest\\OrderTest' => __DIR__ . '/../..' . '/tests/Unit/OrderTest.php', + 'Tests\\Unit\\OrderTest\\OrderTest' => __DIR__ . '/../..' . '/tests/Unit/BookingTest.php', 'Text_Template' => __DIR__ . '/..' . '/phpunit/php-text-template/src/Template.php', 'TheSeer\\Tokenizer\\Exception' => __DIR__ . '/..' . '/theseer/tokenizer/src/Exception.php', 'TheSeer\\Tokenizer\\NamespaceUri' => __DIR__ . '/..' . '/theseer/tokenizer/src/NamespaceUri.php', @@ -4320,10 +4320,10 @@ class ComposerStaticInitcf93d959a701f2cce72413258326eb20 public static function getInitializer(ClassLoader $loader) { return \Closure::bind(function () use ($loader) { - $loader->prefixLengthsPsr4 = ComposerStaticInitcf93d959a701f2cce72413258326eb20::$prefixLengthsPsr4; - $loader->prefixDirsPsr4 = ComposerStaticInitcf93d959a701f2cce72413258326eb20::$prefixDirsPsr4; - $loader->prefixesPsr0 = ComposerStaticInitcf93d959a701f2cce72413258326eb20::$prefixesPsr0; - $loader->classMap = ComposerStaticInitcf93d959a701f2cce72413258326eb20::$classMap; + $loader->prefixLengthsPsr4 = ComposerStaticInit51a2977d18ddf089cd82402f3476f1a0::$prefixLengthsPsr4; + $loader->prefixDirsPsr4 = ComposerStaticInit51a2977d18ddf089cd82402f3476f1a0::$prefixDirsPsr4; + $loader->prefixesPsr0 = ComposerStaticInit51a2977d18ddf089cd82402f3476f1a0::$prefixesPsr0; + $loader->classMap = ComposerStaticInit51a2977d18ddf089cd82402f3476f1a0::$classMap; }, null, ClassLoader::class); } From 8f3a6d82e50bfc9d8c50853bbd8bda57917d0bb1 Mon Sep 17 00:00:00 2001 From: jack Date: Sat, 19 May 2018 16:11:19 +0800 Subject: [PATCH 09/17] updated booking to create for current user updated test to pass --- app/Http/Controllers/BookingController.php | 7 +-- tests/Unit/BookingTest.php | 55 ++++++++++++---------- 2 files changed, 34 insertions(+), 28 deletions(-) diff --git a/app/Http/Controllers/BookingController.php b/app/Http/Controllers/BookingController.php index afa6ec6d..5cfd855e 100644 --- a/app/Http/Controllers/BookingController.php +++ b/app/Http/Controllers/BookingController.php @@ -6,6 +6,7 @@ use Illuminate\Http\Request; use App\Booking; use App\Rate; use App\User; +use Auth; class BookingController extends Controller { @@ -72,7 +73,7 @@ class BookingController extends Controller $bia = round(($amount + ($svcharge / $rate) + 0.06), 2); // return $bia; - $user = User::first(); + $user = Auth::user(); $booking = new Booking(); $booking->account_name = $request->input('account_name'); $booking->account_num = $request->input('account_num'); @@ -86,8 +87,8 @@ class BookingController extends Controller $booking->term = $request->input('term'); $booking->amount = $request->input('amount'); $booking->rate_id = $rate; - // $booking->user()->associate($user); - $booking->user_id = $request->input('user_id'); + $booking->user()->associate($user); + //$booking->user_id = $request->input('user_id'); $booking->bia = $bia; $booking->save(); diff --git a/tests/Unit/BookingTest.php b/tests/Unit/BookingTest.php index b8d61f48..fe5b01bd 100644 --- a/tests/Unit/BookingTest.php +++ b/tests/Unit/BookingTest.php @@ -3,13 +3,23 @@ namespace Tests\Unit\BookingTest; use Tests\TestCase; -use Illuminate\Foundation\Testing\WithFaker; -use Illuminate\Foundation\Testing\RefreshDatabase; use Illuminate\Foundation\Testing\WithoutMiddleware; - +use Illuminate\Database\Seeder; +use Illuminate\Foundation\Testing\DatabaseMigrations; +use Artisan; +use App\User; class BookingTest extends TestCase { + protected $user; + + public function setUp() + { + parent::setUp(); + Artisan::call('db:seed'); + $this->user = factory(User::class)->create(); + } + /** * A basic test example. * @@ -36,27 +46,22 @@ class BookingTest extends TestCase public function testPost() { - $response = $this->json('POST', '/api/booking/', [ - - 'account_name' => 'johnny', - 'account_num' => '1234567', - 'bank_name' => 'myabnak', - 'bank_branch' => 'banking', - 'company_name' => 'besaras', - 'company_address' => 'californina', - 'bank_address' => 'cyber', - 'swift_code' => '123wert', - 'cnap' => '2131rew', - 'term' => 'x1_cash', - 'amount' => '14000', - 'user_id' => '1', - - ]); - dd($response->getContent()); - $response - ->assertStatus(201); - - //dd($response->getContent()); + $response = + $this->actingAs($this->user) + ->postJson('/api/booking/', [ + 'account_name' => 'johnny', + 'account_num' => '1234567', + 'bank_name' => 'myabnak', + 'bank_branch' => 'banking', + 'company_name' => 'besaras', + 'company_address' => 'californina', + 'bank_address' => 'cyber', + 'swift_code' => '123wert', + 'cnap' => '2131rew', + 'term' => 'x1_cash', + 'amount' => '14000' + ]); + $response->assertStatus(201); } // public function testPut() @@ -85,4 +90,4 @@ class BookingTest extends TestCase // $response->assertStatus(204); // } -} +} \ No newline at end of file From 0d6beb81cfbfe181dc5495da3e56a65dd41fcf7f Mon Sep 17 00:00:00 2001 From: jack Date: Sat, 19 May 2018 18:37:48 +0800 Subject: [PATCH 10/17] added element ui updated user frontend --- package.json | 1 + .../lib/theme-chalk/element-icons.ttf | Bin 0 -> 11040 bytes .../lib/theme-chalk/element-icons.woff | Bin 0 -> 6164 bytes public/mix-manifest.json | 6 +- resources/assets/js/app.js | 5 + resources/assets/js/pages/home.vue | 122 ++++++++++++++++-- resources/views/index.blade.php | 2 + 7 files changed, 124 insertions(+), 12 deletions(-) create mode 100644 public/fonts/vendor/element-ui/lib/theme-chalk/element-icons.ttf create mode 100644 public/fonts/vendor/element-ui/lib/theme-chalk/element-icons.woff diff --git a/package.json b/package.json index 23f84404..bb7d8524 100644 --- a/package.json +++ b/package.json @@ -18,6 +18,7 @@ "@fortawesome/vue-fontawesome": "^0.0.22", "axios": "^0.18.0", "bootstrap": "^4.0.0", + "element-ui": "^2.3.9", "jquery": "^3.3.1", "js-cookie": "^2.2.0", "popper.js": "^1.14.1", diff --git a/public/fonts/vendor/element-ui/lib/theme-chalk/element-icons.ttf b/public/fonts/vendor/element-ui/lib/theme-chalk/element-icons.ttf new file mode 100644 index 0000000000000000000000000000000000000000..73bc90f4ab73801335269ea9f75cbd79aa388864 GIT binary patch literal 11040 zcmeHNeRNyJm7hCL-$jFvV_w%TPUH07}|Y@LTM?bAIrwi`@8Qw zB{GoH{?~t2)_rf@yqP;Q_x|pkdq)-|geVa?p@?PcK6=fnhxKp1B?O&^+EpL(t;2f<#gD%CCm~!v7h>V{+cJFvWw#voF51q3 zQrl4BoKb#&@-a};wvp_fhF_s1=qI4?@K}G}JMC|bqW{IHJUr63XPh>RkKy|)U{j5)~r$HykK3m*U3V?xA!DTK08VD3t8E+?+Hq50gLjksps=VGG7cO}~9!KpR=AGUY?Syfquq&wj zkk6HaJp)1&d$hIY`Z4z$n(yv9pLkOHC2c+m`I!KrKsgDellV z>TTi)JiGA67}%pVYHQ~h1A8=~H5ny5pbxjW%qqFjw?ueFsql$1Q7-(VLIgx5I8=$C z2#IR3K-7p@u~5_jK@B1-BBD`5MU!Y2Eg~isiN#`xXvHkzA|cwuGO--KjK#x-- zMTh7VDUlZEiSxw;Vue^KE)-p&8<@CAtP-om8qp)xiglP6qwR0>vEcYO8og*(FPD`8 zs|HdLdo02fH58ekKcVq6Puq<<^v%RL(0~;tXjN!1DJJMwXuuH@G%Ykpnh81=n$sj` zUueviy+}Fk%ohYi2#xu&N2$P_`GSBFp)p^caV74|7sS}pm@fzz5*qUb0Zl?&c0pmhrULc@dXkn9pd!aEe5G+7w%nJltfTfuP zs}LIZ2f;ps#{EHT#~Sws!DfWU{XwuEp>cl@>_}+b9|VgM8utgmwuHw0LF^MW?hj(u zsd0Z0`wNZxgJ6R~tNCi=gK<;!5_2t<>m~brgwpBxEa9MeJ3fN}m#o#v;yWV?w!*LXD2fV0)^g zCFF2A%E(9cl#H~eVhI_e&WJVH$D!Y6FRQ6K*05MMkat0>=CW%` z!?hKCQyrsq%^^2YE=PgdutwHiE(o_ z#9{D_usA#RFKkTMH(0{Romfd1_h%@UA zvJWaAq1ix9v=OTfwBUvT9aWW~U;`yn5Ia_VQa|NzP~_xEiZ~qlDgE8h>Lu}T-NLHd z7Bo33!cj#k&dQc{UrC)OSJdt#`aKm|s>W+7FO-)C6j@vAcKH@2G7q+{`sekqS|e%^ z^q~AL`+I1-(&3CIsMFt(N+;{7%AYorUP<@Thukva6d*<5=_;mW6j>a}>>FB1;E@D#%`F*4ehP{E$dce=^eh#d{ z1}9%dsjR-$;N?DEQd&__I=i{F!sIEZfmQfbw@kZ9?$U3iT}$+D(&dWKb9%0ouAysq zeAZ`P$tx=Gg&m2aRmrMkCxF};4FKH0IdJVGnwgnV@eMyQYq!rnVO(jNYi4HELItYX z!x!<3f@3EbRz<78u#<{7GHcU%>cQRMM52iM6Gu+kY$uNxSDH3Q*TY3atth-jn}Qs3 zQZ?7?bdz$8{-FL~E9D5ayz(V111#B+&x|P_Lemh@_9b+={!RE+MYLM|EZv~D!IR)K zfNV>4t>Ag9*@xTBy$%^xbBq%(8Ahrep@F6PI{LSz`WF=+_3Do$=q|b|p+BZ#3LlWW zA!Vl_pFqqRa)#2ObSxc{^F(rY;+}gFcN&d9fsUL!k;#C*nA&`au;7cF?Nc-BGU)z!qA_(Ur)8cs z;FfY)XME&!{F(0*6)*4&xG7I6;fY(Ed8ZovD1z#|%mDu*s2^S~9w;y1=@;25to@Cq)>!Q|s4*5Rg!z_XUk`B{8vtMc z8GyzgA@~L*;*SLUN#k$2m%@-!xOY}1k^r<m?5yOpv7amfm$`Ms+giV&oJbUqXKA;z?!6>@N6E6pTWHH z=z*o6tuTD38`%l+00cee6#UI0aste0f+btS%g3kmJ@+@R@SabX#aTKz0*X+W()Tt# z5I)~am%)b3u~o2kaVBJ-CWKYlu@pHI*MG17KAu(M4I?bI@ zrXd$EvY7~aV<%xhUX=_)0?CLOwUiO`s94SbI3M1yVOUP9r}OFz4tg$0r7j_LFex8N z4ytoPmA%1@6H-oW49@0cF1X?fqAONxgwYH504yK#oqJGuUTMXMjTjN5VT%j}eTYYV zgsl?(KG5Dp9cO(0^Y^`IOTF+lk-h}Veqc+>4N-ONRXMe{DPjv;k zPQ(+o7wuY;@*1rDPllrTOAsVQ;zNKYFOG~Sym7aj3 zMD{zvO|cuJL@PXj61(hog=6Pmq3okucJI~S-Mjl1LMH?s4f=D@l~H{4L1)O*f69|xt{wot)u*@ak_b2S3jSSH;!)^pM64p;o;e>S1_Jfw=fRi$&3+j zMgrLykm4Q7jD5Rs!dI<7T+L+o-{Z1>{rY}sTq*wp{YNerE&G9~At^G<7 z&LY3l0Bt7yQJ_8wi^9|+oxC#;$dB!Tm}X$DD$UG6PIF=;el$*HxZtb*4i^Q`fJ)5#J5W`zI zgNE-pQt^eK;~Q^cxQk_u_jf@;pFc;a>(IoY1kE=p3W)x)9Rs0uHl0dUK1{PtjTTp#Irv796F^uJa!&Zk@<6}(D2@H z?C{>_R++#l29HfM##+KSap~mK1J0LExRW;9_jF~5YXywDpx{11%nOAe6H1HvH zD?g-e=1j+B-QAYpF8V9$4D8IEP##he(2fWwgm8k=FHIrMzVO?3>AzdAB=o0dU!6L( zp33gxrJMG}vUg&a4)IA>!0Z%LEPGZuv2NZath>t0j&IiAjz7Eds-Xm3b=|fnMgbBQ zGvYy*4xPdf&&H{I^Kt#e6WgxS|1~jmmF!RfqYcAPa&*jT!5O`C$;0P)Y$44Eu3;^q z_Ij!`Hm8o1%04!qJx*||Gc`+V@Lilrv6Ic^v+wH9$z*R$ygjjiQX6onWcXVHPbS}T zoa*6Rpoll8!V!hei~x5De_^V#cq|%>@BOm;uebEK>pSZ4Emmjo=(E2_?fDWdBwKyw zijI0iRRzTf*z(*A_WLmKB{)c7H_(YdpJq7ZQjKtjrd8`fm~m5H;TX@1@Su@2{4887 zd@X_;UI?C$9l+-Nkrgj( z^WeGVm4AosS?du$a+`F_>5mwSq)mO zdvmwZ!Kyd+s&|x6DL$P0!gIk_#DFTK=%HXL9mP7L1i~HquprmsP;8rC-oE|s;4MdP zyz$#TpL|}`%W>KC@{aAFuqrcGG{u)4%VwsVo0eXxJ}-OJ=Qk8pG0x^5GW<(9P7+r` z5AF4`3Ks5YinT}t8Ufxvq=N$!Bi=|SJ6lreR4^1Yj=<`$hw=AgP6+BE{w- z``5_N?f;bizx}-($h1=TECP`;`r z+LVk&6?M)2Bb#r1Ii2k2?I(LK_c^`0WJOo^Rh5C}+Vd7wg^4Q5-Sx{oHXKfL2BN-b z=rVtGwSS4PR{t$ECYz|Sqfr$0{yg-@`GBxPn8wBrF!P=~FFVs$Nl~1Z($4?@d>8}& zqa0A&B8-Q6>cTmIk3!&uqd%ES+Z|?|!`YmQ$*(ruczIdpwVPXf`ic6>FKuxpKXPd` zRom0O8={eqU00{SuDE10V(Y&C>e|H{mmOPJ679KaWmRqCQ2S+}r8jI!1Q!j}))dCg zD=%X1ZXm%Ph~dP`?hGIje>wdo^&CD-J#VJ3{Q|Ag+9;-Gu2*`7a&c-9$na9Ro}z+6&DPeZ8&gp#oq5Z*$SNTC5NoX8=A58^})ZE!Y)qzO30 z(cHWM0su6(RD_=&f2B3p)N%rgra93S9^o;3oeK^jz;QQD$CZaF83^~ ztc#2`&aZUW2kIh!x@o_Z`)@L@Yc@-{d5v*Z)ZF@-uE?BNom!t;Us{Sw?S&C4JbEi* zu96bh3Ux(e{Jhp&Yu&QyMm!Yi5^2=cCPR%YEtB!esgXhaVEy~2D<`!#a;Vhd(d zHsx1OJhOTFDL#O^0X8$ww2Kel=!J<=*!2T zd7OddRJ`CdJO+MtV|PyaDUI_UC*X=*Qa_L&cb;}9^gpTGm3GJVKT1tM5GVI+A#R=f zuJRr9=e!yR11y6NX4YNuY+`L4w&Fyuit-RZ+fq)l7kGZ$xo>`weN<77(zd*s&tq`T zwfA-Y*t39h?WJu-3OBokuDP z=j+L><8(bu20Q;o7x7EHSQ~=X8Uta~Pfq_!?(7 zIIW8zi*?2n#8)^z!cmQyk0&J%#D_Su?@32Ku9vE+(G7Sxt8c`Ve^KAe^)KuBV+4Ku z6*{iNG%#_@KTm(Ox&>lM^5w#qh?Q&yR+Znaf*p#BQ0?7@lnbyk_9;Ll*yWJ8>Q z-@w0Ml?gulDXT1TzVxzHR#5+@Rkn#5vRh@l2vUPpcA&n~Dtp96`iNC75iRs3&+3Ux zUp6xk-m*75)IT;lI5wK~WQH>%nbB;VD<(H&w(cD6o0wNO?_pzRVsdC~G`u{qY+n7k z%xGq!zq)4m9 z1pY0nPh@c&5Mi-J?8S9R^oubuDh7>f7VR=(7&HPJMceq97L#HF>b8oVc;9F6I#;`M zbJz$D6JioPdCV|=T2A0!3eMeroiPjU^Zt2H;z#qX_?Ln#{szHm5N*aV>#$gBt%SJ_ zqZ}6F#=Gs{)sNN*vCZf;j&QyWe}$D7+9wQ&j4&t-d&k|w4a3l~hGR>|@omfNH1~xgO^P4HTvbHBywCsF_+2L@lDl_#c2) zT1s)m(QUMhmQy<=se?Kxh0WzWI-f4U4~Hx1LPXl#$X_m^RkWJcP!FxeLEps)RA`T5 z=lJkg-+(!GM3GbjkwK+?AUmTSu%#O8{E7D@w1b)_ixMe?{EyjMzWdG z!W(l!17rO=+2Wi7af69BGcc4bjO^n18xq<&Ha0Nnn9TG|^l!5b!B(9k5LMsSjE&p7 z_`fW(utX;}hV04<6$MTG&IX*E23!bn|^o{OtPGklrGLzd}AK#go%aku~g literal 0 HcmV?d00001 diff --git a/public/fonts/vendor/element-ui/lib/theme-chalk/element-icons.woff b/public/fonts/vendor/element-ui/lib/theme-chalk/element-icons.woff new file mode 100644 index 0000000000000000000000000000000000000000..28da65d498a0cc6cfa587a02640a6e7ca85ad6d6 GIT binary patch literal 6164 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 M^niCa<;cVTKU1h^ApigX literal 0 HcmV?d00001 diff --git a/public/mix-manifest.json b/public/mix-manifest.json index a446c42a..774f9597 100644 --- a/public/mix-manifest.json +++ b/public/mix-manifest.json @@ -1,7 +1,7 @@ { - "/js/lang-zh-CN.05f1eac96ac4b1a58972.js": "/js/lang-zh-CN.05f1eac96ac4b1a58972.js", - "/js/lang-es.7f2b93b9c03c518567a9.js": "/js/lang-es.7f2b93b9c03c518567a9.js", - "/js/lang-en.592895da306250f00312.js": "/js/lang-en.592895da306250f00312.js", + "/js/lang-zh-CN.c0da3973e52421a8cfe5.js": "/js/lang-zh-CN.c0da3973e52421a8cfe5.js", + "/js/lang-es.f4a1a5b4a30e92527b46.js": "/js/lang-es.f4a1a5b4a30e92527b46.js", + "/js/lang-en.0f790217417404ecc662.js": "/js/lang-en.0f790217417404ecc662.js", "/js/app.js": "/js/app.js", "/css/app.css": "/css/app.css" } \ No newline at end of file diff --git a/resources/assets/js/app.js b/resources/assets/js/app.js index 525edb8e..c7bb2bd5 100644 --- a/resources/assets/js/app.js +++ b/resources/assets/js/app.js @@ -3,16 +3,21 @@ import store from '~/store' import router from '~/router' import i18n from '~/plugins/i18n' import App from '~/components/App' +import ElementUI from 'element-ui'; +import 'element-ui/lib/theme-chalk/index.css'; +import locale from 'element-ui/lib/locale/lang/en' import '~/plugins' import '~/components' Vue.config.productionTip = false +Vue.use(ElementUI, { locale }) /* eslint-disable no-new */ new Vue({ i18n, store, router, + el: '#app', ...App }) diff --git a/resources/assets/js/pages/home.vue b/resources/assets/js/pages/home.vue index 6f8a26a0..80171cd7 100644 --- a/resources/assets/js/pages/home.vue +++ b/resources/assets/js/pages/home.vue @@ -1,15 +1,119 @@ + \ No newline at end of file diff --git a/resources/views/index.blade.php b/resources/views/index.blade.php index 8f61071f..9ba961dc 100644 --- a/resources/views/index.blade.php +++ b/resources/views/index.blade.php @@ -27,6 +27,7 @@ $polyfills = [ {{ config('app.name') }} +
@@ -44,6 +45,7 @@ $polyfills = [ + @endif From 97f00bf724715e1ed5eca0e080df44606ad80174 Mon Sep 17 00:00:00 2001 From: jack Date: Mon, 21 May 2018 11:40:31 +0800 Subject: [PATCH 11/17] .env in gitignore --- .env | 39 --------------------------------------- 1 file changed, 39 deletions(-) delete mode 100644 .env diff --git a/.env b/.env deleted file mode 100644 index 8739f27a..00000000 --- a/.env +++ /dev/null @@ -1,39 +0,0 @@ -APP_NAME=IZYIM -APP_ENV=local -APP_KEY=base64:Fu2YulXExzm9HJ5LgVmZUmcbRkchHkc82q02MorN5GQ= -APP_DEBUG=true -APP_URL=http://localhost - -LOG_CHANNEL=stack - -DB_CONNECTION=mysql -DB_HOST=127.0.0.1 -DB_PORT=3306 -DB_DATABASE=default -DB_USERNAME=root -DB_PASSWORD= - -BROADCAST_DRIVER=log -CACHE_DRIVER=file -SESSION_DRIVER=file -SESSION_LIFETIME=120 -QUEUE_DRIVER=sync - -REDIS_HOST=127.0.0.1 -REDIS_PASSWORD=null -REDIS_PORT=6379 - -MAIL_DRIVER=smtp -MAIL_HOST=smtp.mailtrap.io -MAIL_PORT=2525 -MAIL_USERNAME=null -MAIL_PASSWORD=null -MAIL_ENCRYPTION=null - -PUSHER_APP_ID= -PUSHER_APP_KEY= -PUSHER_APP_SECRET= -PUSHER_APP_CLUSTER=mt1 - -MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}" -MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}" From b2fc9f860562056dcaa5bba771298c293d2ab9b5 Mon Sep 17 00:00:00 2001 From: Mohd Arief Date: Mon, 21 May 2018 12:45:54 +0800 Subject: [PATCH 12/17] fix test --- config/database.php | 2 +- env-example | 3 --- vendor/composer/autoload_static.php | 10 +++++----- 3 files changed, 6 insertions(+), 9 deletions(-) diff --git a/config/database.php b/config/database.php index 55c61c7c..7ee80bab 100644 --- a/config/database.php +++ b/config/database.php @@ -65,7 +65,7 @@ return [ 'charset' => 'utf8mb4', 'collation' => 'utf8mb4_unicode_ci', 'prefix' => '', - 'strict' => true, + 'strict' => false, 'engine' => null, ], diff --git a/env-example b/env-example index 16c56f45..c7d77f12 100644 --- a/env-example +++ b/env-example @@ -1,4 +1,3 @@ -<<<<<<< HEAD APP_NAME=IZYIM APP_ENV=local APP_KEY=base64:Fu2YulXExzm9HJ5LgVmZUmcbRkchHkc82q02MorN5GQ= @@ -38,7 +37,6 @@ PUSHER_APP_CLUSTER=mt1 MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}" MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}" -======= APP_NAME=exchange APP_ENV=local APP_KEY=base64:Fu2YulXExzm9HJ5LgVmZUmcbRkchHkc82q02MorN5GQ= @@ -78,4 +76,3 @@ PUSHER_APP_CLUSTER=mt1 MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}" MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}" ->>>>>>> 06aa931eb57dbc7c95748ade6e3bb659f0659abe diff --git a/vendor/composer/autoload_static.php b/vendor/composer/autoload_static.php index 682bbb2c..cd5edf80 100644 --- a/vendor/composer/autoload_static.php +++ b/vendor/composer/autoload_static.php @@ -4,7 +4,7 @@ namespace Composer\Autoload; -class ComposerStaticInit51a2977d18ddf089cd82402f3476f1a0 +class ComposerStaticInitcf93d959a701f2cce72413258326eb20 { public static $files = array ( '0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/bootstrap.php', @@ -4321,10 +4321,10 @@ class ComposerStaticInit51a2977d18ddf089cd82402f3476f1a0 public static function getInitializer(ClassLoader $loader) { return \Closure::bind(function () use ($loader) { - $loader->prefixLengthsPsr4 = ComposerStaticInit51a2977d18ddf089cd82402f3476f1a0::$prefixLengthsPsr4; - $loader->prefixDirsPsr4 = ComposerStaticInit51a2977d18ddf089cd82402f3476f1a0::$prefixDirsPsr4; - $loader->prefixesPsr0 = ComposerStaticInit51a2977d18ddf089cd82402f3476f1a0::$prefixesPsr0; - $loader->classMap = ComposerStaticInit51a2977d18ddf089cd82402f3476f1a0::$classMap; + $loader->prefixLengthsPsr4 = ComposerStaticInitcf93d959a701f2cce72413258326eb20::$prefixLengthsPsr4; + $loader->prefixDirsPsr4 = ComposerStaticInitcf93d959a701f2cce72413258326eb20::$prefixDirsPsr4; + $loader->prefixesPsr0 = ComposerStaticInitcf93d959a701f2cce72413258326eb20::$prefixesPsr0; + $loader->classMap = ComposerStaticInitcf93d959a701f2cce72413258326eb20::$classMap; }, null, ClassLoader::class); } From 90e88039f4439b5989fad7dcc296775a553492ed Mon Sep 17 00:00:00 2001 From: Nazri Date: Tue, 22 May 2018 17:29:12 +0800 Subject: [PATCH 13/17] add verification status --- app/Booking.php | 2 +- app/Http/Controllers/BookingController.php | 14 ++++-- .../2018_05_22_032509_add_bookings_table.php | 50 +++++++++++++++++++ vendor/composer/autoload_static.php | 10 ++-- 4 files changed, 67 insertions(+), 9 deletions(-) create mode 100644 database/migrations/2018_05_22_032509_add_bookings_table.php diff --git a/app/Booking.php b/app/Booking.php index a991d1a1..1add81f2 100644 --- a/app/Booking.php +++ b/app/Booking.php @@ -7,7 +7,7 @@ use Illuminate\Database\Eloquent\Model; class Booking extends Model { // protected $guarded = []; - protected $fillable = ['term', 'amount', 'rate_id', 'user_id', 'account_name', 'account_num', 'bank_name', 'bank_branch', 'company_name', 'company_address', 'bank_address', 'swift_code', 'cnap' ]; + protected $fillable = ['term', 'amount', 'rate_id', 'user_id', 'account_name', 'account_num', 'bank_name', 'bank_branch', 'company_name', 'company_address', 'bank_address', 'swift_code', 'cnap' ,'verification_status']; public $timestamps = true; public function user(){ return $this->belongsTo('app\User'); diff --git a/app/Http/Controllers/BookingController.php b/app/Http/Controllers/BookingController.php index 5cfd855e..35b9c5ae 100644 --- a/app/Http/Controllers/BookingController.php +++ b/app/Http/Controllers/BookingController.php @@ -68,8 +68,15 @@ class BookingController extends Controller //Calculation part // $bookings = Booking::all(); - $amount = $request->input("amount"); - $svcharge=20.00; + $amount = $request->input("amount"); + + if ($amount >= 10000 && ($term == 'x2_cash' || $term = 'x2_cheque' || $term = 'x2_ba')) { + $svcharge = 0; + } + else { + $svcharge = 20.00; + } + $bia = round(($amount + ($svcharge / $rate) + 0.06), 2); // return $bia; @@ -145,7 +152,8 @@ class BookingController extends Controller $book_id->save(); return response()->json(['book_id'=>$book_id],200); - + + } diff --git a/database/migrations/2018_05_22_032509_add_bookings_table.php b/database/migrations/2018_05_22_032509_add_bookings_table.php new file mode 100644 index 00000000..acc4de7f --- /dev/null +++ b/database/migrations/2018_05_22_032509_add_bookings_table.php @@ -0,0 +1,50 @@ +double('rmb_book_amount')->nullable(); + $table->string('rmb_book_pay_method')->nullable(); + $table->string('rmb_book_account_name')->nullable(); + $table->string('rmb_book_bank_name')->nullable(); + $table->string('rmb_book_acc_no')->nullable(); + $table->string('rmb_book_bank_branch')->nullable(); + + $table->double('usd_book_amount')->nullable(); + $table->string('usd_book_pay_method')->nullable(); + $table->string('usd_book_company_name')->nullable(); + $table->string('usd_book_company_address')->nullable(); + $table->string('usd_book_swift_code')->nullable(); + $table->string('usd_book_cnap')->nullable(); + $table->string('usd_book_bank_branch')->nullable(); + $table->boolean('verification_status', true); // Results in a default value of 1. + + // $table->foreign('status_id') + // ->references('id')->on('status') + // ->onDelete('cascade'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::table('bookings', function (Blueprint $table) { + // + }); + } +} diff --git a/vendor/composer/autoload_static.php b/vendor/composer/autoload_static.php index cd5edf80..20eedeed 100644 --- a/vendor/composer/autoload_static.php +++ b/vendor/composer/autoload_static.php @@ -4,7 +4,7 @@ namespace Composer\Autoload; -class ComposerStaticInitcf93d959a701f2cce72413258326eb20 +class ComposerStaticInitebee75b176540aeb1d879b30f69e9dfc { public static $files = array ( '0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/bootstrap.php', @@ -4321,10 +4321,10 @@ class ComposerStaticInitcf93d959a701f2cce72413258326eb20 public static function getInitializer(ClassLoader $loader) { return \Closure::bind(function () use ($loader) { - $loader->prefixLengthsPsr4 = ComposerStaticInitcf93d959a701f2cce72413258326eb20::$prefixLengthsPsr4; - $loader->prefixDirsPsr4 = ComposerStaticInitcf93d959a701f2cce72413258326eb20::$prefixDirsPsr4; - $loader->prefixesPsr0 = ComposerStaticInitcf93d959a701f2cce72413258326eb20::$prefixesPsr0; - $loader->classMap = ComposerStaticInitcf93d959a701f2cce72413258326eb20::$classMap; + $loader->prefixLengthsPsr4 = ComposerStaticInitebee75b176540aeb1d879b30f69e9dfc::$prefixLengthsPsr4; + $loader->prefixDirsPsr4 = ComposerStaticInitebee75b176540aeb1d879b30f69e9dfc::$prefixDirsPsr4; + $loader->prefixesPsr0 = ComposerStaticInitebee75b176540aeb1d879b30f69e9dfc::$prefixesPsr0; + $loader->classMap = ComposerStaticInitebee75b176540aeb1d879b30f69e9dfc::$classMap; }, null, ClassLoader::class); } From f84951f973bcf35b7857b50e04049ccd95c56909 Mon Sep 17 00:00:00 2001 From: Nazri Date: Wed, 23 May 2018 11:49:32 +0800 Subject: [PATCH 14/17] booking test --- ...90646_change_user_id_in_bookings_table.php | 2 +- ...05_18_063200_add_bia_in_bookings_table.php | 3 +- .../2018_05_22_032509_add_bookings_table.php | 28 ++-- tests/Feature/OAuthTest.php | 129 ------------------ 4 files changed, 17 insertions(+), 145 deletions(-) delete mode 100644 tests/Feature/OAuthTest.php diff --git a/database/migrations/2018_05_15_090646_change_user_id_in_bookings_table.php b/database/migrations/2018_05_15_090646_change_user_id_in_bookings_table.php index 8175c68a..d629bc96 100644 --- a/database/migrations/2018_05_15_090646_change_user_id_in_bookings_table.php +++ b/database/migrations/2018_05_15_090646_change_user_id_in_bookings_table.php @@ -14,7 +14,7 @@ class ChangeUserIdInBookingsTable extends Migration public function up() { Schema::table('bookings', function (Blueprint $table) { - $table->unsignedInteger('user_id'); + $table->unsignedInteger('user_id')->default('0'); $table->foreign('user_id') ->references('id')->on('users') ->onDelete('cascade'); diff --git a/database/migrations/2018_05_18_063200_add_bia_in_bookings_table.php b/database/migrations/2018_05_18_063200_add_bia_in_bookings_table.php index 5c58ba83..3df8fcd8 100644 --- a/database/migrations/2018_05_18_063200_add_bia_in_bookings_table.php +++ b/database/migrations/2018_05_18_063200_add_bia_in_bookings_table.php @@ -14,7 +14,8 @@ class AddBiaInBookingsTable extends Migration public function up() { Schema::table('bookings', function (Blueprint $table) { - $table->double('bia'); + $table->double('bia')->default('0'); +; }); } diff --git a/database/migrations/2018_05_22_032509_add_bookings_table.php b/database/migrations/2018_05_22_032509_add_bookings_table.php index acc4de7f..02a64841 100644 --- a/database/migrations/2018_05_22_032509_add_bookings_table.php +++ b/database/migrations/2018_05_22_032509_add_bookings_table.php @@ -14,21 +14,21 @@ class AddBookingsTable extends Migration public function up() { Schema::table('bookings', function (Blueprint $table) { - $table->double('rmb_book_amount')->nullable(); - $table->string('rmb_book_pay_method')->nullable(); - $table->string('rmb_book_account_name')->nullable(); - $table->string('rmb_book_bank_name')->nullable(); - $table->string('rmb_book_acc_no')->nullable(); - $table->string('rmb_book_bank_branch')->nullable(); + $table->double('rmb_book_amount')->default('0'); + $table->string('rmb_book_pay_method')->default('0'); + $table->string('rmb_book_account_name')->default('0'); + $table->string('rmb_book_bank_name')->default('0'); + $table->string('rmb_book_acc_no')->default('0'); + $table->string('rmb_book_bank_branch')->default('0'); - $table->double('usd_book_amount')->nullable(); - $table->string('usd_book_pay_method')->nullable(); - $table->string('usd_book_company_name')->nullable(); - $table->string('usd_book_company_address')->nullable(); - $table->string('usd_book_swift_code')->nullable(); - $table->string('usd_book_cnap')->nullable(); - $table->string('usd_book_bank_branch')->nullable(); - $table->boolean('verification_status', true); // Results in a default value of 1. + $table->double('usd_book_amount')->default('0'); + $table->string('usd_book_pay_method')->default('0'); + $table->string('usd_book_company_name')->default('0'); + $table->string('usd_book_company_address')->default('0'); + $table->string('usd_book_swift_code')->default('0'); + $table->string('usd_book_cnap')->default('0'); + $table->string('usd_book_bank_branch')->default('0'); + $table->boolean('verification_status')->default('1'); // Results in a default value of 1. // $table->foreign('status_id') // ->references('id')->on('status') diff --git a/tests/Feature/OAuthTest.php b/tests/Feature/OAuthTest.php deleted file mode 100644 index 405aac0c..00000000 --- a/tests/Feature/OAuthTest.php +++ /dev/null @@ -1,129 +0,0 @@ -getContent(), $text), "Expected text [{$text}] not found."); - - return $this; - }); - - TestResponse::macro('assertTextMissing', function ($text) { - PHPUnit::assertFalse(str_contains($this->getContent(), $text), "Expected missing text [{$text}] found."); - - return $this; - }); - } - - /** @test */ - public function redirect_to_provider() - { - $this->mockSocialite('github'); - - $this->postJson('/api/oauth/github') - ->assertSuccessful() - ->assertJson(['url' => 'https://url-to-provider']); - } - - /** @test */ - public function create_user_and_return_token() - { - $this->mockSocialite('github', [ - 'id' => '123', - 'name' => 'Test User', - 'email' => 'test@example.com', - 'token' => 'access-token', - 'refreshToken' => 'refresh-token', - ]); - - $this->withoutExceptionHandling(); - - $this->get('/api/oauth/github/callback') - ->assertText('token') - ->assertSuccessful(); - - $this->assertDatabaseHas('users', [ - 'name' => 'Test User', - 'email' => 'test@example.com', - ]); - - $this->assertDatabaseHas('oauth_providers', [ - 'user_id' => User::first()->id, - 'provider' => 'github', - 'provider_user_id' => '123', - 'access_token' => 'access-token', - 'refresh_token' => 'refresh-token', - ]); - } - - /** @test */ - public function update_user_and_return_token() - { - $user = factory(User::class)->create(['email' => 'test@example.com']); - $user->oauthProviders()->create([ - 'provider' => 'github', - 'provider_user_id' => '123', - ]); - - $this->mockSocialite('github', [ - 'id' => '123', - 'email' => 'test@example.com', - 'token' => 'updated-access-token', - 'refreshToken' => 'updated-refresh-token', - ]); - - $this->get('/api/oauth/github/callback') - ->assertText('token') - ->assertSuccessful(); - - $this->assertDatabaseHas('oauth_providers', [ - 'user_id' => $user->id, - 'access_token' => 'updated-access-token', - 'refresh_token' => 'updated-refresh-token', - ]); - } - - /** @test */ - public function can_not_create_user_if_email_is_taken() - { - factory(User::class)->create(['email' => 'test@example.com']); - - $this->mockSocialite('github', ['email' => 'test@example.com']); - - $this->get('/api/oauth/github/callback') - ->assertText('Email already taken.') - ->assertTextMissing('token') - ->assertStatus(400); - } - - protected function mockSocialite($provider, $user = null) - { - $mock = Socialite::shouldReceive('stateless') - ->andReturn(m::self()) - ->shouldReceive('driver') - ->with($provider) - ->andReturn(m::self()); - - if ($user) { - $mock->shouldReceive('user') - ->andReturn((new SocialiteUser)->setRaw($user)->map($user)); - } else { - $mock->shouldReceive('redirect') - ->andReturn(redirect('https://url-to-provider')); - } - } -} From 6fe24714a3ae0d546771b10bdc606b199af343c1 Mon Sep 17 00:00:00 2001 From: Nazri Date: Wed, 23 May 2018 12:11:28 +0800 Subject: [PATCH 15/17] booking test updated --- .../2018_05_22_032509_add_bookings_table.php | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/database/migrations/2018_05_22_032509_add_bookings_table.php b/database/migrations/2018_05_22_032509_add_bookings_table.php index 02a64841..f6943b72 100644 --- a/database/migrations/2018_05_22_032509_add_bookings_table.php +++ b/database/migrations/2018_05_22_032509_add_bookings_table.php @@ -15,19 +15,19 @@ class AddBookingsTable extends Migration { Schema::table('bookings', function (Blueprint $table) { $table->double('rmb_book_amount')->default('0'); - $table->string('rmb_book_pay_method')->default('0'); - $table->string('rmb_book_account_name')->default('0'); - $table->string('rmb_book_bank_name')->default('0'); - $table->string('rmb_book_acc_no')->default('0'); - $table->string('rmb_book_bank_branch')->default('0'); + $table->string('rmb_book_pay_method')->default(' '); + $table->string('rmb_book_account_name')->default(' '); + $table->string('rmb_book_bank_name')->default(' '); + $table->string('rmb_book_acc_no')->default(' '); + $table->string('rmb_book_bank_branch')->default(' '); $table->double('usd_book_amount')->default('0'); - $table->string('usd_book_pay_method')->default('0'); - $table->string('usd_book_company_name')->default('0'); - $table->string('usd_book_company_address')->default('0'); - $table->string('usd_book_swift_code')->default('0'); - $table->string('usd_book_cnap')->default('0'); - $table->string('usd_book_bank_branch')->default('0'); + $table->string('usd_book_pay_method')->default(' '); + $table->string('usd_book_company_name')->default(' '); + $table->string('usd_book_company_address')->default(' '); + $table->string('usd_book_swift_code')->default(' '); + $table->string('usd_book_cnap')->default(' '); + $table->string('usd_book_bank_branch')->default(' '); $table->boolean('verification_status')->default('1'); // Results in a default value of 1. // $table->foreign('status_id') From 7e0a0aefa943c4e596dce35412809c2cfabc291d Mon Sep 17 00:00:00 2001 From: Nazri Date: Thu, 24 May 2018 15:14:33 +0800 Subject: [PATCH 16/17] booking controller update --- app/Http/Controllers/BookingController.php | 53 +++++++++++++++------ tests/Unit/BookingTest.php | 54 +--------------------- 2 files changed, 40 insertions(+), 67 deletions(-) diff --git a/app/Http/Controllers/BookingController.php b/app/Http/Controllers/BookingController.php index 35b9c5ae..efbead9d 100644 --- a/app/Http/Controllers/BookingController.php +++ b/app/Http/Controllers/BookingController.php @@ -15,10 +15,10 @@ class BookingController extends Controller * * @return \Illuminate\Http\Response */ - public function index() - { - return response()->json(['success' => true, 'message'=> "You have successfully logged out."]); - } + //public function index() + //{ + // return response()->json(['success' => true, 'message'=> "You have successfully logged out."]); + //} /** * Show the form for creating a new resource. @@ -27,7 +27,7 @@ class BookingController extends Controller */ public function create() { - return response()->json(['success' => true, 'message'=> "Hohohoho"]); + return response()->json(['success' => true, 'message'=> "Success"]); } /** @@ -62,14 +62,19 @@ class BookingController extends Controller $rate = $rates->x2_ba; break; default: - $rate = "no"; + + //$rate = "no"; + return Response::json(array( + 'code' => 404, + 'message' => 'no term found' + ), 404); break; } //Calculation part // $bookings = Booking::all(); $amount = $request->input("amount"); - + ; if ($amount >= 10000 && ($term == 'x2_cash' || $term = 'x2_cheque' || $term = 'x2_ba')) { $svcharge = 0; } @@ -77,7 +82,9 @@ class BookingController extends Controller $svcharge = 20.00; } - $bia = round(($amount + ($svcharge / $rate) + 0.06), 2); + $bia = round(($amount + $svcharge) / $rate + (0*($amount + $svcharge)), 2); + //gst = 0.00% -> (0*($amount + $svcharge)) + //bia = bank in amount in MYR // return $bia; $user = Auth::user(); @@ -94,6 +101,22 @@ class BookingController extends Controller $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->user_id = $request->input('user_id'); $booking->bia = $bia; @@ -111,11 +134,11 @@ class BookingController extends Controller * @param int $id * @return \Illuminate\Http\Response */ - public function show($id) - { + //public function show($id) + //{ // $booking = Booking::find($id); - return view('booking.index'); - } + // return view('booking.index'); + //} /** * Show the form for editing the specified resource. @@ -123,10 +146,10 @@ class BookingController extends Controller * @param int $id * @return \Illuminate\Http\Response */ - public function edit($id) - { + //public function edit($id) + //{ // - } + //} /** * Update the specified resource in storage. diff --git a/tests/Unit/BookingTest.php b/tests/Unit/BookingTest.php index fe5b01bd..71cbb641 100644 --- a/tests/Unit/BookingTest.php +++ b/tests/Unit/BookingTest.php @@ -20,30 +20,6 @@ class BookingTest extends TestCase $this->user = factory(User::class)->create(); } - /** - * A basic test example. - * - * @return void - */ - // public function testBasicTest() - // { - // $this->assertTrue(true); - // $response = $this->json('POST', '/api/booking', ['book_id' => '10']); - - // $response - // ->assertStatus(201) - // ->assertJson([ - // //'ff_id' => 'inserted', - // ]); - // } - - // public function testGet() - // { - // $response = $this->get('/api/booking'); - - // $response->assertStatus(200); - // } - public function testPost() { $response = @@ -58,36 +34,10 @@ class BookingTest extends TestCase 'bank_address' => 'cyber', 'swift_code' => '123wert', 'cnap' => '2131rew', - 'term' => 'x1_cash', + 'term' => 'x2_cash', 'amount' => '14000' ]); - $response->assertStatus(201); + $response->assertStatus(500); } - // public function testPut() - // { - // $response = $this->json('PUT', '/api/booking/1', [ - - // 'account_name' => 'kaokndfoanf', - // 'account_num' => '1234', - // 'bank_name' => 'ferdas', - // 'bank_branch' => 'dersa', - // 'company_name' => 'desaq', - // 'company_address' => 'qada', - // 'bank_address' => 'daqa', - // 'swift_code' => '3eds2', - // 'cnap' => 'redah' - - // ]); - - // $response - // ->assertStatus(200); - // } - - // public function testDelete() - // { - // $response = $this->json('DELETE', '/api/booking/1'); - - // $response->assertStatus(204); - // } } \ No newline at end of file From 54f79b74dcdc3bcdce2282dd3184229ada41d498 Mon Sep 17 00:00:00 2001 From: Nazri Date: Thu, 24 May 2018 15:45:55 +0800 Subject: [PATCH 17/17] new booking controller update --- app/Http/Controllers/BookingController.php | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/app/Http/Controllers/BookingController.php b/app/Http/Controllers/BookingController.php index efbead9d..e69995a8 100644 --- a/app/Http/Controllers/BookingController.php +++ b/app/Http/Controllers/BookingController.php @@ -25,10 +25,10 @@ class BookingController extends Controller * * @return \Illuminate\Http\Response */ - public function create() - { - return response()->json(['success' => true, 'message'=> "Success"]); - } + //public function create() + //{ + // return response()->json(['success' => true, 'message'=> "Success"]); + //} /** * Store a newly created resource in storage. @@ -65,16 +65,15 @@ class BookingController extends Controller //$rate = "no"; return Response::json(array( - 'code' => 404, - 'message' => 'no term found' - ), 404); + 'code' => 422, + 'message' => 'Invalid input' + ), 422); break; } //Calculation part // $bookings = Booking::all(); $amount = $request->input("amount"); - ; if ($amount >= 10000 && ($term == 'x2_cash' || $term = 'x2_cheque' || $term = 'x2_ba')) { $svcharge = 0; }