فهرست منبع

Device_User添加字段1

tanghongbin 4 سال پیش
والد
کامیت
412a0faf79
2فایلهای تغییر یافته به همراه24 افزوده شده و 4 حذف شده
  1. 23 3
      Controller/UserController.py
  2. 1 1
      Model/models.py

+ 23 - 3
Controller/UserController.py

@@ -173,6 +173,8 @@ class registerView(TemplateView):
         password = request_dict.get('userPwd', None)
         authCode = request_dict.get('identifyingCode', None)
         language = request_dict.get('language', None)
+        unique = request_dict.get('unique', None)
+        self.delete_local_account(unique)
         response = ResponseObject(language)
         if username and password and authCode:
             # 过滤空格
@@ -286,6 +288,14 @@ class registerView(TemplateView):
         else:
             return response.json(109)
 
+    def delete_local_account(self, username):
+        user_qs = Device_User.objects.filter(username=username)
+        print(user_qs)
+        if user_qs.exists():
+            user: Device_User = user_qs[0]
+            if user.is_local:
+                user.delete()
+                Device_Info.objects.filter(userID__userID=user.userID).delete()
 
 # 登出
 class LogoutView(TemplateView):
@@ -998,6 +1008,8 @@ class v3registerView(TemplateView):
         password = request_dict.get('password', None)
         authcode = request_dict.get('authcode', None)
         lang = request_dict.get('lang', None)
+        unique = request_dict.get('unique', None)
+        self.delete_local_account(unique)
         response = ResponseObject(lang)
         # 解密
         try:
@@ -1150,6 +1162,14 @@ class v3registerView(TemplateView):
                 return response.json(10, '删除缓存验证码错误')
             return self.do_login(email_qs, response)
 
+    def delete_local_account(self, username):
+        user_qs = Device_User.objects.filter(username=username)
+        if user_qs.exists():
+            user: Device_User = user_qs[0]
+            if user.is_local:
+                user.delete()
+                Device_Info.objects.filter(userID__userID=user.userID).delete()
+
 
 # 重置密码
 # 忘记密码获取验证码v2
@@ -3491,7 +3511,7 @@ class LocalUserView(View):
             # 如果用户为绑定过则创建用户并进行登录返回token
             userID = CommonService.getUserID(μs=False, setOTAID=True)
             nickname = 'local_{num}'.format(num=CommonService.RandomStr(6, False))
-            return self.do_register(userID, nickname, response, app_bundle_id)
+            return self.do_register(userID, username, nickname, response, app_bundle_id)
 
     # 登录
     def do_login(self, user_qs, response):
@@ -3529,13 +3549,13 @@ class LocalUserView(View):
         user_qs.update(last_login=now_time, online=True)
         return response.json(0, res)
 
-    def do_register(self, userID, nickname, response, appBundleId):
+    def do_register(self, userID, username, nickname, response, appBundleId):
         data_valid = DataValid()
         if data_valid.name_validate(userID) is not True:
             return response.json(105)
         try:
             Device_User.objects.create(
-                username=userID,
+                username=username,
                 NickName=nickname,
                 password=make_password('123456'),
                 userID=userID,

+ 1 - 1
Model/models.py

@@ -289,7 +289,7 @@ class Equipment_Info(models.Model):
     alarm = models.CharField(blank=True, max_length=256, verbose_name=u'报警信息')
     eventTime = models.CharField(blank=True, default='', max_length=16, verbose_name=u'设备报警时间')
     receiveTime = models.CharField(blank=True, default='', max_length=16, verbose_name=u'接收到报警时间')
-    userID_id = models.CharField(default='',  db_index=True,blank=True, max_length=32, verbose_name=u'用户ID')
+    userID_id = models.CharField(default='',  db_index=True, blank=True, max_length=32, verbose_name=u'用户ID')
     is_st = models.SmallIntegerField(default=0, verbose_name='是否截图')  # 0 否,1 是图,2,视频
     message_id = models.CharField(max_length=32, default='', verbose_name='第三方推送服务器返回的id')
     push_type = models.SmallIntegerField(default=0, verbose_name='第三方推送服务器标志。0:APNS推送,1:谷歌推送,2:极光推送')