diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml index 31d929a..ed7c4ee 100644 --- a/.gitea/workflows/build.yml +++ b/.gitea/workflows/build.yml @@ -1,12 +1,11 @@ name: Build Docker Image -# Builds images on every push to main or tag, but does NOT auto-deploy on: push: - branches: - - main + # branches: + # - main tags: - - "v*" # v1.0.0, v1.0.1, etc. + - "v*" jobs: # test-backend: diff --git a/be/Modules/MembershipApplication/Http/Controllers/MembershipApplicationController.php b/be/Modules/MembershipApplication/Http/Controllers/MembershipApplicationController.php index 7da1e09..5398193 100644 --- a/be/Modules/MembershipApplication/Http/Controllers/MembershipApplicationController.php +++ b/be/Modules/MembershipApplication/Http/Controllers/MembershipApplicationController.php @@ -189,6 +189,7 @@ class MembershipApplicationController extends Controller $membershipApplication, $request->user(), $request->validated('board_meeting_reference'), + $request->validated('board_meeting_date'), ); $message = $application->board_result === BoardResult::Pass->value @@ -210,6 +211,7 @@ class MembershipApplicationController extends Controller $request->validated('application_ids'), $request->user(), $request->validated('board_meeting_reference'), + $request->validated('board_meeting_date'), ); $succeededCount = count($result['succeeded']); @@ -270,6 +272,7 @@ class MembershipApplicationController extends Controller $application = $this->membershipApplicationService->generateResultLetter( $membershipApplication, $request->validated('board_meeting_reference'), + $request->validated('board_meeting_date'), ); $resultLetter = $application->documents @@ -301,11 +304,16 @@ class MembershipApplicationController extends Controller 'board_meeting_reference', 'Mesyuarat Lembaga', ); + $boardMeetingDate = (string) $request->query( + 'board_meeting_date', + now()->toDateString(), + ); $view = 'membershipapplication::pdf.approved-letter'; $data = $this->membershipApplicationService->getResultLetterViewData( $application, $boardMeetingReference, + $boardMeetingDate, ); $format = $request->query('format', 'html'); $filename = 'surat-keputusan-'.$application->application_number.'.pdf'; diff --git a/be/Modules/MembershipApplication/Http/Requests/BatchCompleteRequest.php b/be/Modules/MembershipApplication/Http/Requests/BatchCompleteRequest.php index 0a4c3ae..5b54787 100644 --- a/be/Modules/MembershipApplication/Http/Requests/BatchCompleteRequest.php +++ b/be/Modules/MembershipApplication/Http/Requests/BatchCompleteRequest.php @@ -20,6 +20,7 @@ class BatchCompleteRequest extends FormRequest 'application_ids' => 'required|array|min:1|max:100', 'application_ids.*' => 'required|uuid|distinct|exists:membership_applications,id', 'board_meeting_reference' => 'required|string|max:255', + 'board_meeting_date' => 'required|date', ]; } @@ -36,6 +37,8 @@ class BatchCompleteRequest extends FormRequest 'application_ids.*.distinct' => 'Permohonan duplikat tidak dibenarkan.', 'board_meeting_reference.required' => 'Rujukan mesyuarat lembaga diperlukan.', 'board_meeting_reference.max' => 'Rujukan mesyuarat lembaga tidak boleh melebihi 255 aksara.', + 'board_meeting_date.required' => 'Tarikh mesyuarat lembaga diperlukan.', + 'board_meeting_date.date' => 'Tarikh mesyuarat lembaga tidak sah.', ]; } } diff --git a/be/Modules/MembershipApplication/Http/Requests/CompleteMembershipApplicationRequest.php b/be/Modules/MembershipApplication/Http/Requests/CompleteMembershipApplicationRequest.php index 971bfde..d0d3759 100644 --- a/be/Modules/MembershipApplication/Http/Requests/CompleteMembershipApplicationRequest.php +++ b/be/Modules/MembershipApplication/Http/Requests/CompleteMembershipApplicationRequest.php @@ -18,6 +18,7 @@ class CompleteMembershipApplicationRequest extends FormRequest { return [ 'board_meeting_reference' => 'required|string|max:255', + 'board_meeting_date' => 'required|date', ]; } @@ -29,6 +30,8 @@ class CompleteMembershipApplicationRequest extends FormRequest return [ 'board_meeting_reference.required' => 'Rujukan mesyuarat lembaga diperlukan.', 'board_meeting_reference.max' => 'Rujukan mesyuarat lembaga tidak boleh melebihi 255 aksara.', + 'board_meeting_date.required' => 'Tarikh mesyuarat lembaga diperlukan.', + 'board_meeting_date.date' => 'Tarikh mesyuarat lembaga tidak sah.', ]; } } diff --git a/be/Modules/MembershipApplication/Http/Requests/GenerateResultLetterRequest.php b/be/Modules/MembershipApplication/Http/Requests/GenerateResultLetterRequest.php index 72aa39c..8cd9605 100644 --- a/be/Modules/MembershipApplication/Http/Requests/GenerateResultLetterRequest.php +++ b/be/Modules/MembershipApplication/Http/Requests/GenerateResultLetterRequest.php @@ -18,6 +18,7 @@ class GenerateResultLetterRequest extends FormRequest { return [ 'board_meeting_reference' => 'required|string|max:255', + 'board_meeting_date' => 'required|date', ]; } @@ -29,6 +30,8 @@ class GenerateResultLetterRequest extends FormRequest return [ 'board_meeting_reference.required' => 'Rujukan mesyuarat lembaga diperlukan.', 'board_meeting_reference.max' => 'Rujukan mesyuarat lembaga tidak boleh melebihi 255 aksara.', + 'board_meeting_date.required' => 'Tarikh mesyuarat lembaga diperlukan.', + 'board_meeting_date.date' => 'Tarikh mesyuarat lembaga tidak sah.', ]; } } diff --git a/be/Modules/MembershipApplication/Resources/views/pdf/approved-letter.blade.php b/be/Modules/MembershipApplication/Resources/views/pdf/approved-letter.blade.php index 21c1fea..6d62dc7 100644 --- a/be/Modules/MembershipApplication/Resources/views/pdf/approved-letter.blade.php +++ b/be/Modules/MembershipApplication/Resources/views/pdf/approved-letter.blade.php @@ -12,49 +12,77 @@ {{ $applicant->postcode }} @endsection +@section('letter-honorific') + Tuan/Puan, +@endsection + @section('letter-subject') {{ $letterSubject }} @endsection @section('letter-body')
- Dengan segala hormatnya saya merujuk kepada perkara di atas. + Dengan segala hormatnya perkara di atas adalah dirujuk.
- 2. {{ $openingTone }} dimaklumkan bahawa, permohonan tuan untuk menjadi anggota Koperasi - Permodalan Kelantan Berhad (KoPKB) telah {{ $boardResultLabel }} dalam {{ $boardMeetingReference }}@if ($isPassed && $memberNumber). Nombor keanggotaan tuan adalah {{ $memberNumber }}@endif. + 2. + @if ($isPassed) + Sukacita dimaklumkan bahawa, permohonan tuan/puan untuk menjadi Anggota Koperasi Permodalan Kelantan Berhad (KoPKB) telah dipertimbangkan dan DILULUSKAN oleh Lembaga Koperasi dalam {{ $boardMeetingReference }} yang diadakan pada {{ $boardMeetingDate }}. + @else + Dukacita dimaklumkan bahawa, permohonan tuan/puan untuk menjadi Anggota Koperasi Permodalan Kelantan Berhad (KoPKB) telah dipertimbangkan dan TIDAK DILULUSKAN oleh Lembaga Koperasi dalam {{ $boardMeetingReference }} yang diadakan pada {{ $boardMeetingDate }}. + @endif
@if ($isPassed)- 3. Pihak Koperasi akan membuat potongan gaji melalui majikan tuan sebagaimana ketetapan berikut:- -
| Perkara | +Maklumat | +
|---|---|
| Nama Anggota | +{{ $applicant->name }} | +
| No. Kad Pengenalan | +{{ $applicant->ic_number }} | +
| No. Anggota | +{{ $memberNumber }} | +
| Tarikh Kuat Kuasa Keanggotaan | +{{ $boardMeetingDate }} | +
| Modal Syer Permulaan | +RM500.00 (perlu dijelaskan dalam tempoh 6 bulan) | +
| Fi Masuk | +RM10.00 | +
| Yuran Tahunan | +RM30.00 sebulan | +
+ 4. Sebagai anggota KoPKB, tuan/puan adalah tertakluk kepada Undang-Undang Kecil (UUK), dasar, polisi dan peraturan-peraturan KoPKB yang berkuat kuasa dari semasa ke semasa.
- 4. Untuk makluman tuan, kelulusan keanggotaan ini adalah bersyarat di mana tuan dikehendaki - menjelaskan modal syer minimum sebanyak RM{{ $minimumShareCapital }}. - Bayaran tersebut perlu dibuat secara ansuran melalui potongan gaji dalam tempoh enam (6) bulan. - Pemenuhan syarat ini adalah bagi melayakkan tuan memperoleh hak, kewajipan dan liabiliti sebagai anggota KoPKB - sebagaimana terkandung di dalam Undang-Undang Kecil (UUK), Perkara 59 yang telah didaftarkan pada 11 September 2024. - Manakala had maksima modal syer adalah sebanyak RM5,000.00. + 5. Sebagai anggota, tuan/puan adalah layak menikmati kemudahan, produk dan manfaat yang ditawarkan oleh koperasi dari semasa ke semasa, tertakluk kepada syarat-syarat yang ditetapkan. +
++ 6. Pihak KoPKB mengucapkan tahniah dan mengalu-alukan penyertaan tuan/puan sebagai anggota. Semoga keanggotaan ini akan memberi manfaat kepada tuan/puan serta menyumbang kepada kemajuan dan kecemerlangan KoPKB.
@else- 3. Oleh yang demikian, permohonan tuan untuk menjadi anggota KoPKB tidak dapat diluluskan pada masa ini. + 3. Oleh yang demikian, permohonan tuan/puan untuk menjadi anggota KoPKB tidak dapat diluluskan pada masa ini.
@endif @endsection @@ -64,14 +92,5 @@ @endsection @section('letter-signature') -
-
|
-
-
| + | ||||||||||||
|
+ Nota: + Surat ini dijana secara komputer dan merupakan dokumen rasmi Koperasi Permodalan Kelantan Berhad (KoPKB). Oleh itu, surat ini adalah sah tanpa tandatangan. |
-
|
-
-
|
+ @if (! empty($logoUrl))
+
+ Lot Pt 448, Tingkat 1, Jalan Kuala Krai, Batu 3, Wakaf Che Yeh, 15150 Kota Bharu, Kelantan.
+
+
+ Tel: 09-7414331 | Fax: 09-7414330 | Web:www.koppkb.com
+
|
- Dengan segala hormatnya saya merujuk kepada perkara di atas. + Dengan segala hormatnya perkara di atas adalah dirujuk.
- 2. Sukacita dimaklumkan bahawa, permohonan tuan untuk menjadi anggota Koperasi - Permodalan Kelantan Berhad(KoPKB) telah dalam + 2. Sukacita dimaklumkan bahawa, permohonan tuan/puan untuk menjadi + Anggota Koperasi Permodalan Kelantan Berhad(KoPKB) telah dipertimbangkan dan DILULUSKAN + oleh Lembaga Koperasi dalam Mesyuarat Lembaga Bil. yang diadakan pada 01 Jan 2026.
- 3. Pihak Koperasi akan membuat potongan gaji melalui majikan tuan sebagaiman ketetapan berikut:- -
| Perkara | +Maklumat | +
|---|---|
| Nama Anggota | +Ali | +
| No. Kad Pengenalan | +0123456789012345 | +
| No. Anggota | +123 | +
| Tarikh Kuat Kuasa Keanggotaan | +01 Jan | +
| Modal Syer Permulaan | +RM500.00 (perlu dijelaskan dalam tempoh 6 bulan) | +
| Fi Masuk | +RM10.00 | +
| Yuran Tahunan | +RM30.00 sebulan | +
+ 4. Sebagai anggota KoPKB, tuan/puan adalah tertakluk kepada Undang-Undang Kecil (UUK), dasar, polisi dan peraturan-peraturan KoPKB yang berkuat kuasa dari semasa ke semasa.
- 4. Untuk makluman tuan, kelulusan keanggotaan ini adalah bersyarat di mana tuan dikehendaki - menjelaskan modal syer minimum sebanyak RM500.00. Bayaran tersebut - perlu dibuat secara ansuran melalui potongan gaji dalam tempoh enam (6) bulan. - Pemenuhan syarat ini adalah bagi melayakkan tuan memperoleh hak, kewajipan dan - liabiliti sebagai anggota KoPKB sebagaimana terkandung di dalam Undang-Undang Kecil (UUK), - Perkara 59 yang telah didaftarkan pada 11 September 2024. Manakala had maksima modal syer adalah - sebanyak RM5,000.00. + 5. Sebagai anggota, tuan/puan adalah layak menikmati kemudahan, produk dan manfaat yang ditawarkan oleh koperasi dari semasa ke semasa, tertakluk kepada syarat-syarat yang ditetapkan.
++ 6. Pihak KoPKB mengucapkan tahniah dan mengalu-alukan penyertaan tuan/puan sebagai anggota. Semoga keanggotaan ini akan memberi manfaat kepada tuan/puan serta menyumbang kepada kemajuan dan kecemerlangan KoPKB.
@endsection @@ -63,14 +86,5 @@ @endsection @section('letter-signature') -- Dengan hormatnya perkara di atas adalah dirujuk. -
-- 1. Ini adalah kandungan contoh untuk pratonton reka bentuk surat. Gunakan halaman ini - untuk menguji susun atur, fon, jarak, dan elemen letterhead sebelum menghasilkan PDF sebenar. -
-- 2. Teks ini boleh diganti apabila templat surat muktamad disediakan. -
-@endsection - -@section('letter-closing') - Sekian, terima kasih. -@endsection - -@section('letter-signature') -