public static Chat GetChat(this string id, string filterId, string name, string surname, bool patient) { Chat chat = new Chat(); chat.Id = Convert.ToInt16(filterId); chat.Name = name; chat.Surname = surname; Models.ForApi.MessageList received = id.GetMessage(patient, "received", filterId); Models.ForApi.MessageList sent = id.GetMessage(patient, "sent", filterId); if (received != null) { foreach (Models.ForApi.MessageMedicPatient message in received.Messages_received) { chat.MessageList.Add(message); } } if (sent != null) { foreach (Models.ForApi.MessageMedicPatient message in sent.Messages_sent) { chat.MessageList.Add(message); } } chat.MessageList = chat.MessageList.OrderBy(x => x.Timedate).ToList(); return(chat); }
public static Message GetMessage(this Models.ForApi.MessageList received, List <Models.ForApi.Patient> patients, List <Models.ForApi.Medic> medics) { Message message = new Message(); if (patients != null) { foreach (Models.ForApi.Patient p in patients) { Int16 toRead = 0; if (received != null) { foreach (Models.ForApi.MessageMedicPatient m in received.Messages_received) { if (m.Patient_id == p.Id) { if (!m.Read) { toRead++; } } } } message.chatProfiles.Add(new ChatProfile(p.Id, p.Name, p.Surname, toRead)); } } if (medics != null) { foreach (Models.ForApi.Medic me in medics) { Int16 toRead = 0; if (received != null) { foreach (Models.ForApi.MessageMedicPatient m in received.Messages_received) { if (m.Medic_id == me.Id) { if (!m.Read) { toRead++; } } } } message.chatProfiles.Add(new ChatProfile(me.Id, me.Name, me.Surname, toRead)); } } return(message); }