add data subkriteria

This commit is contained in:
yulianadewi18 2023-11-18 16:34:42 +08:00
parent 9075a6311a
commit de05e8ac53
18 changed files with 518 additions and 127 deletions

View File

@ -2,15 +2,76 @@
namespace App\Http\Controllers; namespace App\Http\Controllers;
use App\Models\Alternatif;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use DataTables;
class DataAlternatifController extends Controller class DataAlternatifController extends Controller
{ {
function index() { function index(Request $request) {
return view('pages.data_alternatif.index'); $data_alternatif = Alternatif::get();
if ($request->ajax()) {
$fetchAll = DataTables::of($data_alternatif)
->addIndexColumn()
->addColumn('action', function ($data) {
return'
<a href="'. route('edit_alternatif',$data->id) .'" class="btn btn-warning btn-sm" >Edit</a>
<button class="btn btn-danger btn-sm" onclick="deleteData(`'. route('destroy_alternatif', $data->id) .'`)">Hapus </button>
';
})
->rawColumns(['action'])
->make(true);
return $fetchAll;
}
return view('pages.data_alternatif.index', compact('data_alternatif'));
} }
function create() { function create() {
return view('pages.data_alternatif.form'); return view('pages.data_alternatif.form');
} }
function store(Request $request) {
$request->session()->flash('kode_alternatif', $request->kode_alternatif);
$request->session()->flash('nama_alternatif', $request->nama_alternatif);
$data = $request->validate([
'kode_alternatif' => 'required|unique:mst_kriteria',
'nama_alternatif' => 'required',
],[
'kode_alternatif.required' => 'Kode alternatif wajib diisi',
'kode_alternatif.unique' => 'Kode Alternatif sudah terpakai',
'nama_alternatif.required' => 'Nama alternatif wajib diisi',
]);
Alternatif::create($data);
return redirect('/data-alternatif')->with('success', 'Berhasil tambah alternatif baru.');
}
function edit($id) {
$alternatif = Alternatif::find($id);
return view('pages.data_alternatif.form',compact('alternatif'));
}
function update(Request $request, $id) {
$data = $request->validate([
'kode_alternatif' => 'required|unique:mst_kriteria',
'nama_alternatif' => 'required',
],[
'kode_alternatif.required' => 'Kode alternatif wajib diisi',
'kode_alternatif.unique' => 'Kode alternatif sudah terpakai',
'nama_alternatif.required' => 'Nama alternatif wajib diisi',
]);
Alternatif::find($id)->update($data);
return redirect('/data-alternatif')->with('success', 'Data berhasil Update.');
}
function destroy($id) {
$alternatif = Alternatif::find($id);
$alternatif->delete();
return response('Data berhasil dihapus.', 200);
}
} }

View File

@ -58,7 +58,7 @@ class DataKriteriaController extends Controller
function update(Request $request, $id) { function update(Request $request, $id) {
$data = $request->validate([ $data = $request->validate([
'kode_kriteria' => 'required|unique:mst_kriteria,kode_kriteria', 'kode_kriteria' => 'required|unique:mst_kriteria,id',
'nama_kriteria' => 'required', 'nama_kriteria' => 'required',
'bobot_kriteria' => 'required', 'bobot_kriteria' => 'required',
],[ ],[

View File

@ -0,0 +1,83 @@
<?php
namespace App\Http\Controllers;
use App\Models\SubKriteria;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Validator;
use DataTables;
class DataSubKriteriaController extends Controller
{
function index(Request $request)
{
$data_sub_kriteria = SubKriteria::get();
if ($request->ajax()) {
$fetchAll = DataTables::of($data_sub_kriteria)
->addIndexColumn()
->addColumn('action', function ($data) {
return '
<a href="' . route('edit_sub_kriteria', $data->id) . '" class="btn btn-warning btn-sm" >Edit</a>
<button class="btn btn-danger btn-sm" onclick="deleteData(`' . route('destroy_sub_kriteria', $data->id) . '`)">Hapus </button>
';
})
->rawColumns(['action'])
->make(true);
return $fetchAll;
}
return view('pages.data_sub_kriteria.index', compact('data_sub_kriteria'));
}
function create()
{
return view('pages.data_sub_kriteria.form');
}
function store(Request $request)
{
$request->session()->flash('sub_kriteria', $request->sub_kriteria);
$request->session()->flash('bobot', $request->bobot);
$data = $request->validate([
'sub_kriteria' => 'required|unique:mst_sub_kriteria',
'bobot' => 'required',
], [
'sub_kriteria.required' => 'Kode Sub Kriteria wajib diisi',
'sub_kriteria.unique' => 'Kode Sub Kriteria sudah terpakai',
'bobot.required' => 'Bobot Sub Kriteria wajib diisi',
]);
SubKriteria::create($data);
return redirect('/data-sub-kriteria')->with('success', 'Berhasil tambah sub kriteria baru.');
}
function edit($id)
{
$subkriteria = SubKriteria::find($id);
return view('pages.data_sub_kriteria.form', compact('subkriteria'));
}
function update(Request $request, $id)
{
$data = $request->validate([
'sub_kriteria' => 'required|unique:mst_sub_kriteria,id',
'bobot' => 'required',
], [
'sub_kriteria.required' => 'Kode Sub Kriteria wajib diisi',
'sub_kriteria.unique' => 'Kode Sub Kriteria sudah terpakai',
'bobot.required' => 'Bobot Sub Kriteria wajib diisi',
]);
SubKriteria::find($id)->update($data);
return redirect('/data-sub-kriteria')->with('success', 'Data berhasil Update.');
}
function destroy($id)
{
$subkriteria = SubKriteria::find($id);
$subkriteria->delete();
return response('Data berhasil dihapus.', 200);
}
}

View File

@ -23,20 +23,18 @@ class MstGuruController extends Controller
public function edit($id) public function edit($id)
{ {
$guru = Guru::findOrFail($id); $guru = Guru::findOrFail($id);
$nilai = gurumodel::where('nama', $id)->get(); $nilai = gurumodel::where('nipa', $id)->get();
$dataView = $this->getDataInsert(); $dataView = $this->getDataInsert();
// dd($nilai); // dd($nilai);
return view('pages.mst_guru.edit', compact('guru', 'dataView', 'nilai')); return view('pages.mst_guru.edit', compact('guru', 'dataView', 'nilai'));
} }
public function delete($id) public function delete($id)
{ {
$guru = Guru::find($id); $guru = Guru::find($id);
if ($guru) { if ($guru) {
$guru->delete(); $guru->delete();
// Lanjutkan dengan penghapusan lain atau tindakan yang sesuai
return redirect()->route('guru.index')->with('success', 'Data guru berhasil dihapus.'); return redirect()->route('guru.index')->with('success', 'Data guru berhasil dihapus.');
} else { } else {
// Handle kasus di mana data tidak ditemukan // Handle kasus di mana data tidak ditemukan
@ -46,3 +44,4 @@ public function edit($id)
} }

17
app/Models/Alternatif.php Normal file
View File

@ -0,0 +1,17 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class Alternatif extends Model
{
use HasFactory;
protected $table = 'mst_alternatif';
protected $fillable = [
'kode_alternatif', 'nama_alternatif',
];
}

View File

@ -6,44 +6,11 @@ use Illuminate\Database\Eloquent\Model;
class Guru extends Model class Guru extends Model
{ {
protected $table = 'gurumodels'; use HasFactory;
protected $primaryKey = 'nama';
public $timestamps = false;
protected $fillable = ['guru', 'nip']; protected $table = 'mst_kriteria';
public function getGuruByRoleId($role_id) protected $fillable = [
{ 'kode_kriteria', 'nama_kriteria', 'bobot_kriteria',
return $this->where('id_role', $role_id)->get(); ];
}
public function getAllGuru()
{
return $this->all();
}
public function insertGuru($data)
{
return $this->create($data);
}
public function updateGuru($id, $data)
{
return $this->where('nama', $id)->update($data);
}
public function deleteGuru($id)
{
return $this->where('nama', $id)->delete();
}
public function getGurusSelect($role_id)
{
return $this->where('id_role', $role_id)->get();
}
public function getLastGuruID()
{
return $this->select('nama')->orderBy('nama', 'DESC')->first();
}
} }

View File

@ -0,0 +1,17 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class SubKriteria extends Model
{
use HasFactory;
protected $table = 'mst_sub_kriteria';
protected $fillable = [
'sub_kriteria', 'bobot',
];
}

View File

@ -16,7 +16,7 @@ class gurumodel extends Model
public function updateBalita($id, $data) public function updateBalita($id, $data)
{ {
return $this->where('nama', $id)->update($data); return $this->where('nipa', $id)->update($data);
} }
public function deleteGuru($id) public function deleteGuru($id)

View File

@ -17,6 +17,7 @@ class CreateMstKriteriaTable extends Migration
$table->id(); $table->id();
$table->string('kode_kriteria'); $table->string('kode_kriteria');
$table->string('nama_kriteria'); $table->string('nama_kriteria');
$table->string('sifat');
$table->integer('bobot_kriteria'); $table->integer('bobot_kriteria');
$table->timestamps(); $table->timestamps();
}); });

View File

@ -4,7 +4,7 @@ use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema; use Illuminate\Support\Facades\Schema;
class CreateGurumodelsTable extends Migration class CreateMstSubKriteriaTable extends Migration
{ {
/** /**
* Run the migrations. * Run the migrations.
@ -13,8 +13,10 @@ class CreateGurumodelsTable extends Migration
*/ */
public function up() public function up()
{ {
Schema::create('gurumodels', function (Blueprint $table) { Schema::create('mst_sub_kriteria', function (Blueprint $table) {
$table->id(); $table->id();
$table->string('sub_kriteria');
$table->integer('bobot');
$table->timestamps(); $table->timestamps();
}); });
} }
@ -26,6 +28,6 @@ class CreateGurumodelsTable extends Migration
*/ */
public function down() public function down()
{ {
Schema::dropIfExists('gurumodels'); Schema::dropIfExists('mst_sub_kriteria');
} }
} }

View File

@ -1,20 +1,19 @@
<?php <?php
namespace Database\Seeders; namespace Database\Seeders;
use Illuminate\Database\Seeder; use Illuminate\Database\Seeder;
class DatabaseSeeder extends Seeder class DatabaseSeeder extends Seeder
{ {
/** /**
* Seed the application's database. * Run the database seeds.
* *
* @return void * @return void
*/ */
public function run() public function run()
{ {
$this->call([ $this->call([
UsersSeeder::class, UsersSeeder::class
]); ]);
} }
} }

View File

@ -34,7 +34,7 @@
@endif @endif
<a class="collapse-item {{ request()->segment(1) == 'data-alternatif' ? 'active' : ''}}" href="{{ route('data_alternatif') }}">Alternatif</a> <a class="collapse-item {{ request()->segment(1) == 'data-alternatif' ? 'active' : ''}}" href="{{ route('data_alternatif') }}">Alternatif</a>
<a class="collapse-item {{ request()->segment(1) == 'data-kriteria' ? 'active' : ''}}" href="{{ route('data_kriteria') }}">Kriteria</a> <a class="collapse-item {{ request()->segment(1) == 'data-kriteria' ? 'active' : ''}}" href="{{ route('data_kriteria') }}">Kriteria</a>
<a class="collapse-item {{ request()->segment(1) == 'penilaian-alternatif' ? 'active' : ''}}" href="{{ route('penilaian_alternatif') }}">Sub Kriteria</a> <a class="collapse-item {{ request()->segment(1) == 'data-sub-kriteria' ? 'active' : ''}}" href="{{ route('data_sub_kriteria') }}">Sub Kriteria</a>
</div> </div>
</div> </div>
</li> </li>

View File

@ -1,31 +1,50 @@
@extends('layout.master') @extends('layout.master')
@section('title', 'Tambah Bobot') @if (!empty($alternatif))
@section('title', 'Edit Alternatif')
@else
@section('title', 'Tambah Alternatif')
@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=""> @if (!empty($alternatif))
<form action="{{ url('data-alternatif/update').$alternatif->id }}" method="POST">
@else
<form action="{{ url('data-alternatif/store') }}" method="POST">
@endif
@csrf
<input type="hidden" class="form-control" name="id" @if(!empty($alternatif)) value="{{ $alternatif->id }}" @endif>
<div class="card-body pt-3"> <div class="card-body pt-3">
<div class="row"> <div class="row">
<div class="col-lg-6"> <div class="col-lg-12">
<div class="form-group"> <div class="form-group">
<label for="">Nama Bobot</label> <label for="">Kode Alternatif</label>
<input type="text" class="form-control"> <input type="text" class="form-control" name="kode_alternatif" @if(!empty($alternatif)) value="{{ $alternatif->kode_alternatif }}" @else value="{{ Session::get('nama_alternatif') }}" @endif>
</div> </div>
</div> </div>
<div class="col-lg-6"> <div class="col-lg-12">
<div class="form-group"> <div class="form-group">
<label for="">Kriteria</label> <label for="">Nama Alternatif</label>
<select name="" id="" class="form-control"> <input type="text" class="form-control" name="nama_alternatif" @if(!empty($alternatif)) value="{{ $alternatif->nama_alternatif }}" @else value="{{ Session::get('nama_alternatif') }}" @endif>
<option value="">Kriteria 1</option>
<option value="">Kriteria 2</option>
</select>
</div> </div>
</div> <div class="card-footer justify-content-between" style="display: flex">
</div> <a href="{{ route('data_alternatif') }}" class="btn btn-sm btn-warning">Kembali</a>
</div> @if (!empty($alternatif))
<div class="card-footer text-right"> <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>

View File

@ -3,47 +3,99 @@
@section('title', 'Data Alternatif') @section('title', 'Data Alternatif')
@push('css') @push('css')
<link href="{{ url('sbAdmin/vendor/datatables/dataTables.bootstrap4.min.css') }}" rel="stylesheet"> <link href="{{ url('sbAdmin/vendor/datatables/dataTables.bootstrap4.min.css') }}" rel="stylesheet">
@endpush @endpush
@section('content') @section('content')
<div class="card border-top-primary shadow mb-4"> @if (session('success'))
<div class="card-body pt-3"> <div class="alert alert-success">
<div class="mb-2"> {{ session('success') }}
<a href="{{ route('create_alternatif') }}" class="btn btn-sm btn-primary">Tambah Alternatif</a> </div>
</div> @endif
<div class="table-responsive"> <div class="card border-top-primary shadow mb-4">
<table class="table table-bordered" id="dataTable" width="100%" cellspacing="0"> <div class="card-body pt-3">
<thead> <div class="mb-2">
<tr> <a href="{{ route('create_alternatif') }}" class="btn btn-sm btn-primary">Tambah Alternatif</a>
<th width="5%">No</th> </div>
<th>Kode</th> <div class="table-responsive">
<th>Alternatif</th> <table class="table table-bordered" id="tabelAlternatif" width="100%" cellspacing="0">
<th class="text-center">Action</th> <thead>
</tr> <tr>
</thead> <th width="5%">No</th>
<tbody> <th width="5%">Kode</th>
<tr> <th>Nama Alternatif</th>
<td>1</td> <th class="text-center" width="20%">Action</th>
<td>A1</td> </tr>
<td>Alternatif 1</td> </thead>
<td class="text-center"> <tbody> </tbody>
<button class="btn btn-sm btn-warning">Edit</button> </table>
<button class="btn btn-sm btn-danger">Hapus</button>
</td>
</tr>
</tbody>
</table>
</div>
</div> </div>
</div> </div>
</div>
@endsection @endsection
@push('js') @push('js')
<!-- Page level plugins --> <!-- Page level plugins -->
<script src="{{ url('sbAdmin/vendor/datatables/jquery.dataTables.min.js') }}"></script> <script src="{{ url('sbAdmin/vendor/datatables/jquery.dataTables.min.js') }}"></script>
<script src="{{ url('sbAdmin/vendor/datatables/dataTables.bootstrap4.min.js') }}"></script> <script src="{{ url('sbAdmin/vendor/datatables/dataTables.bootstrap4.min.js') }}"></script>
<!-- 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 = $('#tabelAlternatif').DataTable({
processing: true,
serverSide: true,
ajax: "{{ route('data_alternatif') }}",
"language": {
"emptyTable": "Data Alternatif kosong."
},
columnDefs: [{
targets: 4,
className: 'text-center'
}],
columns:[
{data:'DT_RowIndex', name:'DT_RowIndex'},
{data:'kode_alternatif', name:'kode_alternatif'},
{data:'nama_alternatif', name:'nama_alternatif'},
{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

View File

@ -1,27 +1,27 @@
@extends('layout.master') @extends('layout.master')
@if (!empty($kriteria)) @if (!empty($kriteria))
@section('title', 'Edit Kriteria') @section('title', 'Edit Kriteria')
@else @else
@section('title', 'Tambah Kriteria') @section('title', 'Tambah Kriteria')
@endif @endif
@section('content') @section('content')
@if ($errors->any()) @if ($errors->any())
<div class="alert alert-danger"> <div class="alert alert-danger">
<ul> <ul>
@foreach ($errors->all(); as $item) @foreach ($errors->all(); as $item)
<li>{{ $item}}</li> <li>{{ $item}}</li>
@endforeach @endforeach
</ul> </ul>
</div> </div>
@endif @endif
<div class="card border-top-primary shadow mb-4"> <div class="card border-top-primary shadow mb-4">
@if (!empty($kriteria)) @if (!empty($kriteria))
<form action="{{ url('data-kriteria/update').$kriteria->id }}" method="POST"> <form action="{{ url('data-kriteria/update').$kriteria->id }}" method="POST">
@else @else
<form action="{{ url('data-kriteria/store') }}" method="POST"> <form action="{{ url('data-kriteria/store') }}" method="POST">
@endif @endif
@csrf @csrf
<input type="hidden" class="form-control" name="id" @if(!empty($kriteria)) value="{{ $kriteria->id }}" @endif> <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">
@ -29,8 +29,9 @@
<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" @if(!empty($kriteria)) value="{{ $kriteria->kode_kriteria }}" @endif> <input type="text" class="form-control" name="kode_kriteria" @if(!empty($kriteria)) value="{{ $kriteria->kode_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">
@ -55,5 +56,5 @@
@endif @endif
</div> </div>
</form> </form>
</div> </div>
@endsection @endsection

View File

@ -0,0 +1,54 @@
@extends('layout.master')
@if (!empty($kriteria))
@section('title', 'Edit Sub Kriteria')
@else
@section('title', 'Tambah Sub Kriteria')
@endif
@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">
@if (!empty($subkriteria))
<form action="{{ url('data-sub-kriteria/update').$subkriteria->id }}" method="POST">
@else
<form action="{{ url('data-sub-kriteria/store') }}" method="POST">
@endif
@csrf
<input type="hidden" class="form-control" name="id" @if(!empty($subkriteria)) value="{{ $subkriteria->id }}" @endif>
<div class="card-body pt-3">
<div class="row">
<div class="col-lg-12">
<div class="form-group">
<label for="">Kode Sub Kriteria</label>
<input type="text" class="form-control" name="sub_kriteria" @if(!empty($subkriteria)) value="{{ $subkriteria->sub_kriteria }}" @else value="{{ Session::get('bobot') }}" @endif>
</div>
</div>
<div class="col-lg-12">
<div class="form-group">
<label for="">Bobot </label>
<input type="number" class="form-control" name="bobot" @if(!empty($subkriteria)) value="{{ $subkriteria->bobot }}" @else value="{{ Session::get('bobot') }}" @endif>
</div>
</div>
</div>
</div>
<div class="card-footer justify-content-between" style="display: flex">
<a href="{{ route('data_sub_kriteria') }}" class="btn btn-sm btn-warning">Kembali</a>
@if (!empty($subkriteria))
<button class="btn btn-sm btn-primary">Update</button>
@else
<button class="btn btn-sm btn-primary">Tambah</button>
@endif
</div>
</form>
</div>
@endsection

View File

@ -0,0 +1,103 @@
@extends('layout.master')
@section('title', 'Data Sub Kriteria')
@push('css')
<link href="{{ url('sbAdmin/vendor/datatables/dataTables.bootstrap4.min.css') }}" rel="stylesheet">
@endpush
@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-body pt-3">
<div class="mb-2">
<a href="{{ route('create_sub_kriteria') }}" class="btn btn-sm btn-primary">Tambah Sub Kriteria</a>
</div>
<div class="table-responsive">
<table class="table table-bordered" id="tabelSubKriteria" width="100%" cellspacing="0">
<thead>
<tr>
<th width="1%">No</th>
<th width="10%">Sub Kriteria</th>
<th width="5%">Bobot</th>
<th class="text-center" width="5%">Action</th>
</tr>
</thead>
<tbody></tbody>
</table>
</div>
</div>
</div>
@endsection
@push('js')
<!-- Page level plugins -->
<script src="{{ url('sbAdmin/vendor/datatables/jquery.dataTables.min.js') }}"></script>
<script src="{{ url('sbAdmin/vendor/datatables/dataTables.bootstrap4.min.js') }}"></script>
<!-- Page level custom scripts -->
<script src="{{ url('sbAdmin/js/demo/datatables-demo.js') }}"></script>
<script>
//TAMPIL DATA
let table;
table = $('#tabelSubKriteria').DataTable({
processing: true,
serverSide: true,
ajax:"{{ route('data_sub_kriteria') }}",
"language": {
"emptyTable": "Data Sub kriteria kosong."
},
columnDefs: [
{
targets: 0,
className: 'text-center'
}
],
columns:[
{data:'DT_RowIndex', name:'DT_RowIndex'},
{data:'sub_kriteria', name:'sub_kriteria'},
{data:'bobot', name:'bobot'},
{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

View File

@ -8,6 +8,7 @@ use App\Http\Controllers\{
MstGuruController, MstGuruController,
DataAlternatifController, DataAlternatifController,
DataKriteriaController, DataKriteriaController,
DataSubKriteriaController,
PenilaianAlternatifController, PenilaianAlternatifController,
PerhitunganController, PerhitunganController,
UsersController UsersController
@ -48,6 +49,25 @@ Route::middleware(['auth'])->group(function () {
Route::post('/update{id}', [DataKriteriaController::class, 'update'])->name('update_kriteria'); Route::post('/update{id}', [DataKriteriaController::class, 'update'])->name('update_kriteria');
Route::delete('/hapus/{id}', [DataKriteriaController::class, 'destroy'])->name('destroy_kriteria'); Route::delete('/hapus/{id}', [DataKriteriaController::class, 'destroy'])->name('destroy_kriteria');
}); });
Route::prefix('data-sub-kriteria')->group(function () {
Route::get('/', [DataSubKriteriaController::class, 'index'])->name('data_sub_kriteria');
Route::get('/tambah', [DataSubKriteriaController::class, 'create'])->name('create_sub_kriteria');
Route::post('/store', [DataSubKriteriaController::class, 'store'])->name('store_sub_kriteria');
Route::get('/edit{id}', [DataSubKriteriaController::class, 'edit'])->name('edit_sub_kriteria');
Route::post('/update{id}', [DataSubKriteriaController::class, 'update'])->name('update_sub_kriteria');
Route::delete('/hapus/{id}', [DataSubKriteriaController::class, 'destroy'])->name('destroy_sub_kriteria');
});
Route::prefix('data-alternatif')->group(function () {
Route::get('/', [DataAlternatifController::class, 'index'])->name('data_alternatif');
Route::get('/tambah', [DataAlternatifController::class, 'create'])->name('create_alternatif');
Route::post('/store', [DataAlternatifController::class, 'store'])->name('store_alternatif');
Route::get('/edit{id}', [DataAlternatifController::class, 'edit'])->name('edit_alternatif');
Route::post('/update{id}', [DataAlternatifController::class, 'update'])->name('update_alternatif');
Route::delete('/hapus/{id}', [DataAlternatifController::class, 'destroy'])->name('destroy_alternatif');
});
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');
Route::get('/tambah', [UsersController::class, 'create'])->name('create_pengguna'); Route::get('/tambah', [UsersController::class, 'create'])->name('create_pengguna');
@ -59,10 +79,7 @@ Route::middleware(['auth'])->group(function () {
Route::get('/dashboard', function () { Route::get('/dashboard', function () {
return view('pages.dashboard'); return view('pages.dashboard');
})->name('dashboard'); })->name('dashboard');
Route::prefix('data-alternatif')->group(function () {
Route::get('/', [DataAlternatifController::class, 'index'])->name('data_alternatif');
Route::get('/tambah', [DataAlternatifController::class, 'create'])->name('create_alternatif');
});
Route::prefix('penilaian-alternatif')->group(function () { Route::prefix('penilaian-alternatif')->group(function () {
Route::get('/', [PenilaianAlternatifController::class, 'index'])->name('penilaian_alternatif'); Route::get('/', [PenilaianAlternatifController::class, 'index'])->name('penilaian_alternatif');
Route::get('/tambah', [PenilaianAlternatifController::class, 'create'])->name('create_penilaian'); Route::get('/tambah', [PenilaianAlternatifController::class, 'create'])->name('create_penilaian');
@ -77,5 +94,4 @@ Route::middleware(['auth'])->group(function () {
Route::get('/hapus-hasil', function () { Route::get('/hapus-hasil', function () {
return view('pages.dashboard'); return view('pages.dashboard');
})->name('hapus_hasil'); })->name('hapus_hasil');
}); });