internal void ImprimirPlanillaCierre(List<FilaPlanilla> filas, Totales totales, decimal efectivoInicial, decimal efectivoEnCaja, Conserje conserje, Label msjError) { try { string stockArt = ""; List<FilaListArt> articulosConsumidos = obtenerArticulosConsumidos(tools.obtenerParametroString("stockCierreCaja")); if (articulosConsumidos != null) { //-------- Listado Articulos stockArt = Settings.Default.listadoArtStock. Replace("##nmHotel", tools.obtenerParametroString("nombreHotel").PadRight(44)); foreach (FilaListArt fila in articulosConsumidos) { stockArt = stockArt + "\r\n" + fila.ToString(); } stockArt += "\r\n\r\n\r\n\r\n"; //-------- Fin Listado Articulos } //-------- Planilla cierre turnos string planillaCierre = Settings.Default.planillaCierre. Replace("##conserjeId", conserje.usuario.ToString().PadRight(7)). Replace("##conserjeNm", (conserje.nombre + " " + conserje.apellido).PadRight(20)). Replace("##fecha", String.Format("{0:ddd}", DateTime.Now).ToUpper() + " " + DateTime.Now.ToString("dd/MM/yyyy")). Replace("##hora", DateTime.Now.ToString("HH:mm")). Replace("##nroArq", obtenerNroPlanilla().ToString()); foreach (FilaPlanilla fila in filas) { planillaCierre = planillaCierre + "\r\n" + fila.ToString(); } planillaCierre += "\r\n" + "".PadRight(124, '=') + "\r\n" + String.Format("{0:N0}", totales.totalTurnos).PadLeft(41) + " " + String.Format("{0:N0}", totales.totalExtras).PadLeft(6) + " " + String.Format("{0:N0}", totales.totalBar).PadLeft(6) + " " + String.Format("{0:N0}", totales.totalDescuento).PadLeft(6) + " " + String.Format("{0:N0}", totales.totalTotal).PadLeft(8) + " " + String.Format("{0:N0}", totales.totalEfectivo).PadLeft(8) + " " + String.Format("{0:N0}", totales.totalTarjeta).PadLeft(8) + " " + String.Format("{0:N0}", totales.totalGastos).PadLeft(8) + "\r\n"; decimal ingEgre = totales.totalEfectivo - totales.totalGastos; planillaCierre += "\r\n" + "".PadLeft(70) + "Saldo Inicial : " + String.Format("{0:N0}", efectivoInicial).PadLeft(8) + "\r\n" + "".PadLeft(70) + "Ingreso-Egreso : " + String.Format("{0:N0}", ingEgre).PadLeft(8) + "\r\n" + "".PadLeft(70) + "Total en Caja : " + String.Format("{0:N0}", (efectivoInicial + ingEgre)).PadLeft(8) + "\r\n" + "".PadLeft(70) + "Deposito buzón : " + String.Format("{0:N0}", (efectivoInicial + ingEgre - efectivoEnCaja)).PadLeft(8) + "\r\n" + "".PadLeft(70) + "Queda en Caja : " + String.Format("{0:N0}", efectivoEnCaja).PadLeft(8); planillaCierre += "\r\n\r\n\r\n\r\n"; //------ Fin planilla cierre turno string ticketRopaConsumida = ""; if (tools.obtenerParametroInt("consumoRopaCierre") == 1) { //-------- Planilla Ropa Consumida ticketRopaConsumida = Settings.Default.listadoRopaConsumida; List<FilaRopaConsumida> ropaConsumida = obtenerRopaConsumida(); foreach (FilaRopaConsumida fila in ropaConsumida) { if (fila.categoria == "TOTAL") ticketRopaConsumida += "\r\n"; ticketRopaConsumida += fila.ToString() + "\r\n"; } //-------- Fin Planilla Ropa Consumida } try { string ticketSalida = stockArt + planillaCierre + ticketRopaConsumida; guardarArchivoTempCierreCaja(ticketSalida, out cantLineas); configurarImpresora(ref formulario, cantLineas, 9); formulario.PrinterSettings.PrinterName = obtenerImpresora("Caja");//Seleccionar impresora Caja formulario.Print(); } catch (Exception e) { msjError.Text = e.Message; } } catch (Exception ex) { msjError.Text = ex.Message; LoggerProxy.Error(ex.Message + " - " + ex.StackTrace); } }
private void confirmarImpresion() { using (SqlConnection conn = new SqlConnection(fPrincipal2.conn.ConnectionString)) { SqlTransaction transaccion = null; Totales totales = new Totales(); conn.Open(); transaccion = conn.BeginTransaction(IsolationLevel.RepeatableRead); try { this.contabilizarTurnosYGastos(conn, transaccion, totales); this.cerrarPlanillaCaja(totEfectivo, totTarjeta, conn, transaccion); this.abrirPlanillaCaja(efectivoEnCaja, tarjetaEnCaja, conserjeNuevo, conn, transaccion); if (tools.obtenerParametroInt("eliminarRegistros",conn,transaccion) == 1) eliminarTurnosCerrados(conn,transaccion); transaccion.Commit(); } catch (Exception ex) { transaccion.Rollback(); throw new Exception(ex.Message); } } }
private List<FilaPlanilla> contabilizarTurnosYGastos(SqlConnection con, SqlTransaction tran,Totales totales) { DataSet ds = new DataSet(); List<FilaPlanilla> filas = new List<FilaPlanilla>(); int nroOrd = 1; SqlDataAdapter dataAdapter = new SqlDataAdapter("cierresCajas_contabilizarTurnosCerrados", con); dataAdapter.SelectCommand.CommandType = CommandType.StoredProcedure; dataAdapter.SelectCommand.Transaction = tran; dataAdapter.Fill(ds); FilaPlanilla fila; foreach (DataRow dr in ds.Tables[0].Rows) { fila = new FilaPlanilla(dr, nroOrd); filas.Add(fila); totales.totalTurnos += fila.turnos; totales.totalExtras += fila.extras; totales.totalBar += fila.bar; totales.totalDescuento += fila.descuento; totales.totalTotal += fila.total; totales.totalEfectivo += fila.efectivo; totales.totalTarjeta += fila.tarjeta; nroOrd++; } dataAdapter.SelectCommand.CommandText = "cierresCajas_contabilizarTurnosAbiertos"; ds.Clear(); dataAdapter.Fill(ds); foreach (DataRow dr in ds.Tables[0].Rows) { fila = new FilaPlanilla(); fila.nro = nroOrd; fila.nroHab = int.Parse(dr["nroHabitacion"].ToString()); fila.desde = DateTime.Parse(dr["desde"].ToString()); fila.socio = "Adelanto"; decimal.TryParse(dr["efectivoCerrado"].ToString(),out fila.efectivo); decimal.TryParse(dr["tarjetaCerrado"].ToString(),out fila.tarjeta); filas.Add(fila); totales.totalEfectivo += fila.efectivo; totales.totalTarjeta += fila.tarjeta; nroOrd++; } dataAdapter.SelectCommand.CommandText = "cierresCajas_contabilizarGastos"; ds.Clear(); dataAdapter.Fill(ds); foreach (DataRow dr in ds.Tables[0].Rows) { fila = new FilaPlanilla(); fila.nro = 0; fila.nroHab = 0; fila.desde = DateTime.Parse(dr["fecha"].ToString()); fila.socio = dr["nombre"].ToString(); decimal.TryParse(dr["monto"].ToString(), out fila.gastos); filas.Add(fila); totales.totalGastos += fila.gastos; } return filas; }
private void confirmarCierre() { using (SqlConnection conn = new SqlConnection(fPrincipal2.conn.ConnectionString)) { SqlTransaction transaccion = null; Totales totales = new Totales(); conn.Open(); transaccion = conn.BeginTransaction(IsolationLevel.RepeatableRead); decimal efectivoInicialCierreActual = this.obtenerEfectivoInicialCierreActual(); try { List<FilaPlanilla> filas = this.contabilizarTurnosYGastos(conn, transaccion,totales); new Impresora().ImprimirPlanillaCierre(filas,totales,efectivoInicialCierreActual,efectivoEnCaja, ((fPrincipal2)this.Owner).conserjeActual,labelMensaje); transaccion.Rollback(); } catch (Exception ex) { transaccion.Rollback(); throw new Exception(ex.Message); } } }