public string Agregar(usuarios entidad) { try { EmpleadosCOM empleados = new EmpleadosCOM(); string mess = ""; if (Exist(entidad.usuario)) { mess = "Ya existe un usuario llamado: " + entidad.usuario; } else if (entidad.No_ != "" && !empleados.Exists(entidad.No_)) { mess = "No existe el empleado con el numero: " + entidad.No_; } else { usuarios usuario = new usuarios { usuario = entidad.usuario.ToUpper().Trim(), No_ = entidad.No_, contraseña = entidad.contraseña, nombres = entidad.nombres.ToUpper().Trim(), puesto = entidad.puesto, a_paterno = entidad.a_paterno.ToUpper().Trim(), a_materno = entidad.a_materno, temporal = entidad.temporal, fecha_vencimiento = entidad.fecha_vencimiento, correo = entidad.correo, path_imagen = entidad.path_imagen, activo = true, usuario_alta = entidad.usuario_alta.ToUpper(), fecha = DateTime.Now }; Model context = new Model(); context.usuarios.Add(usuario); context.SaveChanges(); } return(mess); } catch (DbEntityValidationException ex) { var errorMessages = ex.EntityValidationErrors .SelectMany(x => x.ValidationErrors) .Select(x => x.ErrorMessage); var fullErrorMessage = string.Join("; ", errorMessages); return(fullErrorMessage.ToString()); } }
public string Editar(usuarios entidad) { try { EmpleadosCOM empleados = new EmpleadosCOM(); string mess = ""; if (entidad.No_ != "" && !empleados.Exists(entidad.No_)) { mess = "No existe el empleado con el numero: " + entidad.No_; } else { Model context = new Model(); usuarios usuario = context.usuarios .First(i => i.usuario.ToUpper().Trim() == entidad.usuario.ToUpper().Trim()); usuario.contraseña = entidad.contraseña; usuario.correo = entidad.correo; usuario.puesto = entidad.puesto; usuario.nombres = entidad.nombres; usuario.a_paterno = entidad.a_paterno; usuario.a_materno = entidad.a_materno; usuario.No_ = entidad.No_; usuario.temporal = entidad.temporal; usuario.fecha_vencimiento = entidad.fecha_vencimiento; usuario.path_imagen = entidad.path_imagen; context.SaveChanges(); } return(mess); } catch (DbEntityValidationException ex) { var errorMessages = ex.EntityValidationErrors .SelectMany(x => x.ValidationErrors) .Select(x => x.ErrorMessage); var fullErrorMessage = string.Join("; ", errorMessages); return(fullErrorMessage.ToString()); } }
public DataTable SelectWidget(int num_empleado, bool ver_Todos_los_empleados) { DataTable dt = new DataTable(); try { EmpleadosCOM empleados = new EmpleadosCOM(); bool no_activos = false; DataSet ds = empleados.sp_listado_empleados(num_empleado, ver_Todos_los_empleados, no_activos); DataTable dt_empleados_subordinados = ds.Tables[0]; List <EmpleadoSubordinados> list_emp = new List <EmpleadoSubordinados>(); foreach (DataRow row in dt_empleados_subordinados.Rows) { EmpleadoSubordinados empleado = new EmpleadoSubordinados(); empleado.Usuario = row["usuario"].ToString().ToUpper(); list_emp.Add(empleado); } Proyectos_ConnextEntities db = new Proyectos_ConnextEntities(); List <sp_get_tecnologias_historial_Result> tecnologias = db.sp_get_tecnologias_historial().ToList(); var proyectos = (from p in db.proyectos join est in db.proyectos_estatus on p.id_proyecto_estatus equals est.id_proyecto_estatus join period in db.proyectos_periodos on p.id_proyecto_periodo equals period.id_proyecto_periodo where (p.usuario_borrado == null && p.id_proyecto_estatus == 1) orderby(p.fecha_registro) select new { p.usuario, p.id_proyecto, p.id_proyecto_estatus, est.estatus, p.id_proyecto_periodo, periodo = period.nombre, p.cveoport, p.folio_pmt, p.folio_op, p.proyecto, p.descripcion, p.fecha_registro, p.fecha_inicio, p.fecha_fin, p.usuario_resp }).ToArray().Take(7); var tproyectos = (from p in proyectos join emp in list_emp on p.usuario_resp.ToUpper() equals emp.Usuario orderby(p.fecha_registro) select new { p.usuario, p.id_proyecto, p.id_proyecto_estatus, p.estatus, p.id_proyecto_periodo, p.periodo, p.cveoport, p.folio_pmt, p.folio_op, p.proyecto, p.descripcion, p.fecha_registro, p.fecha_inicio, p.fecha_fin, p.usuario_resp }); NAVISION dbnavision = new NAVISION(); var results = from p in tproyectos join tec in tecnologias on p.id_proyecto equals tec.id_proyecto join up in dbnavision.Employee on p.usuario_resp.ToUpper().Trim() equals up.Usuario_Red.ToUpper().Trim() orderby(p.fecha_registro) select new { tecnologia = tec.tecnologias, usuario = p.usuario_resp, empleado = up.First_Name.Trim() + " " + up.Last_Name.Trim(), p.id_proyecto, p.id_proyecto_estatus, p.estatus, p.id_proyecto_periodo, p.periodo, p.cveoport, p.folio_pmt, p.folio_op, p.proyecto, p.descripcion, p.fecha_registro, p.fecha_inicio, p.fecha_fin }; dt = To.DataTable(results.ToList()); return(dt); } catch (DbEntityValidationException ex) { var errorMessages = ex.EntityValidationErrors .SelectMany(x => x.ValidationErrors) .Select(x => x.ErrorMessage); var fullErrorMessage = string.Join("; ", errorMessages); return(dt); } }
/// <summary> /// Obtiene una tabla con la informacion de un proyecto /// </summary> /// <param name="id_proyecto"></param> /// <returns></returns> public DataTable Select(int id_proyecto) { DataTable dt = new DataTable(); try { EmpleadosCOM empleados = new EmpleadosCOM(); Proyectos_ConnextEntities db = new Proyectos_ConnextEntities(); List <sp_get_tecnologias_historial_Result> tecnologias = db.sp_get_tecnologias_historial().ToList(); var proyectos = (from p in db.proyectos join est in db.proyectos_estatus on p.id_proyecto_estatus equals est.id_proyecto_estatus join period in db.proyectos_periodos on p.id_proyecto_periodo equals period.id_proyecto_periodo where (p.usuario_borrado == null && p.id_proyecto == id_proyecto) select new { p.usuario, p.id_proyecto, p.id_proyecto_estatus, est.estatus, p.id_proyecto_periodo, periodo = period.nombre, p.cveoport, p.folio_pmt, p.folio_op, p.proyecto, p.descripcion, p.fecha_registro, p.fecha_inicio, p.fecha_fin, p.usuario_resp, p.costo_mn, p.costo_usd, p.cped }).ToArray(); NAVISION dbnavision = new NAVISION(); var results = from p in proyectos join tec in tecnologias on p.id_proyecto equals tec.id_proyecto join up in dbnavision.Employee on p.usuario_resp.ToUpper().Trim() equals up.Usuario_Red.ToUpper().Trim() select new { tecnologia = tec.tecnologias, usuario = p.usuario_resp, empleado = up.First_Name.Trim() + " " + up.Last_Name.Trim(), p.id_proyecto, p.id_proyecto_estatus, p.estatus, p.id_proyecto_periodo, p.periodo, p.cveoport, p.folio_pmt, p.proyecto, p.descripcion, p.folio_op, p.fecha_registro, p.fecha_inicio, p.fecha_fin, p.costo_mn, p.cped, p.costo_usd }; dt = To.DataTable(results.ToList()); return(dt); } catch (DbEntityValidationException ex) { var errorMessages = ex.EntityValidationErrors .SelectMany(x => x.ValidationErrors) .Select(x => x.ErrorMessage); var fullErrorMessage = string.Join("; ", errorMessages); return(dt); } }
public DataTable empleados_proyecto(int id_proyecto) { try { Proyectos_ConnextEntities context = new Proyectos_ConnextEntities(); EmpleadosCOM empleados = new EmpleadosCOM(); bool no_activos = false; DataSet ds = empleados.sp_listado_empleados(0, true, no_activos); DataTable dt_empleados_subordinados = ds.Tables[0]; List <EmpleadoSubordinados> list_emp = new List <EmpleadoSubordinados>(); foreach (DataRow row in dt_empleados_subordinados.Rows) { EmpleadoSubordinados empleado = new EmpleadoSubordinados(); empleado.Usuario = row["usuario"].ToString().ToUpper(); empleado.Nombre = row["nombre"].ToString().ToUpper(); empleado.Puesto = row["puesto"].ToString().ToUpper(); empleado.Correo = row["correo"].ToString().ToUpper(); list_emp.Add(empleado); } var tblempleados = context.proyectos_empleados .Where(s => s.activo && s.id_proyecto == id_proyecto) .Select(u => new { u.id_proyectoe, u.id_proyecto_rol, u.usuario, u.id_proyecto, u.usuario_registro, u.fecha_registro }) .OrderBy(u => u.usuario).ToArray(); var result = (from a in tblempleados join p in context.proyectos on a.id_proyecto equals p.id_proyecto join b in list_emp on a.usuario.ToUpper().Trim() equals b.Usuario.Trim().ToUpper() join c in context.proyectos_roles on a.id_proyecto_rol equals c.id_proyecto_rol select new { a.id_proyectoe, a.usuario, a.usuario_registro, a.fecha_registro, c.id_proyecto_rol, c.administrador_proyecto, c.rol, b.Nombre, b.Correo, b.Puesto, p.usuario_resp }); DataTable dt = To.DataTable(result.ToList()); return(dt); } catch (DbEntityValidationException ex) { var errorMessages = ex.EntityValidationErrors .SelectMany(x => x.ValidationErrors) .Select(x => x.ErrorMessage); var fullErrorMessage = string.Join("; ", errorMessages); return(null); } }
/// <summary> /// Devuelve un cursor con los riesgos por proyectos /// </summary> /// <param name="id_proyecto_perido"></param> /// <returns></returns> public DataTable proyectos_riesgos_reporte(int num_empleado, bool ver_Todos_los_empleados, DateTime fecha_inicio, DateTime fecha_fin) { DataTable dt = new DataTable(); try { EmpleadosCOM empleados = new EmpleadosCOM(); bool no_activos = false; DataSet ds = empleados.sp_listado_empleados(num_empleado, ver_Todos_los_empleados, no_activos); DataTable dt_empleados_subordinados = ds.Tables[0]; List <EmpleadoSubordinados> list_emp = new List <EmpleadoSubordinados>(); foreach (DataRow row in dt_empleados_subordinados.Rows) { EmpleadoSubordinados empleado = new EmpleadoSubordinados(); empleado.Usuario = row["usuario"].ToString().ToUpper(); list_emp.Add(empleado); } Proyectos_ConnextEntities db = new Proyectos_ConnextEntities(); List <sp_get_tecnologias_historial_Result> tecnologias = db.sp_get_tecnologias_historial().ToList(); var riesgos = (from r in db.riesgos join re in db.riesgos_estatus on r.id_riesgos_estatus equals re.id_riesgos_estatus join rp in db.riesgos_probabilidad on r.id_riesgo_probabilidad equals rp.id_riesgo_probabilidad join rs in db.riesgos_estrategia on r.id_riesgo_estrategia equals rs.id_riesgo_estrategia join pe in db.proyectos_evaluaciones on r.id_proyecto_evaluacion equals pe.id_proyecto_evaluacion join p in db.proyectos on pe.id_proyecto equals p.id_proyecto //join pht in db.proyectos_historial_tecnologias on p.id_proyecto equals pht.id_proyecto //join pt in db.proyectos_tecnologias on pht.id_proyecto_tecnologia equals pt.id_proyecto_tecnologia where (p.usuario_borrado == null && (r.usuario_borrado == null) && (r.fecha_registro >= fecha_inicio && r.fecha_registro <= fecha_fin)) orderby r.id_riesgo ascending select new { //pt.id_proyecto_tecnologia, //tecnologia = pt.nombre, r.id_riesgo, r.riesgo, r.id_riesgos_estatus, re.estatus, r.id_riesgo_probabilidad, probabilidad = rp.nombre, r.id_riesgo_estrategia, estrategia = rs.nombre, fecha_evaluacion = pe.fecha_evaluacion, id_proyecto = pe.id_proyecto, proyecto = p.proyecto, r.usuario }).ToArray(); var triesgos = (from r in riesgos join emp in list_emp on r.usuario.ToUpper() equals emp.Usuario select new { r.usuario, //r.id_proyecto_tecnologia, //r.tecnologia, r.id_riesgo, r.riesgo, r.id_riesgos_estatus, r.estatus, r.id_riesgo_probabilidad, r.probabilidad, r.id_riesgo_estrategia, r.estrategia, r.fecha_evaluacion, r.id_proyecto, r.proyecto }); NAVISION dbnavision = new NAVISION(); var results = from r in riesgos join tec in tecnologias on r.id_proyecto equals tec.id_proyecto join up in dbnavision.Employee on r.usuario.ToUpper().Trim() equals up.Usuario_Red.ToUpper().Trim() select new { tecnologia = tec.tecnologias, usuario = r.usuario, empleado = up.First_Name.Trim() + " " + up.Last_Name.Trim(), //r.id_proyecto_tecnologia, //r.tecnologia, r.id_riesgo, r.riesgo, r.id_riesgos_estatus, r.estatus, r.id_riesgo_probabilidad, r.probabilidad, r.id_riesgo_estrategia, r.estrategia, r.fecha_evaluacion, r.id_proyecto, r.proyecto }; dt = To.DataTable(results.ToList()); return(dt); } catch (DbEntityValidationException ex) { var errorMessages = ex.EntityValidationErrors .SelectMany(x => x.ValidationErrors) .Select(x => x.ErrorMessage); var fullErrorMessage = string.Join("; ", errorMessages); return(null); } }
/// <summary> /// Agrega una instancia de riesgos /// </summary> /// <param name="entidad"></param> /// <returns></returns> public string Agregar(riesgos entidad, List <actividades> lst_actividades, List <documentos> lstdocumentos, string nombre_proyecto, string nombre_session) { try { string mess = ""; riesgos riesgo = new riesgos { id_proyecto_evaluacion = entidad.id_proyecto_evaluacion, riesgo = entidad.riesgo, id_riesgos_estatus = entidad.id_riesgos_estatus, id_riesgo_probabilidad = entidad.id_riesgo_probabilidad, id_riesgo_impacto = entidad.id_riesgo_impacto, id_riesgo_estrategia = entidad.id_riesgo_estrategia, estrategia = entidad.estrategia, valor = entidad.valor, usuario_resp = entidad.usuario_resp, usuario = entidad.usuario, fecha_registro = DateTime.Now }; Proyectos_ConnextEntities context = new Proyectos_ConnextEntities(); context.riesgos.Add(riesgo); context.SaveChanges(); int id_riesgo = riesgo.id_riesgo; foreach (actividades actividad in lst_actividades) { actividad.id_riesgo = id_riesgo; } foreach (actividades entidad2 in lst_actividades) { actividades actividad = new actividades { id_actividad_tipo = entidad2.id_actividad_tipo, id_proyecto = entidad2.id_proyecto, id_riesgo = entidad2.id_riesgo, nombre = entidad2.nombre, usuario_resp = entidad2.usuario_resp, fecha_ejecucion = entidad2.fecha_ejecucion, fecha_asignacion = entidad2.fecha_asignacion, usuario = entidad2.usuario, empleado_resp = entidad2.empleado_resp, fecha_registro = DateTime.Now, recomendada = entidad2.recomendada, resultado = "", terminada = false }; context.actividades.Add(actividad); context.SaveChanges(); int id_actividad = actividad.id_actividad; //ENVIAMOS NOTIFICACION string usuario_resp = actividad.usuario_resp; EmpleadosCOM usuarios = new EmpleadosCOM(); DataTable dt_usuario = usuarios.GetUsers(); DataView dv = dt_usuario.DefaultView; dv.RowFilter = "usuario_red = '" + usuario_resp.Trim().ToUpper() + "'"; DataTable dt_result = dv.ToTable(); if (dt_result.Rows.Count > 0) { string saludo = DateTime.Now.Hour > 13 ? "Buenas tardes" : "Buenos dias"; DataRow usuario = dt_result.Rows[0]; string mail_to = usuario["mail"].ToString() == "" ? "" : (usuario["mail"].ToString() + ";"); string subject = "Módulo de proyectos - Actividad relacionada"; string mail = "<div>" + saludo + " <strong>" + System.Threading.Thread.CurrentThread.CurrentCulture.TextInfo.ToTitleCase(usuario["empleado"].ToString().ToLower()) + "</strong> <div>" + "<br>" + "<p>Le fue asignada una actividad, dentro de una evaluación en el proyecto <strong>" + nombre_proyecto + "</strong>" + "</p>" + "<p>A continuación, se muestra la información completa:</p>" + "<p><strong>Riesgo</strong><br/> " + riesgo.riesgo + "</p> " + "<p><strong>Actividad/Acción</strong><br/> " + actividad.nombre + "</p> " + "<br/><p>Este movimiento fue realizado por <strong>" + System.Threading.Thread.CurrentThread.CurrentCulture.TextInfo.ToTitleCase(nombre_session.ToLower()) + "</strong> el dia <strong>" + DateTime.Now.ToString("dddd dd MMMM, yyyy hh:mm:ss tt", System.Globalization.CultureInfo.CreateSpecificCulture("es-MX")) + "</strong>" + "</p>"; CorreosCOM correos = new CorreosCOM(); bool correct = correos.SendMail(mail, subject, mail_to); } foreach (documentos documento in lstdocumentos) { if (documento.id_actividad == entidad2.id_actividad) { documento.fecha = DateTime.Now; documento.id_documento_tipo = 1; documento.usuario_edicion = null; documento.id_actividad = id_actividad; context.documentos.Add(documento); } } } context.SaveChanges(); return(mess); } catch (DbEntityValidationException ex) { var errorMessages = ex.EntityValidationErrors .SelectMany(x => x.ValidationErrors) .Select(x => x.ErrorMessage); var fullErrorMessage = string.Join("; ", errorMessages); return(fullErrorMessage.ToString()); } }
/// <summary> /// Devuelve un DatatTable con los participantes /// </summary> /// <param name="id_proyect"></param> /// <returns></returns> public DataTable GetAllParticipante(int id_proyectomin) { DataTable dt = new DataTable(); try { Proyectos_ConnextEntities context = new Proyectos_ConnextEntities(); EmpleadosCOM empleados = new EmpleadosCOM(); bool no_activos = false; DataSet ds = empleados.sp_listado_empleados(0, true, no_activos); DataTable dt_empleados_subordinados = ds.Tables[0]; List <EmpleadoSubordinados> list_emp = new List <EmpleadoSubordinados>(); foreach (DataRow row in dt_empleados_subordinados.Rows) { EmpleadoSubordinados empleado = new EmpleadoSubordinados(); empleado.Usuario = row["usuario"].ToString().ToUpper(); empleado.Nombre = row["nombre"].ToString(); empleado.Puesto = row["puesto"].ToString(); empleado.Correo = row["correo"].ToString(); list_emp.Add(empleado); } //empleados var query = context.proyectos_minutas_participantes .Where(s => s.id_proyectomin == id_proyectomin && s.usuario_borrado == null && s.usuario != "") .Select(u => new { u.id_proyectomin, u.id_proyectominpart, u.organización, u.rol, u.correos, u.fecha_registro, u.usuario, u.usuario_edicion, u.fecha_edicion, u.usuario_borrado, u.comentarios_borrado, u.fecha_borrado, u.nombre }).ToArray(); var result = (from u in query join em in list_emp on u.usuario.Trim().ToUpper() equals em.Usuario.ToUpper().Trim() orderby(em.Nombre) select new { em.Nombre, em.Puesto, em.Correo, u.id_proyectomin, u.id_proyectominpart, u.organización, u.rol, u.fecha_registro, u.usuario, u.usuario_edicion, u.fecha_edicion, u.usuario_borrado, u.comentarios_borrado, u.fecha_borrado }).ToArray(); //NO EMPLEADOS var query2 = context.proyectos_minutas_participantes .Where(s => s.id_proyectomin == id_proyectomin && s.usuario_borrado == null && s.usuario == "") .Select(u => new { Nombre = u.nombre, Puesto = u.rol, Correo = u.correos, u.id_proyectomin, u.id_proyectominpart, u.organización, u.rol, u.fecha_registro, u.usuario, u.usuario_edicion, u.fecha_edicion, u.usuario_borrado, u.comentarios_borrado, u.fecha_borrado }).ToArray(); var resultUnion = Enumerable.Union(result, query2); dt = To.DataTable(resultUnion.ToList()); return(dt); } catch (Exception ex) { return(dt); } }
public DataTable GetAllPendientes(int id_proyectomin) { DataTable dt = new DataTable(); try { Proyectos_ConnextEntities context = new Proyectos_ConnextEntities(); EmpleadosCOM empleados = new EmpleadosCOM(); bool no_activos = false; DataSet ds = empleados.sp_listado_empleados(0, true, no_activos); DataTable dt_empleados_subordinados = ds.Tables[0]; List <EmpleadoSubordinados> list_emp = new List <EmpleadoSubordinados>(); foreach (DataRow row in dt_empleados_subordinados.Rows) { EmpleadoSubordinados empleado = new EmpleadoSubordinados(); empleado.Usuario = row["usuario"].ToString().ToUpper(); empleado.Nombre = row["nombre"].ToString(); empleado.Puesto = row["puesto"].ToString(); empleado.Correo = row["correo"].ToString(); list_emp.Add(empleado); } var query = context.proyectos_minutas_pendientes .Where(s => s.id_proyectomin == id_proyectomin && s.usuario_borrado == null) .Select(u => new { u.id_proyectominpen, u.id_proyectomin, u.descripcion, u.fecha_planeada, u.fecha_registro, u.usuario_resp, u.usuario_edicion, u.fecha_edicion, u.usuario_borrado, u.fecha_borrado, u.comentarios_borrado, u.avance, u.nombre }).ToArray(); var result = (from u in query join em in list_emp on u.usuario_resp.Trim().ToUpper() equals em.Usuario.ToUpper().Trim() orderby(em.Nombre) select new { u.id_proyectominpen, responsable = em.Nombre, em.Puesto, em.Correo, u.id_proyectomin, u.descripcion, u.fecha_planeada, u.fecha_registro, u.usuario_resp, u.usuario_edicion, u.fecha_edicion, u.usuario_borrado, u.fecha_borrado, u.comentarios_borrado, u.avance, u.nombre }); dt = To.DataTable(result.ToList()); return(dt); } catch (Exception ex) { return(dt); } }
public string AgregarPM(proyectos_empleados entidad) { try { string vmensaje = ""; Model context = new Model(); if (!ExistPM(entidad)) { proyectos_empleados empleado = new proyectos_empleados { id_proyecto = entidad.id_proyecto, no_ = entidad.no_, creador = entidad.creador, usuario = entidad.usuario, fecha = DateTime.Now }; context.proyectos_empleados.Add(empleado); usuarios entidadus = new usuarios(); entidadus.id_cliente = null; entidadus.id_uperfil = 3; EmpleadosCOM empleados_com = new EmpleadosCOM(); Employee enti = new Employee(); DataTable dt_empleados = empleados_com.Get(enti); int no_ = entidad.no_; if (dt_empleados.Select("no_ = " + no_.ToString().Trim() + "").Length > 0) { DataTable dt_filter = dt_empleados.Select("no_ = " + no_.ToString().Trim() + "").CopyToDataTable(); if (dt_filter.Rows.Count > 0) { entidadus.usuario = dt_filter.Rows[0]["Usuario_Red"].ToString().ToUpper(); entidadus.password = ""; UsuariosCOM pusuarios = new UsuariosCOM(); vmensaje = entidadus.usuario == "" ? "El empleado no cuenta con usuario de red." : pusuarios.Agregar(entidadus)[0]; } } else { vmensaje = "No se encontraron los datos completos del empleado. Favor de verificar con el departamento correspondiente, que la información del empleado este completa."; } if (vmensaje == "") { context.SaveChanges(); } } return(vmensaje); } catch (DbEntityValidationException ex) { // Retrieve the error messages as a list of strings. var errorMessages = ex.EntityValidationErrors .SelectMany(x => x.ValidationErrors) .Select(x => x.ErrorMessage); // Join the list to a single string. var fullErrorMessage = string.Join("; ", errorMessages); return(fullErrorMessage.ToString()); } }