Class timer, JDBC e JSF

0 respostas
jsfjavamysql
Cesar_Ryan

Galera seguinte, preciso da ajuda de vocês, pois ja procurei, realizei vários testes e não consegui ainda fazer o que eu quero. Procurei aqui no forum e na internet e não achei nada que me atendesse, e tentei implementar de várias formas mas não deu certo.

Tenho essa tela.

quero que essa coluna tempo, primeiro fique como 00:00:00 e assim que a pessoa(usuario) se logar, ele inicie, 00:00:01, 00:00:02, 00:00:03 … e quando ele registrar a pausa, ao trocar a coluna status de disponivel para descanso, ele inicie do 00:00:00 e percorra: 00:00:01, 00:00:02, 00:00:03…

alguém pode me ajudar por favor?

@Entity
public class Usuario {

@Id
@Column(length = 7)
private String matricula;

@Column(length = 32, nullable = false)
private String senha;

@Transient
private String senhaCriptografada;

@Column(length = 55, nullable = false)
private String nome;

@Column(nullable = false)
private boolean status = false;

@Column(nullable = false)
private boolean logado = false;

@Column(nullable = false)
private Date tempo;

public Date getTempo() {
	return tempo;
}

public void setTempo(Date tempo) {
	this.tempo = tempo;
}

public boolean isLogado() {
	return logado;
}

public void setLogado(boolean logado) {
	this.logado = logado;
}

public boolean isStatus() {
	return status;
}

public void setStatus(boolean status) {
	this.status = status;
}

public String getMatricula() {
	return matricula;
}

public void setMatricula(String matricula) {
	this.matricula = matricula;
}

public String getSenha() {
	return senha;
}

public void setSenha(String senha) {
	this.senha = senha;
}

public String getSenhaCriptografada() {
	return senhaCriptografada;
}

public void setSenhaCriptografada(String senhaCriptografada) {
	this.senhaCriptografada = senhaCriptografada;
}

public String getNome() {
	return nome;
}

public void setNome(String nome) {
	this.nome = nome;
}

public String getFlagStatus() {
	if (this.isStatus()) {
		return "Descanso";
	}
	return "Disponível";
}

public String getFlagLogado() {
	if (this.isLogado()) {
		return "Logado";
	}
	return "off";
}

}

<h:form id="formListagem">
	<p:poll interval="5" listener="#{usuarioBean.listar}"
		update="tabela:status" />
	<p:dataTable id="tabela" value="#{usuarioBean.usuarios}" var="usuario">

		<p:column headerText="Usuário" sortBy="#{usuario.nome}">
			<h:outputText value="#{usuario.nome}" />
		</p:column>

		<p:column headerText="Status" sortBy="#{usuario.status}">
			<h:outputText value="#{usuario.flagStatus}" id="status" />
		</p:column>

		<p:column headerText="Tempo">
			<h:outputText value="#{usuario.tempo}">
				<f:convertDateTime type="date" pattern="HH:mm:ss" />
			</h:outputText>
		</p:column>

		<p:column headerText="Opções"
			rendered="#{autenticacaoBean.temPermissoes(['c010816'])}">
			<p:commandButton icon="ui-icon-trash"
				actionListener="#{usuarioBean.excluir}"
				update=":mensagem :formListagem:tabela">
				<p:confirm header="Confirmação" message="Deseja excluir o usuario"
					icon="ui-icon-alert" />
				<f:attribute name="usuarioSelecionado" value="#{usuario}" />
			</p:commandButton>

			<p:commandButton icon="fa fa-lock"
				actionListener="#{usuarioBean.liberarSessao}" update=":mensagem">
				<f:attribute name="usuarioSelecionado" value="#{usuario}" />
			</p:commandButton>

			<p:commandButton icon="fa fa-print"
				actionListener="#{usuarioBean.relatorio}"
				update=":formRelatorio:painelRelatorio"
				oncomplete="PF('dlgRelatorio').show();">
				<f:attribute name="usuarioSelecionado" value="#{usuario}" />

			</p:commandButton>

			<p:commandButton icon="ui-icon-pencil"
				actionListener="#{usuarioBean.editarCadastro}"
				update=":formCadastro:painel"
				oncomplete="PF('dlgEditarCadastro').show();">
				<f:attribute name="usuarioSelecionado" value="#{usuario}" />
				<f:actionListener
					type="org.omnifaces.eventlistener.ResetInputAjaxActionListener" />
			</p:commandButton>

		</p:column>

	</p:dataTable>

	<!-- Confirmação de exclusão de usuário -->
	<p:confirmDialog global="true">
		<p:commandButton value="Sim" type="button"
			styleClass="ui-confirmdialog-yes" icon="ui-icon-check" />
		<p:commandButton value="Não" type="button"
			styleClass="ui-confirmdialog-no" icon="ui-icon-close" />
	</p:confirmDialog>
</h:form>
<!-- Tabela de usuarios -->
Criado 20 de outubro de 2018
Respostas 0
Participantes 1