Anons79 Mini Shell

Directory : /home/aplikasiposinfo/www/demo-inventory.aplikasipos.info/app/Http/Controllers/
Upload File :
Current File : /home/aplikasiposinfo/www/demo-inventory.aplikasipos.info/app/Http/Controllers/BarangController.php

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Barang;
use App\Kategori;

use App\Unit;
use App\Satuan;
use Auth;
use Session;
class BarangController extends Controller
{
    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function index(Request $request)
    {   

        
        
        // $db = Barang::all();
        // $kode = '';
        // $nama = '';
        // foreach ($db as $d) {
        // 	if(strlen($d->qrcode) != 7){
        // 		Barang::findOrFail($d->id)->update(['qrcode'=>$this->randomcode()]);
        // 	}
        // }
        // die();
        if(Auth::user()->cek_akses('Barang','View',Auth::user()->id) != 1){
            return view('error.denied');
        }
        if(isset($request->q)){
            $q = $request->q;
        }
        else {
            $q = '';
        }
        $tables = Barang::WhereHas('unit',function ($query) use ($q){
            
            $query->where('kode', 'like', '%'.$q.'%');
        })->orWhereHas('kategori',function ($query) use ($q){

            $query->where('nama', 'like', '%'.$q.'%');
        })->orWhere('nama','like',"%$q%")->orWhere('kode','like',"%$q%")->orWhere('qrcode','like',"%$q%")->orWhere('halaman','like',"%$q%")->orWhere('indeks','like',"%$q%")->orderBy('id','DESC')->paginate(20);
        
        return view('barang.index',compact('tables')); 
    }

    /**
     * Show the form for creating a new resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function create()
    {   
        if(Auth::user()->cek_akses('Barang','Add',Auth::user()->id) != 1){
            return view('error.denied');
        }
        $kategori = Kategori::all();
        $satuan = Satuan::all();
       
        $unit = Unit::all();
        return view('barang.create',compact('kategori','satuan','unit'));
    }

    /**
     * Store a newly created resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response
     */
    public function store(Request $request)
    {   
        if(Auth::user()->cek_akses('Barang','Add',Auth::user()->id) != 1){
            return view('error.denied');
        }
        $gambar  = '';
        if ($request->hasFile('userfile')) {
            $this->validate($request,[
                'userfile'=>'mimes:png,jpg,JPG,jpeg',
               
            ]);
            $gambar = 'gambar-barang-'.str_replace(" ", "-", $request->kode.'-'.$request->nama).'.png';
            $request->file('userfile')->storeAs('images/barang',$gambar,'public_img');
        }
        
        $this->validate($request,[
            'unit_id'=>'required',
            'kategori_id'=>'required',
            'satuan_id'=>'required',
            'nama'=>'required',
            
        ]);

       
        $harganya = str_replace(',', '',$request->harga);
        $harganya = str_replace('.', '',$harganya);
        $data = Barang::create([
            'qrcode'=>$this->randomcode(),
            'kode'=>$request->kode,
            'nama'=>$request->nama,
            'unit_id'=>$request->unit_id,
            
            'kategori_id'=>$request->kategori_id,
            'harga'=>$harganya,
            'halaman'=>$request->halaman,
            'indeks'=>$request->indeks,
            
            'satuan_id'=>$request->satuan_id,
            'keterangan'=>$request->keterangan,
            'gambar'=>$gambar,
            'pakai_sn'=>$request->pakai_sn,
         
        ]);
        \App\AktivitasUser::create(['user_id'=>Auth::user()->id,'aktivitas'=>'Menambah data barang dengan nama '.$data->nama]);
        return redirect('item');
    }

    /**
     * Display the specified resource.
     *
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    public function show($id)
    {
        
    }

    /**
     * Show the form for editing the specified resource.
     *
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    public function edit($id)
    {   
        if(Auth::user()->cek_akses('Barang','Edit',Auth::user()->id) != 1){
            return view('error.denied');
        }
        $kategori = Kategori::all();
        $satuan = Satuan::all();
        
        $unit = Unit::all();
        $barang = Barang::findOrFail($id);
        return view('barang.edit',compact('kategori','satuan','unit','barang'));
    }

    /**
     * Update the specified resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    public function update(Request $request, $id)
    {   
        if(Auth::user()->cek_akses('Barang','Edit',Auth::user()->id) != 1){
            return view('error.denied');
        }
        $i = Barang::findOrFail($id);
        $gambar  = $i->gambar;
        if ($request->hasFile('userfile')) {
            $gambar = 'gambar-barang-'.str_replace(" ", "-", $request->kode.'-'.$request->nama).'.png';
            $request->file('userfile')->storeAs('images/barang',$gambar,'public_img');
        }
        
        $this->validate($request,[
            'unit_id'=>'required',
            'kategori_id'=>'required',
            'satuan_id'=>'required',
            'nama'=>'required',
            
        ]);
        $harganya = str_replace(',', '',$request->harga);
        $harganya = str_replace('.', '',$harganya);
        Barang::findOrFail($id)->update([
            'kode'=>$request->kode,
            'nama'=>$request->nama,
            'unit_id'=>$request->unit_id,
            
            'kategori_id'=>$request->kategori_id,
            'harga'=>$harganya,
            'halaman'=>$request->halaman,
            'indeks'=>$request->indeks,
            
            'satuan_id'=>$request->satuan_id,
            'keterangan'=>$request->keterangan,
            'gambar'=>$gambar,
            'pakai_sn'=>$request->pakai_sn,
            
        ]);
        \App\AktivitasUser::create(['user_id'=>Auth::user()->id,'aktivitas'=>'Edit data barang dengan nama '.$i->nama]);

        return redirect('item?page='.$request->page);
    }

    /**
     * Remove the specified resource from storage.
     *
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    public function destroy($id)
    {   
        if(Auth::user()->cek_akses('Barang','Delete',Auth::user()->id) != 1){
            return view('error.denied');
        }
        $data = Barang::findOrFail($id);
        try {
            
            $data->delete();
           
        } catch (\Illuminate\Database\QueryException $e) {
            if($e->errorInfo[1] == 1451){
                Session::flash(
                    "flash_notif",[
                        "level"   => "dismissible alert-danger",
                        "massage" => "Data Tidak Bisa Dihapus. Data Masih Digunakan"
                ]);   
                return redirect()->back();
            }
            
            
        }
        \App\AktivitasUser::create(['user_id'=>Auth::user()->id,'aktivitas'=>'Mengahpus data barang dengan nama '.$data->nama]);
        
        
        return redirect('item');
    }
}

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