|
|
@@ -5,9 +5,11 @@ namespace App\Http\Controllers;
|
|
5
|
5
|
use App\Http\Controllers\Controller;
|
|
6
|
6
|
use App\Http\Requests\TestTransaction\StoreTestTransactionRequest;
|
|
7
|
7
|
use App\Models\EntryTransaction;
|
|
|
8
|
+use App\Models\Member;
|
|
8
|
9
|
use App\Models\OutTransaction;
|
|
9
|
10
|
use App\Models\ParkingFee;
|
|
10
|
11
|
use App\Models\TypeVehicle;
|
|
|
12
|
+use App\Models\Vehicle;
|
|
11
|
13
|
use Carbon\Carbon;
|
|
12
|
14
|
use Illuminate\Http\Request;
|
|
13
|
15
|
use Illuminate\Support\Str;
|
|
|
@@ -77,13 +79,23 @@ class TestTransactionController extends Controller
|
|
77
|
79
|
public function store(StoreTestTransactionRequest $request)
|
|
78
|
80
|
{
|
|
79
|
81
|
if ($request->id === 2) {
|
|
80
|
|
- $entryTransactions = EntryTransaction::where('transaction_number', $request->entry_transaction_id)->first();
|
|
81
|
|
- $vehicleEntryTime = $entryTransactions->getRawOriginal('created_at');
|
|
82
|
|
- $longParkingPerHours = Carbon::parse($vehicleEntryTime)->floatDiffInRealHours(now());
|
|
|
82
|
+ // Check member or not
|
|
|
83
|
+ $memberId = Vehicle::where('plat_number', $request->plat_number)->first('member_id');
|
|
83
|
84
|
|
|
84
|
|
- $parkingFee = ParkingFee::get();
|
|
|
85
|
+ if ($memberId) {
|
|
|
86
|
+ // Check expired member or not
|
|
|
87
|
+ $expDate = $memberId->member->getRawOriginal('exp_date');
|
|
85
|
88
|
|
|
86
|
|
- return;
|
|
|
89
|
+ $exp = Carbon::parse($expDate)->greaterThanOrEqualTo(now());
|
|
|
90
|
+ } else {
|
|
|
91
|
+ $entryTransactions = EntryTransaction::where('transaction_number', $request->entry_transaction_id)->first();
|
|
|
92
|
+
|
|
|
93
|
+ $vehicleEntryTime = $entryTransactions->getRawOriginal('created_at');
|
|
|
94
|
+
|
|
|
95
|
+ $longParkingPerHours = Carbon::parse($vehicleEntryTime)->floatDiffInRealHours(now());
|
|
|
96
|
+
|
|
|
97
|
+ $parkingFee = ParkingFee::get();
|
|
|
98
|
+ }
|
|
87
|
99
|
} else {
|
|
88
|
100
|
EntryTransaction::create([
|
|
89
|
101
|
'transaction_number' => Str::uuid(),
|