Example #1
0
 public bool addFriend(Friend fr)
 {
     string cmdString = "INSERT TO friend VALUES("+
         fr.UserId+","+
         fr.UserName+","+
         fr.Sex+","+
         fr.Age+","+
         fr.Birthday+","+
         fr.Remark+","+
         fr.Address+","+
         fr.Time+","+
         fr.MGroupId+");";
     SQLiteCommand cmdAddFriend = new SQLiteCommand(cmdString, conn);
     cmdAddFriend.ExecuteNonQuery();
     cmdAddFriend.Dispose();
     return true;
 }
        private void btn_yes_Click(object sender, EventArgs e)
        {
            if(radioBtn_agree.Checked==true)
            {
                //把好友存进数据库
                Friend fr = new Friend();
                fr.UserId = userInfo[0];
                fr.UserName = userInfo[1];
                fr.Sex = Convert.ToInt32(userInfo[2]);
                fr.Birthday = userInfo[3];
                fr.Address = userInfo[4];
                fr.Time = userInfo[5];

                FriendDB Fdb = FriendDB.OpenDB(myInfo.ID.ToString());
                Fdb.addFriend(fr);

                rapidPassiveEngine.CustomizeOutter.Send(Constant.MSG_ADDFRIEND_AGREE, System.Text.Encoding.UTF8.GetBytes(soucerUserId));
                this.Close();
            }
            else//拒绝
            {
                this.Close();
            }
        }
Example #3
0
        public List<Friend> queryFriends()
        {
            string cmdString = "SELECT * FROM friend";
            List<Friend> ls = new List<Friend>();
            conn.Open();
            SQLiteCommand cmd = new SQLiteCommand(cmdString, conn);
            SQLiteDataReader dr = cmd.ExecuteReader();

            while (dr.Read())
            {
                Friend fr=new Friend();
                fr.UserId = dr[0].ToString();
                fr.UserName = dr[1].ToString();
                fr.Sex =Convert.ToInt32(dr[2]);
                fr.Age = Convert.ToInt32(dr[3]);
                fr.Birthday = dr[4].ToString();
                fr.Remark = dr[5].ToString();
                fr.Address = dr[6].ToString();
                fr.Time = dr[7].ToString();
                fr.MGroupId = Convert.ToInt32(dr[8]);
                ls.Add(fr);
            }
            conn.Close();
            return ls;
        }
Example #4
0
        /// <summary>
        /// 处理接收到的信息(包括大数据块信息)。
        /// </summary>
        /// <param name="sourceUserID">发出信息的用户ID。如果为null,表示信息来自服务端。</param>
        /// <param name="informationType">自定义信息类型</param>
        /// <param name="info">信息</param>
        public void HandleInformation(string sourceUserID, int informationType, byte[] info)
        {
            SysMsg sysmsg = new SysMsg();
            switch (informationType)
            {
                //文本消息
                case Constant.MSGTEXT:

                    //文本消息格式:接收者ID卍发送者ID卍消息内容卍发送时间卍发送人名字
                    string message = System.Text.Encoding.UTF8.GetString(info);

                    //得到含有5个元素的数组
                    string[] msgs = Regex.Split(message, Constant.SPLIT, RegexOptions.IgnoreCase);

                    //消息存在msg对象中
                    Msg msg = new Msg(msgs, 0, 0);
                    try
                    {
                        //按照ID查找listbox中的subItem
                        ChatListSubItem[] items = chatListBox_contacts.GetSubItemsById(Convert.ToUInt32(msgs[1]));

                        //聊天窗口的标题
                        string windowsName = items[0].NicName + ' ' + items[0].ID;

                        //查找是否已经存在窗口
                        IntPtr handle = NativeMethods.FindWindow(null, windowsName);

                        //聊天窗口已存在
                        if (handle != IntPtr.Zero)
                        {
                            msg.IsReaded = 1;
                            Form frm = (Form)Form.FromHandle(handle);

                            //激活
                            frm.Activate();

                            //传送消息到聊天窗口
                            this.OnReceive(msg);
                        }
                        else
                        {
                            //头像闪烁
                            twinkle(chatListBox_contacts, Convert.ToUInt32(msgs[1]));
                        }
                        //消息存入数据库
                        MsgDB.uniqueInstance.addMsg(msg);
                    }
                    catch
                    {
                        MsgDB.uniqueInstance.addMsg(msg);
                    }
                    break;

                //处理图片
                case Constant.MSGIMG:
                    MsgImg msgimg = ImageUtil.bytesToIdImg(info);
                    //存储图片
                    ImageUtil.ImgSave(msgimg.Id, msgimg.Img);
                    break;
                case Constant.MSG_ADDFRIEND_APPLY:
                    string infostr = System.Text.Encoding.UTF8.GetString(info);

                    //info格式:ID卍昵称卍性别卍生日卍地址卍注册时间
                    sysmsg.Content = infostr;
                    sysmsg.Type = Constant.MSG_ADDFRIEND_APPLY;
                    SystemMsgDB.instance.addSystemMsg(sysmsg.Content, sysmsg.Type);//存入数据库
                    break;
                case Constant.MSG_ADDFRIEND_AGREE:
                    //info格式:ID卍昵称卍性别卍生日卍地址卍注册时间
                    string userInfo= System.Text.Encoding.UTF8.GetString(info);

                    //分割info
                    string[] userInfos = Regex.Split(userInfo, Constant.SPLIT, RegexOptions.IgnoreCase);

                    //把消息存进数据库
                    sysmsg.Content = userInfo;
                    sysmsg.Type = Constant.MSG_ADDFRIEND_AGREE;
                    SystemMsgDB.instance.addSystemMsg(sysmsg.Content, sysmsg.Type);

                    //把好友存进数据库
                    Friend fr=new Friend();
                    fr.UserId=userInfos[0];
                    fr.UserName=userInfos[1];
                    fr.Sex=Convert.ToInt32(userInfos[2]);
                    fr.Birthday=userInfos[3];
                    fr.Address=userInfos[4];
                    fr.Time=userInfos[5];

                    FriendDB.uniqueInstance.addFriend(fr);

                    //刷新好友列表
                    displayFriend();
                    break;
            }
        }