public bool Actualizar(Oferta oferta, string usuario) { try { if (oferta.Funciones == null) oferta.Funciones = string.Empty; if (oferta.Competencias == null) oferta.Competencias = string.Empty; if (oferta.AreaEmpresa == null) oferta.AreaEmpresa = string.Empty; if (oferta.TipoCargoIdListaValor == null) oferta.TipoCargoIdListaValor = string.Empty; if (oferta.TipoContratoIdListaValor == null) oferta.TipoContratoIdListaValor = string.Empty; if (oferta.Horario == null) oferta.Horario = string.Empty; if (oferta.CicloMinimoCarreraUTP == null) oferta.CicloMinimoCarreraUTP = 0; oferta.Funciones = oferta.Funciones.Replace("@", ""); oferta.Competencias = oferta.Competencias.Replace("@", ""); //Se actualizan las fase de la oferta: foreach (var item in oferta.OfertaFases) { //Estos 3 registros siempre están activos. if (item.IdListaValor == "OFFAPR" || item.IdListaValor == "OFFACV" || item.IdListaValor == "OFFAFI") { item.Incluir = true; } item.ModificadoPor = usuario; } return adOferta.Actualizar(oferta); } catch (Exception ex) { throw ex; } }
public int Insertar(Oferta oferta) { try { if (oferta.Funciones == null) oferta.Funciones = string.Empty; if (oferta.Competencias == null) oferta.Competencias = string.Empty; if (oferta.AreaEmpresa == null) oferta.AreaEmpresa = string.Empty; if (oferta.TipoCargoIdListaValor == null) oferta.TipoCargoIdListaValor = string.Empty; if (oferta.TipoContratoIdListaValor == null) oferta.TipoContratoIdListaValor = string.Empty; if (oferta.Horario == null) oferta.Horario = string.Empty; #region Se llena una lista con todas las fases de la oferta. Se marca las que van de manera obligatoria LNGeneral lnGeneral = new LNGeneral(); var listaFasesDeLaOferta = lnGeneral.ObtenerListaValor(Constantes.IDLISTA_FASE_OFERTA).Where(m =>m.EstadoValor.Equals(Constantes.Estado_Activo_ListaValor)).OrderBy(m => m.Peso); List<OfertaFase> listaOfertaFase = new List<OfertaFase>(); foreach (var item in listaFasesDeLaOferta) { OfertaFase nuevaOfertaFase = new OfertaFase(); nuevaOfertaFase.IdListaValor = item.IdListaValor; nuevaOfertaFase.IdOferta = 0; //Al realizar las inserciones existen 4 fases que van obligatoriamente. if (item.IdListaValor == "OFFAPR" || item.IdListaValor == "OFFACV" || item.IdListaValor == "OFFAFI" || item.IdListaValor == "OFFADE") { nuevaOfertaFase.Incluir = true; } else { nuevaOfertaFase.Incluir = false; } nuevaOfertaFase.CreadoPor = oferta.CreadoPor; listaOfertaFase.Add(nuevaOfertaFase); } #endregion return adOferta.Insertar(oferta, listaOfertaFase); } catch (Exception ex) { throw ex; } }
public List<Oferta> BuscarAvanzadoOfertasAlumno(VistaOfertaAlumno entidad) { List<Oferta> listaOferta = new List<Oferta>(); DataTable dtResultado = adOferta.BuscarAvanzadoOfertasAlumno(entidad); for (int i = 0; i <= dtResultado.Rows.Count - 1; i++) { Oferta oferta = new Oferta(); oferta.IdOferta = Funciones.ToInt(dtResultado.Rows[i]["IdOferta"]); oferta.Compatible = Funciones.ToDecimal(dtResultado.Rows[i]["Compatible"]); oferta.FechaPublicacion = Funciones.ToDateTime(dtResultado.Rows[i]["FechaPublicacion"]); oferta.NombreComercial = Funciones.ToString(dtResultado.Rows[i]["NombreComercial"]); oferta.CargoOfrecido = Funciones.ToString(dtResultado.Rows[i]["CargoOfrecido"]); oferta.DesTipoTrabajo = Funciones.ToString(dtResultado.Rows[i]["DesTipoTrabajo"]); oferta.Horario = Funciones.ToString(dtResultado.Rows[i]["Horario"]); oferta.RemuneracionOfrecida = Funciones.ToDecimal(dtResultado.Rows[i]["RemuneracionOfrecida"]); oferta.Mensaje = Funciones.ToInt(dtResultado.Rows[i]["Mensajes"]); oferta.IdEmpresa = Funciones.ToInt(dtResultado.Rows[i]["IdEmpresa"]); oferta.TotalRegistros = Funciones.ToInt(dtResultado.Rows[i]["CantidadTotal"]); listaOferta.Add(oferta); } return listaOferta; }
public PartialViewResult _VistaOfertaAdministracion(Oferta oferta, string pantalla = "") { TicketEmpresa ticket = (TicketEmpresa)Session["TicketEmpresa"]; if (pantalla == "Empresa") { //Se obtienen los usuarios de la empresa con roles Administrador, Supervisor y Usuario. LNEmpresaUsuario lnEmpresaUsuario = new LNEmpresaUsuario(); List<VistaEmpresaUsuario> lista = lnEmpresaUsuario.ObtenerUsuariosActivosYPorRolesPorIdEmpresa(ticket.IdEmpresa); ViewBag.UsuarioPropietarioEmpresa = new SelectList(lista, "NombreUsuario", "NombreCompletoUsuario", oferta.UsuarioPropietarioEmpresa); } ViewBag.Pantalla = pantalla; return PartialView("_VistaOfertaAdministracion", oferta); }
public ActionResult VistaOfertaRequisitos(Oferta oferta) { return PartialView("_VistaOfertaRequisitos", oferta); }
/// <summary> /// Se actualiza la oferta, las fases de la oferta y los estudios (carreras). /// </summary> /// <param name="oferta"></param> /// <returns></returns> public bool Actualizar(Oferta oferta) { bool procesoExitoso = false; try { using (SqlConnection conexion = new SqlConnection(cadenaConexion)) { conexion.Open(); SqlCommand cmd = new SqlCommand(); SqlTransaction transaccion; transaccion = conexion.BeginTransaction("ActualizarOferta"); cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "Oferta_Actualizar"; cmd.Transaction = transaccion; cmd.Connection = conexion; try { //1. Se actualiza la oferta. //Parámetros: cmd.Parameters.Add(new SqlParameter("@IdOferta", oferta.IdOferta)); cmd.Parameters.Add(new SqlParameter("@IdEmpresa", oferta.IdEmpresa)); cmd.Parameters.Add(new SqlParameter("@Funciones", oferta.Funciones)); cmd.Parameters.Add(new SqlParameter("@Competencias", oferta.Competencias)); cmd.Parameters.Add(new SqlParameter("@UsuarioPropietarioEmpresa", oferta.UsuarioPropietarioEmpresa)); cmd.Parameters.Add(new SqlParameter("@FechaFinProceso", oferta.FechaFinProceso)); cmd.Parameters.Add(new SqlParameter("@FechaFinRecepcionCV", oferta.FechaFinRecepcionCV)); cmd.Parameters.Add(new SqlParameter("@IdEmpresaLocacion", oferta.IdEmpresaLocacion)); cmd.Parameters.Add(new SqlParameter("@TipoTrabajo", oferta.TipoTrabajoIdListaValor)); cmd.Parameters.Add(new SqlParameter("@TipoContrato", oferta.TipoContratoIdListaValor)); cmd.Parameters.Add(new SqlParameter("@DuracionContrato", oferta.DuracionContrato)); cmd.Parameters.Add(new SqlParameter("@TipoCargo", oferta.TipoCargoIdListaValor)); cmd.Parameters.Add(new SqlParameter("@CargoOfrecido", oferta.CargoOfrecido)); cmd.Parameters.Add(new SqlParameter("@RemuneracionOfrecida", oferta.RemuneracionOfrecida)); cmd.Parameters.Add(new SqlParameter("@Horario", oferta.Horario)); cmd.Parameters.Add(new SqlParameter("@AreaEmpresa", oferta.AreaEmpresa)); cmd.Parameters.Add(new SqlParameter("@NumeroVacantes", oferta.NumeroVacantes)); cmd.Parameters.Add(new SqlParameter("@RequiereExperienciaLaboral", oferta.RequiereExperienciaLaboral)); cmd.Parameters.Add(new SqlParameter("@RecibeCorreos", oferta.RecibeCorreosIdListaValor)); cmd.Parameters.Add(new SqlParameter("@ModificadoPor", oferta.ModificadoPor)); cmd.Parameters.Add(new SqlParameter("@EstadoOferta", oferta.EstadoOferta)); cmd.Parameters.Add(new SqlParameter("@EstadoCarreraUTP", oferta.EstadoCarreraUTP)); cmd.Parameters.Add(new SqlParameter("@CicloMinimoCarreraUTP", oferta.CicloMinimoCarreraUTP)); cmd.Parameters.Add(new SqlParameter("@MesesExperienciaTotal", oferta.ExperienciaGeneral)); cmd.Parameters.Add(new SqlParameter("@MesesExperienciaTipoTrabajo", oferta.ExperienciaPosicionesSimilares)); cmd.ExecuteNonQuery(); cmd.Parameters.Clear(); //2. Se actualizan las fases: foreach (var item in oferta.OfertaFases) { //cmd = new SqlCommand(); //cmd.Transaction = transaccion; cmd.Parameters.Clear(); cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "OfertaFase_Actualizar"; cmd.Parameters.Add(new SqlParameter("@IdOfertaFase", item.IdOfertaFase)); cmd.Parameters.Add(new SqlParameter("@Incluir", item.Incluir)); cmd.Parameters.Add(new SqlParameter("@ModificadoPor", item.ModificadoPor)); //cmd.Connection = conexion; cmd.ExecuteNonQuery(); } //3. Se eliminan las carreras universitarias actuales: cmd.Parameters.Clear(); cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "OfertaEstudio_EliminarCarrerasUTP"; cmd.Parameters.Add(new SqlParameter("@IdOferta", oferta.IdOferta)); cmd.ExecuteNonQuery(); //4. Se agregan las nuevas carreras: cmd.Parameters.Clear(); foreach (var item in oferta.CarrerasSeleccionadas) { cmd.Parameters.Clear(); cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "OfertaEstudio_Insertar"; cmd.Parameters.Add(new SqlParameter("@IdOferta", oferta.IdOferta)); cmd.Parameters.Add(new SqlParameter("@CicloEstudio", oferta.CicloMinimoCarreraUTP)); cmd.Parameters.Add(new SqlParameter("@Estudio", item.Estudio)); cmd.Parameters.Add(new SqlParameter("@TipoDeEstudio", item.TipoDeEstudioIdListaValor)); cmd.Parameters.Add(new SqlParameter("@EstadoDelEstudio", oferta.EstadoCarreraUTP)); cmd.Parameters.Add(new SqlParameter("@EstadoOfertaEstudio", "OFESAC")); //Estado activo cmd.Parameters.Add(new SqlParameter("@CreadoPor", oferta.ModificadoPor)); //cmd.Connection = conexion; cmd.ExecuteNonQuery(); } transaccion.Commit(); conexion.Close(); procesoExitoso = true; } catch (Exception exTransaccion) { transaccion.Rollback(); throw exTransaccion; } } } catch (Exception ex) { throw ex; } return procesoExitoso; }
public void UTP_ActualizaSeguimientoOferta(Oferta oferta) { using (SqlConnection conexion = new SqlConnection(cadenaConexion)) { SqlCommand cmd = new SqlCommand(); cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "Oferta_ActualizaSeguimiento"; //Parámetros: cmd.Parameters.Add(new SqlParameter("@IdOferta", oferta.IdOferta)); //if (oferta.FechaSeguimiento.ToString("yyyyMMdd") != "19000101") //{ // cmd.Parameters.Add(new SqlParameter("@FechaSeguimiento", oferta.FechaSeguimiento)); //} if (oferta.FechaSeguimiento != new DateTime(1, 1, 1)) { cmd.Parameters.Add(new SqlParameter("@FechaSeguimiento", oferta.FechaSeguimiento)); } cmd.Parameters.Add(new SqlParameter("@NumeroInvitados", oferta.NumeroInvitados)); cmd.Parameters.Add(new SqlParameter("@NumeroEntrevistados", oferta.NumeroEntrevistados)); cmd.Parameters.Add(new SqlParameter("@NumeroContratados", oferta.NumeroContratados)); cmd.Parameters.Add(new SqlParameter("@ConvenioRegistrado", oferta.ConvenioRegistrado)); cmd.Parameters.Add(new SqlParameter("@Contacto", oferta.Contacto)); cmd.Parameters.Add(new SqlParameter("@DatosContacto", oferta.DatosContacto)); cmd.Parameters.Add(new SqlParameter("@MedioComunicacion", oferta.MedioComunicacion)); //Datos de la encuesta: cmd.Parameters.Add(new SqlParameter("@EncuestaCalificacion", oferta.Calificacion)); cmd.Parameters.Add(new SqlParameter("@EncuestaNroPostulantes", oferta.NroPostulantes)); cmd.Parameters.Add(new SqlParameter("@EncuestaContratadosUTP", oferta.ContratadosUTP)); cmd.Parameters.Add(new SqlParameter("@EncuestaContratadosOtros", oferta.ContratadosOtros)); cmd.Parameters.Add(new SqlParameter("@TipoTrabajoUTP", oferta.TipoTrabajoUTP)); cmd.Connection = conexion; conexion.Open(); cmd.ExecuteNonQuery(); conexion.Close(); } }
public OfertaPostulante() { Oferta = new Oferta(); Alumno = new Alumno(); FaseOferta = new ListaValor(); }
public ActionResult OfertaLaboral(Oferta oferta) { TicketEmpresa ticket = (TicketEmpresa)Session["TicketEmpresa"]; var cantidadCarreras = ((List<OfertaEstudio>)(Session["CarrerasSeleccionadas"])).Count; //Se contabilizan la cantidad de carreras seleccionadas. if (ModelState.IsValid && cantidadCarreras > 0) { //oferta.UsuarioPropietarioEmpresa = ""; oferta.ModificadoPor = ticket.Usuario; //12FEB: Si el estado actual es BORRADOR debe cambiar a EN CONSTRUCCION: if (oferta.EstadoOferta == Constantes.OFERTA_ESTADO_BORRADOR) oferta.EstadoOferta = Constantes.OFERTA_ESTADO_ENCONSTRUCCION; //Se actualizan las fase de la oferta: //foreach (var item in oferta.OfertaFases) //{ // //Estos 3 registros siempre están activos. // if (item.IdListaValor == "OFFAPR" || item.IdListaValor == "OFFACV" || item.IdListaValor == "OFFAFI") // { // item.Incluir = true; // } // item.ModificadoPor = ticket.Usuario; //} //Se obtiene los datos de sesión. oferta.CarrerasSeleccionadas = (List<OfertaEstudio>)(Session["CarrerasSeleccionadas"]); //Método general para actualizar la oferta. lnOfertaEmpresa.Actualizar(oferta, ticket.Usuario); //lnOferta.ActualizarOfertaFase(oferta.OfertaFases); //Se guardan los estudios de la oferta. //Primero hay que eliminar los estudios universitarios. //LNOfertaEstudio lnOfertaEstudio = new LNOfertaEstudio(); //foreach (var ofertaEstudioUTP in oferta.CarrerasSeleccionadas) //{ // lnOfertaEstudio.Insertar(ofertaEstudioUTP); //} //1. Mostrar mensaje de éxito. TempData["MsjExitoEditarOferta"] = "La oferta '" + oferta.CargoOfrecido + "' ha sido actualizada con éxito."; //2. Redireccionar a la lista. //return RedirectToAction("Publicacion"); } else { var errors = ModelState.Select(x => x.Value.Errors) .Where(y => y.Count > 0) .ToList(); int a = 0; } LNGeneral lnGeneral = new LNGeneral(); LNEmpresaLocacion lnEmpresaLocacion = new LNEmpresaLocacion(); ViewBag.TipoCargoIdListaValor = new SelectList(lnGeneral.ObtenerListaValor(Constantes.IDLISTA_TIPO_CARGO), "IdListaValor", "Valor", oferta.TipoCargoIdListaValor); ViewBag.TipoTrabajoIdListaValor = new SelectList(lnGeneral.ObtenerListaValor(Constantes.IDLISTA_TIPO_TRABAJO), "IdListaValor", "Valor", oferta.TipoTrabajoIdListaValor); ViewBag.TipoContratoIdListaValor = new SelectList(lnGeneral.ObtenerListaValor(Constantes.IDLISTA_TIPO_CONTRATO), "IdListaValor", "Valor", oferta.TipoContratoIdListaValor); ViewBag.IdEmpresaLocacion = new SelectList(lnEmpresaLocacion.ObtenerLocaciones(ticket.IdEmpresa), "IdEmpresaLocacion", "NombreLocacion", oferta.IdEmpresaLocacion); ViewBag.RecibeCorreosIdListaValor = new SelectList(lnGeneral.ObtenerListaValor(Constantes.IDLISTA_OFERTA_RECIBECORREOS), "IdListaValor", "Valor", oferta.RecibeCorreosIdListaValor); //Se agrega el estado del estudio para las carreras: ViewBag.EstadoCarreraUTP = new SelectList(lnGeneral.ObtenerListaValorOfertaEstudiosUTP(Constantes.IDLISTA_ESTADO_DEL_ESTUDIO), "IdListaValor", "Valor"); if (cantidadCarreras == 0) { ViewBag.MensajeCarrerasSeleccionadas = "Debe seleccionar al menos una carrera"; TempData["MsjErrorNoCarreras"] = "error"; } else { ViewBag.MensajeCarrerasSeleccionadas = ""; } return View(oferta); }
public Oferta ObtenerSeguimientoPorId(int idOferta) { Oferta oferta = null; DataSet dsResultado = adOferta.ObtenerSeguimientoPorId(idOferta); //Tabla Index 0: Datos de la oferta. if (dsResultado.Tables[0].Rows.Count > 0) { oferta = new Oferta(); oferta.IdOferta = Convert.ToInt32(dsResultado.Tables[0].Rows[0]["IdOferta"]); oferta.FechaSeguimiento = Convert.ToDateTime(dsResultado.Tables[0].Rows[0]["FechaSeguimiento"] == System.DBNull.Value ? null : dsResultado.Tables[0].Rows[0]["FechaSeguimiento"]); oferta.NumeroInvitados = Convert.ToInt32(dsResultado.Tables[0].Rows[0]["NumeroInvitados"] == System.DBNull.Value ? null : dsResultado.Tables[0].Rows[0]["NumeroInvitados"]); oferta.NumeroEntrevistados = Convert.ToInt32(dsResultado.Tables[0].Rows[0]["NumeroEntrevistados"] == System.DBNull.Value ? null : dsResultado.Tables[0].Rows[0]["NumeroEntrevistados"]); oferta.NumeroContratados = Convert.ToInt32(dsResultado.Tables[0].Rows[0]["NumeroContratados"] == System.DBNull.Value ? null : dsResultado.Tables[0].Rows[0]["NumeroContratados"]); oferta.ConvenioRegistrado = Convert.ToBoolean(dsResultado.Tables[0].Rows[0]["ConvenioRegistrado"] == System.DBNull.Value ? null : dsResultado.Tables[0].Rows[0]["ConvenioRegistrado"]); oferta.Contacto = Convert.ToString(dsResultado.Tables[0].Rows[0]["Contacto"] == System.DBNull.Value ? null : dsResultado.Tables[0].Rows[0]["Contacto"]); oferta.DatosContacto = Convert.ToString(dsResultado.Tables[0].Rows[0]["DatosContacto"] == System.DBNull.Value ? null : dsResultado.Tables[0].Rows[0]["DatosContacto"]); oferta.MedioComunicacion = Convert.ToString(dsResultado.Tables[0].Rows[0]["MedioComunicacion"] == System.DBNull.Value ? null : dsResultado.Tables[0].Rows[0]["MedioComunicacion"]); //Encuesta: oferta.Calificacion = Convert.ToString(dsResultado.Tables[0].Rows[0]["EncuestaCalificacion"] == System.DBNull.Value ? null : dsResultado.Tables[0].Rows[0]["EncuestaCalificacion"]); oferta.NroPostulantes = Convert.ToInt32(dsResultado.Tables[0].Rows[0]["EncuestaNroPostulantes"] == System.DBNull.Value ? null : dsResultado.Tables[0].Rows[0]["EncuestaNroPostulantes"]); oferta.ContratadosUTP = Convert.ToInt32(dsResultado.Tables[0].Rows[0]["EncuestaContratadosUTP"] == System.DBNull.Value ? null : dsResultado.Tables[0].Rows[0]["EncuestaContratadosUTP"]); oferta.ContratadosOtros = Convert.ToString(dsResultado.Tables[0].Rows[0]["EncuestaContratadosOtros"] == System.DBNull.Value ? null : dsResultado.Tables[0].Rows[0]["EncuestaContratadosOtros"]); oferta.TipoTrabajoUTP = Convert.ToString(dsResultado.Tables[0].Rows[0]["TipoTrabajoUTP"] == System.DBNull.Value ? null : dsResultado.Tables[0].Rows[0]["TipoTrabajoUTP"]); } return oferta; }
public Oferta ObtenerPorId(int idOferta) { Oferta oferta = null; //18FEB: Se obtiene las carreras de UTP y se quitan las ya seleccionadas. LNGeneral lnGeneral = new LNGeneral(); List<ListaValor> listaCarrerasUTP = lnGeneral.ObtenerListaValor(Constantes.IDLISTA_DE_CARRERA).Where(m => m.IdListaValorPadre == "TEUNIV").ToList(); //Se obtienen todas las carreras DataSet dsResultado = adOferta.ObtenerPorId(idOferta); //Tabla Index 0: Datos de la oferta. if (dsResultado.Tables[0].Rows.Count > 0) { oferta = new Oferta(); oferta.IdOferta = Convert.ToInt32(dsResultado.Tables[0].Rows[0]["IdOferta"]); oferta.IdEmpresa = Convert.ToInt32(dsResultado.Tables[0].Rows[0]["IdEmpresa"]); oferta.CargoOfrecido = Convert.ToString(dsResultado.Tables[0].Rows[0]["CargoOfrecido"]); oferta.Funciones = Convert.ToString(dsResultado.Tables[0].Rows[0]["Funciones"]); oferta.Competencias = Convert.ToString(dsResultado.Tables[0].Rows[0]["Competencias"]); oferta.TipoTrabajoIdListaValor = Convert.ToString(dsResultado.Tables[0].Rows[0]["TipoTrabajo"]); oferta.TipoTrabajo.Valor = Convert.ToString(dsResultado.Tables[0].Rows[0]["TipoTrabajoDescripcion"]); oferta.TipoCargoIdListaValor = Convert.ToString(dsResultado.Tables[0].Rows[0]["TipoCargo"]); oferta.TipoCargo.Valor = Convert.ToString(dsResultado.Tables[0].Rows[0]["TipoCargoDescripcion"]); oferta.TipoContratoIdListaValor = Convert.ToString(dsResultado.Tables[0].Rows[0]["TipoContrato"]); oferta.TipoContrato.Valor = Convert.ToString(dsResultado.Tables[0].Rows[0]["TipoContratoDescripcion"]); oferta.RemuneracionOfrecida = Convert.ToDecimal(dsResultado.Tables[0].Rows[0]["RemuneracionOfrecida"]); oferta.Horario = Convert.ToString(dsResultado.Tables[0].Rows[0]["Horario"]); oferta.AreaEmpresa = Convert.ToString(dsResultado.Tables[0].Rows[0]["AreaEmpresa"]); if (dsResultado.Tables[0].Rows[0]["NumeroVacantes"] == System.DBNull.Value) { oferta.NumeroVacantes = null; } else { oferta.NumeroVacantes = Convert.ToInt32(dsResultado.Tables[0].Rows[0]["NumeroVacantes"]); } oferta.IdEmpresaLocacion = Convert.ToInt32(dsResultado.Tables[0].Rows[0]["IdEmpresaLocacion"]); oferta.RecibeCorreosIdListaValor = Convert.ToString(dsResultado.Tables[0].Rows[0]["RecibeCorreos"]); oferta.FechaFinRecepcionCV = Convert.ToDateTime(dsResultado.Tables[0].Rows[0]["FechaFinRecepcionCV"]); oferta.AreaEmpresa = Convert.ToString(dsResultado.Tables[0].Rows[0]["AreaEmpresa"]); if (dsResultado.Tables[0].Rows[0]["DuracionContrato"] == System.DBNull.Value) { oferta.DuracionContrato = null; } else { oferta.DuracionContrato = Convert.ToInt32(dsResultado.Tables[0].Rows[0]["DuracionContrato"]); } oferta.Empresa.NombreComercial = Convert.ToString(dsResultado.Tables[0].Rows[0]["EmpresaNombreComercial"]); oferta.NombreLocacion = Convert.ToString(dsResultado.Tables[0].Rows[0]["NombreLocacion"]); oferta.CreadoPor = Convert.ToString(dsResultado.Tables[0].Rows[0]["CreadoPor"]); oferta.ModificadoPor = Convert.ToString(dsResultado.Tables[0].Rows[0]["ModificadoPor"]); oferta.FechaCreacion = Convert.ToDateTime(dsResultado.Tables[0].Rows[0]["FechaCreacion"]); oferta.FechaModificacion = Convert.ToDateTime(dsResultado.Tables[0].Rows[0]["FechaModificacion"]); oferta.EstadoOferta = Convert.ToString(dsResultado.Tables[0].Rows[0]["EstadoOferta"]); oferta.UsuarioPropietarioEmpresa = Convert.ToString(dsResultado.Tables[0].Rows[0]["UsuarioPropietarioEmpresa"]); oferta.FechaPublicacion = Convert.ToDateTime(dsResultado.Tables[0].Rows[0]["FechaPublicacion"]); oferta.CicloMinimoCarreraUTP = Convert.ToInt32(dsResultado.Tables[0].Rows[0]["CicloMinimoCarreraUTP"]); oferta.EstadoCarreraUTP = Convert.ToString(dsResultado.Tables[0].Rows[0]["EstadoCarreraUTP"]); oferta.ExperienciaGeneral = Convert.ToInt32(dsResultado.Tables[0].Rows[0]["MesesExperienciaTotal"]); oferta.ExperienciaPosicionesSimilares = Convert.ToInt32(dsResultado.Tables[0].Rows[0]["MesesExperienciaTipoTrabajo"]); //05MAR15: Para las nuevas ofertas este campo siempre está con data. Se agrega la validación para compatibilidad con ofertas anteriores. oferta.FechaFinProceso = Convert.ToDateTime(dsResultado.Tables[0].Rows[0]["FechaFinProceso"] == System.DBNull.Value ? new DateTime(1, 1, 1900) : dsResultado.Tables[0].Rows[0]["FechaFinProceso"]); } //Tabla Index 1: Lista de estudios. //Se instancia las listas: oferta.ListaEstudios = new List<OfertaEstudio>(); oferta.CarrerasSeleccionadas = new List<OfertaEstudio>(); foreach (DataRow filaEstudio in dsResultado.Tables[1].Rows) { OfertaEstudio estudio = new OfertaEstudio(); estudio.IdOfertaEstudio = Convert.ToInt32(filaEstudio["IdOfertaEstudio"] == System.DBNull.Value ? null : filaEstudio["IdOfertaEstudio"]); estudio.IdOferta = Convert.ToInt32(filaEstudio["IdOfertaEstudio"] == System.DBNull.Value ? null : filaEstudio["IdOfertaEstudio"]); estudio.CicloEstudio = Convert.ToInt32(filaEstudio["CicloEstudio"] == System.DBNull.Value ? null : filaEstudio["CicloEstudio"]); estudio.Estudio = Convert.ToString(filaEstudio["Estudio"] == System.DBNull.Value ? null : filaEstudio["Estudio"]); estudio.TipoDeEstudio.IdListaValor = Convert.ToString(filaEstudio["TipoDeEstudio"] == System.DBNull.Value ? null : filaEstudio["TipoDeEstudio"]); estudio.TipoDeEstudioIdListaValor = Convert.ToString(filaEstudio["TipoDeEstudio"] == System.DBNull.Value ? null : filaEstudio["TipoDeEstudio"]); estudio.TipoDeEstudio.Valor = Convert.ToString(filaEstudio["TipoDeEstudioDescripcion"]); estudio.EstadoDelEstudio.Valor = Convert.ToString(filaEstudio["EstadoDelEstudioDescripcion"]); estudio.EstadoOfertaEstudio.Valor = Convert.ToString(filaEstudio["EstadoOfertaEstudioDescripcion"]); estudio.CreadoPor = Convert.ToString(filaEstudio["CreadoPor"]); estudio.ModificadoPor = Convert.ToString(filaEstudio["ModificadoPor"]); estudio.FechaCreacion = Convert.ToDateTime(filaEstudio["FechaCreacion"]); estudio.FechaModificacion = Convert.ToDateTime(filaEstudio["FechaModificacion"]); #region Se separan las carrearas universitarias UTP. if (estudio.TipoDeEstudio.IdListaValor == "TEUNIV") //Tipo de Estudio Universitario de UTP. { var carreraEncontrada = listaCarrerasUTP.Where(m => m.Valor == estudio.Estudio).FirstOrDefault(); if (carreraEncontrada != null) { estudio.CodigoCarrera = carreraEncontrada.IdListaValor; //Se guarda el código de la carrera. oferta.CarrerasSeleccionadas.Add(estudio); } } else //Otros estudios. { oferta.ListaEstudios.Add(estudio); } #endregion } //Tabla Index 2: Lista de experiencia por sector oferta.ListaSectores = new List<OfertaSectorEmpresarial>(); foreach (DataRow filaSector in dsResultado.Tables[2].Rows) { OfertaSectorEmpresarial sector = new OfertaSectorEmpresarial(); sector.IdOfertaSectorEmpresarial = Convert.ToInt32(filaSector["IdOfertaSectorEmpresarial"]); sector.IdOferta = Convert.ToInt32(filaSector["IdOferta"]); sector.SectorEmpresarial.Valor = Convert.ToString(filaSector["SectorEmpresarialDescripcion"]); sector.AniosTrabajados = Convert.ToInt32(filaSector["AniosTrabajados"] == System.DBNull.Value ? null : filaSector["AniosTrabajados"]); sector.ExperienciaExcluyente = Convert.ToBoolean(filaSector["ExperienciaExcluyente"]); sector.EstadoOfertaSectorEmpresarial.Valor = Convert.ToString(filaSector["EstadoOfertaSectorEmpresarialDescripcion"]); sector.CreadoPor = Convert.ToString(filaSector["CreadoPor"]); sector.ModificadoPor = Convert.ToString(filaSector["ModificadoPor"]); sector.FechaCreacion = Convert.ToDateTime(filaSector["FechaCreacion"]); sector.FechaModificacion = Convert.ToDateTime(filaSector["FechaModificacion"]); oferta.ListaSectores.Add(sector); } //Tabla Index 3: Lista de información adicional oferta.ListaInformacionAdicional = new List<OfertaInformacionAdicional>(); foreach (DataRow filaInfoAdicional in dsResultado.Tables[3].Rows) { OfertaInformacionAdicional infoAdicional = new OfertaInformacionAdicional(); infoAdicional.IdOfertaInformacionAdicional = Convert.ToInt32(filaInfoAdicional["IdOfertaInformacionAdicional"]); infoAdicional.IdOferta = Convert.ToInt32(filaInfoAdicional["IdOferta"]); infoAdicional.TipoConocimiento.Valor = Convert.ToString(filaInfoAdicional["TipoConocimientoDescripcion"]); infoAdicional.Conocimiento = Convert.ToString(filaInfoAdicional["Conocimiento"]); infoAdicional.NivelConocimiento.Valor = Convert.ToString(filaInfoAdicional["NivelConocimientoDescripcion"]); infoAdicional.AniosExperiencia = Convert.ToInt32(filaInfoAdicional["AniosExperiencia"] == System.DBNull.Value ? null : filaInfoAdicional["AniosExperiencia"]); infoAdicional.EstadoOfertaInformacionAdicional.Valor = Convert.ToString(filaInfoAdicional["EstadoOfertaInformacionAdicionalDescripcion"]); infoAdicional.CreadoPor = Convert.ToString(filaInfoAdicional["CreadoPor"]); infoAdicional.ModificadoPor = Convert.ToString(filaInfoAdicional["ModificadoPor"]); infoAdicional.FechaCreacion = Convert.ToDateTime(filaInfoAdicional["FechaCreacion"]); infoAdicional.FechaModificacion = Convert.ToDateTime(filaInfoAdicional["FechaModificacion"]); oferta.ListaInformacionAdicional.Add(infoAdicional); } //Tabla Index 4: Lista de Postulantes oferta.Postulantes = new List<OfertaPostulante>(); foreach (DataRow filaPostulante in dsResultado.Tables[4].Rows) { OfertaPostulante postulante = new OfertaPostulante(); postulante.Alumno.IdAlumno = Convert.ToInt32(filaPostulante["IdAlumno"]); postulante.Alumno.Nombres = Convert.ToString(filaPostulante["AlumnoNombres"]); postulante.Alumno.Apellidos = Convert.ToString(filaPostulante["AlumnoApellidos"]); postulante.FechaPostulacion = Convert.ToDateTime(filaPostulante["FechaPostulacion"]); postulante.FaseOferta.Valor = Convert.ToString(filaPostulante["FaseOferta"]); postulante.NombreCV = Convert.ToString(filaPostulante["NombreCV"]); postulante.NivelDeMatch = Convert.ToInt32(filaPostulante["NivelDeMatch"]); postulante.CreadoPor = Convert.ToString(filaPostulante["CreadoPor"]); postulante.ModificadoPor = Convert.ToString(filaPostulante["ModificadoPor"]); postulante.FechaCreacion = Convert.ToDateTime(filaPostulante["FechaCreacion"]); postulante.FechaModificacion = Convert.ToDateTime(filaPostulante["FechaModificacion"]); oferta.Postulantes.Add(postulante); } //Fases de la oferta oferta.OfertaFases = Obtener_OfertaFase(idOferta); //Se instancia la lista: oferta.CarrerasDisponibles = new List<ListaValor>(); //Esta lista va al lado izquierdo //Se recorren las carreras. foreach (var carreraUTP in listaCarrerasUTP) { //Si la carreraUTP ya está seleccionada entonces NO se agrega. Si la búsqueda es null => no está, por lo tanto, sí se agrega. if (oferta.CarrerasSeleccionadas.Where(m => m.Estudio == carreraUTP.Valor).FirstOrDefault() == null) { ListaValor carreraDisponible = copiarListaValor(carreraUTP); oferta.CarrerasDisponibles.Add(carreraDisponible); } } return oferta; }
public List<Oferta> MostrarUltimasOfertas(int IdAlumno) { List<Oferta> listaOferta = new List<Oferta>(); DataTable dtResultado = adOferta.MostrarUltimasOfertas(IdAlumno); for (int i = 0; i <= dtResultado.Rows.Count - 1; i++) { Oferta oferta = new Oferta(); oferta.IdOferta = Funciones.ToInt(dtResultado.Rows[i]["IdOferta"]); oferta.Compatible = Funciones.ToDecimal(dtResultado.Rows[i]["Compatible"]); oferta.FechaPublicacion = Funciones.ToDateTime(dtResultado.Rows[i]["FechaPublicacion"]); oferta.NombreComercial = Funciones.ToString(dtResultado.Rows[i]["NombreComercial"]); oferta.CargoOfrecido = Funciones.ToString(dtResultado.Rows[i]["CargoOfrecido"]); oferta.IdEmpresa = Funciones.ToInt(dtResultado.Rows[i]["IdEmpresa"]); oferta.LogoEmpresa = Funciones.ToBytes(dtResultado.Rows[i]["LogoEmpresa"]); oferta.ArchivoMimeType = Funciones.ToString(dtResultado.Rows[i]["ArchivoMimeType"]); listaOferta.Add(oferta); } return listaOferta; }
public List<Oferta> BuscarSimilaresOfertasAlumno(int IdOferta) { List<Oferta> listaOferta = new List<Oferta>(); DataTable dtResultado = adOferta.BuscarSimilaresOfertasAlumno(IdOferta); for (int i = 0; i <= dtResultado.Rows.Count - 1; i++) { Oferta oferta = new Oferta(); oferta.IdOferta = Funciones.ToInt(dtResultado.Rows[i]["IdOferta"]); oferta.FechaPublicacion = Funciones.ToDateTime(dtResultado.Rows[i]["FechaPublicacion"]); oferta.CargoOfrecido = Funciones.ToString(dtResultado.Rows[i]["CargoOfrecido"]); oferta.IdEmpresa = Funciones.ToInt(dtResultado.Rows[i]["IdEmpresa"]); oferta.LogoEmpresa = Funciones.ToBytes(dtResultado.Rows[i]["LogoEmpresa"]); oferta.ArchivoMimeType = Funciones.ToString(dtResultado.Rows[i]["ArchivoMimeType"]); listaOferta.Add(oferta); } return listaOferta; }
public ActionResult NuevaOferta() { #region Validación 11FEB: Si existen ofertas en estado OFERCV mostrar un mensaje de alerta para que cierre las ofertas. List<VistaEmpresaOferta> lista = obtenerOfertasEnEstadoOFERCV(); //Si se encuentran filas => se obienen los cargos y se llena una variable temporal. if (lista.Count() > 0) { StringBuilder msjAlUsuario = new StringBuilder(); msjAlUsuario.Append("Antes de continuar debe cerrar las siguientes ofertas: "); msjAlUsuario.Append(Environment.NewLine); foreach (var ofertaEncontrada in lista) { msjAlUsuario.Append(ofertaEncontrada.CargoOfrecido); msjAlUsuario.Append(Environment.NewLine); } msjAlUsuario.Append("Para cerrar sus ofertas debe ingresar a la Oferta en la sección Administración de Oferta y Cerrar la Oferta. "); msjAlUsuario.Append("Debe repetir este proceso para cada oferta."); //En el vista Publicacion.html se lee este TempData y se muestra el mensaje al usuario. TempData["msjOfertasEnOFERCV"] = msjAlUsuario.ToString(); //Se redirecciona a la lista de ofertas. return RedirectToAction("Publicacion"); } #endregion #region Funcionalidad 16FEB: Al crear una oferta se crea internamente y se muestra la pantalla de Ofertalaboral.cshtml //Se obtiene el ticket de la sesión. TicketEmpresa ticket = (TicketEmpresa)Session["TicketEmpresa"]; //Se obtiene las locaciones de la empresa y se guarda la primera encontrada: LNEmpresaLocacion empresaLocacion = new LNEmpresaLocacion(); List<VistaEmpresaLocacion> locaciones = empresaLocacion.ObtenerLocacionesPorIdEmpresa(ticket.IdEmpresa); int idEmpresaLocacion = 0; if (locaciones.Count > 0) idEmpresaLocacion = locaciones[0].IdEmpresaLocacion; else { //Si no tiene locaciones entonces no se muestra un error y la oferta no se crea, por regla todas las empresas //tienen al menos 1 locación y no debería entrar. Se coloca la condición por si existe data migrada errónea. StringBuilder msjAlUsuario = new StringBuilder(); msjAlUsuario.Append("La empresa no cuenta con locaciones disponibles, cree una e intente nuevamente."); //En el vista Publicacion.html se lee este TempData y se muestra el mensaje al usuario. TempData["msjOfertasNoLocacion"] = msjAlUsuario.ToString(); //Se redirecciona a la lista de ofertas. return RedirectToAction("Publicacion"); } //Se completa los datos de la oferta borrador y se inserta en la BD. Oferta ofertaBorrador = new Oferta(); ofertaBorrador.IdEmpresa = ticket.IdEmpresa; ofertaBorrador.UsuarioPropietarioEmpresa = ticket.Usuario; //Se guarda el usuario asignado. ofertaBorrador.EstadoOferta = Constantes.OFERTA_ESTADO_BORRADOR; //Estado oferta en borrador ofertaBorrador.CreadoPor = ticket.Usuario; ofertaBorrador.FechaFinRecepcionCV = DateTime.Now; ofertaBorrador.FechaFinProceso = DateTime.Now; ofertaBorrador.IdEmpresaLocacion = idEmpresaLocacion; ofertaBorrador.TipoTrabajoIdListaValor = ""; ofertaBorrador.CargoOfrecido = ""; ofertaBorrador.RecibeCorreosIdListaValor = ""; int idOfertaGenerado = lnOfertaEmpresa.Insertar(ofertaBorrador); if (idOfertaGenerado > 0) { //Se redirecciona a la nueva oferta creada: return RedirectToAction("OfertaLaboral", new { id = Utiles.Helper.Encriptar(idOfertaGenerado.ToString()) }); } #endregion //TicketEmpresa ticket = (TicketEmpresa)Session["TicketEmpresa"]; ////Se envían datos de prueba. //Oferta oferta = new Oferta(); //oferta.IdEmpresa = ticket.IdEmpresa; //oferta.UsuarioPropietarioEmpresa = ""; //oferta.FechaPublicacion = DateTime.Now; //oferta.CreadoPor = ticket.Usuario; //oferta.FechaFinRecepcionCV = DateTime.Now; //Se establece la fecha actual para la nueva oferta. //LNGeneral lnGeneral = new LNGeneral(); //LNEmpresaLocacion lnEmpresaLocacion = new LNEmpresaLocacion (); ////Se completan las listas: //ViewBag.TipoCargoIdListaValor = new SelectList(lnGeneral.ObtenerListaValor(Constantes.IDLISTA_TIPO_CARGO), "IdListaValor", "Valor"); //ViewBag.TipoTrabajoIdListaValor = new SelectList(lnGeneral.ObtenerListaValor(Constantes.IDLISTA_TIPO_TRABAJO), "IdListaValor", "Valor"); //ViewBag.TipoContratoIdListaValor = new SelectList(lnGeneral.ObtenerListaValor(Constantes.IDLISTA_TIPO_CONTRATO), "IdListaValor", "Valor"); //ViewBag.IdEmpresaLocacion = new SelectList(lnEmpresaLocacion.ObtenerLocaciones(ticket.IdEmpresa), "IdEmpresaLocacion", "NombreLocacion"); //ViewBag.RecibeCorreosIdListaValor = new SelectList(lnGeneral.ObtenerListaValor(Constantes.IDLISTA_OFERTA_RECIBECORREOS), "IdListaValor", "Valor"); //ViewBag.FasesOferta = new SelectList(lnGeneral.ObtenerListaValor(Constantes.IDLISTA_FASE_OFERTA), "IdListaValor", "Valor"); //return View(oferta); return RedirectToAction("Publicacion"); }
private Oferta ObtenerOfertasAlumnoPorID(int idOferta, int idAlumno) { Oferta oferta = new Oferta(); DataTable dtResultado = adOferta.ObtenerOfertasAlumnoPorID(idOferta, idAlumno); if (dtResultado.Rows.Count > 0) { oferta.NombreComercial = Funciones.ToString(dtResultado.Rows[0]["NombreComercial"]); oferta.SitioWeb = Funciones.ToString(dtResultado.Rows[0]["SitioWeb"]); oferta.DescripcionEmpresa = Funciones.ToString(dtResultado.Rows[0]["DescripcionEmpresa"]); oferta.DesNumeroEmpleados = Funciones.ToString(dtResultado.Rows[0]["DesNumeroEmpleados"]); oferta.CargoOfrecido = Funciones.ToString(dtResultado.Rows[0]["CargoOfrecido"]); oferta.Funciones = Funciones.ToString(dtResultado.Rows[0]["Funciones"]); oferta.Competencias = Funciones.ToString(dtResultado.Rows[0]["Competencias"]); oferta.FechaPublicacion = Funciones.ToDateTime(dtResultado.Rows[0]["FechaPublicacion"]); oferta.FechaFinRecepcionCV = Funciones.ToDateTime(dtResultado.Rows[0]["FechaFinRecepcionCV"]); oferta.FechaFinProceso = Funciones.ToDateTime(dtResultado.Rows[0]["FechaFinProceso"]); oferta.DesTipoCargo = Funciones.ToString(dtResultado.Rows[0]["DesTipoCargo"]); oferta.DesTipoTrabajo = Funciones.ToString(dtResultado.Rows[0]["DesTipoTrabajo"]); oferta.DesTipoContrato = Funciones.ToString(dtResultado.Rows[0]["DesTipoContrato"]); oferta.DuracionContrato = Funciones.ToInt(dtResultado.Rows[0]["DuracionContrato"] == System.DBNull.Value ? null : dtResultado.Rows[0]["DuracionContrato"]); oferta.Horario = Funciones.ToString(dtResultado.Rows[0]["Horario"]); oferta.RemuneracionOfrecida = Funciones.ToDecimal(dtResultado.Rows[0]["RemuneracionOfrecida"]); oferta.AreaEmpresa = Funciones.ToString(dtResultado.Rows[0]["AreaEmpresa"]); oferta.NumeroVacantes = Funciones.ToInt(dtResultado.Rows[0]["NumeroVacantes"]); oferta.NombreLocacion = Funciones.ToString(dtResultado.Rows[0]["NombreLocacion"]); oferta.IdEmpresa = Funciones.ToInt(dtResultado.Rows[0]["IdEmpresa"]); oferta.IdentificadorTributario = Funciones.ToString(dtResultado.Rows[0]["IdentificadorTributario"]); oferta.Compatible = Funciones.ToDecimal(dtResultado.Rows[0]["Compatible"]); oferta.IdOferta = idOferta; oferta.Postulacion = Funciones.ToInt(dtResultado.Rows[0]["Postulacion"]); oferta.FechaPostulacion = Funciones.ToDateTime(dtResultado.Rows[0]["FechaPostulacion"]); oferta.NombreCV = Funciones.ToString(dtResultado.Rows[0]["NombreCV"]); oferta.IdCV = Funciones.ToInt(dtResultado.Rows[0]["IdCV"]); oferta.IdAlumno = idAlumno; oferta.LogoEmpresa = Funciones.ToBytes(dtResultado.Rows[0]["LogoEmpresa"]); ; oferta.ArchivoMimeType = Funciones.ToString(dtResultado.Rows[0]["ArchivoMimeType"]); ; oferta.AnoCreacion = Funciones.ToInt(dtResultado.Rows[0]["AnoCreacion"]); oferta.DesSectorEmpresarial = Funciones.ToString(dtResultado.Rows[0]["DesSectorEmpresarial"]); oferta.IdOfertaPostulante = Funciones.ToInt(dtResultado.Rows[0]["IdOfertaPostulante"]); oferta.RecibeCorreosIdListaValor = Funciones.ToString(dtResultado.Rows[0]["RecibeCorreos"]); oferta.CorreoElectronicoUsuarioEmpresa = Funciones.ToString(dtResultado.Rows[0]["CorreoElectronicoUsuarioEmpresa"]); oferta.EstadoOferta = Funciones.ToString(dtResultado.Rows[0]["EstadoOferta"]); oferta.ExperienciaGeneral = Funciones.ToInt(dtResultado.Rows[0]["MesesExperienciaTotal"]); oferta.ExperienciaPosicionesSimilares = Funciones.ToInt(dtResultado.Rows[0]["MesesExperienciaTipoTrabajo"]); oferta.CumpleExperienciaGeneral = Funciones.ToBoolean(dtResultado.Rows[0]["CumpleMesesExperienciaTotal"]); oferta.CumpleExperienciaPosicionesSimilares = Funciones.ToBoolean(dtResultado.Rows[0]["CumpleMesesExperienciaTipoTrabajo"]); //06MAR15: Se agregan los campos EstadoCarreaUTP y CicloMinimoUTP oferta.EstadoCarreraUTPDescripcion = Funciones.ToString(dtResultado.Rows[0]["EstadoCarreraUTPDescripcion"]); oferta.CicloMinimoCarreraUTP = Funciones.ToInt(dtResultado.Rows[0]["CicloMinimoCarreraUTP"]); } return oferta; }
public ActionResult NuevaOferta(Oferta oferta) { TicketEmpresa ticket = (TicketEmpresa)Session["TicketEmpresa"]; if (ModelState.IsValid) { oferta.UsuarioPropietarioEmpresa = ticket.Usuario; //Se guarda el usuario asignado. oferta.EstadoOferta = "OFERCO"; //Estado oferta en construcción. //oferta.FechaPublicacion = DateTime.Now; //oferta.FechaFinProceso = DateTime.Now.AddDays(10); //oferta.IdEmpresaLocacion = 1; //TODO: Reemplazar por combo. //oferta.DescripcionOferta = "descripcion de la oferta"; //oferta.TipoTrabajo = "OFTTTC"; //Tipo de trabajo: Tiempo completo. //oferta.TipoContrato = ""; //oferta.TipoCargo = ""; //oferta.Horario = ""; //oferta.AreaEmpresa = ""; oferta.CreadoPor = ticket.Usuario; int idOfertaGenerado = lnOfertaEmpresa.Insertar(oferta); if (idOfertaGenerado > 0) { //1. Se completa el mensaje de éxito. TempData["MsjExitoCrearOferta"] = "La oferta ha sido creada con éxito."; //2. Se redirecciona a la nueva oferta. return RedirectToAction("EditarOferta", new { id = idOfertaGenerado }); } else { //Mostrar un mensaje de error. } return RedirectToAction("Publicacion"); } //Si existe error, se debe cargar nuevamente la información. LNGeneral lnGeneral = new LNGeneral(); LNEmpresaLocacion lnEmpresaLocacion = new LNEmpresaLocacion(); //ViewBag.ListaTipoCargo = lnGeneral.ObtenerListaValor(Constantes.IDLISTA_TIPO_CARGO); //ViewBag.ListaTipoTrabajo = lnGeneral.ObtenerListaValor(Constantes.IDLISTA_TIPO_TRABAJO); //ViewBag.ListaTipoContrato = lnGeneral.ObtenerListaValor(Constantes.IDLISTA_TIPO_CONTRATO); //ViewBag.ListaLocaciones = lnEmpresaLocacion.ObtenerLocaciones(ticket.IdEmpresa); //Se completan las listas: ViewBag.TipoCargoIdListaValor = new SelectList(lnGeneral.ObtenerListaValor(Constantes.IDLISTA_TIPO_CARGO), "IdListaValor", "Valor", oferta.TipoCargoIdListaValor); ViewBag.TipoTrabajoIdListaValor = new SelectList(lnGeneral.ObtenerListaValor(Constantes.IDLISTA_TIPO_TRABAJO), "IdListaValor", "Valor", oferta.TipoTrabajoIdListaValor); ViewBag.TipoContratoIdListaValor = new SelectList(lnGeneral.ObtenerListaValor(Constantes.IDLISTA_TIPO_CONTRATO), "IdListaValor", "Valor", oferta.TipoContratoIdListaValor); ViewBag.IdEmpresaLocacion = new SelectList(lnEmpresaLocacion.ObtenerLocaciones(ticket.IdEmpresa), "IdEmpresaLocacion", "NombreLocacion", oferta.IdEmpresaLocacion); ViewBag.RecibeCorreosIdListaValor = new SelectList(lnGeneral.ObtenerListaValor(Constantes.IDLISTA_OFERTA_RECIBECORREOS), "IdListaValor", "Valor", oferta.RecibeCorreosIdListaValor); ViewBag.FasesOferta = new SelectList(lnGeneral.ObtenerListaValor(Constantes.IDLISTA_FASE_OFERTA), "IdListaValor", "Valor"); return View(oferta); }
public void BuscarCumplimientoOfertasAlumno(ref VistaOfertaAlumno vistaofertaalumno) { DataSet dsResultado = adOferta.BuscarCumplimientoOfertasAlumno(vistaofertaalumno.Oferta.IdAlumno, vistaofertaalumno.Oferta.IdOferta); //Datos generales de la empresa. if (dsResultado.Tables.Count > 0) { List<Oferta> ListaEstudios = new List<Oferta>(); List<Oferta> ListaSectorEmpresarial = new List<Oferta>(); List<Oferta> ListaInformacionAdicional = new List<Oferta>(); if (dsResultado.Tables[0].Rows.Count > 0) { foreach (DataRow row in dsResultado.Tables[0].Rows) { Oferta of = new Oferta(); of.Requisito = Funciones.ToString(row["Caracteristica"]); of.Cumplimiento = Funciones.ToInt(row["Estado"]); of.Tipo = Funciones.ToInt(row["Tipo2"]); of.Line = Funciones.ToInt(row["Line"]); ListaEstudios.Add(of); } vistaofertaalumno.ListadoEstudios = ListaEstudios; } if (dsResultado.Tables[1].Rows.Count > 0) { foreach (DataRow row in dsResultado.Tables[1].Rows) { Oferta of = new Oferta(); of.Requisito = Funciones.ToString(row["Caracteristica"]); of.Cumplimiento = Funciones.ToInt(row["Estado"]); of.Tipo = Funciones.ToInt(row["Tipo2"]); of.Line = Funciones.ToInt(row["Line"]); ListaSectorEmpresarial.Add(of); } vistaofertaalumno.ListadoSectorEmpresarial = ListaSectorEmpresarial; } if (dsResultado.Tables[2].Rows.Count > 0) { foreach (DataRow row in dsResultado.Tables[2].Rows) { Oferta of = new Oferta(); of.Requisito = Funciones.ToString(row["Caracteristica"]); of.Cumplimiento = Funciones.ToInt(row["Estado"]); of.Tipo = Funciones.ToInt(row["Tipo2"]); of.Line = Funciones.ToInt(row["Line"]); ListaInformacionAdicional.Add(of); } vistaofertaalumno.ListadoInformacionAdicional = ListaInformacionAdicional; } } }
public void UTP_ActualizaSeguimientoOferta(Oferta oferta) { adUtp.UTP_ActualizaSeguimientoOferta(oferta); }
public ActionResult _VerDetalleOfertaEditar(Oferta oferta) { lnUtp.UTP_ActualizaSeguimientoOferta(oferta); Oferta ofertaActualizada = lnoferta.ObtenerSeguimientoPorId(oferta.IdOferta); LNGeneral lnGeneral = new LNGeneral(); //Se cargan los datos para la clasificación. ViewBag.Calificacion = new SelectList(lnGeneral.ObtenerListaValor(Constantes.IDLISTA_OFERTA_CALIFICACION_ENCUESTA), "IdListaValor", "Valor", oferta.Calificacion); ViewBag.TipoTrabajoUTP = new SelectList(lnGeneral.ObtenerListaValor(Constantes.IDLISTA_TIPO_TRABAJO_UTP), "IdListaValor", "Valor", oferta.TipoTrabajoUTP); TicketUTP ticketUtp = (TicketUTP)Session["TicketUtp"]; ViewBag.Rol = ticketUtp.Rol; return PartialView("_VerDetalleOferta", ofertaActualizada); }
public ActionResult VistaOfertaAnuncio(Oferta oferta) { return PartialView("_VistaOfertaAnuncio", oferta); }
public Mensaje() { Oferta = new Oferta(); Evento = new Evento(); IdOfertaMensaje = 0; }
public ActionResult VistaOfertaMensajes(Oferta oferta) { Ticket ticket = (Ticket)Session["Ticket"]; LNMensaje lnMensaje = new LNMensaje(); //Se envía 0 para que obtener los mensajes de todas las ofertas. List<Mensaje> mensajes = lnMensaje.ObtenerPorIdEmpresaIdOferta(ticket.IdEmpresa, oferta.IdOferta); return PartialView("_VistaOfertaMensajes", mensajes); }
public int Insertar(Oferta oferta, List<OfertaFase> listaOfertaFase) { int idOfertaGenerado = 0; try { using (SqlConnection conexion = new SqlConnection(cadenaConexion)) { SqlCommand cmd = new SqlCommand(); cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "Oferta_Insertar"; //Parámetros: cmd.Parameters.Add(new SqlParameter("@IdEmpresa", oferta.IdEmpresa)); // cmd.Parameters.Add(new SqlParameter("@Funciones", oferta.Funciones)); // cmd.Parameters.Add(new SqlParameter("@Competencias", oferta.Competencias)); // cmd.Parameters.Add(new SqlParameter("@UsuarioPropietarioEmpresa", oferta.UsuarioPropietarioEmpresa)); // cmd.Parameters.Add(new SqlParameter("@EstadoOferta", oferta.EstadoOferta)); // cmd.Parameters.Add(new SqlParameter("@FechaFinRecepcionCV", oferta.FechaFinRecepcionCV)); // cmd.Parameters.Add(new SqlParameter("@FechaFinProceso", oferta.FechaFinProceso)); // cmd.Parameters.Add(new SqlParameter("@IdEmpresaLocacion", oferta.IdEmpresaLocacion)); // cmd.Parameters.Add(new SqlParameter("@TipoTrabajo", oferta.TipoTrabajoIdListaValor)); // cmd.Parameters.Add(new SqlParameter("@TipoContrato", oferta.TipoContratoIdListaValor)); // cmd.Parameters.Add(new SqlParameter("@DuracionContrato", oferta.DuracionContrato)); cmd.Parameters.Add(new SqlParameter("@TipoCargo", oferta.TipoCargoIdListaValor)); // cmd.Parameters.Add(new SqlParameter("@CargoOfrecido", oferta.CargoOfrecido)); cmd.Parameters.Add(new SqlParameter("@RemuneracionOfrecida", oferta.RemuneracionOfrecida)); cmd.Parameters.Add(new SqlParameter("@Horario", oferta.Horario)); cmd.Parameters.Add(new SqlParameter("@AreaEmpresa", oferta.AreaEmpresa)); cmd.Parameters.Add(new SqlParameter("@NumeroVacantes", (oferta.NumeroVacantes == null ? (object)DBNull.Value : oferta.NumeroVacantes ))); cmd.Parameters.Add(new SqlParameter("@RequiereExperienciaLaboral", oferta.RequiereExperienciaLaboral)); cmd.Parameters.Add(new SqlParameter("@RecibeCorreos", oferta.RecibeCorreosIdListaValor)); cmd.Parameters.Add(new SqlParameter("@CreadoPor", oferta.CreadoPor)); cmd.Connection = conexion; conexion.Open(); object resultado = cmd.ExecuteScalar(); if (resultado != null) { idOfertaGenerado = Convert.ToInt32(resultado); //Se insertan las fases de la oferta. foreach (var item in listaOfertaFase) { cmd = new SqlCommand(); cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "OfertaFase_Insertar"; cmd.Parameters.Add(new SqlParameter("@IdOferta", idOfertaGenerado)); cmd.Parameters.Add(new SqlParameter("@IdListaValor", item.IdListaValor)); cmd.Parameters.Add(new SqlParameter("@Incluir", item.Incluir)); cmd.Parameters.Add(new SqlParameter("@CreadoPor", item.CreadoPor)); cmd.Connection = conexion; cmd.ExecuteNonQuery(); } } conexion.Close(); } } catch (Exception ex) { throw ex; } return idOfertaGenerado; }