コード例 #1
0
        /// <summary>
        /// Elimina una actividad a un plan de trabajo y el usuario relacionado a esa actividad
        /// </summary>
        /// <param name="IdUserPlanTrabajo">recibe el id del usuario que tiene asiganada la tarea </param>
        /// <returns>redirecciona a actividadesplandetrabajo con el id del plan de trabajo/returns>
        public ActionResult EliminarActividadPlanTrabajo(int IdUserPlanTrabajo)
        {
            UsuariosPlandetrabajo usuariosPlandetrabajo = db.Tb_UsersPlandeTrabajo.Find(IdUserPlanTrabajo);

            db.Tb_UsersPlandeTrabajo.Remove(usuariosPlandetrabajo);
            PlandeTrabajo plandeTrabajo = db.Tb_PlandeTrabajo.Find(usuariosPlandetrabajo.Plat_Id);

            plandeTrabajo.FechaActualizacion = DateTime.Now;
            db.Entry(plandeTrabajo).State    = EntityState.Modified;
            db.SaveChanges();
            return(RedirectToAction("ActividadesPlanTrabajo", new { IdPlantTrabajo = usuariosPlandetrabajo.Plat_Id }));
        }
コード例 #2
0
        public ActionResult Actividadesplantra([Bind(Include = "IdPlantTrabajo,IdActiCumplimiento,IdUser")] PlandetrabajoActividadesViewModel model)
        {
            if (ModelState.IsValid)
            {
                UsuariosPlandetrabajo user = new UsuariosPlandetrabajo
                {
                    Acum_Id = model.IdActiCumplimiento,
                    Plat_Id = model.IdPlantTrabajo,
                    Emp_Id  = AccountData.NitEmpresa,
                    Id      = model.IdUser
                };
                PlandeTrabajo plandeTrabajo = db.Tb_PlandeTrabajo.Find(model.IdPlantTrabajo);
                plandeTrabajo.FechaActualizacion = DateTime.Now;
                db.Entry(plandeTrabajo).State    = EntityState.Modified;
                db.Tb_UsersPlandeTrabajo.Add(user);
                db.SaveChanges();
            }

            return(RedirectToAction("ActividadesPlanTrabajo", new { model.IdPlantTrabajo }));
        }
        public ActionResult Edit([Bind(Include = "IdEmpresa,IdActiCumplimiento,NombreActividad,Meta,FechaInicial,FechaFinal,hora,Frecuencia,idObjetivo,Frecuencia_desc,period,weekly_0,weekly_1,weekly_2,weekly_3,weekly_4,weekly_5,weekly_6,retornar,asigrecursos,Finalizada,IdUser")] ViewModelActividadCumplimiento model)
        {
            UsuariosPlandetrabajo uplant = db.Tb_UsersPlandeTrabajo.Where(e => e.Acum_Id == model.IdActiCumplimiento).FirstOrDefault();
            Empresa empresa = db.Tb_Empresa.Where(e => e.Empr_Nit == AccountData.NitEmpresa).FirstOrDefault();

            ApplicationUser usuario        = db.Users.Find(AccountData.UsuarioId);
            string          dias           = "";
            string          periodo        = model.Frecuencia;
            string          frecuenciadesc = "";

            if (model.weekly_0 != null)
            {
                dias += "lunes,";
            }
            if (model.weekly_1 != null)
            {
                dias += "martes,";
            }
            if (model.weekly_2 != null)
            {
                dias += "miercoles,";
            }
            if (model.weekly_3 != null)
            {
                dias += "jueves,";
            }
            if (model.weekly_4 != null)
            {
                dias += "viernes,";
            }
            if (model.weekly_5 != null)
            {
                dias += "sabado,";
            }
            if (model.weekly_6 != null)
            {
                dias += "domingo,";
            }

            if (periodo == "1")
            {
                frecuenciadesc = "norepeat";
            }
            else if (periodo == "2")
            {
                frecuenciadesc = "daily";
            }
            else if (periodo == "3")
            {
                frecuenciadesc = "weekly";
            }
            else if (periodo == "4")
            {
                frecuenciadesc = "monthly";
            }
            else if (periodo == "8")
            {
                frecuenciadesc = "bimestral";
            }
            else if (periodo == "9")
            {
                frecuenciadesc = "trimestral";
            }
            else if (periodo == "10")
            {
                frecuenciadesc = "semestral";
            }
            model.Frecuencia_desc = frecuenciadesc;

            // TODO: Add insert logic here
            ActiCumplimiento actcumplimiento = new ActiCumplimiento
            {
                Acum_Id         = model.IdActiCumplimiento,
                Acum_Ejec       = null,
                Acum_Desc       = model.NombreActividad,
                Acum_Porcentest = model.Meta,
                Acum_IniAct     = model.FechaInicial,
                Acum_FinAct     = model.FechaFinal,
                Oemp_Id         = model.idObjetivo,
                Acum_Registro   = DateTime.Now,
                Id           = model.IdUser,
                Frec_Id      = Convert.ToInt32(model.Frecuencia),
                Peri_Id      = 6,
                Empr_Nit     = empresa.Empr_Nit,
                Repeticiones = model.period,
                DiasSemana   = dias,
                HoraAct      = model.hora,
                asigrecursos = model.asigrecursos,
                Finalizada   = model.Finalizada
            };


            db.Entry(actcumplimiento).State = EntityState.Modified;
            db.SaveChanges();

            var prog = db.Tb_ProgamacionTareas.Where(e => e.ActiCumplimiento_Id == actcumplimiento.Acum_Id).ToList();

            foreach (var program in prog)
            {
                program.Estado = false;
            }

            db.SaveChanges();
            generateAppoiment(model, actcumplimiento.Acum_Id);



            //Generamos la programacion de tareas en el tiempo.

            return(RedirectToAction("Index"));
        }
        public ActionResult Crear([Bind(Include = "NombreActividad,Meta,FechaInicial,FechaFinal,hora,Frecuencia,idObjetivo,Frecuencia_desc,period,weekly_0,weekly_1,weekly_2,weekly_3,weekly_4,weekly_5,weekly_6,retornar,asigrecursos,IdUser,idPlanDeTrabajo")] ViewModelActividadCumplimiento model)
        {
            // TODO: Add insert logic here
            Empresa empresa = db.Tb_Empresa.Where(e => e.Empr_Nit == AccountData.NitEmpresa).FirstOrDefault();

            ApplicationUser usuario = db.Users.Find(AccountData.UsuarioId);
            // resolvemos el dia de la semana segun el checkbox seleccionado
            string dias = "";

            if (model.weekly_0 != null)
            {
                dias += "lunes,";
            }
            if (model.weekly_1 != null)
            {
                dias += "martes,";
            }
            if (model.weekly_2 != null)
            {
                dias += "miercoles,";
            }
            if (model.weekly_3 != null)
            {
                dias += "jueves,";
            }
            if (model.weekly_4 != null)
            {
                dias += "viernes,";
            }
            if (model.weekly_5 != null)
            {
                dias += "sabado,";
            }
            if (model.weekly_6 != null)
            {
                dias += "domingo,";
            }

            // TODO: Add insert logic here
            ActiCumplimiento actcumplimiento = new ActiCumplimiento
            {
                Acum_Desc       = model.NombreActividad,
                Acum_Porcentest = model.Meta,
                Acum_IniAct     = model.FechaInicial,
                Acum_FinAct     = model.FechaFinal,
                Oemp_Id         = model.idObjetivo,
                Acum_Registro   = DateTime.Now,
                Id           = model.IdUser,
                Frec_Id      = Convert.ToInt32(model.Frecuencia),
                Peri_Id      = 6,
                Empr_Nit     = empresa.Empr_Nit,
                Repeticiones = model.period,
                DiasSemana   = dias,
                HoraAct      = model.hora,
                Finalizada   = false,
                asigrecursos = model.asigrecursos
            };

            db.Tb_ActiCumplimiento.Add(actcumplimiento);

            db.SaveChanges();
            /// adicionamos el usuario asignado responsable para la actividad
            UsuariosPlandetrabajo user = new UsuariosPlandetrabajo
            {
                Acum_Id = actcumplimiento.Acum_Id,
                Plat_Id = model.idPlanDeTrabajo,
                Emp_Id  = AccountData.NitEmpresa,
                Id      = model.IdUser
            };

            db.Tb_UsersPlandeTrabajo.Add(user);
            db.SaveChanges();
            //Generamos la programacion de tareas en el tiempo.
            generateAppoiment(model, actcumplimiento.Acum_Id);

            var link = model.retornar;

            return(Redirect(link));
        }
        // GET: ActividadCumplimiento/Edit/5
        /// <summary>
        /// Lista la actividad si es encontrado mediante el id que recibe si no es nullable
        /// </summary>
        /// <param name="id">id actividad si no es nullable</param>
        /// <returns>retorna la actividad a editar</returns>
        public ActionResult Edit(int id)
        {
            var listfrec = db.Tb_Frecuencia.Select(o => new { Id = o.Frec_Id, Value = o.Frec_Descripcion }).ToList();

            ViewBag.frecuenciaEmpresa = new SelectList(listfrec, "Id", "Value");
            var list = db.Tb_ObjEmpresa.Where(c => c.Empr_Nit == AccountData.NitEmpresa).Select(o => new { Id = o.Oemp_Id, Value = o.Oemp_Nombre }).ToList();

            ViewBag.objetivosEmpresa = new SelectList(list, "Id", "Value");
            Empresa empresa             = db.Tb_Empresa.Where(e => e.Empr_Nit == AccountData.NitEmpresa).FirstOrDefault();
            UsuariosPlandetrabajo upt   = db.Tb_UsersPlandeTrabajo.Where(e => e.Acum_Id == id).FirstOrDefault();
            PlandeTrabajo         planT = db.Tb_PlandeTrabajo.Find(upt.Plat_Id);

            ViewBag.datestart = planT.FechaInicio;
            ViewBag.dateend   = planT.FechaFin;
            ApplicationUser usuario   = db.Users.Find(AccountData.UsuarioId);
            var             listusers = db.Users.Where(c => c.Empr_Nit == AccountData.NitEmpresa).Select(o => new { Id = o.Id, Value = o.Pers_Nom1 }).ToList();

            ViewBag.users = new SelectList(listusers, "Id", "Value");
            var model2 = db.Tb_ActiCumplimiento.Find(id);
            ViewModelActividadCumplimiento model = new ViewModelActividadCumplimiento
            {
                IdActiCumplimiento = model2.Acum_Id,
                IdEmpresa          = model2.Empr_Nit,
                NombreActividad    = model2.Acum_Desc,
                Meta         = model2.Acum_Porcentest,
                idObjetivo   = model2.Oemp_Id,
                FechaInicial = model2.Acum_IniAct,
                FechaFinal   = model2.Acum_FinAct,
                hora         = model2.HoraAct,
                Frecuencia   = Convert.ToString(model2.Frec_Id),
                period       = model2.Repeticiones,
                Finalizada   = model2.Finalizada,
                asigrecursos = model2.asigrecursos,
                IdUser       = model2.Id
            };

            if (model2.DiasSemana != null)
            {
                var lunes     = model2.DiasSemana.Contains("lunes");
                var martes    = model2.DiasSemana.Contains("martes");
                var miercoles = model2.DiasSemana.Contains("miercoles");
                var jueves    = model2.DiasSemana.Contains("jueves");
                var viernes   = model2.DiasSemana.Contains("viernes");
                var sabado    = model2.DiasSemana.Contains("sabado");
                var domingo   = model2.DiasSemana.Contains("domingo");
                if (lunes)
                {
                    ViewData["lunes"] = "checked";
                }

                if (martes)
                {
                    ViewData["martes"] = "checked";
                }

                if (miercoles)
                {
                    ViewData["miercoles"] = "checked";
                }

                if (jueves)
                {
                    ViewData["jueves"] = "checked";
                }

                if (viernes)
                {
                    ViewData["viernes"] = "checked";
                }

                if (sabado)
                {
                    ViewData["sabado"] = "checked";
                }

                if (domingo)
                {
                    ViewData["domingo"] = "checked";
                }
            }
            ViewData["userid"] = model2.Id;
            return(View(model));
        }