Dashboard con Paneles
Last updated
Was this helpful?
Last updated
Was this helpful?
En el index.xhtml
<b:row>
<b:column span="3">
<b:panel look="primary" collapsed="false" collapsible="false">
<f:facet name="heading">
<i class="fa fa-television" style="padding-right:20px" />
<p:outputLabel value="#{msg['label.totalarticulos']}" />
<b:badge style="margin-left:10px;" value="#{dashboardIndexController.totalarticulos}" />
</f:facet>
<b:commandLink value="#{msg['commandlink.agregararticulo']}" outcome="/pages/articulo/list" rendered="#{applicationMenu.articulo.menu}"/>
</b:panel>
</b:column>
<b:column span="3">
<b:panel look="primary" collapsed="false" collapsible="false">
<f:facet name="heading">
<i class="fa fa-address-card" style="padding-right:20px" />
<p:outputLabel value="#{msg['label.totalclientes']}" />
<b:badge style="margin-left:10px;;" value="#{dashboardIndexController.totalclientes}" />
</f:facet>
<b:commandLink value="#{msg['commandlink.agregarclientes']}" outcome="/pages/cliente/list" rendered="#{applicationMenu.cliente.menu}"/>
</b:panel>
</b:column>
<b:column span="3">
<b:panel look="primary" collapsed="false" collapsible="false">
<f:facet name="heading">
<i class="fa fa-briefcase" style="padding-right:20px" />
<p:outputLabel value="#{msg['label.totalfacturas']}" />
<b:badge style="margin-left:10px; " value="#{dashboardIndexController.totalfacturas}" />
</f:facet>
<b:commandLink value="#{msg['commandlink.agregarfacturas']}" outcome="/pages/factura/list" rendered="#{applicationMenu.factura.menu}"/>
</b:panel>
</b:column>
<b:column span="3">
<b:panel look="primary" collapsed="false" collapsible="false">
<f:facet name="heading">
<i class="fa fa-briefcase" style="padding-right:20px" />
<p:outputLabel value="#{msg['label.totalordenes']}" />
<b:badge style="margin-left:10px; " value="#{dashboardIndexController.totalordenes}" />
</f:facet>
<b:commandLink value="#{msg['commandlink.agregarordenes']}" outcome="/pages/orden/list" rendered="#{applicationMenu.orden.menu}"/>
</b:panel>
</b:column>
</b:row>
Controller
@Named
@ViewScoped
public class DashboardIndexController implements Serializable {
// <editor-fold defaultstate="collapsed" desc="fields">
private static final long serialVersionUID = 1L;
@Inject
ClienteRepository clienteRepository;
@Inject
AlmacenRepository almacenRepository;
@Inject
ArticuloRepository articuloRepository;
@Inject
OrdenRepository ordenRepository;
@Inject
FacturaRepository facturaRepository;
@Inject
LoginController loginController;
ErrorInfoStoreejbServices errorServices;
@Inject
ResourcesFiles rf;
Integer totalarticulos;
Integer totalclientes;
Integer totalordenes;
Integer totalfacturas;
// </editor-fold>
/**
* Creates a new instance of DashboardController
*/
public DashboardIndexController() {
}
// <editor-fold defaultstate="collapsed" desc="init">
@PostConstruct
public void init() {
calcularTotales();
} // </editor-fold>
public Integer getTotalordenes() {
return totalordenes;
}
public void setTotalordenes(Integer totalordenes) {
this.totalordenes = totalordenes;
}
public Integer getTotalclientes() {
return totalclientes;
}
public void setTotalclientes(Integer totalclientes) {
this.totalclientes = totalclientes;
}
public Integer getTotalfacturas() {
return totalfacturas;
}
public void setTotalfacturas(Integer totalfacturas) {
this.totalfacturas = totalfacturas;
}
public Integer getTotalarticulos() {
return totalarticulos;
}
public void setTotalarticulos(Integer totalarticulos) {
this.totalarticulos = totalarticulos;
}
// <editor-fold defaultstate="collapsed" desc="calcularTotales()">
public void calcularTotales(){
try {
Document doc ;
totalarticulos = articuloRepository.count(new Document("activo","si"));
totalclientes = clienteRepository.count(new Document("activo","si"));
totalordenes =ordenRepository.count(new Document("activo","si"));
doc = new Document("almacen.idalmacen",loginController.getAlmacen().getIdalmacen());
totalfacturas =facturaRepository.count(doc);
} catch (Exception e) {
errorServices.errorMessage(JsfUtil.nameOfClass(),JsfUtil.nameOfMethod(), e.getLocalizedMessage());
}
}
// </editor-fold>
// <editor-fold defaultstate="collapsed" desc="goArticulos()">
public String goArticulos(){
return "/pages/articulo/view.xhtml";
}
// </editor-fold>
// <editor-fold defaultstate="collapsed" desc="goArticulos()">
public String goFactura(){
return "/pages/factura/list.xhtml";
}
// </editor-fold>
}