Exemplo n.º 1
0
 /**
  * @test
  */
 public function get_current_cost_for_material()
 {
     $material = Material::find(13);
     $this->assertInstanceOf(Material::class, $material);
     $cost_logs_last = $material->costLogs->sortByDesc('mat_cost_date')->first()->mat_cost_cost_kg;
     $cost = $material->current_cost->mat_cost_cost_kg;
     $this->assertEquals($cost_logs_last, $cost, "Current Cost");
 }
Exemplo n.º 2
0
 /**
  * Creates data provider instance with search query applied
  *
  * @param array $params
  *
  * @return ActiveDataProvider
  */
 public function search($params)
 {
     $query = Material::find();
     // add conditions that should always apply here
     $dataProvider = new ActiveDataProvider(['query' => $query]);
     $this->load($params);
     if (!$this->validate()) {
         // uncomment the following line if you do not want to return any records when validation fails
         // $query->where('0=1');
         return $dataProvider;
     }
     // grid filtering conditions
     $query->andFilterWhere(['id' => $this->id]);
     $query->andFilterWhere(['like', 'name', $this->name])->andFilterWhere(['like', 'description', $this->description]);
     return $dataProvider;
 }
Exemplo n.º 3
0
 /**
  * @test
  */
 public function material_edit_complete_form_submit_correct()
 {
     $this->visit('/material/13/edit')->see('MTech MIS Login Screen');
     $user = User::find(46);
     $this->actingAs($user)->visit('/material/13/edit')->type("cOPP20", 'material_description')->type("Clear BOPP20", 'material_fronthouse_name')->type("20", 'material_micron')->select("8", 'material_supplier_id_fk')->select("7", 'material_grade_id_fk')->select("KG", 'material_uom')->type("14", 'material_lead_time')->select("1", 'material_buy')->type("Test notes", 'material_notes')->press("Save")->assertSessionHas('flash');
     $this->assertResponseOk();
     $material = Material::find(13);
     $this->assertEquals('cOPP20', $material->material_description);
     $this->assertEquals('Clear BOPP20', $material->material_fronthouse_name);
     $this->assertEquals('20', $material->material_micron);
     $this->assertEquals('8', $material->material_supplier_id_fk);
     $this->assertEquals('7', $material->material_grade_id_fk);
     $this->assertEquals('KG', $material->material_uom);
     $this->assertEquals('14', $material->material_lead_time);
     $this->assertEquals('1', $material->material_buy);
     $this->assertEquals('Test notes', $material->material_notes);
 }
Exemplo n.º 4
0
 public function deliveryOrder($returpener_id)
 {
     $get = DoReturpener::where('returpener_id', $returpener_id);
     if ($get->count() == 0) {
         if (DoReturpener::count() == 0) {
             $numb = '001/JIU/' . romawi()[date('n')] . '/' . date('Y');
         } else {
             $last = DoReturpener::orderBy('dorp_id', 'DESC')->take(1)->pluck('dorp_no');
             $path = explode('/', $last);
             $preffix = '';
             $path[0]++;
             for ($x = 0; $x < 3 - strlen($path[0]); $x++) {
                 $preffix .= '0';
             }
             $numb = $preffix . $path[0] . '/JIU/' . romawi()[date('n')] . '/' . date('Y');
         }
         DoReturpener::create(['returpener_id' => $returpener_id, 'dorp_no' => $numb]);
     } else {
         $row = $get->first();
         $numb = $row->dorp_no;
     }
     #Update status to 'DO has been created'
     $get = Returpener::find($returpener_id);
     $get->returpener_status = 6;
     $get->save();
     #End
     #Reduce material's stock
     $mats = Returpeners::getMatData($returpener_id);
     foreach ($mats as $mat) {
         if ($mat->returpeners_is_reduced == 2) {
             #Reducing stock...
             $eachMat = Material::find($mat->mat_id);
             $eachMat->mat_stock_akhir = $eachMat->mat_stock_akhir - $mat->returpeners_jml;
             $eachMat->save();
             #End
             #Update is_reduced field
             $each = Returpeners::find($mat->returpeners_id);
             $each->returpeners_is_reduced = 1;
             $each->save();
             #End
         }
     }
     #End
     $data = ['asset' => new Assets(), 'title' => 'Print Retur Delivery Order', 'head' => Returpener::fetchHead($returpener_id), 'sub' => Returpeners::fetch($returpener_id), 'numb' => $numb];
     return view('printing.do', $data);
 }
Exemplo n.º 5
0
 public function acceptanceStore(Request $req)
 {
     $vals = ['po_id' => $_POST['po_id'], 'pener_date' => now(), 'userid_input' => Auth::user()->user_id, 'visibility' => 1];
     $pener = Pener::create($vals);
     foreach ($_POST['pos_id'] as $pos_id) {
         if (!empty($_POST['peners_jml_' . $pos_id])) {
             $vals = ['pener_id' => $pener->pener_id, 'pos_id' => $pos_id, 'peners_jml' => $_POST['peners_jml_' . $pos_id]];
             Peners::create($vals);
             if (!empty($_POST['mat_id_' . $pos_id])) {
                 $mat = MatModel::find($_POST['mat_id_' . $pos_id]);
                 $mat->mat_stock_akhir = $mat->mat_stock_akhir + $_POST['peners_jml_' . $pos_id];
                 $mat->save();
             }
         }
     }
     #Checking for update po_status
     $sub = Po_sub::fetchDetail($_POST['po_id']);
     $el = array();
     foreach ($sub as $row) {
         $diterima = countDiterima($row->pos_id);
         $rest = $row->pbs_jml - $diterima;
         if ($rest > 0) {
             array_push($el, 'open');
         }
     }
     if (!in_array('open', $el)) {
         $rec = Po::find($_POST['po_id']);
         $rec->po_status = 2;
         $rec->save();
     }
     #End of checking
     Session::flash('inserted', '<div class="info success">Penerimaan material berhasil diinput.</div>');
     return redirect('material/acceptance');
 }
 /**
  * Update the specified resource in storage.
  *
  * @param  Request  $status
  * @param  int  $id
  * @return Response
  */
 public function updateFiltered($id, Request $request)
 {
     if ($request->status == "approved") {
         $material = Material::find($id);
         $material->filtered = true;
         $material->save();
     } else {
         Material::destroy($id);
     }
 }
Exemplo n.º 7
0
 /**
  * update.
  *
  * @param int   $id
  * @param array $input
  */
 public function update($id, $input)
 {
     $model = $this->model->find($id);
     return $this->fillSavePost($model, $input);
 }
Exemplo n.º 8
0
 public function closingStockDo(Request $req)
 {
     $cs = Cs::create(['user_id' => $this->_user->user_id, 'cs_year' => $req->input('year')]);
     foreach (MatModel::fetchForClosing() as $row) {
         $vals = ['cs_id' => $cs->cs_id, 'mat_id' => $row->mat_id, 'mat_stock_awal' => $row->mat_stock_awal, 'mat_stock_akhir' => $row->mat_stock_akhir];
         Csm::create($vals);
         $mat = MatModel::find($row->mat_id);
         $mat->mat_stock_awal = $mat->mat_stock_akhir;
         $mat->save();
     }
     Session::flash('success', '<div class="info success">Closing Stok untuk tahun ' . $req->input('year') . ' berhasil dilakukan.</div>');
     return redirect('material/closingStock');
 }