From 1d43711c5a554f69c9ee50fef5763bd0937bcc9d Mon Sep 17 00:00:00 2001 From: Nurmuhammet Allanov Date: Mon, 14 Oct 2024 08:16:06 +0500 Subject: [PATCH] Add loan card --- .../FetchCardHistoryController.php | 9 +++-- .../Requests/LoanOrderStoreRequest.php | 28 +++++++++++++++ app/Nova/Resources/Branch/Branch.php | 2 +- .../Resources/Order/Loan/LoanOrderMobile.php | 26 +++++++++++++- .../Loan/LoanOrderMobileFieldsForDetail.php | 1 - ...loan_card_details_to_loan_orders_table.php | 34 +++++++++++++++++++ lang/tk.json | 5 +-- 7 files changed, 95 insertions(+), 10 deletions(-) create mode 100644 database/migrations/2024_10_14_075514_add_loan_card_details_to_loan_orders_table.php diff --git a/app/Http/Controllers/FetchCardHistoryController.php b/app/Http/Controllers/FetchCardHistoryController.php index 5f7da11..0802f2f 100644 --- a/app/Http/Controllers/FetchCardHistoryController.php +++ b/app/Http/Controllers/FetchCardHistoryController.php @@ -3,7 +3,6 @@ namespace App\Http\Controllers; use Illuminate\Http\Request; -use Illuminate\Support\Str; class FetchCardHistoryController extends Controller { @@ -34,10 +33,10 @@ class FetchCardHistoryController extends Controller "cardMaskNumber": "%s", "expDate": "%s" }', - $request->passport_serie, - $request->passport_id, - $request->card_number, - $request->card_expiry_date, + $request->passport_serie, + $request->passport_id, + $request->card_number, + $request->card_expiry_date, ), CURLOPT_HTTPHEADER => [ 'Accept: application/json', diff --git a/app/Modules/LoanOrder/Controllers/Requests/LoanOrderStoreRequest.php b/app/Modules/LoanOrder/Controllers/Requests/LoanOrderStoreRequest.php index 322e64c..cabc215 100644 --- a/app/Modules/LoanOrder/Controllers/Requests/LoanOrderStoreRequest.php +++ b/app/Modules/LoanOrder/Controllers/Requests/LoanOrderStoreRequest.php @@ -182,6 +182,34 @@ class LoanOrderStoreRequest extends FormRequest */ 'card_year' => ['required'], + /** + * Card number + * + * @example 4434345434423442 + */ + 'loan_card_number' => ['required', 'digits:16'], + + /** + * Name on card + * + * @example 'Mahmyt Allaberdiyev' + */ + 'loan_card_name' => ['required', 'string', 'max:255'], + + /** + * Card expiration month + * + * @example 06 + */ + 'loan_card_month' => ['required'], + + /** + * Card expiration year + * + * @example 2040 + */ + 'loan_card_year' => ['required'], + /** * Region (https://online.tbbank.gov.tm/api/base-app-enums) */ diff --git a/app/Nova/Resources/Branch/Branch.php b/app/Nova/Resources/Branch/Branch.php index 882286c..db277ba 100644 --- a/app/Nova/Resources/Branch/Branch.php +++ b/app/Nova/Resources/Branch/Branch.php @@ -112,7 +112,7 @@ class Branch extends Resource Text::make(__('Billing password (Visa/Master)'), 'billing_visa_master_password') ->rules('nullable', 'string', 'max:255') ->hideFromIndex(), - ]) + ]), ]; } diff --git a/app/Nova/Resources/Order/Loan/LoanOrderMobile.php b/app/Nova/Resources/Order/Loan/LoanOrderMobile.php index 8820c87..94f5592 100644 --- a/app/Nova/Resources/Order/Loan/LoanOrderMobile.php +++ b/app/Nova/Resources/Order/Loan/LoanOrderMobile.php @@ -254,7 +254,7 @@ class LoanOrderMobile extends Resource ->canSeeWhen('systemUser', $this), ]), - new Panel(__('Card'), [ + new Panel(sprintf('%s (%s)', __('Card'), __('Salary')), [ Number::make(__('Card number'), 'card_number') ->size('w-1/4') ->rules('required', 'digits:16'), @@ -278,6 +278,30 @@ class LoanOrderMobile extends Resource ->rules('required'), ]), + new Panel(sprintf('%s (%s)', __('Loan Card'), __('Eger bar bolsa')), [ + Number::make(__('Card number'), 'loan_card_number') + ->size('w-1/4') + ->rules('nullable', 'digits:16'), + + Text::make(__('Name on card'), 'loan_card_name') + ->size('w-1/4') + ->rules('nullable'), + + Select::make(__('Card').' '.__('Expiration month'), 'loan_card_month') + ->displayUsingLabels() + ->searchable() + ->options(DateHelperRepository::monthsAsNumber()) + ->size('w-1/4') + ->rules('nullable'), + + Select::make(__('Card').' '.__('Expiration year'), 'loan_card_year') + ->displayUsingLabels() + ->searchable() + ->options(DateHelperRepository::yearsUntil()) + ->size('w-1/4') + ->rules('nullable'), + ]), + new Panel(__('Passport'), [ Select::make(__('Passport serie'), 'passport_serie') ->displayUsingLabels() diff --git a/app/Nova/Resources/Order/Loan/LoanOrderMobileFieldsForDetail.php b/app/Nova/Resources/Order/Loan/LoanOrderMobileFieldsForDetail.php index 74c9323..bf70bb7 100644 --- a/app/Nova/Resources/Order/Loan/LoanOrderMobileFieldsForDetail.php +++ b/app/Nova/Resources/Order/Loan/LoanOrderMobileFieldsForDetail.php @@ -2,7 +2,6 @@ namespace App\Nova\Resources\Order\Loan; -use App\Modules\DateHelper\Repositories\DateHelperRepository; use App\Nova\Forms\NovaForm; use App\Nova\Resources\Branch\Branch; use App\Nova\Resources\System\Location\Province; diff --git a/database/migrations/2024_10_14_075514_add_loan_card_details_to_loan_orders_table.php b/database/migrations/2024_10_14_075514_add_loan_card_details_to_loan_orders_table.php new file mode 100644 index 0000000..f7c2c2c --- /dev/null +++ b/database/migrations/2024_10_14_075514_add_loan_card_details_to_loan_orders_table.php @@ -0,0 +1,34 @@ +string('loan_card_number')->nullable(); + $table->string('loan_card_name')->nullable(); + $table->string('loan_card_month')->nullable(); + $table->string('loan_card_year')->nullable(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::table('loan_orders', function (Blueprint $table) { + $table->dropColumn('loan_card_number'); + $table->dropColumn('loan_card_name'); + $table->dropColumn('loan_card_month'); + $table->dropColumn('loan_card_year'); + }); + } +}; diff --git a/lang/tk.json b/lang/tk.json index c627124..236baf1 100644 --- a/lang/tk.json +++ b/lang/tk.json @@ -168,7 +168,7 @@ "Retry With": "Gaýtadan synanyşyň", "Role": "Rol", "Roles": "Rollar", - "Salary": "Aýlygyň möçberi (TMT)", + "Salary": "Zähmet haky", "School": "Orta bilim", "School drop out": "Gutarylmadyk orta bilim", "See Other": "Başgalaryna serediň", @@ -317,5 +317,6 @@ "Unknown": "Näbelli", "Sber payments": "Sber tölegler", "Sber payment": "Sber töleg", - "Select payment method": "Töleg görnüşini saýlaň" + "Select payment method": "Töleg görnüşini saýlaň", + "Loan Card": "Karz karty" }