Showing
4 changed files
with
21 additions
and
60 deletions
api/migrations/0001_initial.py
deleted
100644 → 0
1 | -# Generated by Django 3.1.2 on 2020-11-16 14:19 | ||
2 | - | ||
3 | -from django.db import migrations, models | ||
4 | -import django.utils.timezone | ||
5 | - | ||
6 | - | ||
7 | -class Migration(migrations.Migration): | ||
8 | - | ||
9 | - initial = True | ||
10 | - | ||
11 | - dependencies = [ | ||
12 | - ] | ||
13 | - | ||
14 | - operations = [ | ||
15 | - migrations.CreateModel( | ||
16 | - name='Device', | ||
17 | - fields=[ | ||
18 | - ('device_id', models.AutoField(primary_key=True, serialize=False)), | ||
19 | - ('rfid_id', models.CharField(max_length=255)), | ||
20 | - ('created', models.DateTimeField(default=django.utils.timezone.now)), | ||
21 | - ], | ||
22 | - ), | ||
23 | - migrations.CreateModel( | ||
24 | - name='Door', | ||
25 | - fields=[ | ||
26 | - ('door_id', models.CharField(max_length=255, primary_key=True, serialize=False)), | ||
27 | - ], | ||
28 | - ), | ||
29 | - migrations.CreateModel( | ||
30 | - name='Lock', | ||
31 | - fields=[ | ||
32 | - ('id', models.IntegerField(primary_key=True, serialize=False)), | ||
33 | - ('state', models.BooleanField(default=True)), | ||
34 | - ], | ||
35 | - ), | ||
36 | - migrations.CreateModel( | ||
37 | - name='Record', | ||
38 | - fields=[ | ||
39 | - ('id', models.IntegerField(primary_key=True, serialize=False)), | ||
40 | - ('recording', models.BooleanField(default=True)), | ||
41 | - ], | ||
42 | - ), | ||
43 | - migrations.CreateModel( | ||
44 | - name='RemoteHistory', | ||
45 | - fields=[ | ||
46 | - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), | ||
47 | - ('device_name', models.CharField(max_length=255)), | ||
48 | - ('ctrtime', models.DateTimeField(default=django.utils.timezone.now)), | ||
49 | - ], | ||
50 | - ), | ||
51 | - migrations.CreateModel( | ||
52 | - name='Video', | ||
53 | - fields=[ | ||
54 | - ('vid_name', models.CharField(max_length=255, primary_key=True, serialize=False)), | ||
55 | - ('created', models.DateTimeField(default=django.utils.timezone.now)), | ||
56 | - ], | ||
57 | - ), | ||
58 | - ] |
1 | from django.db import models | 1 | from django.db import models |
2 | from django.conf import settings | 2 | from django.conf import settings |
3 | from django.utils import timezone | 3 | from django.utils import timezone |
4 | +from django.contrib.auth.models import User | ||
4 | 5 | ||
5 | # Create your models here. | 6 | # Create your models here. |
6 | class Door(models.Model) : | 7 | class Door(models.Model) : | ... | ... |
... | @@ -5,15 +5,18 @@ from django.http import HttpResponse | ... | @@ -5,15 +5,18 @@ from django.http import HttpResponse |
5 | from django.core import serializers | 5 | from django.core import serializers |
6 | from django.core.exceptions import FieldDoesNotExist, ObjectDoesNotExist | 6 | from django.core.exceptions import FieldDoesNotExist, ObjectDoesNotExist |
7 | from django.shortcuts import render | 7 | from django.shortcuts import render |
8 | +from django.contrib.auth.models import User | ||
8 | 9 | ||
9 | from api.videorecord import record | 10 | from api.videorecord import record |
10 | from api.models import Video, Device, RemoteHistory, Lock, Record, Door | 11 | from api.models import Video, Device, RemoteHistory, Lock, Record, Door |
11 | -from api.serializers import VideoSerializer, DeviceSerializer, RemoteHistorySerializer, RecordSerializer | 12 | +from api.serializers import VideoSerializer, DeviceSerializer, RemoteHistorySerializer, RecordSerializer, DoorSerializer |
12 | 13 | ||
13 | from rest_framework import status | 14 | from rest_framework import status |
14 | from rest_framework.views import APIView | 15 | from rest_framework.views import APIView |
15 | from rest_framework.request import Request | 16 | from rest_framework.request import Request |
16 | from rest_framework.response import Response | 17 | from rest_framework.response import Response |
18 | +from rest_framework.authtoken.models import Token | ||
19 | + | ||
17 | """ | 20 | """ |
18 | from boto3.session import Session | 21 | from boto3.session import Session |
19 | from src.settings import AWS_REGION | 22 | from src.settings import AWS_REGION |
... | @@ -23,6 +26,7 @@ from src.settings import S3_ACCESS_KEY_ID, S3_SECRET_ACCESS_KEY, S3_STORAGE_BUCK | ... | @@ -23,6 +26,7 @@ from src.settings import S3_ACCESS_KEY_ID, S3_SECRET_ACCESS_KEY, S3_STORAGE_BUCK |
23 | import time | 26 | import time |
24 | from datetime import datetime, timedelta | 27 | from datetime import datetime, timedelta |
25 | import json | 28 | import json |
29 | +import uuid | ||
26 | # Create your views here. | 30 | # Create your views here. |
27 | 31 | ||
28 | #로그인 및 토큰 반환 | 32 | #로그인 및 토큰 반환 |
... | @@ -34,9 +38,13 @@ class Login(APIView) : | ... | @@ -34,9 +38,13 @@ class Login(APIView) : |
34 | raise FieldDoesNotExist | 38 | raise FieldDoesNotExist |
35 | queryset = Door.objects.filter(door_id = request_id) # door_id 유효성 검색 | 39 | queryset = Door.objects.filter(door_id = request_id) # door_id 유효성 검색 |
36 | if queryset.exists() :# 유효할 때 | 40 | if queryset.exists() :# 유효할 때 |
41 | + userid = uuid.uuid4() | ||
42 | + pw = uuid.uuid4() | ||
43 | + user = User.objects.create_user(username=str(userid), password=str(pw)) | ||
44 | + token = Token.objects.create(user=user) | ||
37 | res = { | 45 | res = { |
38 | 'is_available' : True, | 46 | 'is_available' : True, |
39 | - 'access_token' : '토큰' # 토큰 도입 후 수정 필요 | 47 | + 'access_token' : token.key |
40 | } | 48 | } |
41 | else : | 49 | else : |
42 | res = { | 50 | res = { |
... | @@ -50,6 +58,15 @@ class Login(APIView) : | ... | @@ -50,6 +58,15 @@ class Login(APIView) : |
50 | 'error' : "FieldDoesNotExist ", | 58 | 'error' : "FieldDoesNotExist ", |
51 | 'date' : datetime.now() | 59 | 'date' : datetime.now() |
52 | }, status = status.HTTP_400_BAD_REQUEST) | 60 | }, status = status.HTTP_400_BAD_REQUEST) |
61 | + | ||
62 | +''' | ||
63 | + def post(self, request, format = None) : | ||
64 | + queryset = Door.objects.create(door_id = 12345) | ||
65 | + print('냐냐') | ||
66 | + return Response({ | ||
67 | + 'msg' : 'doorid값 삽입 완료', | ||
68 | + }) | ||
69 | +''' | ||
53 | 70 | ||
54 | #기기 관련 api | 71 | #기기 관련 api |
55 | class Devices(APIView) : | 72 | class Devices(APIView) : | ... | ... |
-
Please register or login to post a comment