add data subkriteria
This commit is contained in:
parent
9075a6311a
commit
de05e8ac53
|
@ -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);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -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',
|
||||||
],[
|
],[
|
||||||
|
|
|
@ -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);
|
||||||
|
}
|
||||||
|
}
|
|
@ -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)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -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',
|
||||||
|
];
|
||||||
|
}
|
|
@ -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();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -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',
|
||||||
|
];
|
||||||
|
}
|
|
@ -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)
|
||||||
|
|
|
@ -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();
|
||||||
});
|
});
|
|
@ -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');
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -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
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -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>
|
||||||
|
|
|
@ -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>
|
||||||
|
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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');
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in New Issue