main
Ilham Wara Nugroho 2026-06-10 13:17:34 +07:00
parent 8759d8d31f
commit a125e2eb10
10 changed files with 730 additions and 493 deletions

View File

@ -50,6 +50,7 @@ class FormController implements HasMiddleware
{
// Fetch the form from the database based on sector and code
$form = SettingForm::rowActive()->where('sector', $sector)->where('code', $code)->first();
// dd($code);
if (!$form) {
abort(404, 'Page not found');

View File

@ -2,8 +2,11 @@
namespace App\Models;
use Illuminate\Database\Eloquent\SoftDeletes;
class SettingForm extends SigdModel
{
use SoftDeletes;
protected $table = 'setting_form';
protected $fillable = [
'id',

View File

@ -11,6 +11,7 @@
"laravel/framework": "^11.31",
"laravel/tinker": "^2.9",
"laravel/ui": "^4.6",
"phpoffice/phpword": "dev-master",
"maatwebsite/excel": "^3.1",
"realrashid/sweet-alert": "^7.2",
"yajra/laravel-datatables": "^11.0"

1156
composer.lock generated

File diff suppressed because it is too large Load Diff

View File

@ -15,6 +15,7 @@
</div>
<div class="input-group">
<select name="instansi" id="instansi" class="form-control">
<option value="" selected> - </option>
@if ($scope === \App\Enums\LingkupAksesData::ALL->value)
<option value="none" @if ($instansi === null || $instansi == 'none') selected @endif>DATA
KONSOLIDASI</option>
@ -22,7 +23,7 @@
<option value="all" @if ($instansi === 'all') selected @endif>SELURUH DATA DARI PRODUSEN</option>
@endif
@endif
@foreach ($agencies as $agency)
<option value="{{ $agency->name }}"
@if ($instansi == $agency->name) selected @endif>
@ -38,30 +39,30 @@
@include('modules.form.approve')
</div>
<div class="form-group mb-0 mr-2">
<button type="button" title="Tambah Data" class="btn btn-primary mb-2 mb-md-0" onclick="return showCreateModal()"
<a title="Tambah Data" class="btn btn-primary mb-2 mb-md-0" onclick="return showCreateModal()"
{{ !$activityForm || $instansi === 'all' || $limitInternal ? 'disabled' : '' }}>
<i class="bx bx-plus"></i>
</button>
</a>
</div>
<div class="form-group mb-0 mr-2">
<button type="button" class="btn btn-secondary mb-2 mb-md-0" onclick="showMetadataModal()"
<a class="btn btn-secondary mb-2 mb-md-0" onclick="showMetadataModal()"
{{ !$activityForm || $instansi === 'all' || $limitInternal ? 'disabled' : '' }}>
<i class="bx bx-menu"></i>
</button>
</a>
</div>
<div class="form-group mb-0 mr-2">
<button type="button" class="btn btn-info mb-2 mb-md-0" onclick="showActivityUserModal()"
<a class="btn btn-info mb-2 mb-md-0" onclick="showActivityUserModal()"
{{ !$activityForm || $instansi === 'all' || $limitInternal ? 'disabled' : '' }}>
Aktivitas User
</button>
</a>
</div>
<div class="form-group mb-0 mr-2">
<a href="{{ $routeExport }}" class="btn btn-success mb-2 mb-md-0">Ekspor Excel</a>
</div>
<div class="form-group mb-0 mr-2">
<button type="button" class="btn btn-warning mb-2 mb-md-0" data-bs-toggle="modal" data-bs-target="#importModal">
<a class="btn btn-warning mb-2 mb-md-0" data-bs-toggle="modal" data-bs-target="#importModal">
Impor Data Aktivitas
</button>
</a>
</div>
</div>
</div>

View File

@ -43,7 +43,7 @@
</div>
<div class="input-group">
<select name="instansi" id="instansi" class="form-control">
@if ($scope === \App\Enums\LingkupAksesData::ALL->value)
@if (@$scope === \App\Enums\LingkupAksesData::ALL->value)
<option value="none" @if ($instansi === null || $instansi == 'none') selected @endif>DATA
KONSOLIDASI</option>
@if ($agencies->isNotEmpty())

View File

@ -9,9 +9,7 @@
$('#filterForm').submit();
});
$('#instansi').select2({
placeholder: 'Pilih Instansi',
}).on('change', function() {
$('#instansi').select2().on('change', function() {
$('#filterForm').submit();
});

View File

@ -2,6 +2,7 @@
@csrf
<input type="hidden" name="inventoryYear" value="{{ $inventoryYear }}">
<input type="hidden" name="instansi" value="{{ $instansi }}">
{{-- @if (@request()->instansi || @$instansi) --}}
<div class="table-responsive mt-3" style="overflow-x: auto;">
<table class="table table-bordered table-detail">
<thead class="table-info text-white">
@ -79,4 +80,5 @@
</div>
<br />
<button type="submit" class="btn btn-primary" {{ $isLocked || $instansi === 'all' || $limitInternal ? 'disabled' : '' }}>Simpan</button>
{{-- @endif --}}
</form>

View File

@ -7,6 +7,41 @@ use App\Http\Controllers\AjaxController;
use App\Http\Controllers\Auth\CustomLoginController;
use App\Http\Controllers\Auth\CustomRegisterController;
Route::get('testPdf',function(){
$phpWord = new \PhpOffice\PhpWord\PhpWord();
$templateProcessor = new \PhpOffice\PhpWord\TemplateProcessor(asset('assets/dokumen_pengesahan.docx'));
$templateProcessor->setValue('tahun_dokumen', date('Y'));
$templateProcessor->setValue('tahun_data', date('Y')-1);
$templateProcessor->setValue('pengampu_data', 'BPOM');
$templateProcessor->setValue('sektor', 'Energi,Mitigasi');
$templateProcessor->setValue('jenis_data', 'Jenis Data');
$templateProcessor->setValue('sumber_data', 'Sumber Data');
$templateProcessor->setValue('kepala_pengampu_data', 'Ilham Wara Nugroho');
$templateProcessor->setValue('nama_instansi', 'BPOM');
// Simpan hasil sementara
// $tempDocx = public_path('123.docx');
// Buat file temporary
$tempFile = tempnam(sys_get_temp_dir(), 'dokumen_') . '.docx';
$templateProcessor->saveAs($tempFile);
// Nama file saat didownload
$downloadName = 'dokumen_pengesahan_' . date('YmdHis') . '.docx';
return response()
->download($tempFile, $downloadName)
->deleteFileAfterSend(true);
// convertDocxToPdf($tempDocx,public_path('123.pdf'),'123');
// dd($pdf);
});
Route::get('/',[FrontController::class,'index'])->name('index');
Route::get('/rencana-aksi',[FrontController::class,'rencanaAksi'])->name('rencana-aksi');
Route::get('/artikel',[FrontController::class,'artikel'])->name('artikel');