public void ProcessMessage(object sender, EventArgs args)
{
var unreadMessages = emailClient.GetUnreadMessages();
foreach (var message in unreadMessages)
{
var convertedMessage = Convert(message);
var messageReceiver = convertedMessage.Receivers.FirstOrDefault();
var messageSender = convertedMessage.Sender;
var ownerPerson = repository.Query<User>(x => x.Teams,x=>x.RelatedPerson).FirstOrDefault(x => x.RelatedPerson.Id == messageReceiver.Id);
if (ownerPerson == null)
{
ownerPerson = repository.Query<User>(x => x.Teams, x => x.RelatedPerson).FirstOrDefault(x => x.RelatedPerson.Id == messageSender.Id);
}
if (ownerPerson != null)
{
convertedMessage.Owner = ownerPerson.CurrentTeam;
repository.Save(convertedMessage);
}
createInquiry(convertedMessage);
}
}