فهرست منبع

聊天室再改

jyj 4 سال پیش
والد
کامیت
a492b07e17
3فایلهای تغییر یافته به همراه59 افزوده شده و 53 حذف شده
  1. 5 1
      lib/internal/bbs/page/bbs_page.dart
  2. 6 6
      lib/internal/bbs/page/recommend_ask.dart
  3. 48 46
      lib/internal/bbs/provide/websocket.dart

+ 5 - 1
lib/internal/bbs/page/bbs_page.dart

@@ -144,7 +144,11 @@ class BbsPageState extends BasePageState<BbsPage, NewsListPresenter>
       });
     });
 
-    Provider.of<WebSocketProvide>(context,listen: false).createWebsocket(FlutterStars.SpUtil.getString(Constant.userId));
+    if(FlutterStars.SpUtil.getString(Constant.userId) != "-1") {
+      Provider.of<WebSocketProvide>(context,listen: false).createWebsocket(FlutterStars.SpUtil.getString(Constant.userId));
+    }
+
+    
     getLocation();
     getBannerList();
     getNewsList();

+ 6 - 6
lib/internal/bbs/page/recommend_ask.dart

@@ -366,13 +366,13 @@ class RecommendAskState extends State<RecommendAsk> {
               ],
             ),
             
-            SizedBox(
+            detailObj.imgs!=null&&detailObj.imgs!=""?SizedBox(
               height:6,
               child: Container(
                 color:ThemeUtils.getDialogTextFieldColor(context)
               ),
-            ),
-            Container(
+            ):Container(child:null),
+            detailObj.imgs!=null&&detailObj.imgs!=""?Container(
               padding: EdgeInsets.all(15),
               color: ThemeUtils.getTabsBg(context),
               child: Wrap(
@@ -405,14 +405,14 @@ class RecommendAskState extends State<RecommendAsk> {
                     }).toList()
                   )
               )
-            ),
-            detailObj.videoUrl!=null?SizedBox(
+            ):Container(child:null),
+            detailObj.videoUrl!=null&&detailObj.videoUrl!=""?SizedBox(
               height:6,
               child: Container(
                 color:ThemeUtils.getDialogTextFieldColor(context)
               ),
             ):Container(child:null),
-           detailObj.videoUrl!=null ? Container(
+           detailObj.videoUrl!=null&&detailObj.videoUrl!="" ? Container(
                           padding: EdgeInsets.only(
                               left: ScreenUtil().setWidth(15),
                               right: ScreenUtil().setWidth(15),

+ 48 - 46
lib/internal/bbs/provide/websocket.dart

@@ -193,55 +193,57 @@ class WebSocketProvide with ChangeNotifier{
       String friendsInit = randomInt(1111,9999).toString() + DateTime.now().millisecondsSinceEpoch.toString();
       prefs.setString("changeRoomId",obj["sessionid"]);
       FastNotification.push("friendAction",friendsInit);
-    }else if(obj["cmd"] =="UNREAD"){
-      //离线消息
-      Map<String,dynamic>msgObj = jsonDecode(obj["msg"]);
-      // print(JsonEncoder().convert(historyMessageqqq));
-      msgObj.forEach((key, value) {
-        List<String>str = [];
-        if(prefs.getStringList(key) != null){
-          str = prefs.getStringList(key);
-        }
-        String strUserOnline;
-        // if(prefs.getString(key+"userOnline") != null){
-        //   strUserOnline = prefs.getString(key+"userOnline");
-        // }
-        print(jsonEncode(value));
-        print("--------------------------------------///123456");
-        // value.forEach((key,item){
-        //   if(value[key]["msgList"].length>0){
-        //     // str.add(JsonEncoder().convert(item["msgList"]));
-        //     item["msgList"].forEach((ii){
-        //       str.add(JsonEncoder().convert(ii));
-        //     });
-        //     // str.add(item["msgList"].toString());
-        //   }
-        //   // if(item["flag"]){
-        //   //   strUserOnline.add(item.toString());
-        //   // }
+    }
+    // else if(obj["cmd"] =="UNREAD"){
+    //   //离线消息
+    //   Map<String,dynamic>msgObj = jsonDecode(obj["msg"]);
+    //   // print(JsonEncoder().convert(historyMessageqqq));
+    //   msgObj.forEach((key, value) {
+    //     List<String>str = [];
+    //     if(prefs.getStringList(key) != null){
+    //       str = prefs.getStringList(key);
+    //     }
+    //     String strUserOnline;
+    //     // if(prefs.getString(key+"userOnline") != null){
+    //     //   strUserOnline = prefs.getString(key+"userOnline");
+    //     // }
+    //     print(jsonEncode(value));
+    //     print("--------------------------------------///123456");
+    //     // value.forEach((key,item){
+    //     //   if(value[key]["msgList"].length>0){
+    //     //     // str.add(JsonEncoder().convert(item["msgList"]));
+    //     //     item["msgList"].forEach((ii){
+    //     //       str.add(JsonEncoder().convert(ii));
+    //     //     });
+    //     //     // str.add(item["msgList"].toString());
+    //     //   }
+    //     //   // if(item["flag"]){
+    //     //   //   strUserOnline.add(item.toString());
+    //     //   // }
           
-        // });
+    //     // });
         
-        if(value["msgList"].length>0){
-            // str.add(JsonEncoder().convert(item["msgList"]));
-            value["msgList"].forEach((ii){
-              str.add(JsonEncoder().convert(ii));
-            });
-            // str.add(item["msgList"].toString());
-          }
-        // strUserOnline = value.toString();
-        strUserOnline = JsonEncoder().convert(value);
+    //     if(value["msgList"].length>0){
+    //         // str.add(JsonEncoder().convert(item["msgList"]));
+    //         value["msgList"].forEach((ii){
+    //           str.add(JsonEncoder().convert(ii));
+    //         });
+    //         // str.add(item["msgList"].toString());
+    //       }
+    //     // strUserOnline = value.toString();
+    //     strUserOnline = JsonEncoder().convert(value);
         
-        setStringEvent(key,str);
-        setOnlineUserEvent(key+"userOnline",strUserOnline);
-      });
-      LogUtil.d(msgObj);
-      // print("456456111------------------------");
-      // msgList.forEach((item){
-      //   historyMessageString.add(jsonEncode(item));
-      // });
-      // setStringEvent();
-    }else if (obj["cmd"] =="INITROOM"){
+    //     setStringEvent(key,str);
+    //     setOnlineUserEvent(key+"userOnline",strUserOnline);
+    //   });
+    //   LogUtil.d(msgObj);
+    //   // print("456456111------------------------");
+    //   // msgList.forEach((item){
+    //   //   historyMessageString.add(jsonEncode(item));
+    //   // });
+    //   // setStringEvent();
+    // }
+    else if (obj["cmd"] =="INITROOM"){
       List<dynamic>msgListInitRoom = jsonDecode(obj["msg"]);
       if(msgListInitRoom != null && msgListInitRoom != []){
         List<String>strList = [];