private string AvisoSolicitudMenorA72Horas(ComisionDeServicio una_comision) { //ordenar las estadias por la que tiene la fecha desde mas cercana, no por el orden de la lista Estadia primera_estadia = una_comision.Estadias.OrderBy(f => f.Desde).First(); bool menor_a_72_horas = ValidacionesEnComisionesDeServicios.Validar72Horas(una_comision.FechaCreacion, primera_estadia.Desde); if (menor_a_72_horas) { return("*"); } else { return(""); } }
protected void Page_Load(object sender, EventArgs e) { if (Session["comisionActual"] != null) { comision = (ComisionDeServicio)Session["comisionActual"]; } //Table tabla_encabezado_datos_persona = ConstruirTabla("Datos Personales"); //Table tabla_detalle_datos_persona = ContruirTablaDetalleDatosPersonales(); //Table tabla_encabezado_estadia = ConstruirTabla("Detalle de Estadías"); //Table tabla_detalle_estadia = ConstruirTablaDetalleEstadia(); MostrarTablaDePersona(); MostrarTablaEstadias(); MostrarTablaDePasajes(); // Table tabla_encabezado_pasaje = ConstruirTabla("Detalle de Pasajes"); //Table tabla_detalle_pasaje = ConstruirTablaDetallePasaje(); System.Web.UI.WebControls.Panel lista_firmantes = ConstruirListaFirmantes(); this.Controls.Add(lista_firmantes); Usuario usuario = ((Usuario)Session["usuario"]); WSViaticosSoapClient ws = new WSViaticosSoapClient(); var idAreasUsuario = ws.AreasAdministradasPor(usuario).Select(a => a.Id); if (!idAreasUsuario.Contains(comision.AreaActual.Id)) { this.BotonModificar.Visible = false; } if (ValidacionesEnComisionesDeServicios.Validar72Horas(comision.FechaCreacion, comision.Estadias.Select(es => es.Desde).Min())) { this.lbValidacion72horas.Text = "El Viático fue solicitado con menos de 72 horas hábiles"; } }
protected void btn_agregar_pasaje_Click(object sender, EventArgs e) { Localidad localidad_origen = this.ControlPasaje.LocalidadOrigen; Localidad localidad_destino = this.ControlPasaje.LocalidadDestino; Session["idtemporal"] = GenerarIdNegativo((int)Session["idtemporal"]); var comision = (ComisionDeServicio)Session[ConstantesDeSesion.VIATICO_EN_EDICION]; Pasaje pasaje = new Pasaje(); pasaje.Id = (int)Session["idtemporal"]; pasaje.FechaDeViaje = this.ControlPasaje.FechaPasaje; pasaje.Origen = localidad_origen; pasaje.Destino = localidad_destino; pasaje.MedioDeTransporte = this.ControlPasaje.MediosDeTransporte; pasaje.MedioDePago = this.ControlPasaje.MediosDePago; pasaje.Precio = this.ControlPasaje.Precio; //pasaje.ComisionDeServicio = comision; AddPasaje(pasaje); this.ControlGrillaPasajes.MostrarTablaDePasajes((ComisionDeServicio)Session[ConstantesDeSesion.VIATICO_EN_EDICION]); this.ControlGrillaEstadias.MostrarTablaDeEstadias((ComisionDeServicio)Session[ConstantesDeSesion.VIATICO_EN_EDICION]); DateTime fecha_servidor = DateTime.Today; bool menor_a_72_horas = ValidacionesEnComisionesDeServicios.Validar72Horas(fecha_servidor, pasaje.FechaDeViaje); if (menor_a_72_horas) { string mensaje = "Viático pedido con un lapso menor a 72 horas hábiles."; ClientScript.RegisterStartupScript(this.GetType(), "myScript", "<script>javascript:mostrarMensaje('" + mensaje + "');</script>"); } ; this.ControlPasaje.LimpiarControles(); }
protected void btn_agregar_estadia_Click(object sender, EventArgs e) { if (!DatosEstadiaSonCorrectos()) { return; } /*AZA Validación de fechas superpuestas en estadías*/ if (ValidarFechasEstadiaSonSuperpuestas()) { string mensaje = "Ya ingresó una estadía entre esas fechas."; ClientScript.RegisterStartupScript(this.GetType(), "myScript", "<script>javascript:mostrarMensaje('" + mensaje + "');</script>"); // this.labelGuardado.Text = "Ya ingresó una estadía entre esas fechas."; this.ControlGrillaEstadias.MostrarTablaDeEstadias((ComisionDeServicio)Session[ConstantesDeSesion.VIATICO_EN_EDICION]); this.ControlEstadia.LimpiarControles(); // Session.Contents.Remove(""); return; } Session["idtemporal"] = GenerarIdNegativo((int)Session["idtemporal"]); var persona = (Persona)Session[ConstantesDeSesion.PERSONA]; WSViaticosSoapClient service = new WSViaticosSoapClient(); Estadia estadia = new Estadia(); estadia.Id = (int)Session["idtemporal"]; estadia.Desde = this.ControlEstadia.Desde; estadia.Hasta = this.ControlEstadia.Hasta; estadia.AdicionalParaPasajes = this.ControlEstadia.AdicionalParaPasajes; estadia.Eventuales = this.ControlEstadia.Eventuales; estadia.Motivo = this.ControlEstadia.Motivo; estadia.Provincia = this.ControlEstadia.ProvinciaElegida; estadia.Provincia.Zona = service.GetZonaDe(this.ControlEstadia.ProvinciaElegida); estadia.Persona = persona; //estadia.ComisionDeServicio = comision; /*AZA Validación de fechas superpuestas en estadías*/ //if (ValidarFechasEstadiaSonSuperpuestas()) //{ // this.labelGuardado.Text = "Ya ingresó una estadía entre esas fechas."; // this.ControlGrillaEstadias.MostrarTablaDeEstadias((ComisionDeServicio)Session[ConstantesDeSesion.VIATICO_EN_EDICION]); // Session.Contents.Remove("empresa"); // return; //} /*AZA Validación de fechas superpuestas en estadías contra la base de datos- VER SI SE DEJA*/ //var estadias_anteriores = (Estadia[])Session["estadiasAnteriores"]; //foreach (Estadia una_estadia in estadias_anteriores) //{ // if (ControlEstadia.Desde <= una_estadia.Hasta && ControlEstadia.Desde >= una_estadia.Desde) // { // this.labelGuardado.Text = "Ya se ha cargado en el sistema una estadía entre esas fechas."; // this.ControlGrillaEstadias.MostrarTablaDeEstadias((ComisionDeServicio)Session[ConstantesDeSesion.VIATICO_EN_EDICION]); // return; // } //} /*FIN AZA Validación de fechas superpuestas en estadías*/ AddEstadia(estadia); this.ControlEstadia.LimpiarControles(); this.ControlGrillaEstadias.MostrarTablaDeEstadias((ComisionDeServicio)Session[ConstantesDeSesion.VIATICO_EN_EDICION]); this.ControlGrillaPasajes.MostrarTablaDePasajes((ComisionDeServicio)Session[ConstantesDeSesion.VIATICO_EN_EDICION]); this.labelGuardado.Text = ""; DateTime fecha_servidor = DateTime.Today; bool menor_a_72_horas = ValidacionesEnComisionesDeServicios.Validar72Horas(fecha_servidor, estadia.Desde); if (menor_a_72_horas) { string mensaje = "Viático pedido con un lapso menor a 72 horas hábiles."; ClientScript.RegisterStartupScript(this.GetType(), "myScript", "<script>javascript:mostrarMensaje('" + mensaje + "');</script>"); } ; }