ソースを参照

接口增加参数

yf_ymm 5 年 前
コミット
1feb3db705
2 ファイル変更74 行追加66 行削除
  1. 1 1
      apps/Equipment/views.py
  2. 73 65
      apps/Home/views.py

+ 1 - 1
apps/Equipment/views.py

@@ -3624,7 +3624,7 @@ class Alarm_Record(ListView):
         for i in alarm_list:
             dat.append({"equip_id":i.equip_id_id,"logs":i.logs,"ekey":i.ekey,"upl_time":i.upl_time.strftime('%Y-%m-%d %H:%M:%S')})
         nums = len(dat)
-        data = dat[(10*(page-1)):(page*10)]
+        dat = dat[(10*(page-1)):(page*10)]
         data = {"dat":dat,"nums":nums}
         data = json.dumps(data)
         return HttpResponse(data)

+ 73 - 65
apps/Home/views.py

@@ -21,13 +21,15 @@ import time
 import json
 import base64
 import redis
+import random
 from django.core.cache import cache
 import os
 # from configure import verification_code
-
+import re
 from apps.AppInfo.models import Equip, Equip_type, MyUser, QXZdata, QXZstatus, QXZdata_New, JKdata, Article, QXZstatus_New, QXZswitchdata, QXZswitchstatus, CKArticle, GardenManage, Video_data,\
     Product, Pick_Pub, FarmList, Hotel_Info, GardenArea, Sightsee_Info,Hotel_Info
-
+from qcloudsms_py import SmsSingleSender
+from qcloudsms_py.httpclient import HTTPError
 
 from django.utils.decorators import method_decorator
 
@@ -343,63 +345,71 @@ class User_Check(ListView):
             print(000)
             return HttpResponse("00000")
         
-        
+
+
+# 短信应用 SDK AppID
+appid = 1400227496  # SDK AppID 以1400开头
+# 短信应用 SDK AppKey
+appkey = "c9aba961bd30072f1e1b9272077abaea"
+#签名
+sms_sign = "云飞科技"  # NOTE: 签名参数使用的是`签名内容`,而不是`签名ID`。这里的签名"腾讯云"只是示例,真实的签名需要在短信控制台中申请
 
 
 #发送验证码
 #1验证码不正确,2两次密码不一致4用户不存在请注册3手机号不正确 0重置密码成功
 class Prove_Code(ListView):
     def post(self, request):
-        phone = json.loads(request.body.decode())
+        # phone = json.loads(request.body.decode())
         # num = verification_code()
-        num = 123456
-        mobile = phone["mobile"]
-        pass_word1 = phone["password"]
-        pass_word2 = phone["password2"]
-        code = phone["code"]
-        ret = phone["ret"]
-        imei = phone["imei"]
-        try:
-            #提取imei
-            imei = json.loads(imei)
-            imeid = imei["uuid"]
-            if imeid.find(",") != -1:
-                imeid = imeid.split(",")[0]
-            else:
-                pass
-            print("imeid",imeid)
-        except Exception as e:
-            print(e)
-            data = 0
-            return HttpResponse(data)
+        # num = 123456
+        
+        num = ""
+        for i in range(6):
+            ch = chr(random.randrange(ord('0'), ord('9') + 1))
+            num += ch
+        
+        mobile = request.POST.get("mobile")
+        pass_word1 = request.POST.get("password")
+        pass_word2 = request.POST.get("password2")
+        code = request.POST.get("code")
+        ret = request.POST.get("ret")
+        # imei = request.POST.get("imei")
+        # try:
+        #     #提取imei
+        #     imei = json.loads(imei)
+        #     imeid = imei["uuid"]
+        #     if imeid.find(",") != -1:
+        #         imeid = imeid.split(",")[0]
+        #     else:
+        #         pass
+        #     print("imeid",imeid)
+        # except Exception as e:
+        #     print(e)
+        #     data = 0
+        #     return HttpResponse(data)
 
         mobile_pat = re.compile('^(13\d|14[5|7]|15\d|166|17\d|18\d)\d{8}$')
         res = re.search(mobile_pat, mobile)
         if ret == "see":
-            if res:
-                #手机号正确的情况下,校验该手机是否已经注册
-                if MyUser.objects.filter(imei=imeid).exists():
-                    data = 6
-                else:
-                    #校验手机号是否已经注册
-                    if MyUser.objects.filter(username=mobile).exists():
-                        data = 1
-                    else:
-                        #发送短信验证码
-                        template_id = 496156   # NOTE: 这里的模板 ID`7839`只是示例,真实的模板 ID 需要在短信控制台中申请
-                        # # 签名
-                        ssender = SmsSingleSender(appid, appkey)
-                        params = [num, "1"]
-                        #发送短信验证码
-                        result = ssender.send_with_param(86, mobile,
-                                                         template_id, params, sign=sms_sign, extend="", ext="")
-                        if result["result"] == 0:
-                            data = 0
-                            request.session["code"] = num
-                        else:
-                            data = 2
+
+            #校验手机号是否已经注册
+            if MyUser.objects.filter(username=mobile).exists():
+                data = 1
             else:
-                data = 3
+                #发送短信验证码
+                template_id = 496156   # NOTE: 这里的模板 ID`7839`只是示例,真实的模板 ID 需要在短信控制台中申请
+                # # 签名
+                ssender = SmsSingleSender(appid, appkey)
+                params = [num, "1"]
+                #发送短信验证码
+                result = ssender.send_with_param(86, mobile,
+                                                    template_id, params, sign=sms_sign, extend="", ext="")
+                if result["result"] == 0:
+                    data = 0
+                    request.session["code"] = num
+                else:
+                    data = 2
+
         elif ret == "land": #注册
             try:
                 #登陆校验 获取存到session 中的验证码,与用户输入的验证码比较,
@@ -409,25 +419,23 @@ class Prove_Code(ListView):
                 print(e)
                 data = 2
                 return HttpResponse(data)
-            if MyUser.objects.filter(imei=imeid).exists():
-                data = 6
+
+            if MyUser.objects.filter(username=mobile).exists():
+                data = 1
             else:
-                if MyUser.objects.filter(username=mobile).exists():
-                    data = 1
-                else:
-                    if code == num:
-                        #在验证码输入正确的情况下,校验输入的两次密码是否一致
-                        if pass_word1 == pass_word2:
-                            code = mobile[:5]
-                            user_remark = "勤劳的园丁"+ code
-                            MyUser.objects.create_user(
-                                username=mobile, password=pass_word1, imei=imeid,user_remark=user_remark)
-                            data = 5
-                            # 验证码存在session中,在用户注册成功后要删除设置的验证码,
-                            del request.session['code']
-                        else:
-                            data = 4
+                if code == num:
+                    #在验证码输入正确的情况下,校验输入的两次密码是否一致
+                    if pass_word1 == pass_word2:
+                        code = mobile[:5]
+                        user_remark = "勤劳的园丁"+ code
+                        MyUser.objects.create_user(
+                            username=mobile, password=pass_word1,user_remark=user_remark)
+                        data = 5
+                        # 验证码存在session中,在用户注册成功后要删除设置的验证码,
+                        del request.session['code']
                     else:
-                        data = 2
+                        data = 4
+                else:
+                    data = 2
         return HttpResponse(data)