Esempio n. 1
0
        public async Task <IActionResult> Post(string nameOfTrip, [FromBody] ViewModels.Stop viewStopModel)
        {
            try
            {
                //if the view model is valid
                if (ModelState.IsValid)
                {
                    var newStop = Mapper.Map <models.Stop>(viewStopModel);
                    //lookup the Geocode here
                    var result = await _geoService.GetCoordsAsync("VNPT Bình Dươngsss");

                    //save stop to DB
                    _repository.AddNewStop(nameOfTrip, newStop);
                    if (await _repository.SaveChangesAsyn())
                    {
                        //return if everything will be ok
                        var updateViewModel = Mapper.Map <ViewModels.Stop>(newStop);
                        return(Created($"api/trips/{nameOfTrip}/stops/{newStop.Name}", updateViewModel));
                    }
                }
            }
            catch (Exception ex)
            {
                _logger.LogError($"can not add stop ({viewStopModel.Longitude},{viewStopModel.Latitude}) information {ex.Message}");
            }
            return(BadRequest("bad data"));
        }
Esempio n. 2
0
 public async Task <IActionResult> TaskLocation(Stop viewModelStop)
 {
     if (ModelState.IsValid)
     {
         try
         {
             _repository.AddNewLocation(Mapper.Map <models.Stop>(viewModelStop));
             if (await _repository.SaveChangesAsyn())
             {
                 ModelState.Clear();
             }
         }
         catch (Exception ex)
         {
             ModelState.AddModelError("", "something wrong happend with db connection");
             _logger.LogError($"Cannot add TaskLocation: {ex.Message}");
         }
     }
     return(View());
 }
Esempio n. 3
0
 public async Task <IActionResult> Post([FromBody] Trip theTrip)
 {
     if (ModelState.IsValid)
     {
         var newTrip = Mapper.Map <models.Trip>(theTrip);
         _repository.AddTrip(newTrip);
         if (await _repository.SaveChangesAsyn())
         {
             return(Created($"api/trip/{theTrip.Name}", Mapper.Map <ViewModels.Trip>(newTrip)));
         }
     }
     //return Ok(true);
     return(BadRequest(ModelState));
 }