Пример #1
0
        public User GetUser(string userUri)
        {
            _logger.Log(LogLevel.Debug, String.Format("Find User {0}", userUri));

            DomainServices.MessageServices messageServices = new DomainServices.MessageServices(_ctx);

            var uriType = messageServices.GetURIType(userUri);

            _logger.Log(LogLevel.Debug, String.Format("Find User {0} with UriType {1}", userUri, uriType));

            User user = null;

            try
            {
                switch (uriType)
                {
                case URIType.FacebookAccount:
                    user = _ctx.Users
                           .FirstOrDefault(u => u.UserName.Equals(userUri));

                    return(user);

                case URIType.MECode:
                    var meCode = _ctx.MECodes
                                 .Include("User")
                                 .FirstOrDefault(m => m.MeCode.Equals(userUri));

                    if (meCode == null)
                    {
                        return(null);
                    }

                    user = meCode.User;

                    return(user);

                case URIType.EmailAddress:
                    user = _ctx.Users
                           .FirstOrDefault(u => u.EmailAddress == userUri);

                    return(user);

                case URIType.MobileNumber:
                    var phoneNumber = formattingServices.RemoveFormattingFromMobileNumber(userUri);

                    user = _ctx.Users
                           .FirstOrDefault(u => u.MobileNumber == phoneNumber);

                    return(user);
                }
            }
            catch (Exception ex)
            {
                _logger.Log(LogLevel.Error, String.Format("Exception Getting User {0}", userUri));
            }

            return(null);
        }
Пример #2
0
        // GET /api/{userId}/PayStreamMessages
        public HttpResponseMessage <List <MessageModels.MessageResponse> > Get(string userId)
        {
            DomainServices.MessageServices messageServices = new DomainServices.MessageServices(_ctx);

            var user = GetUser(userId);

            if (user == null)
            {
                var message = new HttpResponseMessage <List <MessageModels.MessageResponse> >(HttpStatusCode.NotFound);
                message.ReasonPhrase = String.Format("User {0} specified in the request not found.", userId);

                return(message);
            }

            var messages = _ctx.Messages
                           .Where(m => m.SenderId == user.UserId || m.RecipientId.Value == user.UserId)
                           .OrderByDescending(m => m.CreateDate)
                           .ToList <Message>();

            List <MessageModels.MessageResponse> messageResponse = new List <MessageModels.MessageResponse>();

            URIType senderUriType    = URIType.MECode;
            URIType recipientUriType = URIType.MECode;

            string senderName    = "";
            string recipientName = "";

            try
            {
                foreach (var message in messages)
                {
                    senderUriType    = URIType.MECode;
                    recipientUriType = URIType.MECode;

                    senderUriType    = messageServices.GetURIType(message.SenderUri);
                    recipientUriType = messageServices.GetURIType(message.RecipientUri);

                    if (!String.IsNullOrEmpty(message.Sender.FirstName) || !String.IsNullOrEmpty(message.Sender.LastName))
                    {
                        senderName = message.Sender.FirstName + " " + message.Sender.LastName;
                    }
                    else if (!String.IsNullOrEmpty(message.senderFirstName) || !String.IsNullOrEmpty(message.senderLastName))
                    {
                        senderName = message.senderFirstName + " " + message.Sender.LastName;
                    }
                    else
                    {
                        senderName = (senderUriType == URIType.MobileNumber ? _formattingServices.FormatMobileNumber(message.SenderUri) : message.SenderUri);
                    }

                    if (message.Recipient != null && (!String.IsNullOrEmpty(message.Recipient.FirstName) || !String.IsNullOrEmpty(message.Recipient.LastName)))
                    {
                        recipientName = message.Recipient.FirstName + " " + message.Recipient.LastName;
                    }
                    else if (!String.IsNullOrEmpty(message.recipientFirstName) || !String.IsNullOrEmpty(message.recipientLastName))
                    {
                        recipientName = message.recipientFirstName + " " + message.recipientLastName;
                    }
                    else
                    {
                        recipientName = (recipientUriType == URIType.MobileNumber ? _formattingServices.FormatMobileNumber(message.RecipientUri) : message.RecipientUri);
                    }

                    _logger.Log(LogLevel.Error, String.Format("URI Formats {0} {1}", senderUriType, recipientUriType));

                    String direction = "In";

                    if (message.SenderId.Equals(user.UserId))
                    {
                        direction = "Out";
                    }

                    messageResponse.Add(new MessageModels.MessageResponse()
                    {
                        amount     = message.Amount,
                        comments   = message.Comments,
                        createDate = message.CreateDate.ToString("ddd MMM dd HH:mm:ss zzz yyyy"),
                        Id         = message.Id,
                        //lastUpdatedDate =  m.LastUpdatedDate.ToString("ddd MMM dd HH:mm:ss zzz yyyy"),
                        messageStatus     = message.MessageStatus.ToString(),
                        messageType       = message.MessageType.ToString(),
                        recipientUri      = (recipientUriType == URIType.MobileNumber ? _formattingServices.FormatMobileNumber(message.RecipientUri) : message.RecipientUri),
                        senderUri         = (senderUriType == URIType.MobileNumber ? _formattingServices.FormatMobileNumber(message.SenderUri) : message.SenderUri),
                        direction         = direction,
                        latitude          = message.Latitude,
                        longitutde        = message.Longitude,
                        senderName        = senderName,
                        senderImageUri    = message.senderImageUri,
                        recipientName     = recipientName,
                        recipientImageUri = message.recipientImageUri
                    });

                    _logger.Log(LogLevel.Error, String.Format("Added MEssage {0} {1}", senderUriType, recipientUriType));
                }
            }
            catch (Exception ex)
            {
                _logger.Log(LogLevel.Error, String.Format("Unhandled Exception formatting response. {0}", ex.Message));
            }

            if (messageResponse == null)
            {
                var message = new HttpResponseMessage <List <MessageModels.MessageResponse> >(HttpStatusCode.InternalServerError);
                message.ReasonPhrase = String.Format("Unhandled exception get message for {0}", userId);

                return(message);
            }

            return(new HttpResponseMessage <List <MessageModels.MessageResponse> >(messageResponse, HttpStatusCode.OK));
        }
        // GET /api/{userId}/PayStreamMessages
        public HttpResponseMessage<List<MessageModels.MessageResponse>> Get(string userId)
        {
            DomainServices.MessageServices messageServices = new DomainServices.MessageServices(_ctx);

            var user = GetUser(userId);

            if (user == null)
            {
                var message = new HttpResponseMessage<List<MessageModels.MessageResponse>>(HttpStatusCode.NotFound);
                message.ReasonPhrase = String.Format("User {0} specified in the request not found.", userId);

                return message;
            }

            var messages = _ctx.Messages
                .Where(m => m.SenderId == user.UserId || m.RecipientId.Value == user.UserId)
                .OrderByDescending(m => m.CreateDate)
                .ToList<Message>();

            List<MessageModels.MessageResponse> messageResponse = new List<MessageModels.MessageResponse>();

            URIType senderUriType = URIType.MECode;
            URIType recipientUriType = URIType.MECode;

            string senderName = "";
            string recipientName = "";

            try
            {
                foreach (var message in messages)
                {
                    senderUriType = URIType.MECode;
                    recipientUriType = URIType.MECode;

                    senderUriType = messageServices.GetURIType(message.SenderUri);
                    recipientUriType = messageServices.GetURIType(message.RecipientUri);

                    if (!String.IsNullOrEmpty(message.Sender.FirstName) || !String.IsNullOrEmpty(message.Sender.LastName))
                        senderName = message.Sender.FirstName + " " + message.Sender.LastName;
                    else if (!String.IsNullOrEmpty(message.senderFirstName) || !String.IsNullOrEmpty(message.senderLastName))
                        senderName = message.senderFirstName + " " + message.Sender.LastName;
                    else
                        senderName = (senderUriType == URIType.MobileNumber ? _formattingServices.FormatMobileNumber(message.SenderUri) : message.SenderUri);

                    if (message.Recipient != null && (!String.IsNullOrEmpty(message.Recipient.FirstName) || !String.IsNullOrEmpty(message.Recipient.LastName)))
                        recipientName = message.Recipient.FirstName + " " + message.Recipient.LastName;
                    else if (!String.IsNullOrEmpty(message.recipientFirstName) || !String.IsNullOrEmpty(message.recipientLastName))
                        recipientName = message.recipientFirstName + " " + message.recipientLastName;
                    else
                        recipientName = (recipientUriType == URIType.MobileNumber ? _formattingServices.FormatMobileNumber(message.RecipientUri) : message.RecipientUri);

                    _logger.Log(LogLevel.Error, String.Format("URI Formats {0} {1}", senderUriType, recipientUriType));

                    String direction = "In";

                    if (message.SenderId.Equals(user.UserId))
                        direction = "Out";

                    messageResponse.Add(new MessageModels.MessageResponse()
                    {
                        amount = message.Amount,
                        comments = message.Comments,
                        createDate = message.CreateDate.ToString("ddd MMM dd HH:mm:ss zzz yyyy"),
                        Id = message.Id,
                        //lastUpdatedDate =  m.LastUpdatedDate.ToString("ddd MMM dd HH:mm:ss zzz yyyy"),
                        messageStatus = message.MessageStatus.ToString(),
                        messageType = message.MessageType.ToString(),
                        recipientUri = (recipientUriType == URIType.MobileNumber ? _formattingServices.FormatMobileNumber(message.RecipientUri) : message.RecipientUri),
                        senderUri = (senderUriType == URIType.MobileNumber ? _formattingServices.FormatMobileNumber(message.SenderUri) : message.SenderUri),
                        direction = direction,
                        latitude = message.Latitude,
                        longitutde = message.Longitude,
                        senderName = senderName,
                        senderImageUri = message.senderImageUri,
                        recipientName = recipientName,
                        recipientImageUri = message.recipientImageUri
                    });

                    _logger.Log(LogLevel.Error, String.Format("Added MEssage {0} {1}", senderUriType, recipientUriType));

                }
            }
            catch (Exception ex)
            {
                _logger.Log(LogLevel.Error, String.Format("Unhandled Exception formatting response. {0}", ex.Message));
            }

            if (messageResponse == null)
            {
                var message = new HttpResponseMessage<List<MessageModels.MessageResponse>>(HttpStatusCode.InternalServerError);
                message.ReasonPhrase = String.Format("Unhandled exception get message for {0}", userId);

                return message;
            }

            return new HttpResponseMessage<List<MessageModels.MessageResponse>>(messageResponse, HttpStatusCode.OK);
        }
Пример #4
0
        public User GetUser(string userUri)
        {
            _logger.Log(LogLevel.Debug, String.Format("Find User {0}", userUri));

            DomainServices.MessageServices messageServices = new DomainServices.MessageServices(_ctx);

            var uriType = messageServices.GetURIType(userUri);

            _logger.Log(LogLevel.Debug, String.Format("Find User {0} with UriType {1}", userUri, uriType));

            User user = null;

            try
            {
                switch (uriType)
                {
                    case URIType.FacebookAccount:
                        user = _ctx.Users
                            .FirstOrDefault(u => u.UserName.Equals(userUri));

                        return user;

                    case URIType.MECode:
                        var meCode = _ctx.MECodes
                            .Include("User")
                            .FirstOrDefault(m => m.MeCode.Equals(userUri));

                        if (meCode == null)
                            return null;

                        user = meCode.User;

                        return user;

                    case URIType.EmailAddress:
                        user = _ctx.Users
                            .FirstOrDefault(u => u.EmailAddress == userUri);

                        return user;

                    case URIType.MobileNumber:
                        var phoneNumber = formattingServices.RemoveFormattingFromMobileNumber(userUri);

                        user = _ctx.Users
                            .FirstOrDefault(u => u.MobileNumber == phoneNumber);

                        return user;

                }

            }
            catch (Exception ex)
            {
                _logger.Log(LogLevel.Error, String.Format("Exception Getting User {0}", userUri));
            }

            return null;
        }