This commit is contained in:
GreaterWMS
2024-06-16 12:51:41 +08:00
parent bd634c4e92
commit 8e3ebad299
6 changed files with 54 additions and 9 deletions
+2 -1
View File
@@ -10,7 +10,6 @@ BASE_DIR = Path(__file__).resolve().parent.parent
# SECURITY WARNING: keep the secret key used in production secret!
from django.core.management.utils import get_random_secret_key
get_random_secret_key()
SECRET_KEY = get_random_secret_key()
# SECURITY WARNING: don't run with debug turned on in production!
@@ -353,3 +352,5 @@ POST_THROTTLE = 500
PUT_THROTTLE = 500
PATCH_THROTTLE = 500
DELETE_THROTTLE = 500
JWT_TIME = 60 * 60 * 24 * 365 * 20
+1
View File
@@ -3,6 +3,7 @@ from . import views
urlpatterns = [
path(r'', views.ListViewSet.as_view({"get": "list", "post": "create"}), name="scanner"),
path(r'query/', views.GetJwtViewSet.as_view({"post": "create"}), name="getbar"),
path(r'list/<str:bar_code>/', views.SannerView.as_view({"get": "retrieve"})),
path(r'sanerpicking/' , views.SannerDnDetailPickingListView.as_view({"get":"list"}),name="sanerpicking"),
]
+44 -1
View File
@@ -141,4 +141,47 @@ class SannerView(viewsets.ModelViewSet):
def retrieve(self, request, *args, **kwargs):
instance = self.get_object()
serializer = self.get_serializer(instance)
return Response(serializer.data)
return Response(serializer.data)
class GetJwtViewSet(viewsets.ModelViewSet):
"""
list:
Response a data listall
"""
pagination_class = MyPageNumberPagination
filter_backends = [DjangoFilterBackend, OrderingFilter, ]
ordering_fields = ['id', "create_time", "update_time", ]
filter_class = Filter
def get_project(self):
try:
id = self.kwargs.get('pk')
return id
except:
return None
def get_queryset(self):
id = self.get_project()
if self.request.user:
if id is None:
return ListModel.objects.filter(openid=self.request.auth.openid)
else:
return ListModel.objects.filter(openid=self.request.auth.openid, id=id)
else:
return ListModel.objects.none()
def get_serializer_class(self):
if self.action in ['list']:
return serializers.ListGetSerializer
else:
return self.http_method_not_allowed(request=self.request)
def create(self, request, *args, **kwargs):
data = self.request.data
code_data = data.get('code', '')
if code_data:
results = parse_payload(code_data)
return Response(results)
else:
raise APIException({'detail': '请提供正确的二维码code'})
+1 -1
View File
@@ -1 +1 @@
http://127.0.0.1:8008
https://production.56yhz.com
+1 -1
View File
@@ -1 +1 @@
http://127.0.0.1:8008
https://production.56yhz.com
+5 -5
View File
@@ -11,7 +11,7 @@ def create_token(payload):
"type": "jwt",
"alg": "HS256"
}
payload['create_time'] = datetime.datetime.utcnow()
payload['exp'] = datetime.datetime.utcnow() + datetime.timedelta(seconds=settings.JWT_TIME)
result = jwt.encode(payload=payload, key=JWT_SALT, algorithm="HS256", headers=headers)
return result
@@ -23,9 +23,9 @@ def parse_payload(token):
result["status"] = True
result['data'] = verified_payload
except exceptions.ExpiredSignatureError:
result['error'] = 'Token Expired'
result['err'] = 'Token Expired'
except jwt.DecodeError:
result['error'] = 'Token Authentication Failed'
result['err'] = 'Token Authentication Failed'
except jwt.InvalidTokenError:
result['error'] = 'Illegal Token'
return result
result['err'] = 'Illegal Token'
return result