Update Kriteria Menu
This commit is contained in:
parent
cd1b751138
commit
f571777b6e
|
@ -9,8 +9,22 @@ use DataTables;
|
||||||
|
|
||||||
class DataKriteriaController extends Controller
|
class DataKriteriaController extends Controller
|
||||||
{
|
{
|
||||||
function index() {
|
function index(Request $request) {
|
||||||
return view('pages.data_kriteria.index');
|
$data_kriteria = Kriteria::get();
|
||||||
|
if ($request->ajax()) {
|
||||||
|
$fetchAll = DataTables::of($data_kriteria)
|
||||||
|
->addIndexColumn()
|
||||||
|
->addColumn('action', function ($data) {
|
||||||
|
return'
|
||||||
|
<a href="'. route('edit_kriteria',$data->id) .'" class="btn btn-warning btn-sm" >Edit</a>
|
||||||
|
<button class="btn btn-danger btn-sm" onclick="deleteData(`'. route('destroy_kriteria', $data->id) .'`)">Hapus </button>
|
||||||
|
';
|
||||||
|
})
|
||||||
|
->rawColumns(['action'])
|
||||||
|
->make(true);
|
||||||
|
return $fetchAll;
|
||||||
|
}
|
||||||
|
return view('pages.data_kriteria.index', compact('data_kriteria'));
|
||||||
}
|
}
|
||||||
|
|
||||||
function create() {
|
function create() {
|
||||||
|
@ -18,14 +32,41 @@ class DataKriteriaController extends Controller
|
||||||
}
|
}
|
||||||
|
|
||||||
function store(Request $request) {
|
function store(Request $request) {
|
||||||
$validated = $request->validate([
|
$request->session()->flash('kode_kriteria', $request->kode_kriteria);
|
||||||
|
$request->session()->flash('nama_kriteria', $request->nama_kriteria);
|
||||||
|
$request->session()->flash('bobot_kriteria', $request->bobot_kriteria);
|
||||||
|
|
||||||
|
$data = $request->validate([
|
||||||
'kode_kriteria' => 'required|unique:mst_kriteria',
|
'kode_kriteria' => 'required|unique:mst_kriteria',
|
||||||
'nama_kriteria' => 'required',
|
'nama_kriteria' => 'required',
|
||||||
'bobot_kriteria' => 'required',
|
'bobot_kriteria' => 'required',
|
||||||
|
],[
|
||||||
|
'kode_kriteria.required' => 'Kode Kriteria wajib diisi',
|
||||||
|
'kode_kriteria.unique' => 'Kode Kriteria sudah terpakai',
|
||||||
|
'nama_kriteria.required' => 'Nama Kriteria wajib diisi',
|
||||||
|
'bobot_kriteria.required' => 'Bobot Kriteria wajib diisi',
|
||||||
]);
|
]);
|
||||||
|
|
||||||
Kriteria::create($validated);
|
Kriteria::create($data);
|
||||||
return redirect('/data-kriteria')->with('success', 'Berhasil tambah pengguna baru.');
|
return redirect('/data-kriteria')->with('success', 'Berhasil tambah kriteria baru.');
|
||||||
|
}
|
||||||
|
|
||||||
|
function edit($id) {
|
||||||
|
$kriteria = Kriteria::find($id);
|
||||||
|
return view('pages.data_kriteria.form',compact('kriteria'));
|
||||||
|
}
|
||||||
|
|
||||||
|
function update(Request $request, $id) {
|
||||||
|
$data = $request->validate([
|
||||||
|
'nama_kriteria' => 'required',
|
||||||
|
'bobot_kriteria' => 'required',
|
||||||
|
],[
|
||||||
|
'nama_kriteria.required' => 'Nama Kriteria wajib diisi',
|
||||||
|
'bobot_kriteria.required' => 'Bobot Kriteria wajib diisi',
|
||||||
|
]);
|
||||||
|
|
||||||
|
Kriteria::find($id)->update($data);
|
||||||
|
return redirect('/data-kriteria')->with('success', 'Data berhasil Update.');
|
||||||
}
|
}
|
||||||
|
|
||||||
function destroy($id) {
|
function destroy($id) {
|
||||||
|
|
|
@ -1,35 +1,58 @@
|
||||||
@extends('layout.master')
|
@extends('layout.master')
|
||||||
|
|
||||||
@section('title', 'Tambah Kriteria')
|
@if (!empty($kriteria))
|
||||||
|
@section('title', 'Edit Kriteria')
|
||||||
|
@else
|
||||||
|
@section('title', 'Tambah Kriteria')
|
||||||
|
@endif
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
|
@if ($errors->any())
|
||||||
|
<div class="alert alert-danger">
|
||||||
|
<ul>
|
||||||
|
@foreach ($errors->all(); as $item)
|
||||||
|
<li>{{ $item}}</li>
|
||||||
|
@endforeach
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
@endif
|
||||||
<div class="card border-top-primary shadow mb-4">
|
<div class="card border-top-primary shadow mb-4">
|
||||||
<form action="{{ route('store_kriteria') }}" method="POST">
|
@if (!empty($kriteria))
|
||||||
|
<form action="{{ url('data-kriteria/update').$kriteria->id }}" method="POST">
|
||||||
|
@else
|
||||||
|
<form action="{{ url('data-kriteria/store') }}" method="POST">
|
||||||
|
@endif
|
||||||
@csrf
|
@csrf
|
||||||
|
<input type="hidden" class="form-control" name="id" @if(!empty($kriteria)) value="{{ $kriteria->id }}" @endif>
|
||||||
<div class="card-body pt-3">
|
<div class="card-body pt-3">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-lg-12">
|
<div class="col-lg-12">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label for="">Kode Kriteria</label>
|
<label for="">Kode Kriteria</label>
|
||||||
<input type="text" class="form-control" name="kode_kriteria">
|
<input type="text" class="form-control" name="kode_kriteria" @if(!empty($kriteria)) value="{{ $kriteria->kode_kriteria }}" disabled @endif>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-lg-12">
|
<div class="col-lg-12">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label for="">Nama Kriteria</label>
|
<label for="">Nama Kriteria</label>
|
||||||
<input type="text" class="form-control" name="nama_kriteria">
|
<input type="text" class="form-control" name="nama_kriteria" @if(!empty($kriteria)) value="{{ $kriteria->nama_kriteria }}" @else value="{{ Session::get('nama_kriteria') }}" @endif>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-lg-12">
|
<div class="col-lg-12">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label for="">Bobot Kriteria</label>
|
<label for="">Bobot Kriteria</label>
|
||||||
<input type="number" class="form-control" name="bobot_kriteria">
|
<input type="number" class="form-control" name="bobot_kriteria" @if(!empty($kriteria)) value="{{ $kriteria->bobot_kriteria }}" @else value="{{ Session::get('bobot_kriteria') }}" @endif>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-footer text-right">
|
<div class="card-footer justify-content-between" style="display: flex">
|
||||||
|
<a href="{{ URL::previous() }}" class="btn btn-sm btn-warning">Kembali</a>
|
||||||
|
@if (!empty($kriteria))
|
||||||
|
<button class="btn btn-sm btn-primary">Update</button>
|
||||||
|
@else
|
||||||
<button class="btn btn-sm btn-primary">Tambah</button>
|
<button class="btn btn-sm btn-primary">Tambah</button>
|
||||||
|
@endif
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -7,20 +7,25 @@
|
||||||
@endpush
|
@endpush
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
|
@if (session('success'))
|
||||||
|
<div class="alert alert-success">
|
||||||
|
{{ session('success') }}
|
||||||
|
</div>
|
||||||
|
@endif
|
||||||
<div class="card border-top-primary shadow mb-4">
|
<div class="card border-top-primary shadow mb-4">
|
||||||
<div class="card-body pt-3">
|
<div class="card-body pt-3">
|
||||||
<div class="mb-2">
|
<div class="mb-2">
|
||||||
<a href="{{ route('create_kriteria') }}" class="btn btn-sm btn-primary">Tambah Kriteria</a>
|
<a href="{{ route('create_kriteria') }}" class="btn btn-sm btn-primary">Tambah Kriteria</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
<table class="table table-bordered" id="dataTable" width="100%" cellspacing="0">
|
<table class="table table-bordered" id="tabelKriteria" width="100%" cellspacing="0">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th width="5%">No</th>
|
<th width="5%">No</th>
|
||||||
<th width="5%">Kode</th>
|
<th width="5%">Kode</th>
|
||||||
<th>Kriteria</th>
|
<th>Kriteria</th>
|
||||||
<th class="text-center" width="5%">Bobot</th>
|
<th class="text-center" width="5%">Bobot</th>
|
||||||
<th class="text-center" width="30%">Action</th>
|
<th class="text-center" width="20%">Action</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody></tbody>
|
<tbody></tbody>
|
||||||
|
@ -37,4 +42,64 @@
|
||||||
|
|
||||||
<!-- Page level custom scripts -->
|
<!-- Page level custom scripts -->
|
||||||
<script src="{{ url('sbAdmin/js/demo/datatables-demo.js') }}"></script>
|
<script src="{{ url('sbAdmin/js/demo/datatables-demo.js') }}"></script>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
//TAMPIL DATA
|
||||||
|
let table;
|
||||||
|
table = $('#tabelKriteria').DataTable({
|
||||||
|
processing: true,
|
||||||
|
serverSide: true,
|
||||||
|
ajax:"{{ route('data_kriteria') }}",
|
||||||
|
"language": {
|
||||||
|
"emptyTable": "Data kriteria kosong."
|
||||||
|
},
|
||||||
|
columnDefs: [
|
||||||
|
{
|
||||||
|
targets: 4,
|
||||||
|
className: 'text-center'
|
||||||
|
}
|
||||||
|
],
|
||||||
|
columns:[
|
||||||
|
{data:'DT_RowIndex', name:'DT_RowIndex'},
|
||||||
|
{data:'kode_kriteria', name:'kode_kriteria'},
|
||||||
|
{data:'nama_kriteria', name:'nama_kriteria'},
|
||||||
|
{data:'bobot_kriteria', name:'bobot_kriteria'},
|
||||||
|
{data:'action', name:'action'},
|
||||||
|
],
|
||||||
|
});
|
||||||
|
|
||||||
|
function deleteData(url) {
|
||||||
|
Swal.fire({
|
||||||
|
title: 'Apakah anda yakin?',
|
||||||
|
icon: 'warning',
|
||||||
|
showCancelButton: true,
|
||||||
|
confirmButtonColor: '#28a745',
|
||||||
|
cancelButtonColor: '#dc3545',
|
||||||
|
confirmButtonText: 'Ya!',
|
||||||
|
cancelButtonText: 'Tidak'
|
||||||
|
}).then((result) => {
|
||||||
|
if (result.isConfirmed) {
|
||||||
|
$.post(url,{
|
||||||
|
'_token': $('[name=csrf-token]').attr('content'),
|
||||||
|
'_method': 'delete'
|
||||||
|
})
|
||||||
|
.done((response) => {
|
||||||
|
Swal.fire({
|
||||||
|
icon: 'success',
|
||||||
|
title: response,
|
||||||
|
timer: 2000
|
||||||
|
})
|
||||||
|
table.ajax.reload();
|
||||||
|
})
|
||||||
|
.fail((errors) => {
|
||||||
|
Swal.fire({
|
||||||
|
icon: 'error',
|
||||||
|
title: 'Data tidak dapat dihapus!',
|
||||||
|
})
|
||||||
|
return;
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
</script>
|
||||||
@endpush
|
@endpush
|
|
@ -8,11 +8,11 @@
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
@if (session('success'))
|
@if (session('success'))
|
||||||
<div class="alert alert-success">
|
<div class="alert alert-success">
|
||||||
{{ session('success') }}
|
{{ session('success') }}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@endif
|
@endif
|
||||||
|
|
||||||
<div class="card border-top-primary shadow mb-4">
|
<div class="card border-top-primary shadow mb-4">
|
||||||
<div class="card-body pt-3">
|
<div class="card-body pt-3">
|
||||||
<div class="mb-2">
|
<div class="mb-2">
|
||||||
|
|
|
@ -44,6 +44,9 @@ Route::middleware(['auth'])->group(function () {
|
||||||
Route::get('/', [DataKriteriaController::class, 'index'])->name('data_kriteria');
|
Route::get('/', [DataKriteriaController::class, 'index'])->name('data_kriteria');
|
||||||
Route::get('/tambah', [DataKriteriaController::class, 'create'])->name('create_kriteria');
|
Route::get('/tambah', [DataKriteriaController::class, 'create'])->name('create_kriteria');
|
||||||
Route::post('/store', [DataKriteriaController::class, 'store'])->name('store_kriteria');
|
Route::post('/store', [DataKriteriaController::class, 'store'])->name('store_kriteria');
|
||||||
|
Route::get('/edit{id}', [DataKriteriaController::class, 'edit'])->name('edit_kriteria');
|
||||||
|
Route::post('/update{id}', [DataKriteriaController::class, 'update'])->name('update_kriteria');
|
||||||
|
Route::delete('/hapus/{id}', [DataKriteriaController::class, 'destroy'])->name('destroy_kriteria');
|
||||||
});
|
});
|
||||||
Route::prefix('data-pengguna')->group(function () {
|
Route::prefix('data-pengguna')->group(function () {
|
||||||
Route::get('/', [UsersController::class, 'index'])->name('data_pengguna');
|
Route::get('/', [UsersController::class, 'index'])->name('data_pengguna');
|
||||||
|
|
Loading…
Reference in New Issue