diff --git a/dist/Programa Caja.jar b/dist/Programa Caja.jar index 67ba353..aaff2b2 100644 Binary files a/dist/Programa Caja.jar and b/dist/Programa Caja.jar differ diff --git a/src/danielcortes/xyz/controllers/EstadoResultadoController.java b/src/danielcortes/xyz/controllers/EstadoResultadoController.java index a09be7e..343e4ad 100644 --- a/src/danielcortes/xyz/controllers/EstadoResultadoController.java +++ b/src/danielcortes/xyz/controllers/EstadoResultadoController.java @@ -2,7 +2,7 @@ package danielcortes.xyz.controllers; import danielcortes.xyz.data.Configuration; import danielcortes.xyz.data.DAOManager; -import danielcortes.xyz.informes.InformeEstadoResultadoExcel; +import danielcortes.xyz.informes.InformeEstadoResultado; import danielcortes.xyz.models.estado_resultado.EstadoResultado; import danielcortes.xyz.models.estado_resultado.EstadoResultadoDAO; import danielcortes.xyz.models.tipo_egreso.TipoEgreso; @@ -131,7 +131,7 @@ public class EstadoResultadoController extends BaseController { return; } - InformeEstadoResultadoExcel estadoResultado = new InformeEstadoResultadoExcel(this.mes, saveFile); + InformeEstadoResultado estadoResultado = new InformeEstadoResultado(this.mes, saveFile); estadoResultado.generarInforme(); new InformeGeneratedConfirmation(saveFile).execute(); } diff --git a/src/danielcortes/xyz/controllers/InformesSideBarController.java b/src/danielcortes/xyz/controllers/InformesSideBarController.java index 10a9a99..a02d14e 100644 --- a/src/danielcortes/xyz/controllers/InformesSideBarController.java +++ b/src/danielcortes/xyz/controllers/InformesSideBarController.java @@ -25,9 +25,10 @@ package danielcortes.xyz.controllers; import danielcortes.xyz.data.Configuration; -import danielcortes.xyz.informes.InformeEgresosExcel; -import danielcortes.xyz.informes.InformeLibroDeVentasExcel; +import danielcortes.xyz.informes.InformeEgresos; +import danielcortes.xyz.informes.InformeLibroDeVentasToExcel; import danielcortes.xyz.models.tipo_egreso.TipoEgreso; +import danielcortes.xyz.utils.SaveFile; import danielcortes.xyz.utils.StringUtils; import danielcortes.xyz.views.InformesSideBar; import danielcortes.xyz.views.dialogs.InformeGeneratedConfirmation; @@ -37,6 +38,7 @@ import danielcortes.xyz.views.dialogs.XLSFileChooser; import java.nio.file.Path; import java.time.YearMonth; import java.time.format.DateTimeFormatter; +import org.apache.poi.ss.usermodel.Workbook; public class InformesSideBarController { @@ -75,8 +77,10 @@ public class InformesSideBarController { return; } - InformeLibroDeVentasExcel informe = new InformeLibroDeVentasExcel(month, saveFile); - informe.generarInforme(); + InformeLibroDeVentasToExcel informe = new InformeLibroDeVentasToExcel(month, saveFile); + Workbook wb = informe.generarInforme(); + + SaveFile.save(wb, saveFile); new InformeGeneratedConfirmation(saveFile).execute(); } @@ -102,7 +106,7 @@ public class InformesSideBarController { return; } - InformeEgresosExcel informe = new InformeEgresosExcel(tipoEgreso.getId(), month, saveFile); + InformeEgresos informe = new InformeEgresos(tipoEgreso.getId(), month, saveFile); Path generatedFile = informe.generarInforme(); new InformeGeneratedConfirmation(saveFile).execute(); diff --git a/src/danielcortes/xyz/data/DAOManager.java b/src/danielcortes/xyz/data/DAOManager.java index 606fc89..693424f 100644 --- a/src/danielcortes/xyz/data/DAOManager.java +++ b/src/danielcortes/xyz/data/DAOManager.java @@ -38,8 +38,6 @@ import danielcortes.xyz.models.estado_resultado.EstadoResultadoDAO; import danielcortes.xyz.models.estado_resultado.SQLiteEstadoResultadoDAO; import danielcortes.xyz.models.informes.egresos.InformeEgresosContentDAO; import danielcortes.xyz.models.informes.egresos.SQLiteInformeEgresosContentDAO; -import danielcortes.xyz.models.informes.libro_de_ventas.InformeLibroDeVentasContentDAO; -import danielcortes.xyz.models.informes.libro_de_ventas.SQLiteInformeLibroDeVentasContentDAO; import danielcortes.xyz.models.ingreso.IngresoDAO; import danielcortes.xyz.models.ingreso.SQLiteIngresoDAO; import danielcortes.xyz.models.tipo_egreso.SQLiteTipoEgresoDAO; @@ -57,7 +55,6 @@ public class DAOManager { private static final EfectivoDAO efectivoDAO; private static final EgresoDAO egresoDAO; private static final InformeEgresosContentDAO egresosContentDAO; - private static final InformeLibroDeVentasContentDAO libroDeVentasContentDAO; private static final IngresoDAO ingresoDAO; private static final TipoEgresoDAO tipoEgresoDAO; private static final TipoIngresoDAO tipoIngresoDAO; @@ -71,7 +68,6 @@ public class DAOManager { efectivoDAO = new SQLiteEfectivoDAO(); egresoDAO = new SQLiteEgresoDAO(); egresosContentDAO = new SQLiteInformeEgresosContentDAO(); - libroDeVentasContentDAO = new SQLiteInformeLibroDeVentasContentDAO(); ingresoDAO = new SQLiteIngresoDAO(); tipoEgresoDAO = new SQLiteTipoEgresoDAO(); tipoIngresoDAO = new SQLiteTipoIngresoDAO(); @@ -103,10 +99,6 @@ public class DAOManager { return egresosContentDAO; } - public static InformeLibroDeVentasContentDAO getLibroDeVentasContentDAO() { - return libroDeVentasContentDAO; - } - public static IngresoDAO getIngresoDAO() { return ingresoDAO; } diff --git a/src/danielcortes/xyz/informes/InformeLibroDeVentas.java b/src/danielcortes/xyz/informes/InformeLibroDeVentas.java new file mode 100644 index 0000000..0dbf16d --- /dev/null +++ b/src/danielcortes/xyz/informes/InformeLibroDeVentas.java @@ -0,0 +1,90 @@ +package danielcortes.xyz.informes; + +import danielcortes.xyz.data.DAOManager; +import danielcortes.xyz.models.caja.Caja; +import danielcortes.xyz.models.caja.CajaDAO; +import danielcortes.xyz.models.ingreso.IngresoDAO; +import danielcortes.xyz.models.tipo_ingreso.TipoIngreso; +import danielcortes.xyz.models.tipo_ingreso.TipoIngresoDAO; +import java.time.LocalDate; +import java.time.YearMonth; +import java.util.HashMap; + +public class InformeLibroDeVentas{ + HashMap informe; + private InformeLibroDeVentas(){} + + public LibroDeVentas get(LocalDate localDate){ + return informe.get(localDate); + } + + public int size(){ + return informe.size(); + } + + private void put(LocalDate date, LibroDeVentas libroDeVentas){ + this.informe.put(date, libroDeVentas); + } + + + public static InformeLibroDeVentas generate(YearMonth mes) { + InformeLibroDeVentas informeLibroDeVentas = new InformeLibroDeVentas(); + informeLibroDeVentas.informe = new HashMap<>(); + + LocalDate currentDate = mes.atDay(1); + LocalDate endDatePlusOne = mes.atEndOfMonth().plusDays(1); + + CajaDAO cajaDAO = DAOManager.getCajaDAO(); + IngresoDAO ingresoDAO = DAOManager.getIngresoDAO(); + TipoIngresoDAO tipoIngresoDAO = DAOManager.getTipoIngresoDAO(); + + TipoIngreso boletaFiscal = tipoIngresoDAO.findByNombre("Boletas Fiscales").get(0); + TipoIngreso boletaManual = tipoIngresoDAO.findByNombre("Boletas Manuales").get(0); + TipoIngreso boletaExenta = tipoIngresoDAO.findByNombre("Boleta Exenta").get(0); + TipoIngreso factura = tipoIngresoDAO.findByNombre("Facturas").get(0); + TipoIngreso guias = tipoIngresoDAO.findByNombre("Guias").get(0); + + while (currentDate.isBefore(endDatePlusOne)) { + Caja caja = cajaDAO.getByFecha(currentDate).orElse(Caja.EMPTY); + + LibroDeVentas data = new LibroDeVentas(); + informeLibroDeVentas.put(currentDate, data); + + data.setDia(currentDate.getDayOfWeek().getValue()); + data.setFecha(currentDate); + + data.setManuales(ingresoDAO.getTotalIngresoEnCajaPorTipo(caja, boletaManual)); + data.setManualesInicial( + ingresoDAO.getPrimerNroInicialDeCajaDeTipo(caja, boletaManual).orElse("0")); + data.setManualesFinal( + ingresoDAO.getUltimoNroFinalDeCajaDeTipo(caja, boletaManual).orElse("0")); + + data.setFiscales(ingresoDAO.getTotalIngresoEnCajaPorTipo(caja, boletaFiscal)); + data.setFiscalesInicial( + ingresoDAO.getPrimerNroInicialDeCajaDeTipo(caja, boletaFiscal).orElse("0")); + data.setFiscalesFinal( + ingresoDAO.getUltimoNroFinalDeCajaDeTipo(caja, boletaFiscal).orElse("0")); + data.setFiscalesZInicial(ingresoDAO.getPrimerNroZInicialDeCaja(caja).orElse("0")); + data.setFiscalesZFinal(ingresoDAO.getUltimoNroZFinalDeCaja(caja).orElse("0")); + + data.setExentas(ingresoDAO.getTotalIngresoEnCajaPorTipo(caja, boletaExenta)); + data.setExentasInicial( + ingresoDAO.getPrimerNroInicialDeCajaDeTipo(caja, boletaExenta).orElse("0")); + data.setExentasFinal( + ingresoDAO.getUltimoNroFinalDeCajaDeTipo(caja, boletaExenta).orElse("0")); + + data.setFacturas(ingresoDAO.getTotalIngresoEnCajaPorTipo(caja, factura)); + data.setFacturasInicial( + ingresoDAO.getPrimerNroInicialDeCajaDeTipo(caja, factura).orElse("0")); + data.setFacturasFinal(ingresoDAO.getUltimoNroFinalDeCajaDeTipo(caja, factura).orElse("0")); + + data.setGuias(ingresoDAO.getTotalIngresoEnCajaPorTipo(caja, guias)); + data.setGuiasInicial(ingresoDAO.getPrimerNroInicialDeCajaDeTipo(caja, guias).orElse("0")); + data.setGuiasFinal(ingresoDAO.getUltimoNroFinalDeCajaDeTipo(caja, guias).orElse("0")); + + currentDate = currentDate.plusDays(1); + } + + return informeLibroDeVentas; + } +} diff --git a/src/danielcortes/xyz/informes/InformeLibroDeVentasExcel.java b/src/danielcortes/xyz/informes/InformeLibroDeVentasToExcel.java similarity index 91% rename from src/danielcortes/xyz/informes/InformeLibroDeVentasExcel.java rename to src/danielcortes/xyz/informes/InformeLibroDeVentasToExcel.java index 35860cc..45a2a1c 100644 --- a/src/danielcortes/xyz/informes/InformeLibroDeVentasExcel.java +++ b/src/danielcortes/xyz/informes/InformeLibroDeVentasToExcel.java @@ -24,17 +24,11 @@ package danielcortes.xyz.informes; -import danielcortes.xyz.data.DAOManager; -import danielcortes.xyz.models.caja.SQLiteCajaDAO; -import danielcortes.xyz.models.informes.libro_de_ventas.InformeLibroDeVentasContent; -import java.io.IOException; -import java.io.OutputStream; -import java.nio.file.Files; import java.nio.file.Path; +import java.time.LocalDate; import java.time.YearMonth; import java.time.ZoneId; import java.util.ArrayList; -import java.util.Comparator; import java.util.Date; import java.util.HashMap; import java.util.Iterator; @@ -55,7 +49,7 @@ import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.ss.util.CellRangeAddress; import org.apache.poi.ss.util.PropertyTemplate; -public class InformeLibroDeVentasExcel { +public class InformeLibroDeVentasToExcel { private final String[] titles = { "", "", @@ -79,11 +73,12 @@ public class InformeLibroDeVentasExcel { "TOTAL", "ACUMULADO", "" }; - private final String[] dias = {"Domingo", "Lunes", "Martes", "Miercoles", "Jueves", "Viernes", - "Sabado"}; + private final String[] dias = {"Lunes", "Martes", "Miercoles", "Jueves", "Viernes", + "Sabado", "Domingo"}; - private ArrayList informe; - private Path saveFile; + private YearMonth mes; + + private InformeLibroDeVentas informe; private ArrayList dataRows; private Row footerRow; @@ -94,11 +89,9 @@ public class InformeLibroDeVentasExcel { private CreationHelper createHelper; private HashMap styles; - public InformeLibroDeVentasExcel(YearMonth mes, Path saveFile) { - new SQLiteCajaDAO().createCajasForMonth(mes); - - this.informe = new ArrayList<>(DAOManager.getLibroDeVentasContentDAO().generateInformeMensual(mes)); - this.saveFile = saveFile; + public InformeLibroDeVentasToExcel(YearMonth mes, Path saveFile) { + this.mes = mes; + this.informe = InformeLibroDeVentas.generate(mes); this.dataRows = new ArrayList<>(); this.headerRows = new ArrayList<>(); @@ -110,10 +103,6 @@ public class InformeLibroDeVentasExcel { this.styles = this.generateStyles(); } - private void sortInforme() { - this.informe.sort(Comparator.comparing(InformeLibroDeVentasContent::getFecha)); - } - private void fillHeaders() { Row titles = sheet.createRow(0); Row subtitles = sheet.createRow(1); @@ -133,13 +122,17 @@ public class InformeLibroDeVentasExcel { private void fillData() { int rowCounter = 2; - for (InformeLibroDeVentasContent data : this.informe) { - int cellCounter = 0; + LocalDate currentDate = this.mes.atDay(1); + LocalDate endDatePlusOne = this.mes.atEndOfMonth().plusDays(1); + + while (currentDate.isBefore(endDatePlusOne)) { + LibroDeVentas data = this.informe.get(currentDate); Row dataRow = sheet.createRow(rowCounter); dataRows.add(dataRow); Date fecha = Date.from(data.getFecha().atStartOfDay(ZoneId.systemDefault()).toInstant()); - dataRow.createCell(cellCounter++).setCellValue(this.dias[data.getDia()]); + int cellCounter = 0; + dataRow.createCell(cellCounter++).setCellValue(this.dias[data.getDia() - 1]); dataRow.createCell(cellCounter++).setCellValue(fecha); dataRow.createCell(cellCounter++) @@ -164,7 +157,8 @@ public class InformeLibroDeVentasExcel { .setCellValue(data.getExentasFinal() == null ? "0" : data.getExentasFinal()); dataRow.createCell(cellCounter++).setCellValue(data.getExentas()); - dataRow.createCell(cellCounter++).setCellValue(data.getSubTotal()); + dataRow.createCell(cellCounter++).setCellFormula( + "E" + (rowCounter + 1) + "+J" + (rowCounter + 1) + "+M" + (rowCounter + 1)); dataRow.createCell(cellCounter++) .setCellValue(data.getFacturasInicial() == null ? "0" : data.getFacturasInicial()); @@ -187,6 +181,7 @@ public class InformeLibroDeVentasExcel { .setCellFormula(("U" + (rowCounter + 1)) + ("+") + ("V" + (rowCounter))); } rowCounter++; + currentDate = currentDate.plusDays(1); } } @@ -328,8 +323,7 @@ public class InformeLibroDeVentasExcel { } } - public void generarInforme() { - sortInforme(); + public Workbook generarInforme() { fillData(); fillHeaders(); fillTotales(); @@ -338,13 +332,10 @@ public class InformeLibroDeVentasExcel { setStyles(); addBorders(); - try (OutputStream fileOut = Files.newOutputStream(this.saveFile)) { - wb.write(fileOut); - } catch (IOException e) { - e.printStackTrace(); - } + return wb; } + private HashMap generateStyles() { Font font = this.wb.createFont(); font.setBold(true); diff --git a/src/danielcortes/xyz/models/informes/libro_de_ventas/InformeLibroDeVentasContent.java b/src/danielcortes/xyz/informes/LibroDeVentas.java similarity index 95% rename from src/danielcortes/xyz/models/informes/libro_de_ventas/InformeLibroDeVentasContent.java rename to src/danielcortes/xyz/informes/LibroDeVentas.java index 46be3ca..33662fa 100644 --- a/src/danielcortes/xyz/models/informes/libro_de_ventas/InformeLibroDeVentasContent.java +++ b/src/danielcortes/xyz/informes/LibroDeVentas.java @@ -46,11 +46,11 @@ * SOFTWARE. */ -package danielcortes.xyz.models.informes.libro_de_ventas; +package danielcortes.xyz.informes; import java.time.LocalDate; -public class InformeLibroDeVentasContent { +public class LibroDeVentas { private int dia; private LocalDate fecha; @@ -65,7 +65,6 @@ public class InformeLibroDeVentasContent { private String exentasInicial; private String exentasFinal; private int exentas; - private int subTotal; private String facturasInicial; private String facturasFinal; private int facturas; @@ -99,7 +98,6 @@ public class InformeLibroDeVentasContent { } public String getManualesFinal() { - return manualesFinal; } @@ -179,14 +177,6 @@ public class InformeLibroDeVentasContent { this.exentas = exentas; } - public int getSubTotal() { - return subTotal; - } - - public void setSubTotal(int sub_total) { - this.subTotal = sub_total; - } - public String getFacturasInicial() { return facturasInicial; } @@ -243,10 +233,9 @@ public class InformeLibroDeVentasContent { this.total = total; } - @Override public String toString() { - return "InformeLibroDeVentasContent{" + + return "LibroDeVentas{" + "dia=" + dia + ", fecha=" + fecha + ", manualesInicial='" + manualesInicial + '\'' + @@ -260,7 +249,6 @@ public class InformeLibroDeVentasContent { ", exentasInicial='" + exentasInicial + '\'' + ", exentasFinal='" + exentasFinal + '\'' + ", exentas=" + exentas + - ", subTotal=" + subTotal + ", facturasInicial='" + facturasInicial + '\'' + ", facturasFinal='" + facturasFinal + '\'' + ", facturas=" + facturas + diff --git a/src/danielcortes/xyz/models/caja/Caja.java b/src/danielcortes/xyz/models/caja/Caja.java index 5152efa..ebb0543 100644 --- a/src/danielcortes/xyz/models/caja/Caja.java +++ b/src/danielcortes/xyz/models/caja/Caja.java @@ -27,11 +27,16 @@ package danielcortes.xyz.models.caja; import java.time.LocalDate; public class Caja { + public final static Caja EMPTY = new Caja(); private int id; private LocalDate fecha; private int fondo; + public Caja(){ + + } + public int getId() { return id; } diff --git a/src/danielcortes/xyz/models/informes/libro_de_ventas/InformeLibroDeVentasContentDAO.java b/src/danielcortes/xyz/models/informes/libro_de_ventas/InformeLibroDeVentasContentDAO.java deleted file mode 100644 index 998c431..0000000 --- a/src/danielcortes/xyz/models/informes/libro_de_ventas/InformeLibroDeVentasContentDAO.java +++ /dev/null @@ -1,37 +0,0 @@ -/* - * MIT License - * - * Copyright (c) 2018-2019 Daniel Cortes - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package danielcortes.xyz.models.informes.libro_de_ventas; - -import danielcortes.xyz.data.ConnectionHolder; -import java.time.LocalDate; -import java.time.YearMonth; -import java.util.HashMap; - -public abstract class InformeLibroDeVentasContentDAO { - - protected ConnectionHolder connectionHolder; - - public abstract HashMap generateInformeMensual(YearMonth mes); -} diff --git a/src/danielcortes/xyz/models/informes/libro_de_ventas/SQLiteInformeLibroDeVentasContentDAO.java b/src/danielcortes/xyz/models/informes/libro_de_ventas/SQLiteInformeLibroDeVentasContentDAO.java deleted file mode 100644 index 8972866..0000000 --- a/src/danielcortes/xyz/models/informes/libro_de_ventas/SQLiteInformeLibroDeVentasContentDAO.java +++ /dev/null @@ -1,72 +0,0 @@ -/* - * MIT License - * - * Copyright (c) 2018-2019 Daniel Cortes - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -/* - * MIT License - * - * Copyright (c) 2018-2019 Daniel Cortes - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package danielcortes.xyz.models.informes.libro_de_ventas; - -import danielcortes.xyz.data.SQLiteConnectionHolder; -import java.time.LocalDate; -import java.time.YearMonth; -import java.util.HashMap; -import java.util.logging.Logger; - -public class SQLiteInformeLibroDeVentasContentDAO extends InformeLibroDeVentasContentDAO { - - private static final Logger LOGGER = Logger - .getLogger(SQLiteInformeLibroDeVentasContentDAO.class.getName()); - - public SQLiteInformeLibroDeVentasContentDAO() { - this.connectionHolder = new SQLiteConnectionHolder(); - } - - @Override - public HashMap generateInformeMensual(YearMonth date) { - HashMap informe = new HashMap<>(); - - return informe; - } -} diff --git a/src/danielcortes/xyz/models/ingreso/IngresoDAO.java b/src/danielcortes/xyz/models/ingreso/IngresoDAO.java index 49aeab2..01afe90 100644 --- a/src/danielcortes/xyz/models/ingreso/IngresoDAO.java +++ b/src/danielcortes/xyz/models/ingreso/IngresoDAO.java @@ -37,6 +37,7 @@ import java.sql.SQLException; import java.time.YearMonth; import java.util.ArrayList; import java.util.List; +import java.util.Optional; import java.util.logging.Level; import java.util.logging.Logger; @@ -66,6 +67,15 @@ public abstract class IngresoDAO { public abstract int getTotalExentasMes(YearMonth mes); + public abstract int getTotalIngresoEnCajaPorTipo(Caja caja, TipoIngreso tipoIngreso); + + public abstract Optional getPrimerNroInicialDeCajaDeTipo(Caja caja, TipoIngreso tipoIngreso); + + public abstract Optional getUltimoNroFinalDeCajaDeTipo(Caja caja, TipoIngreso tipoIngreso); + + public abstract Optional getPrimerNroZInicialDeCaja(Caja caja); + + public abstract Optional getUltimoNroZFinalDeCaja(Caja caja); List ingresosFromResultSet(ResultSet rs) throws SQLException { ArrayList ingresosList = new ArrayList<>(); diff --git a/src/danielcortes/xyz/models/ingreso/SQLiteIngresoDAO.java b/src/danielcortes/xyz/models/ingreso/SQLiteIngresoDAO.java index 39e032f..5546e30 100644 --- a/src/danielcortes/xyz/models/ingreso/SQLiteIngresoDAO.java +++ b/src/danielcortes/xyz/models/ingreso/SQLiteIngresoDAO.java @@ -35,6 +35,7 @@ import java.time.LocalDate; import java.time.YearMonth; import java.util.ArrayList; import java.util.List; +import java.util.Optional; import java.util.logging.Level; import java.util.logging.Logger; @@ -49,38 +50,34 @@ public class SQLiteIngresoDAO extends IngresoDAO { @Override public List findAll() { List ingresosList = new ArrayList<>(); + String query = "select * from ingresos"; + try (Connection conn = connectionHolder.getConnection()) { - String query = "select * from ingresos"; - PreparedStatement ps = conn.prepareStatement(query); - ResultSet rs = ps.executeQuery(); - - LOGGER.log(Level.FINE, "QUERY: {0}", query); - - ingresosList = this.ingresosFromResultSet(rs); - - rs.close(); - ps.close(); + try (PreparedStatement ps = conn.prepareStatement(query)) { + try (ResultSet rs = ps.executeQuery()) { + LOGGER.log(Level.FINE, "QUERY: {0}", query); + ingresosList = this.ingresosFromResultSet(rs); + } + } } catch (SQLException e) { LOGGER.log(Level.SEVERE, e.toString(), e); } + return ingresosList; } @Override public List findByCaja(Caja caja) { List ingresosList = new ArrayList<>(); + String query = "select * from ingresos where caja_id = ?"; try (Connection conn = connectionHolder.getConnection()) { - String query = "select * from ingresos where caja_id = ?"; - PreparedStatement ps = conn.prepareStatement(query); - ps.setInt(1, caja.getId()); - ResultSet rs = ps.executeQuery(); - - LOGGER.log(Level.FINE, "QUERY: {0} | values: {1}", new Object[]{query, caja.getId()}); - - ingresosList = this.ingresosFromResultSet(rs); - - rs.close(); - ps.close(); + try (PreparedStatement ps = conn.prepareStatement(query)) { + ps.setInt(1, caja.getId()); + try (ResultSet rs = ps.executeQuery()) { + LOGGER.log(Level.FINE, "QUERY: {0} | values: {1}", new Object[]{query, caja.getId()}); + ingresosList = this.ingresosFromResultSet(rs); + } + } } catch (SQLException e) { e.printStackTrace(); } @@ -90,18 +87,16 @@ public class SQLiteIngresoDAO extends IngresoDAO { @Override public List findById(int id) { List ingresosList = new ArrayList<>(); + String query = "select * from ingresos where id = ?"; try (Connection conn = connectionHolder.getConnection()) { - String query = "select * from ingresos where id = ?"; - PreparedStatement ps = conn.prepareStatement(query); - ps.setInt(1, id); - ResultSet rs = ps.executeQuery(); + try (PreparedStatement ps = conn.prepareStatement(query)) { + ps.setInt(1, id); + try (ResultSet rs = ps.executeQuery()) { + LOGGER.log(Level.FINE, "QUERY: {0} | values: {1}", new Object[]{query, id}); - LOGGER.log(Level.FINE, "QUERY: {0} | values: {1}", new Object[]{query, id}); - - ingresosList = this.ingresosFromResultSet(rs); - - rs.close(); - ps.close(); + ingresosList = this.ingresosFromResultSet(rs); + } + } } catch (SQLException e) { LOGGER.log(Level.SEVERE, e.toString(), e); } @@ -111,18 +106,16 @@ public class SQLiteIngresoDAO extends IngresoDAO { @Override public List findByTipoIngreso(TipoIngreso tipoIngreso) { List ingresosList = new ArrayList<>(); + String query = "select ingresos.* from ingresos inner join tipos_ingreso on (ingresos.tipo_ingreso_id = tipos_ingreso.id) where ingresos.tipo_ingreso_id = ?"; try (Connection conn = connectionHolder.getConnection()) { - String query = "select ingresos.* from ingresos inner join tipos_ingreso on (ingresos.tipo_ingreso_id = tipos_ingreso.id) where ingresos.tipo_ingreso_id = ?"; - PreparedStatement ps = conn.prepareStatement(query); - ps.setInt(1, tipoIngreso.getId()); - ResultSet rs = ps.executeQuery(); - - LOGGER.log(Level.FINE, "QUERY: {0} | values: {1}", new Object[]{query, tipoIngreso.getId()}); - - ingresosList = this.ingresosFromResultSet(rs); - - rs.close(); - ps.close(); + try (PreparedStatement ps = conn.prepareStatement(query)) { + ps.setInt(1, tipoIngreso.getId()); + try (ResultSet rs = ps.executeQuery()) { + LOGGER.log(Level.FINE, "QUERY: {0} | values: {1}", + new Object[]{query, tipoIngreso.getId()}); + ingresosList = this.ingresosFromResultSet(rs); + } + } } catch (SQLException e) { LOGGER.log(Level.SEVERE, e.toString(), e); } @@ -132,31 +125,31 @@ public class SQLiteIngresoDAO extends IngresoDAO { @Override public boolean insertIngreso(Ingreso ingreso) { int updates; + String query = "insert into ingresos (valor, nro_z_inicial, nro_z_final, nro_inicial, nro_final, tipo_ingreso_id, caja_id) values (?,?,?,?,?,?,?)"; try (Connection conn = connectionHolder.getConnection()) { - String query = "insert into ingresos (valor, nro_z_inicial, nro_z_final, nro_inicial, nro_final, tipo_ingreso_id, caja_id) values (?,?,?,?,?,?,?)"; - PreparedStatement ps = conn.prepareStatement(query); - ps.setInt(1, ingreso.getValor()); - ps.setString(2, ingreso.getNroZInicial()); - ps.setString(3, ingreso.getNroZFinal()); - ps.setString(4, ingreso.getNroInicial()); - ps.setString(5, ingreso.getNroFinal()); - ps.setInt(6, ingreso.getTipoIngreso().getId()); - ps.setInt(7, ingreso.getCaja().getId()); - updates = ps.executeUpdate(); + try (PreparedStatement ps = conn.prepareStatement(query)) { + ps.setInt(1, ingreso.getValor()); + ps.setString(2, ingreso.getNroZInicial()); + ps.setString(3, ingreso.getNroZFinal()); + ps.setString(4, ingreso.getNroInicial()); + ps.setString(5, ingreso.getNroFinal()); + ps.setInt(6, ingreso.getTipoIngreso().getId()); + ps.setInt(7, ingreso.getCaja().getId()); + updates = ps.executeUpdate(); - LOGGER.log(Level.FINE, "QUERY: {0} | values: [{1},{2},{3},{4},{5},{6},{7}] | updates: {8}", - new Object[]{query, ingreso.getValor(), ingreso.getNroZInicial(), ingreso.getNroZFinal(), - ingreso.getNroInicial(), ingreso.getNroFinal(), ingreso.getTipoIngreso().getId(), - ingreso.getCaja().getId(), updates}); + LOGGER.log(Level.FINE, "QUERY: {0} | values: [{1},{2},{3},{4},{5},{6},{7}] | updates: {8}", + new Object[]{query, ingreso.getValor(), ingreso.getNroZInicial(), + ingreso.getNroZFinal(), + ingreso.getNroInicial(), ingreso.getNroFinal(), ingreso.getTipoIngreso().getId(), + ingreso.getCaja().getId(), updates}); + } - ps.close(); - - ps = conn.prepareStatement("select last_insert_rowid()"); - ResultSet rs = ps.executeQuery(); - rs.next(); - ingreso.setId(rs.getInt(1)); - - rs.close(); + try (PreparedStatement ps = conn.prepareStatement("select last_insert_rowid()")) { + try (ResultSet rs = ps.executeQuery()) { + rs.next(); + ingreso.setId(rs.getInt(1)); + } + } } catch (SQLException e) { LOGGER.log(Level.SEVERE, e.toString(), e); return false; @@ -167,27 +160,27 @@ public class SQLiteIngresoDAO extends IngresoDAO { @Override public boolean updateIngreso(Ingreso ingreso) { int updates; + String query = "update ingresos set valor = ?, nro_z_inicial = ?, nro_z_final = ?, nro_inicial = ?, nro_final = ?, tipo_ingreso_id = ?, caja_id = ? where id = ?"; try (Connection conn = connectionHolder.getConnection()) { - String query = "update ingresos set valor = ?, nro_z_inicial = ?, nro_z_final = ?, nro_inicial = ?, nro_final = ?, tipo_ingreso_id = ?, caja_id = ? where id = ?"; - PreparedStatement ps = conn.prepareStatement(query); - ps.setInt(1, ingreso.getValor()); - ps.setString(2, ingreso.getNroZInicial()); - ps.setString(3, ingreso.getNroZFinal()); - ps.setString(4, ingreso.getNroInicial()); - ps.setString(5, ingreso.getNroFinal()); - ps.setInt(6, ingreso.getTipoIngreso().getId()); - ps.setInt(7, ingreso.getCaja().getId()); - ps.setInt(8, ingreso.getId()); - updates = ps.executeUpdate(); + try (PreparedStatement ps = conn.prepareStatement(query)) { + ps.setInt(1, ingreso.getValor()); + ps.setString(2, ingreso.getNroZInicial()); + ps.setString(3, ingreso.getNroZFinal()); + ps.setString(4, ingreso.getNroInicial()); + ps.setString(5, ingreso.getNroFinal()); + ps.setInt(6, ingreso.getTipoIngreso().getId()); + ps.setInt(7, ingreso.getCaja().getId()); + ps.setInt(8, ingreso.getId()); + updates = ps.executeUpdate(); - LOGGER - .log(Level.FINE, "QUERY: {0} | values: [{1},{2},{3},{4},{5},{6},{7},{8}] | updates: {9}", - new Object[]{query, ingreso.getValor(), ingreso.getNroZInicial(), - ingreso.getNroZFinal(), ingreso.getNroInicial(), ingreso.getNroFinal(), - ingreso.getTipoIngreso().getId(), ingreso.getCaja().getId(), ingreso.getId(), - updates}); - - ps.close(); + LOGGER + .log(Level.FINE, + "QUERY: {0} | values: [{1},{2},{3},{4},{5},{6},{7},{8}] | updates: {9}", + new Object[]{query, ingreso.getValor(), ingreso.getNroZInicial(), + ingreso.getNroZFinal(), ingreso.getNroInicial(), ingreso.getNroFinal(), + ingreso.getTipoIngreso().getId(), ingreso.getCaja().getId(), ingreso.getId(), + updates}); + } } catch (SQLException e) { LOGGER.log(Level.SEVERE, e.toString(), e); return false; @@ -198,16 +191,16 @@ public class SQLiteIngresoDAO extends IngresoDAO { @Override public boolean deleteIngreso(Ingreso ingreso) { int updates; + String query = "delete from ingresos where id = ?"; try (Connection conn = connectionHolder.getConnection()) { - String query = "delete from ingresos where id = ?"; - PreparedStatement ps = conn.prepareStatement(query); - ps.setInt(1, ingreso.getId()); - updates = ps.executeUpdate(); + try (PreparedStatement ps = conn.prepareStatement(query)) { + ps.setInt(1, ingreso.getId()); + updates = ps.executeUpdate(); - LOGGER.log(Level.FINE, "QUERY: {0} | values: {1} | updates: {2}", - new Object[]{query, ingreso.getId(), updates}); + LOGGER.log(Level.FINE, "QUERY: {0} | values: {1} | updates: {2}", + new Object[]{query, ingreso.getId(), updates}); - ps.close(); + } } catch (SQLException e) { LOGGER.log(Level.SEVERE, e.toString(), e); return false; @@ -218,19 +211,16 @@ public class SQLiteIngresoDAO extends IngresoDAO { @Override public int getTotalIngreso(Caja caja) { int total = 0; + String query = "select sum(valor) from ingresos where caja_id = ?"; try (Connection conn = connectionHolder.getConnection()) { - String query = "select sum(valor) from ingresos where caja_id = ?"; - PreparedStatement ps = conn.prepareStatement(query); - ps.setInt(1, caja.getId()); - ResultSet rs = ps.executeQuery(); - - LOGGER.log(Level.FINE, "QUERY: {0} | values: {1}", new Object[]{query, caja.getId()}); - - rs.next(); - total = rs.getInt(1); - - rs.close(); - ps.close(); + try (PreparedStatement ps = conn.prepareStatement(query)) { + ps.setInt(1, caja.getId()); + try (ResultSet rs = ps.executeQuery()) { + if(rs.next()){ + total = rs.getInt(1); + } + } + } } catch (SQLException e) { LOGGER.log(Level.SEVERE, e.toString(), e); } @@ -240,23 +230,21 @@ public class SQLiteIngresoDAO extends IngresoDAO { @Override public int getTotalIngresoMes(YearMonth mes) { int total = 0; + String query = + "select sum(valor) from ingresos inner join caja on (ingresos.caja_id == caja.id) where caja.fecha between ? and ? and ingresos.tipo_ingreso_id != 5"; try (Connection conn = connectionHolder.getConnection()) { - LocalDate start = mes.atDay(1); - LocalDate end = mes.atEndOfMonth(); - String query = - "select sum(valor) from ingresos inner join caja on (ingresos.caja_id == caja.id) where caja.fecha between ? and ? and ingresos.tipo_ingreso_id != 5"; - PreparedStatement ps = conn.prepareStatement(query); - ps.setString(1, start.toString()); - ps.setString(2, end.toString()); - ResultSet rs = ps.executeQuery(); + try (PreparedStatement ps = conn.prepareStatement(query)) { + LocalDate start = mes.atDay(1); + LocalDate end = mes.atEndOfMonth(); + ps.setString(1, start.toString()); + ps.setString(2, end.toString()); - LOGGER.log(Level.FINE, "QUERY: {0} | values: {1}, {2}", new Object[]{query, start, end}); - - rs.next(); - total = rs.getInt(1); - - rs.close(); - ps.close(); + try (ResultSet rs = ps.executeQuery()) { + if(rs.next()){ + total = rs.getInt(1); + } + } + } } catch (SQLException e) { LOGGER.log(Level.SEVERE, e.toString(), e); } @@ -266,26 +254,143 @@ public class SQLiteIngresoDAO extends IngresoDAO { @Override public int getTotalExentasMes(YearMonth mes) { int total = 0; + String query = + "select sum(valor) from ingresos inner join caja on (ingresos.caja_id == caja.id) where caja.fecha between ? and ? and ingresos.tipo_ingreso_id = 5"; try (Connection conn = connectionHolder.getConnection()) { - LocalDate start = mes.atDay(1); - LocalDate end = mes.atEndOfMonth(); - String query = - "select sum(valor) from ingresos inner join caja on (ingresos.caja_id == caja.id) where caja.fecha between ? and ? and ingresos.tipo_ingreso_id = 5"; - PreparedStatement ps = conn.prepareStatement(query); - ps.setString(1, start.toString()); - ps.setString(2, end.toString()); - ResultSet rs = ps.executeQuery(); - - LOGGER.log(Level.FINE, "QUERY: {0} | values: {1}, {2}", new Object[]{query, start, end}); - - rs.next(); - total = rs.getInt(1); - - rs.close(); - ps.close(); + try (PreparedStatement ps = conn.prepareStatement(query)) { + LocalDate start = mes.atDay(1); + LocalDate end = mes.atEndOfMonth(); + ps.setString(1, start.toString()); + ps.setString(2, end.toString()); + try (ResultSet rs = ps.executeQuery()) { + if(rs.next()){ + total = rs.getInt(1); + } + } + } } catch (SQLException e) { LOGGER.log(Level.SEVERE, e.toString(), e); } return total; } + + @Override + public int getTotalIngresoEnCajaPorTipo(Caja caja, TipoIngreso tipoIngreso) { + if (caja == Caja.EMPTY) { + return 0; + } + + int total = 0; + String query = "select sum(valor) from ingresos where caja_id = ? and tipo_ingreso_id = ?"; + try (Connection conn = connectionHolder.getConnection()) { + try (PreparedStatement ps = conn.prepareStatement(query)) { + ps.setInt(1, caja.getId()); + ps.setInt(2, tipoIngreso.getId()); + try (ResultSet rs = ps.executeQuery()) { + if(rs.next()){ + total = rs.getInt(1); + } + } + } + } catch (SQLException e) { + LOGGER.log(Level.SEVERE, e.toString(), e); + } + return total; + } + + @Override + public Optional getPrimerNroInicialDeCajaDeTipo(Caja caja, TipoIngreso tipoIngreso) { + if (caja == Caja.EMPTY) { + return Optional.of("0"); + } + + String nroInicial = null; + + String query = "select nro_inicial from ingresos where caja_id = ? and tipo_ingreso_id = ? order by nro_inicial asc limit 1"; + try (Connection conn = connectionHolder.getConnection()) { + try (PreparedStatement ps = conn.prepareStatement(query)) { + ps.setInt(1, caja.getId()); + ps.setInt(2, tipoIngreso.getId()); + try (ResultSet rs = ps.executeQuery()) { + if(rs.next()) { + nroInicial = rs.getString(1); + } + } + } + } catch (SQLException e) { + LOGGER.log(Level.SEVERE, e.toString(), e); + } + return Optional.ofNullable(nroInicial); + } + + @Override + public Optional getUltimoNroFinalDeCajaDeTipo(Caja caja, TipoIngreso tipoIngreso) { + if (caja == Caja.EMPTY) { + return Optional.of("0"); + } + String nroFinal = null; + String query = "select nro_final from ingresos where caja_id = ? and tipo_ingreso_id = ? order by nro_inicial desc limit 1"; + try (Connection conn = connectionHolder.getConnection()) { + try (PreparedStatement ps = conn.prepareStatement(query)) { + ps.setInt(1, caja.getId()); + ps.setInt(2, tipoIngreso.getId()); + try (ResultSet rs = ps.executeQuery()) { + if(rs.next()){ + nroFinal = rs.getString(1); + } + } + } + } catch (SQLException e) { + LOGGER.log(Level.SEVERE, e.toString(), e); + e.printStackTrace(); + } + return Optional.ofNullable(nroFinal); + } + + @Override + public Optional getPrimerNroZInicialDeCaja(Caja caja) { + if (caja == Caja.EMPTY) { + return Optional.of("0"); + } + String nroZInicial = null; + String query = "select nro_z_inicial from ingresos where caja_id = ? and tipo_ingreso_id = 1 order by nro_inicial desc limit 1"; + try (Connection conn = connectionHolder.getConnection()) { + try (PreparedStatement ps = conn.prepareStatement(query)) { + ps.setInt(1, caja.getId()); + try (ResultSet rs = ps.executeQuery()) { + if(rs.next()){ + nroZInicial = rs.getString(1); + } + } + } + } catch (SQLException e) { + LOGGER.log(Level.SEVERE, e.toString(), e); + e.printStackTrace(); + } + return Optional.ofNullable(nroZInicial); + } + + @Override + public Optional getUltimoNroZFinalDeCaja(Caja caja) { + if (caja == Caja.EMPTY) { + return Optional.of("0"); + } + String nroZFinal = null; + String query = "select nro_z_final from ingresos where caja_id = ? and tipo_ingreso_id = 1 order by nro_inicial desc limit 1"; + try (Connection conn = connectionHolder.getConnection()) { + try(PreparedStatement ps = conn.prepareStatement(query)){ + ps.setInt(1, caja.getId()); + try(ResultSet rs = ps.executeQuery()){ + if(rs.next()){ + nroZFinal = rs.getString(1); + } + } + } + } catch (SQLException e) { + LOGGER.log(Level.SEVERE, e.toString(), e); + e.printStackTrace(); + } + return Optional.ofNullable(nroZFinal); + } + } diff --git a/src/danielcortes/xyz/utils/SaveFile.java b/src/danielcortes/xyz/utils/SaveFile.java new file mode 100644 index 0000000..26dae57 --- /dev/null +++ b/src/danielcortes/xyz/utils/SaveFile.java @@ -0,0 +1,18 @@ +package danielcortes.xyz.utils; + +import java.io.IOException; +import java.io.OutputStream; +import java.nio.file.Files; +import java.nio.file.Path; +import org.apache.poi.ss.usermodel.Workbook; + +public class SaveFile { + public static void save(Workbook wb, Path saveFile){ + try (OutputStream fileOut = Files.newOutputStream(saveFile)) { + wb.write(fileOut); + } catch (IOException e) { + e.printStackTrace(); + } + } + +} diff --git a/src/danielcortes/xyz/views/ArqueoView.java b/src/danielcortes/xyz/views/ArqueoView.java index 9222e41..0d7b005 100644 --- a/src/danielcortes/xyz/views/ArqueoView.java +++ b/src/danielcortes/xyz/views/ArqueoView.java @@ -64,13 +64,6 @@ public class ArqueoView { private NumberFormatedTextField debeRendirField; private NumberFormatedTextField retiroField; - { -// GUI initializer generated by IntelliJ IDEA GUI Designer -// >>> IMPORTANT!! <<< -// DO NOT EDIT OR ADD ANY CODE HERE! - $$$setupUI$$$(); - } - public JPanel getContentPanel() { return contentPanel; } @@ -159,6 +152,13 @@ public class ArqueoView { return retiroField; } + { +// GUI initializer generated by IntelliJ IDEA GUI Designer +// >>> IMPORTANT!! <<< +// DO NOT EDIT OR ADD ANY CODE HERE! + $$$setupUI$$$(); + } + /** * Method generated by IntelliJ IDEA GUI Designer >>> IMPORTANT!! <<< DO NOT edit this method OR * call it in your code! @@ -487,4 +487,5 @@ public class ArqueoView { public JComponent $$$getRootComponent$$$() { return contentPanel; } + } diff --git a/src/danielcortes/xyz/views/BaseLayout.java b/src/danielcortes/xyz/views/BaseLayout.java index ce2c87a..3f4bdcc 100644 --- a/src/danielcortes/xyz/views/BaseLayout.java +++ b/src/danielcortes/xyz/views/BaseLayout.java @@ -13,13 +13,6 @@ public class BaseLayout { private JPanel sidePanel; private JPanel mainPanel; - { -// GUI initializer generated by IntelliJ IDEA GUI Designer -// >>> IMPORTANT!! <<< -// DO NOT EDIT OR ADD ANY CODE HERE! - $$$setupUI$$$(); - } - public JPanel getContentPanel() { return contentPanel; } @@ -32,6 +25,13 @@ public class BaseLayout { return mainPanel; } + { +// GUI initializer generated by IntelliJ IDEA GUI Designer +// >>> IMPORTANT!! <<< +// DO NOT EDIT OR ADD ANY CODE HERE! + $$$setupUI$$$(); + } + /** * Method generated by IntelliJ IDEA GUI Designer >>> IMPORTANT!! <<< DO NOT edit this method OR * call it in your code! @@ -63,4 +63,5 @@ public class BaseLayout { public JComponent $$$getRootComponent$$$() { return contentPanel; } + } diff --git a/src/danielcortes/xyz/views/CajasView.java b/src/danielcortes/xyz/views/CajasView.java index 701a034..cb76c8c 100644 --- a/src/danielcortes/xyz/views/CajasView.java +++ b/src/danielcortes/xyz/views/CajasView.java @@ -46,13 +46,6 @@ public class CajasView { private JToggleButton arqueoButton; private DatePicker datePicker; - { -// GUI initializer generated by IntelliJ IDEA GUI Designer -// >>> IMPORTANT!! <<< -// DO NOT EDIT OR ADD ANY CODE HERE! - $$$setupUI$$$(); - } - public JToggleButton getEgresosButton() { return egresosButton; } @@ -77,6 +70,13 @@ public class CajasView { return cardPanel; } + { +// GUI initializer generated by IntelliJ IDEA GUI Designer +// >>> IMPORTANT!! <<< +// DO NOT EDIT OR ADD ANY CODE HERE! + $$$setupUI$$$(); + } + /** * Method generated by IntelliJ IDEA GUI Designer >>> IMPORTANT!! <<< DO NOT edit this method OR * call it in your code! diff --git a/src/danielcortes/xyz/views/EgresosView.java b/src/danielcortes/xyz/views/EgresosView.java index ef3048b..e213226 100644 --- a/src/danielcortes/xyz/views/EgresosView.java +++ b/src/danielcortes/xyz/views/EgresosView.java @@ -67,13 +67,6 @@ public class EgresosView { private EgresosTableModel egresosTableModel; - { -// GUI initializer generated by IntelliJ IDEA GUI Designer -// >>> IMPORTANT!! <<< -// DO NOT EDIT OR ADD ANY CODE HERE! - $$$setupUI$$$(); - } - private void createUIComponents() { createEgresosTable(); createTipoCombo(); @@ -152,6 +145,13 @@ public class EgresosView { return errorTipoEgreso; } + { +// GUI initializer generated by IntelliJ IDEA GUI Designer +// >>> IMPORTANT!! <<< +// DO NOT EDIT OR ADD ANY CODE HERE! + $$$setupUI$$$(); + } + /** * Method generated by IntelliJ IDEA GUI Designer >>> IMPORTANT!! <<< DO NOT edit this method OR * call it in your code! diff --git a/src/danielcortes/xyz/views/EstadoResultadoView.java b/src/danielcortes/xyz/views/EstadoResultadoView.java index 1e0b454..76fae3a 100644 --- a/src/danielcortes/xyz/views/EstadoResultadoView.java +++ b/src/danielcortes/xyz/views/EstadoResultadoView.java @@ -18,6 +18,7 @@ import javax.swing.JComponent; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JSpinner; +import javax.swing.JSpinner.DefaultEditor; import javax.swing.SpinnerModel; public class EstadoResultadoView { @@ -762,7 +763,7 @@ public class EstadoResultadoView { SpinnerModel model = new YearSpinnerModel(); this.yearSpinner = new JSpinner(); this.yearSpinner.setModel(model); - ((JSpinner.DefaultEditor) this.yearSpinner.getEditor()).getTextField().setEditable(true); + ((DefaultEditor) this.yearSpinner.getEditor()).getTextField().setEditable(true); } private void createMonthCombo() { diff --git a/src/danielcortes/xyz/views/InformesSideBar.java b/src/danielcortes/xyz/views/InformesSideBar.java index 24e95ad..e86acd4 100644 --- a/src/danielcortes/xyz/views/InformesSideBar.java +++ b/src/danielcortes/xyz/views/InformesSideBar.java @@ -41,13 +41,6 @@ public class InformesSideBar { private JButton estadoResultadoButton; private JButton volverButton; - { -// GUI initializer generated by IntelliJ IDEA GUI Designer -// >>> IMPORTANT!! <<< -// DO NOT EDIT OR ADD ANY CODE HERE! - $$$setupUI$$$(); - } - public JPanel getContentPanel() { return contentPanel; } @@ -68,6 +61,13 @@ public class InformesSideBar { return volverButton; } + { +// GUI initializer generated by IntelliJ IDEA GUI Designer +// >>> IMPORTANT!! <<< +// DO NOT EDIT OR ADD ANY CODE HERE! + $$$setupUI$$$(); + } + /** * Method generated by IntelliJ IDEA GUI Designer >>> IMPORTANT!! <<< DO NOT edit this method OR * call it in your code! diff --git a/src/danielcortes/xyz/views/IngresosView.java b/src/danielcortes/xyz/views/IngresosView.java index e0dead2..b636a27 100644 --- a/src/danielcortes/xyz/views/IngresosView.java +++ b/src/danielcortes/xyz/views/IngresosView.java @@ -70,13 +70,6 @@ public class IngresosView { private IngresosTableModel ingresosTableModel; - { -// GUI initializer generated by IntelliJ IDEA GUI Designer -// >>> IMPORTANT!! <<< -// DO NOT EDIT OR ADD ANY CODE HERE! - $$$setupUI$$$(); - } - private void createUIComponents() { this.createIngresosTable(); this.createTipoCombo(); @@ -171,6 +164,13 @@ public class IngresosView { return errorNroZInicial; } + { +// GUI initializer generated by IntelliJ IDEA GUI Designer +// >>> IMPORTANT!! <<< +// DO NOT EDIT OR ADD ANY CODE HERE! + $$$setupUI$$$(); + } + /** * Method generated by IntelliJ IDEA GUI Designer >>> IMPORTANT!! <<< DO NOT edit this method OR * call it in your code! diff --git a/src/danielcortes/xyz/views/MainSideBar.java b/src/danielcortes/xyz/views/MainSideBar.java index 94adf1d..f43b4ae 100644 --- a/src/danielcortes/xyz/views/MainSideBar.java +++ b/src/danielcortes/xyz/views/MainSideBar.java @@ -16,13 +16,6 @@ public class MainSideBar { private JButton cajasButton; private JPanel buttonPanel; - { -// GUI initializer generated by IntelliJ IDEA GUI Designer -// >>> IMPORTANT!! <<< -// DO NOT EDIT OR ADD ANY CODE HERE! - $$$setupUI$$$(); - } - public JPanel getContentPanel() { return contentPanel; } @@ -39,6 +32,13 @@ public class MainSideBar { return cajasButton; } + { +// GUI initializer generated by IntelliJ IDEA GUI Designer +// >>> IMPORTANT!! <<< +// DO NOT EDIT OR ADD ANY CODE HERE! + $$$setupUI$$$(); + } + /** * Method generated by IntelliJ IDEA GUI Designer >>> IMPORTANT!! <<< DO NOT edit this method OR * call it in your code! diff --git a/src/danielcortes/xyz/views/dialogs/MonthSelectDialog.java b/src/danielcortes/xyz/views/dialogs/MonthSelectDialog.java index 7a4d307..1f67d67 100644 --- a/src/danielcortes/xyz/views/dialogs/MonthSelectDialog.java +++ b/src/danielcortes/xyz/views/dialogs/MonthSelectDialog.java @@ -41,6 +41,7 @@ import javax.swing.JDialog; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JSpinner; +import javax.swing.JSpinner.DefaultEditor; import javax.swing.KeyStroke; import javax.swing.SpinnerModel; @@ -120,7 +121,7 @@ public class MonthSelectDialog extends JDialog { SpinnerModel model = new YearSpinnerModel(); this.yearSpinner = new JSpinner(); this.yearSpinner.setModel(model); - ((JSpinner.DefaultEditor) this.yearSpinner.getEditor()).getTextField().setEditable(true); + ((DefaultEditor) this.yearSpinner.getEditor()).getTextField().setEditable(true); } private void createMonthCombo() {