public async Task <APIResponse> GetMultiCodes(MultiCodeParameters multiCodeParameters)
        {
            try
            {
                // string serializedStories;
                var client = httpClientFactory.CreateClient(VendorServiceOperation.serviceName);

                UriBuilder url = new UriBuilder(servicesConfig.Vendor + VendorServiceOperation.GetMultiCodes());
                url.Query = QueryStringHelper.ConvertToQueryString(multiCodeParameters);

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

                if (response.IsSuccessStatusCode)
                {
                    var multicode = JsonConvert.DeserializeObject <List <MultiCodeResponse> >(await response.Content.ReadAsStringAsync());
                    return(new APIResponse(multicode, HttpStatusCode.OK));
                }

                return(new APIResponse(response.StatusCode));
            }
            catch (Exception ex)
            {
                logger.Error(ex, "Exception in method 'GetMultiCodes()'");
                var exMessage = ex.InnerException != null ? ex.InnerException.Message : ex.Message;
                return(new APIResponse(exMessage, HttpStatusCode.InternalServerError));
            }
        }
예제 #2
0
        public async Task <IActionResult> GetAllMultiCodes()
        {
            MultiCodeParameters multiCodeParameters = new MultiCodeParameters();
            var getAllMultiCodeQuery = new GetAllMultiCodesQuery(multiCodeParameters);
            var result = await mediator.Send(getAllMultiCodeQuery);

            return(StatusCode((int)result.Code, result.Value));
        }
예제 #3
0
        public async Task <IActionResult> GetMultiCodes([FromQuery] MultiCodeParameters multiCodeParameters)
        {
            var getAllMultiCodeQuery = new GetAllMultiCodesQuery(multiCodeParameters);
            var result = await mediator.Send(getAllMultiCodeQuery);

            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));
        }
        /// <summary>
        /// Gets all multicodes.
        /// </summary>
        /// <param name="multiCodeParameters">The multicode parameters.</param>
        /// <returns></returns>
        public async Task <List <Multicode> > GetAllMultiCodes(MultiCodeParameters multiCodeParameters)
        {
            var getMultiCodesParams = new object[]
            {
                new MySqlParameter("@p_Id", 0),
                new MySqlParameter("@p_Code", multiCodeParameters.Code)
            };

            var multicodes = await FindAll("CALL SpSelectActiveMultiCode(@p_Id, @p_Code)", getMultiCodesParams).ToListAsync();

            return(multicodes);
        }
예제 #5
0
        /// <summary>
        /// Gets all multicodes.
        /// </summary>
        /// <param name="multiCodeParameters">The multicode parameters.</param>
        /// <returns></returns>
        public async Task <PagedList <Entity> > GetAllMultiCodes(MultiCodeParameters multiCodeParameters)
        {
            var getMultiCodesParams = new object[]
            {
                new MySqlParameter("@p_Id", 0),
                new MySqlParameter("@p_Code", multiCodeParameters.Code)
            };

            var multicodes = await FindAll("CALL SpSelectActiveMultiCode(@p_Id, @p_Code)", getMultiCodesParams).ToListAsync();

            var mappedmulticodes = multicodes.AsQueryable().ProjectTo <MultiCodeResponse>(mapper.ConfigurationProvider);
            //var sortedmulticodes = sortHelper.ApplySort(mappedmulticodes, multiCodeParameters.OrderBy);
            //var shapedmulticodes = dataShaper.ShapeData(sortedmulticodes, multiCodeParameters.Fields);
            var shapedmulticodes = dataShaper.ShapeData(mappedmulticodes, string.Empty);

            return(await PagedList <Entity> .ToPagedList(shapedmulticodes, 0, 0));
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="GetAllMultiCodesQuery"/> class.
 /// </summary>
 /// <param name="multiCodeParameters">The multicode parameters.</param>
 public GetAllMultiCodesQuery(MultiCodeParameters multiCodeParameters)
 {
     MultiCodeParameters = multiCodeParameters;
 }
예제 #7
0
        public async Task <IActionResult> GetMultiCodes([FromQuery] MultiCodeParameters multiCodeParameters)
        {
            var result = await multiCodeService.GetMultiCodes(multiCodeParameters);

            return(StatusCode((int)result.Code, result.Value));
        }