Anons79 Mini Shell

Directory : /home/aplikasiposinfo/www/paraduta.fixmate.id/app/Http/Controllers/
Upload File :
Current File : /home/aplikasiposinfo/www/paraduta.fixmate.id/app/Http/Controllers/PesanActionGlobalController.php

<?php

namespace App\Http\Controllers;

use App\Models\PesanActionGlobal;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Log;
use Illuminate\Validation\Rule;

class PesanActionGlobalController extends Controller
{
    public function index()
    {
        $datas = PesanActionGlobal::where('model_name',request()->model_name)->paginate(10);


        return view('pesan_action_global.index', compact('datas'));
    }
    public function create()
    {

        return view('pesan_action_global.create');
    }
    public function store(Request $request)
    {

        DB::beginTransaction();
        try {
            $request->validate(
                [
                    'isi_pesan' => 'required',
                    'status' => 'required|unique:pesan_action_globals',
                    // 'nota' => 'required',
                ]
            );
            PesanActionGlobal::create([
                'model_name' => $request->model_name ?? null,
                'model_id' => $request->model_id ?? null,
                'isi_pesan' => $request->isi_pesan,
                'status' => $request->status,
                'nota' => $request->nota ?? 0,
            ]);

            DB::commit();
            return redirect()->route('pesan_action_global.index',['model_name'=>$request->model_name])->with('success', "Pesan Berhasil ditambah");
        } catch (\Throwable $th) {
            DB::rollback();
            Log::error($th);
            return redirect()->back()->with('error', $th->getMessage())->withInput($request->all());
        }
    }
    public function edit(String $id)
    {
        $data = PesanActionGlobal::find($id);
        $datas =
            [
                'data' => $data
            ];
        return view('pesan_action_global.edit', $datas);
    }
    public function update(String $id, Request $request)
    {


        DB::beginTransaction();
        try {
            $request->validate(
                [
                    'isi_pesan' => 'required',
                    'status' => [
                        'required',
                        Rule::unique('pesan_action_globals')->ignore($id),
                    ],
                    // 'nota' => 'required',
                ]
            );
            $data = PesanActionGlobal::find($id);

            $data->update([
                'model_name' => $request->model_name ?? null,
                'model_id' => $request->model_id ?? null,
                'isi_pesan' => $request->isi_pesan,
                'status' => $request->status,
                'nota' => $request->nota ?? 0,
            ]);

            DB::commit();
            return redirect()->route('pesan_action_global.index',['model_name'=>$request->model_name])->with('success', "Pesan Berhasil ditambah");
        } catch (\Throwable $th) {
            DB::rollback();
            Log::error($th);
            return redirect()->back()->with('error', $th->getMessage())->withInput($request->all());
        }
    }
    public function destroy(string $id)
    {
        DB::beginTransaction();
        try {
            $pesan = PesanActionGlobal::find($id);

            $pesan->delete();
            DB::commit();
            return redirect()->route('pesan_action_global.index',['model_name'=>request()->model_name])->with('success', 'Pesan berhasil Dihapus');
        } catch (\Throwable $th) {
            DB::rollback();
            Log::error($th);
            return redirect()->back()->with('error', $th->getMessage());
        }
    }
}

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