private void ModificacionDeComisionDeServicio(ComisionDeServicio una_comision) { var comision_anterior = ObtenerViaticoPorId(una_comision.Id); foreach (Estadia unaEstadia in una_comision.Estadias) { unaEstadia.ComisionDeServicio = una_comision; } foreach (Pasaje unPasaje in una_comision.Pasajes) { unPasaje.ComisionDeServicio = una_comision; } var repoEstadias = new RepositorioDeEstadias(conexion_bd); var estadias_quitadas = comision_anterior.Estadias.FindAll(e => !una_comision.Estadias.Contains(e)); repoEstadias.BajaDeEstadias(estadias_quitadas); var estadias_nuevas = una_comision.Estadias.FindAll(e => e.Id == 0); repoEstadias.AltaDeEstadias(estadias_nuevas); var repoPasajes = new RepositorioDePasajes(conexion_bd); var pasajes_quitados = comision_anterior.Pasajes.FindAll(p => !una_comision.Pasajes.Contains(p)); repoPasajes.BajaDePasajes(pasajes_quitados); var pasajes_nuevos = una_comision.Pasajes.FindAll(p => p.Id == 0); repoPasajes.AltaDePasajes(pasajes_nuevos); var repoAcciones = new RepositorioDeAccionesDeTransicion(); this.ReasignarComision(una_comision, una_comision.AreaSuperior, repoAcciones.GetAccionSolicitar().Id, ""); }
private void AltaDeComisionDeServicio(ComisionDeServicio una_comision) { var parametros = new Dictionary <string, object>(); parametros.Add("@idAreaCreadora", una_comision.AreaCreadora.Id); parametros.Add("@documentoAgente", una_comision.Persona.Documento); parametros.Add("@estado", Enum.GetNames(typeof(EstadosDeComision))[(int)una_comision.Estado]); parametros.Add("@baja", una_comision.Baja); parametros.Add("@usuario", 1); var id = conexion_bd.EjecutarEscalar("dbo.VIA_AltaComisionDeServicio", parametros); una_comision.Id = int.Parse(id.ToString()); foreach (Estadia unaEstadia in una_comision.Estadias) { unaEstadia.ComisionDeServicio = una_comision; } foreach (Pasaje unPasaje in una_comision.Pasajes) { unPasaje.ComisionDeServicio = una_comision; } var repoEstadias = new RepositorioDeEstadias(conexion_bd); repoEstadias.AltaDeEstadias(una_comision.Estadias); var repoPasajes = new RepositorioDePasajes(conexion_bd); repoPasajes.AltaDePasajes(una_comision.Pasajes); var repoAcciones = new RepositorioDeAccionesDeTransicion(); //unaComision.AreaActual = unaComision.AreaCreadora; this.ReasignarComision(una_comision, una_comision.AreaSuperior, repoAcciones.GetAccionSolicitar().Id, ""); }