示例#1
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (Session["Usuario"] == null)
        {
            Response.Redirect("~/View/Login.aspx");
        }
        int perfilId = int.Parse(Session["PerfilID"].ToString());

        if (perfilId != 2) // Solo ejecutivos de ventas pueden agregar pasajeros (Clientes con cuentas asociarlos a contratos)
        {
            Response.Redirect("~/View/PaginaPpal.aspx");
        }

        string         idContratoActual = Request.QueryString["id_contrato"];
        decimal        idContrato       = int.Parse(idContratoActual);
        EntitiesOnTour bd        = new EntitiesOnTour();
        var            resultado = bd.CONTRATO.FirstOrDefault(x => x.ID_CONTRATO == idContrato);

        if (resultado == null)
        {
            agregarClienteFormulario.Visible = false;
            idNoValido.Visible = true;
        }
        backContrato_link.Attributes["href"] = "ModificarContrato.aspx?ID_CONTRATO=" + Request.QueryString["ID_CONTRATO"];
    }
示例#2
0
    protected void btnAgregar_Click(object sender, EventArgs e)
    {
        try
        {
            EntitiesOnTour bd       = new EntitiesOnTour();
            int            saldo    = int.Parse(txtSaldo.Text.Trim());
            int            contrato = int.Parse(DropDownListContratoRela.SelectedValue);
            int            rut      = int.Parse(DropDownListRut.SelectedValue);
            string         activo   = DropDownListActivo.SelectedValue;

            CUENTA cuenta = new CUENTA()
            {
                SALDO       = saldo,
                ID_CONTRATO = contrato,
                NUMRUT_CLI  = rut,
                ACTIVO      = activo
            };

            bd.CUENTA.Add(cuenta);
            bd.SaveChanges();
            MostrarModal("Atención", "La cuenta ha sido creada satisfactoriamente.");
        }
        catch (Exception ex)
        {
            MostrarModal("Atención", ex.Message);
        }
    }
示例#3
0
 protected void Page_Load(object sender, EventArgs e)
 {
     //Modificar cliente no se puede el RUT debido a que se establece como restricción
     if (Session["Usuario"] == null)
     {
         Response.Redirect("~/View/Login.aspx");
     }
     else
     {
         //Mostrar datos no modificables para mostrar al usuario los datos actuales
         EntitiesOnTour bd = new EntitiesOnTour();
         //Recuperar por URL el ID del cliente que se quiere modificar
         String urlStr       = Request.QueryString["NUMRUT_CLI"];
         int    numrutCliUrl = int.Parse(urlStr);
         //Instanciar el cliente
         CLIENTE cliente = bd.CLIENTE.FirstOrDefault(t => t.NUMRUT_CLI == numrutCliUrl);
         //Poblar los textbox con los datos del cliente recuperado
         txtRut.Text       = cliente.NUMRUT_CLI.ToString();
         txtDv.Text        = cliente.DRUT_CLI;
         txtNombre.Text    = cliente.NOMBRE_CLIE;
         txtApellidoM.Text = cliente.APELLIDO_MAT_CLI;
         txtApellidoP.Text = cliente.APELLIDO_PAT_CLI;
         txtMail.Text      = cliente.MAIL_CLI;
         txtActivo.Text    = cliente.ACTIVO; // Por default
         //cliente tipo usuario acá
         txtDireccion.Text = cliente.DIRECCION_CLI;
         txtFecha.Text     = cliente.FECHA_NACIMIENTO_CLI.ToString();
         txtTelefono.Text  = cliente.FONO_CLI;
     }
 }
示例#4
0
    protected void btnAgregar_Click(object sender, EventArgs e)
    {
        try
        {
            EntitiesOnTour bd     = new EntitiesOnTour();
            DateTime       fecha  = DateTime.Parse(txtFecha.Text.Trim());
            int            monto  = int.Parse(txtMonto.Text.Trim());
            int            tipo   = int.Parse(DropDownListTipo.SelectedValue);
            int            cuenta = int.Parse(DropDownListCuenta.SelectedValue);

            CUENTA ctv  = bd.CUENTA.FirstOrDefault(it => it.ID_CUENTA == cuenta);
            String varS = ctv.SALDO.ToString();
            int    varD = int.Parse(varS);
            int    varE = varD + monto;

            TRANSACCION transaccion = new TRANSACCION()
            {
                FECHA_TRANSACCION   = fecha,
                MONTO_TRANSACCION   = monto,
                ID_CUENTA           = cuenta,
                ID_TIPO_TRANSACCION = tipo,
                ACTIVO = "T"
            };
            bd.TRANSACCION.Add(transaccion);
            bd.SP_UPDATESALDOCUENTA(cuenta, varE);
            bd.SaveChanges();

            MostrarModal("Operación realizada", "Se ha registrado la transacción correctamente.");
        }
        catch (Exception ex)
        {
            MostrarModal("Error", "Ha ocurrido un error en la operación, inténtalo de nuevo. Si el problema persiste contáctate con el administrador.");
        }
    }
示例#5
0
    protected void btnModificar_Click(object sender, EventArgs e)
    {
        try
        {
            EntitiesOnTour bd  = new EntitiesOnTour();
            int            rut = int.Parse(txtRut.Text.Trim());

            String   nombreNuevo     = txtNombreNuevo.Text.Trim();
            String   apellidoP       = txtApellidoPNuevo.Text.Trim();
            String   apellidoM       = txtApellidoMNuevo.Text.Trim();
            String   mail            = txtMailNuevo.Text.Trim();
            String   activo          = DropDownListActivoNuevo.SelectedValue; // AÚN NO IMPLEMENTADO EN SP
            String   direccion       = txtDireccionNuevo.Text.Trim();
            DateTime fechaNacimiento = DateTime.Parse(txtFechaNuevo.Text);
            String   telefono        = txtTelefonoNuevo.Text;

            bd.SP_UPDATECLIENTE(rut, nombreNuevo, apellidoP, apellidoM, mail, activo, direccion, fechaNacimiento, telefono);
            bd.SaveChanges();
            MostrarModal("Atención", "Cliente Modificado Exitosamente");
            Page_Load(null, EventArgs.Empty);
        }
        catch (Exception ex)
        {
            MostrarModal("Atención", ex.Message);
        }
    }
    protected void btnModificar_Click(object sender, EventArgs e)
    {
        try
        {
            EntitiesOnTour bd      = new EntitiesOnTour();
            int            nId     = int.Parse(txtIdContrato.Text);
            DateTime       nInicio = DateTime.Parse(txtInicio.Text);
            DateTime       nFin    = DateTime.Parse(txtFin.Text);
            int            nMeta   = 0;
            //int nMeta = int.Parse(txtMeta.Text);
            //int nMonto = int.Parse(txtMonto.Text);
            int    nMonto  = 0;
            String nEstado = DropDownListEstado.SelectedValue.ToString();
            int    nRutTit = int.Parse(DropDownListTitular.SelectedValue);
            int    nRutEmp = int.Parse(DropDownListEmpleado.SelectedValue);

            bd.SP_UPDATECONTRATO(nId, nInicio, nFin, nMeta, nMonto, nEstado, nRutEmp, nRutTit);
            bd.SaveChanges();
            MostrarModal("Operación realizada", "El contrato ha sido modificado correctamente.");
            GridViewContratos.DataBind();
        }
        catch (Exception ex)
        {
            MostrarModal("Error", "Ha ocurrido un error en la operación, inténtalo de nuevo.");
        }
    }
    protected void BorrarContratoAceptado(object sender, EventArgs e)
    {
        EntitiesOnTour bd = new EntitiesOnTour();

        bd.SP_ELIMINACONTRATO(int.Parse(numeroContratoAEliminar.Text));
        Page.Response.Redirect(Page.Request.Url.ToString(), true);
    }
    protected void crearCuenta_Click(object sender, EventArgs e)
    {
        try
        {
            string nombre         = txtNombre.Text;
            string clave          = txtPass.Text;
            string confirmarClave = txtConfPass.Text;

            if (clave.Equals(confirmarClave))
            {
                EntitiesOnTour bd      = new EntitiesOnTour();
                USUARIO        usuario = bd.USUARIO.FirstOrDefault(x => x.LOGIN_USR.Equals(nombre));
                if (usuario == null)
                {
                    byte[]        bytes  = { 0x35, 0x24, 0, 76, 0x12 };
                    MD5           md5    = new MD5CryptoServiceProvider();
                    byte[]        result = md5.ComputeHash(Encoding.ASCII.GetBytes(clave));
                    StringBuilder sb     = new StringBuilder();
                    for (int i = 0; i < result.Length; i++)
                    {
                        sb.Append(result[i].ToString("x2"));
                    }
                    String hashClave = sb.ToString();
                    bd.SP_INSERTAUSUARIO(nombre, hashClave, 3, "T");
                    bd.SaveChanges();

                    USUARIO ultimoUsuario = bd.USUARIO.OrderByDescending(x => x.ID_USR).First();
                    decimal idUsr         = ultimoUsuario.ID_USR;
                    int     numeroRut     = int.Parse(txtBuscarRut.Text);

                    bd.SP_UPDATEUSERCLI(numeroRut, idUsr);
                    bd.SaveChanges();
                    MostrarModal("Atención", "Las credenciales han sido generadas correctamente.");

                    txtBuscarRut.Enabled     = true;
                    txtDvBuscar.Enabled      = true;
                    panelCrearCuenta.Visible = false;
                    txtBuscarRut.Text        = "";
                    txtConfPass.Text         = "";
                    txtDvBuscar.Text         = "";
                    txtNombre.Text           = "";
                    txtPass.Text             = "";
                }
                else
                {
                    MostrarModal("Atención", "El nombre de usuario ya existe.");
                }
            }
            else
            {
                MostrarModal("Atención", "Las contraseñas no coinciden.");
            }
        }
        catch (Exception ex)
        {
            MostrarModal("Error", "Ha ocurrido un error en la operación, inténtalo de nuevo. Si el problema persiste contáctate con el administrador.");
        }
    }
示例#9
0
    protected void btnLogin_Click(object sender, EventArgs e)
    {
        try
        {
            EntitiesOnTour bd      = new EntitiesOnTour();
            String         usuario = txtUsuario.Text.Trim();
            String         clave   = txtClave.Text.Trim();
            byte[]         bytes   = { 0x35, 0x24, 0, 76, 0x12 };
            MD5            md5     = new MD5CryptoServiceProvider();
            byte[]         result  = md5.ComputeHash(Encoding.ASCII.GetBytes(clave));
            StringBuilder  sb      = new StringBuilder();
            for (int i = 0; i < result.Length; i++)
            {
                sb.Append(result[i].ToString("x2"));
            }
            String hashClave = sb.ToString();

            // Buscar User en la BD
            USUARIO usuarioObj = bd.USUARIO.FirstOrDefault(it => it.LOGIN_USR == usuario && it.PASS_USR == hashClave);
            if (usuarioObj == null)
            {
                throw new Exception("Credenciales incorrectas, ingresar nuevamente");
            }
            //Verificar que sea un usuario activo
            char activoLocal = char.Parse(usuarioObj.ACTIVO);

            if (activoLocal == 'T')
            {
                //Nombre de usuario
                Session["Usuario"]   = usuario;
                Session["UsuarioID"] = usuarioObj.ID_USR;
                //Tipos de usuario 1)Administrador 2)Ejecutivo De Venta 3)Cliente 4)Dueño Agencia
                Session["Perfil"] = usuarioObj.TIPO_USUARIO.DESC_TIPO_USUARIO;
                String perfilID = usuarioObj.TIPO_USUARIO.ID_TIPO_USUARIO.ToString();
                Session["PerfilID"] = perfilID;
                int perfilId = int.Parse(perfilID.ToString());
                if (perfilId == 3)
                {
                    Response.Redirect("~/View/ClienteListadoContratos.aspx");
                }
                else
                {
                    Response.Redirect("~/View/ListarContratos.aspx");
                }
            }
            else
            {
                throw new Exception("Usuario no habilitado, contacte al administrador");
            }
        }
        catch (Exception ex)
        {
            MostrarModal("Atención", ex.Message);
        }
    }
示例#10
0
    protected void btnAgregar_Click(object sender, EventArgs e)
    {
        try
        {
            EntitiesOnTour bd               = new EntitiesOnTour();
            Librerias      librerias        = new Librerias();
            string         idContratoActual = Request.QueryString["id_contrato"];
            decimal        idContrato       = int.Parse(idContratoActual);

            int    rut         = int.Parse(txtRut.Text.Trim());
            String dv          = txtDv.Text.Trim().ToUpper();
            String rutCompleto = rut + dv;
            bool   rutValido   = librerias.validarRut(rutCompleto); //Validación de Rut
            if (!rutValido)
            {
                throw new Exception("Rut inválido");
            }
            int totalRegistros = bd.CUENTA.Count(x => x.ID_CONTRATO == idContrato && x.NUMRUT_CLI == rut && x.ACTIVO == "T");
            if (totalRegistros > 0)
            {
                throw new Exception("Ya existe este pasajero en el contrato");
            }
            String   nombre          = txtNombre.Text.Trim();
            String   apellidoP       = txtApellidoP.Text.Trim();
            String   apellidoM       = txtApellidoM.Text.Trim();
            String   mail            = txtMail.Text.Trim();
            String   direccion       = txtDireccion.Text.Trim();
            DateTime today           = DateTime.Today;
            DateTime fechaNacimiento = DateTime.Parse(txtFecha.Text);
            if (fechaNacimiento > today)
            {
                throw new Exception("Fecha de nacimiento no puede ser mayor a la fecha actual");
            }
            String telefono      = txtTelefono.Text;
            String mensajeFinal  = "";
            String activo        = "T"; //Un cliente es solo T o F
            int    numrutCliente = int.Parse(txtRut.Text);
            if (txtNombre.Enabled)
            {
                bd.SP_INSERTCLIENTE(rut, dv, nombre, apellidoP, apellidoM,
                                    mail, activo, direccion, fechaNacimiento, telefono);
            }

            bd.SP_INSERTARCUENTA(0, idContrato, numrutCliente, activo);
            bd.SaveChanges();
            Page.Response.Redirect(Page.Request.Url.ToString(), false);
        }
        catch (Exception ex)
        {
            MostrarModal("Atención", ex.Message);
        }
    }
示例#11
0
    protected void btnCargarCliente_Click(object sender, EventArgs e)
    {
        try
        {
            lblAviso.Text = "";
            EntitiesOnTour bd          = new EntitiesOnTour();
            Librerias      librerias   = new Librerias();
            int            rutMandante = int.Parse(txtBuscarRut.Text.Trim());
            String         dv          = txtDvBuscar.Text.Trim().ToUpper();
            String         rutCompleto = rutMandante + dv;

            bool rutValido = librerias.validarRut(rutCompleto); //Validación de Rut
            if (!rutValido)
            {
                throw new Exception("Rut inválido");
            }
            CLIENTE cliente = bd.CLIENTE.FirstOrDefault(t => t.NUMRUT_CLI == rutMandante);
            if (cliente == null) //No existen coincidencias -> Crear nuevo cliente
            {
                // RECUPERANDO EL NOMBRE DEL CLIENTE ASOCIADO AL RUT DEL DROPDOWNLIST
                activarCampos();
                txtRut.Text = txtBuscarRut.Text;
                txtDv.Text  = txtDvBuscar.Text;
                throw new Exception("El pasajero ingresado no existe en la base de datos, complete por favor los campos.");
            }
            else //Existen coincidencias, se cargan los textbox
            {
                //Completar rut para que no se repita el ingreso
                txtRut.Text = txtBuscarRut.Text;
                txtDv.Text  = txtDvBuscar.Text;
                bloquearCampos();
                txtDv.Text        = cliente.DRUT_CLI.ToString();
                txtNombre.Text    = cliente.NOMBRE_CLIE;
                txtApellidoM.Text = cliente.APELLIDO_MAT_CLI;
                txtApellidoP.Text = cliente.APELLIDO_PAT_CLI;
                txtMail.Text      = cliente.MAIL_CLI;
                txtDireccion.Text = cliente.DIRECCION_CLI;
                txtFecha.Text     = cliente.FECHA_NACIMIENTO_CLI.ToString();

                DateTime fechaNacimiento = DateTime.Parse(cliente.FECHA_NACIMIENTO_CLI.ToString());
                //Los str son netamente para que el usuario vea su fecha en el sistema, pero se usa
                //el normal sin str
                txtFechaStr.Text = fechaNacimiento.ToShortDateString();
                txtTelefono.Text = cliente.FONO_CLI;
            }
        }
        catch (Exception ex)
        {
            MostrarModal("Atención", ex.Message);
        }
    }
示例#12
0
    protected void Page_Load(object sender, EventArgs e)
    {
        //Caso en que se ingresa mediante el login correctamente

        if (Session["Usuario"] == null)
        {
            Response.Redirect("~/View/Login.aspx");
        }
        //Caso en que se esté intentando logearse sin usuarios(Forzadamente)
        else
        {
            EntitiesOnTour bd            = new EntitiesOnTour();
            String         usuarioSesion = Session["Usuario"].ToString();
            Label1.Text = Session["Perfil"].ToString();
        }
    }
示例#13
0
    protected void DropDownListCuenta_DataBound(object sender, EventArgs e)
    {
        EntitiesOnTour bd          = new EntitiesOnTour();
        int            cuenta      = int.Parse(DropDownListCuenta.SelectedValue);
        CUENTA         varCuenta   = bd.CUENTA.FirstOrDefault(it => it.ID_CUENTA == cuenta);
        String         varContrato = varCuenta.ID_CONTRATO.ToString();
        int            nroContrato = int.Parse(varContrato.ToString());

        CONTRATO contrato      = bd.CONTRATO.FirstOrDefault(it => it.ID_CONTRATO == nroContrato);
        String   rutX          = contrato.NUMRUT_CLI_TITULAR.ToString();
        int      rutY          = int.Parse(rutX);
        CLIENTE  clienteA      = bd.CLIENTE.FirstOrDefault(it => it.NUMRUT_CLI == rutY);
        String   mostrarNombre = clienteA.NOMBRE_CLIE + " " + clienteA.APELLIDO_PAT_CLI + " " + clienteA.APELLIDO_MAT_CLI; // Se muestra el nombre del cliente concatenado

        txtInfoCta.Text = "Mandante: " + mostrarNombre + "\nID Contrato: " + contrato.ID_CONTRATO + "\nFecha Inicio: " + contrato.FECHA_INICIO;
        txtInfoCta.DataBind();
        txtInfoCta.Enabled = false;
    }
    protected void buscarRut_Click(object sender, EventArgs e)
    {
        try
        {
            EntitiesOnTour bd = new EntitiesOnTour();

            Librerias librerias   = new Librerias();
            int       numeroRut   = int.Parse(txtBuscarRut.Text.Trim());
            String    dv          = txtDvBuscar.Text.Trim().ToUpper();
            String    rutCompleto = numeroRut + dv;

            bool rutValido = librerias.validarRut(rutCompleto); //Validación de Rut
            if (!rutValido)
            {
                throw new Exception("El rut ingresado no es válido.");
            }

            clienteObjeto = bd.CLIENTE.FirstOrDefault(x => x.NUMRUT_CLI == numeroRut);

            if (clienteObjeto == null)
            {
                throw new Exception("El rut ingresado no pertenece a ningún contrato");
            }
            else
            {
                if (clienteObjeto.ID_USR == null)
                {
                    panelCrearCuenta.Visible = true;
                    txtBuscarRut.Enabled     = false;
                    txtDvBuscar.Enabled      = false;
                    buscarRut.Enabled        = false;
                }
                else
                {
                    MostrarModal("Atención", "El rut si tiene cuenta");
                }
            }
        }
        catch (Exception ex)
        {
            MostrarModal("Atención", ex.Message);
        }
    }
    protected void btnCargar_Click(object sender, EventArgs e)
    {
        EntitiesOnTour bd     = new EntitiesOnTour();
        String         urlStr = Request.QueryString["id_contrato"];
        int            temp2  = int.Parse(urlStr);

        //Empleado empleado = local.Empleado.FirstOrDefault(it => it.username == usuario);
        CONTRATO contrato = bd.CONTRATO.FirstOrDefault(it => it.ID_CONTRATO == temp2);

        //txtInicio.Text = Convert.ToString(contrato.FECHA_INICIO);
        txtIdContrato.Text        = contrato.ID_CONTRATO.ToString();
        txtInicio.Text            = contrato.FECHA_INICIO.ToShortDateString();
        txtFin.Text               = contrato.FECHA_TERMINO.ToShortDateString();
        txtMeta.Text              = contrato.META.ToString();
        txtMonto.Text             = contrato.MONTO_RESERVA.ToString();
        DropDownListEstado.Text   = contrato.ESTADO.ToString();
        DropDownListEmpleado.Text = contrato.NUMRUT_EMP.ToString();
        DropDownListTitular.Text  = contrato.NUMRUT_CLI_TITULAR.ToString();
    }
示例#16
0
    protected void Page_Load(object sender, EventArgs e)
    {
        //Si no hay usuarios el menú de la página principal (MasterPage) no se mostrará
        if (Session["Usuario"] == null)
        {
            Mantenedor.Visible = false;
        }
        else
        {
            EntitiesOnTour bd = new EntitiesOnTour();

            //Buscar cliente para poner nombre
            lblUsuario.Text  = Session["Usuario"].ToString().ToUpper();
            lblUsuario.Text += "<br>" + Session["Perfil"].ToString();

            menuEjecutivo.Visible = false;
            menuDueno.Visible     = false;
            menuCliente.Visible   = false;

            Mantenedor.Visible = true;
            int perfilId = int.Parse(Session["PerfilID"].ToString());
            if (perfilId == 1) // admin no entra.
            {
            }
            if (perfilId == 2) //ejec
            {
                menuEjecutivo.Visible = true;
            }
            if (perfilId == 3) //Cliente
            {
                menuCliente.Visible = true;
            }
            if (perfilId == 4) //dueño
            {
                menuDueno.Visible = true;
            }
        }
    }
    protected void btnAgregar_Click(object sender, EventArgs e)
    {
        try
        {
            EntitiesOnTour bd          = new EntitiesOnTour();
            int            Tipo        = int.Parse(DropDownListTipoActividad.SelectedValue);
            string         descripcion = txtDescripcion.Text.Trim();
            DateTime       fecha       = DateTime.Parse(txtFechaActividad.Text);
            int            monto       = int.Parse(txtMonto.Text.Trim());
            string         activo      = DropDownListActivo.SelectedValue;
            int            contrato    = int.Parse(DropDownListContratoRela.SelectedValue);

            ACTIVIDAD actividad = new ACTIVIDAD()
            {
                DESC_ACTIVIDAD        = descripcion,
                FECHA_REALIZACION_ACT = fecha,
                MONTO_RECAUDADO       = monto,
                ACTIVO            = activo,
                ID_TIPO_ACTIVIDAD = Tipo,
                ID_CONTRATO       = contrato
            };

            bd.ACTIVIDAD.Add(actividad);
            bd.SaveChanges();
            MostrarModal("Atención", "La actividad ha sido registrada correctamente");

            txtDescripcion.Text    = "";
            txtFechaActividad.Text = "";
            txtMonto.Text          = "";
            DropDownListTipoActividad.SelectedIndex = 0;
            DropDownListContratoRela.SelectedIndex  = 0;
            DropDownListActivo.SelectedIndex        = 0;
        }
        catch (Exception ex)
        {
            MostrarModal("Atención", "Ha ocurrido un error en la operación, inténtalo de nuevo. Si el problema persiste contáctate con el administrador.");
        }
    }
    protected void QuitarPasajero(object sender, EventArgs e)
    {
        string         idContratoActual = Request.QueryString["id_contrato"];
        decimal        idContrato       = int.Parse(idContratoActual);
        decimal        clienteRut       = decimal.Parse(datosPasajero.Text);
        EntitiesOnTour bd             = new EntitiesOnTour();
        var            v_saldo        = bd.CUENTA.FirstOrDefault(x => x.ID_CONTRATO == idContrato && x.NUMRUT_CLI == clienteRut && x.ACTIVO.Equals("T"));
        decimal        saldo_pasajero = v_saldo.SALDO;

        v_saldo.ACTIVO = "F";
        v_saldo.SALDO  = 0;
        bd.SaveChanges();
        var     v_cantidad        = bd.CUENTA.Count(x => x.ID_CONTRATO == idContrato && x.ACTIVO.Equals("T"));
        decimal saldo_prorrateado = saldo_pasajero / v_cantidad;
        var     cuentas           = bd.CUENTA.Where(x => x.ID_CONTRATO == idContrato && x.ACTIVO.Equals("T")).ToList();

        foreach (var cuenta in cuentas)
        {
            cuenta.SALDO = cuenta.SALDO + saldo_prorrateado;
        }
        bd.SaveChanges();
        Page.Response.Redirect(Page.Request.Url.ToString(), true);
    }
示例#19
0
    protected void Continuar_Click(object sender, EventArgs e)
    {
        try
        {
            int            monto = int.Parse(txtMonto.Value);
            EntitiesOnTour bd    = new EntitiesOnTour();
            if (monto < 1000)
            {
                throw new Exception("El monto a depósitar no es válido. Debe ser una cantidad superior a $1.000");
            }


            pasoDos.Visible           = true;
            txtMonto.Disabled         = true;
            DropDownListTipo.Enabled  = false;
            DropDownListTipo.CssClass = "form-control";
            continuar.Enabled         = false;
            continuar.CssClass        = "btn btn-success";
        }
        catch (Exception ex)
        {
            MostrarModal("Atención", ex.Message);
        }
    }
    protected void ButtonRegistrar_Click(object sender, EventArgs e)
    {
        int id_tipo_servicio;
        int id_ws;

        EntitiesOnTour db                 = new EntitiesOnTour();
        int            idContrato         = int.Parse(DropDownListContrato.SelectedValue);
        string         descripcionPaquete = "Paquete nuevo";
        int            precioPaquete      = int.Parse(txtPrecioTemp.Text);
        string         activo             = "T";
        DateTime       fechaCreacion      = DateTime.Now;

        db.SP_V_INSERTAPAQUETE(descripcionPaquete, precioPaquete, activo, fechaCreacion);
        db.SaveChanges();
        PAQUETEVIAJE paquete = db.PAQUETEVIAJE.OrderByDescending(x => x.ID_PAQUETEVIAJE).First();

        CONTRATO contrato = db.CONTRATO.FirstOrDefault(x => x.ID_CONTRATO == idContrato);

        contrato.META += int.Parse(lblPrecio.Text.Substring(1));

        db.SP_INSERTAPAQUETECONTRATO(idContrato, paquete.ID_PAQUETEVIAJE, activo);
        db.SaveChanges();

        if (DDLHoraSalida.SelectedValue != null)
        {
            int tipoTransporte = int.Parse(DropDownListTipoTransporte.SelectedValue);
            if (tipoTransporte == 1)
            {
                id_tipo_servicio = 2;//bus
            }
            else
            {
                id_tipo_servicio = 1;//vuelo
            }
            int id_ws_viaje = int.Parse(DDLHoraSalida.SelectedValue);
            db.SP_V_INSERTASERVICIO(id_ws_viaje, activo, id_tipo_servicio);
            db.SaveChanges();
            SERVICIO servicio = db.SERVICIO.OrderByDescending(x => x.ID_SERVICIO).First();
            db.SP_INSERTASERVICIOPAQUETE(servicio.ID_SERVICIO, paquete.ID_PAQUETEVIAJE, activo);
            db.SaveChanges();
        }

        if (DropDownListEstadia.SelectedValue != null)
        {
            id_tipo_servicio = 3; //Estadia
            id_ws            = int.Parse(DropDownListEstadia.SelectedValue);
            db.SP_V_INSERTASERVICIO(id_ws, activo, id_tipo_servicio);
            db.SaveChanges();
            SERVICIO servicio = db.SERVICIO.OrderByDescending(x => x.ID_SERVICIO).First();
            db.SP_INSERTASERVICIOPAQUETE(servicio.ID_SERVICIO, paquete.ID_PAQUETEVIAJE, activo);
            db.SaveChanges();
        }

        if (DropDownListSeguros.SelectedValue != null)
        {
            id_tipo_servicio = 4; //Seguros
            id_ws            = int.Parse(DropDownListSeguros.SelectedValue);
            db.SP_V_INSERTASERVICIO(id_ws, activo, id_tipo_servicio);
            db.SaveChanges();
            SERVICIO servicio = db.SERVICIO.OrderByDescending(x => x.ID_SERVICIO).First();
            db.SP_INSERTASERVICIOPAQUETE(servicio.ID_SERVICIO, paquete.ID_PAQUETEVIAJE, activo);
            db.SaveChanges();
        }
        MostrarModal("Atención", "Se ha agregado el paquete de viaje correctamente.");
        deshabilitarFormulario();
        deshabilitarDropDowns();
        Response.Redirect("ModificarContrato.aspx?ID_CONTRATO=" + contrato.ID_CONTRATO, false);
    }
 public void BuscarPasajeros()
 {
     EntitiesOnTour bd = new EntitiesOnTour();
 }
示例#22
0
    protected void Notificar_Click(object sender, EventArgs e)
    {
        try
        {
            string file = System.IO.Path.GetFileName(comprobante.PostedFile.FileName);
            if (file == null || file.Equals(""))
            {
                pasoDos.Visible   = true;
                txtMonto.Disabled = true;
                throw new Exception("Documento no adjuntado.");
            }

            EntitiesOnTour bd               = new EntitiesOnTour();
            DateTime       fecha            = DateTime.Now;
            int            monto            = int.Parse(txtMonto.Value);
            int            tipo             = int.Parse(DropDownListTipo.SelectedValue);
            string         idContratoActual = Request.QueryString["id_contrato"];
            decimal        idContrato       = int.Parse(idContratoActual);

            decimal idusuario    = decimal.Parse(Session["UsuarioID"].ToString());
            CLIENTE cliente      = bd.CLIENTE.FirstOrDefault(x => x.ID_USR == idusuario);
            CUENTA  cuentaEmisor = bd.CUENTA.FirstOrDefault(it => it.ID_CONTRATO == idContrato && it.NUMRUT_CLI == cliente.NUMRUT_CLI && it.ACTIVO.Equals("T"));

            if (tipo == 1)
            {
                cuentaEmisor.SALDO = cuentaEmisor.SALDO + monto;
                bd.SaveChanges();
            }
            else
            {
                //grupal
                var v_cantidad = bd.CUENTA.Count(x => x.ID_CONTRATO == idContrato && x.ACTIVO.Equals("T"));

                decimal saldo_prorrateado = monto / v_cantidad;
                var     cuentas           = bd.CUENTA.Where(x => x.ID_CONTRATO == idContrato && x.ACTIVO.Equals("T")).ToList();
                foreach (var cuenta in cuentas)
                {
                    cuenta.SALDO = cuenta.SALDO + saldo_prorrateado;
                }
                bd.SaveChanges();
            }

            TRANSACCION transaccion = new TRANSACCION()
            {
                FECHA_TRANSACCION   = fecha,
                MONTO_TRANSACCION   = monto,
                ID_CUENTA           = cuentaEmisor.ID_CUENTA,
                ID_TIPO_TRANSACCION = tipo,
                ACTIVO = "F"
            };
            bd.TRANSACCION.Add(transaccion);
            bd.SaveChanges();


            MailMessage mail       = new MailMessage();
            SmtpClient  SmtpServer = new SmtpClient()
            {
                Host = "smtp.gmail.com",
                Port = 587,
                UseDefaultCredentials = false,
                Credentials           = new NetworkCredential("*****@*****.**", "jeanette0513"),
                EnableSsl             = true
            };
            mail.From = new MailAddress("*****@*****.**");
            mail.To.Add("*****@*****.**");
            mail.Subject = "Transferencia";
            mail.Body    = "Monto: " + monto + "\n" +
                           "Fecha: " + fecha + "\n" +
                           "Rut de autor: " + cliente.NUMRUT_CLI + "-" + cliente.DRUT_CLI + "\n" +
                           "Nombre: " + cliente.NOMBRE_CLIE + " " + cliente.APELLIDO_PAT_CLI;

            string     strFileName = System.IO.Path.GetFileName(comprobante.PostedFile.FileName);
            Attachment attachFile  = new Attachment(comprobante.PostedFile.InputStream, strFileName);
            mail.Attachments.Add(attachFile);

            SmtpServer.Send(mail);

            Page.Response.Redirect(Page.Request.Url.ToString() + "&send=true", true);
        }
        catch (Exception ex)
        {
            MostrarModal("Atención", "No se ha podido conectar con el servidor de correo");
        }
    }
    protected void QuitarPaquete_Click(object sender, EventArgs e)
    {
        decimal        idPaquete = decimal.Parse(idPaqueteTuristico.Value);
        EntitiesOnTour bd        = new EntitiesOnTour();

        var servciosPaquete = (from servicio in bd.SERVICIO
                               join servicio_paquete in bd.SERVICIO_PAQUETE on servicio.ID_SERVICIO equals servicio_paquete.ID_SERVICIO
                               where servicio_paquete.ID_PAQUETEVIAJE == idPaquete
                               select new { Servicio = servicio }).ToList();

        int restaTotal = 0;

        foreach (var item in servciosPaquete)
        {
            string jsonServicioWS;
            switch (item.Servicio.ID_TIPO_SERVICIO)
            {
            case 1:
                jsonServicioWS = getJSONVuelosConID(item.Servicio.ID_SERVICIO_WS);
                dynamic dynJsonVuelos = JsonConvert.DeserializeObject(jsonServicioWS);
                foreach (var servicioWS in dynJsonVuelos)
                {
                    string valorstrWS = servicioWS.precio;
                    int    valorWS    = int.Parse(valorstrWS);
                    restaTotal += valorWS;
                }
                break;

            case 2:
                jsonServicioWS = getJSONBusesConID(item.Servicio.ID_SERVICIO_WS);
                dynamic dynJsonBuses = JsonConvert.DeserializeObject(jsonServicioWS);
                foreach (var servicioWS in dynJsonBuses)
                {
                    string valorstrWS = servicioWS.precio;
                    int    valorWS    = int.Parse(valorstrWS);
                    restaTotal += valorWS;
                }
                break;

            case 3:
                jsonServicioWS = getJSONAlojamientoConID(item.Servicio.ID_SERVICIO_WS);
                dynamic dynJsonAlojamiento = JsonConvert.DeserializeObject(jsonServicioWS);
                foreach (var servicioWS in dynJsonAlojamiento)
                {
                    string valorstrWS = servicioWS.h_precio;
                    int    valorWS    = int.Parse(valorstrWS);
                    restaTotal += valorWS;
                }
                break;

            case 4:
                jsonServicioWS = getJSONSegurosConId(item.Servicio.ID_SERVICIO_WS);
                dynamic dynJsonSeguro = JsonConvert.DeserializeObject(jsonServicioWS);
                foreach (var servicioWS in dynJsonSeguro)
                {
                    string valorstrWS = servicioWS.se_precio;
                    int    valorWS    = int.Parse(valorstrWS);
                    restaTotal += valorWS;
                }
                break;
            }
        }

        string   idContratoActual = Request.QueryString["id_contrato"];
        decimal  idContrato       = int.Parse(idContratoActual);
        CONTRATO contrato         = bd.CONTRATO.FirstOrDefault(x => x.ID_CONTRATO == idContrato);

        contrato.META -= restaTotal;

        bd.SP_ELIMINAPAQUETEVIAJECONTRATO(idPaquete);
        bd.SP_ELIMINAPAQUETEVIAJE(idPaquete);
        bd.SaveChanges();
        Page.Response.Redirect(Page.Request.Url.ToString(), true);
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        if (Session["Usuario"] == null)
        {
            Response.Redirect("~/View/Login.aspx");
        }
        else
        {
            string  idContratoActual = Request.QueryString["id_contrato"];
            decimal idContrato       = int.Parse(idContratoActual);

            EntitiesOnTour bd       = new EntitiesOnTour();
            decimal        id       = int.Parse(Request.QueryString["ID_CONTRATO"]);
            var            clientes = (from contrato in bd.CONTRATO
                                       join cue in bd.CUENTA on contrato.ID_CONTRATO equals cue.ID_CONTRATO
                                       join clie in bd.CLIENTE on cue.NUMRUT_CLI equals clie.NUMRUT_CLI
                                       where contrato.ID_CONTRATO == id
                                       where cue.ACTIVO == "T"
                                       select new { Cliente = clie }).ToList();
            repeaterPasajeros.DataSource = clientes;
            repeaterPasajeros.DataBind();

            //Cargar paquete turisticos
            var listadoContratos = bd.CONTRATO_PAQUETE.Where(w => w.ID_CONTRATO == idContrato && w.ACTIVO == "T").ToList();
            foreach (var contrato in listadoContratos)
            {
                var listadoServicios = from servicio in bd.SERVICIO
                                       join servicio_paquete in bd.SERVICIO_PAQUETE on servicio.ID_SERVICIO equals servicio_paquete.ID_SERVICIO
                                       where servicio_paquete.ID_PAQUETEVIAJE == contrato.ID_PAQUETEVIAJE
                                       where servicio_paquete.ACTIVO.Equals("T")
                                       orderby servicio.ID_TIPO_SERVICIO ascending
                                       select new { Servicio = servicio, Servicio_Paquete = servicio_paquete };

                Button btnBorrarPaquete = new Button();
                btnBorrarPaquete.ID              = "botonBorrarPaquete" + contrato.ID_PAQUETEVIAJE;
                btnBorrarPaquete.Text            = "Borrar paquete turístico";
                btnBorrarPaquete.CssClass        = "btn btn-danger btn-borrar-paquete-turistico";
                btnBorrarPaquete.CommandArgument = contrato.ID_PAQUETEVIAJE.ToString();
                btnBorrarPaquete.Click          += new EventHandler(botonBorrarPaquete_Click);
                string yourHTMLstring = "<div class='row bg-paquete modificar-contrato'><div class='col-xs-12'>";

                foreach (var servicio in listadoServicios)
                {
                    decimal id_ws = servicio.Servicio.ID_SERVICIO_WS;
                    switch (servicio.Servicio.ID_TIPO_SERVICIO)
                    {
                    case 1:    //vuelo
                        var     jsonVuelos    = getJSONVuelosConID(id_ws);
                        dynamic dynJsonVuelos = JsonConvert.DeserializeObject(jsonVuelos);
                        if (dynJsonVuelos.First == null)
                        {
                            throw new Exception("No hay fechas disponibles, por favor seleccione otro destino");
                        }
                        foreach (var item in dynJsonVuelos)
                        {
                            yourHTMLstring += "<div class='box box-cuerpo'><div class='col-xs-3 padding-left-0'><div class='box-encabezado'><h3><i class='glyphicon glyphicon-plane'></i> Viaje a " + item.d_ciudad + "</h3></div></div><div class='col-xs-3'><span class='terminal'>" + item.o_terminal + "</span><span class='ciudad'>" + item.o_ciudad + ", " + item.o_pais + "</span><span class='hora'>" + item.salida + "</span></div><div class='col-xs-1'><i class='glyphicon glyphicon-menu-right big-icon'></i></div><div class='col-xs-3'><span class='terminal'>" + item.d_terminal + "</span><span class='ciudad'>" + item.d_ciudad + ", " + item.d_pais + "</span></div></div>";
                        }
                        break;

                    case 2:    //bus
                        var     jsonBuses    = getJSONBusesConID(id_ws);
                        dynamic dynJsonBuses = JsonConvert.DeserializeObject(jsonBuses);

                        if (dynJsonBuses.First == null)
                        {
                            throw new Exception("No hay fechas disponibles, por favor seleccione otro destino");
                        }
                        foreach (var item in dynJsonBuses)
                        {
                            yourHTMLstring += "<div class='box box-cuerpo'><div class='col-xs-3 padding-left-0'><div class='box-encabezado'><h3><i class='glyphicon glyphicon-plane'></i> Viaje a " + item.o_ciudad + "</h3></div></div><div class='col-xs-3'><span class='terminal'>" + item.o_terminal + "</span><span class='ciudad'>" + item.o_ciudad + ", " + item.o_pais + "</span><span class='hora'>" + item.salida + "</span></div><div class='col-xs-1'><i class='glyphicon glyphicon-menu-right big-icon'></i></div><div class='col-xs-3'><span class='terminal'>" + item.d_terminal + "</span><span class='ciudad'>" + item.d_ciudad + ", " + item.d_pais + "</span></div></div>";
                        }
                        break;

                    case 3:    //estadia
                        var     jsonAlojamientos    = getJSONAlojamientoConID(id_ws);
                        dynamic dynJsonAlojamientos = JsonConvert.DeserializeObject(jsonAlojamientos);
                        foreach (var itemAloj in dynJsonAlojamientos)
                        {
                            yourHTMLstring += "<div class='box box-cuerpo'><div class='col-xs-3 padding-left-0'><div class='box-encabezado'><h3><i class='glyphicon glyphicon-bed'></i> Estadía en " + itemAloj.h_ciudad + "</h3></div></div><div class='col-xs-3'><span class='terminal'>" + itemAloj.h_nombre + "</span><span class='ciudad'>" + itemAloj.h_direccion + "</span></div><div class='col-xs-6'><h5>Servicios disponibles</h5><span class='descripcion_estadia'>" + itemAloj.h_servicios + "</span></div></div>";
                        }
                        break;

                    case 4:    //seguro
                        var     jsonSeguros    = getJSONSegurosConId(id_ws);
                        dynamic dynJsonSeguros = JsonConvert.DeserializeObject(jsonSeguros);
                        foreach (var itemSeg in dynJsonSeguros)
                        {
                            yourHTMLstring += "<div class='box box-cuerpo'><div class='col-xs-3 padding-left-0'><div class='box-encabezado'><h3><i class='glyphicon glyphicon-lock'></i> Seguros</h3></div></div><div class='col-xs-3'><span class='terminal'>" + itemSeg.se_nombre + "</span><span class='ciudad'>" + itemSeg.se_empresa + "</span><span>Vigencia: " + itemSeg.se_vigencia + "</span></div><div class='col-xs-6'><h5>Descripción</h5> <span class='descripcion_estadia'>" + itemSeg.se_desc + "</span></div></div>";
                        }
                        break;

                    case 5:    //actividades
                        break;
                    }
                }
                yourHTMLstring += "</div></div>";
                PaquetesContratados.Controls.Add(new LiteralControl(yourHTMLstring));
                PaquetesContratados.Controls.Add(btnBorrarPaquete);
            }
        }
    }
示例#25
0
    protected void ButtonCargarMandante_Click(object sender, EventArgs e)
    {
        try
        {
            LabelAviso.Text = "";
            EntitiesOnTour bd = new EntitiesOnTour();

            decimal numrut      = Decimal.Parse(rutMandanteBuscar.Text);
            string  dv          = rutMandanteBuscardv.Text;
            string  rutCompleto = numrut + dv;

            Librerias librerias = new Librerias();
            bool      rutValido = librerias.validarRut(rutCompleto); //Validación de Rut
            if (!rutValido)
            {
                throw new Exception("El rut ingresado no es válido.");
            }
            int     numrutMandante = int.Parse(rutMandanteBuscar.Text);
            CLIENTE cliente        = bd.CLIENTE.FirstOrDefault(t => t.NUMRUT_CLI == numrutMandante);
            if (cliente == null)
            {
                txtNombre.Text              = "";
                txtApellidoP.Text           = "";
                txtApellidoM.Text           = "";
                txtFecha.Text               = "";
                txtMail.Text                = "";
                txtTelefono.Text            = "";
                txtDireccion.Text           = "";
                txtNombre.Enabled           = true;
                txtApellidoP.Enabled        = true;
                txtApellidoM.Enabled        = true;
                txtFecha.Enabled            = true;
                txtMail.Enabled             = true;
                txtTelefono.Enabled         = true;
                txtDireccion.Enabled        = true;
                txtFecha.Visible            = true;
                LabelFecNacimiento.Visible  = true;
                rutMandanteBuscar.Enabled   = false;
                rutMandanteBuscardv.Enabled = false;
                txtInicio.Enabled           = false;
                txtFin.Enabled              = false;
                throw new Exception("El rut ingresado no existe en la base de datos.");
            }
            lblFechaStr.Visible        = true;
            txtFechaStr.Visible        = true;
            txtFechaStr.Enabled        = false;
            txtFecha.Visible           = false;
            LabelFecNacimiento.Visible = false;

            //Llenado de textbox
            txtNombre.Text    = cliente.NOMBRE_CLIE;
            txtApellidoP.Text = cliente.APELLIDO_PAT_CLI;
            txtApellidoM.Text = cliente.APELLIDO_MAT_CLI;
            txtFecha.Text     = cliente.FECHA_NACIMIENTO_CLI.Value.ToString();

            DateTime fec = DateTime.Parse(cliente.FECHA_NACIMIENTO_CLI.ToString());
            txtFechaStr.Text = fec.ToShortDateString();

            txtMail.Text      = cliente.MAIL_CLI;
            txtTelefono.Text  = cliente.FONO_CLI.ToString();
            txtDireccion.Text = cliente.DIRECCION_CLI;
            //Deshabilitar para evitar modificar datos de mandante
            txtNombre.Enabled    = false;
            txtApellidoP.Enabled = false;
            txtApellidoM.Enabled = false;
            txtFecha.Enabled     = false;
            txtMail.Enabled      = false;
            txtTelefono.Enabled  = false;
            txtDireccion.Enabled = false;
        }
        catch (Exception ex)
        {
            MostrarModal("Atención", ex.Message);
        }
    }
示例#26
0
    protected void btnRegistrar_Click(object sender, EventArgs e)
    {
        try
        {
            EntitiesOnTour bd = new EntitiesOnTour();
            //Usado para guardar contrato con el empleado actual
            String   usuario            = Session["Usuario"].ToString();
            USUARIO  usuarioObj         = bd.USUARIO.FirstOrDefault(it => it.LOGIN_USR == usuario); //User del empleado
            EMPLEADO empleadoObj        = bd.EMPLEADO.FirstOrDefault(it => it.ID_USR == usuarioObj.ID_USR);
            String   numrutEmpleadoTemp = empleadoObj.NUMRUT_EMP.ToString();
            int      numrutEmpleado     = int.Parse(numrutEmpleadoTemp);

            Librerias librerias = new Librerias();
            //Agregar Mandante

            int    rutMandante = int.Parse(rutMandanteBuscar.Text.Trim());
            String dv          = rutMandanteBuscardv.Text.Trim().ToUpper();
            String rutCompleto = rutMandante + dv;

            bool rutValido = librerias.validarRut(rutCompleto); //Validación de Rut
            if (!rutValido)
            {
                throw new Exception("El rut ingresado no es válido.");
            }
            if (bd.CLIENTE.Any(it => it.NUMRUT_CLI == rutMandante) && txtNombre.Enabled)
            {
                throw new Exception("El cliente ya existe en la base de datos.");
            }

            String   nombre          = txtNombre.Text.Trim();
            String   apellidoP       = txtApellidoP.Text.Trim();
            String   apellidoM       = txtApellidoM.Text.Trim();
            DateTime fechaNacimiento = DateTime.Parse(txtFecha.Text);
            DateTime hoy             = DateTime.Now;
            txtHoy.Text = hoy.ToShortDateString();
            if (fechaNacimiento > hoy)
            {
                ValidadorFecNac.Text = "Fecha Invalida";
                throw new Exception("La fecha de nacimiento ingresada no es válida.");
            }
            String mail      = txtMail.Text.Trim();
            String telefono  = txtTelefono.Text;
            String direccion = txtDireccion.Text.Trim();
            String activo    = "T"; //Por defecto

            if (txtNombre.Enabled)
            {
                bd.SP_INSERTCLIENTE(rutMandante, dv, nombre, apellidoP, apellidoM, mail, activo, direccion, fechaNacimiento, telefono);
            }

            DateTime fechInicio   = DateTime.Parse(txtInicio.Text);
            DateTime fechTermino  = DateTime.Parse(txtFin.Text);
            int      meta         = 0;
            int      montoReserva = 0;
            String   estado       = "T"; //Por defecto, T Será cuando se complete y F cuando se cancele
                                         //int numrutEmpleado = int.Parse(empleadoObj.NUMRUT_EMP.ToString()); // Sesión usuario

            bd.SP_INSERTCONTRATO(fechInicio, fechTermino, meta, montoReserva, estado, numrutEmpleado, rutMandante);
            bd.SaveChanges();
            CONTRATO contrato = bd.CONTRATO.FirstOrDefault(t => t.FECHA_INICIO == fechInicio && t.NUMRUT_CLI_TITULAR == rutMandante);
            bd.SP_INSERTARCUENTA(0, contrato.ID_CONTRATO, rutMandante, estado); //Sigue el estandar P del contrato
            bd.SaveChanges();
            Response.Redirect("ModificarContrato.aspx?ID_CONTRATO=" + contrato.ID_CONTRATO, false);
        }
        catch (Exception ex)
        {
            MostrarModal("Atención", ex.Message);
        }
    }