Mas documentacion!!

Bendita documentacion <3
This commit is contained in:
Daniel Cortes
2018-12-31 21:40:27 -03:00
parent 1e45becc97
commit 070a12b54e
6 changed files with 307 additions and 172 deletions

View File

@@ -50,9 +50,17 @@ import javax.swing.*;
import java.awt.*;
import java.time.LocalDate;
/**
* Controlador destinado a controlar la vista de ManagerView
* Ademas es la que crea las vistas internas en un CardLayaut junto a sus controladores
*/
public class ManagerController {
private ManagerView view;
private IngresosController ingresosController;
private EgresosController egresosController;
private ArqueoController arqueoController;
private CajaDAO cajaDAO;
private DocumentosDAO documentosDAO;
private EfectivoDAO efectivoDAO;
@@ -60,10 +68,18 @@ public class ManagerController {
private IngresoDAO ingresoDAO;
private TipoEgresoDAO tipoEgresoDAO;
private TipoIngresoDAO tipoIngresoDAO;
private IngresosController ingresosController;
private EgresosController egresosController;
private ArqueoController arqueoController;
/**
* Crea el controlador
* Necesita todos las interfaces DAO para poder asignarselos a sus vistas,
* esto con el objetivo que sean facilmente intercambiables.
*
* Llama a los metodos que:
* - Cargan el contenido del CardLayout
* - Selecciona una fecha inicial
* - Genera los eventos de la vista
* - Presiona el boton de la vista inicial
*/
public ManagerController(ManagerView view, CajaDAO cajaDAO, DocumentosDAO documentosDAO, EfectivoDAO efectivoDAO, EgresoDAO egresoDAO, IngresoDAO ingresoDAO, TipoEgresoDAO tipoEgresoDAO, TipoIngresoDAO tipoIngresoDAO) {
this.view = view;
this.cajaDAO = cajaDAO;
@@ -79,11 +95,19 @@ public class ManagerController {
this.pressInitialButton();
}
/**
* Coloca la fecha actual en el datepicker y luego llama a actualizar las cajas de las vistas
*/
private void setUpDate(){
this.view.getDatePicker().setDateToToday();
this.updateCaja();
}
/**
* Setea los eventos de los botones y el datepicker
* - Cada vez que se cambia la fecha en el datepicker se llama a actualizar la caja
* - Cuando se presiona uno de los botones muestra la vista correspondiente en el cardlayout
*/
private void setUpViewEvents() {
this.view.getEgresosButton().addActionListener(e -> {
CardLayout layout = (CardLayout) this.view.getCardPanel().getLayout();
@@ -93,17 +117,18 @@ public class ManagerController {
CardLayout layout = (CardLayout) this.view.getCardPanel().getLayout();
layout.show(this.view.getCardPanel(), "INGRESOS");
});
this.view.getArqueoButton().addActionListener(e -> {
this.arqueoController.updateResumen();
CardLayout layout = (CardLayout) this.view.getCardPanel().getLayout();
layout.show(this.view.getCardPanel(), "ARQUEO");
});
this.view.getDatePicker().addDateChangeListener(e -> updateCaja());
}
/**
* Llama a update caja con la fecha seleccionada en el datepicker en los controladores del manager.
*/
private void updateCaja(){
LocalDate selectedDate = this.view.getDatePicker().getDate();
Caja caja = this.cajaDAO.findByFecha(selectedDate);
@@ -127,12 +152,18 @@ public class ManagerController {
this.arqueoController.updateCaja(caja);
}
/**
* Llama a los metodos que cargan las vistas que estaran dentro del cardlayout
*/
private void loadCardContents() {
this.loadEgresosView();
this.loadIngresosView();
this.loadArqueoView();
}
/**
* Crea la vista de ingresos, la agrega a el cardlayout y se le es asignado a su controlador
*/
private void loadIngresosView() {
IngresosView ingresosView = new IngresosView();
@@ -141,6 +172,9 @@ public class ManagerController {
this.ingresosController = new IngresosController(ingresosView, this.ingresoDAO, this.tipoIngresoDAO);
}
/**
* Crea la vista de egresos, la agrega a el cardlayout y se le es asignado a su controlador
*/
private void loadEgresosView() {
EgresosView egresosView = new EgresosView();
@@ -149,6 +183,9 @@ public class ManagerController {
this.egresosController = new EgresosController(egresosView, this.egresoDAO, this.tipoEgresoDAO);
}
/**
* Crea la vista de arqueo, la agrega a el cardlayout y se le es asignado a su controlador
*/
private void loadArqueoView() {
ArqueoView arqueoView = new ArqueoView();
@@ -157,6 +194,9 @@ public class ManagerController {
this.arqueoController = new ArqueoController(arqueoView, this.efectivoDAO, this.documentosDAO, this.ingresoDAO, this.egresoDAO);
}
/**
* Activa el primer boton del manager
*/
private void pressInitialButton() {
this.view.getIngresosButton().doClick();
}