Commit Graph

150 Commits

Author SHA1 Message Date
Daniel Cortes
a741bcb960 Se me olvido agregar el jar actualizado al ultimo commit 2019-03-09 16:10:24 -03:00
Daniel Cortes
52ce4708d1 Se comento y agregaro logs a la clase 2019-03-09 16:06:43 -03:00
Daniel Cortes
26ec581f72 Se agrego loggeo a esta clase 2019-03-08 01:16:15 -03:00
Daniel Cortes
3baa38e201 Se agrego informacion de logeo a SQLiteCajaDAO 2019-03-08 01:05:01 -03:00
Daniel Cortes
407fdc9571 Se agregaron las librerias de logeo, son loges log4j2 2019-03-08 00:00:56 -03:00
Daniel Cortes
eeea52b525 Se elimino el sistema de logging de java
Planeo hacerlo nuevamente con una libreria
2019-03-07 21:38:57 -03:00
Daniel Cortes
2dbf62f9b9 Se limpio minimamente el modelo de version 2019-03-07 19:30:10 -03:00
Daniel Cortes
cd6dbc0709 Se limpio el metodo de TipoIngreso
Ademas se corrigio un bug que introduci al cambiar la forma en que el
wraper funcionaba
2019-03-07 19:17:19 -03:00
Daniel Cortes
7e31885c8a Reescrito modeo de TipoEgreso
Ademas los metodos que lo utilizaban para buscar en la base de datos
ahora comprueban contra TipoEgreso.EMPTY para evitar buscar cuando se
para un TipoEgreso.EMPTY
2019-03-07 19:00:22 -03:00
Daniel Cortes
b2ff6dd7f7 Se limpio el modelo de Ingreso
Ademas se me habia olvidado chequear si es que el resto del programa
seguia funcionando, y no, no lo hacia, corregi los errores presentes;
2019-03-07 17:38:32 -03:00
Daniel Cortes
95d06a8c5b reescrito estadoResultadoDAO 2019-03-07 17:03:51 -03:00
Daniel Cortes
9c0765b81f La palaba get es mas bonita que find 2019-03-07 16:16:01 -03:00
Daniel Cortes
b6021c82d7 limpiado el egresoDAO 2019-03-07 16:11:19 -03:00
Daniel Cortes
f5bbb7e0e8 Se limpio el modelo de EfectivoDAO
Se llevaron a cabo los mismos pasos que en los previos;
2019-03-07 14:56:39 -03:00
Daniel Cortes
c2529756f2 Terminado de reescribir documentos
Ademas se soluciono un bug en el controlador de arqueo, habia anotado
mal el listener del boton de documentos :c
2019-03-07 03:09:15 -03:00
Daniel Cortes
979dbbe4ab DocumentosDAO nunca debio dejar de ser una interfaz 2019-03-07 02:41:00 -03:00
Daniel Cortes
268648f0de Eliminado el metodo calculoFondoFromResultSet
No me agradaba tener ese metodo para solo 3 funciones que lo usaban, y
de todas formas, estas funciones necesitaban los datos de manera
distinta por lo que no era tan util en realidad
2019-03-07 02:12:54 -03:00
Daniel Cortes
515cd06001 CalculoFondoDAO Nunca debio dejar de ser una interface 2019-03-07 01:58:29 -03:00
Daniel Cortes
ecb3315bc8 Las cajas pueden ser Empty y tener id = 0
Se debe comprobar para ello. si no se hara una query con un id invalido.
2019-03-07 01:53:03 -03:00
Daniel Cortes
db9568c85f PreparedStatements y ResultSets en try/catch
Mas seguridad en estos elementos, mas que nada para que se cierren
correctamente.
2019-03-07 01:48:23 -03:00
Daniel Cortes
e446cc5bb0 Se limpio un poco el objeto CajaDAO
Primero se crearon bloques try/catch para todos los preparedstatement y
resultsets

Se eliminaron un par de metodos que no se utilizaban
2019-03-07 01:37:17 -03:00
Daniel Cortes
6ea175f06a Se reescribio el informe de egresos
Para lograrlo se realizo el mismo procedimiento que con el informe de
libro de ventas

Primero que nada se elmino el objeto de InformeEgresosContent que se
tenia porque realmente no aportaba nada, era basicamente lo mismo que el
objeto egresos con un campo de fecha añadido y creo que un campo menos.
Por lo que se paso a utilizar el objeto de Egresos directamente.

Debido a lo anterior no era necesario tener una query especial para
juntar los datos, ya que solo eran los egresos de todas las cajas de un
tipo en especifico, por lo que solo se hizo una query nueva en el
EgresoDAO en el que se satisfacia esta necesidad.

Luego fue solo hacer compatible el InformeEgresosToExcel y listo!
2019-03-06 23:49:07 -03:00
Daniel Cortes
d1d2f9c2fa terminada la reescritura del informe libro de ventas 2019-03-06 01:35:46 -03:00
Daniel Cortes
0a98bee777 Se reescribio el informe de ventas mensual
Primeramente, se tenia por objetivo reescribir el informe para que este
fuera mas claro y para lograrlo se penso en que en vez de realizar 2
querys grandes en las que se tomaban todos los datos necesarios y se
mapeaban  un objeto el cual se añadia a un array, se realizaran
multiples querys separadas, en las que se irian obteniendo los datos
individualmente y sean juntados en un objeto.

Para esto se debio reescribir parte de SQLiteIngresoDAO, por una parte,
para añadir las querys que obtenian los numeros de boletas y de Z en una
caja para un tipo de ingreso en ademas de la query para obtener el total de
ingresos por un tipo de ingreso en un mes.

Junto con esto, al toparme con un bug, reescribi el como se realizaban
las querys en todo el objeto DAO, dado a que creia que se debia a un
problema donde no se estaban cerrando bien los ResultSets y los
PreparedStatement, aunque al final no fue eso y era simplemente el que
no habia un resultado en la query que se habia realizado.

A partir de aca no sabria bien como describir lo que se realizo, pero se
puede resumir en que encontre redundante el tener 2 paquetes de informe
y un objeto DAO para generar el informe cuando realmente no lo era,
siendo mas un "builder" creo .w.

Por lo que separe todo eso y lo deje en 3 objetos, el LibroDeVentas, el
cual contiene la instancia de un dia de informe, el InformLibroDeVentas,
el cual es un wraper para un hashmap que contiene el libro de ventas y
ademas tiene el metodo que genera el libro, y finalmente el
InformeLibroDeVentasToExcel, el cual pasa el informe a un archivo excel
para la lectura del usuario final.

Finalmente separe el que se guardara el informe automaticamente al
generarlo. para ello cree un objeto aparte, el cual tendra metodos
estaticos para todos los objetos que tenga que guardar eventulamente,
por ahora como solo necesito guardar un Workbook, eso es lo que guarda.

Creo que eso seria todo :3
2019-03-06 01:22:12 -03:00
Daniel Cortes
537c64e85c Se borro el como se generaba el informe de libro de ventas 2019-03-02 01:02:41 -03:00
Daniel Cortes
8bd6a0b493 Aparentemente Intellij cambio algo en las vistas
No se que es, probablemente es por el cambio de estilo de codigo
2019-03-02 00:43:03 -03:00
Daniel Cortes
95685b7f82 Se aplico el estilo de codigo de google :3
https://github.com/google/styleguide
2019-03-01 23:28:43 -03:00
Daniel Cortes
412e128398 Limpiado modelo de caja
Como consecuencia esto llevo a modificar otras clases que la utilizaban
ya que se decidieron cambiar un par de cosas en su API

- Quitar el que los metodos de update e insert retornaran un booleano,
realmente no era algo necesario y no se estaba utilizando.

- Remplazar el retornar una Caja por retornar un Optional<Caja> en los
metodos de getByFecha y getById, con el fin eliminar un poco los
chequeos de nulls

- El metodo de cajasFromResultSet fue eliminado ya que no lo veia
necesario ya que operaba generaba una List con las cajas obtenidas por
el ResultSet y los de los 2 metodos que la invocaban, solo uno de ellos
necesitaba una lista, el otro solo obtenia el primero de la lista y
continuaba.

- Cambie el necesitar un LocalDate en el metodo que genera las cajas
para un mes, por un objeto con logico para esta situacion, el cual es
YearMonth, esto tuvo como consecuencia la mayoria de los cambios fuera
de esta clase.

- Renombre los metodos para que tuvieran nombres mas agradables para mi,
esto es lo otro que hizo cambiar muchas otras clases.
2019-03-01 22:40:09 -03:00
Daniel Cortes
0045f9da5a Se me olvido modificar el main! 2019-02-27 15:07:40 -03:00
Daniel Cortes
ba15401404 Agregado estilo al titulo
Se me habia olvidado :I
2019-02-27 15:03:39 -03:00
Daniel Cortes
59105566db Creado titulo en el informe
Esto es con el fin de identificar a que local pertence cuando sea
impreso
2019-02-27 14:48:18 -03:00
Daniel Cortes
413857a544 Movido el porcentaje de ppm
Fue movido a la columna B para poder cambiar todas las columnas en el
resumen general a la columna B, con el fin de obtener mayor uniformidad.
2019-02-27 14:38:00 -03:00
Daniel Cortes
6ca0999989 Cambios en los espacios en blanco 2019-02-27 14:29:48 -03:00
Daniel Cortes
94d13af428 Agregado el porcentaje de costo de venta 2019-02-27 14:29:05 -03:00
Daniel Cortes
b72bc1e1de Se corrieron todas las filas 2 filas hacia abajo. 2019-02-27 14:19:07 -03:00
Daniel Cortes
fdaf9bd3af Los bordes del se crean respecto a las filas
Antes se hacian con los ids de las filas peros e decidio hacerlo
automaticamente y leer las filas guardadas para obtener sus ids y
utilizarlos para crear los bordes.
2019-02-27 14:10:35 -03:00
Daniel Cortes
742347d618 Se añadio el campo de otro en servicios
Se habia olvidado hacer previamente
Junto con esto se eliminaron las funciones que generaban los headers y
footers y ahora se hace ese proceso en las funciones que generan cada
seccion.
2019-02-27 13:31:11 -03:00
Daniel Cortes
57d6d62b10 Metodos que creaban dialogos a clases
Se separaron estos metodos para mayor claridad en el codigo y mas facil
reutilizacion de los dialogos ya que ahora me vi en el caso de que me
encontraba utilizando estos metodos  en 2 vistas separadas y me vi
copiando los metodos de una a otra, pero eso no es bonito! asi que las
separe en clases con un solo metodo publico llamado execute el cual
devuelve el objeto que se espera recibir o un null en caso de que el
usuario cancele el dialogo o ocurra algun error.
2019-02-27 02:48:54 -03:00
Daniel Cortes
f5b44f32fe Tenia mal esa suma y estaba considerando cosas que no tenian que ver 2019-02-21 15:34:21 -03:00
Daniel Cortes
ed280ea8ca añadido sistema de auto actualizacion a travez de scripts sql numerados los cuales son almacenados en un simple archivo zip para evitar editarlos por error por un usuario comun )yn (ya si alguien los edita no es mi problema) 2019-02-21 13:30:36 -03:00
Daniel Cortes
e7eb6513dd Se creo una fila en la tabla de cajas en la que se almacena el fondo de esta, la cual sera mostrada en la vista de calcular fondo, donde sera actualizada segun diga el usuario 2019-02-20 14:06:58 -03:00
Daniel Cortes
08da94aba4 Las vistas fueron movidas con tal de conseguir un solo frame de programa y realizar todo el flujo dentro de el 2019-02-19 14:22:41 -03:00
Daniel Cortes
cef6b0f2e9 Tenia un error en el estado resultado, el campo de otros estaba calculando el de telefono, un error al copiar y pegar me imagino 2019-02-16 15:01:37 -03:00
Daniel Cortes
e65ac2bc10 Ahora todos los fields de las vistas vistas se mueven de la misma manera 2019-02-16 14:49:40 -03:00
Daniel Cortes
c2ff258cef Creado el movimiento con escape y enter en la vista de Estado resultado, se extendera a todo el resto el nuevo metodo por ser mas limpio 2019-02-16 14:18:28 -03:00
Daniel Cortes
d06a8f80f5 No me gusto como quedaba el codigo al colocar un boton de salida, por ahora se debera usar el nativo del sistema 2019-02-15 20:35:49 -03:00
Daniel Cortes
ea5bccdaba Se a cambiado la organizacion de las ventanas y se creo la vista de estado resultado junto con su modelo 2019-02-15 19:24:32 -03:00
Daniel Cortes
6388285108 movidas las vistas un poco para mayor claridad, eso espero, no es mi fuerte realmente 2019-02-11 15:28:07 -03:00
Daniel Cortes
c39b125eb1 Se movieron los dialogs a una ventana separada 2019-02-11 13:48:39 -03:00
Daniel Cortes
e5fe14bf5a El dialog que pregunta por el tipo egreso presentaba mal el texto de este mismo, se ocupo el wraper para solucionarlo 2019-02-05 19:29:34 -03:00