Exemplo n.º 1
0
        public ActionResult Create([Bind(Include = "Id,Nombre,HoraInicio,HoraDeFin,Estado,Observacion,PersonaId,ProyectoId,DiaDeCreacion")] Actividad actividad)
        {
            if (ModelState.IsValid)
            {
                db.Actividades.Add(actividad);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.PersonaId  = new SelectList(db.Personas, "Id", "Nombre", actividad.PersonaId);
            ViewBag.ProyectoId = new SelectList(db.Proyectos, "Id", "Nombre", actividad.ProyectoId);
            return(View(actividad));
        }
        public ActividadRegistrada RegistrarNuevaActividad(CrearActividad crearActividad)
        {
            var actividad = new Actividad()
            {
                Estado      = crearActividad.Estado,
                HoraDeFin   = crearActividad.HoraFin,
                HoraInicio  = crearActividad.HoraInicio,
                Nombre      = crearActividad.Nombre,
                Observacion = crearActividad.Observacion,
                PersonaId   = crearActividad.IdPersona,
                ProyectoId  = crearActividad.IdProyecto
            };



            using (var db = new PersonalDb())
            {
                if (hayCruceDeHorarios(crearActividad, db))
                {
                    throw new ExcepcionControlada("El trabajador tienes algo programado a esa hora");;
                }
                db.Actividades.Add(actividad);
                db.SaveChanges();
                return(new ActividadRegistrada()
                {
                    EstadoDeLaActividad = actividad.Estado.ToString(),
                    NombreDeLaActividad = actividad.Nombre,
                    HoraFin = actividad.HoraDeFin,
                    HoraInicio = actividad.HoraInicio,
                    Id = actividad.Id,
                    NombreDeLaPersona = db.Personas.Find(actividad.PersonaId).Nombre,
                    NombreDelProyecto = db.Proyectos.Find(actividad.ProyectoId).Nombre,
                });
            }
        }
 public int RegistrarExcepcion(CrearExcepcion crearExcepcion)
 {
     using (var db = new PersonalDb())
     {
         var nuevaExcepcion = new LogDeExcepcion()
         {
             Content = crearExcepcion.Contenido,
             Mensaje = crearExcepcion.Excepcion.Message,
             Stack   = crearExcepcion.Excepcion.StackTrace,
             Uri     = crearExcepcion.Uri
         };
         db.LogDeExcepciones.Add(nuevaExcepcion);
         db.SaveChanges();
         return(nuevaExcepcion.Id);
     }
 }