sigd/resources/views/modules/tool/lock/index.blade.php

189 lines
7.3 KiB
PHP

@extends('layouts.master')
@section('title', 'Kunci Aktivitas')
@section('content')
{{-- <div class="container"> --}}
<div class="card shadow-sm">
<div class="card-header d-flex justify-content-between align-items-center">
<h5 class="mb-0 font-weight-bold">Kunci Aktivitas</h5>
<button type="button" class="btn btn-primary float-right" data-toggle="modal" data-target="#lockModal">
Kunci Aktivitas
</button>
</div>
<div class="card-body">
@if (session('success'))
<div class="alert alert-success">
{{ session('success') }}
</div>
@endif
@if ($errors->has('error'))
<div class="alert alert-danger">
{{ $errors->first('error') }}
</div>
@endif
<div class="table-responsive">
<table class="table align-items-center mb-0 display" id="data-table" style="width:100%">
<thead>
<tr>
<th scope="col">Tahun Inventory</th>
<th scope="col">Status</th>
<th scope="col">Waktu Eksekusi</th>
<th scope="col" width="20%">Aksi</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
</div>
</div>
</div>
{{-- </div> --}}
<!-- Lock Modal -->
<div class="modal fade" id="lockModal" tabindex="-1" aria-labelledby="lockModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="lockModalLabel">Kunci Tahun Inventory</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
<form action="{{ route('lock.lock') }}" method="POST" id="lockForm">
@csrf
<div class="modal-body">
<div class="form-group">
<label for="year">Tahun Inventory <span class="text-danger">*</span></label>
<select name="year" id="year" class="form-control w-100" required>
@for ($year = date('Y'); $year >= 2000; $year--)
<option value="{{ $year }}">{{ $year }}</option>
@endfor
</select>
</div>
<!-- New Field for Salin Aktivitas -->
<div class="form-group">
<label for="copyActivity">Salin Aktivitas Untuk Tahun Berikutnya <span
class="text-danger">*</span></label>
<div>
<div class="form-check form-check-inline">
<input class="form-check-input" type="radio" name="copy_activity" id="copyYes"
value="yes" required checked>
<label class="form-check-label" for="copyYes">Ya</label>
</div>
<div class="form-check form-check-inline">
<input class="form-check-input" type="radio" name="copy_activity" id="copyNo"
value="no" required>
<label class="form-check-label" for="copyNo">Tidak</label>
</div>
</div>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Batal</button>
<button type="submit" class="btn btn-primary">Kunci</button>
</div>
</form>
</div>
</div>
</div>
@endsection
@section('js')
<script>
$(document).ready(function() {
$('#data-table').DataTable({
pageLength: 10,
responsive: true,
serverSide: true,
scrollX: true,
searchDelay: 1000,
ajax: {
url: '{{ route('lock.index') }}',
type: 'GET',
dataSrc: 'data'
},
columns: [{
data: 'inventory_year',
name: 'inventory_year'
},
{
data: 'status',
name: 'status'
},
{
data: 'updated_at',
name: 'updated_at'
},
{
data: 'action',
name: 'action',
orderable: false,
searchable: false
}
],
order: [
[0, 'desc']
]
});
});
document.addEventListener('DOMContentLoaded', function() {
$(document).on('click', 'form button', function(e) {
var isCancelButton = $(this).hasClass('btn-secondary');
if (isCancelButton) {
return;
}
e.preventDefault();
var form = $(this).closest('form');
var actionText = $(this).text();
var inventoryYear = form.find('select[name="year"]').val() ?? form.find(
'input[name="year"]').val();
var isCopyActivityChecked = form.find('input[name="copy_activity"]:checked').val() ===
'yes';
// Construct the warning text
var warningText = 'Apakah Anda yakin ingin ' + actionText.toLowerCase() +
' pada tahun inventory ' + inventoryYear + '?';
// Add an additional warning if "Ya" is checked
if (isCopyActivityChecked) {
warningText +=
' Aktivitas yang dikunci juga akan menyalin data aktivitas ke tahun berikutnya.';
}
Swal.fire({
title: 'Apakah Anda yakin?',
text: warningText,
icon: 'warning',
showCancelButton: true,
confirmButtonColor: '#3085d6',
cancelButtonColor: '#d33',
confirmButtonText: 'Ya, ' + actionText + '!',
cancelButtonText: 'Batal'
}).then((result) => {
if (result.isConfirmed) {
form.submit();
}
});
});
});
</script>
@endsection
@section('js')
<script>
$(document).ready(function() {
$('#year').select2({
placeholder: 'Pilih Tahun',
width: '100%',
});
});
</script>
@endsection