| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152 |
- <?php
- namespace App\Http\Controllers\Core;
- use App\Http\Controllers\Controller;
- use Illuminate\Support\Facades\Crypt;
- use Illuminate\Http\Request;
- use App\Model\Privillage\Role;
- use App\Model\Inspeksi\Inspeksi;
- use App\Model\ItemProgram;
- use App\Model\MasterOption;
- use App\Model\MasterOptionDetail;
- use Auth;
- use Session;
- class DefinisiSatuanController extends Controller
- {
- public function __construct()
- {
- $this->middleware('auth');
- $this->table = new MasterOption;
- }
- public function index () {
- $data = $this->table->get();
- return view('definisi-satuan/index',compact('data'));
- }
- public function detail($id) {
- $nama = Auth::user()->name;
- $data = $this->table->with('masterOptionDetail')->find($id);
- return view('definisi-satuan/detail', compact('nama', 'id','data'));
- }
- public function edit($id) {
- $nama = Auth::user()->name;
- $data = $this->table->with('masterOptionDetail')->find($id);
- return view('definisi-satuan/edit', compact('nama', 'id','data'));
- }
- public function add(Request $request) {
- $input = ItemProgram::INPUT_TYPE_VARIABLE;
- $nama = Auth::user()->name;
- return view('definisi-satuan/add', compact('nama','input'));
- }
- public function update($id,Request $request) {
- $query = $this->table->find($id);
- $query->label = $request->label;
-
- if($query->save()){
- $masterOptionDetailIds = [];
- if($request->has('uniqids') && $request->uniqids != ""){
- $uniqids = explode(",",$request->uniqids);
- foreach($uniqids as $row){
- $attribute = [];
- $attribute['value'] = $request->get('value_'.$row);
- $id = !empty($request->get('id_'.$row))?$request->get('id_'.$row):null;
-
- $qMasterOptionDetail = $query->masterOptionDetail()->updateOrCreate(['id'=>$id],$attribute);
- $masterOptionDetailIds[] = $qMasterOptionDetail->id;
- }
- }
-
- MasterOptionDetail::where('id_master_option',$query->id)->whereNotIn('id',$masterOptionDetailIds)->delete();
- if($query){
- Session::flash('info', $query->label);
- Session::flash('colors', 'green');
- Session::flash('icons', 'fas fa-clipboard-check');
- Session::flash('alert', 'Berhasil Menyimpan Data!');
- return redirect()->back();
- }else{
- Session::flash('info', $query->label);
- Session::flash('colors', 'red');
- Session::flash('icons', 'fas fa-times');
- Session::flash('alert', 'Gagal Menyimpan Data!');
- return redirect()->back();
- }
- }else{
- Session::flash('info', $query->label);
- Session::flash('colors', 'red');
- Session::flash('icons', 'fas fa-times');
- Session::flash('alert', 'Gagal Menyimpan Data!');
- return redirect()->back();
- }
- }
- public function create(Request $request){
- $query = $this->table;
- $query->label = $request->label;
-
- if($query->save()){
- if($request->has('uniqids') && $request->uniqids != ""){
- $uniqids = explode(",",$request->uniqids);
- foreach($uniqids as $row){
- $attribute = [];
- $attribute['value'] = $request->get('value_'.$row);
- $id = !empty($request->get('id_'.$row))?$request->get('id_'.$row):null;
-
- $qMasterOptionDetail = $query->masterOptionDetail()->updateOrCreate(['id'=>$id],$attribute);
- }
- }
- if($query){
- Session::flash('info', $query->label);
- Session::flash('colors', 'green');
- Session::flash('icons', 'fas fa-clipboard-check');
- Session::flash('alert', 'Berhasil Menyimpan Data!');
- return redirect('pengaturan/definisi-satuan/edit/'.$query->id);
- }else{
- Session::flash('info', $query->label);
- Session::flash('colors', 'red');
- Session::flash('icons', 'fas fa-times');
- Session::flash('alert', 'Gagal Menyimpan Data!');
- return redirect()->back();
- }
- }else{
- Session::flash('info', $query->label);
- Session::flash('colors', 'red');
- Session::flash('icons', 'fas fa-times');
- Session::flash('alert', 'Gagal Menyimpan Data!');
- return redirect()->back();
- }
- }
- public function delete($id, Request $request){
- $query = $this->table->find($id);
-
- if($query->delete()){
- Session::flash('info', 'Sukses');
- Session::flash('colors', 'green');
- Session::flash('icons', 'fas fa-clipboard-check');
- Session::flash('alert', 'Berhasil Menghapus Data!');
- return redirect()->back();
- }else{
- Session::flash('info', 'Gagal');
- Session::flash('colors', 'red');
- Session::flash('icons', 'fas fa-times');
- Session::flash('alert', 'Gagal Menghapus Data!');
- return redirect()->back();
- }
- }
- }
|