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