public function scopeAlldepartement($query, $kode, $status, $departement = 0, $deadline = 0, $surat = 0) { $akses = \Me::accessGudang(); $spb = $query->join('data_departemen', 'data_departemen.id_departemen', '=', 'data_spb.id_departemen')->join('data_karyawan', 'data_karyawan.id_karyawan', '=', 'data_spb.id_pemohon'); if (!empty($deadline)) { $spb->where('data_spb.deadline', $deadline); } if (!empty($departement)) { $spb->where('data_spb.id_departemen', $departement); } if (!empty($kode)) { $spb->where('data_spb.no_spb', $kode); } if (!empty($status) && !is_array($status)) { $spb->where('data_spb.status', $status); } else { if (is_array($status)) { $spb->whereIn('data_spb.status', $status); } else { $spb->whereIn('data_spb.status', [1, 2, 3]); } } if (!empty($surat)) { $spb->where('data_spb.tipe', $surat); } else { $spb->whereIn('data_spb.tipe', $akses); } $spb->orderby('data_spb.status', 'asc')->orderby('data_spb.id_spb', 'asc')->orderby('data_spb.id_acc', 'desc')->select('data_spb.*', 'data_departemen.nm_departemen', 'data_karyawan.nm_depan', 'data_karyawan.nm_belakang'); }
public function scopeListprq($query, $req = [], $status = 1) { $akses = \Me::accessGudang(); $prq = $query->join('data_karyawan AS a', 'a.id_karyawan', '=', 'data_prq.id_pemohon')->whereIn('data_prq.tipe', $akses); if (count($req) > 0) { if (!empty($req['no_prq'])) { $prq->where('data_prq.no_prq', $req['no_prq']); } if (!empty($req['tanggal'])) { $prq->where(\DB::raw('DATE(`data_prq`.`created_at`)'), $req['tanggal']); } if (!empty($req['deadline'])) { $prq->where('data_prq.target', $req['deadline']); } if (!empty($req['titipan']) && $req['titipan'] == 'true') { $prq->where('data_prq.titipan', '>', 0); } } if (!empty($status)) { if (is_array($status)) { $prq->whereIn('data_prq.status', $status); } else { $prq->where('data_prq.status', $status); } } $prq->select('data_prq.*', 'a.nm_depan', 'a.nm_belakang'); return $prq; }
public function scopeListskb($query, $req = []) { $akses = \Me::accessGudang(); $skb = $query->join('data_spb', 'data_spb.id_spb', '=', 'data_skb.id_spb')->join('data_departemen', 'data_departemen.id_departemen', '=', 'data_skb.id_departemen')->join('data_karyawan', 'data_karyawan.id_karyawan', '=', 'data_skb.id_petugas')->whereIn('data_skb.tipe', $akses); if (count($req) > 0) { if (!empty($req['no_spb'])) { $skb->where('data_spb.no_spb', $req['no_spb']); } if (!empty($req['no_skb'])) { $skb->where('data_skb.no_skb', $req['no_skb']); } if (!empty($req['dep'])) { $skb->where('data_skb.id_departemen', $req['dep']); } if (!empty($req['tanggal'])) { $skb->where(\DB::raw('DATE(data_skb.created_at)'), $req['tanggal']); } } $skb->select('data_skb.*', 'data_spb.id_spb', 'data_spb.no_spb', 'data_departemen.nm_departemen', 'data_karyawan.nm_depan', 'data_karyawan.nm_belakang'); }
public function getProcess($id) { $spb = data_spb::join('data_karyawan AS a', 'a.id_karyawan', '=', 'data_spb.id_pemohon')->leftJoin('data_karyawan AS b', 'b.id_karyawan', '=', 'data_spb.id_acc')->join('data_departemen', 'data_departemen.id_departemen', '=', 'data_spb.id_departemen')->where('data_spb.id_spb', $id)->select('a.nm_depan', 'a.nm_belakang', 'b.nm_depan AS acc_depan', 'b.nm_belakang AS acc_belakang', 'data_departemen.nm_departemen', 'data_spb.*')->first(); $akses = \Me::accessGudang(); if (!in_array($spb->tipe, $akses)) { return redirect('/skb/spb')->withNotif(['label' => 'danger', 'err' => 'Maaf, Tidak ada akses untuk anda!']); } if ($spb->status > 2 || $spb->id_acc == 0) { return redirect('/skb/spb'); } $items = data_spb_item::byspb($id)->get(); return view('Pengadaan.SKB.ProcessSPB', ['spb' => $spb, 'items' => $items, 'satuan' => ref_satuan::all()]); }
public function getAdditemprq($tipe = 0) { $akses = \Me::accessGudang(); if (empty($tipe) || $tipe > 2 || !is_numeric($tipe)) { return redirect('/prq')->withNotif(['label' => 'danger', 'err' => 'Kesalahan, Silahkan buat pengajuan baru!']); } if (!in_array($tipe, $akses)) { return redirect('/prq')->withNotif(['label' => 'danger', 'err' => 'Maaf Bukan domain Anda!']); } if (count($this->ids) < 1) { return redirect('/prq/select')->withNotif(['label' => 'warning', 'err' => 'Maaf, Anda belum menentukan item Barang yang akan diproses.<br /> Silahkan pilih beberapa item di bawah ini']); } $items = data_barang::join('ref_satuan', 'ref_satuan.id_satuan', '=', 'data_barang.id_satuan')->whereIn('id_barang', $this->ids)->where('data_barang.tipe', $tipe)->select('data_barang.*', 'ref_satuan.nm_satuan')->get(); if (count($items) == 0) { return redirect('/prq')->withNotif(['label' => 'danger', 'err' => 'Kesalahan, Silahkan buat pengajuan baru!']); } $prqs = data_prq::where('status', 1)->where('tipe', $tipe)->get(); $ids = []; foreach ($items as $id) { $ids[] = $id->id_barang; } $ids = json_encode($ids); return view('Pengadaan.PRQ.AddItemPRQ', ['items' => $items, 'prqs' => $prqs, 'ids' => $ids, 'tipe' => $tipe]); }
/** * Edit barang * @access Admin Logistik * @author @hexters */ public function getUpdate($id) { $item = data_barang::find($id); if ($item == null) { return redirect('/logistik')->withNotif(['label' => 'danger', 'err' => 'Maaf, Tidak ditemukan !']); } if (!in_array($item->tipe, \Me::accessGudang())) { return redirect('/logistik')->withNotif(['label' => 'danger', 'err' => 'Maaf Bukan domain anda!']); } $user = data_karyawan::find($item->id_karyawan); $details = data_barang_detail::where('id_barang', $item->id_barang)->get(); $konversi = ref_konversi_satuan::where('ref_konversi_satuan.id_barang', $id)->whereNotIn('ref_konversi_satuan.id_satuan_max', [$item->id_satuan])->get(); return view('Pengadaan.Update', ['kategoris' => ref_kategori::all(), 'satuan' => ref_satuan::all(), 'item' => $item, 'oleh' => $user->nm_depan . ' ' . $user->nm_belakang, 'details' => $details, 'klasifikasi' => ref_klasifikasi::all(), 'konversi' => $konversi]); }
public function scopeSrcprq($query, array $req, $ids, $tipe) { $akses = \Me::accessGudang(); $items = $query->join('ref_satuan', 'ref_satuan.id_satuan', '=', 'data_barang.id_satuan')->where('data_barang.tipe', $tipe); if (!empty($req['kode'])) { $items->where('data_barang.kode', 'LIKE', '%' . $req['kode'] . '%'); } if (!empty($req['item'])) { $items->where('data_barang.nm_barang', 'LIKE', '%' . $req['item'] . '%'); } if (!empty($req['kat'])) { $items->where('data_barang.id_kategori', $req['kat']); } if (count($ids) > 0) { $items->whereNotIn('data_barang.id_barang', $ids); } $items->select('data_barang.*', 'ref_satuan.nm_satuan', \DB::raw('(data_barang.in - data_barang.out) AS sisa'))->orderby('sisa', 'asc'); }