jonathanjordan21 commited on
Commit
2a37790
·
verified ·
1 Parent(s): 1b31c06

Create api/router/va_lmd_hr.py

Browse files
Files changed (1) hide show
  1. api/router/va_lmd_hr.py +83 -0
api/router/va_lmd_hr.py ADDED
@@ -0,0 +1,83 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from fastapi import APIRouter
2
+ from uuid import uuid4
3
+ from datetime import datetime
4
+
5
+ from models.request_models import (
6
+ LeaveRequest,
7
+ PermitRequest,
8
+ PresenceRequest
9
+ )
10
+
11
+ from data.dummy_data import (
12
+ leave_db,
13
+ permit_db,
14
+ presence_db
15
+ )
16
+
17
+ router = APIRouter()
18
+
19
+
20
+ # =========================
21
+ # LEAVE
22
+ # =========================
23
+ @router.get("/leave")
24
+ def get_leave():
25
+ return leave_db
26
+
27
+
28
+ @router.post("/leave")
29
+ def create_leave(data: LeaveRequest):
30
+ item = {
31
+ "id": str(uuid4()),
32
+ **data.dict(),
33
+ "created_at": datetime.now()
34
+ }
35
+ leave_db.append(item)
36
+ return {
37
+ "message": "Leave created successfully",
38
+ "data": item
39
+ }
40
+
41
+
42
+ # =========================
43
+ # PERMIT
44
+ # =========================
45
+ @router.get("/permit")
46
+ def get_permit():
47
+ return permit_db
48
+
49
+
50
+ @router.post("/permit")
51
+ def create_permit(data: PermitRequest):
52
+ item = {
53
+ "id": str(uuid4()),
54
+ **data.dict(),
55
+ "created_at": datetime.now()
56
+ }
57
+ permit_db.append(item)
58
+ return {
59
+ "message": "Permit created successfully",
60
+ "data": item
61
+ }
62
+
63
+
64
+ # =========================
65
+ # PRESENCE
66
+ # =========================
67
+ @router.get("/presence")
68
+ def get_presence():
69
+ return presence_db
70
+
71
+
72
+ @router.post("/presence")
73
+ def create_presence(data: PresenceRequest):
74
+ item = {
75
+ "id": str(uuid4()),
76
+ **data.dict(),
77
+ "created_at": datetime.now()
78
+ }
79
+ presence_db.append(item)
80
+ return {
81
+ "message": "Presence created successfully",
82
+ "data": item
83
+ }