public async Task <IActionResult> GetEventGalleryByVendorId([FromQuery] EventGalleryParameters eventGalleryParameters)
        {
            var getAllEventsQuery = new GetAllEventGalleryByVendorIdQuery(eventGalleryParameters);
            var result            = await mediator.Send(getAllEventsQuery);

            if (result.Code == HttpStatusCode.OK)
            {
                Response.Headers.Add("X-Pagination", PagedList <Entity> .ToJson(result.Value as PagedList <Entity>));
            }

            return(StatusCode((int)result.Code, result.Value));
        }
Beispiel #2
0
        public async Task <APIResponse> GetEventGalleryByVendorId(EventGalleryParameters eventGalleryParameters)
        {
            try
            {
                string serializedStories;
                // List<AssetResponse> stories;

                /* var encodedStories = await distributedCache.GetAsync(BlogServiceOperation.GetStoriesCacheName);
                 *
                 * if (encodedStories != null)
                 * {
                 *   serializedStories = Encoding.UTF8.GetString(encodedStories);
                 *   stories = JsonConvert.DeserializeObject<List<StoryResponse>>(serializedStories);
                 * }
                 * else
                 * {*/
                var client = httpClientFactory.CreateClient(VendorServiceOperation.serviceName);

                UriBuilder url = new UriBuilder(servicesConfig.Blog + VendorServiceOperation.GetEventsByCondition());
                url.Query = QueryStringHelper.ConvertToQueryString(eventGalleryParameters);

                var response = await client.GetAsync(url.ToString());

                var eventResponse = JsonConvert.DeserializeObject <List <EventGalleryResponse> >(await response.Content.ReadAsStringAsync());
                foreach (var item1 in eventResponse)
                {
                    byte[] b = System.IO.File.ReadAllBytes(item1.CoverPhoto);
                    item1.CoverPhoto = Convert.ToBase64String(b);
                }
                serializedStories = JsonConvert.SerializeObject(eventResponse);

                /* encodedStories = Encoding.UTF8.GetBytes(serializedStories);
                 * var options = new DistributedCacheEntryOptions()
                 *               .SetSlidingExpiration(TimeSpan.FromMinutes(1))
                 *               .SetAbsoluteExpiration(DateTime.Now.AddHours(1));
                 *
                 * await distributedCache.SetAsync(VendorServiceOperation.GetStoriesCacheName, encodedStories, options);
                 * }*/

                return(new APIResponse(eventResponse, HttpStatusCode.OK));
            }
            catch (Exception ex)
            {
                //  logger.Error(ex, "Exception in method 'GetEventGalleryByVendorId()'");
                var exMessage = ex.InnerException != null ? ex.InnerException.Message : ex.Message;
                return(new APIResponse(exMessage, HttpStatusCode.InternalServerError));
            }
        }
        /// <summary>
        /// Gets event gallery by vendor
        /// </summary>
        /// <param name="eventGalleryParameters"></param>
        /// <returns></returns>
        public async Task <PagedList <Entity> > GetEventGalleryByVendorId(EventGalleryParameters eventGalleryParameters)
        {
            var getEventsParams = new object[] {
                new MySqlParameter("@limit", eventGalleryParameters.PageSize),
                new MySqlParameter("@offset", (eventGalleryParameters.PageNumber - 1) * eventGalleryParameters.PageSize),
                new MySqlParameter("@fromDate", eventGalleryParameters.FromDate),
                new MySqlParameter("@toDate", eventGalleryParameters.ToDate),
                new MySqlParameter("@isForVendor", eventGalleryParameters.IsForVendor),
                new MySqlParameter("@isForEvent", eventGalleryParameters.IsForEvent),
                new MySqlParameter("@value", eventGalleryParameters.Value)
            };

            var eventgallery = await FindAll("CALL SpSelectActiveGallery(@limit, @offset, @value, @isForVendor, @isForEvent, @fromDate, @toDate)", getEventsParams).ToListAsync();

            var mappedeventgallery = eventgallery.AsQueryable().ProjectTo <EventGalleryResponse>(mapper.ConfigurationProvider);
            var sortedeventgallery = sortHelper.ApplySort(mappedeventgallery, eventGalleryParameters.OrderBy);
            var shapedeventgallery = dataShaper.ShapeData(sortedeventgallery, eventGalleryParameters.Fields);

            return(await PagedList <Entity> .ToPagedList(shapedeventgallery, eventGalleryParameters.PageNumber, eventGalleryParameters.PageSize));
        }
Beispiel #4
0
        public async Task <IActionResult> GetEventGalleryByVendorId([FromQuery] EventGalleryParameters eventGalleryParameters)
        {
            var result = await eventGalleryService.GetEventGalleryByVendorId(eventGalleryParameters);

            return(StatusCode((int)result.Code, result.Value));
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="GetAllEventGalleryByVendorIdQuery"/> class.
 /// </summary>
 /// <param name="eventGalleryParameters">The event gallery parameters.</param>
 public GetAllEventGalleryByVendorIdQuery(EventGalleryParameters eventGalleryParameters)
 {
     EventGalleryParameters = eventGalleryParameters;
 }