public SolicitudController() { _bita = new BitacoraSolicitudesRepository(); _rolpersonaRepo = new RolPersonaRepository(); _SolicitudRepository = new SolicitudRepository(); _PersonasRepository = new PersonasRepository(); }
// GET: Solicitud/AgregarSolicitud() public ActionResult AgregarSolicitud() { SolicitudRepository SolRepo = new SolicitudRepository(); ViewBag.Auto = SolRepo.ObtenerAutosList(); return(View()); }
private async Task <Solicitud> GeneraSolicitud(PropiedadIndustrial pi) { try { DateTime hoy = DateTime.Now; Solicitud solicitud = new Solicitud() { ClavePersona = pi.ClavePersona, TipoInformacionId = 16, InformacionId = pi.PropiedadIndustrialId.ToString(), FechaSolicitud = hoy, EstadoFlujoId = pi.EstadoFlujoId, titulo = pi.Titulo }; SolicitudRepository sol = new SolicitudRepository(); var existe = await sol.existe(solicitud.TipoInformacionId, solicitud.InformacionId); if (existe == null) { solicitud = await sol.Create(solicitud); } else { existe.EstadoFlujoId = 2; solicitud = await sol.UpdateEstadoActualizacion(existe); } return(solicitud); } catch (Exception e) { throw new Exception(e.Message); } }
public ActionResult Obtener(string id) { try { ProyectoRepository pr = new ProyectoRepository(); SolicitudRepository sr = new SolicitudRepository(); ResponsableRepository rr = new ResponsableRepository(); TipoProyectoRepository tpr = new TipoProyectoRepository(); AmbienteRepository ar = new AmbienteRepository(); ProyectoView pv = new ProyectoView(); pv.UsuarioLogueado = ObtenerUsuario(); pv.Mensaje = ""; Proyecto p = pr.Obtener(id); pv.Proyecto = p; pv.Responsables = rr.Listar(String.Empty); pv.TipoProyectos = tpr.Listar(String.Empty); p.Solicitudes = sr.ListarPorProyecto(p.Id); pv.Ambientes = ar.Listar(String.Empty); p.Correos = pr.ListarCorreo(p); return(View("Obtener", pv)); } catch (Exception ex) { return(View("Mensaje", new ProyectoView { Mensaje = ex.Message })); } }
private async Task Aprobar(PropiedadIndustrial pin) { try { Solicitud solicitud = new Solicitud() { TipoInformacionId = 16, InformacionId = pin.PropiedadIndustrialId.ToString() }; SolicitudRepository sol = new SolicitudRepository(); var existe = await sol.existe(solicitud.TipoInformacionId, solicitud.InformacionId); if (existe != null) { existe.EstadoFlujoId = 3; solicitud = await sol.UpdateEstadoActualizacion(existe); //registra bitacora await RegistraBitacora(existe.SolicitudId, existe.ClavePersona, "Aprobado: " + pin.Justificacion, existe.EstadoFlujoId, 1); } //enviar correo de rechazo await Notifica(pin, "Aprobada"); await CreaNuevoOC(pin); } catch (Exception e) { throw new Exception(e.Message, e.InnerException); } }
public FileResult ObtenerArchivoLog(string id) { SolicitudRepository sr = new SolicitudRepository(); Archivo archivo = sr.ObtenerArchivoLog(int.Parse(id)); return(File(archivo.Contenido, System.Net.Mime.MediaTypeNames.Application.Octet, archivo.Nombre)); }
private async Task <Solicitud> GeneraSolicitud(DerechosAutor da) { try { DateTime hoy = DateTime.Now; Solicitud solicitud = new Solicitud() { ClavePersona = da.ClavePersona, TipoInformacionId = 15, InformacionId = da.DerechosAutorId.ToString(), FechaSolicitud = hoy, EstadoFlujoId = da.EstadoFlujoId }; SolicitudRepository sol = new SolicitudRepository(); var existe = await sol.existe(solicitud.TipoInformacionId, solicitud.InformacionId); if (existe == null) { solicitud = await sol.Create(solicitud); } else { existe.EstadoFlujoId = 2; solicitud = await sol.UpdateEstadoActualizacion(existe); } return(solicitud); } catch (Exception e) { throw new Exception(e.Message); } }
public ActionResult Actualizar(UsuarioView UsuarioView) { try { string id = Request.Form["txtId"]; string usuarioUsuario = Request.Form["txtUsuarioUsuario"]; string correoUsuario = Request.Form["txtCorreoUsuario"]; string celular = Request.Form["txtCelular"]; string anexo = Request.Form["txtAnexo"]; string skype = Request.Form["txtSkype"]; bool administrador = EvaluarCheckBox("chkAdministradorUsuario"); bool operador = EvaluarCheckBox("chkOperadorUsuario"); bool lector = EvaluarCheckBox("chkLectorUsuario"); bool cm = EvaluarCheckBox("chkCMUsuario"); bool rm = EvaluarCheckBox("chkRMUsuario"); bool ejecutor = EvaluarCheckBox("chkEjecutorUsuario"); bool test = EvaluarCheckBox("chkTestUsuario"); Usuario p = new Usuario(); p.Id = int.Parse(id); p.Nombre = usuarioUsuario; p.Correo = correoUsuario; p.Administrador = administrador; p.Operador = operador; p.Lector = lector; p.CM = cm; p.RM = rm; p.Ejecutor = ejecutor; p.Test = test; p.Celular = celular; p.Anexo = anexo; p.Skype = skype; UsuarioRepository pr = new UsuarioRepository(); p = pr.Actualizar(p); if (p.Id == 0) { UsuarioView.Mensaje = "Hubo un error al crear el Usuario"; return(View("Crear", UsuarioView)); } UsuarioView pp = new UsuarioView(); pp.Mensaje = "Usuario Actualizado"; pp.Usuario = p; SolicitudRepository sr = new SolicitudRepository(); pp.Usuario.Solicitudes = sr.ListarPorSolicitante(p.Id); pp.Roles = new RolRepository().Listar(""); pp.UsuarioLogueado = ObtenerUsuario(); return(View("Obtener", pp)); } catch (Exception ex) { return(View("Mensaje", new UsuarioView { Mensaje = ex.Message })); } }
// GET:Solicitud/ActualizarSolicituds/5 public ActionResult ActualizarSolicitud(int id) { SolicitudRepository SolRep = new SolicitudRepository(); ViewBag.Auto = SolRep.ObtenerAutosList(); return(View(SolRep.ObtenerSolicitud().Find(Aut => Aut.IdSolicitud == id))); }
public static Solicitud ActualizarSolicitud(DateTime ahora, Usuario usuario, Solicitud s, string rol, List <Archivo> archivos, string cboAccion, string txtInteresados, string cboObservacion, string txtComentario) { ObservacionRepository observacionRepository = new ObservacionRepository(); SolicitudRepository solicitudRepository = new SolicitudRepository(); EventLog.WriteEntry("Util", "linea 470"); if (!String.IsNullOrEmpty(cboAccion)) { var estadoAntiguo = s.Estado; s.Estado = solicitudRepository.ObtenerEstado(rol, s.Estado, cboAccion); if (String.IsNullOrEmpty(s.Estado)) { s.Estado = estadoAntiguo; } } EventLog.WriteEntry("Util", "linea 473"); s.CopiarA = txtInteresados; EventLog.WriteEntry("Util", "linea 475"); if (!String.IsNullOrEmpty(s.Estado) && !String.IsNullOrEmpty(cboAccion)) { Log log = new Log(); log.Usuario = usuario; log.Accion = cboAccion; EventLog.WriteEntry("Util", "linea 481"); if (log.Accion.IndexOf("Observar") >= 0) { EventLog.WriteEntry("Util", "linea 484"); int observacionId; int.TryParse(cboObservacion, out observacionId); log.Observacion = observacionRepository.Obtener(observacionId); log.Comentario = String.IsNullOrEmpty(txtComentario) ? log.Observacion.Nombre : txtComentario; } else { EventLog.WriteEntry("Util", "linea 492"); log.Comentario = txtComentario.Trim(); } if (/*log.Accion.IndexOf("Observar") >= 0 &&*/ archivos.Count > 0 && archivos[0].Contenido.Length > 0) { EventLog.WriteEntry("Util", "linea 497"); log.Archivo = archivos[0]; } else { EventLog.WriteEntry("Util", "linea 502"); log.Archivo.Nombre = String.Empty; log.Archivo.Contenido = new byte[0]; } log.Estado = s.Estado; log.FechaHora = ahora; EventLog.WriteEntry("Util", "linea 508"); s.Logs.Add(log); } EventLog.WriteEntry("Util", "linea 511"); s = solicitudRepository.ActualizarOtroSolicitadoxSol(s); return(s); }
public FileResult ObtenerArchivo(string id) { SolicitudRepository sr = new SolicitudRepository(); string[] partes = id.Split(new char[] { '-' }); int solicitudId = int.Parse(partes[0].Substring(1)); int numArchivo = int.Parse(partes[1]); Archivo archivo = sr.ObtenerArchivo(solicitudId, numArchivo); return(File(archivo.Contenido, System.Net.Mime.MediaTypeNames.Application.Octet, archivo.Nombre)); }
public NotificacionRepository() { _ctx = new SIGCOCHContext(); _personaRepo = new PersonasRepository(); _SolicitudRepository = new SolicitudRepository(); _db = new MT_Context(); _dbGen = new GEN_Context(); _ctxGI = new GI_Context(); _evaluadorRepo = new EvaluadorIdeaRepository(); _dbCR = new CR_Context(); }
public static bool EsPrimerEnvio(Solicitud s) { try { SolicitudRepository sr = new SolicitudRepository(); int ambienteId = s.Ambiente.Id; List <Solicitud> solicitudes = sr.Listar(String.Empty, ambienteId, s.Proyecto.Id, String.Empty, String.Empty, false, String.Empty, null, null, String.Empty, String.Empty, false); return(solicitudes.Count == 1); } catch { throw; } }
public ActionResult ActualizarSolicitud(int id, SolicitudModel obj) { try { SolicitudRepository AutRep = new SolicitudRepository(); obj.IdSolicitud = id; AutRep.ActualizarSolicitud(obj); return(RedirectToAction("ObtenerSolicitud")); } catch { return(View()); } }
// GET: Solicitud/BorrarSolicitud/5 public ActionResult BorrarSolicitud(int id) { try { SolicitudRepository EmpRepo = new SolicitudRepository(); if (EmpRepo.BorrarSolicitud(id)) { ViewBag.AlertMsg = "Solicitud borrado satisfactoriamente"; } return(RedirectToAction("ObtenerSolicitud")); } catch { return(View()); } }
// GET: Aut/ObtenerSolicitud() public ActionResult ObtenerSolicitud(string searchString) { SolicitudRepository SolRepo = new SolicitudRepository(); //Buscar solicitudes por folio var folio = from s in SolRepo.ObtenerSolicitud() select s; if (!String.IsNullOrEmpty(searchString)) { folio = folio.Where(s => s.NumeroLote.Equals(searchString)); } ModelState.Clear(); return(View(folio.ToList())); }
// // GET: /Home/ public ActionResult Index() { try { string nombreUsuario = FormsAuthentication.Decrypt(Request.Cookies[FormsAuthentication.FormsCookieName].Value).UserData; Usuario usuario = new UsuarioRepository().Obtener(nombreUsuario); HomeView hv = new HomeView(); SolicitudRepository sr = new SolicitudRepository(); VentanaRepository vr = new VentanaRepository(); hv.Pendientes = sr.ListarPendientesCM(); string nombreVista = "Index"; if (User.IsInRole("RM")) { hv.Pendientes = sr.ListarPendientesRM(); hv.Aprobados = sr.ListarAprobadosRM(); hv.Ventanas = vr.Listar(); nombreVista = "IndexRM"; } if (User.IsInRole("CM")) { hv.Pendientes = sr.ListarPendientesCM(); nombreVista = "IndexCM"; } if (User.IsInRole("Operador")) { hv.Pendientes = sr.ListarPendientesOperador(usuario.Id); nombreVista = "IndexOperador"; } if (User.IsInRole("Ejecutor")) { hv.Pendientes = sr.ListarPendientesEjecutor(usuario.Id); nombreVista = "IndexEjecutor"; } return(View(nombreVista, hv)); } catch (Exception ex) { return(View("Mensaje", new HomeView { Mensaje = ex.Message })); } }
public ActionResult AgregarSolicitud(SolicitudModel Solicitud) { try { if (ModelState.IsValid) { SolicitudRepository AutRep = new SolicitudRepository(); if (AutRep.AgregarSolicitud(Solicitud)) { ViewBag.Message = "Solicitud agregado satisfactoriamente"; } } return(RedirectToAction("ObtenerSolicitud")); } catch { return(RedirectToAction("ObtenerSolicitud")); } }
public ActionResult Obtener(string id) { try { UsuarioView pv = new UsuarioView(); pv.Mensaje = ""; UsuarioRepository pr = new UsuarioRepository(); Usuario p = pr.Obtener(id); SolicitudRepository sr = new SolicitudRepository(); p.Solicitudes = sr.ListarPorSolicitante(p.Id); pv.Usuario = p; pv.Roles = new RolRepository().Listar(""); pv.UsuarioLogueado = ObtenerUsuario(); return(View("Obtener", pv)); } catch (Exception ex) { return(View("Mensaje", new UsuarioView { Mensaje = ex.Message })); } }
public NotificationController() { _SolicitudRepository = new SolicitudRepository(); }
public SolicitudBusiness() { solicitudRepository = new SolicitudRepository(); }
public ActionResult EnviarEjecutor(string id) { try { SolicitudRepository sr = new SolicitudRepository(); string estadoInicial = "Aprobado_x_RM"; string accionSiguiente = "RM.Enviar_Ejec"; string nombreUsuario = FormsAuthentication.Decrypt(Request.Cookies[FormsAuthentication.FormsCookieName].Value).UserData; string codigoPase = String.Empty; string responsableEjecucion = String.Empty; Usuario ux = new UsuarioRepository().Obtener(nombreUsuario); int ventanaId = int.Parse(Request.Form["cboVentana"]); AreaRepository ar = new AreaRepository(); List <Area> areas = ar.Listar(""); string[] keys = Request.Form.AllKeys; int solicitudId; AmbienteRepository ambienteRepository = new AmbienteRepository(); List <Solicitud> solicitudes = new List <Solicitud>(); List <Ambiente> ambientes = new List <Ambiente>(); #region Validar si se están marcando solicitudes de regularización var listaReg = new List <string>(); foreach (var key in keys) { if (String.Compare(key.Substring(0, 3), "chk") == 0 && String.Compare(key, "chkTodos") != 0) { if (String.Compare(Request.Form[key], "on") == 0) { solicitudId = int.Parse(key.Substring(3)); var s = sr.Obtener(solicitudId); if (s.Regularizacion) { listaReg.Add("S" + s.Id.ToString().PadLeft(6, '0')); } } } } if (listaReg.Count() > 0) { var sbMensaje = new StringBuilder(); sbMensaje.Append("<p>No se pueden enviar al ejecutor las siguientes solicitudes de regularizacion</p>"); sbMensaje.Append("<ul>"); foreach (var item in listaReg) { sbMensaje.Append("<li>" + item + "</li>"); } sbMensaje.Append("</ul>"); var hv = new HomeView(); hv.Mensaje = sbMensaje.ToString(); return(View("Mensaje", hv)); } #endregion #region Validar si existen areas asignadas a las solicitudes marcadas para enviar StringBuilder ambienteEnviar = new StringBuilder(); StringBuilder validacion = new StringBuilder(); validacion.Append("<p>Las siguientes solicitudes no tienen asignados en sus formularios los ejecutores</p>"); validacion.Append("<ul>"); bool areasVacias = false; foreach (string key in keys) { if (String.Compare(key.Substring(0, 3), "chk") == 0 && String.Compare(key, "chkTodos") != 0 && String.Compare(Request.Form[key], "on") == 0) { solicitudId = int.Parse(key.Substring(3)); Solicitud s = sr.Obtener(solicitudId); s.Ambiente = ambienteRepository.Obtener(s.Ambiente.Id); if (!ambientes.Exists(p => p.Id == s.Ambiente.Id)) { ambientes.Add(s.Ambiente); ambienteEnviar.Append(s.Ambiente.Nombre); ambienteEnviar.Append(","); } if (!Util.Util.ExisteArea(s)) { areasVacias = true; validacion.Append("<li>S" + s.Id.ToString().PadLeft(6, '0') + "</li>"); } } } validacion.Append("</ul>"); if (areasVacias) { HomeView hv = new HomeView(); hv.Mensaje = validacion.ToString(); return(View("Mensaje", hv)); } #endregion string listaAmbientes = ambienteEnviar.ToString().Substring(0, ambienteEnviar.ToString().Length - 1); string url = string.Format("{0}://{1}{2}", Request.Url.Scheme, Request.Url.Authority, Url.Content("~")); StringBuilder sb = new StringBuilder(); sb.Append("<table border='1' style='border-collapse:collapse;width:100%;font-family:Arial;font-size:12px;'>"); sb.Append("<thead>"); sb.Append("<tr><th style='background-color:#002060;color:#ffffff;'>AMBIENTE</th><th style='background-color:#002060;color:#ffffff;'>SOLICITUD</th><th style='background-color:#002060;color:#ffffff;'>RESPONSABLE DE EJECUCION</th><th style='background-color:#002060;color:#ffffff;'>ANALISTA DESARROLLO</th><th style='background-color:#002060;color:#ffffff;'>PROYECTO</th><th style='background-color:#002060;color:#ffffff;'>FORMULARIO</th></tr>"); sb.Append("</thead>"); sb.Append("<tbody>"); foreach (string key in keys) { if (String.Compare(key.Substring(0, 3), "chk") == 0 && String.Compare(key, "chkTodos") != 0) { if (String.Compare(Request.Form[key], "on") == 0) { solicitudId = int.Parse(key.Substring(3)); Solicitud s = sr.Obtener(solicitudId); solicitudes.Add(s); List <SolicitudArchivo> solicitudesArchivo = Util.Util.ListarArchivos(s); string solicitudRFC = (s.Ambiente.Final && !String.IsNullOrEmpty(s.RFC)) ? s.RFC : String.Concat("S", s.Id.ToString().PadLeft(6, '0')); foreach (SolicitudArchivo sa in solicitudesArchivo) { if (sa.Area.Correos.Count() > 0) { responsableEjecucion = sa.Area.Nombre; } else { responsableEjecucion = s.AnalistaTestProd; } //sb.Append("<tr><td>" + s.Ambiente.Nombre + "</td><td>S" + s.Id.ToString().PadLeft(6, '0') + "</td><td>" + sa.SarID + "</td><td style='background-color:" + sa.Area.Color + ";'>" + responsableEjecucion + "</td><td>" + s.AnalistaDesarrollo + "</td><td>" + s.Proyecto.Codigo + "</td>"); sb.Append("<tr><td>" + s.Ambiente.Nombre + "</td><td>" + solicitudRFC + "</td><td style='background-color:" + sa.Area.Color + ";'>" + responsableEjecucion + "</td><td>" + s.AnalistaDesarrollo + "</td><td>" + s.Proyecto.Codigo + " - " + s.Proyecto.Nombre + "</td>"); sb.Append("<td>"); foreach (Archivo archivo in sa.Archivos) { sb.Append("<a href='" + url + "/Home/ObtenerArchivo/S" + s.Id.ToString().PadLeft(6, '0') + "-" + archivo.Id.ToString() + "'>" + archivo.Nombre + "</a><br/>"); } sb.Append("</td></tr>"); } foreach (var otros in s.Aprobaciones) { if (otros.Area != null && otros.Area.Id != 0) { sb.Append("<tr><td>" + s.Ambiente.Nombre + "</td><td>" + solicitudRFC + "</td><td style='background-color:" + otros.Area.Color + ";'>" + responsableEjecucion + "</td><td>" + s.AnalistaDesarrollo + "</td><td>" + s.Proyecto.Codigo + " - " + s.Proyecto.Nombre + "</td>"); sb.Append("<td>"); sb.Append("<a href='" + url + "/Solicitud/ObtenerAprobacion/" + otros.Id.ToString() + "'>" + otros.Nombre + "</a><br/>"); sb.Append("</td></tr>"); } } string estado = sr.ObtenerEstado("RM", estadoInicial, accionSiguiente); s.Estado = estado; if (ventanaId == 0) { s.Ventana = null; s.EjecutarEmergente = false; } else if (ventanaId == -1) { s.Ventana = null; s.EjecutarEmergente = true; } else if (ventanaId > 0) { s.Ventana = new VentanaRepository().Obtener(ventanaId); s.EjecutarEmergente = false; } else { s.Ventana = null; s.EjecutarEmergente = false; } Log log = new Log(); log.Usuario = ux; log.Accion = accionSiguiente; log.Comentario = "Se envía a los ejecutores"; log.Estado = s.Estado; log.FechaHora = DateTime.Now; s.Logs.Add(log); sr.ActualizarRMSolicitadoxSol(s); s.Logs = s.Logs.OrderByDescending(p => p.FechaHora).ToList(); EstadoRepository er = new EstadoRepository(); List <Estado> estados = er.Listar(); Estado estadoX = estados.FirstOrDefault(p => p.Nombre == s.Estado); if (estadoX != null && estadoX.EnviarCorreo) { Util.Util.EnviarCorreo(url, s, "Solicitud S" + s.Id.ToString().PadLeft(6, '0') + (s.Emergente ? " EMERGENTE/Normal Urgente " : " ") + s.Estado); } } } } sb.Append("</tbody>"); sb.Append("</table>"); string ventana = String.Empty; if (ventanaId == -1) { ventana = "Emergente"; } else if (ventanaId > 0) { VentanaRepository vr = new VentanaRepository(); Ventana vv = vr.Obtener(ventanaId); string horaHasta = String.Empty; if (vv.Hasta.HasValue) { horaHasta = " - " + vv.Hasta.Value.ToString("HH:mm"); } ventana = String.Concat("Normal a horas ", vv.Desde.ToString("HH:mm"), horaHasta); } else { ventana = Util.Util.ObtenerDescripcionVentana(solicitudes); } StringBuilder sbPrevio = new StringBuilder(); var mensajeEnvio = Request.Form["txtMensajeEnvio"]; sbPrevio.Append(mensajeEnvio); //sbPrevio.Append("Estimados<br/><br/>"); //sbPrevio.Append("Se envía la relación de pases a ejecutarse en la ventana: " + ventana + "<br/><br/>"); var asunto = Request.Form["txtAsunto"]; /*StringBuilder sb2 = new StringBuilder(); * sb2.Append("Pases a ejecutar"); * sb2.Append(" Ventana: " + ventana); * sb2.Append(" - Ambiente: " + listaAmbientes.ToUpper()); */ Util.Util.EnviarCorreo(solicitudes.ToArray(), asunto, sbPrevio.ToString() + sb.ToString(), true, true, true, true, true, true, true, true); return(View("Mensaje", new HomeView { Mensaje = "Se envió el correo a los ejecutores" })); } catch (Exception ex) { return(View("Mensaje", new HomeView { Mensaje = ex.Message })); } }
public ActionResult Actualizar(ProyectoView proyectoView) { try { AmbienteRepository ar = new AmbienteRepository(); string id = Request.Form["txtId"]; string codigoProyecto = Request.Form["txtCodigoProyecto"]; string nombreProyecto = Request.Form["txtNombreProyecto"]; string pm = Request.Form["txtPm"]; string ptl = Request.Form["txtPtl"]; char estado = Request.Form["cboEstadoProyecto"].ToCharArray()[0]; //string fechaProduccion = Request.Form["txtFechaProdProy"]; int responsableId = int.Parse(Request.Form["cboResponsable"]); bool mejora = Request.Form["chkMejora"] == "on"; string impacto = mejora ? Request.Form["txtImpacto"] : String.Empty; int tipoProyectoId = int.Parse(Request.Form["cboTipoProyecto"]); string txtCodigoPresupuestal = Request.Form["txtCodigoPresupuestal"]; string txtCodigoAlterno = Request.Form["txtCodigoAlterno"]; Proyecto p = new Proyecto(); p.Id = int.Parse(id); p.Codigo = codigoProyecto; p.Nombre = nombreProyecto; p.Pm = pm; p.Ptl = ptl; p.Estado = estado; p.Mejora = mejora; p.Impacto = impacto; p.CodigoPresupuestal = txtCodigoPresupuestal; p.CodigoAlterno = txtCodigoAlterno; if (responsableId > 0) { p.Responsable = new Responsable { Id = responsableId }; } if (tipoProyectoId > 0) { p.TipoProyecto = new TipoProyecto { Id = tipoProyectoId }; } List <ProyectoAmbiente> proyectoAmbientes = new List <ProyectoAmbiente>(); #region Ambientes string clave = "chkAmbiente"; foreach (string key in Request.Form.AllKeys) { if (key.IndexOf(clave) >= 0) { int ambienteId = int.Parse(key.Substring(clave.Length)); string fechaBruto = Request.Form["txtFecha" + ambienteId.ToString()]; int anio = int.Parse(fechaBruto.Substring(6)); int mes = int.Parse(fechaBruto.Substring(3, 2)); int dia = int.Parse(fechaBruto.Substring(0, 2)); DateTime fechaPase = new DateTime(anio, mes, dia); ProyectoAmbiente pa = new ProyectoAmbiente(); pa.Ambiente = ar.Obtener(ambienteId); pa.FechaPase = fechaPase; proyectoAmbientes.Add(pa); } } p.Ambientes = proyectoAmbientes; #endregion #region Aplicaciones List <string> nombres = Request.Form.AllKeys.ToList().Where(param => param.Contains("nombreapp")).ToList(); foreach (string nombre in nombres) { string indice = nombre.Substring("nombreapp".Length); string nombreAplicacion = Request.Form["nombreapp" + indice]; string rutaSvn = Request.Form["svnapp" + indice]; string ide = Request.Form["ideapp" + indice]; string version = Request.Form["versionapp" + indice]; char estadoApp = Request.Form["estadoapp" + indice].ToCharArray()[0]; if (!String.IsNullOrEmpty(Request.Form["hdId" + indice]) || Request.Form["eliminadoapp" + indice] == "0") { p.Aplicaciones.Add(new Aplicacion { Id = String.IsNullOrEmpty(Request.Form["hdId" + indice]) ? 0 : Convert.ToInt32(Request.Form["hdId" + indice]), Nombre = nombreAplicacion, RutaSVN = rutaSvn, Herramienta = ide, Version = version, Eliminar = Request.Form["eliminadoapp" + indice] == "1", Estado = estadoApp }); } } #endregion #region Desarrolladores List <string> idDeses = Request.Form.AllKeys.ToList().Where(param => param.Contains("iddes")).ToList(); foreach (string idDes in idDeses) { string indice = idDes.Substring("iddes".Length); if (!String.IsNullOrEmpty(Request.Form["iddes" + indice])) { if (Request.Form["nuevo" + indice] == "0" || Request.Form["eliminadodes" + indice] == "0") { p.Desarrolladores.Add(new Desarrollador { Id = int.Parse(Request.Form["iddes" + indice]), Usuario = Request.Form["usuariodes" + indice], Correo = Request.Form["correodes" + indice], Nombre = Request.Form["nombredes" + indice], Eliminar = Request.Form["eliminadodes" + indice] == "1" }); } } } #endregion #region Correos var prefijo = "proyectocorreonombre"; var correos = Request.Form.AllKeys.ToList().Where(param => param.Contains(prefijo)).ToList(); foreach (var item in correos) { var indice = item.Substring(prefijo.Length); var correo = Request.Form[prefijo + indice]; if (!String.IsNullOrEmpty(Request.Form["hdCorreo" + indice]) || Request.Form["eliminadoCorreo" + indice] == "0") { if (p.Correos == null) { p.Correos = new List <Correo>(); } p.Correos.Add(new Correo { Id = String.IsNullOrEmpty(Request.Form["hdCorreo" + indice]) ? 0 : Convert.ToInt32(Request.Form["hdCorreo" + indice]), Direccion = correo, Eliminar = Request.Form["eliminadoCorreo" + indice] == "1" }); } } #endregion ProyectoRepository pr = new ProyectoRepository(); p = pr.Actualizar(p); if (p.Id == 0) { proyectoView.Mensaje = "Hubo un error al actualizar el proyecto"; return(View("Crear", proyectoView)); } p.Ambientes = proyectoAmbientes; ProyectoView pp = new ProyectoView(); pp.Mensaje = "Proyecto Actualizado"; pp.Proyecto = p; SolicitudRepository sr = new SolicitudRepository(); pp.Proyecto.Solicitudes = sr.ListarPorProyecto(p.Id); pp.UsuarioLogueado = ObtenerUsuario(); ResponsableRepository rr = new ResponsableRepository(); TipoProyectoRepository tpr = new TipoProyectoRepository(); pp.Responsables = rr.Listar(String.Empty); pp.TipoProyectos = tpr.Listar(String.Empty); pp.Ambientes = ar.Listar(String.Empty); p.Correos = pr.ListarCorreo(p); return(View("Obtener", pp)); } catch (Exception ex) { return(View("Mensaje", new ProyectoView { Mensaje = ex.Message })); } }
public ActionResult ObjetosPendientes(string id) { try { AmbienteRepository ar = new AmbienteRepository(); ProyectoView pv = new ProyectoView(); SolicitudRepository sr = new SolicitudRepository(); pv.Mensaje = String.Empty; pv.Ambientes = ar.Listar(String.Empty); string codigoProyecto = Request.Form["txtCodigoProyecto"]; int ambienteId = int.Parse(Request.Form["cboAmbiente"]); int tipoFormulario = int.Parse(Request.Form["cboTipoFormulario"]); //pv.Proyecto = new Proyecto { Codigo = codigoProyecto }; pv.Ambiente = new Ambiente { Id = ambienteId }; pv.TipoFormulario = tipoFormulario; ProyectoRepository pr = new ProyectoRepository(); pv.Proyecto = pr.Obtener(codigoProyecto); if (pv.Proyecto != null && pv.Proyecto.Id > 0) { int proyectoId = pv.Proyecto.Id; //UtilExcel utilExcel = new UtilExcel(); if (tipoFormulario == 1) // Base de datos { pv.Campos = pr.ListarCampos(proyectoId, ambienteId); pv.ObjetosBD = pr.ListarObjetoBD(proyectoId, ambienteId); pv.PermisosDBU = pr.ListarPermisosDBU(proyectoId, ambienteId); pv.Jobs = pr.ListarJosb(proyectoId, ambienteId); if (pv.ObjetosBD.Count == 0 && pv.Campos.Count == 0 && pv.PermisosDBU.Count == 0 && pv.Jobs.Count == 0) { pv.Mensaje = "No se encontraron registros"; } //app.Quit(); //ReleaseObject(app); } else if (tipoFormulario == 2) // Configuraciones { pv.Configuraciones = pr.ListarConfiguraciones(proyectoId, ambienteId); if (pv.Configuraciones.Count == 0) { pv.Mensaje = "No se encontraron registros"; } } return(View(pv)); } else { pv.Mensaje = String.Format("El código de proyecto {0} no existe en el CMS", codigoProyecto); return(View("Mensaje", pv)); } } catch (Exception ex) { return(View("Mensaje", new ProyectoView { Mensaje = ex.Message })); } }
public BitacoraSolicitudesController() { _solicitudesRepo = new SolicitudRepository(); _repository = new BitacoraSolicitudesRepository(); _PersonasRepository = new PersonasRepository(); }
public List <ObjetoBD> Listar(string nombre) { try { var ir = new InstanciaRepository(); var er = new EsquemaRepository(); var tobdr = new TipoObjetoBDRepository(); var tabdr = new TipoAccionBDRepository(); var sr = new SolicitudRepository(); var objetosBD = new List <ObjetoBD>(); var cmd = new SqlCommand("dbo.usp_ListarObjetoBDPorNombre", this.Conexion); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.Add(new SqlParameter("@nombre", SqlDbType.VarChar, 100)).Value = nombre; Conexion.Open(); var sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection); while (sdr.Read()) { var objetoBD = new ObjetoBD(); objetoBD.Instancia = new Instancia { Id = Convert.ToInt32(sdr["instanciaId"]), Nombre = sdr["instancianombre"].ToString() }; objetoBD.Esquema = new Esquema { Id = Convert.ToInt32(sdr["esquemaid"]), Nombre = sdr["esquemanombre"].ToString() }; objetoBD.TipoObjeto = new TipoObjetoBD { Id = Convert.ToInt32(sdr["tipoobjetobdid"]), Nombre = sdr["tipoobjetonombre"].ToString() }; objetoBD.TipoAccion = new TipoAccionBD { Id = Convert.ToInt32(sdr["tipoaccionbdid"]), Nombre = sdr["tipoaccionnombre"].ToString() }; objetoBD.Solicitud = new Solicitud { Id = Convert.ToInt32(sdr["solicitudid"]), Ambiente = new Ambiente { Id = Convert.ToInt32(sdr["ambienteid"]), Nombre = sdr["ambientenombre"].ToString() }, Proyecto = new Proyecto { Codigo = sdr["proyectocodigo"].ToString(), Nombre = sdr["proyectonombre"].ToString() }, Estado = sdr["estado"].ToString(), FechaCreacion = Convert.ToDateTime(sdr["fechacreacion"]) }; if (sdr["fechaejecucion"] == DBNull.Value) { objetoBD.Solicitud.FechaEjecucion = null; } else { objetoBD.Solicitud.FechaEjecucion = Convert.ToDateTime(sdr["fechaejecucion"]); } objetoBD.Nombre = sdr["ObjetoBD"].ToString(); objetosBD.Add(objetoBD); } sdr.Close(); return(objetosBD); } catch { throw; } finally { if (Conexion.State == ConnectionState.Open) { Conexion.Close(); } } }