public static CompletarCartaOfertaViewModel ConvertToCompletarCartaOfertaViewModel(this Candidatura candidatura) { if (candidatura.CartaOfertas != null && candidatura.CartaOfertas.Count > 0) { var completarCartaOfertaViewModel = new CompletarCartaOfertaViewModel() { EntregaCartaOfertaViewModel = candidatura.ConvertToEntregaCartaOfertaViewModel(), CompletarCartaOferta = new CompletarCartaOferta() { SuperaCartaOferta = candidatura.CartaOfertas.ElementAt(0).Acepta == null ? (int)TipoDecisionEnum.SIN_DECISION_CARTAOFERTA : candidatura.CartaOfertas.ElementAt(0).Acepta.Value ? (int)TipoDecisionEnum.ACEPTA_CARTA_OFERTA : (int)TipoDecisionEnum.NO_ACEPTA_CARTA_OFERTA, MotivoRechazoId = candidatura.CartaOfertas.ElementAt(0).MotivoRechazoId, MotivoRechazoNombre = candidatura.CartaOfertas.ElementAt(0).MotivoRechazo?.Nombre, NecesidadId = candidatura.CartaOfertas.ElementAt(0).NecesidadId, FechaIncorporacion = candidatura.CartaOfertas.ElementAt(0).FechaIncorporacion, AsignadaCorrectamente = (candidatura.CartaOfertas.ElementAt(0).Necesidad != null) ? candidatura.CartaOfertas.ElementAt(0).Necesidad.AsignadaCorrectamente : true, NecesidadNombre = candidatura.CartaOfertas.ElementAt(0).Necesidad?.Nombre } }; if (candidatura.CartaOfertas.ElementAt(0).Necesidad != null) { completarCartaOfertaViewModel.CompletarCartaOferta.NecesidadNombre = candidatura.CartaOfertas.ElementAt(0).Necesidad.Nombre; completarCartaOfertaViewModel.CompletarCartaOferta.AsignadaCorrectamente = candidatura.CartaOfertas.ElementAt(0).Necesidad.AsignadaCorrectamente; } return(completarCartaOfertaViewModel); } var completarCartaOferta = new CompletarCartaOfertaViewModel(); completarCartaOferta.CompletarCartaOferta = new CompletarCartaOferta(); completarCartaOferta.EntregaCartaOfertaViewModel = new EntregaCartaOfertaViewModel(); completarCartaOferta.EntregaCartaOfertaViewModel.AgendarCartaOfertaViewModel = new AgendarCartaOfertaViewModel(); completarCartaOferta.EntregaCartaOfertaViewModel.AgendarCartaOfertaViewModel.AgendarCartaOferta = new AgendarCartaOferta(); completarCartaOferta.EntregaCartaOfertaViewModel.EntregaCartaOferta = new EntregaCartaOferta(); return(completarCartaOferta); }
public static void UpdateCartaOferta(this CartaOferta cartaOferta, CompletarCartaOfertaViewModel completarCartaOfertaViewModel, int?cartaOfertaId, Necesidad necesidadOriginal, Necesidad necesidadNueva) { if (cartaOfertaId != null) { cartaOferta.CartaOfertaId = (int)cartaOfertaId; cartaOferta.ModifiedBy = ModifiableEntityHelper.GetCurrentUser(); cartaOferta.Modified = ModifiableEntityHelper.GetCurrentDate(); } else { cartaOferta.CreatedBy = ModifiableEntityHelper.GetCurrentUser(); cartaOferta.Created = ModifiableEntityHelper.GetCurrentDate(); } if (completarCartaOfertaViewModel.CompletarCartaOferta.SuperaCartaOferta == (int)TipoDecisionEnum.SIN_DECISION_CARTAOFERTA) { cartaOferta.Acepta = null; } else { cartaOferta.Acepta = completarCartaOfertaViewModel.CompletarCartaOferta.SuperaCartaOferta == (int)TipoDecisionEnum.ACEPTA_CARTA_OFERTA; } cartaOferta.FechaIncorporacion = completarCartaOfertaViewModel.CompletarCartaOferta.FechaIncorporacion; cartaOferta.MotivoRechazoId = completarCartaOfertaViewModel.CompletarCartaOferta.MotivoRechazoId; cartaOferta.NecesidadId = completarCartaOfertaViewModel.CompletarCartaOferta.NecesidadId; if ((necesidadOriginal != null) && (necesidadOriginal.NecesidadId != completarCartaOfertaViewModel.CompletarCartaOferta.NecesidadId)) { necesidadOriginal.EstadoNecesidadId = (int)EstadoNecesidadEnum.Abierta; } if (necesidadNueva != null) { necesidadNueva.EstadoNecesidadId = (int)EstadoNecesidadEnum.Cerrada; } cartaOferta.Observaciones = completarCartaOfertaViewModel.EntregaCartaOfertaViewModel.EntregaCartaOferta.ObservacionesCartaOferta; cartaOferta.FechaCartaOferta = Convert.ToDateTime(completarCartaOfertaViewModel.EntregaCartaOfertaViewModel.AgendarCartaOfertaViewModel.AgendarCartaOferta.FechaAgendarCarta); }
public static void UpdateCandidaturaCartaOferta(this CartaOferta cartaOferta, CompletarCartaOfertaViewModel cartaOfertaViewModel) { cartaOferta.ModifiedBy = ModifiableEntityHelper.GetCurrentUser(); cartaOferta.Modified = ModifiableEntityHelper.GetCurrentDate(); //de EntregaCartaOfertaViewModel.AgendarCartaOfertaViewModel.AgendarCartaOferta if (cartaOfertaViewModel.EntregaCartaOfertaViewModel.AgendarCartaOfertaViewModel.AgendarCartaOferta.EntrevistadorId > 0) { cartaOferta.EntrevistadorId = (int)cartaOfertaViewModel.EntregaCartaOfertaViewModel.AgendarCartaOfertaViewModel.AgendarCartaOferta.EntrevistadorId; } //de EntregaCartaOfertaViewModel.AgendarCartaOfertaViewModel.AgendarCartaOferta cartaOferta.FechaCartaOferta = (DateTime)cartaOfertaViewModel.EntregaCartaOfertaViewModel.AgendarCartaOfertaViewModel.AgendarCartaOferta.FechaAgendarCarta; cartaOferta.OficinaId = cartaOfertaViewModel.EntregaCartaOfertaViewModel.AgendarCartaOfertaViewModel.AgendarCartaOferta.OficinaId; //de EntregaCartaOfertaViewModel.EntregaCartaOferta if (cartaOfertaViewModel.EntregaCartaOfertaViewModel.EntregaCartaOferta != null) { cartaOferta.Observaciones = cartaOfertaViewModel.EntregaCartaOfertaViewModel.EntregaCartaOferta.ObservacionesCartaOferta; cartaOferta.Candidatura.SalarioActual = cartaOfertaViewModel.EntregaCartaOfertaViewModel.EntregaCartaOferta.SalarioActual; cartaOferta.Candidatura.SalarioDeseado = cartaOfertaViewModel.EntregaCartaOfertaViewModel.EntregaCartaOferta.SalarioDeseado; cartaOferta.Candidatura.SalarioPropuesto = cartaOfertaViewModel.EntregaCartaOfertaViewModel.EntregaCartaOferta.SalarioPropuesto; } //de cartaOfertaViewModel.CompletarCartaOferta if (cartaOfertaViewModel.CompletarCartaOferta != null) { cartaOferta.FechaIncorporacion = (cartaOfertaViewModel.CompletarCartaOferta.FechaIncorporacion != null) ? cartaOfertaViewModel.CompletarCartaOferta.FechaIncorporacion : cartaOferta.FechaIncorporacion; cartaOferta.MotivoRechazoId = (cartaOfertaViewModel.CompletarCartaOferta.MotivoRechazoId != null) ? cartaOfertaViewModel.CompletarCartaOferta.MotivoRechazoId : cartaOferta.MotivoRechazoId; cartaOferta.NecesidadId = (cartaOfertaViewModel.CompletarCartaOferta.NecesidadId != null) ? cartaOfertaViewModel.CompletarCartaOferta.NecesidadId : cartaOferta.NecesidadId; } }