public async System.Threading.Tasks.Task <ActionResult> Postularse(int id) { Propuesta propuesta = await db.Propuestas.FindAsync(id); Usuario usuario = ObtenerUsuarioActual(User); if (usuario.Id != propuesta.Creador.Id) { if (usuario.Rol != propuesta.Creador.Rol) { if (propuesta.Activa == true) { Postulacion postulacion = new Postulacion(); postulacion.Propuesta = propuesta; postulacion.PropuestaId = propuesta.Id; postulacion.Usuario = usuario; postulacion.UsuarioId = usuario.Id; propuesta.Postulaciones.Add(postulacion); usuario.Postulaciones.Add(postulacion); db.Entry(propuesta).State = EntityState.Modified; db.SaveChanges(); } } } int idaux = propuesta.Id; return(RedirectToAction("Details", new { Id = idaux })); }
public void dada_una_postulacion_con_mas_de_una_etapa_deberia_devolverme_la_etapa_en_una_fecha_dada() { var una_postulacion = new Postulacion(); var etapas = new List <EtapaPostulacion>(); var fecha_etapa1 = DateTime.Now.AddMonths(-9); var fecha_etapa2 = DateTime.Now.AddMonths(-6); var fecha_etapa3 = DateTime.Now.AddMonths(-3); etapas.Add(new EtapaPostulacion() { Fecha = fecha_etapa1, Etapa = new EtapaConcurso(1, "Etapa 1"), IdUsuario = 1 }); etapas.Add(new EtapaPostulacion() { Fecha = fecha_etapa2, Etapa = new EtapaConcurso(2, "Etapa 2"), IdUsuario = 2 }); etapas.Add(new EtapaPostulacion() { Fecha = fecha_etapa3, Etapa = new EtapaConcurso(3, "Etapa 3"), IdUsuario = 3 }); una_postulacion.Etapas = etapas; Assert.IsTrue(una_postulacion.Etapas.Count.Equals(3)); Assert.IsTrue(una_postulacion.EtapaEn(DateTime.Now.AddMonths(-4)).Etapa.Descripcion.Equals("Etapa 2")); }
public void Setup() { conexion = TestObjects.ConexionMockeada(); perfil = TestObjects.UnPerfil(); cv = TestObjects.UnCV(); creador = new CreadorDePantallas(); un_item_estudio = TestObjects.UnEstudioUniversitario(); un_item_experiencia_publica = TestObjects.UnaExpPublica(); postulacion = TestObjects.UnaPostulacion(); listaDocRecibida = new List <DocumentacionRecibida>(); }
public static void Update(Postulacion p) { if (p == null) { throw new Exception("Error al cargar el partido"); } else { PersistenciaPostulacion.Update(p); } }
public static void Add(Postulacion p, int postulanteId) { if (p == null) { throw new Exception("Error al cargar el parido"); } else { PersistenciaPostulacion.Add(p, postulanteId); } }
private void VerDatosPostulacion(int IdPostulacion) { Postulacion P = LogicaPostulacion.FindbyId(IdPostulacion); if (P != null) { HdnIdPostulacion.Value = P.PostulacionId.ToString(); LblNombre.Text = P.Jugador.NombreCompleto(); LblFecha.Text = P.Fecha.ToString().Split(':')[0] + ":" + P.Fecha.ToString().Split(':')[1]; LblComentario.Text = P.Comentario; } }
public void deberia_generar_un_anexo_para_los_inscriptos() { //List<EtapaConcurso> etapas = new List<EtapaConcurso> { ConstantesConcursar.EtapaPreinscripcionDocumental }; EtapaConcurso una_etapa = ConstantesConcursar.EtapaPreinscripcionDocumental; Postulacion una_postulacion = TestObjects.UnaPostulacion(); List <Postulacion> resultado = new List <Postulacion>(); Dictionary <string, object> parametros = new Dictionary <string, object>(); AnexosDeEtapas anexo = RepoPostular().GenerarAnexosPara(una_etapa.Id, una_postulacion, TestObjects.UsuarioMesaEntrada()); //FC TERMINAR LOS ANEXOS!!!!! EL GET DESDE EL REPO y EL GUARDAR Assert.AreEqual(1, RepoPostular().GetAnexoById(1).Id); }
protected void RegistrarPostulacion_Click(object sender, EventArgs e) { if (DDLHoras.SelectedValue != null) { int postulanteId = ((Jugador)Session["Logueado"]).JugadorId; Postulacion P = new Postulacion { Comentario = TxtComentario.Text, Fecha = DateTime.Parse(TxtFecha.Text + " " + DDLHoras.SelectedValue), Lugar = TxtLugar.Text, Confirmada = false }; LogicaPostulacion.Add(P, postulanteId); } }
public static void Update(Postulacion p) { try { using (DesafioContext db = new DesafioContext()) { db.Entry(p).State = EntityState.Modified; db.SaveChanges(); } } catch (Exception ex) { throw new Exception("Error al Actualizar - Verifique los Datos" + ex.Message); } }
public async Task <bool> Postularse(Postulacion postulacion) { string url = "http://wappo.apphb.com/api/PostulacionApi/Postularse"; using (var httpClient = new HttpClient()) { var content = new StringContent(JsonConvert.SerializeObject(postulacion), UnicodeEncoding.UTF8, "application/json"); var response = await httpClient.PostAsync(url, content); if (response.StatusCode == System.Net.HttpStatusCode.OK) { return(true); } return(false); } }
public static bool Crear(Postulacion postulacion) { using (TeloBuscoEntities db = new TeloBuscoEntities()) { try { int idTipoActividad = TiposActividadesServicio.obtenerIdPorDescripcion("Postulación"); int idEstadoPostulacion = EstadosServicio.obtenerIdEstadoPostulacionPorDescripcion("Postulado"); Postulaciones postulacionAlmacenar = new Postulaciones { IdTipoActividad = idTipoActividad, IdPedido = postulacion.IdPedido, IdUsuarioPostulado = postulacion.IdUsuarioPostulado, IdEstadoPostulacion = idEstadoPostulacion, TiempoEstimado = postulacion.TiempoEstimado, Precio = postulacion.Precio }; db.Postulaciones.Add(postulacionAlmacenar); db.SaveChanges(); // Crear notificacion int idEstadoPostulacionNotificacion = EstadosServicio.obtenerIdEstadoPostulacionPorDescripcion("No vista"); string idUsuarioReceptor = PedidosServicio.ObtenerIdDueñoPedido(postulacion.IdPedido); string nombrePostulado = AspNetUsersServicio.ObtenerNombrePorId(postulacion.IdUsuarioPostulado); nombrePostulado = nombrePostulado != null ? nombrePostulado : ""; Notificaciones notificacion = new Notificaciones() { IdTipoActividad = idTipoActividad, IdEstadoNotificacion = idEstadoPostulacionNotificacion, Descripcion = "Nueva postulación a su pedido: " + nombrePostulado, IdUsuarioReceptor = idUsuarioReceptor, IdActividad = postulacionAlmacenar.IdPostulacion }; db.Notificaciones.Add(notificacion); db.SaveChanges(); return(true); } catch (Exception ex) { return(false); } } }
public IHttpActionResult postular(Postulacion pos) { using (var dbContextTransaction = _db.Database.BeginTransaction()) { try { _db.Postulaciones.Add(pos); _db.SaveChanges(); dbContextTransaction.Commit(); } catch (Exception) { dbContextTransaction.Rollback(); } } return(Ok(pos)); }
public void dada_una_postulacion_en_la_primer_etapa_deberia_devolverme_el_usuario_y_la_fecha_de_la_etapa() { var una_postulacion = new Postulacion(); var etapas = new List <EtapaPostulacion>(); var fecha_etapa = DateTime.Now.AddMonths(-3); etapas.Add(new EtapaPostulacion() { Fecha = fecha_etapa, Etapa = new EtapaConcurso(1, "Etapa 1"), IdUsuario = 1 }); una_postulacion.Etapas = etapas; Assert.IsTrue(una_postulacion.Etapas.Count.Equals(1)); Assert.IsNotNull(una_postulacion.Etapas.First().Fecha); Assert.IsNotNull(una_postulacion.Etapas.First().IdUsuario); }
public static void ConfirmarPostulacionEnPartido(int jugadorId, int postulacionId, string comentarioNuevo) { using (DesafioContext db = new DesafioContext()) { Jugador jugador = db.Jugadores.FirstOrDefault(x => x.JugadorId == jugadorId); Postulacion postulacion = db.Postulaciones.FirstOrDefault(x => x.PostulacionId == postulacionId); Partido P = new Partido { JugadorDesafiante = postulacion.Jugador, JugadorDesafiado = jugador, Fecha = postulacion.Fecha, Lugar = postulacion.Lugar, Comentario = postulacion.Comentario + ". " + comentarioNuevo }; postulacion.Confirmada = true; db.Partidos.Add(P); db.SaveChanges(); } }
public async System.Threading.Tasks.Task <ActionResult> AceptarPostulacion(int id) { Postulacion postulacion = await db.Postulaciones.FindAsync(id); Usuario usuario = ObtenerUsuarioActual(User); if (postulacion != null && usuario.Id == postulacion.Propuesta.Creador.Id) { postulacion.Propuesta.UsuarioGanador = postulacion.Usuario; postulacion.Propuesta.UsuarioGanadorId = postulacion.Usuario.Id; postulacion.Propuesta.Activa = false; db.Entry(postulacion).State = EntityState.Modified; await db.SaveChangesAsync(); } //ir al dashboard return(RedirectToRoute("/Dashboard")); }
public static void Delete(int id) { try { using (DesafioContext db = new DesafioContext()) { Postulacion postulacion = db.Postulaciones.FirstOrDefault(x => x.PostulacionId == id); if (postulacion != null) { db.Postulaciones.Remove(postulacion); db.SaveChanges(); } } } catch (Exception ex) { throw new Exception("Error al Eliminar - Verifique los datos" + ex.Message); } }
private async void Button_OnClicked(object sender, EventArgs e) { int tiempo = Convert.ToInt32(tiempoText.Text); decimal precio = Convert.ToDecimal(precioText.Text); string email = postulacionViewModel.EmailUsuario; int idPedido = postulacionViewModel.IdPedido; if (precio >= _precioMinimo && precio <= _precioMaximo) { string JWT = App.JWT; JWT = JWT.Trim('\\', '"'); Postulacion postulacion = new Postulacion() { EmailUsuario = email, JWT = JWT, IdPedido = idPedido, Tiempo = tiempo, Precio = precio }; bool postulacionCorrecta = await _postulacionService.Postularse(postulacion); if (postulacionCorrecta) { await Navigation.PushAsync(new Views.PostulacionCorrectaPage()); //await DisplayAlert("Postulación", "¡Postulación correcta!", "Aceptar"); } else { await Navigation.PushAsync(new Views.PostulacionIncorrectaPage()); //await DisplayAlert("Postulación", "Postulación incorrecta", "Aceptar"); } //await Navigation.PushAsync(new Views.MainPage()); //Aparece doble la parte superior } else { await DisplayAlert("Precio", "El precio no se encuentra dentro del rango válido.", "Aceptar"); } }
public static void Add(Postulacion p, int postulanteId) { // en pagina de postulaciones ver Postulacion con boton de "Coordinar con el rival" // en el chat, que haya un boton para cofirmar partido(postulante) // mensaje al chat "el partido ya no esta disponible" try { using (DesafioContext db = new DesafioContext()) { Jugador postulante = db.Jugadores.FirstOrDefault(x => x.JugadorId == postulanteId); p.Jugador = postulante; db.Postulaciones.Add(p); db.SaveChanges(); } } catch (Exception ex) { throw new Exception("Error al Eliminar -" + ex.Message); } }
public void SetPostulacion([FromBody] Postulacion postulacion) { DateTime myDateTime = DateTime.Now; string sqlFormattedDate = myDateTime.ToString("yyyy-MM-dd HH:mm:ss.fff"); string connectionstring = _configuration.GetConnectionString("DefaultConnectionString"); SqlConnection connection = new SqlConnection(connectionstring); connection.Open(); SqlCommand com = new SqlCommand("insert into postulaciones (alumno, propuesta, perfil, alta) " + "values (@alumno, @propuesta, (select id from perfil where alumno = @alumno), @alta)", connection); com.Parameters.AddWithValue("@alumno", postulacion.AlumnoId); com.Parameters.AddWithValue("@propuesta", postulacion.PropuestaId); com.Parameters.AddWithValue("@alta", sqlFormattedDate); com.ExecuteReader(); CrearEtapaSeleccionAlumno(postulacion.AlumnoId, postulacion.PropuestaId, postulacion.EmpresaId); connection.Close(); }
public ActionResult Postularse(PostulacionesViewModel postulacion) { try { if (ModelState.IsValid) { bool precioValido = Servicios.AccesoDatos.PedidosServicio.ValidarPrecio(postulacion.precioMinimo, postulacion.Precio, postulacion.precioMaximo); if (precioValido) { var userName = User.Identity.Name; var IdUsuarioPostulado = Servicios.AspNetUsersServicio.obtenerIdUsuarioPorUserName(userName); bool?Postulado = Servicios.AccesoDatos.PostulacionesServicio.Postulado(postulacion.IdPedido, IdUsuarioPostulado); if (Postulado == false) { var idDueñoPedido = Servicios.AccesoDatos.PedidosServicio.ObtenerPedidoPorId(postulacion.IdPedido).idCliente; if (IdUsuarioPostulado != idDueñoPedido) { Postulacion postulacionAlmacenar = new Postulacion() { IdPedido = postulacion.IdPedido, IdUsuarioPostulado = IdUsuarioPostulado, TiempoEstimado = postulacion.TiempoEstimado, Precio = postulacion.Precio }; if (Servicios.AccesoDatos.PostulacionesServicio.Crear(postulacionAlmacenar)) { TempData["Message"] = "La postulación fue exitosa."; } else { TempData["Message"] = "No ha sido posible efectuar la postulación. Vuelva a intentar más tarde."; } } else { TempData["Message"] = "El cliente y el delivery no pueden ser la misma persona"; } } else if (Postulado == true) { TempData["Message"] = "Ya se encuentra postulado. No es posible postularse más de una vez al mismo pedido."; } else { TempData["Message"] = "No ha sido posible efectuar la postulación. Vuelva a intentar más tarde."; } return(RedirectToAction("Pedidos")); //Redireccionar a vista de pedidos cercanos } else { ModelState.AddModelError("Precio", "El precio ingresado no se encuentra en el rango aceptado."); } } var pedido = Servicios.AccesoDatos.PedidosServicio.ObtenerPedidoPorId(postulacion.IdPedido); if (pedido != null) { postulacion.pedidoDetalles = Servicios.AccesoDatos.PedidosServicio.ConvertirPedidoAPedidoMapa(pedido); } return(View(postulacion)); } catch { var pedido = Servicios.AccesoDatos.PedidosServicio.ObtenerPedidoPorId(postulacion.IdPedido); if (pedido != null) { postulacion.pedidoDetalles = Servicios.AccesoDatos.PedidosServicio.ConvertirPedidoAPedidoMapa(pedido); } return(View(postulacion)); } }