예제 #1
0
    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("");
        }
    }
예제 #2
0
    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";
        }
    }
예제 #3
0
    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();
    }
예제 #4
0
    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>");
        }
        ;
    }