updated supply chain contract controller
This commit is contained in:
@@ -129,28 +129,32 @@ class SupplyChainController extends Controller
|
|||||||
'contractId' => 'required',
|
'contractId' => 'required',
|
||||||
]);
|
]);
|
||||||
|
|
||||||
|
$contractId = $request->contractId;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Remove the supply chain contract if it's yours.
|
* Remove the supply chain contract if it's yours.
|
||||||
*/
|
*/
|
||||||
$count = SupplyChainContract::where([
|
$count = SupplyChainContract::where([
|
||||||
'issuer_id' => auth()->user()->getId(),
|
'issuer_id' => auth()->user()->getId(),
|
||||||
'contract_id' => $request->contractId,
|
'contract_id' => $contractId,
|
||||||
])->count();
|
])->count();
|
||||||
|
|
||||||
if($count > 0) {
|
if($count > 0) {
|
||||||
//Remove the supply chain contract
|
//Remove the supply chain contract
|
||||||
SupplyChainContract::where([
|
SupplyChainContract::where([
|
||||||
'issuer_id' => auth()->user()->getId(),
|
'issuer_id' => auth()->user()->getId(),
|
||||||
'contract_id' => $request->contractId,
|
'contract_id' => $contractId,
|
||||||
])->delete();
|
])->delete();
|
||||||
}
|
|
||||||
|
|
||||||
//Remove all the bids from the supply chain contract
|
//Remove all bids associated with the supply chain contract
|
||||||
SupplyChainBid::where([
|
SupplyChainBid::where([
|
||||||
'contract_id' => $request->contractId,
|
'contract_id' => $contractId,
|
||||||
])->delete();
|
])->delete();
|
||||||
|
|
||||||
return redirect('/supplychain/dashboard')->with('success', 'Supply Chain Contract deleted successfully.');
|
return redirect('/supplychain/dashboard')->with('success', 'Supply Chain Contract deleted successfully.');
|
||||||
|
} else {
|
||||||
|
return redirect('/supplychain/dashboard')->with('error', 'Unable to delete supply chain contract.');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -201,8 +205,41 @@ class SupplyChainController extends Controller
|
|||||||
* Display supply chain contract bids page
|
* Display supply chain contract bids page
|
||||||
*/
|
*/
|
||||||
public function displaySupplyChainBids() {
|
public function displaySupplyChainBids() {
|
||||||
|
//Display bids for the user on a page
|
||||||
|
$bids = array();
|
||||||
|
|
||||||
return view('supplychain.dashboard.bids');
|
$bidsCount = SupplyChain::where([
|
||||||
|
'entity_id' => auth()->user()->getId(),
|
||||||
|
'bid_type' => 'pending',
|
||||||
|
])->count();
|
||||||
|
|
||||||
|
$myBids = SupplyChainBid::where([
|
||||||
|
'entity_id' => auth()->user()->getId(),
|
||||||
|
'bid_type' => 'pending',
|
||||||
|
])->get();
|
||||||
|
|
||||||
|
foreach($myBids as $bid) {
|
||||||
|
//Declare the temporary array
|
||||||
|
$temp = array();
|
||||||
|
|
||||||
|
//Get the contract information for the bid
|
||||||
|
$contract = SupplChainContract::where([
|
||||||
|
'contract_id' => $bid->contract_id,
|
||||||
|
])->get();
|
||||||
|
|
||||||
|
$temp['bid_id'] = $bid->bid_id;
|
||||||
|
$temp['contract_id'] = $bid->contract_id;
|
||||||
|
$temp['issuer_name'] = $contract->issuer_name;
|
||||||
|
$temp['title'] = $contract->title;
|
||||||
|
$temp['end_date'] = $contract->end_date;
|
||||||
|
$temp['body'] = $contract->body;
|
||||||
|
$temp['bid_amount'] = $bid->bid_amount;
|
||||||
|
|
||||||
|
array_push($bids, $temp);
|
||||||
|
}
|
||||||
|
|
||||||
|
return view('supplychain.dashboard.bids')->with('bids', $bids)
|
||||||
|
->with('bidsCount', $bidsCount);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -273,8 +310,24 @@ class SupplyChainController extends Controller
|
|||||||
if(isset($request->notes)) {
|
if(isset($request->notes)) {
|
||||||
$bid->bid_note = $request->notes;
|
$bid->bid_note = $request->notes;
|
||||||
}
|
}
|
||||||
|
$bid->bid_type = 'pending';
|
||||||
$bid->save();
|
$bid->save();
|
||||||
|
|
||||||
|
//Update the database entry for the supply chain contract bid number
|
||||||
|
$numBids = SupplyChainContract::where([
|
||||||
|
'contract_id' => $request->contract_id,
|
||||||
|
])->select('bids')->get();
|
||||||
|
|
||||||
|
//Increase the number of bids by 1
|
||||||
|
$numBids++;
|
||||||
|
|
||||||
|
//Update the database
|
||||||
|
SupplyChainContract::where([
|
||||||
|
'contract_id' => $request->contract_id,
|
||||||
|
])->update([
|
||||||
|
'bids' => $numBids,
|
||||||
|
]);
|
||||||
|
|
||||||
return redirect('/supplychain/dashboard')->with('success', 'Bid succesfully entered into the contract.');
|
return redirect('/supplychain/dashboard')->with('success', 'Bid succesfully entered into the contract.');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -409,10 +462,26 @@ class SupplyChainController extends Controller
|
|||||||
* Tidy up datatables from a completed supply chain contract
|
* Tidy up datatables from a completed supply chain contract
|
||||||
*/
|
*/
|
||||||
private function TidySupplyChainContract($contract, $bid) {
|
private function TidySupplyChainContract($contract, $bid) {
|
||||||
|
//Set the contract as finished
|
||||||
SupplyChainContract::where([
|
SupplyChainContract::where([
|
||||||
'contract_id' => $contract->contract_id,
|
'contract_id' => $contract->contract_id,
|
||||||
])->update([
|
])->update([
|
||||||
'state' => 'finished',
|
'state' => 'finished',
|
||||||
]);
|
]);
|
||||||
|
|
||||||
|
//Set all of the bids as not_accepted as default
|
||||||
|
SupplyChainBid::where([
|
||||||
|
'contract_id' => $contract->contract_id,
|
||||||
|
])->update([
|
||||||
|
'bid_type' => 'not_accepted',
|
||||||
|
]);
|
||||||
|
|
||||||
|
//Set the correct bid as accepted
|
||||||
|
SupplyChainBid::where([
|
||||||
|
'contract_id' => $contract->contract_id,
|
||||||
|
'bid_id' => $bid->bid_id,
|
||||||
|
])->update([
|
||||||
|
'bid_type' => 'accepted',
|
||||||
|
]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,14 +8,17 @@
|
|||||||
<div class="container">
|
<div class="container">
|
||||||
<div class="row justify-content-center">
|
<div class="row justify-content-center">
|
||||||
<div class="col-md-8">
|
<div class="col-md-8">
|
||||||
@if(count($bids) > 0)
|
@if(count($bidsCount) > 0)
|
||||||
@foreach($bids as $bid)
|
@foreach($bids as $bid)
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
|
Contract Id: {{ $bid['contract_id'] }}<br>
|
||||||
|
Contract Title: {{ $bid['title'] }}<br>
|
||||||
|
Issuer: {{ $bid['issuer_name'] }}<br>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
|
Bid Id: {{ $bid['bid_id'] }}<br>
|
||||||
|
Bid Amount: {{ $bid['bid_amount'] }}<br>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@endforeach
|
@endforeach
|
||||||
|
|||||||
Reference in New Issue
Block a user