public IHttpActionResult GetAllInfo() { IEnumerable <RutaDto> rutas = _serviceRuta.GetAll(false); IEnumerable <InfoMapModel> rutasVM = MapDtoToViewModel.MapInfo(rutas); Result result = new Result(rutasVM); return(result.CreateResponse(this)); }
public IEnumerable <RutaDto> GetAll(bool withTramos) { string cacheKey = string.Format("ServiceRuta@GetAll@{0}", withTramos ? "ConTramos" : "SinTramos"); return(SimpleCache.GetCache(cacheKey, () => { return _service.GetAll(withTramos); })); }
private void NormalizeInfoVM(IEnumerable <TramoDto> tramos, IEnumerable <TramoModel> tramosVM) { IList <TramoModel> result = new List <TramoModel>(); IEnumerable <ProvinciaDto> provincias = _serviceProvincia.GetAll(false); IEnumerable <RutaDto> rutas = _serviceRuta.GetAll(false); IEnumerable <CalzadaDto> calzadas = _serviceCalzada.GetAll(false); IEnumerable <ReferenciaDto> referencias = _serviceReferencia.GetAll(); foreach (var itemTramoVM in tramosVM) { TramoDto tramoDto = tramos.SingleOrDefault(x => x.IdTramo == itemTramoVM.IdTramo); if (tramoDto == null) { continue; } itemTramoVM.Provincia = provincias.SingleOrDefault(x => x.Id == itemTramoVM.IdProvincia)?.Nombre; itemTramoVM.Ruta = rutas.SingleOrDefault(x => x.Id == itemTramoVM.IdRuta)?.Nombre; itemTramoVM.Calzada = calzadas.SingleOrDefault(x => x.Id == itemTramoVM.IdCalzada)?.Nombre; itemTramoVM.Referencias = tramoDto.GetListReferencias(referencias); } }
public override void SaveData(List<TramoImport> info) { var provincias = _serviceProvincia.GetAll(false); var rutas = _serviceRuta.GetAll(false); var calzadas = _serviceCalzada.GetAll(false); foreach (var itemTramo in info) { if (string.IsNullOrEmpty(itemTramo.TramoDesnormalizado)) continue; try { //Verificamos información de la provincia var provinciaKey = NormalizerKey.Normalize(itemTramo.Provincia); if (provinciaKey == "bahia-blanca") provinciaKey = "buenos-aires"; var provinciaDto = provincias.SingleOrDefault(x => x.Key == provinciaKey); if (provinciaDto == null) { provinciaDto = new ProvinciaDto(); provinciaDto.Nombre = itemTramo.Provincia; provinciaDto.Key = provinciaKey; provinciaDto.Id = _serviceProvincia.Create(provinciaDto); } //Verificamos información de la ruta var rutaKey = NormalizerKey.Normalize(itemTramo.Ruta); var rutaDto = rutas.SingleOrDefault(x => x.Key == rutaKey); if (rutaDto == null) { rutaDto = new RutaDto(); rutaDto.Nombre = itemTramo.Ruta; rutaDto.Key = rutaKey; rutaDto.Id = _serviceRuta.Create(rutaDto); } //Verificamos información de la calzada var calzadaKey = NormalizerKey.Normalize(itemTramo.Calzada); if (calzadaKey.StartsWith("pavimento-flexible")) calzadaKey = "pavimento-flexible"; var calzadaDto = calzadas.SingleOrDefault(x => x.Key == calzadaKey); if (calzadaDto == null) { if (!string.IsNullOrEmpty(itemTramo.Calzada)) { calzadaDto = new CalzadaDto(); calzadaDto.Nombre = itemTramo.Calzada; calzadaDto.Key = calzadaKey; calzadaDto.Id = _serviceCalzada.Create(calzadaDto); } else { //Valor default calzadaDto = new CalzadaDto(); calzadaDto.Id = 1; } } //Mapeamos dto TramoDto tramoDto = new TramoDto(); tramoDto.IdProvincia = provinciaDto.Id; tramoDto.IdRuta = rutaDto.Id; tramoDto.IdCalzada = calzadaDto.Id; tramoDto.TramoNormalizado = itemTramo.TramoNormalizado; tramoDto.TramoDesnormalizado = itemTramo.TramoDesnormalizado; tramoDto.Detalle = itemTramo.Detalle; tramoDto.Observaciones = itemTramo.Observaciones; tramoDto.FechaActualizacion = itemTramo.Actualizacion; tramoDto.Coordenadas = itemTramo.Coordenadas; //Grabamos información del tramo _serviceTramo.CreateOrUpdate(tramoDto); } catch (Exception ex) { _logger.Error("DownloadDb.SaveData", ex.Message, ex); } } _logger.Info("DownloadDb.SaveData", $"{info.Count} registros grabados."); }