public Resultado UpdatePresupuesto(Presupuesto presupuesto) { try { var presupuestoDb = dbContext.Presupuestos.FirstOrDefault(p => p.Id == presupuesto.Id); if (presupuestoDb != null) { presupuestoDb.EstadoPresupuestoId = presupuesto.EstadoPresupuestoId; presupuestoDb.UsuarioModificacion = presupuesto.UsuarioModificacion; presupuestoDb.FechaModificacion = DateTime.Now; dbContext.Entry(presupuestoDb).State = EntityState.Modified; dbContext.SaveChanges(); return(new Resultado("El registro se guardó correctamente.")); } return(new Resultado("No se encontró el presupuesto específicado")); } catch (Exception excepcion) { LogHelper.RegisterError(excepcion.Message); return(new Resultado("Ocurrio un error. Favor contactarse con el administrador.")); } }
////public List<VPresupuestoCiudad> GetPresupuestosCiudades(int gestion) ////{ //// return GetPresupuestosCiudades(null, gestion); ////} ////public List<VPresupuestoCiudad> GetPresupuestosCiudades(List<int> ciudadesIds, int gestion) ////{ //// MapperManager.GetInstance(); //// var presupuestoCiudadDb = new List<VPresupuesto>(); //// if (ciudadesIds != null) //// { //// presupuestoCiudadDb = dbContext.VPresupuestos.Where(p => ciudadesIds.Contains(p.CiudadId) && p.Gestion == gestion).ToList(); //// } //// else //// { //// presupuestoCiudadDb = dbContext.VPresupuestos.Where(p => p.Gestion == gestion).ToList(); //// } //// var presupuestos = new List<VPresupuestoCiudad>(); //// presupuestoCiudadDb.ForEach(p => presupuestos.Add(Mapper.Map<VPresupuesto, VPresupuestoCiudad>(p))); //// return presupuestos; ////} public Resultado InsertPresupuesto(Presupuesto presupuesto) { MapperManager.GetInstance(); try { var presupuestoDb = Mapper.Map <Presupuesto, DataAccess.Models.Presupuesto>(presupuesto); presupuestoDb.EstadoPresupuestoId = 2; presupuestoDb.FechaCreacion = DateTime.Now; presupuestoDb.FechaModificacion = DateTime.Now; dbContext.Presupuestos.Add(presupuestoDb); dbContext.SaveChanges(); //Crear Presupuestos por ciudades var presupuestoCiudad = new DataAccess.Models.PresupuestoCiudad(); var ciudades = dbContext.Ciudades.Where(c => c.Activo); foreach (var ciudad in ciudades) { presupuestoCiudad = new DataAccess.Models.PresupuestoCiudad { PresupuestoId = presupuestoDb.Id, CiudadId = ciudad.Id, EstadoPresupuestoId = 2, Monto = 0, UsuarioCreacion = presupuestoDb.UsuarioCreacion, FechaCreacion = DateTime.Now, UsuarioModificacion = presupuestoDb.UsuarioModificacion, FechaModificacion = DateTime.Now }; dbContext.PresupuestosCiudades.Add(presupuestoCiudad); } dbContext.SaveChanges(); //Crear Presupuestos por facilities var presupuestoFacility = new DataAccess.Models.PresupuestoFacility(); var facilities = dbContext.Facilities.Where(c => c.Activo); foreach (var facility in facilities) { presupuestoFacility = new DataAccess.Models.PresupuestoFacility { PresupuestoId = presupuestoDb.Id, FacilityId = facility.Id, EstadoPresupuestoId = 2, Monto = 0, UsuarioCreacion = presupuestoDb.UsuarioCreacion, FechaCreacion = DateTime.Now, UsuarioModificacion = presupuestoDb.UsuarioModificacion, FechaModificacion = DateTime.Now }; dbContext.PresupuestosFacilities.Add(presupuestoFacility); } dbContext.SaveChanges(); return(new Resultado("El Presupuesto se guardó correctamente.")); } catch (Exception excepcion) { LogHelper.RegisterError(excepcion.Message); return(new Resultado("Ocurrio un error. Favor contactarse con el administrador.")); } }