|
@@ -9,8 +9,12 @@ from django.http import HttpResponse, JsonResponse
|
|
|
from django.views.decorators.http import require_http_methods
|
|
|
from django.views.decorators.csrf import csrf_exempt
|
|
|
from django.core import serializers # 序列化 QuerySet
|
|
|
-from admin_site.utils import setError, setSuccess, userPersonToDictionary, get_timestamp
|
|
|
+from admin_site.utils import setError, setSuccess, userPersonToDictionary, get_timestamp,user_to_dict
|
|
|
+from sick.views import add_sick
|
|
|
+from sick.models import Sick as Sick_models
|
|
|
+from rest_framework.parsers import JSONParser
|
|
|
import jwt
|
|
|
+import re
|
|
|
import pytz
|
|
|
|
|
|
# from rest_framework.views import APIView
|
|
@@ -21,69 +25,92 @@ def index(request):
|
|
|
|
|
|
|
|
|
@csrf_exempt
|
|
|
-@require_http_methods(["POST", "GET"])
|
|
|
+@require_http_methods(["POST"])
|
|
|
def info(request):
|
|
|
- if len(request.body) == 0:
|
|
|
- return HttpResponse(setError("请传入数据!"))
|
|
|
- body = json.loads(request.body)
|
|
|
- if body.get('id') == None:
|
|
|
+ # print(26, request.POST.get('token'))
|
|
|
+ if request.POST.get('token') == None:
|
|
|
return HttpResponse(setError("该用户不存在!"))
|
|
|
- user_info = userPersonToDictionary(User_models.objects.get(id=body.get('id')))
|
|
|
- print(user_info)
|
|
|
- return HttpResponse(setSuccess(data=user_info))
|
|
|
+ user_info = userPersonToDictionary(User_models.objects.get(token=request.POST.get('token')))
|
|
|
+ print(34343, user_info['id'])
|
|
|
+ if user_info['isSick'] == 'true':
|
|
|
+ sick_list_dic = Sick_models.objects.filter(user_id=user_info['id'])
|
|
|
+ sick_list = []
|
|
|
+ for key in sick_list_dic:
|
|
|
+ print(39, key.name)
|
|
|
+ sick_list.append(key.name)
|
|
|
+ print(42, sick_list)
|
|
|
+ if len(sick_list) > 0:
|
|
|
+ user_info.setdefault('sick', sick_list)
|
|
|
|
|
|
+ print('user_info', user_info)
|
|
|
+ return JsonResponse(setSuccess(data=user_info))
|
|
|
|
|
|
""" 用户登陆 """
|
|
|
-
|
|
|
-
|
|
|
@csrf_exempt
|
|
|
@require_http_methods(["POST"])
|
|
|
def login(request):
|
|
|
- body = json.loads(request.body)
|
|
|
+ body = request.POST
|
|
|
if body.get('email') == None:
|
|
|
return HttpResponse(setError("该用户不存在!"))
|
|
|
if body.get('password') == None:
|
|
|
return HttpResponse(setError("该用户不存在!"))
|
|
|
- user_info = userPersonToDictionary(User_models.objects.get(email=body.get('email'), password=body.get('password')))
|
|
|
+ user_info = User_models.objects.get(email=body.get('email'), password=body.get('password'))
|
|
|
name = body.get("name", None)
|
|
|
password = body.get("password", None)
|
|
|
now_time = timezone.localtime()
|
|
|
user_str = {'username': name, 'password': password, 'now_time': get_timestamp(now_time)}
|
|
|
token = jwt.encode(user_str, 'sercet', algorithm='HS256')
|
|
|
- print('user_info', user_info)
|
|
|
params = {
|
|
|
"token": token,
|
|
|
'token_exit_time': now_time
|
|
|
}
|
|
|
- print(56, params)
|
|
|
- User_models.objects.filter(id=user_info['id']).update(**params)
|
|
|
- return JsonResponse(setSuccess(data={**user_info,"token": token,}))
|
|
|
+ User_models.objects.filter(id=user_info.id).update(**params)
|
|
|
+ new_user_info = user_to_dict(user_info)
|
|
|
+ params = {**new_user_info,**params}
|
|
|
+ return JsonResponse(setSuccess(data=params))
|
|
|
|
|
|
|
|
|
@csrf_exempt
|
|
|
@require_http_methods(["POST"])
|
|
|
def register(request):
|
|
|
- body = json.loads(request.body)
|
|
|
- is_add = User_models.objects.all().filter(email=body.get('email', None))
|
|
|
+ body = request.POST
|
|
|
+ is_add = User_models.objects.all().filter(email=body.get('email'))
|
|
|
if len(is_add) > 0:
|
|
|
return JsonResponse(setError("当前邮箱已存在,添加失败"))
|
|
|
- user_add = User_models(name=body.get("name", None), nickname=body.get("nickname", None),
|
|
|
- address=body.get("address", None), email=body.get("email", None),
|
|
|
- password=body.get("password", None), type=body.get("type", None), sex=body.get("sex", None))
|
|
|
+ params = {
|
|
|
+ 'email': body.get('email'),
|
|
|
+ 'password': body.get('email'),
|
|
|
+ }
|
|
|
+ user_add = User_models(**params)
|
|
|
user_add.save()
|
|
|
- return JsonResponse(setSuccess(msg='添加成功', data=True))
|
|
|
+ return JsonResponse(setSuccess(msg='注册成功', data=True))
|
|
|
|
|
|
|
|
|
@csrf_exempt
|
|
|
@require_http_methods(["POST"])
|
|
|
def update(request):
|
|
|
- body = copy.deepcopy(json.loads(request.body))
|
|
|
- if body.get('id') == None or body['id'] == '':
|
|
|
+ body = request.POST.dict()
|
|
|
+ print(80808080, body)
|
|
|
+ if body['id'] == None or body['id'] == '':
|
|
|
return JsonResponse(setError("用户不存在"))
|
|
|
+ # if(body['id'])
|
|
|
+ new_body = {}
|
|
|
+ body.setdefault('is_sick', body['isSick'])
|
|
|
+ print(99, body['is_sick'])
|
|
|
+ del body['isSick']
|
|
|
+ if body['is_sick'] == 'true':
|
|
|
+ add_sick(request)
|
|
|
+ for field in body:
|
|
|
+ match = re.search(r'\bsick\[\b', field)
|
|
|
+ if match == None:
|
|
|
+ new_body[field] = body[field]
|
|
|
+ else:
|
|
|
+ print(107, body['is_sick'])
|
|
|
+ Sick_models.objects.filter(user_id=body.get('id')).delete()
|
|
|
+ new_body = body
|
|
|
# type
|
|
|
- print(body.get('type'))
|
|
|
- field_list = ['address', 'password', 'nickname', 'mobile']
|
|
|
- params = {}
|
|
|
+ # field_list = ['address', 'password', 'nickname', 'mobile']
|
|
|
+ # params = {}
|
|
|
# # 用户信息更新
|
|
|
# if (body.get('type') == 'Fl001'):
|
|
|
# # 如果字段中存在未完成订单,不允许修改地址,联系方式
|
|
@@ -105,6 +132,6 @@ def update(request):
|
|
|
# # setattr(params, key, body.get(key))
|
|
|
# if params.get(key) == None and body.get(key) != None and key != 'address':
|
|
|
# params.setdefault(key, body.get(key))
|
|
|
- Order_models.objects.filter(user_id=body['id'], status__lte=1)
|
|
|
- User_models.objects.filter(id=body['id']).update(**body,**params)
|
|
|
+ # Order_models.objects.filter(user_id=body['id'], status__lte=1)
|
|
|
+ User_models.objects.filter(id=body['id']).update(**new_body)
|
|
|
return JsonResponse(setSuccess(msg='更新成功', data=True))
|