Exemplo n.º 1
0
        public HttpResponseMessage GetSpecificPrice(HttpRequestMessage request, [FromUri] GetPriceRequest schedulesRequest)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(request.CreateResponse(System.Net.HttpStatusCode.BadRequest, ErrorHelper.GetErrorMessage(ModelState)));
                }

                using (var dbContext = new ApplicationDbContext())
                {
                    Repository <PriceDbModel, int> repository = new Repository <PriceDbModel, int>(dbContext);
                    PriceDbModel priceDbModel = repository.Find(st => st.TicketType == schedulesRequest.TicketType &&
                                                                st.PassengerType == schedulesRequest.PassengerType).First();

                    var price = Mapper.Map <Price>(priceDbModel);

                    return(request.CreateResponse(System.Net.HttpStatusCode.OK, price));
                }
            }
            catch (Exception)
            {
                return(new HttpResponseMessage(System.Net.HttpStatusCode.InternalServerError));
            }
        }
Exemplo n.º 2
0
 public Price GetPrice(GetPriceRequest request)
 {
     using (var webClient = new WebClient())
     {
         var result = webClient.UploadString(ConfigurationManager.AppSettings["MockingDownstreamServices.Externals.Pricer.GetPrice"], JsonConvert.SerializeObject(request));
         return(JsonConvert.DeserializeObject <Price>(result));
     }
 }
Exemplo n.º 3
0
 private Response <Price> Price(GetPriceRequest request)
 {
     using (var webClient = new WebClient
     {
         Encoding = Encoding.UTF8,
         Headers = { { "Content-type", "application/json" } }
     })
     {
         var responseString = webClient.UploadString(Address, JsonConvert.SerializeObject(request));
         var response       = JsonConvert.DeserializeObject <Response <Price> >(responseString);
         return(response);
     }
 }
Exemplo n.º 4
0
        public ActionResult <IEnumerable> getChartData([FromBody] GetPriceRequest request)
        {
            var baseCoinDataSet    = CsvReader.readFile(request.BaseCoin);
            var relatedCoinDataSet = CsvReader.readFile(request.RelatedCoin);
            Dictionary <String, List <CsvMappingResult <CoinPrice> > > baseCoinGroupedData;
            Dictionary <String, List <CsvMappingResult <CoinPrice> > > relatedCoinGroupedData;

            switch (request.GroupBy)
            {
            case "month":
                baseCoinGroupedData    = this._PricesService.GroupByOneMonth(baseCoinDataSet);
                relatedCoinGroupedData = this._PricesService.GroupByOneMonth(relatedCoinDataSet);
                break;

            case "year":
                baseCoinGroupedData    = this._PricesService.GroupByYear(baseCoinDataSet);
                relatedCoinGroupedData = this._PricesService.GroupByYear(relatedCoinDataSet);
                break;

            case "week":
                baseCoinGroupedData    = this._PricesService.GroupByWeek(baseCoinDataSet);
                relatedCoinGroupedData = this._PricesService.GroupByWeek(relatedCoinDataSet);
                break;

            case "quarter":
                baseCoinGroupedData    = this._PricesService.GroupByQuarter(baseCoinDataSet);
                relatedCoinGroupedData = this._PricesService.GroupByQuarter(relatedCoinDataSet);
                break;

            default:
                return(new BadRequestResult());
            }

            return(this._PricesService.CalculatePricesForPairByTasks(baseCoinGroupedData, relatedCoinGroupedData)
                   .Result);
        }