private void EditProfile_Load(object sender, EventArgs e) { if (CurrentUser == null) { MessageBox.Show("Datos Inválidos. \n" + "Necesita acceder por el menu principal después de iniciar sesión.\n" + "En caso contrario, comuniquese con soporte técnico.", "Datos Inválidos", MessageBoxButtons.OK, MessageBoxIcon.Error); this.Close(); } else { MDC_LocalDBEntities localDBEntity = new MDC_LocalDBEntities(); foreach (GetCajero_Result datosUsuario in localDBEntity.GetCajero(CurrentUser.Usuario)) { textUsuario.Text = datosUsuario.Usuario; textClave.Text = ""; textClave_2.Text = ""; textNombre.Text = datosUsuario.Nombre; textCorreo.Text = datosUsuario.Correo; textSucursal.Text = datosUsuario.Sucursal; //Esto servirá para saber a quien le actualizamos los valores: detalles_cajero = localDBEntity.Cajeros.Find(datosUsuario.ID); detectedChanges = false; break; } } }
private void ButtonAcceso_Click(object sender, EventArgs e) { using (MDC_LocalDBEntities localDBEntity = new MDC_LocalDBEntities()) { foreach (ValidaCajero_Result usuario in localDBEntity.ValidaCajero(UserTXT.Text, PassTXT.Text)) { if (usuario != null) { Logger.Info($"{usuario.Usuario} acaba de iniciar sesión."); //Esto manda el nombre del cajero/a y la sucursal al menu principal. CajaMenuPrincipal Menu = new CajaMenuPrincipal(usuario); this.Hide(); //Esconde esta ventana. Menu.Show(); //Muestra el menu return; //Termina el ciclo y sale del metodo. } } if (!localDBEntity.Database.Exists()) { ValidaCajero_Result usuario = new CajeroEspecial(); Logger.Info($"{usuario.Usuario} acaba de iniciar sesión."); //Esto manda el nombre del cajero/a y la sucursal al menu principal. CajaMenuPrincipal Menu = new CajaMenuPrincipal(usuario); this.Hide(); //Esconde esta ventana. Menu.Show(); //Muestra el menu return; //Termina el ciclo y sale del metodo. } //Si llegó a este punto, entonces el usuario y/o contraseña están invalidos, //... o hay errores de conexion con la DB. MessageBox.Show("Usuario y/o contraseña inválidos.", "Credenciales incorrectos", MessageBoxButtons.OK); UserTXT.Focus(); } }
private void buttonGuardar_Click(object sender, EventArgs e) { using (MDC_LocalDBEntities localDBEntity = new MDC_LocalDBEntities()) { if (textUsuario.Text == "") { textUsuario.Focus(); } else if (textClave.Text == "") { textClave.Focus(); } else if (textNombre.Text == "") { textNombre.Focus(); } else if (textCorreo.Text == "") { textCorreo.Focus(); } else if (textSucursal.Text == "") { textSucursal.Focus(); } else if (isAdminBox.Checked) { //Validate user's credentials. } else if (localDBEntity.Cajeros.Where(d => d.Usuario == textUsuario.Text).Count() > 0) { MessageBox.Show("El nombre de usuario ya existe.", "Datos inválidos", MessageBoxButtons.OK, MessageBoxIcon.Error); textUsuario.Focus(); } else { //si todos tienen sus datos... Cajeros nuevo_cajero = new Cajeros() { Usuario = textUsuario.Text, Clave = textClave.Text, Nombre = textNombre.Text, Correo = textCorreo.Text, Sucursal = textSucursal.Text, isAdmin = isAdminBox.Checked }; localDBEntity.Cajeros.Add(nuevo_cajero); localDBEntity.SaveChangesAsync(); safeToClose = true; MessageBox.Show( "Usuario agregado satisfactoriamente.", "Completado con Exito", MessageBoxButtons.OK, MessageBoxIcon.Information); this.Close(); } } }
private void CashInputButton_Click(object sender, EventArgs e) { CashInputForm inputForm = new CashInputForm(); decimal montoAgregado = 0; bool addedCash = false; if (inputForm.ShowDialog(this) == DialogResult.OK) { //formato: $900,000,000,000,000.00 addedCash = true; montoAgregado = inputForm.Monto.Value; } //Realizado de esta forma porque Entity Framework no permite varias ventanas al mismo tiempo, //... cuando se ejecutará una transacción SQL. if (addedCash) { inputForm.Close(); inputForm.Dispose(); using (MDC_LocalDBEntities localDBEntity = new MDC_LocalDBEntities()) { int id_cuadre = -1; foreach (var data in localDBEntity.CuadreDiario) { if (data.Fecha.Date == DateTime.Now.Date) { id_cuadre = data.ID; break; } } int id_cajero = -1; foreach (var data in localDBEntity.GetCajero(CurrentUser.Usuario)) { id_cajero = data.ID; break; } decimal BalanceActual = Decimal.Parse(BalanceActualLabel.Text, NumberStyles.Currency); var entrada = new HistorialTransacciones() { IDCajero = id_cajero, IDCuadre = id_cuadre, Fecha_Hora = DateTime.Now, Tipo = "Entrada", Monto = montoAgregado //M: Tipo Decimal }; localDBEntity.HistorialTransacciones.Add(entrada); localDBEntity.SaveChanges(); Logger.Info($"Han entrado {montoAgregado.ToString("C")} a la caja."); BalanceActualLabel.Text = (BalanceActual + montoAgregado).ToString("C"); } } }
private void CajaMenuPrincipal_Load(object sender, EventArgs e) { using (MDC_LocalDBEntities localDBEntity = new MDC_LocalDBEntities()) { int id_cuadre = -1; decimal monto = 0; foreach (var data in localDBEntity.CuadreDiario) { if (data.Fecha.Date == DateTime.Now.Date) { id_cuadre = data.ID; monto = data.Monto_Inicio; break; } } if (id_cuadre != -1) { foreach (var data in localDBEntity.HistorialTransacciones.Where(d => d.IDCuadre == id_cuadre)) { monto += data.Monto; } BalanceActualLabel.Text = monto.ToString("C"); return; } /* * foreach(var data in localDBEntity.CuadreDiario) { * if (data.Fecha.Date == DateTime.Now.Date) { * if(data.Monto_Fin != null) * BalanceActualLabel.Text = data.Monto_Fin?.ToString("C"); * return; * } * }*/ //Si llega a este significa que no ha iniciado el cuadre del dia. CuadreDiario detalles_cuadre = new CuadreDiario { Monto_Inicio = new Random().Next(20, 100) * 1000, Fecha = DateTime.Now.Date }; detalles_cuadre.Monto_Fin = detalles_cuadre.Monto_Inicio; localDBEntity.CuadreDiario.Add(detalles_cuadre); //Logger.Debug($"{detalles_cuadre.Fecha.ToShortDateString()} - {detalles_cuadre.Monto_Inicio}"); //Logger.Debug($"{detalles_cuadre.ID} - ID antes del cambio."); localDBEntity.SaveChanges(); //Logger.Debug($"{detalles_cuadre.ID} - ID después del cambio."); string message = $"Dia inició con {detalles_cuadre.Monto_Inicio.ToString("C")} en caja."; BalanceActualLabel.Text = detalles_cuadre.Monto_Inicio.ToString("C"); MessageBox.Show(message, "Inicio de la jornada", MessageBoxButtons.OK, MessageBoxIcon.Information); Logger.Info(message); } }
private void buttonGuardar_Click(object sender, EventArgs e) { using (MDC_LocalDBEntities localDBEntity = new MDC_LocalDBEntities()) { if (textClave.Text == "") { MessageBox.Show("Debe digitar su contraseña para guardar los cambios.", "Error de autenticación.", MessageBoxButtons.OK, MessageBoxIcon.Information); textClave.Focus(); } else if (textClave.Text != detalles_cajero?.Clave) { MessageBox.Show("Contraseña inválida. Verifique su contraseña.", "Error de autenticación.", MessageBoxButtons.OK, MessageBoxIcon.Error); textClave.Focus(); } else { //SaveChanges. var data = localDBEntity.Cajeros.Where(d => d.ID == detalles_cajero.ID); if (data.Count() > 0) { detalles_cajero = data.First(); } detalles_cajero.Usuario = textUsuario.Text; //Si puso una nueva contraseña, guarda la nueva... sino, pues no. if (textClave_2.Text == "") { detalles_cajero.Clave = textClave.Text; } else { detalles_cajero.Clave = textClave_2.Text; } detalles_cajero.Nombre = textNombre.Text; detalles_cajero.Correo = textCorreo.Text; detalles_cajero.Sucursal = textSucursal.Text; localDBEntity.SaveChangesAsync(); detectedChanges = false; MessageBox.Show("Cambios guardados satisfactoriamente.\n" + "Para ver los cambios, cierre la sesión y vuelva a ingresar.", "Exito", MessageBoxButtons.OK); this.Close(); } } }
private void FinalDelDia_Load(object sender, EventArgs e) { int DateID = -1; using (MDC_LocalDBEntities localDBEntity = new MDC_LocalDBEntities()) { localDBEntity.DetallesCuadre.Load(); this.detallesCuadreBindingSource.DataSource = localDBEntity.DetallesCuadre.Local.ToBindingList(); foreach (var data in localDBEntity.CuadreDiario) { if (data.Fecha.Date == DateTime.Now.Date) { DateID = data.ID; break; } } CuadreDiario datos_cuadre = localDBEntity.CuadreDiario.Find(DateID); DateLabel.Text = datos_cuadre.Fecha.ToShortDateString(); MontoInicioLabel.Text = datos_cuadre.Monto_Inicio.ToString("C"); MontoFinLabel.Text = datos_cuadre.Monto_Fin?.ToString("C"); } }
private void CentroCuadres_Load(object sender, EventArgs e) { localDBEntity = new MDC_LocalDBEntities(); localDBEntity.DetallesCuadre.Load(); this.detallesCuadreBindingSource.DataSource = localDBEntity.DetallesCuadre.Local.ToBindingList(); dataGridView1.Sort(dataGridView1.Columns[1], ListSortDirection.Ascending); //Columna 1 = Fecha/Hora //Toma todas las fechas, y busca la más antigua y la más reciente. var dateTimes = dataGridView1.Rows.Cast <DataGridViewRow>() .Select(x => (DateTime)x.Cells[1].Value); //Columna 1 = Fecha_Hora var minValue = dateTimes.Min(); var maxValue = dateTimes.Max(); Fecha_Inicio.Value = maxValue; Fecha_Inicio.MinDate = minValue; Fecha_Inicio.MaxDate = maxValue; Fecha_Fin.Value = maxValue; Fecha_Fin.MinDate = minValue; Fecha_Fin.MaxDate = maxValue; //// Manejo de Fechas ^^^ }
private void FinalizarCuadreButton_Click(object sender, EventArgs e) { int DateID = -1; using (MDC_LocalDBEntities localDBEntity = new MDC_LocalDBEntities()) { foreach (var data in localDBEntity.CuadreDiario) { if (data.Fecha.Date == DateTime.Now.Date) { DateID = data.ID; break; } } decimal BalanceActual = Decimal.Parse(BalanceActualLabel.Text, NumberStyles.Currency); CuadreDiario datos_cuadre = localDBEntity.CuadreDiario.Find(DateID); datos_cuadre.Monto_Fin = BalanceActual; localDBEntity.SaveChanges(); Logger.Info($"Caja cerrada con {BalanceActual}."); FinalDelDia formFin = new FinalDelDia(); this.Hide(); formFin.Show(); } }
private void button1_Click(object sender, EventArgs e) { if (textBox1.Text != "" && textBox2.Text != "" && textBox3.Value != 0) { string nombre = textBox1.Text; string NumeroCuenta = textBox2.Text; decimal monto = textBox3.Value; DialogResult dr2 = MessageBox.Show("¿Esta seguro de que estos son los datos correctos?", "Confirmacion de datos ", MessageBoxButtons.YesNo); if (dr2 == DialogResult.Yes) { var context = new MDC_LocalDBEntities(); var deposito = new DepositoDatos() { Benefactor = nombre, Especificaciones = Convert.ToString(textBox4).Remove(0, 36), Monto = monto, Fecha = DateTime.Now, Nro_de_Cuenta = NumeroCuenta }; //**** Sección de Cuadre ****// int id_cuadre = -1; foreach (var data in context.CuadreDiario) { if (data.Fecha.Date == DateTime.Now.Date) { id_cuadre = data.ID; break; } } int id_cajero = -1; foreach (var data in context.GetCajero(CurrentUser.Usuario)) { id_cajero = data.ID; break; } if (id_cuadre != -1 && id_cajero != -1) { var transaccion = new HistorialTransacciones() { IDCajero = id_cajero, IDCuadre = id_cuadre, Fecha_Hora = DateTime.Now, Tipo = "Deposito", Monto = monto, }; context.HistorialTransacciones.Add(transaccion); } Logger.Info($"Han sido depositados {monto.ToString("C")} a la caja."); //**** Sección de Cuadre ****// if (label7.Text == "Conectado") { string con = "Data Source=banquito.database.windows.net;initial catalog=DataBaseCore;persist security info=True;user id=lcabrera;password=cabreraL10"; SqlConnection prueba = new SqlConnection(); prueba.ConnectionString = con; prueba.Open(); SqlCommand check_User_Name = new SqlCommand("SELECT COUNT(*) FROM [tblCuenta] WHERE (id_cuenta = @user)", prueba); check_User_Name.Parameters.AddWithValue("@user", textBox2.Text); int UserExist = (int)check_User_Name.ExecuteScalar(); if (UserExist > 0) { SqlCommand insertCommand = new SqlCommand("INSERT INTO tblMoviminetos (Fecha, id_transaccion, Monto, Tipo_transaccion) VALUES (@0, @1, @2, @3)", prueba); insertCommand.Parameters.Add(new SqlParameter("0", deposito.Fecha)); insertCommand.Parameters.Add(new SqlParameter("1", deposito.ID)); insertCommand.Parameters.Add(new SqlParameter("2", deposito.Monto)); insertCommand.Parameters.Add(new SqlParameter("3", "Deposito")); insertCommand.ExecuteNonQuery(); prueba.Close(); MessageBox.Show("Deposito realizado con exito"); ReciboDeposito form_ReciboDConectado = new ReciboDeposito(deposito.ID); this.Hide(); form_ReciboDConectado.Show(); } else { MessageBox.Show("El numero de cuenta no existe, por favor inserte un numero de cuenta valido"); } } else { context.DepositoDatos.Add(deposito); MessageBox.Show("Deposito fuera de linea realizado con exito"); ReciboDeposito form_ReciboDesconectado = new ReciboDeposito(deposito.ID); this.Hide(); form_ReciboDesconectado.Show(); } context.SaveChanges(); } } else { DialogResult dr2 = MessageBox.Show("Parece que algun campo se quedo vacio. Por favor introduzca todos los datos", "Datos no introducidos", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
private void button1_Click(object sender, EventArgs e) { if (textBox1.Value != 0) { DialogResult dr2 = MessageBox.Show("¿Esta seguro de que estos son los datos correctos?", "Confirmacion de datos ", MessageBoxButtons.YesNo); if (dr2 == DialogResult.Yes) { var context = new MDC_LocalDBEntities(); //**** Sección de Cuadre ****// int id_cuadre = -1; foreach (var data in context.CuadreDiario) { if (data.Fecha.Date == DateTime.Now.Date) { id_cuadre = data.ID; break; } } int id_cajero = -1; foreach (var data in context.GetCajero(CurrentUser.Usuario)) { id_cajero = data.ID; break; } if (id_cuadre != -1 && id_cajero != -1) { ///**** Verificacion de Balance Suficiente (en la caja) ****/// if (textBox1.Value > BalanceCaja) { var entrada = new HistorialTransacciones() { IDCajero = id_cajero, IDCuadre = id_cuadre, Fecha_Hora = DateTime.Now, Tipo = "Entrada", Monto = textBox1.Value * 1.5M //M: Tipo Decimal }; context.HistorialTransacciones.Add(entrada); } ///**** Verificacion de Balance Suficiente (en la caja) ****/// var transaccion = new HistorialTransacciones() { IDCajero = id_cajero, IDCuadre = id_cuadre, Fecha_Hora = DateTime.Now, Tipo = "Retiro", Monto = -textBox1.Value }; context.HistorialTransacciones.Add(transaccion); context.SaveChanges(); } //**** Sección de Cuadre ****// if (label6.Text == "Conectado") { string con = "Data Source=banquito.database.windows.net;initial catalog=DataBaseCore;persist security info=True;user id=lcabrera;password=cabreraL10"; SqlConnection prueba = new SqlConnection(); prueba.ConnectionString = con; Random rnd = new Random(); prueba.Open(); var retiro = new DepositoDatos() { Benefactor = "", Especificaciones = Convert.ToString(textBox2).Remove(0, 36), Monto = Convert.ToDecimal(textBox1.Text), Fecha = DateTime.Now, Nro_de_Cuenta = comboBox1.Text }; SqlCommand check_User_Name = new SqlCommand("SELECT COUNT(*) FROM [tblCuenta] WHERE (id_cuenta = @user)", prueba); check_User_Name.Parameters.AddWithValue("@user", comboBox1.Text); int UserExist = (int)check_User_Name.ExecuteScalar(); if (UserExist > 0) { SqlCommand insertCommand = new SqlCommand("INSERT INTO tblMoviminetos (Fecha, id_transaccion, Monto, Tipo_transaccion) VALUES (@0, @1, @2, @3)", prueba); insertCommand.Parameters.Add(new SqlParameter("0", retiro.Fecha)); insertCommand.Parameters.Add(new SqlParameter("1", retiro.ID)); insertCommand.Parameters.Add(new SqlParameter("2", retiro.Monto)); insertCommand.Parameters.Add(new SqlParameter("3", "Retiro")); insertCommand.ExecuteNonQuery(); prueba.Close(); MessageBox.Show("Retiro realizado con exito"); ReciboDeposito form_ReciboDConectado = new ReciboDeposito(retiro.ID); this.Hide(); form_ReciboDConectado.Show(); } else { MessageBox.Show("Retiro fuera de linea realizado con exito"); CajaMenuPrincipal form_MainMenu = new CajaMenuPrincipal(CurrentUser); this.Hide(); form_MainMenu.Show(); } //OperacionesCliente form_OpClientes = new OperacionesCliente(); //this.Hide(); //form_OpClientes.Show(); } } } else { DialogResult dr = MessageBox.Show("Debe llenar los campos pertinentes.", "Accion Invalida", MessageBoxButtons.OK, MessageBoxIcon.Error); comboBox1.Focus(); } }