/** * Execute the job. * * @return void */ public function handle() { try { \DB::begintransaction(); $id_karyawan = \Me::data()->id_karyawan; $barang = data_barang::find($this->req['id']); $barang->update(['nm_barang' => $this->req['nm_barang'], 'id_kategori' => $this->req['id_kategori'], 'id_satuan' => $this->req['id_satuan'], 'stok_minimal' => $this->req['stok_minimal'], 'keterangan' => $this->req['keterangan'], 'tipe' => $this->req['tipe'], 'ppn' => $this->req['ppn'], 'harga_beli' => $this->req['harga_beli'], 'harga_jual' => $this->req['harga_jual'], 'id_klasifikasi' => $this->req['id_klasifikasi']]); data_barang_detail::where('id_barang', $this->req['id'])->delete(); if (isset($this->req['labels']) && count($this->req['labels']) > 0) { foreach ($this->req['labels'] as $i => $val) { if (strlen($val) > 0 && strlen($this->req['values'][$i]) > 0) { data_barang_detail::create(['id_barang' => $this->req['id'], 'label' => ucwords($val), 'nm_detail' => $this->req['values'][$i]]); } } } ref_konversi_satuan::where('id_barang', $this->req['id'])->delete(); ref_konversi_satuan::create(['id_barang' => $barang->id_barang, 'id_satuan_max' => $this->req['id_satuan'], 'id_satuan_min' => $this->req['id_satuan'], 'qty' => 1]); if (isset($this->req['koversi_satuan']) && count($this->req['koversi_satuan']) > 0) { foreach ($this->req['koversi_satuan'] as $i => $id_satuan) { if ($id_satuan > 0) { ref_konversi_satuan::create(['id_barang' => $barang->id_barang, 'id_satuan_max' => $id_satuan, 'id_satuan_min' => $this->req['id_satuan'], 'qty' => $this->req['koversi_qty'][$i]]); } } } if ($this->req['harga_beli'] != $this->req['last_harga']) { data_harga::create(['id_barang' => $barang->id_barang, 'harga' => $this->req['harga_beli'], 'keterangan' => 'Update harga dari ' . number_format($this->req['last_harga'], 0, ',', '.'), 'id_karyawan' => $id_karyawan, 'tipe' => 1]); } if ($this->req['harga_jual'] != $this->req['last_harga_jual']) { data_harga::create(['id_barang' => $barang->id_barang, 'harga' => $this->req['harga_jual'], 'keterangan' => 'Update harga dari ' . number_format($this->req['last_harga_jual'], 0, ',', '.'), 'id_karyawan' => $id_karyawan, 'tipe' => 2]); } // Pengkodean $tipe = $this->req['tipe'] == 1 ? 'O-' : 'B-'; $kat = ref_kategori::find($this->req['id_kategori']); $kats = $kat->alias . '-'; $urut = \Format::code($barang->id_barang); $jj = ''; if ($this->req['tipe'] == 1) { $kls = ref_klasifikasi::find($this->req['id_klasifikasi']); $jj = '-' . $kls->kode; } $kode = $tipe . $kats . $urut . $jj; $barang->kode = $kode; $barang->save(); \Loguser::create('Melakukan perubahan terhada data master gudang Kode. ' . $barang->kode); \DB::commit(); return ['label' => 'success', 'err' => $this->req['nm_barang'] . ' Berhasil diperbaharui']; } catch (\Exception $e) { \DB::rollback(); return ['label' => 'danger', 'err' => $e->getMessage()]; } }
/** * 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 postUpdate(Request $req) { ref_konversi_satuan::where('id', $req->id)->update(['id_satuan_max' => $req->satuan_max, 'id_satuan_min' => $req->satuan_min, 'qty' => $req->qty]); return redirect()->back()->withNotif(['label' => 'success', 'err' => 'Berhasil terupdate di Database']); }
public function convertSatuan($id, $idmax, $idmin) { $convert = ref_konversi_satuan::where('id_barang', $id)->where('id_satuan_max', $idmax)->where('id_satuan_min', $idmin)->select('qty'); if ($convert->count() > 0) { $c = $convert->first(); return $c->qty; } else { return 1; } }