This commit is contained in:
2025-09-08 11:55:05 +05:00
parent 9c236aa8a8
commit ea9b028c23
3 changed files with 77 additions and 36 deletions

View File

@@ -73,20 +73,20 @@ class SberPaymentOrderFieldsForDetail
]),
new Panel(__('Payment'), [
Text::make(__('Payment sender data'), function () use ($resource) {
if (is_array($resource->sender_datas)) {
$data = $resource->sender_datas[0];
return sprintf('%s %s', $data['passport_serie'], $data['full_name']);
}
}),
return sprintf(
'<strong>%s-%s %s</strong>',
$resource->sender_passport_serie,
$resource->sender_passport_number,
$resource->sender_full_name
);
})->asHtml(),
Text::make(__('Töleg ugradyjynyň goýum hasaby'), function () use ($resource) {
if (is_array($resource->sender_datas)) {
$data = $resource->sender_datas[0];
return number_format($data['deposit_account'], 0, '', '');
}
}),
return sprintf(
'<strong>%s</strong>',
number_format($resource->sender_deposit_account, 0, '', '')
);
})->asHtml(),
SimpleRepeatable::make(__('Payee information'), 'payment_reciever', [
Select::make(__('Passport serie'), 'passport_serie')

View File

@@ -253,31 +253,38 @@ class NovaSberPaymentOrder extends Resource
->hideFromIndex(),
]),
new Panel(__('Payment'), [
SimpleRepeatable::make(__('Payment sender data'), 'sender_datas', [
Select::make(__('Passport serie'), 'passport_serie')
->displayUsingLabels()
->searchable()
->options(PassportRepo::values())
->rules('required')
->sortable(),
NovaInputmask::make(__('Passport number'), 'passport_number')
->mask('999999')
->rules('required', 'max:255'),
Text::make(
name: sprintf('%s %s %s', __('Name'), __('Surname'), __('Patronic name')),
attribute: 'full_name'
)
->rules('required', 'max:255'),
Text::make(
name: __('Goýum hasaby'),
attribute: 'deposit_account'
),
])->minRows(1)->rules('required'),
new Panel(__('Payment sender data'), [
Select::make(__('Passport serie'), 'sender_passport_serie')
->displayUsingLabels()
->searchable()
->options(PassportRepo::values())
->rules('required')
->fullWidth()
->sortable(),
NovaInputmask::make(__('Passport number'), 'sender_passport_number')
->mask('999999')
->fullWidth()
->rules('required', 'max:255'),
Text::make(
name: sprintf('%s %s %s', __('Name'), __('Surname'), __('Patronic name')),
attribute: 'sender_full_name'
)
->fullWidth()
->rules('required', 'max:255'),
Text::make(
name: __('Goýum hasaby'),
attribute: 'sender_deposit_account'
)->fullWidth()
->rules('required', 'string', 'max:255')
->fillUsing(function ($request, $model, $attribute) {
$model->sender_deposit_account = strval($request->sender_deposit_account);
}),
]),
new Panel(__('Payee information'), [
SimpleRepeatable::make(__('Payee information'), 'payment_reciever', [
Select::make(__('Passport serie'), 'passport_serie')
->displayUsingLabels()

View File

@@ -0,0 +1,34 @@
<?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::table('sber_payment_orders', function (Blueprint $table) {
$table->string('sender_full_name')->nullable();
$table->string('sender_passport_serie')->nullable();
$table->string('sender_passport_number')->nullable();
$table->string('sender_deposit_account')->nullable();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::table('sber_payment_orders', function (Blueprint $table) {
$table->dropColumn('sender_full_name');
$table->dropColumn('sender_passport_serie');
$table->dropColumn('sender_passport_number');
$table->dropColumn('sender_deposit_account');
});
}
};