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"]; }
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); } }
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; } }
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."); } }
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."); } }
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); } }
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); } }
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); } }
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(); } }
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(); }
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); }
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(); }
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); } } }
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); } }
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); } }