public bool InsertConversation(ReferenceData.Entity.Conversation c) { int result = db.Usp_InsertConversation(c.id, c.creatorId, c.avatar2, c.title2); if (result == 1) { return(true); } return(false); }
public List <ReferenceData.Entity.Conversation> GetConversationListOfAccount(int accId) { var resultSet = db.Usp_GetConversationsByUserId(accId).ToList(); List <ReferenceData.Entity.Conversation> list = null; if (resultSet.Count > 0) { list = new List <ReferenceData.Entity.Conversation>(); string imagesFolder = Path.GetDirectoryName(Process.GetCurrentProcess().MainModule.FileName) + @"\Files\Images\"; foreach (var c in resultSet) { ReferenceData.Entity.Conversation cvst = new ReferenceData.Entity.Conversation(); cvst.id = c.id; cvst.creatorId = c.creatorId; cvst.senderId = c.senderId; cvst.messageType = c.messageType; cvst.content = c.content; cvst.title = c.title; cvst.memberList = new AccountDAO().GetAccountByConversationId(cvst.id); if (cvst.memberList != null) { if (cvst.memberList.Count > 2) { cvst.state = true; cvst.avatar = ChatAppUtils.ConvertFileToByte(imagesFolder + c.avatar); } else { foreach (var u in cvst.memberList) { if (u.id != accId) { foreach (var onl in onlineList) { if (onl.Acc.Equals(u)) { cvst.state = true; break; } } cvst.title = u.firstName + " " + u.lastName; cvst.avatar = u.avatar; } } } } cvst.createdAt = c.createdAt; list.Add(cvst); } } return(list); }
public override void Run() { ReferenceData.Entity.Conversation cvst = (ReferenceData.Entity.Conversation)data.Data; if (cvst.avatar2 != null && cvst.avatar != null) { string imagesFolder = Path.GetDirectoryName(Process.GetCurrentProcess().MainModule.FileName) + @"\Files\Images\"; string[] info = getFileInfo(cvst.avatar2); cvst.avatar2 = info[0] + DateTime.Now.ToUniversalTime().Subtract(new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc)).TotalMilliseconds + "." + info[1]; File.WriteAllBytes(imagesFolder + cvst.avatar2, cvst.avatar); } bool result = new ConversationDAO().InsertConversation(cvst); if (result) { foreach (var member in cvst.memberList) { ReferenceData.Entity.Participant p = new ReferenceData.Entity.Participant(); p.conversationId = cvst.id; p.userId = member.id; new ParticipantDAO().InsertParticipant(p); } foreach (var onl in worker.Server.OnlineList) { foreach (var mb in cvst.memberList) { if (onl.Acc.id == mb.id && mb.id != cvst.creatorId) { cvst.state = true; onl.Worker.send(new SocketData("INSERTCONVERSATION", cvst)); if (cvst.memberList.Count == 2) { this.worker.send(new SocketData("ONLINE", mb)); } } } } } }
public void Handle(object sender, EventArgs e) { ReferenceData.Entity.Conversation cvst = new ReferenceData.Entity.Conversation(); cvst.memberList = new List <ReferenceData.Entity.Account>(); cvst.memberList.Add(form.User); foreach (var mb in form.NewGroup.MemberList) { cvst.memberList.Add(mb.Acc); } cvst.title = form.NewGroup.GroupName; cvst.title2 = form.NewGroup.GroupName; cvst.creatorId = form.User.id; cvst.avatar = form.NewGroup.Avatar; cvst.avatar2 = form.NewGroup.AvatarName; cvst.senderId = form.User.id; form.AddChatBox(cvst); form.ResetCurrentConversation(); if (form.NewGroup != null) { form.NewGroup.Dispose(); form.NewGroup = null; } }
public void Handle(ReferenceData.Entity.Conversation cvst) { client.send(new SocketData("INSERTCONVERSATION", cvst)); }
public Conversation(ReferenceData.Entity.Conversation conversation, ReferenceData.Entity.Account acc) { InitializeComponent(); Cvst = conversation; Acc = acc; }