production: pemutihan fix
Some checks failed
Run Action to Production / run pull to sync on target message (push) Failing after 44s

This commit is contained in:
fikyb 2024-05-21 09:47:32 +07:00
parent 362f192da7
commit 62948a0b2f
11 changed files with 460 additions and 102 deletions

View File

@ -3,6 +3,7 @@
namespace App\Http\Controllers; namespace App\Http\Controllers;
use App\Models\PengajuanDpuDpa; use App\Models\PengajuanDpuDpa;
use App\Models\PengajuanPemutihan;
use App\Models\PengajuanRevisiPublikasi; use App\Models\PengajuanRevisiPublikasi;
use App\Models\PengajuanSempro; use App\Models\PengajuanSempro;
use App\Models\PengajuanSidangAkhir; use App\Models\PengajuanSidangAkhir;
@ -27,6 +28,15 @@ public function ruangbaca(){
->join('mahasiswas','mahasiswas.id','=','mahasiswas_id')->get(); ->join('mahasiswas','mahasiswas.id','=','mahasiswas_id')->get();
return view('monitoring.ruangbaca',['title' => 'Monitoring Pengajuan Wisuda Untuk Ruang Baca','data'=>$data]); return view('monitoring.ruangbaca',['title' => 'Monitoring Pengajuan Wisuda Untuk Ruang Baca','data'=>$data]);
} }
public function pemutihan(){
$data = PengajuanPemutihan::
select(
'pengajuan_pemutihans.*',
'users.nama_gelar as dosen_pengampu',
)
->join('users','users.id','=','dosen_id')->get();
return view('monitoring.pemutihan',['title' => 'Monitoring Pemutihan','data'=>$data]);
}
public function search(Request $request){ public function search(Request $request){
return redirect()->route('monitoring.caseid',['caseid'=>$request->caseid]); return redirect()->route('monitoring.caseid',['caseid'=>$request->caseid]);

View File

@ -4,13 +4,22 @@
use App\Models\PengajuanPemutihan; use App\Models\PengajuanPemutihan;
use App\Models\User; use App\Models\User;
use Barryvdh\DomPDF\Facade\Pdf;
use Carbon\Carbon;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Support\Facades\Storage;
use SimpleSoftwareIO\QrCode\Facades\QrCode;
class LayananPemutihanController extends Controller class LayananPemutihanController extends Controller
{ {
public function index(){ public function index(){
$data = PengajuanPemutihan::get(); $data = PengajuanPemutihan::
select(
'pengajuan_pemutihans.*',
'users.nama_gelar as dosen_pengampu',
)
->join('users','dosen_id','=','users.id')->get();
return view('layanan-pemutihan.index',['title' => 'Pengajuan Pemutihan | Admin Dashboard','data' => $data]); return view('layanan-pemutihan.index',['title' => 'Pengajuan Pemutihan | Admin Dashboard','data' => $data]);
} }
@ -38,8 +47,78 @@ public function store(Request $request){
'bukti_pemutihan.mimes' => 'Format File tidak berupa file JPG / PDF, cek kembali file anda', 'bukti_pemutihan.mimes' => 'Format File tidak berupa file JPG / PDF, cek kembali file anda',
'bukti_pemutihan.max' => 'Ukuran File Anda lebih dari 4Mb, Cek Ulang File anda', 'bukti_pemutihan.max' => 'Ukuran File Anda lebih dari 4Mb, Cek Ulang File anda',
]); ]);
//get lastid + 1
$countcaseid = PengajuanPemutihan::latest()->first()->id;
$caseid = "P".date_format(date_create(),"Y").$countcaseid+1;
$data_pemutihan['caseid'] = $caseid;
$data_pemutihan['mata_kuliah'] = $request->mata_kuliah;
$data_pemutihan['dosen_id'] = $request->dosen_pengampu;
$data_pemutihan['program_studi'] = $request->program_studi;
$data_pemutihan['ruang_kelas'] = $request->ruang_kelas;
$data_pemutihan['tanggal_kelas'] = $request->tanggal_kelas;
$data_pemutihan['jam_kelas'] = $request->jam_kelas;
$data_pemutihan['jurnal_kuliah'] = $request->jurnal_kuliah;
$data_pemutihan['alasan'] = $request->alasan;
$data_pemutihan['keterangan'] = $request->keterangan;
$bukti_pemutihan = $request->file('bukti_pemutihan');
$bukti_pemutihan_name = 'P_'.str_replace(' ', '_',$bukti_pemutihan->getClientOriginalName());
$path = $request->tanggal_kelas.'/'.$request->tanggal_kelas.'/'.$bukti_pemutihan_name;
//jika berhasil save file dan save data mhs maka pengajuan akan diisi
if(Storage::disk('public')->put($path, file_get_contents($bukti_pemutihan))){
$data_pemutihan['bukti_izin_dosen'] = $bukti_pemutihan_name;
PengajuanPemutihan::create($data_pemutihan);
return redirect()->route('layanan-pemutihan.tambah')->with('success','Sukses Tambah Data, Silahkan Monitoring Pengajuan Anda melalui menu monitoring');
}
return redirect()->route('layanan-pemutihan.tambah')->with('error','Gagal Tambah data, Cek kembali data yang anda masukkan');
}
public function cetak($caseid){
$data = PengajuanPemutihan::
select(
'pengajuan_pemutihans.*',
'users.nama_gelar as dosen_pengampu',
'users.nip as dosen_pengampu_nip',
)
->join('users','dosen_id','=','users.id')
->where('caseid',$caseid)
->first();
//jika data kosong maka render ini
if(is_null($data)){
return redirect()->route('monitoring.caseid',['caseid'=>$caseid])->with('error','Data Dengan CASEID Tersebut Tidak ada');
}
$tanggal_kelas = strtotime($data->tanggal_kelas);
$data_pdf = [
'title' => 'Form Berita Acara Perkuliahan dalam Kondisi Gangguan Sistem',
// 'date' => Carbon::now()->format('d-m-Y'),
'date' => $data->created_at->format('d-m-Y'),
'mata_kuliah' => $data->mata_kuliah,
'program_studi' => $data->program_studi,
'ruang_kelas' => $data->ruang_kelas,
'tanggal_kelas' => date('d-m-Y',$tanggal_kelas),
'jam_kelas' => $data->jam_kelas,
'jurnal_kuliah' => $data->jurnal_kuliah,
'alasan' => $data->alasan,
'keterangan' => $data->keterangan,
'dosen_pengampu' => $data->dosen_pengampu,
'dosen_pengampu_nip' => $data->dosen_pengampu_nip,
'dosen_pengampu_qrcode' => base64_encode(QrCode::size(100)->generate($data->dosen_pengampu.'_TTD_'.$data->created_at)),
];
$pdf = Pdf::loadView('layanan-pemutihan.cetak', $data_pdf);
return $pdf->setPaper('a4', 'potrait')->stream($caseid.'-Form Berita Acara Perkuliahan dalam Kondisi Gangguan Sistem.pdf');
}
public function selesai($caseid, Request $request){
$data = PengajuanPemutihan::where('caseid', $caseid)->first();
if($data==null){
return redirect()->route('layanan-pemutihan.index')->with('error','Gagal Memproses, Data tidak ditemukan');
}
$data->status_operator = Carbon::now();
$data->save();
return redirect()->route('layanan-pemutihan.index')->with('success','Data Berhasil Disimpan, status akan diupdate menjadi selesai');
dd($request->all()); dd($request->all());
} }
} }

View File

@ -10,6 +10,7 @@ class PengajuanPemutihan extends Model
use HasFactory; use HasFactory;
protected $fillable = [ protected $fillable = [
'caseid',
'dosen_id', 'dosen_id',
'program_studi', 'program_studi',
'mata_kuliah', 'mata_kuliah',

View File

@ -0,0 +1,30 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::table('pengajuan_pemutihans', function (Blueprint $table) {
// $table->foreignId('user_roles_id')->constrained();
$table->timestamp('status_operator')->nullable()->after('dosen_id');
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::table('pengajuan_pemutihans', function (Blueprint $table) {
// $table->drop('user_roles_id');
$table->drop('status_operator');
});
}
};

View File

@ -140,6 +140,16 @@
<p class="text-muted">Pengajuan Syarat Mengikuti Wisuda</p> <p class="text-muted">Pengajuan Syarat Mengikuti Wisuda</p>
</a> </a>
</div> </div>
<div class="col-md-4">
<a href="{{route('layanan-pemutihan.tambah')}}" class="text-decoration-none" target="_blank">
<span class="fa-stack fa-4x">
<i class="fas fa-circle fa-stack-2x text-primary"></i>
<i class="fas fa-chalkboard-teacher fa-stack-1x fa-inverse"></i>
</span>
<h4 class="my-3">Pengajuan Pemutihan Kelas</h4>
<p class="text-muted">Pengajuan Pemutihan Kelas</p>
</a>
</div>
<div class="col-md-4"> <div class="col-md-4">
<span class="fa-stack fa-4x"> <span class="fa-stack fa-4x">
<i class="fas fa-circle fa-stack-2x text-primary"></i> <i class="fas fa-circle fa-stack-2x text-primary"></i>

View File

@ -0,0 +1,146 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="id" lang="id">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>{{ $title }}</title>
<meta name="author" content="PINTU FARMASI"/>
<style type="text/css">
@page {
margin-top: 180px;
margin-left: 75px;
margin-right: 60px;
}
*{
font-size: 12pt;
}
#table-header{
width: 100%;
position: fixed;
/* right: px; */
top: -150px;
border: 1px solid #000;
border-bottom: 3px solid #000;
}
#table-header td{
text-align: center;
border: 1px solid #000;
font-family: 'Times New Roman', Times, Arial;
font-size: 12pt;
}
#table-header td p{
margin: 0;
}
.table-judul{
border:1.5px solid;
vertical-align:inherit;
text-align:center;
}
.table-konten{
border:1.5px solid;
padding:0.5em;
vertical-align:inherit;
text-align:left;
}
.kolom-ttd{
border:1.5px solid;
padding:0;
vertical-align:inherit;
text-align:center;
}
/* p {
color: black; font-family:"Times New Roman", serif; font-style: normal; font-weight: normal; text-decoration: none; font-size: 12pt; margin:0pt;
}
h1 {
color: black; font-family:"Times New Roman",
serif;
font-style: normal;
font-weight: bold;
text-decoration: none;
font-size: 12pt;
}
.s1 { color: black; font-family:"Times New Roman", serif; font-style: normal; font-weight: bold; text-decoration: none; font-size: 12pt; }
.s2 { color: black; font-family:"Times New Roman", serif; font-style: normal; font-weight: normal; text-decoration: none; font-size: 12pt; }
table, tbody {vertical-align: top; overflow: visible; } */
</style>
</head>
<body>
<table border="0" id="table-header">
<tr>
<td rowspan="2" width="15%"><img src="{{ asset('dist/img/logo-unej.png') }}" alt="LOGOUNEJ" width="100px"></td>
<td style=" text-align:left; margin:0; padding:0; vertical-align: text-top;" width="20%">Nama Dokumen :</td>
<td style=" text-align:left; margin:0; padding:0; vertical-align: text-top; font-weight: bold;">Form Berita Acara Perkuliahan dalam Kondisi Gangguan Sistem</td>
</tr>
<tr>
<td style=" text-align:left; margin:0; padding:0; vertical-align: text-top;">Tujuan :</td>
<td style=" text-align:left; margin:0; padding:0; vertical-align: text-top;">Sebagai dasar/acuan bagi Operator Akademik Prodi untuk meng-entry presensi mahasiswa dan jurnal perkuliahan ke SISTER secara MANUAL</td>
</tr>
</table>
<p style="margin-bottom: 0; text-align:justify;">Dengan ini diberitahukan bahwa </p>
<table border="0" width="100%">
<tr>
<td style="width: 13em;">Mata Kuliah / Program Studi</td>
<td> : </td>
<td>{{ $mata_kuliah }} / {{$program_studi}}</td>
</tr>
<tr>
<td style="width: 13em;">Dosen Pengampu</td>
<td> : </td>
<td>{{ $dosen_pengampu }}</td>
</tr>
<tr>
<td style="width: 13em;">Ruang Kelas</td>
<td> : </td>
<td>{{ $ruang_kelas }}</td>
</tr>
<tr>
<td style="width: 13em;">Tanggal Kelas</td>
<td> : </td>
<td>{{ $tanggal_kelas }}</td>
</tr>
<tr>
<td style="width: 13em;">Jam kelas</td>
<td> : </td>
<td>{{ $jam_kelas }}</td>
</tr>
<tr>
<td style="width: 13em;">Jurnal Kuliah</td>
<td> : </td>
<td>{{ $jurnal_kuliah }}</td>
</tr>
</table>
<p>Telah dilaksanakan sesuai jadwal tanpa menggunakan presensi QR Code dan/atau e-learning karena :
<br>{{ $alasan }}
</p>
<p>Keterangan : <br>
{!! nl2br($keterangan) !!}
</p>
<p>Oleh karena itu supaya entry presensi mahasiswa dan jurnal kuliah ke SISTER dilakukan secara MANUAL oleh Operator Akademik Prodi.</p>
<table border="0" style="padding-top:10em;" cellspacing="0">
<tr>
<td width="340px"></td>
<td>Jember, {{ $date }}</td>
</tr>
<tr>
<td style="text-align: left"></td>
<td style="text-align: left">Dosen Pengampu,</td>
</tr>
<tr>
<td style="height:100px; text-align: left; vertical-align:bottom;">
</td>
<td style="height:100px; text-align: left; vertical-align:bottom;">
<img src="data:image/png;base64, {!! $dosen_pengampu_qrcode !!}" alt="">
</td>
</tr>
<tr>
<td style="text-align: left;"></td>
<td style="text-align: left;">{{ $dosen_pengampu }}</td>
</tr>
<tr>
<td style="text-align: left"></td>
<td style="text-align: left">NIP. {{ $dosen_pengampu_nip }}<td>
</tr>
</table>
</body>
</html>

View File

@ -17,12 +17,12 @@
<div class="container-fluid"> <div class="container-fluid">
<div class="row mb-2"> <div class="row mb-2">
<div class="col-sm-6"> <div class="col-sm-6">
<h1>Pengajuan Seminar Proposal</h1> <h1>Pengajuan Pemutihan</h1>
</div> </div>
<div class="col-sm-6"> <div class="col-sm-6">
<ol class="breadcrumb float-sm-right"> <ol class="breadcrumb float-sm-right">
<li class="breadcrumb-item"><a href="{{ route('admin.dashboard') }}">Admin</a></li> <li class="breadcrumb-item"><a href="{{ route('admin.dashboard') }}">Admin</a></li>
<li class="breadcrumb-item active">Pengajuan Seminar Proposal</li> <li class="breadcrumb-item active">Pengajuan Pemutihan</li>
</ol> </ol>
</div> </div>
</div> </div>
@ -65,9 +65,11 @@
<thead> <thead>
<tr> <tr>
<th>CaseID</th> <th>CaseID</th>
<th>NIM</th> <th>Program Studi</th>
<th>Nama</th> <th>Mata Kuliah</th>
<th>DPU</th> <th>Dosen Pengampu</th>
<th>Ruang Kuliah</th>
<th>Tanggal</th>
<th>Action</th> <th>Action</th>
</tr> </tr>
</thead> </thead>
@ -75,15 +77,16 @@
@foreach ($data as $datas) @foreach ($data as $datas)
<tr> <tr>
<td>{{ $datas->caseid }}</td> <td>{{ $datas->caseid }}</td>
<td>{{ $datas->nim }} </td> <td>{{ $datas->program_studi }}</td>
<td>{{ $datas->nama }} </td> <td>{{ $datas->mata_kuliah }} </td>
<td>{{ $datas->dpu_nama_gelar }}</td> <td>{{ $datas->dosen_pengampu }} </td>
<td>{{ $datas->ruang_kelas }} </td>
<td>{{ $datas->tanggal_kelas }}</td>
<td class="text-center"> <td class="text-center">
<button class="btn btn-primary" data-toggle="modal" data-target="#MD{{ $datas->id }}" >Details</button> | <form action="{{ route('layanan-pemutihan.selesai',['caseid'=>$datas->caseid]) }}" method="post">@csrf
@if($datas->ttd_operator=="-") <a class="btn btn-primary" data-toggle="modal" data-target="#MD{{ $datas->id }}">Details</a>
<button class="btn btn-success" data-toggle="modal" data-target="#MD{{ $datas->id }}" >Terima</button> | @if($datas->status_operator == null) | <button type="submit" id="selesai" class="btn btn-success">Selesai</button>@endif
<button class="btn btn-danger" data-toggle="modal" data-target="#MDDelete{{ $datas->id }}" >Tolak</button> </form>
@endif
</td> </td>
</tr> </tr>
<!-- Modal Detail dan Terima --> <!-- Modal Detail dan Terima -->
@ -99,64 +102,49 @@
<div class="modal-body"> <div class="modal-body">
<div class="row"> <div class="row">
<div class="col"> <div class="col">
<label for="nim">NIM:</label> <label for="program_studi">Program Studi:</label>
<input type="text" class="form-control form-control-border" readonly value="{{ $datas->nim }}"> <input type="text" class="form-control form-control-border" readonly value="{{ $datas->program_studi }}">
<label for="nama">Nama Mahasiswa:</label> <label for="jam_kelas">Jam Kelas:</label>
<input type="text" class="form-control form-control-border" readonly value="{{ $datas->nama }}"> <input type="text" class="form-control form-control-border" readonly value="{{ $datas->jam_kelas }}">
<label for="dosen_dpu">Dosen DPU: {{ $datas->ttd_dpu === '-' ? 'Belum Tanda Tangan' : 'Telah TTD Pada '.$datas->ttd_dpu }}</label> <label for="ruang_kelas">Ruang Kelas:</label>
<input type="text" class="form-control form-control-border" readonly value="{{ $datas->dpu_nama_gelar }}"> <input type="text" class="form-control form-control-border" readonly value="{{ $datas->ruang_kelas }}">
</div>
<div class="col">
<label for="mata_kuliah">Mata Kuliah:</label>
<input type="text" class="form-control form-control-border" readonly value="{{ $datas->mata_kuliah }}">
<label for="tanggal_kelas">Tanggal Kelas:</label>
<input type="text" class="form-control form-control-border" readonly value="{{ $datas->tanggal_kelas }}">
<label for="bukti_izin_dosen">Bukti Izin Dosen:</label>
<input type="text" class="form-control form-control-border" readonly value="{{ $datas->bukti_izin_dosen }}">
</div> </div>
</div> </div>
<div class="row"> <div class="row">
<div class="col"> <div class="col">
<label for="file_transkrip">Lihat Bukti Screenshot Kehadiran Seminar Proposal :</label><br> <label for="dosen_pengampu">Dosen Pengampu: {{ $datas->ttd_dosen === '-' ? 'Belum Tanda Tangan' : 'Telah TTD Pada '.$datas->ttd_dosen }}</label>
<a href="{{asset('storage')}}/{{ $datas->nim }}/{{ $datas->bukti_hadir_sempro }}" target="_blank" class="btn btn-info">Klik Disini</a> <input type="text" class="form-control form-control-border" readonly value="{{ $datas->dosen_pengampu }}">
</div> <label for="jurnal_kuliah">Jurnal Kuliah:</label>
<div class="col"> <input type="text" class="form-control form-control-border" readonly value="{{ $datas->jurnal_kuliah }}">
<label for="file_transkrip">Lihat Bukti Cek TurnitIn :</label><br> <label for="alasan">Alasan Pemutihan:</label>
<a href="{{asset('storage')}}/{{ $datas->nim }}/{{ $datas->bukti_turnitin }}" target="_blank" class="btn btn-info">Klik Disini</a> <input type="text" class="form-control form-control-border" readonly value="{{ $datas->alasan }}">
</div> <label for="keterangan">Keterangan:</label>
</div> <textarea name="keterangan" id="keterangan" cols="30" rows="10" class="form-control form-control-border" readonly>
<div class="row"> {{ $datas->keterangan }}
<div class="col"> </textarea>
<label for="file_transkrip">Lihat Bukti Screenshot Sister :</label><br>
<a href="{{asset('storage')}}/{{ $datas->nim }}/{{ $datas->bukti_sister }}" target="_blank" class="btn btn-info">Klik Disini</a>
</div>
<div class="col">
<label for="file_transkrip">Lihat Bukti Lembar Monitoring :</label><br>
<a href="{{asset('storage')}}/{{ $datas->nim }}/{{ $datas->bukti_lembar_monitoring }}" target="_blank" class="btn btn-info">Klik Disini</a>
</div>
</div>
<div class="row">
<div class="col">
<label for="file_transkrip">Lihat Bukti Pengiriman Naskah Ke Dosen Pembimbing :</label><br>
<a href="{{asset('storage')}}/{{ $datas->nim }}/{{ $datas->bukti_naskah_dosen_pembimbing }}" target="_blank" class="btn btn-info">Klik Disini</a>
</div>
<div class="col">
<label for="file_transkrip">Lihat Bukti Pengiriman Naskah Ke Dosen Penguji :</label><br>
<a href="{{asset('storage')}}/{{ $datas->nim }}/{{ $datas->bukti_naskah_dosen_penguji }}" target="_blank" class="btn btn-info">Klik Disini</a>
</div> </div>
</div> </div>
<div class="row"> <div class="row">
<div class="col"> <div class="col">
<label for="file_transkrip">Cetak Surat Pernyataan<br> <label for="file_transkrip">Cetak Surat Pernyataan<br>
<a href="{{ route('layanan-sempro.cetak',['caseid'=>$datas->caseid]) }}" target="_blank" class="btn btn-success">Klik Disini</a> <a href="{{ route('layanan-pemutihan.cetak',['caseid'=>$datas->caseid]) }}" target="_blank" class="btn btn-success">Klik Disini</a>
</div> </div>
</div> </div>
@if($datas->ttd_operator != '-') @if($datas->status_operator == null)
<div class="row mt-3"> <div class="row mt-3">
<div class="col"> <div class="col">
<label for="resend">Kirim Ulang Email :</label> <form action="{{ route('layanan-pemutihan.selesai',['caseid'=>$datas->caseid]) }}" method="post">
<form action="{{ route('layanan-sempro.resend',['caseid'=>$datas->caseid]) }}" method="post">
@csrf @csrf
<input type="hidden" name="jenis" value="dpu"> <input type="hidden" name="caseid" value="{{$datas->caseid}}">
<button type="submit" id="resend" class="btn btn-default btn-block">Kirim Ulang Ke DPU</button> <button type="submit" id="selesai" class="btn btn-success btn-block">Selesai</button>
</form>
<div class="mt-1"></div>
<form action="{{ route('layanan-sempro.resend',['caseid'=>$datas->caseid]) }}" method="post">
@csrf
<input type="hidden" name="jenis" value="mahasiswa">
<button type="submit" id="resend" class="btn btn-default btn-block">Kirim Ulang Ke Mahasiswa</button>
</form> </form>
</div> </div>
</div> </div>
@ -179,52 +167,17 @@
</div> </div>
<!-- /.modal-dialog --> <!-- /.modal-dialog -->
</div> </div>
<!-- /.modal-Delete -->
<div class="modal fade" id="MDDelete{{$datas->id}}">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title">Apa Anda Yakin Ingin Menghapus Data : <b>{{ $datas->caseid }}</b></h4>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body">
<div class="alert alert-info alert-dismissible">
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
<h5><i class="icon fas fa-info"></i> Perhatian!</h5>
<span >Alasan yang Dimasukkan Disini, Akan dikirimkan melalui Email Kepada Mahasiswa Terkait.</span>
</div>
<form action="{{ route('layanan-sempro.destroy') }}" method="post">
@csrf @method('DELETE')
<div class="row">
<div class="col">
<label for="alasan">Alasan:</label>
<textarea name="alasan" class="form-control" id="alasan" cols="30" rows="10"
placeholder="Masukkan Alasan Disini
Masukkan Alasan Disini"></textarea>
<input type="hidden" name="id" value="{{$datas->id}}">
</div>
</div>
</div>
<div class="modal-footer justify-content-between">
<button type="button" class="btn btn-default" data-dismiss="modal">Batal</button>
<button type="submit" class="btn btn-danger">Kirim</button>
</form>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>
@endforeach @endforeach
</tbody> </tbody>
<tfoot> <tfoot>
<tr> <tr>
<th>CaseID</th> <th>CaseID</th>
<th>NIM</th> <th>Program Studi</th>
<th>DPU</th> <th>Mata Kuliah</th>
<th>DPA</th> <th>Dosen Pengampu</th>
<th>Ruang Kuliah</th>
<th>Tanggal</th>
<th>Action</th> <th>Action</th>
</tr> </tr>
</tfoot> </tfoot>

View File

@ -76,7 +76,7 @@
<label for="alasan">Alasan Pemutihan: </label> <label for="alasan">Alasan Pemutihan: </label>
<input type="text" class="form-control" required name="alasan" id="alasan" placeholder="Alasan Pemutihan, Contoh : Pemadaman Listrik/ Gagal Koneksi Ke jaringan/ Lain lain..."> <input type="text" class="form-control" required name="alasan" id="alasan" placeholder="Alasan Pemutihan, Contoh : Pemadaman Listrik/ Gagal Koneksi Ke jaringan/ Lain lain...">
<label for="keterangan">Keterangan: </label> <label for="keterangan">Keterangan: </label>
<textarea name="alasan" id="alasan" cols="30" rows="10" class="form-control" required placeholder="Nama mahasiswa yg Gagal Absen, Contoh: <textarea name="keterangan" id="keterangan" cols="30" rows="10" class="form-control" required placeholder="Nama mahasiswa yg Gagal Absen, Contoh:
Nama - NIM Nama - NIM
Nama - NIM"></textarea> Nama - NIM"></textarea>
<label for="bukti_pemutihan">Upload Bukti Pemutihan: *(File JPG/PDF, Maks 4Mb)</label> <label for="bukti_pemutihan">Upload Bukti Pemutihan: *(File JPG/PDF, Maks 4Mb)</label>

View File

@ -115,6 +115,14 @@
</p> </p>
</a> </a>
</li> </li>
<li class="nav-item">
<a href="{{ route('monitoring.pemutihan') }}" class="nav-link {{ Request::is('monitoring/pemutihan') ? 'active' : '' }}">
<i class="nav-icon fas fa-search"></i>
<p>
Monitoring Pemutihan
</p>
</a>
</li>
</ul> </ul>
</nav> </nav>
<!-- /.sidebar-menu --> <!-- /.sidebar-menu -->

View File

@ -0,0 +1,120 @@
<!-- Extend Layout -->
@extends('layout.app_guest',['title' => $title])
@push('css')
<link rel="stylesheet" href="{{asset('/')}}plugins/datatables-bs4/css/dataTables.bootstrap4.min.css">
<link rel="stylesheet" href="{{asset('/')}}plugins/datatables-responsive/css/responsive.bootstrap4.min.css">
<link rel="stylesheet" href="{{asset('/')}}plugins/datatables-buttons/css/buttons.bootstrap4.min.css">
@endpush
@section('content')
<!-- Main content -->
<section class="content">
<div class="container-fluid">
<!-- SELECT2 EXAMPLE -->
<div class="card card-default">
<div class="card-header">
<h3 class="card-title">{{$title}}</h3>
</div>
<!-- /.card-header -->
<div class="card-body">
@if ($errors->any())
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error )
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
@if(session('success'))
<div class="alert alert-success">
<ul>
<li>{{ session('success') }}</li>
</ul>
</div>
@endif
@if(session('error'))
<div class="alert alert-danger">
<ul>
<li>{{ session('error') }}</li>
</ul>
</div>
@endif
<div class="alert alert-info alert-dismissible">
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
<h5><i class="icon fas fa-info"></i> Perhatian!</h5>
<span>Data yang tampil disini adalah data Real time. Jika Belum melakukan pengisian maka data tidak akan muncul</span>
</div>
<table id="example1" class="table table-bordered table-striped">
<thead>
<tr>
<th>CaseID</th>
<th>Program Studi</th>
<th>Mata Kuliah</th>
<th>Dosen Pengampu</th>
<th>Ruang Kuliah</th>
<th>Tanggal</th>
<th>Status</th>
</tr>
</thead>
<tbody>
@foreach($data as $item)
<tr>
<td>{{$item->caseid}}</td>
<td>{{$item->program_studi}}</td>
<td>{{$item->mata_kuliah}}</td>
<td>{{$item->dosen_pengampu}}</td>
<td>{{$item->ruang_kelas}}</td>
<td>{{$item->tanggal_kelas}}</td>
<td>{{$item->status_operator}}</td>
</tr>
@endforeach
</tbody>
<tfoot>
<tr>
<th>CaseID</th>
<th>Program Studi</th>
<th>Mata Kuliah</th>
<th>Dosen Pengampu</th>
<th>Ruang Kuliah</th>
<th>Tanggal</th>
<th>Status</th>
</tr>
</tfoot>
</table>
</div>
</div>
<!-- /.card -->
</div>
<!-- /.container-fluid -->
</section>
<!-- /.content -->
@endsection
@push('js')
<!-- DataTables & Plugins -->
<script src="{{asset('/')}}plugins/datatables/jquery.dataTables.min.js"></script>
<script src="{{asset('/')}}plugins/datatables-bs4/js/dataTables.bootstrap4.min.js"></script>
<script src="{{asset('/')}}plugins/datatables-responsive/js/dataTables.responsive.min.js"></script>
<script src="{{asset('/')}}plugins/datatables-responsive/js/responsive.bootstrap4.min.js"></script>
<script src="{{asset('/')}}plugins/datatables-buttons/js/dataTables.buttons.min.js"></script>
<script src="{{asset('/')}}plugins/datatables-buttons/js/buttons.bootstrap4.min.js"></script>
<script src="{{asset('/')}}plugins/jszip/jszip.min.js"></script>
<script src="{{asset('/')}}plugins/pdfmake/pdfmake.min.js"></script>
<script src="{{asset('/')}}plugins/pdfmake/vfs_fonts.js"></script>
<script src="{{asset('/')}}plugins/datatables-buttons/js/buttons.html5.min.js"></script>
<script src="{{asset('/')}}plugins/datatables-buttons/js/buttons.print.min.js"></script>
<script src="{{asset('/')}}plugins/datatables-buttons/js/buttons.colVis.min.js"></script>
<script>
$(function () {
$("#example1").DataTable({
"pageLength": 50,
"responsive": true, "lengthChange": false, "autoWidth": false,
order: [[6, 'asc']],
"buttons": ["csv", "excel", "pdf", "print", "colvis"]
}).buttons().container().appendTo('#example1_wrapper .col-md-6:eq(0)');
});
</script>
@endpush

View File

@ -49,7 +49,7 @@
Route::get('/layanan-pemutihan', [LayananPemutihanController::class, 'index'])->name('layanan-pemutihan.index'); Route::get('/layanan-pemutihan', [LayananPemutihanController::class, 'index'])->name('layanan-pemutihan.index');
Route::DELETE('/layanan-pemutihan', [LayananPemutihanController::class, 'destroy'])->name('layanan-pemutihan.destroy'); Route::DELETE('/layanan-pemutihan', [LayananPemutihanController::class, 'destroy'])->name('layanan-pemutihan.destroy');
Route::POST('/layanan-pemutihan', [LayananPemutihanController::class, 'terima'])->name('layanan-pemutihan.terima'); Route::POST('/layanan-pemutihan', [LayananPemutihanController::class, 'terima'])->name('layanan-pemutihan.terima');
Route::POST('/layanan-pemutihan/resend/{caseid}', [LayananPemutihanController::class, 'resend'])->name('layanan-pemutihan.resend'); Route::POST('/layanan-pemutihan/selesai/{caseid}', [LayananPemutihanController::class, 'selesai'])->name('layanan-pemutihan.selesai');
//layanan Pengajuan DPU DPA //layanan Pengajuan DPU DPA
Route::get('/layanan-dpudpa', [LayananPengajuanDpuDpaController::class, 'index'])->name('layanan-dpudpa.index'); Route::get('/layanan-dpudpa', [LayananPengajuanDpuDpaController::class, 'index'])->name('layanan-dpudpa.index');
Route::DELETE('/layanan-dpudpa', [LayananPengajuanDpuDpaController::class, 'destroy'])->name('layanan-dpudpa.destroy'); Route::DELETE('/layanan-dpudpa', [LayananPengajuanDpuDpaController::class, 'destroy'])->name('layanan-dpudpa.destroy');
@ -144,4 +144,5 @@
Route::get('/monitoring', [MonitoringController::class, 'index'])->name('monitoring.index'); Route::get('/monitoring', [MonitoringController::class, 'index'])->name('monitoring.index');
Route::post('/monitoring', [MonitoringController::class, 'search'])->name('monitoring.search'); Route::post('/monitoring', [MonitoringController::class, 'search'])->name('monitoring.search');
Route::get('/monitoring/ruangbaca', [MonitoringController::class, 'ruangbaca'])->name('monitoring.ruangbaca'); Route::get('/monitoring/ruangbaca', [MonitoringController::class, 'ruangbaca'])->name('monitoring.ruangbaca');
Route::get('/monitoring/pemutihan', [MonitoringController::class, 'pemutihan'])->name('monitoring.pemutihan');
Route::get('/monitoring/{caseid}', [MonitoringController::class, 'caseid'])->name('monitoring.caseid'); Route::get('/monitoring/{caseid}', [MonitoringController::class, 'caseid'])->name('monitoring.caseid');