示例#1
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);
        }
    }
示例#2
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);
        }
    }