public SaveNecesidadResponse SaveNecesidad(CreateEditNecesidadViewModel necesidadViewModel) { var response = new SaveNecesidadResponse() { IsValid = true, NecesidadId = new Random().Next(0, 1000) }; return(response); }
public void UpdateNecesidad() { using (var tx = new TransactionManager()) { var modifiableEntityViewModel = new ModifiableEntityViewModel() { CreatedBy = USER_ID, Created = CREATED_DATE, ModifiedBy = USER_ID, Modified = MODIFIED_DATE }; var viewModel = new CreateEditNecesidadViewModel() { NecesidadId = NECESIDAD_ID, Nombre = NOMBRE_NECESIDAD, OficinaId = OFICINA_ID, CentroId = CENTRO_ID, SectorId = SECTOR_ID, ClienteId = CLIENTE_ID, ProyectoId = PROYECTO_ID, TipoServicioId = TIPO_SERVICIO_ID, TipoPerfilId = TIPO_PERFIL_ID, TipoTecnologiaId = TIPO_TECNOLOGIA_ID, TipoContratacionId = TIPO_CONTRATACION_ID, TipoPrevisionId = TIPO_PREVISION_ID, MesesAsignacionId = MESES_ASIGNACION_ID, DetalleTecnologia = DETALLE_TECNOLOGIA, DisponibilidadViajes = true, DisponibilidadReubicacion = false, FechaSolicitud = FECHA_SOLICITUD, FechaCompromiso = FECHA_COMPROMISO, FechaCierre = FECHA_CIERRE, EstadoNecesidadId = ESTADO_NECESIDAD_ID_NEW, }; var response = _necesidadService.SaveNecesidad(viewModel); Assert.IsTrue(response.IsValid); Assert.Equals(response.NecesidadId, NECESIDAD_ID); } }
public static void UpdateNecesidad(this Necesidad necesidad, CreateEditNecesidadViewModel createEditNecesidadViewModel, Proyecto proyecto) { if (createEditNecesidadViewModel.NecesidadId != null) { necesidad.NecesidadId = (int)createEditNecesidadViewModel.NecesidadId; necesidad.ModifiedBy = ModifiableEntityHelper.GetCurrentUser(); necesidad.Modified = ModifiableEntityHelper.GetCurrentDate(); } else { necesidad.CreatedBy = ModifiableEntityHelper.GetCurrentUser(); necesidad.Created = ModifiableEntityHelper.GetCurrentDate(); } necesidad.Nombre = createEditNecesidadViewModel.Nombre; necesidad.OficinaId = createEditNecesidadViewModel.OficinaId; necesidad.CentroId = createEditNecesidadViewModel.CentroId; necesidad.SectorId = createEditNecesidadViewModel.SectorId; necesidad.ProyectoId = createEditNecesidadViewModel.ProyectoId; necesidad.TipoServicioId = createEditNecesidadViewModel.TipoServicioId; necesidad.TipoPerfilId = createEditNecesidadViewModel.TipoPerfilId; necesidad.TipoTecnologiaId = createEditNecesidadViewModel.TipoTecnologiaId; necesidad.TipoContratacionId = createEditNecesidadViewModel.TipoContratacionId; necesidad.DisponibilidadViaje = createEditNecesidadViewModel.DisponibilidadViajes; necesidad.CambioResidencia = createEditNecesidadViewModel.DisponibilidadReubicacion; necesidad.NecesidadIdioma = createEditNecesidadViewModel.NecesidadIdioma; necesidad.TipoPrevisionId = createEditNecesidadViewModel.TipoPrevisionId; necesidad.MesesAsignacionId = createEditNecesidadViewModel.MesesAsignacionId; necesidad.Observaciones = createEditNecesidadViewModel.DetalleTecnologia ?? necesidad.Observaciones; necesidad.EstadoNecesidadId = createEditNecesidadViewModel.EstadoNecesidadId; necesidad.FechaSolicitud = (DateTime)createEditNecesidadViewModel.FechaSolicitud; necesidad.FechaCompromiso = createEditNecesidadViewModel.FechaCompromiso; necesidad.FechaCierre = createEditNecesidadViewModel.FechaCierre; necesidad.IsActivo = true; necesidad.ReferenciaExterna = createEditNecesidadViewModel.ReferenciaExterna; necesidad.AsignadaCorrectamente = createEditNecesidadViewModel.AsignadaCorrectamente; necesidad.EstadoNecesidadId = createEditNecesidadViewModel.EstadoNecesidadId; if ((createEditNecesidadViewModel.EstadoNecesidadId == (int)EstadoNecesidadEnum.Preasignada || createEditNecesidadViewModel.EstadoNecesidadId == (int)EstadoNecesidadEnum.Cerrada) && createEditNecesidadViewModel.TipoContratacionId == (int)TipoContratacionEnum.CambioInterno) { necesidad.PersonaAsignada = createEditNecesidadViewModel.PersonaAsignada; necesidad.PersonaAsignadaId = createEditNecesidadViewModel.PersonaAsignadaId; necesidad.PersonaAsignadaNroEmpleado = createEditNecesidadViewModel.PersonaAsignadaNroEmpleado; } else if ((createEditNecesidadViewModel.EstadoNecesidadId == (int)EstadoNecesidadEnum.Preasignada || createEditNecesidadViewModel.EstadoNecesidadId == (int)EstadoNecesidadEnum.Cerrada) && createEditNecesidadViewModel.TipoContratacionId == (int)TipoContratacionEnum.Contratación) { necesidad.PersonaAsignada = createEditNecesidadViewModel.PersonaAsignada; necesidad.PersonaAsignadaId = createEditNecesidadViewModel.PersonaAsignadaId; necesidad.PersonaAsignadaNroEmpleado = null; necesidad.CandidaturaId = createEditNecesidadViewModel.candidaturaId; } else if (createEditNecesidadViewModel.EstadoNecesidadId == (int)EstadoNecesidadEnum.Abierta && createEditNecesidadViewModel.TipoContratacionId == (int)TipoContratacionEnum.Contratación && createEditNecesidadViewModel.PersonaAsignadaId != null) { necesidad.PersonaAsignadaId = null; necesidad.CandidaturaId = null; necesidad.PersonaAsignada = null; } else if (createEditNecesidadViewModel.EstadoNecesidadId == (int)EstadoNecesidadEnum.Abierta && createEditNecesidadViewModel.TipoContratacionId == (int)TipoContratacionEnum.CambioInterno && createEditNecesidadViewModel.PersonaAsignadaId != null) { necesidad.PersonaAsignadaId = null; necesidad.PersonaAsignada = null; necesidad.PersonaAsignadaNroEmpleado = null; } if (createEditNecesidadViewModel.TipoContratacionId == (int)TipoContratacionEnum.CambioInterno) { necesidad.CandidaturaId = null; } necesidad.Modulo = createEditNecesidadViewModel.Modulo; if (createEditNecesidadViewModel.EstadoNecesidadId == (int)EstadoNecesidadEnum.Cerrada && createEditNecesidadViewModel.AsignadaCorrectamente == null) { necesidad.AsignadaCorrectamente = false; } if (createEditNecesidadViewModel.GrupoNecesidad != null && createEditNecesidadViewModel.GrupoNecesidad != 0) { necesidad.GrupoNecesidadId = createEditNecesidadViewModel.GrupoNecesidad; } if (proyecto != null) { necesidad.CuentaProyecto = proyecto.CuentaCargo; necesidad.PersonaProyecto = proyecto.Persona; } }
public static CreateEditNecesidadViewModel ConvertToCreateEditNecesidadViewModel(this Necesidad necesidad) { var createEditNecesidadViewModel = new CreateEditNecesidadViewModel { NecesidadId = necesidad.NecesidadId, Nombre = necesidad.Nombre, OficinaId = necesidad.OficinaId, OficinaNombre = necesidad.Oficina?.Nombre, CentroId = necesidad.CentroId, SectorId = necesidad.SectorId, SectorNombre = necesidad.Sector?.Nombre, ClienteId = necesidad.Proyecto.ClienteId, ClienteNombre = necesidad.Proyecto.Cliente?.Nombre, ProyectoId = necesidad.ProyectoId, ProyectoNombre = necesidad.Proyecto?.Nombre, TipoServicioId = necesidad.TipoServicioId, TipoServicioNombre = necesidad.TipoServicio?.Nombre, TipoPerfilId = necesidad.TipoPerfilId, TipoPerfilNombre = necesidad.TipoPerfil?.Nombre, TipoTecnologiaId = necesidad.TipoTecnologiaId, TipoTecnologiaNombre = necesidad.TipoTecnologia?.Nombre, TipoContratacionId = necesidad.TipoContratacionId, TipoContratacionNombre = necesidad.TipoContratacion?.Nombre, TipoPrevisionId = necesidad.TipoPrevisionId, TipoPrevisionNombre = necesidad.TipoPrevision?.Nombre, MesesAsignacionId = necesidad.MesesAsignacionId, MesesAsignacionNombre = necesidad.MesesAsignacion?.Nombre, DetalleTecnologia = necesidad.Observaciones, DisponibilidadViajes = (necesidad.DisponibilidadViaje == true), DisponibilidadReubicacion = (necesidad.CambioResidencia == true), NecesidadIdioma = (necesidad.NecesidadIdioma == true), FechaSolicitud = necesidad.FechaSolicitud, FechaCompromiso = necesidad.FechaCompromiso, FechaCierre = necesidad.FechaCierre, EstadoNecesidadId = necesidad.EstadoNecesidadId, EstadoNecesidadNombre = necesidad.EstadoNecesidad?.Nombre, NombreCentro = necesidad.Centro?.Nombre, PersonaAsignada = necesidad.GetPersonaAsignada(), PersonaAsignadaId = necesidad.PersonaAsignadaId, PersonaAsignadaNroEmpleado = necesidad.PersonaAsignadaNroEmpleado, Modulo = necesidad.Modulo, NombreModulo = GetNombreModulo(necesidad.Modulo), candidaturaId = necesidad.CandidaturaId, ReferenciaExterna = necesidad.ReferenciaExterna, AsignadaCorrectamente = necesidad.AsignadaCorrectamente, GrupoNecesidad = necesidad.GrupoNecesidadId, GrupoNecesidadName = necesidad.GrupoNecesidadId != null ? necesidad.GrupoNecesidad.Nombre : string.Empty, Activo = necesidad.IsActivo }; if ((necesidad.EstadoNecesidadId == (int)EstadoNecesidadEnum.Preasignada || necesidad.EstadoNecesidadId == (int)EstadoNecesidadEnum.Cerrada) && necesidad.TipoContratacionId == (int)TipoContratacionEnum.Contratación) { createEditNecesidadViewModel.PersonaAsignadaNroEmpleado = null; } if (necesidad.TipoContratacionId == (int)TipoContratacionEnum.CambioInterno) { createEditNecesidadViewModel.candidaturaId = null; } return(createEditNecesidadViewModel); }