One Hat Cyber Team
Your IP :
3.23.128.248
Server IP :
104.21.96.1
Server :
Linux agrigation-prod 5.15.0-67-generic #74-Ubuntu SMP Wed Feb 22 14:14:39 UTC 2023 x86_64
Server Software :
nginx/1.24.0
PHP Version :
7.4.33
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
home
/
forge
/
app.gftag.com
/
app
/
Http
/
Controllers
/
Edit File:
PurchaseOrderItemController.php
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Models\PurchaseOrderItem; use Illuminate\Support\Facades\DB; use App\Services\TransactionService; use Illuminate\Support\Facades\View; use App\Services\OrganisationService; class PurchaseOrderItemController extends Controller { public function PoiView(Request $request){ $organisationService = new OrganisationService(); $org_id = $organisationService->getOrganisationByUser(); if (View::exists('intransit.index')) { $pois = PurchaseOrderItem::with('purchaseOrder')->where('organisation_id', $org_id)->get(); return view('intransit.index', ['pois' => $pois]); } } public function createSale(Request $request){ if (View::exists('intransit.create')) { return view('intransit.create'); } } public function acceptPoi($id){ if (View::exists('intransit.accept')) { $transit = PurchaseOrderItem::where('id', $id)->first(); return view('intransit.accept', ['transit' => $transit]); } } public function update(Request $request){ $validated = $request->validate([ 'transitid' => 'required', 'received_yesno' => 'required', 'received_stock' => 'required', 'supplierid' => 'required', 'received_date' => 'required', 'comment' => 'required', 'itemid' => 'required', 'negative_stock' => 'required', ]); DB::beginTransaction(); try { // update the existing data $poi = PurchaseOrderItem::find($request->transitid); $poi->item_id = $request->itemid; $poi->quantity = $request->received_stock; $poi->status = "confirmed"; $poi->comments = $request->comment; $poi->save(); // update it on items table with creating duplicate if there is change in actual recieved if(!empty($request->negative_stock)){ // create a new purchase order item PurchaseOrderItem::create([ "purchase_order_id" => $poi->purchase_order_id, "organisation_id" => $poi->organisation_id, "item_id" => $poi->item_id, "quantity" => (int)$request->negative_stock, "status" => "pending" ]); } //update it on transaction table $transaction = new TransactionService(); $transaction->updateDailyTransaction( $poi->organisation_id, "transit", $poi->item_id, $request->received_stock, date('Y-m-d', strtotime($request->received_date)) ); $transaction_id = $transaction->createNewTransactionEntry( $poi->organisation_id, "transit", $poi->item_id, $request->received_stock, uniqid(), 'supplier', 'organisation', date('Y-m-d', strtotime($request->received_date)), get_class($poi), $poi->id ); if(!$transaction_id) { DB::rollback(); return redirect()->back()->with('message', 'Failed Receiving the items !'); } DB::commit(); }catch(\Exception $e) { DB::rollback(); return redirect()->back()->with('message', 'Failed Receiving the items !'); } return redirect('intransit')->with('message', 'Items Accepted successfully'); } }
Simpan