Merge remote-tracking branch 'refs/remotes/origin/master'

This commit is contained in:
joseph le 2024-05-14 07:17:10 +00:00
commit eded2f98c1
2 changed files with 46 additions and 15 deletions

View File

@ -19,6 +19,9 @@ class TrackingController extends Controller
use HasFilterRequest; use HasFilterRequest;
use HasSearchRequest; use HasSearchRequest;
private $CHECK_IN = 'check in';
private $CHECK_OUT = 'check out';
public function __construct() public function __construct()
{ {
// Bỏ qua middleware 'checkApiToken' cho hàm 'myFunction' // Bỏ qua middleware 'checkApiToken' cho hàm 'myFunction'
@ -64,22 +67,48 @@ class TrackingController extends Controller
public function create(Request $request) public function create(Request $request)
{ {
$payload = $request->only(['name', 'time_string', 'status']); try {
$user = Admin::where('name', $payload['name'])->first(); $validatedData = $request->validate([
if($user){ 'name' => 'required',
$payload['user_id'] = $user->id; 'time_string' => 'required',
$tracking = Tracking::create($payload); 'status' => 'required',
return response()->json([
'data' => $tracking,
'status' => true
]); ]);
}
return response()->json([ $payload = $request->only(['name', 'time_string', 'status']);
'data' => "USER NOT EXIST", $user = Admin::where('name', $payload['name'])->first();
'status' => false if ($user) {
]); $payload['user_id'] = $user->id;
$latest = Tracking::where('name', $payload['name'])->latest()->first();
if($payload['status'] == $this->CHECK_IN || $payload['status'] == $this->CHECK_OUT){
if ($latest->status == $this->CHECK_IN) {
$payload['status'] = $this->CHECK_OUT;
}
if ($latest->status == $this->CHECK_OUT) {
$payload['status'] = $this->CHECK_IN;
}
$tracking = Tracking::create($payload);
return response()->json([
'data' => $tracking,
'status' => true
]);
}else{
return response()->json([
'data' => "STATUS INVALID",
'status' => false
]);
}
}
return response()->json([
'data' => "USER NOT EXIST",
'status' => false
]);
} catch (\Illuminate\Validation\ValidationException $e) {
return response()->json([
'data' => "IMPORT DATA FAIL",
'status' => false
], 422);
}
} }
public function update(DiscountRequest $request) public function update(DiscountRequest $request)

View File

@ -71,7 +71,9 @@ const Tracking = () => {
} }
useEffect(()=>{ useEffect(()=>{
getAllTracking() setInterval(()=>{
getAllTracking()
}, 3000)
}, []) }, [])
return ( return (
<div> <div>