Compare commits
8 Commits
8ce7bd981a
...
1746ba4a60
| Author | SHA1 | Date | |
|---|---|---|---|
| 1746ba4a60 | |||
| cfcfdefc36 | |||
| 647979fdef | |||
| aaf8d067f9 | |||
| 6eb3628fd8 | |||
| f257559f42 | |||
| 6540668f9f | |||
| 251c19319a |
@@ -116,7 +116,7 @@ function sendSMS(string|int $phone, string|int $message)
|
|||||||
*/
|
*/
|
||||||
function sendSMSVerification(string|int $phone_number): ?Verification
|
function sendSMSVerification(string|int $phone_number): ?Verification
|
||||||
{
|
{
|
||||||
$phone_code = rand(10000, 99999);
|
$phone_code = rand(100000, 999999);
|
||||||
$verification = Verification::where(['username' => $phone_number])->first();
|
$verification = Verification::where(['username' => $phone_number])->first();
|
||||||
$verification ? $verification->update(['code' => $phone_code]) : Verification::create(['username' => $phone_number, 'code' => $phone_code]);
|
$verification ? $verification->update(['code' => $phone_code]) : Verification::create(['username' => $phone_number, 'code' => $phone_code]);
|
||||||
|
|
||||||
|
|||||||
@@ -31,6 +31,23 @@ class AlertController extends Controller
|
|||||||
return response()->json($this->format($alerts));
|
return response()->json($this->format($alerts));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* All alerts
|
||||||
|
*/
|
||||||
|
public function all(): JsonResponse
|
||||||
|
{
|
||||||
|
/** @var \App\Models\User */
|
||||||
|
$user = auth()->user();
|
||||||
|
|
||||||
|
/** @var \Illuminate\Database\Eloquent\Builder<Alert> */
|
||||||
|
$alerstQuery = $user->alerts();
|
||||||
|
|
||||||
|
/** @var Collection<array-key, Alert> */
|
||||||
|
$alerts = $alerstQuery->get();
|
||||||
|
|
||||||
|
return response()->json($this->format($alerts));
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Format
|
* Format
|
||||||
*
|
*
|
||||||
|
|||||||
44
app/Http/Controllers/Api/ContactUsController.php
Normal file
44
app/Http/Controllers/Api/ContactUsController.php
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Http\Controllers\Api;
|
||||||
|
|
||||||
|
use App\Http\Controllers\Controller;
|
||||||
|
use App\Models\CMS\ContactUs;
|
||||||
|
use Illuminate\Http\Request;
|
||||||
|
use Illuminate\Validation\Rule;
|
||||||
|
|
||||||
|
class ContactUsController extends Controller
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Store contact us message
|
||||||
|
*/
|
||||||
|
public function store(Request $request)
|
||||||
|
{
|
||||||
|
$data = $request->validate([
|
||||||
|
/**
|
||||||
|
* Message Title
|
||||||
|
*
|
||||||
|
* @example Salam
|
||||||
|
*/
|
||||||
|
'title' => ['required', 'string', 'max:255'],
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Message content
|
||||||
|
*
|
||||||
|
* @example Bet app
|
||||||
|
*/
|
||||||
|
'message' => ['required', 'string', 'max:255'],
|
||||||
|
]);
|
||||||
|
|
||||||
|
ContactUs::forceCreate(
|
||||||
|
...$data,
|
||||||
|
...[
|
||||||
|
'user_id' => auth()->id(),
|
||||||
|
],
|
||||||
|
);
|
||||||
|
|
||||||
|
return response()->json([
|
||||||
|
'message' => __('Successfully created'),
|
||||||
|
], 201);
|
||||||
|
}
|
||||||
|
}
|
||||||
19
app/Models/CMS/ContactUs.php
Normal file
19
app/Models/CMS/ContactUs.php
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Models\CMS;
|
||||||
|
|
||||||
|
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||||
|
use Illuminate\Database\Eloquent\Model;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @property int $id
|
||||||
|
* @property int $user_id
|
||||||
|
* @property string $title
|
||||||
|
* @property string $message
|
||||||
|
* @property \Illuminate\Support\Facades\Date $created_at
|
||||||
|
* @property \Illuminate\Support\Facades\Date $updated_at
|
||||||
|
*/
|
||||||
|
class ContactUs extends Model
|
||||||
|
{
|
||||||
|
use HasFactory;
|
||||||
|
}
|
||||||
@@ -94,4 +94,15 @@ class LoanPaidOffLetterOrder extends Model
|
|||||||
{
|
{
|
||||||
return $this->belongsTo(Branch::class, 'branch_id');
|
return $this->belongsTo(Branch::class, 'branch_id');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* "boot" method for model
|
||||||
|
*/
|
||||||
|
protected static function boot()
|
||||||
|
{
|
||||||
|
parent::boot();
|
||||||
|
|
||||||
|
static::creating(LoanOrderRepo::creating());
|
||||||
|
static::created(LoanOrderRepo::created());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -59,7 +59,15 @@ class ApiAuthController extends Controller
|
|||||||
]);
|
]);
|
||||||
|
|
||||||
return response()->json([
|
return response()->json([
|
||||||
'message' => $user->createToken(bin2hex(random_bytes(20)))->plainTextToken,
|
'success' => true,
|
||||||
|
'token' => $user->createToken(bin2hex(random_bytes(20)))->plainTextToken,
|
||||||
|
'message' => __('successfully verified'),
|
||||||
|
'user' => [
|
||||||
|
'name' => $user->name,
|
||||||
|
'phone' => $user->phone,
|
||||||
|
'passport_serie' => $user->getOption('passport_serie'),
|
||||||
|
'passport_id' => $user->getOption('passport_id'),
|
||||||
|
],
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,13 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Modules\VisaMasterPaymentOrder\Controllers;
|
||||||
|
|
||||||
|
use App\Http\Controllers\Controller;
|
||||||
|
|
||||||
|
class VisaMasterPaymentOrderController extends Controller
|
||||||
|
{
|
||||||
|
public function index()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -118,17 +118,6 @@ class LoanPaidOffLetterOrder extends Resource
|
|||||||
return $query->where('user_id', $request->user()->id);
|
return $query->where('user_id', $request->user()->id);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* After resource created
|
|
||||||
*
|
|
||||||
* @param \Laravel\Nova\Http\Requests\NovaRequest $request
|
|
||||||
* @param \Illuminate\Database\Eloquent\Model $model
|
|
||||||
*/
|
|
||||||
public static function afterCreate(NovaRequest $request, Model $model): void
|
|
||||||
{
|
|
||||||
$model->update(['unique_id' => CardOrderRepo::fillUniqueId($model)]);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the fields for index.
|
* Get the fields for index.
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -0,0 +1,31 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
use Illuminate\Database\Migrations\Migration;
|
||||||
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
|
use Illuminate\Support\Facades\Schema;
|
||||||
|
|
||||||
|
return new class extends Migration
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Run the migrations.
|
||||||
|
*/
|
||||||
|
public function up(): void
|
||||||
|
{
|
||||||
|
Schema::create('contact_us', function (Blueprint $table) {
|
||||||
|
$table->id();
|
||||||
|
$table->string('title');
|
||||||
|
$table->text('message');
|
||||||
|
|
||||||
|
$table->foreignId('user_id')->nullable()->constrained()->nullOnDelete();
|
||||||
|
$table->timestamps();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Reverse the migrations.
|
||||||
|
*/
|
||||||
|
public function down(): void
|
||||||
|
{
|
||||||
|
Schema::dropIfExists('contact_us');
|
||||||
|
}
|
||||||
|
};
|
||||||
@@ -6,6 +6,7 @@ use App\Http\Controllers\Api\CardOrder\CardOrderController;
|
|||||||
use App\Http\Controllers\Api\CardPin\CardPinController;
|
use App\Http\Controllers\Api\CardPin\CardPinController;
|
||||||
use App\Http\Controllers\Api\CardRequisite\CardRequisiteController;
|
use App\Http\Controllers\Api\CardRequisite\CardRequisiteController;
|
||||||
use App\Http\Controllers\Api\CardTransaction\CardTransactionsController;
|
use App\Http\Controllers\Api\CardTransaction\CardTransactionsController;
|
||||||
|
use App\Http\Controllers\Api\ContactUsController;
|
||||||
use App\Http\Controllers\Api\FetchLoanHistoryController;
|
use App\Http\Controllers\Api\FetchLoanHistoryController;
|
||||||
use App\Http\Controllers\Api\LoanOrder\Remaining\LoanOrderRemainingOrderController;
|
use App\Http\Controllers\Api\LoanOrder\Remaining\LoanOrderRemainingOrderController;
|
||||||
use App\Http\Controllers\Api\LoanPaidOffLetterOrderController;
|
use App\Http\Controllers\Api\LoanPaidOffLetterOrderController;
|
||||||
@@ -20,6 +21,7 @@ use App\Modules\Branch\Controllers\BranchController;
|
|||||||
use App\Modules\LoanOrder\Controllers\LoanOrderController;
|
use App\Modules\LoanOrder\Controllers\LoanOrderController;
|
||||||
use App\Modules\LoanRemainingOrder\Controllers\LoanRemainingOrderController;
|
use App\Modules\LoanRemainingOrder\Controllers\LoanRemainingOrderController;
|
||||||
use App\Modules\Province\Controllers\ProvinceController;
|
use App\Modules\Province\Controllers\ProvinceController;
|
||||||
|
use App\Modules\VisaMasterPaymentOrder\Controllers\VisaMasterPaymentOrderController;
|
||||||
use Illuminate\Support\Facades\Route;
|
use Illuminate\Support\Facades\Route;
|
||||||
use Laravel\Nova\Http\Middleware\Authenticate;
|
use Laravel\Nova\Http\Middleware\Authenticate;
|
||||||
use Laravel\Nova\Http\Middleware\Authorize;
|
use Laravel\Nova\Http\Middleware\Authorize;
|
||||||
@@ -63,6 +65,8 @@ Route::get('provinces', [ProvinceController::class, 'index']);
|
|||||||
Route::get('base-app-enums', [BaseAppEnumController::class, 'index']);
|
Route::get('base-app-enums', [BaseAppEnumController::class, 'index']);
|
||||||
|
|
||||||
Route::middleware(['auth:sanctum', 'not_banned'])->group(function () {
|
Route::middleware(['auth:sanctum', 'not_banned'])->group(function () {
|
||||||
|
Route::post('contact-us', [ContactUsController::class, 'store']);
|
||||||
|
|
||||||
// Profile... [tested fully]
|
// Profile... [tested fully]
|
||||||
Route::get('profile', [ProfileController::class, 'index']);
|
Route::get('profile', [ProfileController::class, 'index']);
|
||||||
Route::post('profile', [ProfileController::class, 'store']);
|
Route::post('profile', [ProfileController::class, 'store']);
|
||||||
@@ -94,6 +98,7 @@ Route::middleware(['auth:sanctum', 'not_banned'])->group(function () {
|
|||||||
|
|
||||||
// Alerts... [tested fully]
|
// Alerts... [tested fully]
|
||||||
Route::get('alerts', [AlertController::class, 'index']);
|
Route::get('alerts', [AlertController::class, 'index']);
|
||||||
|
Route::get('alerts-all', [AlertController::class, 'all']);
|
||||||
|
|
||||||
// Card orders... [tested fully]
|
// Card orders... [tested fully]
|
||||||
Route::get('card-order', [CardOrderController::class, 'index']);
|
Route::get('card-order', [CardOrderController::class, 'index']);
|
||||||
@@ -132,4 +137,18 @@ Route::middleware(['auth:sanctum', 'not_banned'])->group(function () {
|
|||||||
Route::post('card-pin-order', [CardPinController::class, 'store']);
|
Route::post('card-pin-order', [CardPinController::class, 'store']);
|
||||||
Route::post('card-pin-order/{order}', [CardPinController::class, 'update']);
|
Route::post('card-pin-order/{order}', [CardPinController::class, 'update']);
|
||||||
Route::delete('card-pin-order/{order}', [CardPinController::class, 'destroy']);
|
Route::delete('card-pin-order/{order}', [CardPinController::class, 'destroy']);
|
||||||
|
|
||||||
|
// Visa/Master order...
|
||||||
|
Route::get('visa-master-order', [VisaMasterPaymentOrderController::class, 'index']);
|
||||||
|
// Route::get('visa-master-order/{order}', [VisaMasterPaymentOrderController::class, 'show']);
|
||||||
|
// Route::post('visa-master-order', [VisaMasterPaymentOrderController::class, 'store']);
|
||||||
|
// Route::post('visa-master-order/{order}', [VisaMasterPaymentOrderController::class, 'update']);
|
||||||
|
// Route::delete('visa-master-order/{order}', [VisaMasterPaymentOrderController::class, 'destroy']);
|
||||||
|
|
||||||
|
// Sber order...
|
||||||
|
// Route::get('sber-order', [SberOrderController::class, 'index']);
|
||||||
|
// Route::get('sber-order/{order}', [SberOrderController::class, 'show']);
|
||||||
|
// Route::post('sber-order', [SberOrderController::class, 'store']);
|
||||||
|
// Route::post('sber-order/{order}', [SberOrderController::class, 'update']);
|
||||||
|
// Route::delete('sber-order/{order}', [SberOrderController::class, 'destroy']);
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user