Example #1
0
        public async Task <IActionResult> ProcessTrip([FromBody] ProcessTransportViewModel pt)
        {
            Transport transport = new Transport
            {
                Cost            = pt.Cost - (pt.Discount + pt.DailyDiscount),
                MrtLine         = pt.MrtLine,
                TransportCardId = pt.TransportCardId,
                TrasportDate    = DateTime.Now
            };

            bool resultAddTransport = await _transportService.AddTransport(transport);

            TransportCard transportCard = await _cardService.GetTransportCardById(pt.TransportCardId);

            transportCard.Load          -= pt.Cost;
            transportCard.LastDateUsed   = DateTime.Now;
            transportCard.ExpirationDate = DateTime.Now.AddYears(5);

            bool resultUpdateCard = await _cardService.UpdateCard(transportCard);

            return(Ok(new { response_message = "Successfuly proccessed trip." }));
        }