Explorar o código

完善应用锁和安全密码

ganzf hai 6 meses
pai
achega
547c0c6683

+ 1 - 9
ABtong/ABtong/ALLController/login/APPLockView.m

@@ -180,15 +180,7 @@
     NSDictionary * userInfo = [UDManager.shareInstance getDDManager:nkhttphost];
     
     [GDBManager.shareInstance replayAllData];//统一清除数据方法
-    
-//    [GDBManager.shareInstance delLocalmsglistTable:userid];
-//    [GDBManager.shareInstance delchatlistTable:^(NSArray * _Nullable array) {
-//        
-//    } fail:^(NSString * _Nullable error) {
-//        
-//    }];
-//    [GDBManager.shareInstance deleteDB];
-    //清空token
+
     
     //断开socket
     [[GWebSocket shareInstance] closeWebSocket];

+ 3 - 3
ABtong/ABtong/ALLController/login/serverIpinputV.xib

@@ -34,13 +34,13 @@
                             <rect key="frame" x="15" y="67" width="331" height="34"/>
                             <autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxY="YES"/>
                             <fontDescription key="fontDescription" type="system" pointSize="14"/>
-                            <textInputTraits key="textInputTraits"/>
+                            <textInputTraits key="textInputTraits" keyboardType="alphabet"/>
                         </textField>
                         <textField opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="248" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" borderStyle="roundedRect" placeholder="登录账号" textAlignment="natural" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="oQf-zz-kXV">
                             <rect key="frame" x="15" y="107" width="331" height="34"/>
                             <autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxY="YES"/>
                             <fontDescription key="fontDescription" type="system" pointSize="14"/>
-                            <textInputTraits key="textInputTraits"/>
+                            <textInputTraits key="textInputTraits" keyboardType="alphabet"/>
                         </textField>
                         <button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="z9i-EP-Jx9">
                             <rect key="frame" x="15" y="193" width="130" height="35"/>
@@ -68,7 +68,7 @@
                             <rect key="frame" x="14" y="149" width="331" height="34"/>
                             <autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxY="YES"/>
                             <fontDescription key="fontDescription" type="system" pointSize="14"/>
-                            <textInputTraits key="textInputTraits"/>
+                            <textInputTraits key="textInputTraits" keyboardType="alphabet" secureTextEntry="YES"/>
                         </textField>
                     </subviews>
                     <viewLayoutGuide key="safeArea" id="6bv-Zz-zwo"/>

+ 50 - 7
ABtong/ABtong/ALLController/mine/PersonalInfoController.m

@@ -137,15 +137,58 @@
         make.right.mas_equalTo(-20);
         make.top.mas_equalTo(self.genderTextfield.mas_bottom).offset(30);
     }];
-    
-    [self.avatarImageView sd_setImageWithURL:getURL(self.userInfo[@"avatar"]) placeholderImage:kImageMake(@"Avatar")];
-    self.nameTextfield.text = self.userInfo[@"username"];
-    self.signTextfield.text = self.userInfo[@"name"];
-    self.emailTextfield.text = self.userInfo[@"email"];
-    self.mobileTextfield.text = self.userInfo[@"mobile"];
-    self.genderTextfield.text =  [self.userInfo[@"sex"] isEqualToString:@"0"] ? @"男": @"女";
     _genderLbl.alpha = 0;
     _genderTextfield.alpha = 0;
+    [self getUserinfo];
+}
+
+
+-(void)getUserinfo{
+    NSString *token = [UDManager.shareInstance getSDManager:gkeytoken];
+    if([token isKindOfClass:[NSString class]]&&token.length>10){
+        [UserNetApi getUserinfo:^(int code, NSDictionary * res) {
+            NSLog(@"%d", code);
+            NSNumber *gcode=res[@"code"];
+            NSDictionary *data=res[@"data"];
+            NSLog(@"%@", res);
+            if([gcode intValue]!=200){
+                NSLog(@"%@",res[@"msg"]);
+                [MBProgressHUD showWithText:@"登录异常,请重新登录"];
+                return;
+            }
+            NSDictionary *ps = @{@"avatar": data[@"avatar"]?:@"",
+                                 @"deptId": data[@"deptId"]?:@"",
+                                 //@"domainId":data[@"domainId"],
+                                 @"email":data[@"email"]?:@"",
+                                 @"id":data[@"id"]?:@"",
+                                 @"mobile":data[@"mobile"]?:@"",
+                                 @"name":data[@"name"]?:@"",
+                                 //@"platformType":data[@"platformType"]?:@"",
+                                 //@"registrationId":data[@"registrationId"]?:@"",
+                                 @"sex":data[@"sex"]?:@"",
+                                 //@"tgbotAdmin":data[@"tgbotAdmin"],
+                                 //@"tgbotName":data[@"tgbotName"],
+                                 //@"tgbotTk":data[@"tgbotTk"]?:@"",
+                                 @"username":data[@"username"]?:@"",
+                                 //@"uuid":data[@"uuid"],
+                                 //@"voipTk":data[@"voipTk"]?:@""
+                                };
+            if([gcode intValue]==200){
+                NSLog(@"ps:%@",ps);
+                NSLog(@"-userInfo:%@",self.userInfo);
+                self.userInfo=[ps mutableCopy];
+                [self.avatarImageView sd_setImageWithURL:getURL(self.userInfo[@"avatar"]) placeholderImage:kImageMake(@"Avatar")];
+                self.nameTextfield.text = self.userInfo[@"username"];
+                self.signTextfield.text = self.userInfo[@"name"];
+                self.emailTextfield.text = self.userInfo[@"email"];
+                self.mobileTextfield.text = self.userInfo[@"mobile"];
+                self.genderTextfield.text =  [self.userInfo[@"sex"] isEqualToString:@"0"] ? @"男": @"女";
+            }
+            
+        } fail:^(NSError * _Nonnull error) {
+            NSLog(@"%@", error);
+        }];
+    }
 }
 
 

+ 5 - 14
ABtong/ABtong/AppDelegate.m

@@ -784,9 +784,6 @@
 -(void)onLogoutSucc{
     self.isLogin =false;
     
-//        [GDBManager.shareInstance delLocalmsglistTable:userid];
-//        [GDBManager.shareInstance delchatlistTable:nil fail:nil];
-//        [GDBManager.shareInstance deleteDB];
     [UDManager.shareInstance removeUDManager:gkeytoken];
     [UDManager.shareInstance removeUDManager:dkuserloginId];
     [UDManager.shareInstance removeUDManager:nkactuserInfo];
@@ -923,17 +920,11 @@
 -(void)openFMDB{
     [GDBManager.shareInstance createDatabase:^(NSArray * _Nullable array) {
         if(self.isLogin==true){
-            [GDBManager.shareInstance createLocalMSGtable:^(NSArray * _Nullable array) {
-            } fail:^(NSString * _Nullable error) {
-            }];
-            [GDBManager.shareInstance createChattable:^(NSArray * _Nullable array) {
-            } fail:^(NSString * _Nullable error) {
-            }];
-            [GDBManager.shareInstance createLastreadtimetable:^(NSArray * _Nullable array) {
-            } fail:^(NSString * _Nullable error) {
-            }];
-            [GDBManager.shareInstance createCallmsgTable];
-            [GDBManager.shareInstance createfirendsTable];
+            [GDBManager.shareInstance createLocalMSGtable:@""];
+            [GDBManager.shareInstance createChattable:@""];
+            [GDBManager.shareInstance createLastreadtimetable:@""];
+            [GDBManager.shareInstance createCallmsgTable:@""];
+            [GDBManager.shareInstance createfirendsTable:@""];
         }
         
         //服务器数据表

+ 6 - 6
ABtong/ABtong/Common/Network/GDBManager.h

@@ -34,7 +34,7 @@ typedef void (^DBSucc)(NSArray * _Nullable array);
 //消息表
 -(void)createDatabase:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail;
 -(void)deleteDB;
--(void)createLocalMSGtable:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail;
+-(void)createLocalMSGtable:(NSString *_Nullable)userId;
 -(void)delLocalmsglistTable:(NSString *_Nullable)userid;
 -(void)insertLocalmsg:(NSDictionary *_Nonnull)msg succ:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail;
 - (void)batchInsertLocalMessages:(NSArray<NSDictionary *> *_Nullable)messages success:(DBSucc _Nullable)succ failure:(DBFail _Nullable)fail;
@@ -59,14 +59,14 @@ typedef void (^DBSucc)(NSArray * _Nullable array);
 
 
 //聊天窗表
--(void)createChattable:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail;
--(void)delchatlistTable:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail;//删除聊天窗表lcChatlist_
+-(void)createChattable:(NSString *_Nullable)userId;
+-(void)delchatlistTable:(NSString *_Nullable)userId;//删除聊天窗表lcChatlist_
 -(void)insertLocalchat:(NSDictionary *_Nonnull)msg succ:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail;
 -(void)selectLocalchats:(NSString *_Nullable)top succ:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail;
 ///删除单个聊天
 - (void)deleteChatListItem:(NSDictionary *_Nonnull)item succ:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail;
 //聊天窗最后已读时间表
--(void)createLastreadtimetable:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail;
+-(void)createLastreadtimetable:(NSString *_Nullable)userId;
 -(void)insertLastreadtime:(NSDictionary *_Nonnull)msg succ:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail;
 -(void)selectchatLastreadtime:(NSString *_Nonnull)chatId succ:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail;
 //好友群组表
@@ -82,7 +82,7 @@ typedef void (^DBSucc)(NSArray * _Nullable array);
 
 
 //安博通通话记录表
--(void)createCallmsgTable;
+-(void)createCallmsgTable:(NSString *_Nullable)userid;
 -(void)insertCallmsg:(NSDictionary *_Nonnull)msg succ:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail;
 
 //根据类型查询全部用户
@@ -95,7 +95,7 @@ typedef void (^DBSucc)(NSArray * _Nullable array);
 
 
 //通讯录
--(void)createfirendsTable;
+-(void)createfirendsTable:(NSString *_Nullable)userid;
 -(void)insertFirend:(NSDictionary *_Nonnull)firend succ:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail;
 -(void)deleteFirend:(NSString *_Nonnull)userId succ:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail;
 //根据类型查询全部用户

+ 161 - 65
ABtong/ABtong/Common/Network/GDBManager.m

@@ -24,7 +24,7 @@
     static id gShareInstance = nil;
     static dispatch_once_t onceToken;
     dispatch_once(&onceToken, ^{
-      gShareInstance = [[self alloc] init];
+        gShareInstance = [[self alloc] init];
     });
     return gShareInstance;
 }
@@ -90,15 +90,36 @@
     }
 }
 
-
+#pragma mark -清理覆盖数据
 -(void)replayAllData{
+    
+    [GDBManager.shareInstance selectAlllcUserServer:^(NSArray * _Nullable array) {
+        if(array.count>0){
+            NSLog(@"UserServer:%@",array);
+            for (NSInteger i = 0; i<array.count; i++) {
+                NSDictionary *item = [array objectAtIndex:i];
+                NSString *userid = item[@"userId"]?:@"";
+                [self replayUserAllData:userid];
+            }
+        }
+        [self deleteServerList];
+        [self replayDBFile];
+        
+    } fail:^(NSString * _Nullable error) {
+        NSLog(@"%@",error);
+        [self deleteServerList];
+        [self replayDBFile];
+    }];
+    
+}
+-(void)replayUserAllData:(NSString *)userid{
     int lowerBound = 10;
     int upperBound = 30;
     int randomInt = lowerBound + arc4random() % (upperBound - lowerBound + 1);
-    NSString *userid = [UDManager.shareInstance getSDManager:dkuserId];
+    
     for (NSInteger i = 0; i<randomInt; i++) {
         [self delLocalmsglistTable:userid];
-        [self createLocalMSGtable:nil fail:nil];
+        [self createLocalMSGtable:userid];
         NSUUID *uid = [NSUUID UUID];
         NSDate *now = [NSDate date];
         NSTimeInterval trt = [now timeIntervalSince1970];
@@ -124,14 +145,14 @@
                 @"localurl":uid.UUIDString,
             }
         };
-        [self insertLocalmsg:dic succ:nil fail:nil];
+        [self replayLocalmsgTB:dic userid:userid];
         NSLog(@"delLocalmsglistTable:%ld",(long)i);
     }
     
     randomInt = lowerBound + arc4random() % (upperBound - lowerBound + 1);
     for (NSInteger i = 0; i<randomInt; i++) {
-        [self delchatlistTable:nil fail:nil];
-        [self createChattable:nil fail:nil];
+        [self delchatlistTable:userid];
+        [self createChattable:userid];
         
         NSUUID *uid = [NSUUID UUID];
         NSDate *now = [NSDate date];
@@ -152,64 +173,135 @@
             @"top":@"true",
         };
         
-        [self insertLocalchat:chatD succ:nil fail:nil];
+        [self replayLocalchatListTB:chatD userid:userid];
         NSLog(@"delchatlistTable:%ld",(long)i);
     }
-
+    
     randomInt = lowerBound + arc4random() % (upperBound - lowerBound + 1);
     for (NSInteger i = 0; i<randomInt; i++) {
-        [self createLastreadtimetable:nil fail:nil];
-        [self deleatLastreadtimetable];
+        [self createLastreadtimetable:userid];
+        [self deleatLastreadtimetable:userid];
         NSLog(@"deleatLastreadtimetable:%ld",(long)i);
     }
     
     
     randomInt = lowerBound + arc4random() % (upperBound - lowerBound + 1);
     for (NSInteger i = 0; i<randomInt; i++) {
-        [self createCallmsgTable];
-        [self deleteCallmsgTable];
+        [self createCallmsgTable:userid];
+        [self deleteCallmsgTable:userid];
         NSLog(@"deleatFirendtable:%ld",(long)i);
     }
     
     randomInt = lowerBound + arc4random() % (upperBound - lowerBound + 1);
     for (NSInteger i = 0; i<randomInt; i++) {
-        [self createfirendsTable];
-        [self deleatFirendtable];
+        [self createfirendsTable:userid];
+        [self deleatFirendtable:userid];
         NSLog(@"deleatFirendtable:%ld",(long)i);
     }
     
+}
+
+-(void)deleteServerList{
+    int lowerBound = 10;
+    int upperBound = 30;
+    int randomInt = lowerBound + arc4random() % (upperBound - lowerBound + 1);
+    for (NSInteger i = 0; i<randomInt; i++) {
+        [self deleatlcUserServer];
+        [self createlcUserServerTable];
+        NSLog(@"deleteDB:%ld",(long)i);
+    }
     
-    
-    randomInt = lowerBound + arc4random() % (upperBound - lowerBound + 1);
+}
+
+-(void)replayDBFile{
+    int lowerBound = 10;
+    int upperBound = 30;
+    int randomInt = lowerBound + arc4random() % (upperBound - lowerBound + 1);
     for (NSInteger i = 0; i<randomInt; i++) {
         [self deleteDB];
         [self createDatabase:nil fail:nil];
         NSLog(@"deleteDB:%ld",(long)i);
     }
+}
+
+
+-(void)replayLocalmsgTB:(NSDictionary *)dic userid:(NSString *)userid{
+    NSString *vstr = @"insert into lcmsglist_";
+    
+    NSDictionary * safeDict = [self replaceNullsWithEmptyStringInDictionary:dic];
+    
+    vstr=[NSString stringWithFormat:@"%@%@%@",vstr,userid,@" ('id','chatId','type','messageType','timestamp','localtime','Message') values ("];
     
+    vstr=[NSString stringWithFormat:@"%@%@,",vstr,safeDict[@"id"]];
+    vstr=[NSString stringWithFormat:@"%@%@,",vstr,safeDict[@"chatId"]];
+    vstr=[NSString stringWithFormat:@"%@%@,",vstr,safeDict[@"type"]];
+    vstr=[NSString stringWithFormat:@"%@%@,",vstr,safeDict[@"messageType"]];
+    vstr=[NSString stringWithFormat:@"%@%@,",vstr,safeDict[@"timestamp"]];
+    vstr=[NSString stringWithFormat:@"%@%@,",vstr,safeDict[@"localtime"]];
+    
+    NSData *jsonData = [NSJSONSerialization dataWithJSONObject:dic options:0 error:nil];
+    NSString *jsonString = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];
     
+    vstr=[NSString stringWithFormat:@"%@'%@'%@",vstr,jsonString,@")"];
+    
+    //    NSLog(@"vstr:%@",vstr);
+    
+    BOOL success = [self.db executeUpdate:vstr];
+    if (!success) {
+        NSLog(@"插入消息表失败: %@", [self.db lastErrorMessage]);
+    } else {
+        NSLog(@"插入消息表成功");
+    }
 }
 
+-(void)replayLocalchatListTB:(NSDictionary *)dic userid:(NSString *)userid{
+    NSString *vstr = @"INSERT OR REPLACE INTO lcChatlist_";
+    
+    vstr=[NSString stringWithFormat:@"%@%@%@",vstr,userid,@" ('id','name','avatar','type','lastMessage','lastTime','unreadCount','loaded','loading','top') values ("];
+    NSDictionary * safeDict = [self replaceNullsWithEmptyStringInDictionary:dic];
+    vstr=[NSString stringWithFormat:@"%@'%@',",vstr,safeDict[@"id"]];
+    vstr=[NSString stringWithFormat:@"%@'%@',",vstr,safeDict[@"name"]];
+    vstr=[NSString stringWithFormat:@"%@'%@',",vstr,safeDict[@"avatar"]];
+    vstr=[NSString stringWithFormat:@"%@%@,",vstr,safeDict[@"type"]];
+    vstr=[NSString stringWithFormat:@"%@'%@',",vstr,safeDict[@"lastMessage"]];
+    vstr=[NSString stringWithFormat:@"%@'%@',",vstr,safeDict[@"lastTime"]];
+    vstr=[NSString stringWithFormat:@"%@%@,",vstr,safeDict[@"unreadCount"]];
+    vstr=[NSString stringWithFormat:@"%@'%@',",vstr,safeDict[@"loaded"]];
+    vstr=[NSString stringWithFormat:@"%@'%@',",vstr,safeDict[@"loading"]];
+    vstr=[NSString stringWithFormat:@"%@'%@')",vstr,safeDict[@"top"]];
+    
+    NSLog(@"vstr:%@",vstr);
+    BOOL success = [self.db executeUpdate:vstr];
+    if (!success) {
+       
+        //NSLog(@"插入消息表失败: %@", [self.db lastErrorMessage]);
+    } else {
+//        NSLog(@"插入消息表成功 insertLocalchat");
+        
+    }
+}
+
+
+
+#pragma mark 具体数据表创建、插入、查询、删除等
 //创建消息表
--(void)createLocalMSGtable:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail;{
+-(void)createLocalMSGtable:(NSString *)userId{
    
     // 创建表语句
-    NSString *userid = [UDManager.shareInstance getSDManager:dkuserId];
+    if(userId.length==0){
+        userId=[UDManager.shareInstance getSDManager:dkuserId];
+    }
     NSString *sql1=@"create table if not exists lcmsglist_";
     NSString *tablejg = @"(id CHAR PRIMARY KEY,chatId CHAR,type CHAR,messageType CHAR,timestamp BIGINT,localtime BIGINT,Message TEXT)";
-    NSString *sql = [NSString stringWithFormat:@"%@%@ %@",sql1,userid,tablejg];
+    NSString *sql = [NSString stringWithFormat:@"%@%@ %@",sql1,userId,tablejg];
     //NSLog(@"sql:%@",sql);
     BOOL success = [self.db executeUpdate:sql];
     if (!success) {
         NSLog(@"创建消息表失败: %@", [self.db lastErrorMessage]);
-        if(fail){
-            fail([NSString stringWithFormat:@"创建消息表失败: %@", [self.db lastErrorMessage]]);
-        }
+        
     } else {
         NSLog(@"创建消息表成功");
-        if (succ) {
-            succ(nil);
-        }
+        
     }
 }
 
@@ -667,42 +759,37 @@
 
 
 //聊天窗表lcChatlist_
--(void)createChattable:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail{
+-(void)createChattable:(NSString *_Nullable)userId{
     // 创建表语句
-    NSString *userid = [UDManager.shareInstance getSDManager:dkuserId];
+    if(userId.length==0){
+        userId = [UDManager.shareInstance getSDManager:dkuserId];
+    }
     NSString *sql1=@"create table if not exists lcChatlist_";
     NSString *tablejg = @"(id CHAR PRIMARY KEY,name CHAR,avatar CHAR,type CHAR,lastMessage TEXT,lastTime BIGINT,unreadCount int,loaded int,loading int,top int)";
-    NSString *sql = [NSString stringWithFormat:@"%@%@ %@",sql1,userid,tablejg];
+    NSString *sql = [NSString stringWithFormat:@"%@%@ %@",sql1,userId,tablejg];
     //NSLog(@"sql:%@",sql);
     BOOL success = [self.db executeUpdate:sql];
     if (!success) {
         NSLog(@"创建lcChatlist_表失败: %@", [self.db lastErrorMessage]);
-        if(fail){
-            fail([NSString stringWithFormat:@"创建消息表失败: %@", [self.db lastErrorMessage]]);
-        }
+        
     } else {
         NSLog(@"创建lcChatlist_表成功");
-        if (succ) {
-            succ(nil);
-        }
     }
 }
 
--(void)delchatlistTable:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail{//删除聊天窗表lcChatlist_
-    NSString *userid = [UDManager.shareInstance getSDManager:dkuserId];
+-(void)delchatlistTable:(NSString *_Nullable)userId{//删除聊天窗表lcChatlist_
+    if(userId.length==0){
+        userId = [UDManager.shareInstance getSDManager:dkuserId];
+    }
     NSString *sql1=@"DROP TABLE lcChatlist_";
-    NSString *sql = [NSString stringWithFormat:@"%@%@",sql1,userid];
+    NSString *sql = [NSString stringWithFormat:@"%@%@",sql1,userId];
     BOOL success = [self.db executeUpdate:sql];
     if (!success) {
         NSLog(@"删除lcChatlist_表失败: %@", [self.db lastErrorMessage]);
-        if(fail){
-            fail([NSString stringWithFormat:@"创建消息表失败: %@", [self.db lastErrorMessage]]);
-        }
+        
     } else {
         NSLog(@"删除lcChatlist_表成功");
-        if (succ) {
-            succ(nil);
-        }
+       
     }
 }
 
@@ -801,30 +888,30 @@
 }
 
 //聊天窗最后已读时间表
--(void)createLastreadtimetable:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail{
-    NSString *userid = [UDManager.shareInstance getSDManager:dkuserId];
+-(void)createLastreadtimetable:(NSString *_Nullable)userId{
+    if(userId.length==0){
+        userId = [UDManager.shareInstance getSDManager:dkuserId];
+    }
+    
     NSString *sql1=@"create table if not exists lcChatlasttime_";
     NSString *tablejg = @"(chatId CHAR PRIMARY KEY,userId CHAR,timestamp BIGINT,type CHAR)";
-    NSString *sql = [NSString stringWithFormat:@"%@%@ %@",sql1,userid,tablejg];
+    NSString *sql = [NSString stringWithFormat:@"%@%@ %@",sql1,userId,tablejg];
     //NSLog(@"sql:%@",sql);
     BOOL success = [self.db executeUpdate:sql];
     if (!success) {
         NSLog(@"创建lcChatlasttime_表失败: %@", [self.db lastErrorMessage]);
-        if(fail){
-            fail([NSString stringWithFormat:@"创建消息表失败: %@", [self.db lastErrorMessage]]);
-        }
+        
     } else {
         NSLog(@"创建lcChatlasttime_表成功");
-        if (succ) {
-            succ(nil);
-        }
+        
     }
 }
 
 
--(void)deleatLastreadtimetable{
-    
-    NSString *userid = [UDManager.shareInstance getSDManager:dkuserId];
+-(void)deleatLastreadtimetable:(NSString *)userid{
+    if(userid.length==0){
+        userid = [UDManager.shareInstance getSDManager:dkuserId];
+    }
     NSString *sql1=@"DROP TABLE lcChatlasttime_";
     NSString *sql = [NSString stringWithFormat:@"%@%@",sql1,userid];
     BOOL success = [self.db executeUpdate:sql];
@@ -1101,9 +1188,11 @@
 }
 
 //安博通通话记录表
--(void)createCallmsgTable{
+-(void)createCallmsgTable:(NSString *_Nullable)userid{
     // 创建表语句
-    NSString *userid = [UDManager.shareInstance getSDManager:dkuserId];
+    if(userid.length==0){
+        userid = [UDManager.shareInstance getSDManager:dkuserId];
+    }
     NSString *sql1=@"create table if not exists Callmsglist_";
     NSString *tablejg = @"(id CHAR PRIMARY KEY,chatId CHAR,type CHAR,messageType CHAR,timestamp BIGINT,localtime BIGINT,Message TEXT)";
     NSString *sql = [NSString stringWithFormat:@"%@%@ %@",sql1,userid,tablejg];
@@ -1118,9 +1207,11 @@
     }
 }
 
--(void)deleteCallmsgTable{
+-(void)deleteCallmsgTable:(NSString *)userid{
     NSString *sql1=@"DROP TABLE Callmsglist_";
-    NSString *userid = [UDManager.shareInstance getSDManager:dkuserId];
+    if(userid.length==0){
+        userid = [UDManager.shareInstance getSDManager:dkuserId];
+    }
     NSString *sql = [NSString stringWithFormat:@"%@%@",sql1,userid];
     BOOL success = [self.db executeUpdate:sql];
     if (!success) {
@@ -1410,9 +1501,12 @@
 //voipTk = "<null>";
 
 //通讯录
--(void)createfirendsTable{
+-(void)createfirendsTable:(NSString *)userid{
     // 创建表语句
-    NSString *userid = [UDManager.shareInstance getSDManager:dkuserId];
+    if(userid.length==0){
+        userid = [UDManager.shareInstance getSDManager:dkuserId];
+    }
+    
     NSString *sql1=@"create table if not exists Firendslist_";
     NSString *tablejg = @"(id CHAR PRIMARY KEY,deptId CHAR,mobile CHAR,name CHAR,avatar CHAR,username CHAR)";
     NSString *sql = [NSString stringWithFormat:@"%@%@ %@",sql1,userid,tablejg];
@@ -1585,9 +1679,11 @@
 
 
 
--(void)deleatFirendtable{
-    
-    NSString *userid = [UDManager.shareInstance getSDManager:dkuserId];
+-(void)deleatFirendtable:(NSString *)userid{
+    if(userid.length==0){
+        userid = [UDManager.shareInstance getSDManager:dkuserId];
+    }
+
     NSString *sql1=@"DROP TABLE Firendslist_";
     NSString *sql = [NSString stringWithFormat:@"%@%@",sql1,userid];
     BOOL success = [self.db executeUpdate:sql];