consulta de presupuesto
Esta es la consulta del presupuesto, donde el Administrador puede seleccionar el empleado al cual desea consultarle, y elegir el rango de fechas, en esta tabla formada con yui, vamos a mostrar el nombre del empleado, la fecha en q se realizo el presupuesto, el total del presupuesto, las categorias q fueron presupuestadas, y el valor q se le presupuesto a cada categoria.
consulta por 3 parametros
Esta es una consulta por 3 parametros, nombre, apellido y rol de los usuarios.
consulta por iniciales
Aqui podemos tambien consultar por iniciales
autocompletar
La caja de texto nombre tiene la opcion de autocompletar con los usuarios que existen en la base de datos
balance de un empleado
Aqui consultamos el Balance de un empleado en particular, por un rango de fechas, comunmente el balance se lo saca cada mes, y es el detalle de los ingresos menos los egresos, en este caso en el mes de Enero a el le quedo un Total de $1000. Esto lo realiza en Administrador.
movimiento de un empleado
Esta es la consulta de Movimientos que realiza el Administrador a cualquier Empleado, en este caso la consulta fue de tipo egreso, aquí aparecen en una tabla de yui los datos del empleado, el tipo de movimiento, la fecha en q se realizo el egreso, el ítem en el q realizo un egreso, la categoría a la que pertenece ese ítem, y el valor que se gasto en ese ítem, en caso de haber un movimiento tipo Viaje, aparecerá un mapa de google, que al hacer click en consultar le mostrara los lugares donde viajó, y al hacer click izquierdo en el marcador le mostrará mas detalles de ese movimiento de egreso. Aquí consultamos por Empleado, por Tipo, y por un rango de fechas.
Para enviar los datos se creo esta estructura XML
if(opcion.equals(«consultaBalance»)){
HttpSession ses=request.getSession();
PrintWriter out = response.getWriter();
String fechini=request.getParameter(«fechai»);
String fechfin=request.getParameter(«fechaf»);
Tbusuario us=(Tbusuario)ses.getAttribute(«usuario»);
AgendaHelper ag = new AgendaHelper();
ArrayList balan=ag.getBalance(fechini, fechfin, us.getIdUsuario());
String archivoXML=new String();
response.setContentType(«text/xml;charset=UTF-8″);
archivoXML=»<?xml version=\»1.0\» encoding=\»UTF-8\»?><Resultado>»;
for(int i=0;i<balan.size();i++){
Balance b=(Balance)balan.get(i);
archivoXML=archivoXML+»<Consulta><Fecha>»+b.getFechaIngreso()+»</Fecha>»;
archivoXML=archivoXML+»<Ingreso>»+b.getIngreso()+»</Ingreso>»;
archivoXML=archivoXML+»<Egreso>»+b.getEgreso()+»</Egreso>»;
archivoXML=archivoXML+»<Total>»+b.getTotal()+»</Total></Consulta>»;
}
archivoXML=archivoXML+»</Resultado>»;
out.write(archivoXML);
System.out.println(archivoXML);
}
Este es un ejemplo de mas o menos como seria la consulta de los gastos ahi tendramos q implentar la parte de los graficos
public List getGastoCategoria(String fechaini, String fechafin, int idUser){
List lista = null;
try{
session.beginTransaction();
Query q=session.createQuery(«select e.total, c.nombre from tbegreso e, tbitemegreso ie, tbcategoria c where e.idegreso = ie.iditemegreso and ie.iditemegreso = c.idcategoria and c.idcategoria = 1»);
lista = q.list();
}
catch(Exception e){
e.printStackTrace();
}
return lista;
}
Aquí se presenta un poco como funciona esta tecnología…
admin
Este es el Screenshot de un Administrador
Con esta clase tenemos al objeto SessionFactory.
package clases;
import org.hibernate.cfg.AnnotationConfiguration;
import org.hibernate.SessionFactory;
public class HibernateUtil {
private static final SessionFactory sessionFactory;
static {
try {
sessionFactory = new AnnotationConfiguration().configure().buildSessionFactory();
} catch (Throwable ex) {
// Log the exception.
System.err.println(«Initial SessionFactory creation failed.» + ex);
throw new ExceptionInInitializerError(ex);
}
}
public static SessionFactory getSessionFactory() {
return sessionFactory;
}
}