dahee kim

change endpoint of device api

...@@ -7,7 +7,7 @@ class Door(models.Model) : ...@@ -7,7 +7,7 @@ class Door(models.Model) :
7 door_id = models.CharField(max_length = 255, primary_key = True) 7 door_id = models.CharField(max_length = 255, primary_key = True)
8 8
9 class Device(models.Model) : 9 class Device(models.Model) :
10 - rfid_id = models.CharField(max_length = 255, primary_key = True) 10 + device_id = models.CharField(max_length = 255, primary_key = True)
11 created = models.DateTimeField(default = timezone.now) 11 created = models.DateTimeField(default = timezone.now)
12 12
13 class Video(models.Model) : 13 class Video(models.Model) :
......
...@@ -52,10 +52,21 @@ class Login(APIView) : ...@@ -52,10 +52,21 @@ class Login(APIView) :
52 52
53 #기기 관련 api 53 #기기 관련 api
54 class Device(APIView) : 54 class Device(APIView) :
55 + # 기기 목록 조회
56 + def get(self, request, format = None) :
57 + queryset = Device.objects.all()
58 + serializer = DeviceSerializer(queryset, many = True)
59 + res = {
60 + 'deviceList': serializer.data
61 + }
62 + return Response(res, status = status.HTTP_200_OK)
63 +
64 +
55 # 기기 추가 65 # 기기 추가
56 - def post(self, request, format = None) : # request query에 device_id 포함되어있음 : api/device?device_id=12345 66 + def post(self, request, format = None) : # request body에 device_id 포함되어있음 
57 try : 67 try :
58 - request_id = request.POST.get('device_id', None) 68 + data = json.loads(request.body)
69 + request_id = data.get('device_id', None)
59 if request_id == 'None' : 70 if request_id == 'None' :
60 raise FieldDoesNotExist 71 raise FieldDoesNotExist
61 queryset = Device.objects.create(rfid_id = request_id) 72 queryset = Device.objects.create(rfid_id = request_id)
...@@ -66,19 +77,13 @@ class Device(APIView) : ...@@ -66,19 +77,13 @@ class Device(APIView) :
66 'date' : datetime.now() 77 'date' : datetime.now()
67 }, status = status.HTTP_400_BAD_REQUEST) 78 }, status = status.HTTP_400_BAD_REQUEST)
68 79
69 - # 기기 목록 조회 80 +
70 - def get(self, request, format = None) :
71 - queryset = Device.objects.all()
72 - serializer = DeviceSerializer(queryset, many = True)
73 - res = {
74 - 'deviceList': serializer.data
75 - }
76 - return Response(res, status = status.HTTP_200_OK)
77 81
78 # 기기 삭제 82 # 기기 삭제
79 - def delete(self, request, device_id, format = None): # request URI에 device_id 포함 83 + def delete(self, request, format = None): # request body에 device_id 포함
80 try : 84 try :
81 - request_id = device_id 85 + data = json.loads(request.body)
86 + request_id = data.get('device_id', None)
82 if request_id == 'None': 87 if request_id == 'None':
83 raise FieldDoesNotExist 88 raise FieldDoesNotExist
84 queryset = Device.objects.get(device_id=request_id) 89 queryset = Device.objects.get(device_id=request_id)
...@@ -90,16 +95,21 @@ class Device(APIView) : ...@@ -90,16 +95,21 @@ class Device(APIView) :
90 'date' : datetime.now() 95 'date' : datetime.now()
91 }, status = status.HTTP_400_BAD_REQUEST) 96 }, status = status.HTTP_400_BAD_REQUEST)
92 97
93 -# 원격 잠금 해제 기록 조회 98 +# 원격 잠금 해제
94 -class History(APIView): 99 +class Remote(APIView):
100 + # 원격 잠금 해제 기록 조회
95 def get(self, request, format = None) : 101 def get(self, request, format = None) :
102 + #models.py의 class History 사용.
96 queryset = History.objects.all() 103 queryset = History.objects.all()
97 serializer = HistorySerializer(queryset, many = True) 104 serializer = HistorySerializer(queryset, many = True)
98 res = { 105 res = {
99 - 'deviceList': serializer.data 106 + "remoteHistoryList": serializer.data
100 } 107 }
101 return Response(res, status = status.HTTP_200_OK) 108 return Response(res, status = status.HTTP_200_OK)
102 109
110 +
111 +
112 +
103 # 비디오 목록 조회 113 # 비디오 목록 조회
104 class VideoList(APIView) : 114 class VideoList(APIView) :
105 def get(self, request, format = None) : 115 def get(self, request, format = None) :
......