Skip to content

Commit 69f0016

Browse files
committed
Update project name and description in composer.json; add two-factor authentication to User model; enhance Nova fields with default value settings; implement new helper methods for default selections; add migration for two-factor columns in users table.
1 parent 2cefda5 commit 69f0016

17 files changed

+146
-29
lines changed

Tasks.todo

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
Daftar Auth key
2-
"username": "info@smartbee.az",
3-
"password": "vgvbxXdV64ul1FOXcJ79P35uKyYDM9GNsKDn8BpVrqS2WmWxHa"
4-
"username": "dtri@happyonline.gr",
5-
"password": "ltzgXfPs3l1pPFSimukD4E1tvYFF64GlEP8WrL7qEfymhYFUoD"
2+
"username": "info@smartbee.az",
3+
"password": "vgvbxXdV64ul1FOXcJ79P35uKyYDM9GNsKDn8BpVrqS2WmWxHa"
4+
"username": "dtri@happyonline.gr",
5+
"password": "ltzgXfPs3l1pPFSimukD4E1tvYFF64GlEP8WrL7qEfymhYFUoD"
66
"username": "corentin@aftomatos.com",
77
"password": "xOuUFewnwIrffjnoHwgMZLWSrBH9d8sIFsqjmilOOKbbtvAFlh"
8+
"username": "Therocktavern.grenoble@gmail.com",
9+
"password": "n23SNywoI1Zer8zaU675ncXBSNl4r9UN9fVaMnJbsXCjhvfV8m"
810

911

1012

app/Helpers/Helper.php

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -704,6 +704,14 @@ public static function getUsersByPengelola($role, $tanggal)
704704
return User::cache()->get('all')->whereIn('id', $usersId);
705705
}
706706

707+
public static function setDefaultPengelola($role, $tanggal)
708+
{
709+
$pengelola = self::getUsersByPengelola($role, $tanggal);
710+
711+
return $pengelola->count() == 1 ? $pengelola->first()->id : null;
712+
713+
}
714+
707715
public static function setDefaultPesertaRapat($tujuan, $tanggal)
708716
{
709717
Str::contains(Str::lower($tujuan), ['ketua', 'penanggung', 'penanggungjawab']) ? $role = 'koordinator' : $role = 'anggota';
@@ -1703,6 +1711,13 @@ public static function setOptionTemplate($jenis)
17031711
return self::setOptions(Template::cache()->get('all')->where('jenis', $jenis), 'id', 'nama');
17041712
}
17051713

1714+
public static function setDefaultTemplate($jenis)
1715+
{
1716+
$template = Template::cache()->get('all')->where('jenis', $jenis);
1717+
1718+
return $template->count() == 1 ? $template->first()->id : null;
1719+
}
1720+
17061721
public static function setOptionsRo($dipa_id)
17071722
{
17081723
return KamusAnggaran::cache()

app/Models/User.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,13 @@
66
use Illuminate\Database\Eloquent\Relations\HasMany;
77
use Illuminate\Foundation\Auth\User as Authenticatable;
88
use Illuminate\Notifications\Notifiable;
9+
use Laravel\Fortify\TwoFactorAuthenticatable;
910
use Mostafaznv\LaraCache\CacheEntity;
1011
use Mostafaznv\LaraCache\Traits\LaraCache;
1112

1213
class User extends Authenticatable
1314
{
14-
use LaraCache, Notifiable;
15+
use LaraCache, Notifiable, TwoFactorAuthenticatable;
1516

1617
public static function cacheEntities(): array
1718
{

app/Nova/Actions/Download.php

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,8 @@ public function fields(NovaRequest $request)
8989
->default(fn () => uniqid()),
9090
Select::make('Template')
9191
->rules('required')
92-
->options(Helper::setOptionTemplate($this->jenis)),
92+
->options(Helper::setOptionTemplate($this->jenis))
93+
->default(Helper::setDefaultTemplate($this->jenis)),
9394
];
9495

9596
if ($this->withTanggal) {
@@ -103,7 +104,8 @@ public function fields(NovaRequest $request)
103104
->rules('required')
104105
->searchable()
105106
->dependsOn(['tanggal'], function (Select $field, NovaRequest $request, FormData $form) {
106-
$field->options(Helper::setOptionPengelola($this->role, $form->tanggal));
107+
$field->options(Helper::setOptionPengelola($this->role, $form->tanggal))
108+
->setValue(Helper::setDefaultPengelola($this->role, $form->tanggal));
107109
});
108110
}
109111

app/Nova/Actions/SetStatus.php

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,17 @@ class SetStatus extends Action
1818
use InteractsWithQueue, Queueable;
1919

2020
protected $status;
21+
2122
protected bool $withTanggal = false;
23+
2224
protected $statusField;
25+
2326
protected bool $withUser = false;
27+
2428
protected $column;
29+
2530
protected $userColumn;
31+
2632
protected $parent_id;
2733

2834
public function setName($name)
@@ -103,7 +109,8 @@ public function fields(NovaRequest $request)
103109
->searchable()
104110
->rules('required')
105111
->dependsOn(['tanggal'], function (Select $field, NovaRequest $request, FormData $form) {
106-
$field->options(Helper::setOptionPengelola('kepala', $form->tanggal));
112+
$field->options(Helper::setOptionPengelola('kepala', $form->tanggal))
113+
->setValue(Helper::setDefaultPengelola('kepala', $form->tanggal));
107114
});
108115
}
109116

app/Nova/BastMitra.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,8 @@ public function fields(NovaRequest $request)
110110
->onlyOnForms()
111111
->displayUsing(fn ($id) => Helper::getPropertyFromCollection(Helper::getPegawaiByUserId($id), 'name'))
112112
->dependsOn('tanggal_bast', function (Select $field, NovaRequest $request, FormData $formData) {
113-
$field->options(Helper::setOptionPengelola('ppk', Helper::createDateFromString($formData->tanggal_bast)));
113+
$field->options(Helper::setOptionPengelola('ppk', Helper::createDateFromString($formData->tanggal_bast)))
114+
->setValue(Helper::setDefaultPengelola('ppk', Helper::createDateFromString($formData->tanggal_bast)));
114115
}),
115116
BelongsTo::make('Pejabat Pembuat Komitmen', 'ppk', 'App\Nova\User')
116117
->sortable()

app/Nova/DaftarPesertaPerjalanan.php

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,8 @@ public function fields(NovaRequest $request)
102102
->dependsOn('tanggal_kuitansi', function (Select $field, NovaRequest $request, FormData $formData) {
103103
$field
104104
->rules('required')
105-
->options(Helper::setOptionPengelola('ppk', Helper::createDateFromString($formData->tanggal_kuitansi)));
105+
->options(Helper::setOptionPengelola('ppk', Helper::createDateFromString($formData->tanggal_kuitansi)))
106+
->setValue(Helper::setDefaultPengelola('ppk', Helper::createDateFromString($formData->tanggal_kuitansi)));
106107
}),
107108
Select::make('Bendahara', 'bendahara_user_id')
108109
->searchable()
@@ -111,7 +112,8 @@ public function fields(NovaRequest $request)
111112
->dependsOn('tanggal_kuitansi', function (Select $field, NovaRequest $request, FormData $formData) {
112113
$field
113114
->options(Helper::setOptionPengelola('bendahara', Helper::createDateFromString($formData->tanggal_kuitansi)))
114-
->rules('required');
115+
->rules('required')
116+
->setValue(Helper::setDefaultPengelola('bendahara', Helper::createDateFromString($formData->tanggal_kuitansi)));
115117
}),
116118
]),
117119
];

app/Nova/HonorKegiatan.php

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -231,7 +231,8 @@ public function fields(NovaRequest $request)
231231
if ($formData->generate_sk) {
232232
$field->show()
233233
->rules('required')
234-
->options(Helper::setOptionPengelola('kpa', Helper::createDateFromString($formData->tanggal_sk)));
234+
->options(Helper::setOptionPengelola('kpa', Helper::createDateFromString($formData->tanggal_sk)))
235+
->setValue(Helper::setDefaultPengelola('kpa', Helper::createDateFromString($formData->tanggal_sk)));
235236
}
236237
}),
237238
]),
@@ -287,7 +288,8 @@ public function fields(NovaRequest $request)
287288
if ($formData->generate_st) {
288289
$field->show()
289290
->rules('required')
290-
->options(Helper::setOptionPengelola('kepala', Helper::createDateFromString($formData->tanggal_st)));
291+
->options(Helper::setOptionPengelola('kepala', Helper::createDateFromString($formData->tanggal_st)))
292+
->setValue(Helper::setDefaultPengelola('kepala', Helper::createDateFromString($formData->tanggal_st)));
291293
}
292294
}),
293295
]),
@@ -302,23 +304,26 @@ public function fields(NovaRequest $request)
302304
->hideFromIndex()
303305
->displayUsing(fn ($id) => Helper::getPropertyFromCollection(Helper::getPegawaiByUserId($id), 'name'))
304306
->dependsOn('tanggal_spj', function (Select $field, NovaRequest $request, FormData $formData) {
305-
$field->options(Helper::setOptionPengelola('koordinator', Helper::createDateFromString($formData->tanggal_spj)));
307+
$field->options(Helper::setOptionPengelola('koordinator', Helper::createDateFromString($formData->tanggal_spj)))
308+
->setValue(Helper::setDefaultPengelola('koordinator', Helper::createDateFromString($formData->tanggal_spj)));
306309
}),
307310
Select::make('Pejabat Pembuat Komitmen', 'ppk_user_id')
308311
->rules('required')
309312
->searchable()
310313
->hideFromIndex()
311314
->displayUsing(fn ($id) => Helper::getPropertyFromCollection(Helper::getPegawaiByUserId($id), 'name'))
312315
->dependsOn('tanggal_spj', function (Select $field, NovaRequest $request, FormData $formData) {
313-
$field->options(Helper::setOptionPengelola('ppk', Helper::createDateFromString($formData->tanggal_spj)));
316+
$field->options(Helper::setOptionPengelola('ppk', Helper::createDateFromString($formData->tanggal_spj)))
317+
->setValue(Helper::setDefaultPengelola('ppk', Helper::createDateFromString($formData->tanggal_spj)));
314318
}),
315319
Select::make('Bendahara', 'bendahara_user_id')
316320
->rules('required')
317321
->searchable()
318322
->hideFromIndex()
319323
->displayUsing(fn ($id) => Helper::getPropertyFromCollection(Helper::getPegawaiByUserId($id), 'name'))
320324
->dependsOn('tanggal_spj', function (Select $field, NovaRequest $request, FormData $formData) {
321-
$field->options(Helper::setOptionPengelola('bendahara', Helper::createDateFromString($formData->tanggal_spj)));
325+
$field->options(Helper::setOptionPengelola('bendahara', Helper::createDateFromString($formData->tanggal_spj)))
326+
->setValue(Helper::setDefaultPengelola('bendahara', Helper::createDateFromString($formData->tanggal_spj)));
322327
}),
323328
]),
324329
Tab::group('Daftar Honor', [

app/Nova/KerangkaAcuan.php

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -328,14 +328,16 @@ public function pengelolaFields()
328328
->searchable()
329329
->displayUsing(fn ($id) => Helper::getPropertyFromCollection(Helper::getPegawaiByUserId($id), 'name'))
330330
->dependsOn('tanggal', function (Select $field, NovaRequest $request, FormData $formData) {
331-
$field->options(Helper::setOptionPengelola('koordinator', Helper::createDateFromString($formData->tanggal)));
331+
$field->options(Helper::setOptionPengelola('koordinator', Helper::createDateFromString($formData->tanggal)))
332+
->setValue(Helper::setDefaultPengelola('koordinator', Helper::createDateFromString($formData->tanggal)));
332333
}),
333334
Select::make('Pejabat Pembuat Komitmen', 'ppk_user_id')
334335
->rules('required')
335336
->searchable()
336337
->displayUsing(fn ($id) => Helper::getPropertyFromCollection(Helper::getPegawaiByUserId($id), 'name'))
337338
->dependsOn('tanggal', function (Select $field, NovaRequest $request, FormData $formData) {
338-
$field->options(Helper::setOptionPengelola('ppk', Helper::createDateFromString($formData->tanggal)));
339+
$field->options(Helper::setOptionPengelola('ppk', Helper::createDateFromString($formData->tanggal)))
340+
->setValue(Helper::setDefaultPengelola('ppk', Helper::createDateFromString($formData->tanggal)));
339341
}),
340342

341343
];

app/Nova/KontrakMitra.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,8 @@ public function fields(NovaRequest $request)
136136
->onlyOnForms()
137137
->displayUsing(fn ($id) => Helper::getPropertyFromCollection(Helper::getPegawaiByUserId($id), 'name'))
138138
->dependsOn('tanggal_spk', function (Select $field, NovaRequest $request, FormData $formData) {
139-
$field->options(Helper::setOptionPengelola('ppk', Helper::createDateFromString($formData->tanggal_spk)));
139+
$field->options(Helper::setOptionPengelola('ppk', Helper::createDateFromString($formData->tanggal_spk)))
140+
->setValue(Helper::setDefaultPengelola('ppk', Helper::createDateFromString($formData->tanggal_spk)));
140141
}),
141142

142143
Status::make('Status', 'status')

0 commit comments

Comments
 (0)