Пример #1
0
        public void Setup()
        {
            this.entity = new MessageResponse();
            this.model  = new MessageResponseModel();

            this.mapper = new MessageResponseMapper();
        }
Пример #2
0
        /// <summary>
        /// Get the list of Message Type
        /// </summary>
        /// <returns> Task<IActionResult></returns>
        public async Task <IActionResult> GetMessageType()
        {
            BaseResult <List <MessageTypeViewModel> > messageTypeViewModelResult = new BaseResult <List <MessageTypeViewModel> >
            {
                Result = RedisCacheHelper.Instance.Get <List <MessageTypeViewModel> >(Constants.CacheKeys.MessageTypeList)
            };

            if (messageTypeViewModelResult.Result == null || messageTypeViewModelResult.Result.Count == 0)
            {
                var messageTypeResult = await iMessage.GetMessageType().ConfigureAwait(false);

                if (messageTypeResult.IsError && messageTypeResult.ExceptionMessage != null)
                {
                    return(StatusCode(500, messageTypeResult));
                }
                else if (messageTypeResult.Result == null || messageTypeResult.Result.Count == 0)
                {
                    return(NoContent()); //204
                }
                else
                {
                    var result = MessageResponseMapper.MapMessageType(messageTypeResult);//maps to MessageTypeViewModel
                    RedisCacheHelper.Instance.Set <List <MessageTypeViewModel> >(Constants.CacheKeys.MessageTypeList, result.Result);
                    return(Ok(result));
                }
            }
            return(Ok(messageTypeViewModelResult)); //200
        }
Пример #3
0
        /// <summary>
        /// Get the details of particular message
        /// </summary>
        /// <param name="messageId"></param>
        /// <returns> Task<BaseResult<HotelMessageViewModel>></returns>
        public async Task <BaseResult <HotelMessageViewModel> > GetMessagesByMessageId(int messageId)
        {
            BaseResult <HotelMessageViewModel> result = new BaseResult <HotelMessageViewModel>();
            var model = await iMessageLibrary.GetListByPredicate(x => x.Id == messageId && !x.IsDeleted).ConfigureAwait(false);

            if (model.IsError || model.ExceptionMessage != null)
            {
                result.IsError          = true;
                result.ExceptionMessage = model.ExceptionMessage;
                return(result);
            }
            if (model == null || model.Result.Count == 0)
            {
                result.IsError   = model.IsError;
                result.ErrorCode = (int)coreHelper.Constants.ErrorCodes.NoMessageOfID;
                result.Message   = string.Format(coreHelper.Constants.ErrorMessage.NoMessageOfID, messageId);
                return(result);
            }
            result = MessageResponseMapper.MapMessage(model.Result[0]);
            return(result);
        }
Пример #4
0
        public async Task <IActionResult> GetMessagesByHotelId([FromBody] int hotelId)
        {
            if (hotelId <= default(int))
            {
                return(new BadRequestResult());
            }
            BaseResult <List <Message> > messagesResult = new BaseResult <List <Message> >();
            var messageTypeResult = await iMessage.GetMessageType().ConfigureAwait(false);

            messagesResult = await iMessage.GetMessagesByHotelId(hotelId).ConfigureAwait(false);

            if (messagesResult.IsError && messagesResult.ExceptionMessage != null || messageTypeResult.IsError && messageTypeResult.ExceptionMessage != null)
            {
                return(StatusCode(500, messagesResult));
            }
            else if (messagesResult.Result == null || messagesResult.Result.Count == 0 || messagesResult.Result == null || messagesResult.Result.Count == 0)
            {
                return(NoContent());                                                                    //204
            }
            var result = MessageResponseMapper.MapMessagesByHotelId(messagesResult, messageTypeResult); //maps to GetMessagesViewModel

            return(Ok(result));
        }