diff --git a/app/Http/Controllers/Mobile/UserController.php b/app/Http/Controllers/Mobile/UserController.php index e5766a7c..ab626ca3 100644 --- a/app/Http/Controllers/Mobile/UserController.php +++ b/app/Http/Controllers/Mobile/UserController.php @@ -3,6 +3,7 @@ namespace App\Http\Controllers\Mobile; use App\Http\Controllers\Controller; +use App\Models\TacCode; use Illuminate\Support\Facades\Validator; use Illuminate\Http\Request; use App\Models\User; @@ -10,6 +11,7 @@ use DB; use Illuminate\Support\Facades\Hash; use Illuminate\Support\Facades\Auth; use Carbon\Carbon; +use Illuminate\Support\Facades\Http; class UserController extends Controller { @@ -142,4 +144,39 @@ class UserController extends Controller 'message' => 'Kata laluan berjaya diubah' ]); } + + public function requestTac(Request $request) + { + + $current = Carbon::now(); + + $date = $current->toDateTimeString(); + $current_date = strtotime($date); + $future_date = $current_date + (60 * 5); + $expired_date_formated = date("Y-m-d H:i:s", $future_date); + + $tac_code = rand(100000, 999999); + + Http::get('http://gateway.onewaysms.com.my:10001/api.aspx', [ + 'apiusername' => 'APIUK330HDAFO', + 'apipassword' => 'APIUK330HDAFOUK330', + 'senderid' => 'INFO', + 'mobileno' => $request->phone_number, + 'message' => '[ArrahnBid]: '. $tac_code .' is your TAC code. The code is valid for 5 minutes.', + 'languagetype' => 1 + ]); + + $tac_code_model = new TacCode(); + $tac_code_model->tac_code = $tac_code; + $tac_code_model->phone_number = $request->phone_number; + $tac_code_model->case_code = 1; + $tac_code_model->case_description = 'Verify Phone Number'; + $tac_code_model->expired_at = $expired_date_formated; + $tac_code_model->save(); + + return response()->json([ + 'success' => true, + 'message' => 'Tac Sent!' + ]); + } } diff --git a/database/migrations/2023_06_08_081920_create_tac_codes_table.php b/database/migrations/2023_06_08_081920_create_tac_codes_table.php new file mode 100644 index 00000000..b4358d94 --- /dev/null +++ b/database/migrations/2023_06_08_081920_create_tac_codes_table.php @@ -0,0 +1,37 @@ +id(); + $table->integer('tac_code'); + $table->string('phone_number'); + $table->integer('case_code'); + $table->string('case_description'); // reason for request tac code + $table->integer('status')->default(0); + $table->timestamp('expired_at'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('tac_codes'); + } +} diff --git a/routes/api.php b/routes/api.php index 70fe5193..8a732a91 100644 --- a/routes/api.php +++ b/routes/api.php @@ -50,6 +50,8 @@ Route::group(['middleware' => ['auth:sanctum']], function () { Route::get('/user/profile', [UserController::class, 'getProfileUser']); Route::put('/userUpdate/profile', [UserController::class, 'updateProfileUser']); + Route::get('/requestTac', [UserController::class, 'requestTac']); + //============HOME=========================== //today's auction Route::get('/listcawlelongtoday', [LelongMobileController::class, 'listCawLelongToday']);