loan remaining added

This commit is contained in:
2024-11-26 01:37:59 +05:00
parent 5d5e269285
commit 8b87f58a0c
9 changed files with 224 additions and 5 deletions

View File

@@ -2,8 +2,6 @@
namespace App\Http\Controllers; namespace App\Http\Controllers;
use Illuminate\Http\Request;
class AlertController extends Controller class AlertController extends Controller
{ {
/** /**
@@ -16,7 +14,7 @@ class AlertController extends Controller
$alerts = $alerstQuery->get(); $alerts = $alerstQuery->get();
$alerstQuery->update([ $alerstQuery->update([
'seen_at' => now() 'seen_at' => now(),
]); ]);
return response()->json($this->format($alerts)); return response()->json($this->format($alerts));

View File

@@ -14,7 +14,7 @@ class Alert extends Model
* Casts * Casts
*/ */
protected $casts = [ protected $casts = [
'seen_at' => 'datetime' 'seen_at' => 'datetime',
]; ];
/** /**

View File

@@ -197,7 +197,6 @@ class LoanOrder extends Model
static::creating(LoanOrderRepo::creating()); static::creating(LoanOrderRepo::creating());
static::created(LoanOrderRepo::created()); static::created(LoanOrderRepo::created());
static::updated(function (LoanOrder $model) { static::updated(function (LoanOrder $model) {
info($model->notes);
if ($model->notes && $model->wasChanged('notes')) { if ($model->notes && $model->wasChanged('notes')) {
auth()->user()->alerts()->create([ auth()->user()->alerts()->create([
'name' => 'Duýdyryş', 'name' => 'Duýdyryş',

View File

@@ -0,0 +1,49 @@
<?php
namespace App\Modules\LoanRemainingOrder\Controllers;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
class LoanRemainingOrderController extends Controller
{
/**
* Display a listing of the resource.
*/
public function index(Request $request): void
{
//
}
/**
* Store a newly created resource in storage.
*/
public function store(Request $request): void
{
//
}
/**
* Display the specified resource.
*/
public function show(Request $request): void
{
//
}
/**
* Update the specified resource in storage.
*/
public function update(Request $request): void
{
//
}
/**
* Remove the specified resource from storage.
*/
public function destroy(Request $request): void
{
//
}
}

View File

@@ -0,0 +1,30 @@
<?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('loan_remaining_orders', function (Blueprint $table) {
$table->id();
$table->string('passport_serie')->index();
$table->string('passport_id')->index();
$table->string('account_number')->index();
$table->timestamps();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('loan_remaining_orders');
}
};

View File

@@ -0,0 +1,10 @@
<?php
namespace App\Modules\LoanRemainingOrder\Models;
use Illuminate\Database\Eloquent\Model;
class LoanRemainingOrder extends Model
{
protected $table = 'loan_remaining_orders';
}

View File

@@ -0,0 +1,5 @@
<?php
namespace App\Modules\LoanRemainingOrder\Repositories;
class LoanRemainingOrderRepository {}

View File

@@ -0,0 +1,126 @@
<?php
namespace App\Nova\Resources\Order\Loan\Remaining;
use App\Nova\Resource;
use App\Repos\System\Settings\Legal\PassportRepo;
use Illuminate\Http\Request;
use Laravel\Nova\Fields\ID;
use Laravel\Nova\Fields\Number;
use Laravel\Nova\Fields\Select;
use Laravel\Nova\Fields\Text;
use Laravel\Nova\Http\Requests\NovaRequest;
use Laravel\Nova\Panel;
use Nurmuhammet\NovaCustomHtml\NovaCustomHtml;
class NovaLoanRemainingOrder extends Resource
{
/**
* The model the resource corresponds to.
*
* @var class-string<\App\Modules\LoanRemainingOrder\Models\LoanRemainingOrder>
*/
public static $model = \App\Modules\LoanRemainingOrder\Models\LoanRemainingOrder::class;
/**
* The single value that should be used to represent the resource when being displayed.
*
* @var string
*/
public static $title = 'account_number';
/**
* The columns that should be searched.
*
* @var array
*/
public static $search = [
'account_number'
];
/**
* Get the displayable label of the resource.
*/
public static function label(): string
{
return __('Karzyň galyndysy');
}
/**
* Get the fields displayed by the resource.
*
* @param \Laravel\Nova\Http\Requests\NovaRequest $request
* @return array
*/
public function fields(NovaRequest $request)
{
return [
ID::make()->sortable(),
Select::make(__('Passport serie'), 'passport_serie')
->displayUsingLabels()
->searchable()
->options(PassportRepo::values())
->rules('required')
->sortable(),
Number::make(__('Passport id'), 'passport_id')
->rules('required', 'numeric', 'digits:6'),
Text::make(__('Karz hasaby'), 'account_number')
->rules('required'),
new Panel(__('Karz taryhy'), [
NovaCustomHtml::make(__('Karz taryhy'), 'loan_history')
->canSeeWhen('systemUser', $this)
->html(view('orders.loan.mobile.loan-history', [
'resource' => $this,
])->render()),
]),
];
}
/**
* Get the cards available for the request.
*
* @param \Laravel\Nova\Http\Requests\NovaRequest $request
* @return array
*/
public function cards(NovaRequest $request)
{
return [];
}
/**
* Get the filters available for the resource.
*
* @param \Laravel\Nova\Http\Requests\NovaRequest $request
* @return array
*/
public function filters(NovaRequest $request)
{
return [];
}
/**
* Get the lenses available for the resource.
*
* @param \Laravel\Nova\Http\Requests\NovaRequest $request
* @return array
*/
public function lenses(NovaRequest $request)
{
return [];
}
/**
* Get the actions available for the resource.
*
* @param \Laravel\Nova\Http\Requests\NovaRequest $request
* @return array
*/
public function actions(NovaRequest $request)
{
return [];
}
}

View File

@@ -18,6 +18,7 @@ use App\Nova\Resources\Order\Loan\LoanOrder;
use App\Nova\Resources\Order\Loan\LoanOrderMobile; use App\Nova\Resources\Order\Loan\LoanOrderMobile;
use App\Nova\Resources\Order\Loan\LoanPaidOffLetterOrder; use App\Nova\Resources\Order\Loan\LoanPaidOffLetterOrder;
use App\Nova\Resources\Order\Loan\LoanType; use App\Nova\Resources\Order\Loan\LoanType;
use App\Nova\Resources\Order\Loan\Remaining\NovaLoanRemainingOrder;
use App\Nova\Resources\Order\Loan\RequiredDocs\LoanOrderRequiredDocs; use App\Nova\Resources\Order\Loan\RequiredDocs\LoanOrderRequiredDocs;
use App\Nova\Resources\Payment\OnlinePaymentHistoryResource; use App\Nova\Resources\Payment\OnlinePaymentHistoryResource;
use App\Nova\Resources\System\Locale\LocaleManagerResource; use App\Nova\Resources\System\Locale\LocaleManagerResource;
@@ -49,6 +50,7 @@ class NovaMenuRepo
MenuItem::resource(LoanOrder::class), MenuItem::resource(LoanOrder::class),
MenuItem::resource(LoanOrderMobile::class) MenuItem::resource(LoanOrderMobile::class)
->name(__('Loan order').' (Mobile)'), ->name(__('Loan order').' (Mobile)'),
MenuItem::resource(NovaLoanRemainingOrder::class),
MenuItem::resource(LoanPaidOffLetterOrder::class), MenuItem::resource(LoanPaidOffLetterOrder::class),
])->collapsedByDefault(), ])->collapsedByDefault(),