Example #1
0
        public List <ArrayList> GetUserDialogs(string hach)
        {
            List <ArrayList> list = new List <ArrayList>();
            int id = swh.GetIdUserByHach(hach);

            using (UserContext db1 = new UserContext())
            {
                foreach (var c in db1.Contacts)
                {
                    if (c.idUser == id && c.idUserContact != id)
                    {
                        LastMessageC message = swh.GetLastUserMessage(id, c.idUserContact);
                        if (message != null)
                        {
                            list.Add(Package.PackageClass(message));
                        }
                    }
                    else if (c.idUserContact == id && c.idUser != id)
                    {
                        LastMessageC message = swh.GetLastUserMessage(id, c.idUser);
                        if (message != null)
                        {
                            list.Add(Package.PackageClass(message));
                        }
                    }
                }
            }
            return(list);
        }
Example #2
0
        public static object Upackage(ArrayList list)
        {
            if (list != null)
            {
                switch ((string)list[0])
                {
                case "UserC":
                {
                    UserC user = new UserC
                    {
                        email    = (string)list[1],
                        name     = (string)list[2],
                        phone    = (string)list[3],
                        surname  = (string)list[4],
                        userName = (string)list[5]
                    };
                    return(user);
                }

                case "MessageC":
                {
                    MessageC message = new MessageC
                    {
                        message       = (string)list[1],
                        id            = (int)list[2],
                        idReseiver    = (int)list[3],
                        idSender      = (int)list[4],
                        idUserMessage = (int)list[5],
                        status        = (int)list[6],
                        time          = (string)list[7]
                    };
                    return(message);
                }

                case "LastMessageC":
                {
                    LastMessageC message = new LastMessageC
                    {
                        message         = (string)list[1],
                        id              = (int)list[2],
                        idReseiver      = (int)list[3],
                        idSender        = (int)list[4],
                        idUserMessage   = (int)list[5],
                        status          = (int)list[6],
                        time            = (string)list[7],
                        CountNewMessage = (int)list[8]
                    };
                    return(message);
                }

                default: return(null);
                }
            }
            return(null);
        }
Example #3
0
        public LastMessageC GetLastUserMessage(int idUser, int idLastUser)
        {
            DateTime     max             = new DateTime(1970, 1, 1, 0, 0, 0);
            LastMessageC message         = null;
            int          CountNewMessage = 0;

            using (UserContext db = new UserContext())
            {
                foreach (var m in db.Messages)
                {
                    if ((m.idUserMessage == idUser) && (m.idReseiver == idLastUser || m.idSender == idLastUser))
                    {
                        if (DateTime.Parse(m.time) > max)
                        {
                            message               = new LastMessageC();
                            max                   = DateTime.Parse(m.time);
                            message.message       = m.message;
                            message.id            = m.id;
                            message.idReseiver    = m.idReseiver;
                            message.idSender      = m.idSender;
                            message.idUserMessage = m.idUserMessage;
                            message.status        = m.status;
                            message.time          = m.time;
                        }
                        if (message != null && message.status == 1)
                        {
                            CountNewMessage++;
                        }
                    }
                }
            }
            if (message != null)
            {
                message.CountNewMessage = CountNewMessage;
            }
            return(message);
        }
Example #4
0
        public int GetLastIdLastUser(string hach)
        {
            int max = -1;
            List <ArrayList> list = new List <ArrayList>();
            int id = swh.GetIdUserByHach(hach);

            using (UserContext db1 = new UserContext())
            {
                foreach (var c in db1.Contacts)
                {
                    if (c.idUser == id && c.idUserContact != id)
                    {
                        LastMessageC message = swh.GetLastUserMessage(id, c.idUserContact);
                        if (message != null)
                        {
                            if (message.id > max)
                            {
                                max = message.id;
                            }
                        }
                    }
                    else if (c.idUserContact == id && c.idUser != id)
                    {
                        LastMessageC message = swh.GetLastUserMessage(id, c.idUser);
                        if (message != null)
                        {
                            if (message.id > max)
                            {
                                max = message.id;
                            }
                        }
                    }
                }
            }

            return(max);
        }
Example #5
0
 public int GetIdSecondUser(LastMessageC message)
 {
     return(message.idUserMessage == message.idSender ? message.idReseiver : message.idSender);
 }