update logic tracking

This commit is contained in:
Joseph Le 2024-06-10 13:50:36 +07:00
parent d9032f6f29
commit 20e9cdbc18
2 changed files with 1753 additions and 2 deletions

View File

@ -6,6 +6,8 @@ use App\Http\Controllers\Controller;
use App\Traits\HasFilterRequest;
use App\Traits\HasOrderByRequest;
use App\Traits\HasSearchRequest;
use Carbon\Carbon;
use DateTime;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Storage;
use Modules\Admin\app\Models\Admin;
@ -79,9 +81,10 @@ class TrackingController extends Controller
$payload['created_at'] = $request->created_at;
}
$user = Admin::where('name', $payload['name'])->first();
$date = Carbon::create(new DateTime())->setTimezone(env('TIME_ZONE'))->format('Y-m-d');
if ($user) {
$payload['user_id'] = $user->id;
$latest = Tracking::where('name', $payload['name'])->latest()->first();
$latest = Tracking::where('name', $payload['name'])->whereDate('created_at', $date)->latest()->first();
if($latest){
if($payload['status'] == $this->CHECK_IN || $payload['status'] == $this->CHECK_OUT){
if ($latest->status == $this->CHECK_IN) {
@ -106,7 +109,7 @@ class TrackingController extends Controller
$tracking = Tracking::create($payload);
return response()->json([
'data' => $tracking,
'check_status' => $payload['status'],
'check_status' => $this->CHECK_IN,
'status' => true
]);
}

1748
composer-setup.php Normal file

File diff suppressed because it is too large Load Diff