Anons79 Mini Shell

Directory : /home/aplikasiposinfo/www/gosepakat.id/app/Http/Controllers/
Upload File :
Current File : /home/aplikasiposinfo/www/gosepakat.id/app/Http/Controllers/InputDataController.php

<?php

namespace App\Http\Controllers;

use App\Models\AksesAplikasi;
use App\Models\Input_data;
use App\Models\Instansi;
use App\Models\Master_input;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\File;
use Illuminate\Support\Facades\Storage;
use Throwable;

class InputDataController extends Controller
{
    public function index_input(string $id, string $user)
    {
        $data['title'] = "Input Data";
        $data['akses'] = AksesAplikasi::first();
        $data['id'] = $id;
        $data['instansi'] = Instansi::where('user_id', $user)->first();
        $data['judul'] = Master_input::select('uraian')->findOrFail($id);
        $data['inputs'] = Input_data::where('master_input_id', $id)->where('user_id', $user)->paginate(10);

        return view('input_data.lihat_data.index', $data);
    }

    public function index()
    {
        //
    }

    public function create()
    {
        //
    }

    public function create_input(string $id)
    {
        $data['title'] = "Tambah Input Data";
        $data['master_input_id'] = $id;
        $data['judul'] = Master_input::select('uraian')->findOrFail($id);
        return view('input_data.lihat_data.tambah', $data);
    }

    public function store(Request $request)
    {
        // $rules = [
        //     'aspek' => 'required',
        //     'nama_dokumen' => 'required',
        //     'deskripsi' => 'required',
        //     'dokumen_terlampir' => 'required',
        //     // 'upload_dokumen' => 'required|file|max:2024',
        //     'link_dokumen' => 'required',
        //     'kelengkapan' => 'required',
        // ];
        try {
            // dd($request);
            // if ($request->check_upload == "file") {
            //     $rules['upload_dokumen'] = 'required|file|max:2024';
            // } else {
            //     $rules['link_dokumen'] = 'required';
            // }
            // $validate = $request->validate($rules);

            // $validate['master_input_id'] = $request->master_input_id;
            // if ($request->check_upload == "file") {
            //     $filePath = "/storage/" . $request->upload_dokumen->store('dokumen/input-data/kelengkapan', 'public');
            //     // $filePath = Storage::disk('public')->put('/file/input-data/kelengkapan', $request->file('upload_dokumen'), 'public');
            //     $validate['upload_dokumen'] = $filePath;
            //     $validate['check_upload'] = 0;
            // } else {
            //     $validate['check_upload'] = 1;
            // }

            $validate['upload_dokumen'] = $request->link_dokumen;

            $request->validate([
                'aspek' => 'required',
                'kelengkapan' => 'required',
            ], [
                'aspek.required' => 'Aspek Wajib diisi!',
                'kelengkapan.required' => 'Kelengkapan Wajib diisi!',
            ]);

            $input_data = Input_data::create([
                'aspek' => $request->aspek,
                'dokumen_terlampir' => $request->dokumen_terlampir,
                'keterangan' => $request->keterangan ?? '-',
                'kategori' => $request->kategori ?? null,
                'kelengkapan' => $request->kelengkapan,
                'master_input_id' => $request->master_input_id,
                'user_id' => Auth::user()->id,
            ]);

            $check = Input_data::find($input_data->id);
            if ($check->aspek == null || $check->dokumen_terlampir == null || $check->keterangan == null) {
                $check->kelengkapan = "Tidak Ada";
                $check->save();
            }

            $data['Master_input'] = Master_input::find($request->master_input_id);
            $data['inputs'] = Input_data::where('master_input_id', $request->master_input_id)->where('kelengkapan', 'Tidak Ada')->count();

            if ($data['inputs'] > 0) {
                $data['Master_input']->status = "Tidak Ada";
            } else {
                $data['Master_input']->status = "Ada";
            }
            $data['Master_input']->save();

            // Input_data::create($validate);
            return redirect("/input-data/lihat-data/$request->master_input_id/" . Auth::user()->id)->with('success', 'Berhasil menambahkan data input');
        } catch (Throwable $th) {
            return dd($th->getMessage());
        }
    }

    public function show(Input_data $input_datum)
    {
        //
    }

    public function edit(Input_data $input_datum) {}

    public function edit_input(Input_data $input_datum, string $id)
    {
        // $data['title'] = 'Edit Input Data';
        $data['master_input_id'] = $id;
        $data['input'] = $input_datum;
        return response()->json([
            'data' => $data['input'],
        ]);
        // return view('input_data.lihat_data.edit', $data);
    }

    public function update(Request $request, $id)
    {
        // Input_data 
        // $input_datum
        // $rules = [
        //     // 'aspek' => 'required',
        //     // 'nama_dokumen' => 'required',
        //     'keterangan' => 'required',
        //     'dokumen_terlampir' => 'required',
        //     // 'upload_dokumen' => 'file|max:2024',
        //     // 'link_dokumen' => 'required',
        //     'kelengkapan' => 'required',
        // ];
        $rules = [];

        // if ($request->check_upload == "file") {
        //     $rules['upload_dokumen'] = 'file|max:2024';
        // } else {
        //     $rules['link_dokumen'] = 'required';
        // }

        $validate = $request->validate($rules);

        // if ($request->file('upload_dokumen')) {
        //     Storage::disk('public')->delete($input_datum->upload_dokumen);
        //     $filePath = Storage::disk('public')->put('file/input-data/kelengkapan', $request->file('upload_dokumen'), 'public');
        //     $validate['upload_dokumen'] = $filePath;
        // }

        // if ($request->check_upload == "file") {
        //     if ($request->file('upload_dokumen')) {
        //         if (File::exists(public_path() . $input_datum->upload_dokumen)) {
        //             File::delete(public_path() . $input_datum->upload_dokumen);
        //         }
        //         $filePath = "/storage/" . $request->upload_dokumen->store('dokumen/input-data/kelengkapan', 'public');
        //         // $filePath = Storage::disk('public')->put('/file/input-data/kelengkapan', $request->file('upload_dokumen'), 'public');
        //         $validate['upload_dokumen'] = $filePath;
        //         $validate['check_upload'] = 0;
        //     }
        // } else {
        //     if (File::exists(public_path() . $input_datum->upload_dokumen)) {
        //         File::delete(public_path() . $input_datum->upload_dokumen);
        //     }
        // }
        // $rules = [
        //     // 'aspek' => 'required',
        //     'kelengkapan' => 'required',
        // ];

        $input_datum = Input_data::find($id);
        // if ($request->aspek != $input_datum->aspek) {
        //     $rules['aspek'] = 'required';
        // }

        // $request->validate($rules, [
        //     'aspek.required' => 'Aspek Wajib diisi!',
        //     // 'aspek.unique' => 'Aspek telah dipakai!',
        //     'kelengkapan.required' => 'Kelengkapan Wajib diisi!',
        // ]);

        $input_data = Input_data::where('id', $id)->update([
            // 'aspek' => $request->aspek,
            'dokumen_terlampir' => ($request->dokumen_terlampir == "null") ? "" : $request->dokumen_terlampir,
            'keterangan' => ($request->keterangan == "null") ? "" : $request->keterangan,
            'kelengkapan' => $request->kelengkapan,
        ]);

        $input = Input_data::find($id);

        $data['inputs'] = Input_data::where('master_input_id', $input->master_input_id)->where('kelengkapan', 'Tidak Ada')->count();
        $a = $input->aspek;
        \App\Helpers\LogActivity::addToLog('Mengedit Input Data : ' . $a);

        $data['Master_input'] = Master_input::find($input->master_input_id);
        if ($data['inputs'] > 0) {
            $data['Master_input']->status = "Tidak Ada";
        } else {
            $data['Master_input']->status = "Ada";
        }
        $data['Master_input']->save();

        $check = Input_data::find($id);
        // if($check->aspek == null || $check->aspek == "null" || $check->dokumen_terlampir == null || $check->dokumen_terlampir == "null" || $check->keterangan == null || $check->keterangan == "null") {
        //     $check->kelengkapan = "Tidak Ada";
        //     $check-> save();
        // }

        return response()->json([
            'message' => 'Data Berhasil Diubah!',
            'data' => $check,
        ]);

        // $validate['upload_dokumen'] = $request->link_dokumen;
        // $validate['check_upload'] = 1;

        // $input_datum->update($validate);
        // return redirect("/input-data/lihat-data/$request->master_input_id")->with('success', 'Berhasil edit data input');
    }

    public function destroy(Input_data $input_datum)
    {
        // Storage::disk('public')->delete($input_datum->upload_dokumen);
        // if($input_datum->upload_dokumen && $input_datum->check_upload == "0"){
        //     if(File::exists(public_path().$input_datum->upload_dokumen)) {
        //         File::delete(public_path().$input_datum->upload_dokumen);
        //     }
        // }
        $input_datum->delete();
        $data['Master_input'] = Master_input::find($input_datum->master_input_id);
        $data['inputs'] = Input_data::where('master_input_id', $input_datum->master_input_id)->count();
        if ($data['inputs'] > 0) {
            $data['Master_input']->status = "Ada";
        } else {
            $data['Master_input']->status = "Tidak Ada";
        }
        $data['Master_input']->save();
        return redirect()->back()->with('success', "Berhasil hapus data input");
    }
}

Anons79 File Manager Version 1.0, Coded By Anons79
Email: [email protected]