vistas admin

Por último vamos con las vistas creamos en src/main/webapp el archivo admin.xhtml
 
   
   <html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui">
    
    <h:head>
    </h:head>

    <h:body>
    
    <ui:composition template="plantillaAdmin.xhtml">
	</ui:composition>
    
        
        
                
        
    </h:body>
</html>  
   
   
     

Creamos el archvo contenido.xhtml
 
     
   
   <html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui">
    
    <h:head>
    </h:head>

    <h:body>
    
    
  <ui:composition>
     
       <h1>Bienvenido a Survey 10</h1>
      
      
           
        
  </ui:composition>              
        
    </h:body>
</html>
   
   
   
   
   
     

Creamos el archivo contenidoAdmin.xhtml
 
     
  <html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui">
    
    <h:head>
    </h:head>

    <h:body>
    
    
  <ui:composition>
     
       <h1>Survey 10</h1>
      
      <p>Elige la opción de menú que necesites realizar.</p>
      
      
      
      
      
      
        
  </ui:composition>              
        
    </h:body>
</html>
  
  
  
  
     

Creamos el archivo encabezado.xhtml
 
    
  
  <html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui">
    
    <h:head>
    </h:head>

    <h:body>
    
    
    <ui:composition>
        <div class="card">
    <h:form>
<p:growl id="messages"/>
<p:menubar>
<p:submenu label="Administrar" icon="ui-icon-document">
<p:menuitem value="Encuesta"  url="http://localhost:8090/surveyencuesta/"  />

<p:separator />

</p:submenu>

</p:menubar>

</h:form>

</div>
        
    </ui:composition>    
                
        
    </h:body>
</html>
  
  
  
     

Creamos el archivo encabezadoAdmin.xhtml
 
            
     <html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui"
    xmlns:c="http://java.sun.com/jstl/core">
  
    <h:head>
    </h:head>

    <h:body>
    
    
    <ui:composition>
        <div class="card">
    <h:form>
<p:growl id="messages"/>
<p:menubar>
<p:submenu label="Encuesta" icon="ui-icon-document">

<p:menuitem value="Generar Encuesta"  outcome="generarEncuesta.xhtml" />
<p:separator />

</p:submenu>
<p:submenu label="Historial" icon="ui-icon-pencil">
<p:menuitem value="Historial Encuestas" outcome="historialEncuesta"/>

</p:submenu>


<p:menuitem value="Salir" action="#{loginView.logout()}" icon="ui-icon-close" />

</p:menubar>

</h:form>

</div>
        
    </ui:composition>    
                
        
    </h:body>
</html>          
        
  
     

Creamos el archivo encuesta.xhtml
 
     
   
   <html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui">
    
    <h:head>
    </h:head>

    <h:body>
    
    <ui:composition template="plantilla.xhtml">
	</ui:composition>
    
        
        
                
        
    </h:body>
</html>
   
   
   
     

Creamos el archivo generarEncuesta.xhtml
 
     
  
  <html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui">
    
    <h:head>
    </h:head>

    <h:body>
    
    <ui:composition template="plantillaAdmin.xhtml">
	
	
	<ui:define name="contentAdmin"  >
	<h:form  id="form">
 
  <p:panel header="Generar Encuesta" footer="Tutosoftware" style="color:white" >
	
   <h:panelGrid columns="3" cellpadding="5">
<h:outputLabel value="Nombre de la encuesta:" for="nombreEncuesta"  style="color:white" />
<p:inputText id="nombreEncuesta"   value="#{generarEncuestaView.nombreEncuesta}" 
 size="100" required="true" requiredMessage="Nombre de la encuesta requerida" >
</p:inputText>
<p:message for="nombreEncuesta"   ></p:message>

<h:outputLabel value="Pregunta1 si/no:" for="pregunta1SiNo"  style="color:white" />
<p:inputText id="pregunta1SiNo"   value="#{generarEncuestaView.pregunta1SiNo}" 
 size="100" required="true" requiredMessage="Pregunta requerida" >
</p:inputText>
<p:message for="pregunta1SiNo"></p:message>

<h:outputLabel value="Pregunta2 si/no:" for="pregunta2SiNo"  style="color:white" />
<p:inputText id="pregunta2SiNo"   value="#{generarEncuestaView.pregunta2SiNo}" 
 size="100" required="true"  requiredMessage="Pregunta requerida"  >
</p:inputText>
<p:message for="pregunta2SiNo"></p:message>

<h:outputLabel value="Pregunta3 si/no:" for="pregunta3SiNo"  style="color:white" />
<p:inputText id="pregunta3SiNo"   value="#{generarEncuestaView.pregunta3SiNo}" 
 size="100" required="true"  requiredMessage="Pregunta requerida"  >
</p:inputText>
<p:message for="pregunta3SiNo"></p:message>

<h:outputLabel value="Pregunta4 si/no:" for="pregunta4SiNo"  style="color:white" />
<p:inputText id="pregunta4SiNo"   value="#{generarEncuestaView.pregunta4SiNo}" 
 size="100" required="true" requiredMessage="Pregunta requerida" >
</p:inputText>
<p:message for="pregunta4SiNo"></p:message>

<h:outputLabel value="Pregunta5 si/no:" for="pregunta5SiNo"  style="color:white" />
<p:inputText id="pregunta5SiNo"   value="#{generarEncuestaView.pregunta5SiNo}" 
 size="100" required="true"  requiredMessage="Pregunta requerida" >
</p:inputText>
<p:message for="pregunta5SiNo"></p:message>

<h:outputLabel value="Pregunta6 si/no:" for="pregunta6SiNo"  style="color:white" />
<p:inputText id="pregunta6SiNo"   value="#{generarEncuestaView.pregunta6SiNo}" 
 size="100" required="true" requiredMessage="Pregunta requerida" >
</p:inputText>
<p:message for="pregunta6SiNo"></p:message>
	
<h:outputLabel value="Pregunta7 si/no:" for="pregunta7SiNo"  style="color:white" />
<p:inputText id="pregunta7SiNo"   value="#{generarEncuestaView.pregunta7SiNo}" 
 size="100" required="true" requiredMessage="Pregunta requerida" >
</p:inputText>	
<p:message for="pregunta6SiNo"></p:message>	

<h:outputLabel value="Pregunta8 Texto abierto:" for="pregunta8Texto"  style="color:white" />
<p:inputText id="pregunta8Texto"   value="#{generarEncuestaView.pregunta8Texto}" 
 size="100" required="true" requiredMessage="Pregunta requerida">
</p:inputText>	
<p:message for="pregunta8Texto"></p:message>

<h:outputLabel value="Pregunta9 Calif1-5:" for="pregunta9Calif"  style="color:white" />
<p:inputText id="pregunta9Calif"   value="#{generarEncuestaView.pregunta9Calif}" 
 size="100" required="true" requiredMessage="Pregunta requerida">
</p:inputText>
<p:message for="pregunta9Calif"></p:message>	

<h:outputLabel value="Pregunta10 Calif1-5:" for="pregunta10Calif"  style="color:white" />
<p:inputText id="pregunta10Calif"   value="#{generarEncuestaView.pregunta10Calif}" 
 size="100" required="true" requiredMessage="Pregunta requerida" >
</p:inputText>
<p:message for="pregunta10Calif"></p:message>


<p:commandButton  value="Crear Encuesta"  action="#{generarEncuestaView.crearEncuesta}" update="form" ></p:commandButton>



</h:panelGrid>		
</p:panel>	
 </h:form>	
	
	
	
	</ui:define>
	
	
	
	
	</ui:composition>
    
        
        
                
        
    </h:body>
</html>
  
     

Creamos el archivo graficoEncuesta.xhtml
 
    
   <html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui"
    xmlns:c="http://java.sun.com/jstl/core">
    
    <h:head>
    </h:head>

    <h:body>
    
    <ui:composition template="plantillaAdmin.xhtml">
	
	
	<ui:define name="contentAdmin"  >
	<h:form  id="form">
 
  <p:panel header="Estadísticas" footer="Tutosoftware" style="color:white" >
	
 	
 	<h1>Número de encuestas respondidas es #{estadisticaEncuestaView.estadistica.totalRespuesta}</h1>
 	
 	<h4>Pregunta1: #{estadisticaEncuestaView.re.pregunta1SiNo}</h4>
 	
 	<div class="card">
    <p:pieChart model="#{estadisticaEncuestaView.pieModel1}" style="width: 100%; height: 400px;"/>
    </div>
 	
 	<h4>Pregunta2: #{estadisticaEncuestaView.re.pregunta2SiNo}</h4>
 	
 	<div class="card">
    <p:pieChart model="#{estadisticaEncuestaView.pieModel2}" style="width: 100%; height: 400px;"/>
    </div>
 	
 	<h4>Pregunta3: #{estadisticaEncuestaView.re.pregunta3SiNo}</h4>
 	
 	<div class="card">
    <p:pieChart model="#{estadisticaEncuestaView.pieModel3}" style="width: 100%; height: 400px;"/>
    </div>
 	
 	<h4>Pregunta4: #{estadisticaEncuestaView.re.pregunta4SiNo}</h4>
 	
 	<div class="card">
    <p:pieChart model="#{estadisticaEncuestaView.pieModel4}" style="width: 100%; height: 400px;"/>
    </div>
 	
 	
 	<h4>Pregunta5: #{estadisticaEncuestaView.re.pregunta5SiNo}</h4>
 	
 	<div class="card">
    <p:pieChart model="#{estadisticaEncuestaView.pieModel5}" style="width: 100%; height: 400px;"/>
    </div>
 	
 	<h4>Pregunta6: #{estadisticaEncuestaView.re.pregunta6SiNo}</h4>
 	
 	<div class="card">
    <p:pieChart model="#{estadisticaEncuestaView.pieModel6}" style="width: 100%; height: 400px;"/>
    </div>
 	
 	<h4>Pregunta7: #{estadisticaEncuestaView.re.pregunta7SiNo}</h4>
 	
 	<div class="card">
    <p:pieChart model="#{estadisticaEncuestaView.pieModel7}" style="width: 100%; height: 400px;"/>
    </div>
 	
 	<div class="card">
    <h5>#{estadisticaEncuestaView.re.pregunta9Calif}</h5>
    <p:barChart model="#{estadisticaEncuestaView.barModel}" style="width: 100%; height: 500px;"/>
    </div>
 	
 	<div class="card">
    <h5>#{estadisticaEncuestaView.re.pregunta10Calif}</h5>
    <p:barChart model="#{estadisticaEncuestaView.barModel2}" style="width: 100%; height: 500px;"/>
    </div>
 	
</p:panel>	
 </h:form>	
	
	
	
	</ui:define>
	
	
	
	
	</ui:composition>
    
        
        
                
        
    </h:body>
</html>
   
   
   
   
     

Creamos el archivo historialEncuesta.xhtml
 
   
  <html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui"
    xmlns:c="http://java.sun.com/jstl/core">
    
    <h:head>
    </h:head>

    <h:body>
    
    <ui:composition template="plantillaAdmin.xhtml">
	
	
	<ui:define name="contentAdmin"  >
	<h:form  id="form">
 
  <p:panel header="Historial de Encuestas Generadas" footer="Tutosoftware" style="color:white" >
	
 	
 	<div class="card">
        <p:dataTable var="listaEncuesta" value="#{historialEncuestaView.listaEncuesta}"
        rowIndexVar="index" row="10" paginator="true">
        
          <p:column headerText="# Encuesta">
        <f:facet name="encuesta">
            <h:outputText value="index" />
        </f:facet>
        <h:outputText 
            value="#{index + 1}"  />
    </p:column>
        
        
        
            <p:column headerText="Nombre de la encuesta">
                <h:outputText value="#{listaEncuesta.nombreEncuesta}" />
            </p:column>

            <p:column headerText="Status 0=Desactivada 1=Activa">
             
            <h:outputText value="#{listaEncuesta.activarEncuesta}" />
            
            </p:column>
            
            
            <p:column headerText="Ver Encuestas">
             
           <p:commandButton  value="Mostrar Estadística" 
           action="#{estadisticaEncuestaView.mostrarEstadisticoEncuesta(listaEncuesta.tablaEncuesta)}" >
           </p:commandButton>
            
            </p:column>
            
              <p:column headerText="Preguntas Abiertas">
             
           <p:commandButton  value="Mostrar Respuestas" 
           action="#{estadisticaEncuestaView.mostrarRespuestaAbiertas(listaEncuesta.tablaEncuesta)}" >
           </p:commandButton>
            
            </p:column>
            
        </p:dataTable>
    </div>
 	
 	
 	
 	
 	
 	
</p:panel>	
 </h:form>	
	
	
	
	</ui:define>
	
	
	
	
	</ui:composition>
    
        
        
                
        
    </h:body>
</html>
  
  
  
  
     

Creamos el archivo login.xhtml
 
   
  <html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui">
    
    <h:head>
    </h:head>

    <h:body>
    
   
 <ui:composition template="plantilla.xhtml" >
 <ui:define name="content"  >
 
 
 
 <h:form>
 <p:growl id="messagesLogin"/>
  <p:panel header="Ingresar usuario y contraseña" footer="Tutosoftware">
  
  
  <h:panelGrid columns="2" cellpadding="5">
<h:outputLabel value="Email:" for="email"  style="color:white" />
<p:inputText id="email"   value="#{loginView.email}" required="true" label="usuario">
</p:inputText>

<h:outputLabel value="Contraseña:" for="password" style="color:white"  />
<p:password id="password" value="#{loginView.password}"     required="true" label="password">
</p:password>

<f:facet name="footer">

<p:commandButton  value="Acceder" action="#{loginView.loginSurvey}" update="messagesLogin" ></p:commandButton>

</f:facet>

</h:panelGrid>
  
  
  
  
        
   </p:panel>
 
 
 
 
 
 
 
 </h:form>
 
 
 
 
 
 
 
 </ui:define>
 </ui:composition>
 
        
    </h:body>
</html>
  
  
  
  
     

Creamos el archivo plantilla.xhtml
 
   
  <html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui">
    
    <h:head>
    </h:head>

    <h:body>
    
    
 <ui:insert name="header">
				<ui:include src="encabezado.xhtml"></ui:include>
</ui:insert>
  <ui:insert name="content">
				<ui:include src="contenido.xhtml"></ui:include>
</ui:insert>      
        
    </h:body>
</html>
  
  
  
     

Creamos el archivo plantillaAdmin.xhtml
 
   
  <html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui">
    
    <h:head>
    </h:head>

    <h:body>
    
    
 <ui:insert name="headerAdmin">
				<ui:include src="encabezadoAdmin.xhtml"></ui:include>
</ui:insert>
  <ui:insert name="contentAdmin">
				<ui:include src="contenidoAdmin.xhtml"></ui:include>
</ui:insert>      
        
    </h:body>
</html>
  
     

Creamos la última vista del modulo admin respuestaEncuesta.xhtml
 
   
  
  <html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui"
    xmlns:c="http://java.sun.com/jstl/core">
    
    <h:head>
    </h:head>

    <h:body>
    
    <ui:composition template="plantillaAdmin.xhtml">
	
	
	<ui:define name="contentAdmin"  >
	<h:form  id="form">
 
  <p:panel header="Respuestas Abiertas" footer="Tutosoftware" style="color:white" >
	
 	
 	<h1>Respuestas a la pregunta8: #{estadisticaEncuestaView.re.pregunta8Texto} </h1>
 	
 	
 	
 	<div class="card">
        <p:dataTable var="respuesta" value="#{estadisticaEncuestaView.listaRespuestas}"
        rowIndexVar="index" row="10" paginator="true">
        
          <p:column headerText="# Respuesta">
        <f:facet name="respuesta">
            <h:outputText value="index" />
        </f:facet>
        <h:outputText 
            value="#{index + 1}"  />
    </p:column>
        
        
        
            <p:column headerText="Respuesta">
                <h:outputText value="#{respuesta}" />
            </p:column>

           
            
        </p:dataTable>
    </div>
 	
 	
 	
</p:panel>	
 </h:form>	
	
	
	
	</ui:define>
	
	
	
	
	</ui:composition>
    
        
        
                
        
    </h:body>
</html>