예제 #1
0
        private void getGroupMembers(Object state)
        {
            string             group_Id = (string)state;
            GroupInfoSendModel model    = new GroupInfoSendModel();

            model.group_id = group_Id;
            HttpUitls.Instance.get <GroupMembersReciveModel>("groupUser/groupUserList", model, (json) => {
                if (json.code == 200)
                {
                    DBHelper.Instance.addGroupMember(json.data);
                }
                else
                {
                    MainFrm main = (MainFrm)Application.OpenForms["MainFrm"];
                    if (main != null)
                    {
                        main.gotoLogin();
                    }
                }
            }, (s) => {
                if (s < 503 && s > 500)
                {
                    MainFrm main = (MainFrm)Application.OpenForms["MainFrm"];
                    if (main != null)
                    {
                        main.gotoLogin();
                    }
                }
            });
        }
예제 #2
0
        private void getGroupMembers(Object state)
        {
            string             group_Id = (string)state;
            GroupInfoSendModel model    = new GroupInfoSendModel();

            model.group_id = group_Id;
            HttpUitls.Instance.get <GroupMembersReciveModel>("groupUser/groupUserList", model, (json) => {
                if (json.code == 200)
                {
                    DBHelper.Instance.addGroupMember(json.data);
                }
                else
                {
                    if (json.message.Contains("重新登录"))
                    {
                        gotoLogin();
                    }
                }
            }, (s) => {
                if (s < 503 && s > 500)
                {
                    gotoLogin();
                }
            });
        }
예제 #3
0
 private void 退出该群ToolStripMenuItem_Click(object sender, EventArgs e)
 {
     if (MessageBox.Show("你确定要退出该群吗?", null, MessageBoxButtons.YesNo) == DialogResult.Yes)
     {
         GroupInfoSendModel m = new GroupInfoSendModel();
         m.group_id = model.groupId;
         HttpUitls.Instance.get <BaseReciveModel>("group/exit", m, (json) =>
         {
             if (json.code == 200)
             {
                 DBHelper.Instance.DeleteGroup(model.groupId);
                 EaseHelper.shard.client.getChatManager().removeConversation(model.groupId, true);
                 MainFrm main = (MainFrm)Application.OpenForms["MainFrm"];
                 if (main == null)
                 {
                     return;
                 }
                 main.removeConversation(model.groupId);
                 main.loadGroup();
                 this.BeginInvoke(new EventHandler((s, ee) =>
                 {
                     MessageBox.Show("退出成功");
                     this.Close();
                 }));
             }
             else
             {
                 if (json.message.Contains("重新登录"))
                 {
                     MainFrm main = (MainFrm)Application.OpenForms["MainFrm"];
                     if (main != null)
                     {
                         main.gotoLogin();
                     }
                 }
                 else
                 {
                     this.BeginInvoke(new EventHandler((s, ee) =>
                     {
                         MessageBox.Show(json.message);
                     }));
                 }
             }
         }, (code) =>
         {
             if (code < 503 && code > 500)
             {
                 MainFrm main = (MainFrm)Application.OpenForms["MainFrm"];
                 if (main != null)
                 {
                     main.gotoLogin();
                 }
             }
         });
     }
 }
예제 #4
0
        private void 取消全员禁言ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            GroupInfoSendModel m = new GroupInfoSendModel();

            m.group_id = model.groupId;
            HttpUitls.Instance.get <BaseReciveModel>("group/cancelAllBanned", m, (json) =>
            {
                if (json.code == 200)
                {
                    model.is_all_banned = 2;
                    loadInfo();
                    EMCmdMessageBody body = new EMCmdMessageBody("");
                    EMMessage message     = EMMessage.createSendMessage(SettingMenager.shard.userID, model.groupId, body, EMChatType.GROUP);
                    message.setAttribute("type", "qun");
                    message.setAttribute("id", model.groupId);
                    message.setAttribute("grouptype", "2");
                    EaseHelper.shard.client.getChatManager().sendMessage(message);
                    HttpUitls.Instance.get <GroupInfoReciveModel>("group/detail", m, (jso) =>
                    {
                        if (jso.code == 200)
                        {
                            DBHelper.Instance.addGroupAndFocus(jso.data);
                            model = DBHelper.Instance.GetGroup(model.groupId);
                            loadInfo();
                            ThreadPool.QueueUserWorkItem((o) =>
                            {
                                refreshGroupMember();
                            });
                            MainFrm main = (MainFrm)Application.OpenForms["MainFrm"];
                            if (main != null)
                            {
                                main.refreshConversationList();
                                main.loadGroup();
                            }
                        }
                        else
                        {
                            if (jso.message.Contains("重新登录"))
                            {
                                MainFrm main = (MainFrm)Application.OpenForms["MainFrm"];
                                if (main != null)
                                {
                                    main.gotoLogin();
                                }
                            }
                        }
                    }, (s) =>
                    {
                        if (s < 503 && s > 500)
                        {
                            MainFrm main = (MainFrm)Application.OpenForms["MainFrm"];
                            if (main != null)
                            {
                                main.gotoLogin();
                            }
                        }
                    });
                }
                else
                {
                    if (json.message.Contains("重新登录"))
                    {
                        MainFrm main = (MainFrm)Application.OpenForms["MainFrm"];
                        if (main != null)
                        {
                            main.gotoLogin();
                        }
                    }
                    else
                    {
                        this.BeginInvoke(new EventHandler((s, ee) =>
                        {
                            MessageBox.Show(json.message);
                        }));
                    }
                }
            }, (code) =>
            {
                if (code < 503 && code > 500)
                {
                    MainFrm main = (MainFrm)Application.OpenForms["MainFrm"];
                    if (main != null)
                    {
                        main.gotoLogin();
                    }
                }
            });
        }
예제 #5
0
        private void Form_oked(string obj)
        {
            AddGroupUserSendModel addGroup = new AddGroupUserSendModel();

            addGroup.group_id       = model.groupId;
            addGroup.group_user_ids = obj;
            HttpUitls.Instance.get <BaseReciveModel>("groupUser/addBatch", addGroup, (js) =>
            {
                if (js.code == 200)
                {
                    GroupInfoSendModel m = new GroupInfoSendModel();
                    m.group_id           = model.groupId;
                    HttpUitls.Instance.get <GroupInfoReciveModel>("group/detail", m, (jso) =>
                    {
                        if (js.code == 200)
                        {
                            DBHelper.Instance.addGroupAndFocus(jso.data);
                            model = DBHelper.Instance.GetGroup(model.groupId);
                            loadInfo();
                            ThreadPool.QueueUserWorkItem((o) =>
                            {
                                refreshGroupMember();
                            });
                            MainFrm main = (MainFrm)Application.OpenForms["MainFrm"];
                            if (main != null)
                            {
                                main.refreshConversationList();
                            }
                        }
                        else
                        {
                            if (js.message.Contains("重新登录"))
                            {
                                MainFrm main = (MainFrm)Application.OpenForms["MainFrm"];
                                if (main != null)
                                {
                                    main.gotoLogin();
                                }
                            }
                        }
                    }, (s) =>
                    {
                        if (s < 503 && s > 500)
                        {
                            MainFrm main = (MainFrm)Application.OpenForms["MainFrm"];
                            if (main != null)
                            {
                                main.gotoLogin();
                            }
                        }
                    });
                }
                else
                {
                    if (js.message.Contains("重新登录"))
                    {
                        MainFrm main = (MainFrm)Application.OpenForms["MainFrm"];
                        if (main != null)
                        {
                            main.gotoLogin();
                        }
                    }
                }
            }, (code) =>
            {
                if (code < 503 && code > 500)
                {
                    MainFrm main = (MainFrm)Application.OpenForms["MainFrm"];
                    if (main != null)
                    {
                        main.gotoLogin();
                    }
                }
            });
        }
예제 #6
0
        private void refreshGroupMember()
        {
            GroupInfoSendModel model = new GroupInfoSendModel();

            model.group_id = model.group_id;
            HttpUitls.Instance.get <GroupMembersReciveModel>("groupUser/groupUserList", model, (json) =>
            {
                if (json.code == 200)
                {
                    for (int i = 0; i < json.data.Count; i++)
                    {
                        if (json.data[i].is_manager == 1)
                        {
                            var data = json.data[i];
                            json.data.RemoveAt(i);
                            json.data.Insert(0, data);
                        }
                    }
                    for (int i = 0; i < json.data.Count; i++)
                    {
                        if (json.data[i].is_administrator == 1)
                        {
                            var data = json.data[i];
                            json.data.RemoveAt(i);
                            json.data.Insert(0, data);
                            break;
                        }
                    }
                    duiGridList1.BeginInvoke(() =>
                    {
                        this.menbers = new List <GroupMemberViewModel>();
                        foreach (GroupMemberData item in json.data)
                        {
                            this.menbers.Add(new GroupMemberViewModel(item));
                        }
                        if (duiGridList1.Loaded)
                        {
                            loadData();
                        }
                    });
                    DBHelper.Instance.addGroupMember(json.data);
                }
                else
                {
                    if (json.message.Contains("重新登录"))
                    {
                        MainFrm main = (MainFrm)Application.OpenForms["MainFrm"];
                        if (main != null)
                        {
                            main.gotoLogin();
                        }
                    }
                }
            }, (s) =>
            {
                if (s < 503 && s > 500)
                {
                    MainFrm main = (MainFrm)Application.OpenForms["MainFrm"];
                    if (main != null)
                    {
                        main.gotoLogin();
                    }
                }
            });
        }
예제 #7
0
        private void Form_oked(string obj)
        {
            int type = 0;

            if (dSkinRadioButton1.Checked)
            {
                type = 2;
            }
            else if (dSkinRadioButton2.Checked)
            {
                type = 1;
            }
            CreateGroupSendModel model = new CreateGroupSendModel();

            model.group_name     = dSkinTextBox1.Text;
            model.group_portrait = "pc_defalt_group_photo.jpg";
            model.group_type     = type;
            HttpUitls.Instance.get <CreateGroupReciveModel>("group/create", model, (json) =>
            {
                if (json.code == 200)
                {
                    EaseHelper.shard.createdGroupId = json.data;
                    AddGroupUserSendModel addGroup  = new AddGroupUserSendModel();
                    addGroup.group_id       = json.data;
                    addGroup.group_user_ids = obj;
                    HttpUitls.Instance.get <BaseReciveModel>("groupUser/addBatch", addGroup, (js) =>
                    {
                        if (js.code == 200)
                        {
                            GroupInfoSendModel m = new GroupInfoSendModel();
                            m.group_id           = json.data;
                            HttpUitls.Instance.get <GroupInfoReciveModel>("group/detail", m, (jso) =>
                            {
                                if (js.code == 200)
                                {
                                    EMConversation conversation = EaseHelper.shard.client.getChatManager().conversationWithType(json.data, EMConversationType.GROUPCHAT, true);
                                    EMTextMessageBody body      = new EMTextMessageBody("你创建了群聊");
                                    EMMessage message           = EMMessage.createSendMessage(SettingMenager.shard.userID, json.data, body, EMChatType.GROUP);
                                    conversation.insertMessage(message);
                                    DBHelper.Instance.addGroupAndFocus(jso.data);
                                    ThreadPool.QueueUserWorkItem(getGroupMembers, json.data);
                                    MainFrm main = (MainFrm)Application.OpenForms["MainFrm"];
                                    if (main != null)
                                    {
                                        main.refreshConversationList();
                                    }
                                    this.BeginInvoke(new EventHandler((s, e) =>
                                    {
                                        this.Close();
                                    }));
                                }
                                else
                                {
                                    if (js.message.Contains("重新登录"))
                                    {
                                        MainFrm main = (MainFrm)Application.OpenForms["MainFrm"];
                                        if (main != null)
                                        {
                                            main.gotoLogin();
                                        }
                                    }
                                }
                            }, (s) =>
                            {
                                if (s < 503 && s > 500)
                                {
                                    MainFrm main = (MainFrm)Application.OpenForms["MainFrm"];
                                    if (main != null)
                                    {
                                        main.gotoLogin();
                                    }
                                }
                            });
                        }
                        else
                        {
                            if (js.message.Contains("重新登录"))
                            {
                                MainFrm main = (MainFrm)Application.OpenForms["MainFrm"];
                                if (main != null)
                                {
                                    main.gotoLogin();
                                }
                            }
                        }
                    }, (code) =>
                    {
                        if (code < 503 && code > 500)
                        {
                            MainFrm main = (MainFrm)Application.OpenForms["MainFrm"];
                            if (main != null)
                            {
                                main.gotoLogin();
                            }
                        }
                    });
                }
                else
                {
                    if (json.message.Contains("重新登录"))
                    {
                        MainFrm main = (MainFrm)Application.OpenForms["MainFrm"];
                        if (main != null)
                        {
                            main.gotoLogin();
                        }
                    }
                }
            }, (code) =>
            {
                if (code < 503 && code > 500)
                {
                    MainFrm main = (MainFrm)Application.OpenForms["MainFrm"];
                    if (main != null)
                    {
                        main.gotoLogin();
                    }
                }
            });
        }
예제 #8
0
 private void LoadData()
 {
     HttpUitls.Instance.get <FriendListReciveModel>("contacts/friendList", new LoginedSendModel(), (json) => {
         if (json.code == 200)
         {
             DBHelper.Instance.AddFriend(json.data);
             DBHelper.Instance.Save();
         }
         else
         {
             if (json.message.Contains("重新登录"))
             {
                 gotoLogin();
             }
         }
     }, (s) => {
         if (s < 503 && s > 500)
         {
             gotoLogin();
         }
     });
     HttpUitls.Instance.get <GetMyGroupReciveModel>("groupUser/getMyGroup", new LoginedSendModel(), (json) =>
     {
         if (json.code == 200)
         {
             DBHelper.Instance.addGroupTemp(json.data);
             DBHelper.Instance.Save();
             foreach (var g in json.data)
             {
                 GroupInfoSendModel m = new GroupInfoSendModel();
                 m.group_id           = g.group_id;
                 HttpUitls.Instance.get <GroupInfoReciveModel>("group/detail", m, (js) => {
                     if (js.code == 200)
                     {
                         DBHelper.Instance.addGroupAndFocus(js.data);
                     }
                     else
                     {
                         if (js.message.Contains("重新登录"))
                         {
                             gotoLogin();
                         }
                     }
                 }, (s) => {
                     if (s < 503 && s > 500)
                     {
                         gotoLogin();
                     }
                 });
                 ThreadPool.QueueUserWorkItem(getGroupMembers, g.group_id);
             }
         }
         else
         {
             if (json.message.Contains("重新登录"))
             {
                 gotoLogin();
             }
         }
     }, (s) =>
     {
         if (s < 503 && s > 500)
         {
             gotoLogin();
         }
     });
 }