private void CopyMessageDetailModel(MessageDetailModel to, MCommunication_Message from) { to.MessageId = from.MessageId; to.UserId = from.UserId; //to.OrderId = from.OrderId; //to.OrderNumber = from.OrderNumber; to.From = from.From; to.To = from.To; to.Subject = from.Subject; to.Text = from.Text; to.SentDateTime = Locale.GetLocalTimeFromUtc(from.CreateDateTimeUtc); to.ReceivedDateTime = Locale.GetLocalTimeFromUtc(from.CreateDateTimeUtc); to.AcknowledgementDateTime = Locale.GetLocalTimeFromUtc(from.AcknowledgementDateTimeUtc); to.New = from.AcknowledgementDateTimeUtc == null; to.Incoming = from.SendReceiveCode == SendReceiveCodes.ToUser; if (from.Conversation != null) { to.Conversation = new List <MessageDetailModel>(); foreach (var svcRelatedMessage in from.Conversation.Where(r => r.CreateDateTimeUtc < from.CreateDateTimeUtc).OrderByDescending(r => r.CreateDateTimeUtc)) { to.Conversation.Add(CreateMessageDetailModel(svcRelatedMessage)); } } }
public MessageDetailModel CreateMessageDetailModel(MCommunication_Message from) { var to = new MessageDetailModel(); CopyMessageDetailModel(to, from); return(to); }
public static AMessage_Message AMessage_Message(MCommunication_Message mMessage, bool allowAcknowledge) { var message = new AMessage_Message() { MMessage = mMessage, AllowAcknowledge = allowAcknowledge }; return(message); }
private void CopyMessageReplyModel(MessageReplyModel to, MCommunication_Message from) { to.ReplyToMessageId = from.MessageId; to.Subject = from.Subject; //to.OrderId = from.OrderId; //to.OrderNumber = from.OrderNumber; to.Conversation = new List <MessageDetailModel>(); foreach (var svcRelatedMessage in from.Conversation.Where(r => r.CreateDateTimeUtc <= from.CreateDateTimeUtc).OrderByDescending(r => r.CreateDateTimeUtc)) { to.Conversation.Add(CreateMessageDetailModel(svcRelatedMessage)); } }
public Message( AMessage_Message aMessage, MCommunication_Message mMessage, bool highlight, IApplicationLocale locale) { AMessage = aMessage; MMessage = aMessage?.MMessage ?? mMessage; Highlight = highlight; Locale = locale; LastEmail = aMessage.MMessage.Emails?.Last(); }
public ReplyMessage CreateReplyMessage(MCommunication_Message mMessage) { var model = new ReplyMessage() { UserId = mMessage.UserId, UserName = mMessage.From, ReplyToMessageId = mMessage.MessageId, Subject = mMessage.Subject, //OrderId = svcMessage.OrderId, }; model.Conversation = new List <Message>(); foreach (var mRelatedMessage in mMessage.Conversation.Where(r => r.CreateDateTimeUtc <= mMessage.CreateDateTimeUtc).OrderByDescending(r => r.CreateDateTimeUtc)) { model.Conversation.Add(CreateMessage(null, mRelatedMessage, false)); } return(model); }
public static MCommunication_Message MCommunication_Message( QuiltContext ctx, Message dbMessage, bool canAcknowledge, bool includeEmails, IList <MCommunication_Message> conversation) { string email; if (TryParseUserId.FromParticipantReference(dbMessage.Participant.ParticipantReference, out string userId)) { var dbAspNetUser = ctx.AspNetUsers.Where(r => r.Id == userId).Single(); email = dbAspNetUser.Email; } else { userId = null; email = $"{dbMessage.Participant.ParticipantId}@richtodd.com"; } string from; string to; if (dbMessage.SendReceiveCode == SendReceiveCodes.FromUser) { from = email; to = Constants.AdminMailEmailName; } else // ToUser { from = Constants.AdminMailEmailName; to = email; } IList <MCommunication_Email> emails = includeEmails ? dbMessage.MessageEmailRequests.Select(r => MCommunication_Email(r.EmailRequest)).ToList() : null; var message = new MCommunication_Message() { MessageId = dbMessage.MessageId, UserId = userId, ConversationId = dbMessage.ConversationId, From = from, To = to, Subject = dbMessage.Subject, Text = dbMessage.Text, SendReceiveCode = dbMessage.SendReceiveCode, CreateDateTimeUtc = dbMessage.CreateDateTimeUtc, AcknowledgementDateTimeUtc = dbMessage.AcknowledgementDateTimeUtc, TopicId = dbMessage.TopicId, TopicReference = dbMessage.Topic?.TopicReference, CanAcknowledge = canAcknowledge, Fields = MCommunication_TopicFields(dbMessage.Topic), Emails = emails, Conversation = conversation }; return(message); }
private bool AllowAcknowledge(MCommunication_Message mMessage) { return(mMessage.SendReceiveCode == "I"); // SendReceiveCodes.FromUser; }
public Message CreateMessage(AMessage_Message aMessage, MCommunication_Message mMessage, bool highlight) { var model = new Message(aMessage, mMessage, highlight, Locale); return(model); }