Você está na página 1de 198

################################################################################ ######### ################################## Assinatura de Email ######################### ######### ################################################################################ ######### Alison Buss de Arruda Infox Tecnologia da Informao

Ltda alisson@infox.com.br Desenvolvedor Web - Matriz Aracaju Tel.: +55 79 3211-5122 Ramal: 215 Atenciosamente, Fernanda Alison Buss de Arruda +55 (79) 8836-6857 / 3223-2780 Aracaju - Sergipe - Brasil No arquivo (PJE2\WEB-INF\src\action\br\com\infox\cliente\home\ConsultaProcessoHo me.java) foi modificado a condio do IF para poder mostrar a marcara do numero juri sdio origem com 4 zeros. Com essas correes foi corrigido o bug, refs #2761 ################################################################################ ######### integracao@infox.com.br marivaldo@infox.com.br, sarabarros@infox.com.br Boa tarde. Solicito por gentiliza a integrao descrita em anexo. Alison Buss de Arruda Infox Tecnologia da Informao Ltda alisson@infox.com.br Desenvolvedor Web/ Usabilidade - Matriz Aracaju Tel.: +55 79 3211-5122 Ramal: 215 <value>qlqrValor: { properties : { style: "width: 30px;" } }</value> elenildes@infox.com.br, sarabarros@infox.com.br claryanneguimaraes@infox.com.br Boa tarde.

Alison Buss de Arruda Infox Tecnologia da Informao Ltda alisson@infox.com.br Desenvolvedor Web / Usabilidade - Matriz Aracaju Tel.: +55 79 3211-5122 Ramal: 215

################################################################################ ######### <s:div rendered="#{empty showMsg ? true : showMsg}" > -----#{facesContext.maximumSeverity != null}---<style> .noMaskClass .rich-mpnl-mask-div{ display:none; } </style> <script> function timeClose(){ setTimeout("Richfaces.hideModalP anel('msgPanel')", 4000); } </script> <rich:modalPanel id="msgPanel" height="100" onshow="timeClose();" styleClass="noMaskClass" showWhenRendered="#{facesContext.maximum Severity != null}"> <f:facet name="header">Mensagem</f:facet > <f:facet name="controls"> <h:panelGroup> <h:graphicImage value="/ img/closeMP.gif" onclick="Richfac es.hideModalPanel('msgPanel')"/> </h:panelGroup> </f:facet> <rich:messages id="#{formId}Messages" globalOnly="true" infoClass="formMessage" style="margin: 5px" errorClass="error formMessage" warnStyle="display: none" /> </rich:modalPanel> </s:div> if(instance.getNumeroSequencia() != null instance.getNumeroDigitoVerificador() != null instance.getAno() != null instance.getNumeroOrigemProcesso() != null instance.getNomeParte() != null

(!Strings.isEmpty(instance.getNumeroCNPJ())) (!Strings.isEmpty(instance.getNumeroCPF())) ( !instance.getLetraOABParte().isEmpty() && !instance.getNumeroOABParte().isEmpty() && instance.getUfOABParte() != null )){ setAtivarGrid(Boolean.TRUE); }else{ setAtivarGrid(Boolean.FALSE); FacesMessages.instance().add(StatusMessage.Severity.INFO , "Para realizar a pesquisa, informe pelo menos um dos seguintes campos: Numero do Processo; Nome da Parte; CPF ou CNPJ; OAB(UF 000000 A)."); FacesMessages.instance().addToControl("globalMessagesS", StatusMessage.Severity.INFO, "Para realizar a pesquisa, informe pelo menos um d os seguintes campos: Numero do Processo; Nome da Parte; CPF ou CNPJ; OAB(UF 0000 00 A)."); } Contexts.getConversationContext().remove("consultaPublicaGrid");

<s:div rendered="#{empty showMsg ? true : showMsg}" > ----- #{facesContext.maximumSeverity != null} ---<style> .noMaskClass .rich-mpnl-mask-div{ display:none; } </style> <script> function timeClose(){ setTimeout("Richfaces.hideModalP anel('msgPanel')", 4000); } var temp = "#{facesContext.maximumSeveri ty != null}"; if(temp == "true"){ alert(temp + " : temp"); Richfaces.showModalPanel('msgPan el'); } </script> <rich:modalPanel id="msgPanel" height="100" onshow="timeClose();" styleClass="noMaskClass"> <f:facet name="header">Mensagem</f:facet > <f:facet name="controls"> <h:panelGroup> <h:graphicImage value="/ img/closeMP.gif" onclick="Richfac es.hideModalPanel('msgPanel')"/> </h:panelGroup> </f:facet>

<rich:messages id="#{formId}Messages" globalOnly="true" infoClass="formMessage" style="margin: 5px" errorClass="error formMessage" warnStyle="display: none" /> </rich:modalPanel> </s:div>

PJE3PersistenceUnit = PJETempPersistenceUnit PJE3ConsolePersistenceUnit = PJETempConsolePersistenceUnit PJE3_DS = PJETemp_DS PJE3_DSBin = PJETemp_DSBin daltnico e ambliope <s:div rendered="#{empty showMsg ? true : showMsg}" > <style> .noMaskClass .rich-mpnl-mask-div{ display:none; } </style> <script> function timeClose(){ setTimeout("Richfaces.hideModalP anel('msgPanel')", 4000); } </script> <rich:modalPanel id="msgPanel" height="100" onshow="timeClose();" styleClass="noMaskClass" showWhenRendered="#{facesContext.maximum Severity != null}"> <f:facet name="header">Mensagem</f:facet

> <f:facet name="controls"> <h:panelGroup> <h:graphicImage value="/ img/closeMP.gif" onclick="Richfac es.hideModalPanel('msgPanel')"/> </h:panelGroup> </f:facet> <rich:messages id="#{formId}Messages" globalOnly="true" infoClass="formMessage" style="margin: 5px" errorClass="error formMessage" warnStyle="display: none" /> </rich:modalPanel> </s:div>

<s:div rendered="#{empty showMsg ? true : showMsg}" > <!-- JS DO JQUERY UI--> <script type="text/javascript" src="#{util.contextPath}/js/jquery-ui-1.8.4. custom/js/jquery-1.4.2.min.js"> </script> <script type="text/javascript" src="#{util.contextPath}/js/jquery-ui-1.8.4. custom/js/jquery-ui-1.8.4.custom.min.js"> </script> <!-- CSS DO JQUERY UI--> <link rel="stylesheet" type="text/css" href="#{util.contextPath}#{a4jSkin.srcThemesJQ ueryUI}" /> <style type="text/css"> <!-.toggler { position: fixed; top: 20px; left:20px; width: 500px; height: 200px; } #effect { width: 240px; height: 135px; padding: 12px; position: relative; font-size: medium;} #effect h3 { margin: 0; padding: 12px; text-align: center; } --> </style> <script type="text/javascript"> function runEffect(){ //alert('sdsds'); //$("#toggler").css("display: no ne;"); $("#effect").show("blind",null,5

00,callback); }; function callback(){ setTimeout(function(){ $("#effect:visible").rem oveAttr('style').hide().fadeOut(); }, 3000); }; $("#effect").hide(); </script> <div class="toggler"> <div id="effect" class="ui-widget-conten t ui-corner-all"> <h3 class="ui-widget-header ui-c orner-all">Mensagem</h3> <p> <rich:messages id="#{formId}Messages" globalOnly="true" infoClass="formMessage" style="margin: 5px" errorClass="error formMessag e" warnStyle="display: none"> <script type="text/javascrip t"> runEffec t(); </script> </rich:messages> </p> </div> </div> </s:div> Resumo do Relatrio: Servio responsvel por manter a usabilidade do sistema Pje para os seguintes navega dores o internet explore (V-tal) e o Mozilla Firefox (V-tal), criar e adaptar interfaces mas legveis e de fcil comp reenso para os usurios do sistema e garantir que os usurios de deficincias visuais como daltnico e ambliope, possa ut ilizar o sistema Pje e assim garantindo a acessibilidade para todos os usurios do sistema Pje, etc. Descrio das Atividades: Etapa:01.

Bom dia Nuno.

Sim eu fui falar com Ruiz, a questo da imagem ser em um toolBar e no ter nenhuma ao m s sim s informativa claro que isso no pode ser em um toolBar at porque no toolBar composto por cones d xecuo, se a ideia informar ao usurio, o correto seria criar uma coluna na grid ai sim ficar mas nti do para o usurio que aquilo uma informao. Detalhe a tarefa que me passaro foi s e somente s para criar a imagem pendente.png qu e me pediro, a parte de colocar a imagem em um toolbar ai j foi com outras pessoas. Mande um email para Romulo perguntando se isso foi documentado em uma [use-case] para poder alterar-la porque eu no posso simplesmente ir l e criar uma coluna na grid da aplicao, sendo que na [usecase] esta diferente, ok Nuno. Alison Buss de Arruda Infox Tecnologia da Informao Ltda alisson@infox.com.br Gestor de Usabilidade - Matriz Aracaju Tel.: +55 79 3211-5122 Ramal: 21

################################################################################ ######### ################################## Assinatura de Email ######################### ######### Arquivos temp para deletar C:\jbdevstudio\jboss-eap\jboss-as\server\default\tmp

################################################################################ ######### Alison Buss de Arruda Infox Tecnologia da Informao Ltda alisson@infox.com.br Desenvolvedor Web - Matriz Aracaju Tel.: +55 79 3211-5122 Ramal: 215 ############################################## Alison Buss de Arruda Infox Tecnologia da Informao Ltda alisson@infox.com.br Gestor de Usabilidade - Matriz Aracaju Tel.: +55 79 3211-5122 Ramal: 215 ################################################################################ #########

Documentos Necessrios para Admisso 1. Carteira de Trabalho 2. CPF 3. Carteira de identidade 4. Ttulo de Eleitor 5. Carteira de Reservista 6. Endereo Completo (comprovante) 7. 1 foto 3 x 4 8. Atestado Admissional 9. Sendo casado (a) trazer certido de casamento 10. Tendo filhos - trazer certido de nascimento, carto de vacinao. 11. Grau de Instruo (documento comprovante) 12. Carto do PIS / Pasep 13. No caso estrangeiro: cpia do visto de residncia 14. Certificados de cursos OBS: Trazer cpia de todos os documentos pessoais <link class="component" href="#{util.contextPath}/cssPage.seam" rel="stylesheet" type="text/css" <!-- ui:include src="cssPage.xhtml" / --> <link class="component" href="cssPage.seam" rel="stylesheet" type="text/css" />

<?xml version="1.0" encoding="ISO-8859-1"?> <ui:composition xmlns="http://www.w3.org/1999/xhtml" xmlns:s="http://jboss.com/products/seam/taglib" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html" xmlns:wi="http://www.itx.com.br/jsf/" xmlns:c="http://java.sun.com/jstl/core" xmlns:a="http://richfaces.org/a4j" xmlns:rich="http://richfaces.org/rich"> <wi:ajaxDiv id="ajaxDivMarcarPericia"> <s:div id="divMaeProx"> <s:div id="divPericia" rendered="#{processoPericiaHome.visibleD ivPericia}"> <wi:datalist title="Pericias" headerTool Bar="none" toolBar="none" gridId="processoP ericiaNovaPericia" home="#{processoPericiaHome}" be an="#{processoPericiaGrid}" searchBean="#{processoPericiaSea

rch}" /> <a:form> <a:commandButton id="novaPericia " action="#{processoPerici aHome.proxDivMarcaPericia()}" reRender="divMaeProx" va lue="Designar Percia" styleClass="dr-tbpnl-tbinact" /> </a:form> </s:div> <s:div id="divMarcaPericia" rendered="#{processoPericiaHome.visibleD ivMarcaPericia}"> <wi:form id="processoPericiaForm" form="#{processoPericiaForm}" home="#{processoPericiaHome}" formTitle="Designar Percia" /> </s:div> <s:div id="divGridHoraDisponivel" rendered="#{processoPericiaHome.visibleD ivGridHoraDisponivel}"> <a:form> <wi:calendar label="Data da Perci a" id="#{i d}dataPericia" value=" #{processoPericiaHome.instance.dataMarcacao}"> </wi:calendar> <a:commandButton id="consultarHo rarios" action="#{processoPericiaHome.consultarHorarios()}" reRender="tabelaMarcacao" value="Consultar Horrios" status="status" styleClass="dr-tbpnl-tb-inact" /> <s:div id="tabelaMarcacao"> <c:if test="#{processoPe riciaHome.proximoHorarioFila != null}"> <h:outputText va lue="Horrio Disponvel: "/> <h:outputText va lue="#{processoPericiaHome.proximoHorarioFila}"> <s:conve rtDateTime pattern="kk:mm:ss" /> </h:outputText> <a:commandButton value="Marcar Posio na Fila" action="#{processoPericiaHome.persist()}"

reRender="tabelaMarcacao,divMaeProx"/> </c:if> <c:if test="#{processoPe riciaHome.pessoaPeritoDispList.size != 0}"> <a:form> <rich:da taTable rows="7" reRender="ds" value="#{processoPericiaHome.pessoaPeritoDispList}" var="var"> <f:facet nam e="header"> <rich:co lumnGroup> <ric h:column> <h:outputText value="Horrio" styleClass="headerText" /> </ri ch:column> <ric h:column> <h:outputText value="Marcar" styleClass="headerText" /> </ri ch:column> </rich: columnGroup> </f:facet> <rich:column > <h:outpu tText value="#{var}"> <s:convertDateTime pattern="kk:mm:ss" /> </h:outp utText> </rich:colum n> <rich:column > <a:form> <a:commandButton action="#{processoPericiaHome.persist(var)}" reRender="tabelaMarcacao,divMaeProx" ajaxSingle="true" value="Confirmar" styleClass="dr-tbpnl-tb-inact" />

</a:form> </rich:colum n> <f:facet name="footer"> <rich:datascroll er id="ds" renderIfSinglePage="true"/> </f:facet> </rich:dataTable > </a:form> </c:if> </s:div> </a:form> </s:div> <s:div id="cancelamentoPericiaDiv"> <s:div id="processoPericiaCancelamentoDi v" rendered="#{processoPericiaHome.mostrarDivCancelamento}"> <wi:view form="#{processoPeticao CancelamentoView}" title="Dados do Processo" columns="4" buttons="none"> </wi:view> <wi:datalist home="#{processoAssuntoH ome}" bean="#{processoAssuntoV iewGrid}" gridId="processoAssuntoC onsultaGrid" toolBar="none" headerToolBar="none" title="#{processoAssunto ViewGrid.resultCount > 0 ? 'Assuntos' : 'Assuntos - No existem Assuntos cadastrad os.'}" showMsg="false" /> <wi:datalist home="#{processoParteHom e}" bean="#{processoPoloAtiv oGrid}" gridId="processoPericiaP oloAtivoGrid" toolBar="none" headerToolBar="none" title="#{processoTrfHome .instance.listaParteAtivo.size() > 0 ? 'Polo Ativo' : 'Polo Ativo - No existem Pa rtes cadastradas ao Polo Ativo.'}" showMsg="false" /> <wi:datalist home="#{processoParteHom e}" bean="#{processoPoloPass

ivoGrid}" gridId="processoPericiaP oloPassivoGrid" toolBar="none" headerToolBar="none" title="#{processoTrfHome .instance.listaPartePassivo.size() > 0 ? 'Polo Passivo' : 'Polo Passivo - No exis tem Partes cadastradas ao Polo Passivo.'}" showMsg="false" /> <wi:form id="cancelamentoPericia Form" form="#{processoPericiaC ancelamentoForm}" formTitle="Motivo do can celamento" home="#{processoPericiaH ome}" status=":status" reRenderSave="pageBody" /> </s:div> </s:div> <s:div id="processoPericiaRealizacaoDiv" rendere d="#{processoPericiaHome.mostrarDivRealizacao}"> <wi:form id="realizacaoPericiaForm" isUploadForm="true" form="#{processoPericiaRealizaca oForm}" formTitle="teste" home="#{processoPericiaHome}" status=":status" reRenderSave="pageBody" /> </s:div> </s:div> </wi:ajaxDiv> </ui:composition>

<c:if test="#{toolBar != 'none'}"> <div class="transpToolBa r"> <a:include viewI d="/WEB-INF/xhtml/components/grid/tools/#{toolBar}.xhtml" /> </div> </c:if>

package br.com.infox.cliente.home; import import import import import import import import import import import import org.jboss.seam.contexts.Contexts; org.jboss.seam.faces.FacesMessages; org.jboss.seam.international.StatusMessage; br.com.infox.cliente.entity.PessoaPeritoDisponibilidade; br.com.infox.cliente.entity.PessoaServidor; org.jboss.seam.annotations.Name; br.com.infox.cliente.entity.ProcessoPericia; br.com.infox.cliente.type.PericiaStatusEnum; br.com.itx.util.ComponentUtil; java.util.ArrayList; java.util.List; javax.persistence.Query;

@Name("processoPericiaHome") public class ProcessoPericiaHome extends AbstractProcessoPericiaHome<ProcessoPer icia> { private static final long serialVersionUID = 1L; private Boolean mostrarDivCancelamento=false; private boolean visibleDivPericia = true; private boolean visibleDivMarcaPericia = false; private boolean visibleDivGridHoraDisponivel = false; private boolean periciaParteRadio = false; private List<PessoaPeritoDisponibilidade> pessoaPeritoList = new ArrayLi st<PessoaPeritoDisponibilidade>(0); @Override public String persist() { return super.persist(); }

@Override public void newInstance() { // TODO Auto-generated method stub super.newInstance(); } public static ProcessoPericiaHome instance() { return ComponentUtil.getComponent("processoPericiaHome"); } public void setarLinha(ProcessoPericia pp){ instance = pp; alterarDivCancelamento(); } public void alterarDivCancelamento(){ if(getMostrarDivCancelamento()) setMostrarDivCancelamento(Boolean.FALSE); else setMostrarDivCancelamento(Boolean.TRUE); } public void setMostrarDivCancelamento(Boolean mostrarDivCancelamento) { this.mostrarDivCancelamento = mostrarDivCancelamento; } public Boolean getMostrarDivCancelamento() { return mostrarDivCancelamento; } public void confirmaCancelamento(){ try { PessoaServidor pessoaLogada = (PessoaServidor) Contexts. getSessionContext().get("pessoaLogada"); getInstance().setPessoaCancela(new PessoaServidor()); getInstance().setPessoaCancela(pessoaLogada); //getInstance().setDsMotivo(getInstance().getDsMotivo()) ; getInstance().setStatus(PericiaStatusEnum.C); this.update(); alterarDivCancelamento(); } catch (Exception e) { FacesMessages.instance().add(StatusMessage.Severity.ERRO R, "A pessoa logada no um servidor!"); } } public void proxDivMarcaPericia() { this.setVisibleDivPericia(false); this.setVisibleDivMarcaPericia(true); this.setVisibleDivGridHoraDisponivel(false); } public void proxDivConfirmaPericia() { this.setVisibleDivPericia(false); this.setVisibleDivMarcaPericia(false); this.setVisibleDivGridHoraDisponivel(true); } public void cancelarDivPericia() { this.setVisibleDivPericia(true);

this.setVisibleDivGridHoraDisponivel(false); this.setVisibleDivMarcaPericia(false); } public List<PessoaPeritoDisponibilidade> listarHorarioDisponivel() { this.proxDivConfirmaPericia(); String query = "SELECT pd.idPessoaPeritoDisponibilidade FROM Pes soaPeritoDisponibilidade pd "+ "WHERE pd.pessoaPeritoEspecialidade I N( " + "SELECT pe FROM PessoaPeritoEspeciali dade pe " + "WHERE pe.especialidade = :idEspecial ista AND pe.pessoaPerito = :idPerito)"; Query q = getEntityManager().createQuery(query); q.setParameter("idEspecialista", getInstance().getEspecialidade( ).getIdEspecialidade()); q.setParameter("idPerito", getInstance().getPessoaPerito().getId Usuario()); if(q.getResultList().size() == 0){ FacesMessages.instance().add(StatusMessage.Severity.ERRO R, "No existe horrio disponvel para o perito selecionado."); this.setPessoaPeritoList(null); } else { this.setPessoaPeritoList(q.getResultList()); FacesMessages.instance().add(StatusMessage.Severity.ERRO R, "Valor Retornado" + getPessoaPeritoList().get(0).getIdPe ssoaPeritoDisponibilidade()); } return getPessoaPeritoList(); } public boolean getVisibleDivPericia() { return visibleDivPericia; } public void setVisibleDivPericia(boolean visibleDivPericia) { this.visibleDivPericia = visibleDivPericia; } public boolean getVisibleDivMarcaPericia() { return visibleDivMarcaPericia; } public void setVisibleDivMarcaPericia(boolean visibleDivMarcaPericia) { this.visibleDivMarcaPericia = visibleDivMarcaPericia; } public boolean isVisibleDivGridHoraDisponivel() { return visibleDivGridHoraDisponivel; } public void setVisibleDivGridHoraDisponivel(boolean visibleDivGridHoraDi sponivel) { this.visibleDivGridHoraDisponivel = visibleDivGridHoraDisponivel ; }

public boolean getPericiaParteRadio() { return periciaParteRadio; } public void setPericiaParteRadio(boolean periciaParteRadio) { this.periciaParteRadio = periciaParteRadio; } public List<PessoaPeritoDisponibilidade> getPessoaPeritoList() { return pessoaPeritoList; } public void setPessoaPeritoList(List<PessoaPeritoDisponibilidade> pessoa PeritoList) { this.pessoaPeritoList = pessoaPeritoList; } }

<wi:ajaxDiv id="ajaxDivMarcaPeri cia"> <s:div i d="divMaeProx"> <s:div id="divPericia" rendered="#{processoPericiaHome.visibleDivPericia}"> <wi:datalist title="Percias" headerToolBar="none" toolBar="none" gridId="processoPericiaNovaPericia" home="#{processoPericiaHome}" bean="#{processoPericiaGrid}" searchBean="#{processoPericiaSearch}" /> <a:form> <a:commandButton id="novaPericia" action="#{processoPericiaHome.proxDivMarcaPericia()}" reRender="divMaeProx" value="Nova Percia" style="width:87px !important;" styleClass="dr-tbpnl-tb-inact" /> </a:form> </s:div> <s:div id="divMarcaPericia" rendered="#{processoPericiaHome.visibleDivMarcaPericia}"> <wi:form id="processoPericiaForm" form="#{processoPericiaForm}" home="#{processoPericiaHome}" formTitle="Marcar Percia" /> </s:div> <s:div id="divGridHoraDisponivel" rendered="#{processoPericiaHome.}"> Teste </s:div> </s:div>

</wi:ajaxDiv>

SELECT pd.idPessoaPeritoDisponibilidade FROM PessoaPeritoDisponibilidade pd WHERE pd.pessoaPeritoEspecialidade IN( SELECT pe FROM PessoaPeritoEspecialidade pe WHERE pe.especialidade = :idEsp AND pe.pessoaPerito = :idPerito ) select pd from PessoaPeritoDisponibilidade pd where pd.pessoaPeritoEspecialidade.pessoaPerito.idUsuario = :idPerito and pd.pessoaPeritoEspecialidade.especialidade.idEspecialidade = :idEsp

select pd.ds_dia_semana, pd.dt_hora_inicio, pd.dt_hora_fim, pd.nr_tempo_inter valo from client.tb_pessoa_perito_disponibilidade pd left join client.tb_pessoa_pe rito_especialidade pe on pd.id_pessoa_perito_especialidade = pe.id_pessoa_perito _especialidade where pe.id_pessoa_perito = 1588 and pe.id_especialidade = 7

select pd.in_dia_semana, pd.dt_hora_inicio, pd.dt_hora_fim, pd.nr_tempo_interval o from client.tb_pessoa_perito_disponibilidade pd ,client.tb_pessoa_perito_espe cialidade pe where pd.id_pessoa_perito_especialidade = pe.id_pessoa_perito_especialid ade and pe.id_pessoa_perito = 'id_pessoa_perito'

<rich:tab id="marcaPericia" label= "Marcar Percia" status=":status" rendere d="true"> <ui:include src="include /abaMarcarPericia.xml" /> </rich:tab>

#ProcessoPericia: processoPericia.idProcessoPericia=Codigo da Per\u00EDcia processoPericia.processo=Processo processoPericia.pessoaPerito=Perito processoPericia.pessoaPericiado=Periciado processoPericia.status=Situao processoPericia.periciaAnterior=Percia Anterior processoPericia.especialidade=Especialidade processoPericia.pessoaMarcador=Marcador da Percia processoPericia.processoDocumento=Documento processoPericia.pessoaCancela=Cancelada pela Pessoa processoPericia.dataMarcacao=Incio processoPericia.horaMarcada=Hora Marcada processoPericia.valorPericia=Valor da Percia processoPericia.valorCausa=Valor da Causa processoPericia.dataCancelamento=Data de canceladento processoPericia.tipoBeneficio=Beneficio processoPericia.dataEntradaRequisicao=Data da Requisicao processoPericia.dataCessacaoBeneficio=Cessacao Beneficio processoPericia.quesitos=Quesitos processoPericia.enfermidades=Enfermidades processoPericia.motivo=Motivo da Percia processoPericia.objetoPericia=Objeto da Percia processoPericia.textColumn=Calendario Percia processoPericia.menuText=Designar Percia processoPericia.titlePage=Designar Percia processoPericia.titleGrid=Percia processoPericia.titleView=Percia processoPericia.titleForm=Percia ProcessoPericia_updated=Registro alterado com sucesso ProcessoPericia_created=Registro inserido com sucesso ProcessoPericia_deleted=Registro excludo com sucesso

<ui:composition xmlns="http://www.w3.org/1999/xhtml" xmlns:s="http://jboss.com/products/seam/taglib" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html" xmlns:wi="http://www.itx.com.br/jsf/" xmlns:c="http://java.sun.com/jstl/core" xmlns:a="http://richfaces.org/a4j" xmlns:rich="http://richfaces.org/rich"> <wi:ajaxDiv id="ajaxDivMarcaPericia"> <s:div id="divMaeProx"> <s:div id="divPericia" rendered="#{processoPericiaHome.visibleD ivPericia}"> <wi:datalist title="Pericias" headerTool Bar="none" toolBar="none" gridId="processoP ericiaNovaPericia" home="#{processoPericiaHome}" be an="#{processoPericiaGrid}"

searchBean="#{processoPericiaSea rch}" /> <a:form> <a:commandButton id="novaPericia " action="#{processoPerici aHome.proxDivMarcaPericia()}" reRender="divMaeProx" va lue="Nova Pericia" style="width:87px !impor tant;" styleClass="dr-tbpnl-tbinact" /> </a:form> </s:div> <s:div id="divMarcaPericia" rendered="#{processoPericiaHome.visibleD ivMarcaPericia}"> <wi:form id="processoPericiaForm" form="#{processoPericiaForm}" home="#{processoPericiaHome}" formTitle="Marcar Pericia" /> </s:div> <s:div id="divGridHoraDisponivel" rendered="#{processoPericiaHome.visibleD ivGridHoraDisponivel}"> #{processoPericiaHome.instance.pessoaPer ito} <!-<style>--> <!-.col {--> <!-width: 100px;--> <!-}--> <!-</style>--> <!----> <!-<h:form>--> <!-<rich:dataTable --> <!-width="100%" id="listHorarioDisp onivel" rows="10" columnClasses="col"--> <!-value="#{dataTableScrollerBean.allCa rs}" var="category">--> <!-<f:facet name="header">--> <!-<rich:columnGroup>--> <!-<h:column>--> <!-<h:outputText value="Seg unda" styleClass="headerText" />--> <!-</h:column>--> <!-<h:column>--> <!-<h:outputText value="Tera " styleClass="headerText" />--> <!-</h:column>--> <!-<h:column>--> <!-<h:outputText value="Qua rta" styleClass="headerText" />--> <!-</h:column>--> <!-<h:column>--> <!-<h:outputText value="Qui nta" styleClass="headerText" />-->

<!-</h:column>--> <!-<h:column>--> <!-<h:outputText value="Sex ta" styleClass="headerText" />--> <!-</h:column>--> <!-<h:column>--> <!-<h:outputText value="Sab ado" styleClass="headerText" />--> <!-</h:column>--> <!-</rich:columnGroup> --> <!-</f:facet>--> <!---> <!-<h:column>--> <!-<h:outputText value="#{category. make}" />--> <!-</h:column>--> <!---> <!-<h:column>--> <!-<h:outputText value="#{category. make}" />--> <!-</h:column>--> <!---> <!-<h:column>--> <!-<h:outputText value="#{category. make}" />--> <!-</h:column>--> <!---> <!-<h:column> --> <!-<h:outputText value="#{category. model}" />--> <!-</h:column>--> <!---> <!-<h:column>--> <!-<h:outputText value="#{category. price}" />--> <!-</h:column>--> <!---> <!-<h:column>--> <!-<h:outputText value="#{category. mileage}" />--> <!-</h:column>--> <!---> <!-</rich:dataTable>--> <!---> <!-<rich:datascroller --> <!-align="left" for="carList" maxPa ges="5"--> <!-page="#{dataTableScrollerBean.scroll erPage}" --> <!-id="sc2" reRender="sc1" />--> <!---> <!-</h:form> --> </s:div> </s:div> </wi:ajaxDiv> </ui:composition>

// // ); //

q.setParameter("dtMes", getInstance().getDtMes()); q.setParameter("dtAno", getInstance().getDtAno() q.getResultList().size()

// // // e // // //

SELECT pd FROM PessoaPeritoDisponibilidade pd, PessoaPeritoEspecialidade p WHERE pd.idPessoaPeritoDisponibilidade = ? AND pe.idPessoaPeritoEspecialidade = ?

<?xml version="1.0" encoding="ISO-8859-1"?> <ui:composition xmlns="http://www.w3.org/1999/xhtml" xmlns:s="http://jboss.com/products/seam/taglib" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html" xmlns:wi="http://www.itx.com.br/jsf/" xmlns:c="http://java.sun.com/jstl/core" xmlns:a="http://richfaces.org/a4j" xmlns:rich="http://richfaces.org/rich"> <wi:ajaxDiv id="ajaxDivMarcarPericia"> <s:div id="divMaeProx"> <s:div id="divPericia" rendered="#{processoPericiaHome.visibleD ivPericia}"> <wi:datalist title="Pericias" headerTool Bar="none" toolBar="none" gridId="processoP ericiaNovaPericia" home="#{processoPericiaHome}" be an="#{processoPericiaGrid}" searchBean="#{processoPericiaSea rch}" /> <a:form> <a:commandButton id="novaPericia " action="#{processoPerici aHome.proxDivMarcaPericia()}" reRender="divMaeProx" va lue="Designar Percia" styleClass="dr-tbpnl-tbinact" /> </a:form> </s:div> <s:div id="divMarcaPericia" rendered="#{processoPericiaHome.visibleD ivMarcaPericia}">

<wi:form id="processoPericiaForm" form="#{processoPericiaForm}" home="#{processoPericiaHome}" formTitle="Designar Percia" /> <a:form> <a:commandButton id="cancelar01" action="#{processoPerici aHome.cancelarDivPericia()}" reRender="divMaeProx" va lue="cancelar" styleClass="dr-tbpnl-tbinact" /> </a:form> </s:div> <s:div id="divGridHoraDisponivel" rendered="#{processoPericiaHome.visibleD ivGridHoraDisponivel}"> <a:form> <rich:dataTable width="100%" id="listHorarioDisp onivel" rows="10" reRender="ds" value="#{processoPeritoHome.pessoaPe ritoList}" var="peritoDisp"> <f:facet name="header"> <rich:columnGroup> <h:column> <h:outputText value="Seg unda" styleClass="headerText" /> </h:column> <h:column> <h:outputText value="Tera " styleClass="headerText" /> </h:column> <h:column> <h:outputText value="Qua rta" styleClass="headerText" /> </h:column> <h:column> <h:outputText value="Qui nta" styleClass="headerText" /> </h:column> <h:column> <h:outputText value="Sex ta" styleClass="headerText" /> </h:column> <h:column> <h:outputText value="Sab ado" styleClass="headerText" /> </h:column> <h:column> <h:outputText value="Dom ingo" styleClass="headerText" /> </h:column> </rich:columnGroup> </f:facet> <h:column> <s:div id="seg" rendered="#{peri

toDisp.diaSemana.eguals('SEG')}"> SEG </s:div> </h:column> <h:column> <s:div id="ter" rendered="#{peri toDisp.diaSemana.eguals('TER')}"> TER </s:div> </h:column> <h:column> <s:div id="qua" rendered="#{peri toDisp.diaSemana.eguals('QUA')}"> QUA </s:div> </h:column> <h:column> <s:div id="qui" rendered="#{peri toDisp.diaSemana.eguals('QUI')}"> QUI </s:div> </h:column> <h:column> <s:div id="sex" rendered="#{peri toDisp.diaSemana.eguals('SEX')}"> SEX </s:div> </h:column> <h:column> <s:div id="sab" rendered="#{peri toDisp.diaSemana.eguals('SAB')}"> SAB </s:div> </h:column> <h:column> <s:div id="DOM" rendered="#{peri toDisp.diaSemana.eguals('DOM')}"> DOM </s:div> </h:column> <f:facet name="footer"> <rich:datascroller id="ds" renderIfSingl ePage="true" /> </f:facet> </rich:dataTable> <rich:messages id="messagesProcesso" globalOnly="true" infoClass="formMessage" style="margin: 5px" errorClass="error formMessage" />

<a:commandButton id="cancelar02" action="#{processoPerici aHome.cancelarDivPericia()}" reRender="divMaeProx" va lue="cancelar" styleClass="dr-tbpnl-tbinact" /> </a:form> </s:div> </s:div> </wi:ajaxDiv> </ui:composition> pp.especialidade.idEspecialidade pp.pessoaPerito.idUsuario

SELECT pp FROM ProcessoPericia pp WHERE pp.especialidade.idEspecialidade = :idEspecialidade AND pp.pessoaP erito.idUsuario = :idPerito

public List<PessoaPeritoDisponibilidade> listarHorarioDisponivel() { this.proxDivConfirmaPericia(); String query = "SELECT pd FROM PessoaPeritoDisponibilidade pd "+ "WHERE pd.pessoaPeritoEspecialidade.e specialidade.idEspecialidade = :idEspecialista " + "AND pd.pessoaPeritoEspecialidade.pes soaPerito.idUsuario = :idPerito"; Query q = getEntityManager().createQuery(query); q.setParameter("idEspecialista", getInstance().getEspecialidade( ).getIdEspecialidade()); q.setParameter("idPerito", getInstance().getPessoaPerito().getId Usuario()); if(q.getResultList().size() == 0){ FacesMessages.instance().add(StatusMessage.Severity.ERRO R, "No existe horrio disponvel para o perito selecionado."); this.setPessoaPeritoList(null); } else { FacesMessages.instance().add(StatusMessage.Severity.ERRO R, "setado, qnt da lista: " + q.getResultList().size()); this.setPessoaPeritoList(q.getResultList()); } return getPessoaPeritoList(); }

for (ProcessoPericia perito : processoPeritoList) { }

public List<PessoaPeritoDisponibilidade> listarHorarioDisponivel() { this.proxDivConfirmaPericia(); for (PessoaPeritoDisponibilidade peritoDisp : listarPeritoDispon ivel()) { if(peritoDisp.getQntAtendimento() == null){ // Tratar o horario por nr_tempo_intervalo } if(peritoDisp.getIntervalo() == null){ // Tratar o horario por nr_atendimento } } return null; }

package br.com.infox.cliente.home; import import import import import import import import import import import import import import import import org.jboss.seam.contexts.Contexts; org.jboss.seam.faces.FacesMessages; org.jboss.seam.international.StatusMessage; br.com.infox.cliente.entity.PessoaPeritoDisponibilidade; br.com.infox.cliente.entity.PessoaServidor; org.jboss.seam.annotations.Name; br.com.infox.cliente.entity.ProcessoPericia; br.com.infox.cliente.type.PericiaStatusEnum; br.com.infox.cliente.type.SemanaEnum; br.com.itx.util.ComponentUtil; java.sql.Time; java.util.ArrayList; java.util.Calendar; java.util.Date; java.util.List; javax.persistence.Query;

@Name("processoPericiaHome") public class ProcessoPericiaHome extends AbstractProcessoPericiaHome<ProcessoPer icia> { private static final long serialVersionUID = 1L; private Boolean mostrarDivCancelamento=false; private boolean visibleDivPericia = true; private boolean visibleDivMarcaPericia = false;

private private private private

boolean visibleDivGridHoraDisponivel = false; boolean periciaParteRadio = false; List<Time> pessoaPeritoDispList = new ArrayList<Time>(0); Time proximoHorarioFila;

public Time getProximoHorarioFila() { return proximoHorarioFila; } public void setProximoHorarioFila(Time proximoHorarioFila) { this.proximoHorarioFila = proximoHorarioFila; } @Override public String persist() { instance.setHoraMarcada(proximoHorarioFila); String ret = super.persist(); pessoaPeritoDispList = null; if(ret != null) { consultarHorarios(); } super.newInstance(); return ret; } public static ProcessoPericiaHome instance() { return ComponentUtil.getComponent("processoPericiaHome"); } public void setarLinha(ProcessoPericia pp){ instance = pp; alterarDivCancelamento(); } public void alterarDivCancelamento(){ if(getMostrarDivCancelamento()) setMostrarDivCancelamento(Boolean.FALSE); else setMostrarDivCancelamento(Boolean.TRUE); } public void setMostrarDivCancelamento(Boolean mostrarDivCancelamento) { this.mostrarDivCancelamento = mostrarDivCancelamento; } public Boolean getMostrarDivCancelamento() { return mostrarDivCancelamento; } public void confirmaCancelamento(){ try { PessoaServidor pessoaLogada = (PessoaServidor) Contexts. getSessionContext().get("pessoaLogada"); getInstance().setPessoaCancela(new PessoaServidor()); getInstance().setPessoaCancela(pessoaLogada); //getInstance().setDsMotivo(getInstance().getDsMotivo()) ; getInstance().setStatus(PericiaStatusEnum.C); this.update(); alterarDivCancelamento(); } catch (Exception e) {

FacesMessages.instance().add(StatusMessage.Severity.ERRO R, "A pessoa logada no um servidor!"); } } public void proxDivMarcaPericia() { this.setVisibleDivPericia(false); this.setVisibleDivMarcaPericia(true); this.setVisibleDivGridHoraDisponivel(false); } public void proxDivConfirmaPericia() { this.setVisibleDivPericia(false); this.setVisibleDivMarcaPericia(false); this.setVisibleDivGridHoraDisponivel(true); } public void cancelarDivPericia() { this.setVisibleDivPericia(true); this.setVisibleDivGridHoraDisponivel(false); this.setVisibleDivMarcaPericia(false); } public List<ProcessoPericia> listarProcessoPerito() { String query = "SELECT pp FROM ProcessoPericia pp "+ "WHERE pp.especialidade.idEspecialida de = :idEspecialidade " + "AND pp.pessoaPerito.idUsuario = :idP erito " + "AND pp.dataMarcacao = :dataMarcacao" ; Query q = getEntityManager().createQuery(query); q.setParameter("idEspecialidade", getInstance().getEspecialidade ().getIdEspecialidade()); q.setParameter("idPerito", getInstance().getPessoaPerito().getId Usuario()); q.setParameter("dataMarcacao", getInstance().getDataMarcacao()); if(q.getResultList().size() == 0){ return null; } else { return q.getResultList(); } } public List<PessoaPeritoDisponibilidade> listarPeritoDisponivel(SemanaEn um semana) { String query = "SELECT pd FROM PessoaPeritoDisponibilidade pd "+ "WHERE pd.pessoaPeritoEspecialidade.e specialidade.idEspecialidade = :idEspecialista " + "AND pd.pessoaPeritoEspecialidade.pes soaPerito.idUsuario = :idPerito AND " + "pd.diaSemana = :enum"; Query q = getEntityManager().createQuery(query); q.setParameter("idEspecialista", getInstance().getEspecialidade( ).getIdEspecialidade()); q.setParameter("idPerito", getInstance().getPessoaPerito().getId Usuario()); q.setParameter("enum", semana); if(q.getResultList().size() == 0){

return null; } else { return q.getResultList(); } } public void consultarHorarios() { if(instance.getDataMarcacao() != null) { pessoaPeritoDispList = new ArrayList<Time>(); Calendar cal = Calendar.getInstance(); List<ProcessoPericia> processoPericiaList = listarProces soPerito(); int horarioDisponivel = 0; int intervalo = 0; int qntIntervalos = 0; cal.setTime(instance.getDataMarcacao()); List<PessoaPeritoDisponibilidade> peritoDispList = listarPeritoDisponivel(SemanaEnum.getSem anaEnum(cal.get(Calendar.DAY_OF_WEEK))); for(PessoaPeritoDisponibilidade ppd : peritoDispList) { boolean flag = true; if(horarioDisponivel == 0) { horarioDisponivel = convertToMinutes(ppd .getHoraInicio(),ppd.getHoraFim()); if(ppd.getIntervalo() != null) { intervalo = convertToMinutes(ppd .getIntervalo()); qntIntervalos = horarioDisponive l/intervalo; } else { if(proximoHorarioFila != null) { continue; } qntIntervalos = id_processo_peri cia client.id NOT NULL DEFAULT nextval('client.sq_tb_processo_pericia'::regclass ), id_processo_pericia_anterior client.id, -- Identificador da pericia anterior, para os casos de remarcao. id_especialidade client.id, id_pessoa_perito client.id, -- Identificador do perito. id_pessoa_processo_parte client.id, -- Identificador da pessoa que ser periciad a. id_pessoa_marcador_pericia client.id, -- Identificador da pessoa que marcou a pericia. id_processo_documento client.id, id_pessoa_cancela_pericia client.id, -- Identificador da pessoa que cancelou a pericia. dt_marcacao client.data_hora NOT NULL, -- Data da marcao da pericia. dt_hora_marcada time without time zone NOT NULL, vl_pericia client.numerico, -- Valor da percia. dt_cancelamento client.data_hora, -- Data do cancelamento da pericia. cd_status_pericia character(1), -- Situaes que a pertica poder est: 'R' = Remarcada 'M' = Marcada 'C' = Cancelada 'F' = Feita (Realizada) ds_tipo_beneficio client.varchar200, -- Descrio do benefcio requerido. dt_entrada_requisicao client.data_hora, -- Data da requisio do beneficio. dt_cessacao_beneficio client.data_hora, -- Data que o beneficio foi cessado. ds_quesitos text, -- Quesitos que o perito ter que observar na percia. ds_enfermidades client.varchar200, -- Descrio das enfermidades relativas ds_motivo character varying(40), -- Descrio do motivo da Remarcao ou Cancelamento ds_objeto_pericia client.varchar200, -- Descrio do objeto a ser periciado.

id_processo_trf client.id,/ppd.getQntAtendimento(); } } intervalos: for(int i=0;i<=(qntIntervalos);i++) { Time time; if(ppd.getIntervalo() == null) { time = new Time(ppd.getHoraInici o().getTime() + ((i)*ppd.getQntAtendimento())*60000); } else { time = new Time(ppd.getHoraInici o().getTime() + ((i)*intervalo)*60000); } if(processoPericiaList != null) { for(ProcessoPericia pp : process oPericiaList) { flag = true; if(pp.getHoraMarcada().c ompareTo(time) != 0) { if(ppd.getInterv alo() == null && flag) { proximoH orarioFila = time; flag = f alse; break in tervalos; } else { pessoaPe ritoDispList.add(time); continue intervalos; } } } } else { if(ppd.getIntervalo() == null && flag) { proximoHorarioFila = tim e; flag = false; break intervalos; } else { pessoaPeritoDispList.add (time); } } } horarioDisponivel = 0; } } } public String persist(Time obj) { instance.setHoraMarcada(obj); String ret = super.persist(); pessoaPeritoDispList = null; if(ret != null) { consultarHorarios(); }

super.newInstance(); return ret; } private int convertToMinutes(Time tempo) { Calendar cal = Calendar.getInstance(); cal.setTime(tempo); return (int) ((cal.get(Calendar.HOUR)*60)+cal.get(Calendar.MINUT E)); } private int convertToMinutes(Time horaInicial, Time horaFinal) { long diferenca = horaFinal.getTime() - horaInicial.getTime(); return (int) ((diferenca/1000)/60); } public boolean getVisibleDivPericia() { return visibleDivPericia; } public void setVisibleDivPericia(boolean visibleDivPericia) { this.visibleDivPericia = visibleDivPericia; } public boolean getVisibleDivMarcaPericia() { return visibleDivMarcaPericia; } public void setVisibleDivMarcaPericia(boolean visibleDivMarcaPericia) { this.visibleDivMarcaPericia = visibleDivMarcaPericia; } public boolean isVisibleDivGridHoraDisponivel() { return visibleDivGridHoraDisponivel; } public void setVisibleDivGridHoraDisponivel(boolean visibleDivGridHoraDi sponivel) { this.visibleDivGridHoraDisponivel = visibleDivGridHoraDisponivel ; } public boolean getPericiaParteRadio() { return periciaParteRadio; } public void setPericiaParteRadio(boolean periciaParteRadio) { this.periciaParteRadio = periciaParteRadio; } public List<Time> getPessoaPeritoDispList() { return pessoaPeritoDispList; } public void setPessoaPeritoDispList(List<Time> pessoaPeritoDispList) { this.pessoaPeritoDispList = pessoaPeritoDispList; } }

<?xml version="1.0" encoding="ISO-8859-1"?> <ui:composition xmlns="http://www.w3.org/1999/xhtml" xmlns:s="http://jboss.com/products/seam/taglib" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html" xmlns:wi="http://www.itx.com.br/jsf/" xmlns:c="http://java.sun.com/jstl/core" xmlns:a="http://richfaces.org/a4j" xmlns:rich="http://richfaces.org/rich"> <wi:ajaxDiv id="ajaxDivMarcarPericia"> <s:div id="divMaeProx"> <s:div id="divPericia" rendered="#{processoPericiaHome.visibleD ivPericia}"> <wi:datalist title="Pericias" headerTool Bar="none" toolBar="none" gridId="processoP ericiaNovaPericia" home="#{processoPericiaHome}" be an="#{processoPericiaGrid}" searchBean="#{processoPericiaSea rch}" /> <a:form> <a:commandButton id="novaPericia " action="#{processoPerici aHome.proxDivMarcaPericia()}" reRender="divMaeProx" va lue="Designar Percia" styleClass="dr-tbpnl-tbinact" /> </a:form> </s:div> <s:div id="divMarcaPericia" rendered="#{processoPericiaHome.visibleD ivMarcaPericia}"> <wi:form id="processoPericiaForm" form="#{processoPericiaForm}"

home="#{processoPericiaHome}" formTitle="Designar Percia" /> <a:form> <a:commandButton id="cancelar01" action="#{processoPerici aHome.cancelarDivPericia()}" reRender="divMaeProx" va lue="cancelar" styleClass="dr-tbpnl-tbinact" /> </a:form> </s:div> <s:div id="divGridHoraDisponivel" rendered="#{processoPericiaHome.visibleD ivGridHoraDisponivel}"> <a:form> <wi:calendar label="Data da Perci a" id="#{i d}dataPericia" value=" #{processoPericiaHome.instance.dataMarcacao}"> </wi:calendar> <a:commandButton id="consultarHo rarios" action="#{processoPericiaHome.consultarHorarios()}" reRender="tabelaMarcacao" value="Consultar Horrios" styleClass="dr-tbpnl-tb-inact" /> <s:div id="tabelaMarcacao"> <c:if test="#{processoPe riciaHome.proximoHorarioFila != null}"> <h:outputText va lue="Horrio Disponvel: "/> <h:outputText va lue="#{processoPericiaHome.proximoHorarioFila}"> <s:conve rtDateTime pattern="kk:mm:ss" /> </h:outputText> <a:commandButton value="Marcar Posio na Fila" action="#{processoPericiaHome.persist()}" reRender="tabelaMarcacao"/> </c:if> <c:if test="#{processoPe riciaHome.pessoaPeritoDispList.size != 0}"> <a:form> <rich:dataTable rows="10" reRender="ds"

value="#{processoPericiaHome.pessoaPeritoDispList}" var="var"> <f:facet name="heade r"> <rich:columnGrou p> <rich:column > <h:outpu tText value="Horrio" styleClass="headerText" /> </rich:colum n> <rich:column > <h:outpu tText value="Marcar" styleClass="headerText" /> </rich:colum n> </rich:columnGr oup> </f:facet> <rich:column> <h:outputText va lue="#{var}"> <s:conve rtDateTime pattern="kk:mm:ss" /> </h:outputText> </rich:column> <rich:column> <a:form> <a:comma ndButton action="#{processoPericiaHome.persist(var)}" reRender="tabelaMarcacao" ajaxSingle="true" value="Confirmar" styleClass="dr-tbpnl-tb-inact" /> </a:form> </rich:column> <f:facet name="footer"> <rich:datascroller id="d s" renderIfSinglePage="true"/> </f:facet> </rich:dataTable> </a:form> </c:if> </s:div> </a:form> </s:div>

</s:div> </wi:ajaxDiv> </ui:composition>

package br.com.infox.cliente.entity; // Generated 30/10/2008 07:40:27 by Hibernate Tools 3.2.0.CR1 import import import import import import import import import import import import import import import import import import import java.sql.Time; java.util.ArrayList; java.util.Date; java.util.List; javax.persistence.CascadeType; javax.persistence.Column; javax.persistence.Entity; javax.persistence.FetchType; javax.persistence.GeneratedValue; javax.persistence.Id; javax.persistence.JoinColumn; javax.persistence.ManyToOne; javax.persistence.OneToMany; javax.persistence.OneToOne; javax.persistence.SequenceGenerator; javax.persistence.Table; javax.persistence.Temporal; javax.persistence.TemporalType; javax.persistence.Transient;

import org.hibernate.annotations.Type; import org.hibernate.validator.Length; import org.hibernate.validator.NotNull; import br.com.infox.cliente.type.PericiaStatusEnum; import br.com.infox.ibpm.entity.ProcessoDocumento; @Entity @Table(name = "tb_processo_pericia") public class ProcessoPericia implements java.io.Serializable { private static final long serialVersionUID = 1L; private int idProcessoPericia; private ProcessoTrf processoTrf;

private private private private private private private private private private private private private private private private private private private

PessoaPerito pessoaPerito; ProcessoParte pessoaPericiado; PericiaStatusEnum status; ProcessoPericia periciaAnterior; Especialidade especialidade; PessoaServidor pessoaMarcador; ProcessoDocumento processoDocumento; PessoaServidor pessoaCancela; Date dataMarcacao; Time horaMarcada; Double valorPericia; Date dataCancelamento; String tipoBeneficio; Date dataEntradaRequisicao; Date dataCessacaoBeneficio; String quesitos; String enfermidades; String motivo; String objetoPericia;

private List<PagamentoPericia> pagamentoPericiaList = new ArrayList<Paga mentoPericia>(0); public ProcessoPericia() { } @SequenceGenerator(name = "generator", sequenceName = "sq_tb_processo_pe ricia") @Id @GeneratedValue(generator = "generator") @Column(name = "id_processo_pericia", unique = true, nullable = false) public int getIdProcessoPericia() { return this.idProcessoPericia; } public void setIdProcessoPericia(int idProcessoPericia) { this.idProcessoPericia = idProcessoPericia; } @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "id_processo_trf") public ProcessoTrf getProcessoTrf() { return processoTrf; } public void setProcessoTrf(ProcessoTrf processoTrf) { this.processoTrf = processoTrf; } @Column(name = "cd_status_pericia", length = 1) @Type(type = "br.com.infox.cliente.type.PericiaStatusType") public PericiaStatusEnum getStatus() { return status; } public void setStatus(PericiaStatusEnum status) { this.status = status; } @OneToOne(fetch = FetchType.LAZY)

@JoinColumn(name = "id_pessoa_perito") public PessoaPerito getPessoaPerito() { return pessoaPerito; } public void setPessoaPerito(PessoaPerito pessoaPerito) { this.pessoaPerito = pessoaPerito; } @OneToOne(fetch = FetchType.LAZY) @JoinColumn(name = "id_pessoa_processo_parte") public ProcessoParte getPessoaPericiado() { return pessoaPericiado; } public void setPessoaPericiado(ProcessoParte pessoaPericiado) { this.pessoaPericiado = pessoaPericiado; } @OneToOne(fetch = FetchType.LAZY) @JoinColumn(name = "id_processo_pericia_anterior") public ProcessoPericia getPericiaAnterior() { return periciaAnterior; } public void setPericiaAnterior(ProcessoPericia periciaAnterior) { this.periciaAnterior = periciaAnterior; } @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "id_especialidade") public Especialidade getEspecialidade() { return especialidade; } public void setEspecialidade(Especialidade especialidade) { this.especialidade = especialidade; } @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "id_pessoa_marcador_pericia") public PessoaServidor getPessoaMarcador() { return pessoaMarcador; } public void setPessoaMarcador(PessoaServidor pessoaMarcador) { this.pessoaMarcador = pessoaMarcador; } @OneToOne(fetch = FetchType.LAZY) @JoinColumn(name = "id_processo_documento") public ProcessoDocumento getProcessoDocumento() { return processoDocumento; } public void setProcessoDocumento(ProcessoDocumento processoDocumento) { this.processoDocumento = processoDocumento; } @ManyToOne(fetch = FetchType.LAZY)

@JoinColumn(name = "id_pessoa_cancela_pericia") public PessoaServidor getPessoaCancela() { return pessoaCancela; } public void setPessoaCancela(PessoaServidor pessoaCancela) { this.pessoaCancela = pessoaCancela; } @Temporal(TemporalType.TIMESTAMP) @Column(name = "dt_marcacao", nullable= false) @NotNull public Date getDataMarcacao() { return dataMarcacao; } public void setDataMarcacao(Date dataMarcacao) { this.dataMarcacao = dataMarcacao; } @Temporal(TemporalType.TIME) @Column(name = "dt_hora_marcada", nullable = false) @NotNull public Date getHoraMarcada() { return horaMarcada; } public void setHoraMarcada(Time horaMarcada) { this.horaMarcada = horaMarcada; } @Column(name = "vl_pericia") public Double getValorPericia() { return valorPericia; } public void setValorPericia(Double valorPericia) { this.valorPericia = valorPericia; } @Temporal(TemporalType.TIMESTAMP) @Column(name = "dt_cancelamento") public Date getDataCancelamento() { return dataCancelamento; } public void setDataCancelamento(Date dataCancelamento) { this.dataCancelamento = dataCancelamento; } @Column(name = "ds_tipo_beneficio", length = 200) @Length(max = 200) public String getTipoBeneficio() { return tipoBeneficio; } public void setTipoBeneficio(String tipoBeneficio) { this.tipoBeneficio = tipoBeneficio; }

@Temporal(TemporalType.TIMESTAMP) @Column(name = "dt_entrada_requisicao") public Date getDataEntradaRequisicao() { return dataEntradaRequisicao; } public void setDataEntradaRequisicao(Date dataEntradaRequisicao) { this.dataEntradaRequisicao = dataEntradaRequisicao; } @Temporal(TemporalType.TIMESTAMP) @Column(name = "dt_cessacao_beneficio") public Date getDataCessacaoBeneficio() { return dataCessacaoBeneficio; } public void setDataCessacaoBeneficio(Date dataCessacaoBeneficio) { this.dataCessacaoBeneficio = dataCessacaoBeneficio; } @Column(name = "ds_quesitos") public String getQuesitos() { return quesitos; } public void setQuesitos(String quesitos) { this.quesitos = quesitos; } @Column(name = "ds_enfermidades", length = 200) @Length(max = 200) public String getEnfermidades() { return enfermidades; } public void setEnfermidades(String enfermidades) { this.enfermidades = enfermidades; } @Column(name = "ds_motivo", length = 40) @Length(max = 40) public String getMotivo() { return motivo; } public void setMotivo(String motivo) { this.motivo = motivo; } @Column(name = "ds_objeto_pericia", length = 200) @Length(max = 200) public String getObjetoPericia() { return objetoPericia; } public void setObjetoPericia(String objetoPericia) { this.objetoPericia = objetoPericia; } @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy =

"processoPericia") public List<PagamentoPericia> getPagamentoPericiaList() { return pagamentoPericiaList; } public void setPagamentoPericiaList(List<PagamentoPericia> pagamentoPeri ciaList) { this.pagamentoPericiaList = pagamentoPericiaList; } @Transient public String getValorCausa(){ return "1.598.66.24.0"; } }

id_processo_pericia client.id NOT NULL DEFAULT nextval('client.sq_tb_processo_ pericia'::regclass), id_processo_pericia_anterior client.id, -- Identificador da pericia anterior, para os casos de remarcao. id_especialidade client.id, id_pessoa_perito client.id, -- Identificador do perito. id_pessoa_processo_parte client.id, -- Identificador da pessoa que ser periciad a. id_pessoa_marcador_pericia client.id, -- Identificador da pessoa que marcou a pericia. id_processo_documento client.id, id_pessoa_cancela_pericia client.id, -- Identificador da pessoa que cancelou a pericia. dt_marcacao client.data_hora NOT NULL, -- Data da marcao da pericia. dt_hora_marcada time without time zone NOT NULL, vl_pericia client.numerico, -- Valor da percia. dt_cancelamento client.data_hora, -- Data do cancelamento da pericia. cd_status_pericia character(1), -- Situaes que a pertica poder est: 'R' = Remarcada 'M' = Marcada 'C' = Cancelada 'F' = Feita (Realizada) ds_tipo_beneficio client.varchar200, -- Descrio do benefcio requerido. dt_entrada_requisicao client.data_hora, -- Data da requisio do beneficio. dt_cessacao_beneficio client.data_hora, -- Data que o beneficio foi cessado. ds_quesitos text, -- Quesitos que o perito ter que observar na percia. ds_enfermidades client.varchar200, -- Descrio das enfermidades relativas ds_motivo character varying(40), -- Descrio do motivo da Remarcao ou Cancelamento ds_objeto_pericia client.varchar200, -- Descrio do objeto a ser periciado. id_processo_trf client.id,

public String update() { if(redesignarPericia){ try { instance.setPericiaAnterior(getInstance()); instance.setStatus(PericiaStatusEnum.R); ProcessoPericia pp = (ProcessoPericia)EntityUtil .cloneEntity(instance().getInstance(), false); super.update(); setInstance(pp);

EntityManager em = getEntityManager(); em.merge(getInstance()); } catch (Exception e) { // TODO: handle exception }finally{ return ""; } } else { return null; } } public String updateRemarcacao() { if(redesignarPericia){ try { instance.setPericiaAnterior(getInstance()); instance.setStatus(PericiaStatusEnum.R); ProcessoPericia pp = EntityUtil.cloneEntity(getI nstance(), false); super.update(); setInstance(pp); EntityManager em = getEntityManager(); em.merge(getInstance()); em.persist(getInstance()); } catch (Exception e) { e.printStackTrace(); } finally{ return ""; } } else { return null; } }

<?xml version="1.0" encoding="ISO-8859-1"?> <ui:composition xmlns="http://www.w3.org/1999/xhtml" xmlns:s="http://jboss.com/products/seam/taglib" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html" xmlns:wi="http://www.itx.com.br/jsf/" xmlns:c="http://java.sun.com/jstl/core" xmlns:a="http://richfaces.org/a4j" xmlns:rich="http://richfaces.org/rich"> <wi:ajaxDiv id="ajaxDivMarcarPericia"> <s:div id="divMaeProx"> <s:div id="divPericia" rendered="#{processoPericiaHome.visibleD ivPericia}"> <wi:datalist title="Pericias" headerTool Bar="none" toolBar="none" gridId="processoP ericiaNovaPericia" home="#{processoPericiaHome}" be an="#{processoPericiaGrid}" searchBean="#{processoPericiaSea rch}" /> <a:form> <a:commandButton id="novaPericia " action="#{processoPerici aHome.proxDivMarcaPericia()}" reRender="divMaeProx" va lue="Designar Percia" styleClass="dr-tbpnl-tbinact" /> </a:form> </s:div> <s:div id="divMarcaPericia" rendered="#{processoPericiaHome.visibleD ivMarcaPericia}"> <wi:form id="processoPericiaForm" form="#{processoPericiaForm}" home="#{processoPericiaHome}" formTitle="Designar Percia" /> </s:div> <s:div id="divGridHoraDisponivel" rendered="#{processoPericiaHome.visibleD ivGridHoraDisponivel}">

<a:form> <wi:calendar label="Data da Perci a" id="#{i d}dataPericia" value=" #{processoPericiaHome.instance.dataMarcacao}"> </wi:calendar> <a:commandButton id="consultarHo rarios" action="#{processoPericiaHome.consultarHorarios()}" reRender="tabelaMarcacao" value="Consultar Horrios" status="status" styleClass="dr-tbpnl-tb-inact" /> <s:div id="tabelaMarcacao"> <c:if test="#{processoPe riciaHome.proximoHorarioFila != null}"> <h:outputText va lue="Horrio Disponvel: "/> <h:outputText va lue="#{processoPericiaHome.proximoHorarioFila}"> <s:conve rtDateTime pattern="kk:mm:ss" /> </h:outputText> <a:commandButton value="Marcar Posio na Fila" action="#{processoPericiaHome.persist()}" reRender="tabelaMarcacao,divMaeProx"/> </c:if> <c:if test="#{processoPe riciaHome.pessoaPeritoDispList.size != 0}"> <a:form> <rich:da taTable rows="7" reRender="ds" value="#{processoPericiaHome.pessoaPeritoDispList}" var="var"> <f:facet nam e="header"> <rich:co lumnGroup> <ric h:column> <h:outputText value="Horrio" styleClass="headerText" /> </ri ch:column>

<ric h:column> <h:outputText value="Marcar" styleClass="headerText" /> </ri ch:column> </rich: columnGroup> </f:facet> <rich:column > <h:outpu tText value="#{var}"> <s:convertDateTime pattern="kk:mm:ss" /> </h:outp utText> </rich:colum n> <rich:column > <a:form> <a:commandButton action="#{processoPericiaHome.persist(var)}" reRender="tabelaMarcacao,divMaeProx" ajaxSingle="true" value="Confirmar" styleClass="dr-tbpnl-tb-inact" /> </a:form> </rich:colum n> <f:facet name="footer"> <rich:datascroll er id="ds" renderIfSinglePage="true"/> </f:facet> </rich:dataTable > </a:form> </c:if> </s:div> </a:form> </s:div> <s:div id="cancelamentoPericiaDiv"> <s:div id="processoPericiaCancelamentoDi v" rendered="#{processoPericiaHome.mostrarDivCancelamento}"> <wi:view form="#{processoPeticao CancelamentoView}" title="Dados do Processo" columns="4"

buttons="none"> </wi:view> <wi:datalist home="#{processoAssuntoH ome}" bean="#{processoAssuntoV iewGrid}" gridId="processoAssuntoC onsultaGrid" toolBar="none" headerToolBar="none" title="#{processoAssunto ViewGrid.resultCount > 0 ? 'Assuntos' : 'Assuntos - No existem Assuntos cadastrad os.'}" showMsg="false" /> <wi:datalist home="#{processoParteHom e}" bean="#{processoPoloAtiv oGrid}" gridId="processoPericiaP oloAtivoGrid" toolBar="none" headerToolBar="none" title="#{processoTrfHome .instance.listaParteAtivo.size() > 0 ? 'Polo Ativo' : 'Polo Ativo - No existem Pa rtes cadastradas ao Polo Ativo.'}" showMsg="false" /> <wi:datalist home="#{processoParteHom e}" bean="#{processoPoloPass ivoGrid}" gridId="processoPericiaP oloPassivoGrid" toolBar="none" headerToolBar="none" title="#{processoTrfHome .instance.listaPartePassivo.size() > 0 ? 'Polo Passivo' : 'Polo Passivo - No exis tem Partes cadastradas ao Polo Passivo.'}" showMsg="false" /> <wi:form id="cancelamentoPericia Form" form="#{processoPericiaC ancelamentoForm}" formTitle="Motivo do can celamento" home="#{processoPericiaH ome}" status=":status" reRenderSave="pageBody" /> </s:div> </s:div> <s:div id="processoPericiaRealizacaoDiv" rendere d="#{processoPericiaHome.mostrarDivRealizacao}">

<wi:form id="realizacaoPericiaForm" isUploadForm="true" form="#{processoPericiaRealizaca oForm}" formTitle="teste" home="#{processoPericiaHome}" status=":status" reRenderSave="pageBody" /> </s:div> </s:div> </wi:ajaxDiv> </ui:composition>

package br.com.infox.cliente.home; import import import import import import import import import import import import import import import import import org.jboss.seam.contexts.Context; org.jboss.seam.contexts.Contexts; org.jboss.seam.faces.FacesMessages; org.jboss.seam.international.StatusMessage; br.com.infox.cliente.entity.Pessoa; br.com.infox.cliente.entity.PessoaPeritoDisponibilidade; br.com.infox.cliente.entity.PessoaServidor; org.jboss.seam.annotations.Name; br.com.infox.cliente.entity.ProcessoPericia; br.com.infox.cliente.type.PericiaStatusEnum; br.com.infox.cliente.type.SemanaEnum; br.com.itx.util.ComponentUtil; br.com.itx.util.EntityUtil; java.sql.Time; java.util.ArrayList; java.util.Calendar; java.util.List;

import javax.persistence.EntityManager; import javax.persistence.Query; @Name("processoPericiaHome") public class ProcessoPericiaHome extends AbstractProcessoPericiaHome<ProcessoPer icia> { private static final long serialVersionUID = 1L; private private private private private private private private private Boolean mostrarDivCancelamento = false; boolean visibleDivPericia = true; boolean visibleDivMarcaPericia = false; boolean visibleDivGridHoraDisponivel = false; boolean periciaParteRadio = true; List<Time> pessoaPeritoDispList = new ArrayList<Time>(0); Time proximoHorarioFila; boolean redesignarPericia = false; ProcessoPericia processoPericiaAnterior = null;

public Time getProximoHorarioFila() { return proximoHorarioFila; } public void setProximoHorarioFila(Time proximoHorarioFila) { this.proximoHorarioFila = proximoHorarioFila; } public static ProcessoPericiaHome instance() { return ComponentUtil.getComponent("processoPericiaHome"); } public void setarLinha(ProcessoPericia pp){ instance = pp; alterarDivCancelamento(); } public void alterarDivCancelamento(){ if(getMostrarDivCancelamento()) setMostrarDivCancelamento(Boolean.FALSE); else setMostrarDivCancelamento(Boolean.TRUE); } public void setMostrarDivCancelamento(Boolean mostrarDivCancelamento) { this.mostrarDivCancelamento = mostrarDivCancelamento; } public Boolean getMostrarDivCancelamento() { return mostrarDivCancelamento; } public void confirmaCancelamento(){ try { PessoaServidor pessoaLogada = (PessoaServidor) Contexts. getSessionContext().get("pessoaLogada"); getInstance().setPessoaCancela(new PessoaServidor()); getInstance().setPessoaCancela(pessoaLogada); //getInstance().setDsMotivo(getInstance().getDsMotivo()) ; getInstance().setStatus(PericiaStatusEnum.C); this.update(); alterarDivCancelamento(); } catch (Exception e) { FacesMessages.instance().add(StatusMessage.Severity.ERRO R, "A pessoa logada no um servidor!"); } } public void proxDivMarcaPericia() { this.setVisibleDivPericia(false); this.setVisibleDivMarcaPericia(true); this.setVisibleDivGridHoraDisponivel(false); } public void proxDivConfirmaPericia() { this.setVisibleDivPericia(false); this.setVisibleDivMarcaPericia(false); this.setVisibleDivGridHoraDisponivel(true); }

public List<ProcessoPericia> listarProcessoPerito() { String query = "SELECT pp FROM ProcessoPericia pp "+ "WHERE pp.especialidade.idEspecialida de = :idEspecialidade " + "AND pp.pessoaPerito.idUsuario = :idP erito " + "AND pp.dataMarcacao = :dataMarcacao" ; Query q = getEntityManager().createQuery(query); q.setParameter("idEspecialidade", getInstance().getEspecialidade ().getIdEspecialidade()); q.setParameter("idPerito", getInstance().getPessoaPerito().getId Usuario()); q.setParameter("dataMarcacao", getInstance().getDataMarcacao()); if(q.getResultList().size() == 0){ return null; } else { return q.getResultList(); } } public List<PessoaPeritoDisponibilidade> listarPeritoDisponivel(SemanaEn um semana) { String query = "SELECT pd FROM PessoaPeritoDisponibilidade pd "+ "WHERE pd.pessoaPeritoEspecialidade.e specialidade.idEspecialidade = :idEspecialista " + "AND pd.pessoaPeritoEspecialidade.pes soaPerito.idUsuario = :idPerito AND " + "pd.diaSemana = :enum"; Query q = getEntityManager().createQuery(query); q.setParameter("idEspecialista", getInstance().getEspecialidade( ).getIdEspecialidade()); q.setParameter("idPerito", getInstance().getPessoaPerito().getId Usuario()); q.setParameter("enum", semana); if(q.getResultList().size() == 0){ return null; } else { return q.getResultList(); } } public void consultarHorarios() { if(instance.getDataMarcacao() != null) { pessoaPeritoDispList = new ArrayList<Time>(); Calendar cal = Calendar.getInstance(); List<ProcessoPericia> processoPericiaList = listarProces soPerito(); int horarioDisponivel = 0; int intervalo = 0; int qntIntervalos = 0; cal.setTime(instance.getDataMarcacao()); List<PessoaPeritoDisponibilidade> peritoDispList = listarPeritoDisponivel(SemanaEnum.getSem anaEnum(cal.get(Calendar.DAY_OF_WEEK))); for(PessoaPeritoDisponibilidade ppd : peritoDispList) { boolean flag = true; if(horarioDisponivel == 0) { horarioDisponivel = convertToMinutes(ppd

.getHoraInicio(),ppd.getHoraFim()); if(ppd.getIntervalo() != null) { intervalo = convertToMinutes(ppd .getIntervalo()); qntIntervalos = horarioDisponive l/intervalo; } else { if(proximoHorarioFila != null) { continue; } qntIntervalos = horarioDisponive l/Integer.parseInt(ppd.getQntAtendimento()); } } intervalos: for(int i=0;i<=(qntIntervalos);i++) { Time time; if(ppd.getIntervalo() == null) { time = new Time(ppd.getHoraInici o().getTime() + ((i)*Integer.parseInt(ppd.getQntAtendimento()))*60000); } else { time = new Time(ppd.getHoraInici o().getTime() + ((i)*intervalo)*60000); } if(processoPericiaList != null) { for(ProcessoPericia pp : process oPericiaList) { flag = true; if(pp.getHoraMarcada().c ompareTo(time) != 0) { if(ppd.getInterv alo() == null && flag) { proximoH orarioFila = time; flag = f alse; break in tervalos; } else { pessoaPe ritoDispList.add(time); continue intervalos; } } } } else { if(ppd.getIntervalo() == null && flag) { proximoHorarioFila = tim e; flag = false; break intervalos; } else { pessoaPeritoDispList.add (time); } } } horarioDisponivel = 0;

} } } public void cancelarDivPericia() { this.setVisibleDivPericia(true); this.setVisibleDivGridHoraDisponivel(false); this.setVisibleDivMarcaPericia(false); } public void updateRemarcacao() { if(redesignarPericia) { instance.setPericiaAnterior(processoPericiaAnterior); processoPericiaAnterior.setStatus(PericiaStatusEnum.R); EntityManager em = getEntityManager(); em.merge(processoPericiaAnterior); em.persist(processoPericiaAnterior); } } public void redesignarPericia(ProcessoPericia pp) { try { processoPericiaAnterior = pp; setInstance((ProcessoPericia)EntityUtil.cloneEntity(pp, false)); redesignarPericia = true; proxDivConfirmaPericia(); } catch (Exception e) { e.printStackTrace(); } } @Override public String persist() { updateRemarcacao(); operacoesPadroesPersist(); instance.setHoraMarcada(proximoHorarioFila); String ret = super.persist(); pessoaPeritoDispList = null; if(ret != null) { consultarHorarios(); } return ret; } public String persist(Time obj) { updateRemarcacao(); operacoesPadroesPersist(); instance.setHoraMarcada(obj); String ret = super.persist(); pessoaPeritoDispList = null; if(ret != null) { consultarHorarios(); } return ret; } private void operacoesPadroesPersist(){ // Setar valores padroes

Context session = Contexts.getSessionContext(); Pessoa pessoa = (Pessoa) session.get("usuarioLogado"); instance.setPessoaMarcador((PessoaServidor)pessoa); instance.setProcessoTrf(ProcessoTrfHome.instance().getInstance() ); instance.setStatus(PericiaStatusEnum.M); // Operacoes padroes refreshGrid("processoPericiaGrid"); redesignarPericia = false; cancelarDivPericia(); } private int convertToMinutes(Time tempo) { Calendar cal = Calendar.getInstance(); cal.setTime(tempo); return (int) ((cal.get(Calendar.HOUR)*60)+cal.get(Calendar.MINUT E)); } private int convertToMinutes(Time horaInicial, Time horaFinal) { long diferenca = horaFinal.getTime() - horaInicial.getTime(); return (int) ((diferenca/1000)/60); } public boolean getVisibleDivPericia() { return visibleDivPericia; } public void setVisibleDivPericia(boolean visibleDivPericia) { this.visibleDivPericia = visibleDivPericia; } public boolean getVisibleDivMarcaPericia() { return visibleDivMarcaPericia; } public void setVisibleDivMarcaPericia(boolean visibleDivMarcaPericia) { this.visibleDivMarcaPericia = visibleDivMarcaPericia; } public boolean isVisibleDivGridHoraDisponivel() { return visibleDivGridHoraDisponivel; } public void setVisibleDivGridHoraDisponivel(boolean visibleDivGridHoraDi sponivel) { this.visibleDivGridHoraDisponivel = visibleDivGridHoraDisponivel ; } public boolean getPericiaParteRadio() { return periciaParteRadio; } public void setPericiaParteRadio(boolean periciaParteRadio) { this.periciaParteRadio = periciaParteRadio; } public List<Time> getPessoaPeritoDispList() {

return pessoaPeritoDispList; } public void setPessoaPeritoDispList(List<Time> pessoaPeritoDispList) { this.pessoaPeritoDispList = pessoaPeritoDispList; } }

<?xml version="1.0" encoding="ISO-8859-1"?> <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" xmlns="http://www.w3.org/1999/xhtml" xmlns:s="http://jboss.com/products/seam/taglib" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html" xmlns:wi="http://www.itx.com.br/jsf/" xmlns:a="http://richfaces.org/a4j" xmlns:rich="http://richfaces.org/rich"> <!-IBPM - Ferramenta de produtividade Java Copyright (c) 1986-2009 Infox Tecnologia da Informao Ltda. Este programa software livre; voc pode redistribu-lo e/ou modific-lo sob os termos da GNU GENERAL PUBLIC LICENSE (GPL) conforme publicada p ela Free Software Foundation; verso 2 da Licena. Este programa distribudo na expectativa de que seja til, porm, SEM NENHUMA GARANTIA; nem mesmo a garantia implcita de COMERCIABILIDADE OU ADEQUAO A UMA FINALIDADE ESPECFICA. Consulte a GNU GPL para mais detalhes. Voc deve ter recebido uma cpia da GNU GPL junto com este programa; se no, veja em http://www.gnu.org/licenses/ --> <ui:composition> <div align="center"> <a:form> <a:commandLink id="redesignarPericia" rendered="#{row.statu s == 'M'}" reRender="ajaxDivMarc arPericia" action="#{processoPer iciaHome.redesignarPericia(row)}" value="Redesignar" onclick="showLoading( );" oncomplete="hideLoadi ng();#{oncomplete}" /> <br/> <a:commandLink id="cancelarPericia"

rendered="#{row.statu s == 'M' or row.status == 'R'}" reRender="ajaxDivMarc arPericia" action="#{processoPer iciaHome.setarLinha(row)}" value="Cancelar" onclick="showLoading( );" oncomplete="hideLoadi ng();#{oncomplete}" /> </a:form> </div> </ui:composition> </jsp:root>

#ProcessoPericia: processoPericia.idProcessoPericia=Codigo da Per\u00EDcia processoPericia.processo=Processo processoPericia.pessoaPerito=Perito processoPericia.pessoaPericiado=Periciado processoPericia.status=Situao processoPericia.periciaAnterior=Percia Anterior processoPericia.especialidade=Especialidade processoPericia.pessoaMarcador=Marcador processoPericia.processoDocumento=Documento processoPericia.pessoaCancela=Pessoa Cancelada processoPericia.dataMarcacao=Incio processoPericia.horaMarcada=Hora Marcada processoPericia.valorPericia=Valor da Percia processoPericia.valorCausa=Valor da Causa processoPericia.dataCancelamento=Data de canceladento processoPericia.tipoBeneficio=Beneficio processoPericia.dataEntradaRequisicao=Data de Entrada Requisicao processoPericia.dataCessacaoBeneficio=Cessacao Beneficio processoPericia.quesitos=Quesitos processoPericia.enfermidades=Enfermidades processoPericia.motivo=Motivo processoPericia.objetoPericia=Objeto da Percia processoPericia.textColumn=Calendario Percia processoPericia.menuText=Cadastro de Percia processoPericia.titlePage=Cadastro de Percia processoPericia.titleGrid=Percia processoPericia.titleView=Percia processoPericia.titleForm=Percia ProcessoPericia_updated=Registro alterado com sucesso ProcessoPericia_created=Registro inserido com sucesso ProcessoPericia_deleted=Registro excludo com sucesso

package br.com.infox.cliente.home; import import import import import import import import import import import import import import import import import org.jboss.seam.contexts.Context; org.jboss.seam.contexts.Contexts; org.jboss.seam.faces.FacesMessages; org.jboss.seam.international.StatusMessage; br.com.infox.cliente.entity.Pessoa; br.com.infox.cliente.entity.PessoaPeritoDisponibilidade; br.com.infox.cliente.entity.PessoaServidor; org.jboss.seam.annotations.Name; br.com.infox.cliente.entity.ProcessoPericia; br.com.infox.cliente.type.PericiaStatusEnum; br.com.infox.cliente.type.SemanaEnum; br.com.itx.util.ComponentUtil; br.com.itx.util.EntityUtil; java.sql.Time; java.util.ArrayList; java.util.Calendar; java.util.List;

import javax.persistence.EntityManager; import javax.persistence.Query; @Name("processoPericiaHome") public class ProcessoPericiaHome extends AbstractProcessoPericiaHome<ProcessoPer icia> { private static final long serialVersionUID = 1L; private private private private private private private private private #### public void updateRemarcacao() { if(redesignarPericia) { instance.setPericiaAnterior(processoPericiaAnterior); processoPericiaAnterior.setStatus(PericiaStatusEnum.R); EntityManager em = getEntityManager(); em.merge(processoPericiaAnterior); em.persist(processoPericiaAnterior); } } public void redesignarPericia(ProcessoPericia pp) { try { processoPericiaAnterior = pp; setInstance((ProcessoPericia)EntityUtil.cloneEntity(pp, false)); instance.setPessoaPerito(processoPericiaAnterior.getPess Boolean mostrarDivCancelamento = false; boolean visibleDivPericia = true; boolean visibleDivMarcaPericia = false; boolean visibleDivGridHoraDisponivel = false; boolean periciaParteRadio = true; List<Time> pessoaPeritoDispList = new ArrayList<Time>(0); Time proximoHorarioFila; boolean redesignarPericia = false; ProcessoPericia processoPericiaAnterior = null;

// Metodos da classe ###################################################

oaPerito()); redesignarPericia = true; proxDivConfirmaPericia(); } catch (Exception e) { e.printStackTrace(); } } @Override public void newInstance() { super.newInstance(); finalizarProcesso(); redesignarPericia = false; pessoaPeritoDispList = null; proximoHorarioFila = null; refreshGrid("processoPericiaGrid"); } @Override public String persist() { updateRemarcacao(); setarValoresPersist(); instance.setHoraMarcada(proximoHorarioFila); String ret = super.persist(); pessoaPeritoDispList = null; if(ret != null) { consultarHorarios(); } this.newInstance(); return ret; } public String persist(Time obj) { updateRemarcacao(); setarValoresPersist(); instance.setHoraMarcada(obj); String ret = super.persist(); pessoaPeritoDispList = null; if(ret != null) { consultarHorarios(); } this.newInstance(); return ret; } private void setarValoresPersist(){ // Setar valores padroes Context session = Contexts.getSessionContext(); Pessoa pessoa = (Pessoa) session.get("usuarioLogado"); instance.setPessoaMarcador((PessoaServidor)pessoa); instance.setProcessoTrf(ProcessoTrfHome.instance().getInstance() ); instance.setStatus(PericiaStatusEnum.M); } private int convertToMinutes(Time tempo) { Calendar cal = Calendar.getInstance(); cal.setTime(tempo); return (int) ((cal.get(Calendar.HOUR)*60)+cal.get(Calendar.MINUT E));

} private int convertToMinutes(Time horaInicial, Time horaFinal) { long diferenca = horaFinal.getTime() - horaInicial.getTime(); return (int) ((diferenca/1000)/60); } public List<ProcessoPericia> listarProcessoPerito() { String query = "SELECT pp FROM ProcessoPericia pp "+ "WHERE pp.especialidade.idEspecialida de = :idEspecialidade " + "AND pp.pessoaPerito.idUsuario = :idP erito " + "AND pp.dataMarcacao = :dataMarcacao" ; Query q = getEntityManager().createQuery(query); q.setParameter("idEspecialidade", getInstance().getEspecialidade ().getIdEspecialidade()); q.setParameter("idPerito", getInstance().getPessoaPerito().getId Usuario()); q.setParameter("dataMarcacao", getInstance().getDataMarcacao()); if(q.getResultList().size() == 0){ return null; } else { return q.getResultList(); } } public List<PessoaPeritoDisponibilidade> listarPeritoDisponivel(SemanaEn um semana) { String query = "SELECT pd FROM PessoaPeritoDisponibilidade pd "+ "WHERE pd.pessoaPeritoEspecialidade.e specialidade.idEspecialidade = :idEspecialista " + "AND pd.pessoaPeritoEspecialidade.pes soaPerito.idUsuario = :idPerito AND " + "pd.diaSemana = :enum"; Query q = getEntityManager().createQuery(query); q.setParameter("idEspecialista", getInstance().getEspecialidade( ).getIdEspecialidade()); q.setParameter("idPerito", getInstance().getPessoaPerito().getId Usuario()); q.setParameter("enum", semana); if(q.getResultList().size() == 0){ return null; } else { return q.getResultList(); } } public void consultarHorarios() { if(instance.getDataMarcacao() != null) { pessoaPeritoDispList = new ArrayList<Time>(); Calendar cal = Calendar.getInstance(); List<ProcessoPericia> processoPericiaList = listarProces soPerito(); int horarioDisponivel = 0; int intervalo = 0; int qntIntervalos = 0; cal.setTime(instance.getDataMarcacao());

List<PessoaPeritoDisponibilidade> peritoDispList = listarPeritoDisponivel(SemanaEnum.getSem anaEnum(cal.get(Calendar.DAY_OF_WEEK))); for(PessoaPeritoDisponibilidade ppd : peritoDispList) { boolean flag = true; if(horarioDisponivel == 0) { horarioDisponivel = convertToMinutes(ppd .getHoraInicio(),ppd.getHoraFim()); if(ppd.getIntervalo() != null) { intervalo = convertToMinutes(ppd .getIntervalo()); qntIntervalos = horarioDisponive l/intervalo; } else { if(proximoHorarioFila != null) { continue; } qntIntervalos = horarioDisponive l/Integer.parseInt(ppd.getQntAtendimento()); } } intervalos: for(int i=0;i<=(qntIntervalos);i++) { Time time; if(ppd.getIntervalo() == null) { time = new Time(ppd.getHoraInici o().getTime() + ((i)*Integer.parseInt(ppd.getQntAtendimento()))*60000); } else { time = new Time(ppd.getHoraInici o().getTime() + ((i)*intervalo)*60000); } if(processoPericiaList != null) { if(!verificarChoque(processoPeri ciaList, time)) { flag = true; if(ppd.getIntervalo() == null && flag) { proximoHorarioFi la = time; flag = false; break intervalos ; } else { pessoaPeritoDisp List.add(time); continue interva los; } } } else { if(ppd.getIntervalo() == null && flag) { proximoHorarioFila = tim e; flag = false; break intervalos; } else { pessoaPeritoDispList.add (time); }

} } horarioDisponivel = 0; } } } private boolean verificarChoque(List<ProcessoPericia> processoPericiaLis t, Time hora) { for (ProcessoPericia pp : processoPericiaList) { if(pp.getHoraMarcada().compareTo(hora) == 0) { return true; } } return false; } public void proxDivMarcaPericia() { this.setVisibleDivPericia(false); this.setVisibleDivMarcaPericia(true); this.setVisibleDivGridHoraDisponivel(false); } public void proxDivConfirmaPericia() { this.setVisibleDivPericia(false); this.setVisibleDivMarcaPericia(false); this.setVisibleDivGridHoraDisponivel(true); } public void finalizarProcesso() { this.setVisibleDivPericia(true); this.setVisibleDivGridHoraDisponivel(false); this.setVisibleDivMarcaPericia(false); } public void confirmaCancelamento(){ try { PessoaServidor pessoaLogada = (PessoaServidor) Contexts. getSessionContext().get("pessoaLogada"); getInstance().setPessoaCancela(new PessoaServidor()); getInstance().setPessoaCancela(pessoaLogada); //getInstance().setDsMotivo(getInstance().getDsMotivo()) ; getInstance().setStatus(PericiaStatusEnum.C); this.update(); alterarDivCancelamento(); } catch (Exception e) { FacesMessages.instance().add(StatusMessage.Severity.ERRO R, "A pessoa logada no um servidor!"); } } public static ProcessoPericiaHome instance() { return ComponentUtil.getComponent("processoPericiaHome"); } public void setarLinha(ProcessoPericia pp){ instance = pp; alterarDivCancelamento(); }

public void alterarDivCancelamento(){ if(getMostrarDivCancelamento()) setMostrarDivCancelamento(Boolean.FALSE); else setMostrarDivCancelamento(Boolean.TRUE); } // Metodos GET e SET ################################################### #### public Time getProximoHorarioFila() { return proximoHorarioFila; } public void setProximoHorarioFila(Time proximoHorarioFila) { this.proximoHorarioFila = proximoHorarioFila; } public void setMostrarDivCancelamento(Boolean mostrarDivCancelamento) { this.mostrarDivCancelamento = mostrarDivCancelamento; } public Boolean getMostrarDivCancelamento() { return mostrarDivCancelamento; } public boolean getVisibleDivPericia() { return visibleDivPericia; } public void setVisibleDivPericia(boolean visibleDivPericia) { this.visibleDivPericia = visibleDivPericia; } public boolean getVisibleDivMarcaPericia() { return visibleDivMarcaPericia; } public void setVisibleDivMarcaPericia(boolean visibleDivMarcaPericia) { this.visibleDivMarcaPericia = visibleDivMarcaPericia; } public boolean isVisibleDivGridHoraDisponivel() { return visibleDivGridHoraDisponivel; } public void setVisibleDivGridHoraDisponivel(boolean visibleDivGridHoraDi sponivel) { this.visibleDivGridHoraDisponivel = visibleDivGridHoraDisponivel ; } public boolean getPericiaParteRadio() { return periciaParteRadio; } public void setPericiaParteRadio(boolean periciaParteRadio) { this.periciaParteRadio = periciaParteRadio; } public List<Time> getPessoaPeritoDispList() {

return pessoaPeritoDispList; } public void setPessoaPeritoDispList(List<Time> pessoaPeritoDispList) { this.pessoaPeritoDispList = pessoaPeritoDispList; } }

package br.com.infox.cliente.home; import import import import import import import import import import import import import import import import import import import import import import org.jboss.seam.contexts.Context; org.jboss.seam.contexts.Contexts; org.jboss.seam.faces.FacesMessages; org.jboss.seam.international.StatusMessage; br.com.infox.cliente.component.suggest.ProcessoParteSuggestBean; br.com.infox.cliente.entity.Pessoa; br.com.infox.cliente.entity.PessoaPeritoDisponibilidade; br.com.infox.cliente.entity.PessoaServidor; br.com.infox.cliente.entity.ProcessoParte; org.jboss.seam.annotations.Name; org.jboss.seam.annotations.Observer; br.com.infox.cliente.entity.ProcessoPericia; br.com.infox.cliente.type.PericiaStatusEnum; br.com.infox.cliente.type.SemanaEnum; br.com.itx.util.ComponentUtil; br.com.itx.util.EntityUtil; java.sql.Time; java.util.ArrayList; java.util.Calendar; java.util.List; javax.persistence.EntityManager; javax.persistence.Query;

@Name("processoPericiaHome") public class ProcessoPericiaHome extends AbstractProcessoPericiaHome<ProcessoPer icia> { private static final long serialVersionUID = 1L; private private private private private private Boolean mostrarDivCancelamento = false; boolean visibleDivPericia = true; boolean visibleDivMarcaPericia = false; boolean visibleDivGridHoraDisponivel = false; boolean periciaParteRadio = true; List<Time> pessoaPeritoDispList = new ArrayList<Time>(0);

private private private private

Time proximoHorarioFila; boolean redesignarPericia = false; ProcessoPericia processoPericiaAnterior = null; Boolean mostrarBtnDesignar = Boolean.TRUE;

//Inicio das alteraes feitas por Hiran em relao ao fluxo //Mtodo chamado pelo fluxo, quando a ao ser apenas de marcar uma Parc ia. public void fluxoDesignarPericia(){ newInstance(); setVisibleDivPericia(Boolean.FALSE); setVisibleDivMarcaPericia(Boolean.TRUE); } //Mtodo chamado pelo fluxo, quando a ao ser apenas de NO marcar uma P arcia. public void fluxoOperacoesPericia(){ newInstance(); setMostrarBtnDesignar(Boolean.FALSE); } public void setMostrarBtnDesignar(Boolean mostrarBtnDesignar) { this.mostrarBtnDesignar = mostrarBtnDesignar; } public Boolean getMostrarBtnDesignar() { return mostrarBtnDesignar; } //Fim das alteraes de Hiran // Metodos da classe ################################################### #### public void updateRemarcacao() { if(redesignarPericia) { instance.setPericiaAnterior(processoPericiaAnterior); processoPericiaAnterior.setStatus(PericiaStatusEnum.R); EntityManager em = getEntityManager(); em.merge(processoPericiaAnterior); em.persist(processoPericiaAnterior); } } public void redesignarPericia(ProcessoPericia pp) { try { processoPericiaAnterior = pp; setInstance((ProcessoPericia)EntityUtil.cloneEntity(pp, false)); instance.setPessoaPerito(processoPericiaAnterior.getPess oaPerito()); instance.setPessoaPericiado(processoPericiaAnterior.getP essoaPericiado()); redesignarPericia = true; proxDivConfirmaPericia(); } catch (Exception e) { e.printStackTrace(); } } @Override

public void newInstance() { super.newInstance(); finalizarProcesso(); redesignarPericia = false; pessoaPeritoDispList = null; proximoHorarioFila = null; setMostrarBtnDesignar(Boolean.TRUE); refreshGrid("processoPericiaGrid"); } @Override public String persist() { updateRemarcacao(); setarValoresPersist(); instance.setHoraMarcada(proximoHorarioFila); String ret = super.persist(); pessoaPeritoDispList = null; if(ret != null) { consultarHorarios(); } this.newInstance(); return ret; } public String persist(Time obj) { updateRemarcacao(); setarValoresPersist(); instance.setHoraMarcada(obj); String ret = super.persist(); pessoaPeritoDispList = null; if(ret != null) { consultarHorarios(); } this.newInstance(); return ret; } private void setarValoresPersist(){ // Setar valores padroes Context session = Contexts.getSessionContext(); Pessoa pessoa = (Pessoa) session.get("usuarioLogado"); instance.setPessoaMarcador((PessoaServidor)pessoa); instance.setProcessoTrf(ProcessoTrfHome.instance().getInstance() ); instance.setStatus(PericiaStatusEnum.M); } private int convertToMinutes(Time tempo) { Calendar cal = Calendar.getInstance(); cal.setTime(tempo); return (int) ((cal.get(Calendar.HOUR)*60)+cal.get(Calendar.MINUT E)); } private int convertToMinutes(Time horaInicial, Time horaFinal) { long diferenca = horaFinal.getTime() - horaInicial.getTime(); return (int) ((diferenca/1000)/60); } public List<ProcessoPericia> listarProcessoPerito() {

String query = "SELECT pp FROM ProcessoPericia pp "+ "WHERE pp.especialidade.idEspecialida de = :idEspecialidade " + "AND pp.pessoaPerito.idUsuario = :idP erito " + "AND pp.dataMarcacao = :dataMarcacao" ; Query q = getEntityManager().createQuery(query); q.setParameter("idEspecialidade", getInstance().getEspecialidade ().getIdEspecialidade()); q.setParameter("idPerito", getInstance().getPessoaPerito().getId Usuario()); q.setParameter("dataMarcacao", getInstance().getDataMarcacao()); if(q.getResultList().size() == 0){ return null; } else { return q.getResultList(); } } public List<PessoaPeritoDisponibilidade> listarPeritoDisponivel(SemanaEn um semana) { String query = "SELECT pd FROM PessoaPeritoDisponibilidade pd "+ "WHERE pd.pessoaPeritoEspecialidade.e specialidade.idEspecialidade = :idEspecialista " + "AND pd.pessoaPeritoEspecialidade.pes soaPerito.idUsuario = :idPerito AND " + "pd.diaSemana = :enum"; Query q = getEntityManager().createQuery(query); q.setParameter("idEspecialista", getInstance().getEspecialidade( ).getIdEspecialidade()); q.setParameter("idPerito", getInstance().getPessoaPerito().getId Usuario()); q.setParameter("enum", semana); if(q.getResultList().size() == 0){ return null; } else { return q.getResultList(); } } public void consultarHorarios() { if(instance.getDataMarcacao() != null) { pessoaPeritoDispList = new ArrayList<Time>(); Calendar cal = Calendar.getInstance(); List<ProcessoPericia> processoPericiaList = listarProces soPerito(); int horarioDisponivel = 0; int intervalo = 0; int qntIntervalos = 0; cal.setTime(instance.getDataMarcacao()); List<PessoaPeritoDisponibilidade> peritoDispList = listarPeritoDisponivel(SemanaEnum.getSem anaEnum(cal.get(Calendar.DAY_OF_WEEK))); for(PessoaPeritoDisponibilidade ppd : peritoDispList) { boolean flag = true; if(horarioDisponivel == 0) { horarioDisponivel = convertToMinutes(ppd .getHoraInicio(),ppd.getHoraFim());

if(ppd.getIntervalo() != null) { intervalo = convertToMinutes(ppd .getIntervalo()); qntIntervalos = horarioDisponive l/intervalo; } else { if(proximoHorarioFila != null) { continue; } qntIntervalos = horarioDisponive l/Integer.parseInt(ppd.getQntAtendimento()); } } intervalos: for(int i=0;i<=(qntIntervalos);i++) { Time time; if(ppd.getIntervalo() == null) { time = new Time(ppd.getHoraInici o().getTime() + ((i)*Integer.parseInt(ppd.getQntAtendimento()))*60000); } else { time = new Time(ppd.getHoraInici o().getTime() + ((i)*intervalo)*60000); } if(processoPericiaList != null) { if(!verificarChoque(processoPeri ciaList, time)) { flag = true; if(ppd.getIntervalo() == null && flag) { proximoHorarioFi la = time; flag = false; break intervalos ; } else { pessoaPeritoDisp List.add(time); continue interva los; } } } else { if(ppd.getIntervalo() == null && flag) { proximoHorarioFila = tim e; flag = false; break intervalos; } else { pessoaPeritoDispList.add (time); } } } horarioDisponivel = 0; } } } private boolean verificarChoque(List<ProcessoPericia> processoPericiaLis

t, Time hora) { for (ProcessoPericia pp : processoPericiaList) { if(pp.getHoraMarcada().compareTo(hora) == 0) { return true; } } return false; } public void proxDivMarcaPericia() { this.setVisibleDivPericia(false); this.setVisibleDivMarcaPericia(true); this.setVisibleDivGridHoraDisponivel(false); } public void proxDivConfirmaPericia() { this.setVisibleDivPericia(false); this.setVisibleDivMarcaPericia(false); this.setVisibleDivGridHoraDisponivel(true); } public void finalizarProcesso() { this.setVisibleDivPericia(true); this.setVisibleDivGridHoraDisponivel(false); this.setVisibleDivMarcaPericia(false); } public void confirmaCancelamento(){ try { PessoaServidor pessoaLogada = (PessoaServidor) Contexts. getSessionContext().get("pessoaLogada"); getInstance().setPessoaCancela(new PessoaServidor()); getInstance().setPessoaCancela(pessoaLogada); //getInstance().setDsMotivo(getInstance().getDsMotivo()) ; getInstance().setStatus(PericiaStatusEnum.C); this.update(); alterarDivCancelamento(); } catch (Exception e) { FacesMessages.instance().add(StatusMessage.Severity.ERRO R, "A pessoa logada no um servidor!"); } } public static ProcessoPericiaHome instance() { return ComponentUtil.getComponent("processoPericiaHome"); } public void setarLinha(ProcessoPericia pp){ instance = pp; alterarDivCancelamento(); } public void alterarDivCancelamento(){ if(getMostrarDivCancelamento()) setMostrarDivCancelamento(Boolean.FALSE); else setMostrarDivCancelamento(Boolean.TRUE); }

// Metodos GET e SET ################################################### #### @Observer(ProcessoParteSuggestBean.PROCESSO_PARTE_SUGGEST_EVENT_SELECTED ) public void setProcessoPartePericiado(ProcessoParte processoParte) { instance.setPessoaPericiado(processoParte.getPessoa()); } public Time getProximoHorarioFila() { return proximoHorarioFila; } public void setProximoHorarioFila(Time proximoHorarioFila) { this.proximoHorarioFila = proximoHorarioFila; } public void setMostrarDivCancelamento(Boolean mostrarDivCancelamento) { this.mostrarDivCancelamento = mostrarDivCancelamento; } public Boolean getMostrarDivCancelamento() { return mostrarDivCancelamento; } public boolean getVisibleDivPericia() { return visibleDivPericia; } public void setVisibleDivPericia(boolean visibleDivPericia) { this.visibleDivPericia = visibleDivPericia; } public boolean getVisibleDivMarcaPericia() { return visibleDivMarcaPericia; } public void setVisibleDivMarcaPericia(boolean visibleDivMarcaPericia) { this.visibleDivMarcaPericia = visibleDivMarcaPericia; } public boolean isVisibleDivGridHoraDisponivel() { return visibleDivGridHoraDisponivel; } public void setVisibleDivGridHoraDisponivel(boolean visibleDivGridHoraDi sponivel) { this.visibleDivGridHoraDisponivel = visibleDivGridHoraDisponivel ; } public boolean getPericiaParteRadio() { return periciaParteRadio; } public void setPericiaParteRadio(boolean periciaParteRadio) { this.periciaParteRadio = periciaParteRadio; } public List<Time> getPessoaPeritoDispList() { return pessoaPeritoDispList;

} public void setPessoaPeritoDispList(List<Time> pessoaPeritoDispList) { this.pessoaPeritoDispList = pessoaPeritoDispList; } }

public void consultarHorarios() { if(instance.getDataMarcacao() != null) { pessoaPeritoDispList = new ArrayList<Time>(); Calendar cal = Calendar.getInstance(); int horarioDisponivel = 0; int intervalo = 0; int qntIntervalos = 0; cal.setTime(instance.getDataMarcacao()); List<ProcessoPericia> processoPericiaList = listarProces soPerito(); List<PessoaPeritoDisponibilidade> peritoDispList = listarPeritoDisponivel(SemanaEnum.getSem anaEnum(cal.get(Calendar.DAY_OF_WEEK))); if(peritoDispList != null) { for(PessoaPeritoDisponibilidade ppd : peritoDisp List) { boolean flag = true; if(horarioDisponivel == 0) { horarioDisponivel = convertToMin utes(ppd.getHoraInicio(),ppd.getHoraFim()); if(ppd.getIntervalo() != null) { intervalo = convertToMin utes(ppd.getIntervalo()); qntIntervalos = horarioD isponivel/intervalo; } else { if(proximoHorarioFila != null) { continue; } qntIntervalos = horarioD isponivel/Integer.parseInt(ppd.getQntAtendimento()); } } intervalos: for(int i=0;i<=(qntIntervalos);i++) { Time time; if(ppd.getIntervalo() == null) { time = new Time(ppd.getH oraInicio().getTime() + ((i)*Integer.parseInt(ppd.getQntAtendimento()))*60000); } else { time = new Time(ppd.getH oraInicio().getTime() + ((i)*intervalo)*60000); } if(processoPericiaList != null) {

if(!verificarChoque(proc essoPericiaList, time)) { flag = true; if(ppd.getInterv alo() == null && flag) { proximoH orarioFila = time; flag = f alse; break in tervalos; } else { pessoaPe ritoDispList.add(time); continue intervalos; } } } else { if(ppd.getIntervalo() == null && flag) { proximoHorarioFi la = time; flag = false; break intervalos ; } else { pessoaPeritoDisp List.add(time); } } } horarioDisponivel = 0; } } else { FacesMessages.instance().add(StatusMessage.Sever ity.ERROR, "Perito no disponvel nesta Data"); } } }

<ui:define name="searchGrid"> <a:form> <s:decorate id="#{id}Decoration" template="/WEB-INF/xhtml/components/templates/vi ew.xhtml" rendered="#{empty rendered or rendered}"> <h:selectOneMenu id="#{id}ComboTarefas" style="min-widt h: 150px;" value="#{loteSe arch.idJbpmTask}"> <f:selectItems value="#{loteHome.actorTa sks}"/> <a:support event="onchange" reRender="di vLoteGrid"/> </h:selectOneMenu>

</s:decorate> </a:form> <s:div id="divLoteGrid"> <c:if test="#{!empty loteSearch.idJbpmTask ? (loteSearch .idJbpmTask != 0) : false}"> <h:messages globalOnly="true" styleClass="messag e" id="globalMessages" /> <wi:datagrid bean="#{loteGrid}" searchBean="#{lo teSearch}" title="#{messages['lote.titleGrid']}" /> </c:if> </s:div> </ui:define> <ui:define name="form"> <c:if test="#{canEdit}"> <wi:form form="#{loteForm}" formTitle="#{messages['lote.titleForm']}" persistSemNewInstance="true" /> </c:if> <c:if test="#{not canEdit}"> <wi:view form="#{loteView}" columns="4" title="#{messages['lote.titleView']}" /> </c:if> </ui:define> <ui:define name="tabs"> <rich:tab label="Adicionar Processo a Lote" status=":status" id="processoLote" rendered="#{home.managed}" action="#{processoLoteHome.newInstance()}"> <s:div> <wi:ajaxDiv id="divGridPL"> <wi:m2mGrid title="Processo Trf" gridId= "processoLote2" leftTitle="Lote: #{loteHome.inst ance}" leftGrid="#{processoLoteGrid}" useDatamodel="false" addExpression="processoLoteHome. addProcessoLote(row, 'processoLoteGrid')" removeExpression="processoLoteHo me.removeProcessoLote(row, 'processoTrfGrid')" rightGrid="#{processoTrfGrid}" searchBean="#{processoTrfSearch} " showLogicOperator="false" showButtonLimpar="false" widthExterno="100%" /> </wi:ajaxDiv> </s:div> </rich:tab> </ui:define>

<value>Cadastros Bsicos/caixa.menuText:/Caixa/listView.seam</value>

private List<Caixa> caixaList = new ArrayList<Caixa>(0); @ManyToMany(fetch=FetchType.LAZY) @JoinTable(name = "tb_processo_trf_caixa", joinColumns = {@JoinColumn(name = "id_processo_trf", nullable = false, updatable = false)}, inverseJoinCol umns = {@JoinColumn(name = "id_caixa", nullable = false, upd atable = false)}) public List<Caixa> getCaixaList() { return caixaList; } public void setCaixaList(List<Caixa> caixaList) { this.caixaList = caixaList; }

<ui:composition> <ui:param name="de" value="#{empty props.de ? de : props.de}" /> <ui:param name="ate" value="#{empty props.ate ? ate : props.ate} " /> <br/> <b>#{props.label}</b> <wi:hora id="#{id}De" value="#{home.de}" label="&#160;" required="#{required}" labelHora="De: " widthDiv="70px"> </wi:hora> <wi:hora id="#{id}Ate" value="#{home.ate}" required="#{required}" labelHora="At: " label="&#160;" showRequired="false" widthDiv="70px"/> </ui:composition> relatorioDistribuicaoDataIniciaFim <ui:include src="/WEB-INF/xhtml/components/form/minute.xhtml"> <ui:param name="templateForm" value="/WEB-INF/xhtml/components/t emplates/view.xhtml" /> </ui:include>

<a:region renderRegionOnly="true"> <s:decorate template="/WEB-INF/xhtml/components/template s/view.xhtml"> <ui:define name="label">#{label}</ui:define> <h:inputText id="#{id}De" value="#{home.de}" size="5" label="De " maxlength="5" styleClass="inputText" style="width: 40px !imp ortant;"> <f:converter converterId="horaConverter" /> <ui:insert/> <wi:mask id="#{id}De" mask="9999"/> </h:inputText> <h:inputText id="#{id}ate" value="#{home.ate}" size="5" label="Ate " maxlength="5" styleClass="inputText" style="width: 40px !imp ortant;"> <f:converter converterId="horaConverter" /> <ui:insert/> <wi:mask id="#{id}ate" mask="9999"/> </h:inputText> </s:decorate> </a:region> private Date dataInicio; private Date dataFim;

public Date getDataInicio() { return dataInicio; } public void setDataInicio(Date dataInicio) { this.dataInicio = dataInicio; } public Date getDataFim() { return dataFim; } public void setDataFim(Date dataFim) { this.dataFim = dataFim; }

SELECT tb_processo_trf.dt_autuacao , tb_processo_trf.id_classe_judicial, tb_processo_trf.id_jurisdicao, tb_processo_trf.in_titularidade_orgao, count(*) FROM tb_processo_trf group by tb_processo_trf.dt_autuacao , tb_processo_trf.id_classe_judicial, tb_processo_trf.id_jurisdicao, tb_processo_trf.in_titularidade_orgao order by 1 SELECT o.dataAutuacao, o.classeJudicial, o.jurisdicao ,o.titularidadeOrg ao, count(o) FROM ProcessoTrf o GROUP o.dataAutuacao, o.classeJudicial, o.jurisdicao ,o.titularidadeOrga o

SELECT new Map( cast (o.dataAutuacao as date) as dataAutuacao , o.classeJudicial.classeJudicial as classeJudi cial, o.jurisdicao.jurisdicao as jurisdicao ,o.titu laridadeOrgao as titularidadeOrgao, count(o) as quantidade) FROM ProcessoTrf o WHERE o.dataAutuacao is not null GROUP BY 1, 2, 3, 4

<components xmlns="http://jboss.com/products/seam/components" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jboss.com/products/seam/core http://jboss.com /products/seam/core-2.2.xsd http://jboss.com/products/seam/sec urity http://jboss.com/products/seam/security-2.2.xsd http://jb oss.com/products/seam/components http://jboss.com/products/seam/components-2.2.x sd"> <component name="relatorioDistribuicaoGrid" class="br.com.itx.component. grid.GridQuery"> <property name="ejbql"> SELECT new Map( cast (o.dataAutuacao as date) as dataAutuacao , o.classeJudicial.classeJudicial as classeJudi cial, o.jurisdicao.jurisdicao as jurisdicao ,o.titu laridadeOrgao as titularidadeOrgao, count(o) as quantidade) FROM ProcessoTrf o WHERE o.dataAutuacao is not null

GROUP BY 1, 2, 3, 4 </property> <property name="gridId">processoTrf</property> <property name="key">dataAutuacao</property> <property name="columns"> <value>dataAutuacao</value> <value>classeJudicial</value> <value>jurisdicao</value> <value>titularidadeOrgao: {valueType: enum}</value> </property> <property name="restrictions"> <value><![CDATA[o.dataAutuacao >= #{processoTrfHome.data Inicio} ]]></value> <value><![CDATA[o.dataAutuacao <= #{processoTrfHome.data Fim} ]]></value> <value>lower(o.classeJudicial.classeJudicial) like conca t('%',lower(#{relatorioDistribuicaoSearch.classeJudicial.classeJudicial}),'%')</ value> <value>o.titularidadeOrgao = #{relatorioDistribuicaoSear ch.titularidadeOrgao}</value> <value>lower(o.jurisdicao.jurisdicao) like concat('%',lo wer(#{relatorioDistribuicaoSearch.jurisdicao.jurisdicao}),'%')</value> <value>o.orgaoJulgador = #{relatorioDistribuicaoSearch.o rgaoJulgador}</value> </property> <property name="searchFields"> <value>dataAutuacao: {type : relatorioDistribuicaoDataIn iciaFim}</value> <value>classeJudicial</value> <value>titularidadeOrgao: {type : comboEnum, properties : { items: 'loteHome.titularidadeItems' }}</value> <value>jurisdicao: {type : comboSecaoSubsecaoOrgaoJugado r}</value> </property> <property name="order">1</property> </component> <component name="relatorioDistribuicaoSearch" class="br.com.infox.client e.entity.ProcessoTrf" /> </components>

<components xmlns="http://jboss.com/products/seam/components" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jboss.com/products/seam/core http://jboss.com /products/seam/core-2.2.xsd http://jboss.com/products/seam/sec urity http://jboss.com/products/seam/security-2.2.xsd http://jb oss.com/products/seam/components http://jboss.com/products/seam/components-2.2.x sd">

<component name="relatorioDistribuicaoGrid" class="br.com.itx.component. grid.GridQuery"> <property name="ejbql">select o from ProcessoTrf o</property> <property name="maxResults">16</property> <property name="gridId">processoTrf</property> <property name="key">idProcessoTrf</property> <property name="columns"> <value>dataAutuacao</value> <value>classeJudicial</value> <value>jurisdicao</value> <value>orgaoJulgador</value> <value>titularidadeOrgao: {valueType: enum}</value> </property> <property name="restrictions"> <value><![CDATA[o.dataAutuacao >= #{processoTrfHome.data Inicio} ]]></value> <value><![CDATA[o.dataAutuacao <= #{processoTrfHome.data Fim} ]]></value> <value>lower(o.classeJudicial.classeJudicial) like conca t('%',lower(#{relatorioDistribuicaoSearch.classeJudicial.classeJudicial}),'%')</ value> <value>o.titularidadeOrgao = #{relatorioDistribuicaoSear ch.titularidadeOrgao}</value> <value>lower(o.jurisdicao.jurisdicao) like concat('%',lo wer(#{relatorioDistribuicaoSearch.jurisdicao.jurisdicao}),'%')</value> <value>o.orgaoJulgador = #{relatorioDistribuicaoSearch.o rgaoJulgador}</value> </property> <property name="searchFields"> <value>dataAutuacao: {type : relatorioDistribuicaoDataIn iciaFim}</value> <value>classeJudicial</value> <value>titularidadeOrgao: {type : comboEnum, properties : { items: 'loteHome.titularidadeItems' }}</value> <value>jurisdicao: {type : comboSecaoSubsecaoOrgaoJugado r}</value> </property> <property name="order">dataAutuacao,orgaoJulgador</property> </component> <component name="relatorioDistribuicaoSearch" class="br.com.infox.client e.entity.ProcessoTrf" /> </components> Caro Breno, Como a gente tinha discutido anteriormente a data das frias que era por m otivo de uma viagem pr marcada, fiquei de te passar a data confirmada com a pesso a que estava organizando-a, bom a data foi confirmada com o pessoal, a ser do dia 05/07/2010 at o dia 24/07/2010. Esto sero 20 dias ausente conforme a gente tinha discutido anteriormente, ficarei a aguardo de sua confirmao. Desde j agradeo a ateno e aguardo retorno.

Atenciosamente, Alison Buss de Arruda INFOX Tecnologia da Informao Ltda Desenvolvedor / Estagiario - Matriz Aracaju Fone: +55 79 3211-5122 Ramal 233

-Cludia Gomes INFOX Tecnologia da Informao Ltda Gerente Administrativa / Administrativo - Matriz Aracaju Fone: +55 79 3211-5122 Ramal 224

processoTrf.titularidadeOrgao=Titularidade processoTrf.dataDistribuicao=Data da Distribuio processoTrf.orgaoJulgador=Orgao Julgador #relatorioDistribuicao: relatorioDistribuicao.textColumn=Relatorio de Distribuicao relatorioDistribuicao.menuText=Relatorio de Distribuicao relatorioDistribuicao.titlePage=Relatorio de Distribuicao relatorioDistribuicao.titleGrid=Relatorio de Distribuicao relatorioDistribuicao.titleView=Relatorio de Distribuicao

<components xmlns="http://jboss.com/products/seam/components" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jboss.com/products/seam/core http://jboss.com /products/seam/core-2.2.xsd http://jboss.com/products/seam/security http://jbos s.com/products/seam/security-2.2.xsd http://jboss.com/products/ seam/components http://jboss.com/products/seam/components-2.2.xsd"> <component name="relatorioDistribuicaoGrid" class="br.com.itx.component. grid.GridQuery"> <property name="ejbql"> SELECT new Map( cast (o.dataDistribuicao as date) as dataDistribuicao , o.classeJudicial.classeJudicial as classeJudicial, o.titularidadeOrgao as titularidadeOrgao, o.orgaoJulgador.orgaoJulgador as orgaoJulgador,

count(o) as Quantidade) FROM ProcessoTrf o WHERE o.dataDistribuicao is not null and o.orgaoJulgador is not null </property> <property name="gridId">processoTrf</property> <property name="key">dataDistribuicao</property> <property name="groupBy">1, 2, 3, 4</property> <property name="columns"> <value>dataDistribuicao</value> <value>classeJudicial</value> <value>orgaoJulgador</value> <value>titularidadeOrgao: {valueType: enum}</value> <value>Quantidade</value> </property> <property name="restrictions"> <value><![CDATA[o.dataDistribuicao >= #{relatorioDistrib uicaoSearch.dataInicio} ]]></value> <value><![CDATA[o.dataDistribuicao <= #{relatorioDistrib uicaoSearch.dataFim} ]]></value> <value>lower(o.classeJudicial.classeJudicial) like conca t('%',lower(#{relatorioDistribuicaoSearch.classeJudicial.classeJudicial}),'%')</ value> <value>o.titularidadeOrgao = #{relatorioDistribuicaoSear ch.titularidadeOrgao}</value> <value>o.orgaoJulgador = #{relatorioDistribuicaoSearch.o rgaoJulgador}</value> </property> <property name="searchFields"> <value>dataDistribuicao: {type : relatorioDistribuicaoDa taIniciaFim}</value> <value>classeJudicial</value> <value>titularidadeOrgao: {type : comboEnum, properties : { items: 'loteHome.titularidadeItems' }}</value> <!-- <value>jurisdicao: {type : comboSecaoSubsecaoOrgaoJ ugador}</value> --> </property> <property name="order">1</property> </component> </components>

<components xmlns="http://jboss.com/products/seam/components" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jboss.com/products/seam/core http://jboss.com /products/seam/core-2.2.xsd http://jboss.com/products/seam/security http://jbos s.com/products/seam/security-2.2.xsd http://jboss.com/products/ seam/components http://jboss.com/products/seam/components-2.2.xsd"> <component name="relatorioDistribuicaoGrid" class="br.com.itx.component. grid.GridQuery"> <property name="ejbql"> SELECT new Map( cast (o.dataDistribuicao as date) as dataDistribuicao

, o.classeJudicial.classeJudicial as classeJudicial, o.titularidadeOrgao as titularidadeOrgao, o.orgaoJulgador.orgaoJulgador as orgaoJulgador, o.orgaoJulgador.idOrgaoJulgador as idOrgaoJulgador, o.classeJudicial.idClasseJudicial as idClasseJudicial , count(o) as Quantidade) FROM ProcessoTrf o WHERE o.dataDistribuicao is not null and o.orgaoJulgador is not null </property> <property name="gridId">processoTrf</property> <property name="key">dataDistribuicao</property> <property name="groupBy">1, 2, 3, 4, 5, 6</property> <property name="columns"> <value>dataDistribuicao</value> <value>classeJudicial</value> <value>orgaoJulgador</value> <value>titularidadeOrgao: {valueType: enum}</value> <value>Quantidade: { valueType: relatorioDisdribuicaoAca o}</value> </property> <property name="restrictions"> <value><![CDATA[o.dataDistribuicao >= #{relatorioDistrib uicaoSearch.dataInicio} ]]></value> <value><![CDATA[o.dataDistribuicao <= #{relatorioDistrib uicaoSearch.dataFim} ]]></value> <value>lower(o.classeJudicial.classeJudicial) like conca t('%',lower(#{relatorioDistribuicaoGridSearch.classeJudicial.classeJudicial}),'% ')</value> <value>o.titularidadeOrgao = #{relatorioDistribuicaoSear ch.titularidadeOrgao}</value> <value>lower(o.orgaoJulgador.orgaoJulgador) like concat( '%',lower(#{processoTrfHome.ojString}),'%')</value> </property> <property name="searchFields"> <value>ojString: {properties: {searchBean='processoTrfHo me'}}</value> </property> <property name="order">1</property> </component> </components>

<components xmlns="http://jboss.com/products/seam/components" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jboss.com/products/seam/core http://jboss.com /products/seam/core-2.2.xsd http://jboss.com/products/seam/security http://jbos s.com/products/seam/security-2.2.xsd http://jboss.com/products/ seam/components http://jboss.com/products/seam/components-2.2.xsd"> <component name="relatorioDistribuicaoGrid" class="br.com.itx.component. grid.GridQuery">

<property name="ejbql"> SELECT new Map( cast (o.dataDistribuicao as date) as dataDistribuicao , o.classeJudicial.classeJudicial as classeJudicial, o.titularidadeOrgao as titularidadeOrgao, o.orgaoJulgador.orgaoJulgador as orgaoJulgador, o.orgaoJulgador.idOrgaoJulgador as idOrgaoJulgador, o.classeJudicial.idClasseJudicial as idClasseJudicial , count(o) as Quantidade) FROM ProcessoTrf o WHERE o.dataDistribuicao is not null and o.orgaoJulgador is not null </property> <property name="gridId">processoTrf</property> <property name="key">dataDistribuicao</property> <property name="groupBy">1, 2, 3, 4, 5, 6</property> <property name="columns"> <value>dataDistribuicao</value> <value>classeJudicial</value> <value>orgaoJulgador</value> <value>titularidadeOrgao: {valueType: enum}</value> <value>Quantidade: { valueType: relatorioDisdribuicaoAca o}</value> </property> <property name="restrictions"> <value><![CDATA[o.dataDistribuicao >= #{relatorioDistrib uicaoSearch.dataInicio} ]]></value> <value><![CDATA[o.dataDistribuicao <= #{relatorioDistrib uicaoSearch.dataFim} ]]></value> <value>lower(o.classeJudicial.classeJudicial) like conca t('%',lower(#{relatorioDistribuicaoSearch.classeJudicial.classeJudicial}),'%')</ value> <value>o.titularidadeOrgao = #{relatorioDistribuicaoSear ch.titularidadeOrgao}</value> <value>lower(o.orgaoJulgador.orgaoJulgador) like concat( '%',lower(#{relatorioDistribuicaoSearch.orgaoJulgador.orgaoJulgador}),'%')</valu e> </property> <property name="searchFields"> <!-- <value>dataDistribuicao: {type : relatorioDistribui caoDataIniciaFim}</value> --> <value>classeJudicial</value> <value>orgaoJulgador</value> <value>titularidadeOrgao: {type : comboEnum, properties : { items: 'loteHome.titularidadeItems' }}</value> <!-- <value>jurisdicao: {type : comboSecaoSubsecaoOrgaoJ ugador}</value> --> </property> <property name="order">1</property> </component> </components>

<property name="restrictions"> <value>lower(o.orgaoJulgador.orgaoJulgador) like concat( '%',lower(#{processoTrfHome.ojString}),'%')</value> </property> <property name="searchFields"> <value> ojString : {properties : {searchBean:'pr ocessoTrfHome.ojString'}}</value> </property>

Wilson no Futuro http://englishrussia.com/images/bodybuilding_in_russia/1.jpg http://englishrussia.com/images/bodybuilding_in_russia/2.jpg http://englishrussia.com/images/bodybuilding_in_russia/3.jpg http://englishrussia.com/images/bodybuilding_in_russia/4.jpg http://englishrussia.com/images/bodybuilding_in_russia/5.jpg http://englishrussia.com/images/bodybuilding_in_russia/6.jpg http://englishrussia.com/images/bodybuilding_in_russia/7.jpg

<value>o in (select s from SalaAudiencia s inner join s.orgaoJulgador.localizacao where s.orgaoJulgador.localizacao.localizacaoPai = #{usuarioLogadoLocalizacaoAtual.localizacao} or s.orgaoJulgador.localizacao.localizacaoPai.loc alizacaoPai = #{usuarioLogadoLocalizacaoAtual.localizacao})</value> or s.orgaoJulgador.localizacao.localizacaoPai = #{usuarioLogadoLocalizacaoAtual. localizacao} or s.orgaoJulgador.localizacao.localizacaoPai.loc alizacaoPai = #{usuarioLogadoLocalizacaoAtual.localizacao})

<rich:messages id="#{gridId}Messages" globalOnly="true" infoClass="formMessage" rendered="#{showMsg}" style="float:left; margin: 5p x" errorClass="error formMessage " warnStyle="display: none"/>

<ui:composition xmlns="http://www.w3.org/1999/xhtml" xmlns:s="http://jboss.com/products/seam/taglib" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html" xmlns:wi="http://www.itx.com.br/jsf/" xmlns:a="http://richfaces.org/a4j" xmlns:rich="http://richfaces.org/rich" xmlns:c="http://java.sun.com/jstl/core"> <ui:param name="idMsg" value="#{empty idMsg ? 'msgGeneric' : idMsg}"/> <ui:param name="msgVisible" value="#{empty msgVisible ? true : msgVisibl e}"/> <rich:messages id="#{idMsg}" rendered="#{msgVisible}" globalOnly="true" infoClass="formMessage" style="margin: 5px" errorClass="error formMessage" warnStyle="display: none" /> <f:verbatim> <script> if ($("#{idMsg}")) { setTimeout("if ($('#{idMsg}')) $('#{idMsg}').sty le.display='none'", 10000); } </script> </f:verbatim> </ui:composition>

<?xml version="1.0" encoding="ISO-8859-1"?> <ui:composition xmlns="http://www.w3.org/1999/xhtml" xmlns:s="http://jboss.com/products/seam/taglib" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:c="http://java.sun.com/jstl/core" xmlns:f="http://java.sun.com/jsf/core" xmlns:wi= "http://www.itx.com.br/jsf/" xmlns:h="http://java.sun.com/jsf/html" xmlns:rich="http://richfaces.ajax4jsf.org/rich" template="/WEB-INF/xhtml/templates/tabbedTemplate.xhtml"> <ui:define name="title">#{messages['calendarioEvento.titlePage']}</ui:de fine> <ui:param name="home" value="#{calendarioEventoHome}" />

<ui:define name="searchGrid"> <h:messages globalOnly="true" styleClass="message" id="globalMessage s"/> Teste </ui:define> <ui:define name="form" action="#{calendarioEventoHome.newInstance()}"> <c:if test="#{canEdit}"> <wi:form msgVisible="false" form="#{calendarioEventoForm}" formTitle="#{messages['calendarioEvento .titleForm']}" persistSemNewInstance="true" /> --<wi:msgGeneric idMsg="testeMsgGeneric"/> --<wi:datagrid bean="#{calendarioEventoGrid}" searchBean="#{calendarioEventoSearch}" title="#{messages['calendarioEvento.titleGrid']}"/> </c:if> <c:if test="#{not canEdit}"> <wi:view form="#{calendarioEventoView}" columns="4" title="#{messages['calendarioEvento.tit leView']}"/> </c:if> </ui:define> </ui:composition>

<a:region renderRegionOnly="true"> <br/> <table width="100%" border="1" cellspacing="0" cellpadding="0"> <tr valign="top"> <td width="310"> <rich:tabPanel switchType="ajax" status=":status"> <rich:tab label="Caixas" reRender="painel Processo" action="#{tarefasTre e.clearTree()}"> <s:div id="taref asDiv"> <ui:incl ude src="tarefasTree.xhtml"> <ui:param name="id" value="naoSegredo" /> </ui:inc lude> <ui:incl ude src="tarefasTree.xhtml">

<ui:param name="id" value="segredo" /> <ui:param name="tarefasTree" value="#{tarefasSegredoTree}" /> </ui:inc lude> </s:div> </rich:tab> <rich:tab label="Lotes" reRender="painel Processo" action="#{lotesTree. clearTree()}"> <a:form id="form "> <ui:incl ude src="lotesTree.xhtml" /> </a:form> </rich:tab> </rich:tabPanel> </td> <td> <s:div id="painelProcessos" > <ui:param name="mostraGrid" valu e="#{not empty painelUsuarioHome.processoIdList or not empty painelUsuarioHome.i dCaixa or not empty painelUsuarioHome.idLote}"/> <rich:simpleTogglePanel rendered="#{mostraGrid}" switchType="client" opened="false" label="Pesquisar" styleClass="leftPanel"> <wi:form form="#{consult aProcessoForm}" canEdit="true" buttonReRender=" processoList,consultaProcessoForm" formTitle="Preen cha os campos para filtrar a lista" /> <h:messages styleClass=" message" id="globalMessages"/> </rich:simpleTogglePanel> <s:div id="processoList"> <wi:datalist rendered="# {mostraGrid}" rows="20" bean="#{consulta ProcessoGrid}" title="#{message s['consultaProcessoGrid.titulo']}" searchBean="cons ultaProcessoSearch" toolBar="toolBar ProcessoJbpm" headerToolBar="t oolBarProcessoJbpm" linkDetalhe="/Pr ocesso/ConsultaProcesso/Detalhe/list.seam" pesqHome="#{cons

ultaProcessoHome}"/> </s:div> <script> jQuery("#consultaProcess oGridList tr:has(span:contains('#{actor.id}'))").css('font-weight', 'bold') jQuery("#consultaProcess oGridList tr:has(.actorId):not(:contains('#{actor.id}'))").css("background-color ", "#ffdddd") </script> </s:div> </td> </tr> </table> <rich:dragIndicator id="indicator" /> <rich:modalPanel id="novaCaixaPanel" height="110" left="40" > <f:facet name="header"> <h:outputText value="Nova caixa para a tarefa" / > </f:facet> <f:facet name="controls"> <span style="cursor:pointer; font-family: Verdana, Arial ; padding-right: 5px" onclick="Richfaces.hideTopModalPanel()">X</spa n> </f:facet> <a:form id="modalForm"> <wi:inputText id="nomeCaixa" label="Nome da caixa" value="#{caixaHome.nomeNovaCaixa}"/> <a:commandButton value="Incluir" styleClass="dr-tbpnl-tb-inact" action="#{caixaHome.addCaixa(painelUsuar ioHome.taskId)}" oncomplete="Richfaces.hideTopModalPanel( )" reRender="tarefasDiv,painelProcessos"/> <rich:messages /> </a:form> </rich:modalPanel> <rich:modalPanel id="novoLotePanel" height="110" left="40" > <f:facet name="header"> <h:outputText value="Nova lote para a tarefa" /> </f:facet> <f:facet name="controls"> <span style="cursor:pointer; font-family: Verdana, Arial ; padding-right: 5px" onclick="Richfaces.hideTopModalPanel()">X</spa n> </f:facet> <a:form> <wi:inputText id="nomeLote" label="Nome do lote" value="#{loteHome.nomeNovoLote}"/> <a:commandButton value="Incluir" styleClass="dr-tbpnl-tb-inact"

action="#{loteHome.addLote(painelUsuario Home.taskId)}" oncomplete="Richfaces.hideTopModalPanel( )" reRender="lotesTree"/> <rich:messages /> </a:form> </rich:modalPanel> </a:region>

<script> function ajusta() { cl='.subBorda .rich-tabpanel-content' jQuery(cl).css('height', document.body.clientHeight - jQ uery(cl).offset().top - 40) } window.onresize=ajusta; ajusta(); </script>

import org.hibernate.annotations.common.AssertionFailure; #CalendarioEvento: lote.idLote=Id Lote lote.lote=Nome do Lote lote.descricao=Descrio do Lote lote.tarefa=Tarefa lote.dtCriacao=Data de Criao lote.processoTrfList=Nmero Processo lote.ativo=Situao lote.usuario=Usurio que criou o Lote lote.titularidade=Titularidade do Lote lote.idJbpmTask=Tarefa lote.textColumn=Lote lote.menuText=Lote lote.titlePage=Lote lote.titleGrid=Lote lote.titleView=Lote lote.titleForm=Lote Lote_updated=Registro alterado com sucesso Lote_created=Registro inserido com sucesso Lote_deleted=Registro excludo com sucesso client.tb_lote ADD COLUMN in_titularidade

#Lote: lote.idLote=Id Lote

lote.lote=Nome do Lote lote.descricao=Descrio do Lote lote.tarefa=Tarefa lote.dtCriacao=Data de Criao lote.processoTrfList=Nmero Processo lote.ativo=Situao lote.usuario=Usurio que criou o Lote lote.textColumn=codLote lote.titularidade=Titularidade do Lote lote.menuText=Lote lote.titlePage=Lote lote.idJbpmTask=Tarefa lote.titleGrid=Lote lote.titleView=Lote lote.titleForm=Lote Lote_updated=Registro alterado com sucesso Lote_created=Registro inserido com sucesso Lote_deleted=Registro excludo com sucesso

#tempoAudienciaOrgaoJulgador tempoAudiencia.titleGrid=Tempo de Audincia tempoAudiencia.menuText=Tempo de Audi\u00EAncia Org\u00E3o Julgador tempoAudiencia.titlePage=Tempo de Audincia tempoAudiencia.titleForm=Tempo de Audincia

#OrgaoJulgador: orgaoJulgador.idOrgaoJulgador=IdOrgaoJulgador orgaoJulgador.numeroTempoAudiencia=Tempo Mdio de Audincia (Em minutos) orgaoJulgador.tempoAudiencia=Tempo Mdio de Audincia (Em minutos) orgaoJulgador.orgaoJulgador=rgo Julgador orgaoJulgador.endereco=Endereo orgaoJulgador.numeroEndereco=Nmero orgaoJulgador.complementoEndereco=Complemento do Endereo orgaoJulgador.dddTelefone=DDD Telefone orgaoJulgador.numeroTelefone=Telefone orgaoJulgador.dddFax=DDD Fax orgaoJulgador.numeroFax=Fax orgaoJulgador.email=E-mail orgaoJulgador.localizacao=Localizao orgaoJulgador.nomeEstado=Estado orgaoJulgador.municipio=Municpio orgaoJulgador.cep=CEP orgaoJulgador.numeroGrau=Grau orgaoJulgador.instancia=Instncia orgaoJulgador.jurisdicao=Jurisdio orgaoJulgador.novoOrgaoJulgador=Novo / Mudana de Competncia orgaoJulgador.atoCriacao=Ato de Criao orgaoJulgador.novoOrgao=Novo / Mudana de Competncia orgaoJulgador.dtCriacao=Data de Criao orgaoJulgador.numeroVara=Nmero da Vara orgaoJulgador.ativo=Situao orgaoJulgador.aplicacaoClasse=Aplicao orgaoJulgador.textColumn=codOrgaoJulgador orgaoJulgador.menuText=rgo Julgador

orgaoJulgador.titlePage=rgo Julgador orgaoJulgador.titleGrid=rgo Julgador orgaoJulgador.titleView=rgo Julgador orgaoJulgador.titleForm=rgo Julgador OrgaoJulgador_updated=Registro alterado com sucesso OrgaoJulgador_created=Registro inserido com sucesso OrgaoJulgador_deleted=Registro excludo com sucesso

minuteConverter Realizar ajustes de homologao da 062-Cadastro_de_Salas_Audiencia; Alterao de labels conforme solicitado pelos analistas do TRF. @Override public boolean isEditable() { //TODO rever isto pois esta lgica do PJE return Contexts.getApplicationContext().get("permitirCadastroAdv ogado").toString().equalsIgnoreCase("true"); }

//http://docs.jquery.com/UI/Draggable //http://ui.jquery.it/demos/draggable function releaseMovement(idWin){ alert('sdsdsdsds ' + idWin); $("#" + idWin + "-shortcut").draggable(); $("#useCase01-shortcut").draggable(); } releaseMovement("useCase01"); releaseMovement("useCase02"); releaseMovement("useCase03"); releaseMovement("grid-win"); releaseMovement("acc-win");

<?xml version="1.0" encoding="ISO-8859-1"?> <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" xmlns="http://www.w3.org/1999/xhtml" xmlns:s="http://jboss.com/products/seam/taglib" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html" xmlns:wi="http://www.itx.com.br/jsf/" xmlns:a="http://richfaces.org/a4j" xmlns:rich="http://richfaces.org/rich"> <!-IBPM - Ferramenta de produtividade Java Copyright (c) 1986-2009 Infox Tecnologia da Informao Ltda.

Este programa software livre; voc pode redistribu-lo e/ou modific-lo sob os termos da GNU GENERAL PUBLIC LICENSE (GPL) conforme publicada p ela Free Software Foundation; verso 2 da Licena. Este programa distribudo na expectativa de que seja til, porm, SEM NENHUMA GARANTIA; nem mesmo a garantia implcita de COMERCIABILIDADE OU ADEQUAO A UMA FINALIDADE ESPECFICA. Consulte a GNU GPL para mais detalhes. Voc deve ter recebido uma cpia da GNU GPL junto com este programa; se no, veja em http://www.gnu.org/licenses/ --> <ui:composition> <s:decorate id="#{id}Decoration" template="/WEB-INF/xhtml/components/templates/edit.xhtml " rendered="#{empty rendered or rendered}"> <ui:param name="noSelectionLabel" value="#{empty props.n oSelectionLabel ? noSelectionLabel : props.noSelectionLabel }"/> <ui:param name="optionText" value="#{empty optionText ? props.optionText : optionText }" /> <ui:param name="_optionLabel" value="#{empty optionText ? v : util.eval('v.'.concat(optionText))}" /> <ui:param name="optionLabel" value="#{empty optionLabel ? _optionLabel : optionLabel}" /> <ui:define name="label">#{label}</ui:define> <rich:comboBox id="#{id}" value="#{value}" style="#{style}" required="#{required}" disabled="#{disabled}"> <s:selectItems value="#{empty items ? util.eval(props.i tems) : items}" var="v" label="#{optionLabel}" hideNoSelectionLabel="#{hideNoSelectionL abel}" noSelectionLabel="#{noSelectionLabel}" / > <ui:insert /> </rich:comboBox> <!-<h:selectOneMenu id="#{id}" value="#{value}" style="#{style}" required="#{required}" disabled="#{disabled}"> <s:selectItems value="#{empty items ? util.eval(props.i tems) : items}" var="v"

label="#{optionLabel}" hideNoSelectionLabel="#{hideNoSelectionL abel}" noSelectionLabel="#{noSelectionLabel}" /> <ui:insert /> </h:selectOneMenu> --> </s:decorate> </ui:composition> </jsp:root>

################################################################################ ############################################################ ERRO MOZZILA E IE ################################################################################ ############################################################ http://localhost:8080/pje2_dev/ModeloDocumento/listView.seam?cid=33 (# CORRIGIDO / FORMULARIO #) http://localhost:8080/pje2_dev/Painel/painel_usuario/Paniel_Usuario_Oficial_Just ica/listView.seam?cid=88 (# CORRIGIDO #) http://localhost:8080/pje2_dev/useradmin/papelListView.seam?cid=20 (# CORRIGIDO #) http://localhost:8080/pje2_dev/Caixa/listView.seam?cid=29 (# CORRIGIDO #) http://localhost:8080/pje2_dev/PlantaoOficialJustica/listView.seam?cid=17 ################################################################################ ######################################################## <?xml version="1.0" encoding="UTF-8"?> <!-- Persistence deployment descriptor for dev profile --> <persistence xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://j ava.sun.com/xml/ns/persistence/persistence_1_0.xsd" version="1.0"> <persistence-unit name="PJETempPersistenceUnit" transaction-type="JTA"> <provider>org.hibernate.ejb.HibernatePersistence</provider> <jta-data-source>java:/PJE_TEMP_DS</jta-data-source> <properties> <property name="hibernate.dialect" value="org.hibernate. dialect.PostgreSQLDialect" /> <property name="hibernate.show_sql" value="true" /> <property name="hibernate.format_sql" value="false" /> <property name="hibernate.transaction.manager_lookup_cla ss" value="org.hibernate.transaction.JBossTransactionManagerLookup" /> <property name="hibernate.default_schema" value="client" /> <property name="hibernate.default_batch_fetch_size" valu

e="16" /> <property name="hibernate.max_fetch_depth" value="2" /> <property name="hibernate.search.default.directory_provi der" value="org.hibernate.search.store.FSDirectoryProvider" /> <!-- <property name="hibernate.hbm2ddl.auto" value="crea te"/> --> <property name="jboss.entity.manager.factory.jndi.name" value="java:/PJETempPersistenceUnit"/> </properties> </persistence-unit> <persistence-unit name="PJETempConsolePersistenceUnit" transaction-type="JTA" > <provider>org.hibernate.ejb.HibernatePersistence</provider> <jta-data-source>java:/PJE_TEMP_DS</jta-data-source> <jar-file>file:/jbdevstudio/workspace/FI-Core-Temp/WEB-INF/classes</jar-fi le> <jar-file>file:/jbdevstudio/workspace/FI-BPM-Temp/WEB-INF/classes</jar -file> <properties> <property name="hibernate.dialect" value="org.hibernate. dialect.PostgreSQLDialect" /> <property name="hibernate.show_sql" value="true" /> <property name="hibernate.format_sql" value="false" /> <property name="hibernate.transaction.manager_lookup_cla ss" value="org.hibernate.transaction.JBossTransactionManagerLookup" /> <property name="hibernate.default_schema" value="client" /> <property name="hibernate.default_batch_fetch_size" valu e="16" /> <property name="hibernate.search.default.directory_provi der" value="org.hibernate.search.store.FSDirectoryProvider" /> </properties> </persistence-unit> </persistence> graphicResources/resources/img/temp-skin

/graphicResources/resources/img/other/ /js/editor/epa_plugin.js /graphicResources/resources/js/ /graphicResources/resources/css/genericTheme.css

tabbedTemplate.xhtml == templateFullStandard.xhtml

Pr-Relatrio

Boa tarde Elenildes. O Elenildes a parte do relatrio de , porem Relatrio_de_Gerencial_de_Servio esta feito

algumas tarefas realmente estavam e esto cadastradas no [SGP] mas alguns [comites] foram feitos sem ter uma tarefas cadastradas tipo: {Criao de um branch usabilidad e dos projetos [FI-core, FI-BPM, PJE2] feitor por Joseleno que eu pedir por email} , {C onfigurando e adaptando do branch usabilidade para a nova estrutura} e {Criao de imagens reading-pen ding.png e reading.png} e entre outros. A parte de Indicadores esta em branco porque no tenho ideia de como ser feit o. De uma olhada para ver como ficou o relatrio Elenildes ds de j agradeo muito pela sua ateno

Essa nova estrutura esta sendo testada em um branches nos projetos (FI-core, FIBPM, PJE2) [desenvolvimento/branches/usabilidade] no repositrio http://192.0.0. 110/repos/... .

<?xml version="1.0" encoding="ISO-8859-1"?> <!-- $Id: form.xhtml 609 2010-08-24 14:11:08Z danielsilva $ --> <!-IBPM - Ferramenta de produtividade Java Copyright (c) 1986-2009 Infox Tecnologia da Informao Ltda. Este programa software livre; voc pode redistribu-lo e/ou modific-lo sob os termos da GNU GENERAL PUBLIC LICENSE (GPL) conforme publicada pela Free Software Foundation; verso 2 da Licena. Este programa distribudo na expectativa de que seja til, porm, SEM NENHUMA GARANTIA; nem mesmo a garantia implcita de COMERCIABILIDADE OU ADEQUAO A UMA FINALIDADE ESPECFICA. Consulte a GNU GPL para mais detalhes.

Voc deve ter recebido uma cpia da GNU GPL junto com este programa; se no, veja em http://www.gnu.org/licenses/ --> <ui:composition xmlns="http://www.w3.org/1999/xhtml" xmlns:s="http://jboss.com/products/seam/taglib" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html" xmlns:wi="http://www.itx.com.br/jsf" xmlns:c="http://java.sun.com/jstl/core" xmlns:a="http://richfaces.org/a4j" xmlns:rich="http://richfaces.org/rich"> <c:if test="#{! empty form}"> <ui:param name="formId" value="#{empty formId ? form.formId.conc at('Form') : formId}"/> <ui:param name="formIdAcs" value="#{form.formId.concat('Form')}" /> <c:if test="#{not empty home}"> #{form.setHome(home.homeName)} </c:if> <ui:param name="home" value="#{empty home ? form.home : home}"/> <ui:param name="instance" value="#{home.instance}"/> <a:form id="#{formId}" styleClass="edit" enctype="#{isUploadForm ? 'multipart/form-data' : 'appli cation/x-www-form-urlencoded'}"> <rich:panel style="height:#{panelHeight}"> <f:facet name="header">#{empty formTitle ? formId : formTitl e}</f:facet> <c:if test="#{form.tabbed}"> <rich:tabPanel switchType="client"> <wi:repeat value="#{form.rootFields}" va r="rf"> <ui:param name="id" value="#{rf. id}"/> <ui:param name="props" value="#{ rf.properties}" /> <ui:param name="value" value="#{ home.instance[id]}" /> <ui:param name="label" value="#{empty props.label ? rf.label : props.label}"/> <ui:param name="label" value="#{expre ssions.createValueExpression(label).value}" /> <ui:param name="rendered" value="#{empty props.rendered ? rf.rendered : props.rendered}"/> <ui:param name="rendered" value="#{empty rendered ? true : rendered}"/> <ui:param name="required" value="#{empty props.required ? rf.required : props.required}"/>

<ui:param name="disabled" value="#{props .disabled}"/> <ui:param name="reRender" value="#{empty props.reRender ? reRender : props.reRender}"/> <ui:param name="readonly" value="#{empty props.readonly ? false : util.eval(props.readonly)}"/> <ui:param name="maxlength" value="#{props .length}" /> <ui:param name="bypassUpdate" va lue="#{props.bypassUpdate}"/> <ui:include id="#{rf.id}" src="/WE B-INF/xhtml/components/form/#{rf.type}.xhtml" /> </wi:repeat> </rich:tabPanel> </c:if> <c:if test="#{!form.tabbed}"> <wi:repeat value="#{form.fields}" var="f "> <ui:param name="id" value="#{f.i d}"/> <ui:param name="props" value="#{ f.properties}"/> <ui:param name="value" value="#{ home.instance[id]}" /> <ui:param name="disabled" value= "#{props.disabled}"/> <ui:param name="label" value="#{empty props.label ? f.label : props.label}"/> <ui:param name="label" value="#{expre ssions.createValueExpression(label).value}" /> <ui:param name="rendered" value="#{empty props.rendered ? f.rendered : props.rendered}"/> <ui:param name="rendered" value="#{empty rendered ? true : rendered}"/> <ui:param name="required" value="#{empty props.required ? f.required : props.required}"/> <ui:param name="bypassUpdate" value="#{props .bypassUpdate}"/> <ui:param name="reRender" value="#{empty props.reRender ? reRender : props.reRender}"/> <ui:param name="readonly" value="#{empty props.readonly ? false : util.eval(props.readonly)}"/> <ui:param name="maxlength" value="#{props .length}" /> <ui:param name="type" value="#{f.typ

e.startsWith('documentoIdentificacaoHome') ? 'docsIdentificacao/'.concat(util.ev al(f.type)) : f.type }" /> <a:include id="#{id}" viewId="/WEBINF/xhtml/components/form/#{type}.xhtml"> </a:include> </wi:repeat> </c:if> <div style="clear:both"> <s:div rendered="#{canEdit and !empty form.fields and fo rm.hasRequiredField()}"> <img src="#{util.contextPath}#{a4jSkin.imgIconBalao}" /> <span class="required">*</span> Campos Obrigatrios </s:div> </div> </rich:panel> <c:if test="#{canEdit}"> <ui:param name="buttons" value="#{form.buttons.id}#{emp ty modalPanelId ? '' : '_modal'}" /> <ui:include src="/WEB-INF/xhtml/components/form/ buttons/#{buttons}.xhtml"/> </c:if> <s:div rendered="#{empty showMsg ? true : showMsg}"> ----- #{facesContext.maximumSeverity != null} ---<style type="text/css"> .noMaskClass .rich-mpnl-mask-div{ display:none; } </style> <script type="text/javascript"> function timeClose(){ setTimeout("Richfaces.hideModalP anel('msgPanel')", 4000); } /* function ajustaTest() { estilo = '.rich-mpnl-mask-div'; jQuery(estilo).css('display', 'n one'); } */ </script> <a:commandLink value="Open ModalPanel" onclick="Rich faces.showModalPanel('msgPanel')"/> <rich:modalPanel id="msgPanel" height="100" controlsClass=".rich-mpnl-mask-div{displ ay:none;}"

onshow="timeClose();" showWhenRendered="#{facesContext.maximum Severity != null}"> <f:facet name="header">Mensagem</f:facet > <f:facet name="controls"> <h:panelGroup> <h:graphicImage value="/ img/closeMP.gif" onclick="Richfac es.hideModalPanel('msgPanel')"/> </h:panelGroup> </f:facet> <rich:messages id="#{formId}Messages" globalOnly="true" infoClass="formMessage" style="margin: 5px" errorClass="error formMessage" warnStyle="display: none" /> </rich:modalPanel> </s:div> </a:form> <s:fragment rendered="#{!empty focus}"> <script type="text/javascript"> setTimeout("$('#{formId}:#{focus}:#{focus}Decora tion:#{focus}').focus()", 100); </script> </s:fragment> </c:if> </ui:composition>

<rich:messages rendered="#{empty showMsg ? true : showMsg}" id="#{formId}Messages" globalOnly="true" infoClass="formMessage" style="margin: 5px" errorClass="error formMessage" warnStyle="display: none" /> id= showMSG <rich:modalPanel id="msgPanel" height="100" styleClass="noMaskClass" onbeforeshow="removeTabHandlingFromPanel (#{rich:component('msgPanel')})" onshow="timeClose();"

showWhenRendered="#{facesContext.maximum Severity != null}"> <f:facet name="header">Mensagem</f:facet > <f:facet name="controls"> <h:panelGroup> <h:graphicImage value="/ img/closeMP.gif" onclick="Richfac es.hideModalPanel('msgPanel')"/> </h:panelGroup> </f:facet> <rich:messages id="#{formId}Messages" globalOnly="true" infoClass="formMessage" style="margin: 5px" errorClass="error formMessage" warnStyle="display: none" /> </rich:modalPanel>

<f:verbatim> <script> if ($("#{formId}:#{formId}Messages")) { setTimeout("if ($('#{formId}:#{f ormId}Messages')) $('#{formId}:#{formId}Messages').style.display='none'", 10000) ; } if ($("#{formId}:#{formId}MessagesTop")) { setTimeout("if ($('#{formId}:#{f ormId}MessagesTop')) $('#{formId}:#{formId}MessagesTop').style.display='none'", 10000); } </script> </f:verbatim> <s:div id="showMSG" rendered="#{empty showMsg ? true : showMsg}"> <style type="text/css"> .noMaskClass .rich-mpnl-mask-div{ display:none; } </style> <script type="text/javascript"> function timeClose(){ setTimeout("Richfaces.hideModalP anel('msgPanel')", 4000); } function removeTabHandlingFromPanel(modalPan elComponent){ modalPanelComponent.lastOnfocus = functi on(event){};

modalPanelComponent.firstOnfocus = funct ion(event){}; modalPanelComponent.processAllFocusEleme nts = function(event){}; modalPanelComponent.processTabindexes = function(event){}; modalPanelComponent.restoreTabindexes = function(event){}; modalPanelComponent.preventFocus = funct ion(event){}; modalPanelComponent.restoreFocus = funct ion(event){}; } </script> <rich:modalPanel id="msgPanel" height="100" styleClass="noMaskClass" onbeforeshow="removeTabHandlingFromPanel (#{rich:component('msgPanel')})" onshow="();" showWhenRendered="#{util.containsGlobalM essages()}"> <f:facet name="header">Mensagem</f:facet > <f:facet name="controls"> <h:panelGroup> <h:graphicImage value="/ img/closeMP.gif" onclick="Richfac es.hideModalPanel('msgPanel')"/> </h:panelGroup> </f:facet> <rich:messages id="#{formId}Messages" globalOnly="true" infoClass="formMessage" style="margin: 5px" errorClass="error formMessage" warnStyle="display: none" /> </rich:modalPanel> </s:div> Uma freira faz sinal para um txi parar. Ela entra e o taxista no pra de olhar para ela: - Por que voc me olha assim? Ele explica: - Tenho uma coisa para lhe pedir, mas no quero que fique ofendida... Ela responde:

- Meu filho, sou freira h muito tempo e j vi e ouvi de tudo. Com certeza no h nada q ue voc possa me dizer ou pedir que eu ache ofensivo. - Sabe, que eu sempre tive na cabea uma fantasia de ser beijado na boca por uma f reira... A freira: - Bem, vamos ver o que que eu posso fazer por voc: primeiro, voc tem que ser solte iro, Santista e tambm catlico. O taxista fica entusiasmado: - Sim, sou solteiro, Santista desde criancinha e at sou catlico tambm! A freira olha pela janela do txi e diz: - Ento, pare o carro ali na prxima travessa. O carro pra na travessa e a freira satisfaz a velha fantasia do taxista com um be lo beijo na boca. Mas, quando continuam para o destino, o taxista comea a chorar: - Meu filho - diz a freira - Porque que est chorando? - Perdoe-me Irm, mas confesso que menti: sou casado, Corinthiano e sou evanglico. A freira conforta-o: - Deixa pra l. Estou a caminho de uma festa fantasia , me chamo Edmilson e toro pr o So Paulo! /** * Verifica se contm uma mensagem do GlobalMessages. * @return True se contm uma mensagem do GlobalMessages. */ public boolean containsGlobalMessages() { return FacesMessages.instance().getCurrentGlobalMessages().size( ) > 0; }

Criao de um espao dinmico de mensagens em determinadas aes do sistema (Aes das tela formulrio; Ao realizar upload de documento; Ao assinar digitalmente; Ao protocola r o processo). Este espao dinmico ser uma janela localizada no centro da tela, info rmando ao usurio a mensagem referente a cada ao. Ajuste importante Bom dia Elenildes. Peo por gentileza que analise e altere a tarefa (id_tarefa=8461) que esta com a ATIVIDADE de (Ajuste da Usabilidade) sendo que essa tarefa esta sendo cont ado como ponto de funo ou seja essa atividade deveria ser como (Novas demandas) ou alg o do tipo e no como (Ajuste da Usabilidade).

Obrigado pela ateno e tenha um bom dia. Alison Buss de Arruda Infox Tecnologia da Informao Ltda alisson@infox.com.br Gestor de Usabilidade - Matriz Aracaju Tel.: +55 79 3211-5122 Ramal: 222

Foi modificado o arquivo form no diretrio (FI-Core\WEB-INF\xhtml\tags\form.xhtml) com as seguintes modificaes a tag <rich:messages... /> foi encapsulado em uma tag <s:div id= showMSG ... >... </s:div> onde a forma de exibio da mensagem sera em um (mo dalPanel) Foi retirado a tag <f:verbatim> </f:verbatim> e seus derivados, closes #226 Peo por gentiliza integrar o seguinte arquivo em anexo chamado de (integracao.zip ). Obrigado pela ateno. Alison Buss de Arruda Infox Tecnologia da Informao Ltda alisson@infox.com.br Gestor de Usabilidade - Matriz Aracaju Tel.: +55 79 3211-5122 Ramal: 222 Criado um mtodo [public boolean containsGlobalMessages()] na classe Util.java pa ra verificar se existe mensagens em GlobalMessages, caso exista ele retorna true . Corrigido o parmetro (showWhenRendered) da tag <rich:modalPanel da tag <s:div id= showMSG ... >... </s:div>. > que esta dentro

/* $Id: util.js 715 2010-09-15 20:02:34Z luizruiz $ */ function showLoading() { Richfaces.showModalPanel('modalStatus'); } function hideLoading() { Richfaces.hideModalPanel('modalStatus'); } function refreshOpener() { try { opener.refreshPage(); } catch (e) {} } function setTimeoutModalPanel(){ setTimeout("Richfaces.hideModalPanel('modalPanelMessages')", 3000); }

function removeTabHandlingFromPanel(modalPanelComponent){ modalPanelComponent.lastOnfocus = function(event){}; modalPanelComponent.firstOnfocus = function(event){}; modalPanelComponent.processAllFocusElements = function(event){}; modalPanelComponent.processTabindexes = function(event){}; modalPanelComponent.restoreTabindexes = function(event){}; modalPanelComponent.preventFocus = function(event){}; modalPanelComponent.restoreFocus = function(event){}; } if (! j$.fn.clearForm) j$.fn.clearForm = function() { return this.each(function() { var type = this.type, tag = this.tagName.toLowerCase(); if (tag == 'form') return j$(':input',this).clearForm(); if (type == 'text' type == 'password' tag == 'textarea') this.value = ''; else if (type == 'checkbox' type == 'radio') this.checked = false; else if (tag == 'select') this.selectedIndex = 0; }); } function correctPNG(){ var browserType = navigator.appName; if (browserType == "Microsoft Internet Explorer"){ alert("Navegador Internet Explorer"); for(var i = 0; i < document.images.length; i++) { var img = document.images[i]; var imgName = img.src.toUpperCase(); if (imgName.substring(imgName.length-3, imgName.length) == "PNG") { var imgID = (img.id) ? "id='" + img.id + "' " : ""; var imgClass = (img.className) ? "class='" + img.className + "' " : ""; var imgTitle = (img.title) ? "title='" + img.title + "' " : "ti tle='" + img.alt + "' "; var imgStyle = "display:inline-block;" + img.style.cssText; if (img.align == "left") { imgStyle = "float:left;" + imgStyle; } if (img.align == "right") { imgStyle = "float:right;" + imgStyle; } if (img.parentElement.href) { imgStyle = "cursor:hand;" + imgStyle; } var strNewHTML = "<span " + imgID + imgClass + imgTitle + " style=\"" + "width:" + img.width + "px; height:" + i mg.height + "px;" + imgStyle + ";" + "filter:progid:DXImageTransform.Microsoft.AlphaImageLo ader" + "(src=\'" + img.src + "\', sizingMethod='scale');\"></ span>"; img.outerHTML = strNewHTML; i = i - 1; } }

} } window.attachEvent("onload", correctPNG);

.columnDataListToolBar { /*clear:left;*/ width: 40px; padding: 2px 0px 0px 0px; text-align: center; border: solid 1px; border-color: #CCCCCC; } .transpToolBar { width: 100%; text-align: center; opacity:0.30; filter: alpha(opacity=30); } .transpToolBar:hover { width: 100%; text-align: center; opacity:1.0; filter: alpha(opacity=100); } <c:if test="#{(toolBar != 'none') or (headerToolBar != 'none')}"> <rich:column styleClass="columnDataListT oolBar" rendered="#{empty isRightGrid}"> <f:facet name="header"> <c:if test="#{headerTool Bar != 'none'}"> <a:include viewI d="/WEB-INF/xhtml/components/grid/header/tools/#{headerToolBar}.xhtml" /> </c:if> <c:if test="#{headerTool Bar == 'none'}"> &#160; </c:if> </f:facet> <c:if test="#{toolBar != 'none'} "> <div class="transpToolBa r"> <a:include viewI d="/WEB-INF/xhtml/components/grid/tools/#{toolBar}.xhtml" /> </div> </c:if> </rich:column> </c:if> ################################################################################ #############################################

function correctPNG(){ var browserType = navigator.appName; if (browserType == "Microsoft Internet Explorer"){ for(var i = 0; i < document.images.length; i++) { var img = document.images[i]; var imgName = img.src.toUpperCase(); if (imgName.substring(imgName.length-3, imgName.length) == "PNG") { var imgID = (img.id) ? "id='" + img.id + "' " : ""; var imgClass = (img.className) ? "class='" + img.className + "' " : ""; var imgTitle = (img.title) ? "title='" + img.title + "' " : "ti tle='" + img.alt + "' "; var imgStyle = "display:inline-block;" + img.style.cssText; if (img.align == "left") { imgStyle = "float:left;" + imgStyle; } if (img.align == "right") { imgStyle = "float:right;" + imgStyle; } if (img.parentElement.href) { imgStyle = "cursor:hand;" + imgStyle; } var strNewHTML = "<span " + imgID + imgClass + imgTitle + " style=\"" + "width:" + img.width + "px; height:" + i mg.height + "px;" + imgStyle + ";" + "filter:progid:DXImageTransform.Microsoft.AlphaImageLo ader" + "(src=\'" + img.src + "\', sizingMethod='scale');\"></ span>"; img.outerHTML = strNewHTML; i = i - 1; } } } } window.attachEvent("onload", correctPNG);

.columnDataListToolBar { /*clear:left;*/ width: 40px; padding: 2px 0px 0px 0px; text-align: center; border: solid 1px; border-color: #CCCCCC; } .transpToolBar { width: 100%; text-align: center; opacity:0.30; filter: alpha(opacity=30); } .transpToolBar:hover { width: 100%;

text-align: center; opacity:1.0; filter: alpha(opacity=100); }

<c:if test="#{(toolBar != 'none') or (headerToolBar != 'none')}"> <rich:column styleClass="columnDataListT oolBar" rendered="#{empty isRightGrid}"> <f:facet name="header"> <c:if test="#{headerTool Bar != 'none'}"> <a:include viewI d="/WEB-INF/xhtml/components/grid/header/tools/#{headerToolBar}.xhtml" /> </c:if> <c:if test="#{headerTool Bar == 'none'}"> &#160; </c:if> </f:facet> <c:if test="#{toolBar != 'none'} "> <div class="transpToolBa r"> <a:include viewI d="/WEB-INF/xhtml/components/grid/tools/#{toolBar}.xhtml" /> </div> </c:if> </rich:column> </c:if> Tarefa de ajuste: Ajuste dos espao dinmico de mensagens em uma determinadas aes do sistema (Composta nos campos de formulrios do sistema). Que uns dos ajustes ser garantir que o usurio possa ver as mensagem de erro exibidas pelo sistema, e os ajuste de incompatibi lidades entre navegadores.

function closeTimeModalPanel(idModalPanel, milliseconds, fixed){ alert('>'); if(fixed != true fixed == null){ alert('closeTimeModalPanel()'); strTemp = ("Richfaces.hideModalPanel('" + idModalPanel + "')"); setTimeout(strTemp, milliseconds); } } // Corrige as imagens *.png no IE function correctPNG(){ var browserType = navigator.appName; if (browserType == "Microsoft Internet Explorer"){ for(var i = 0; i < document.images.length; i++) { var img = document.images[i]; var imgName = img.src.toUpperCase(); if (imgName.substring(imgName.length-3, imgName.length) == "PNG") { var imgID = (img.id) ? "id='" + img.id + "' " : ""; var imgClass = (img.className) ? "class='" + img.className + "' " : ""; var imgTitle = (img.title) ? "title='" + img.title + "' " : "ti tle='" + img.alt + "' "; var imgStyle = "display:inline-block;" + img.style.cssText; if (img.align == "left") { imgStyle = "float:left;" + imgStyle; } if (img.align == "right") { imgStyle = "float:right;" + imgStyle; } if (img.parentElement.href) { imgStyle = "cursor:hand;" + imgStyle; } var strNewHTML = "<span " + imgID + imgClass + imgTitle + " style=\"" + "width:" + img.width + "px; height:" + i mg.height + "px;" + imgStyle + ";" + "filter:progid:DXImageTransform.Microsoft.AlphaImageLo ader" + "(src=\'" + img.src + "\', sizingMethod='scale');\"></ span>"; img.outerHTML = strNewHTML; i = i - 1; } }

} } window.attachEvent("onload", correctPNG);

/*Retira o sombreamento do ModalPanel .noMaskClass .rich-mpnl-mask-div{ display:none; } */ .columnDataListToolBar { /*clear:left;*/ width: 40px; padding: 2px 0px 0px 0px; text-align: center; border: solid 1px; border-color: #CCCCCC; } .transpToolBar { width: 100%; text-align: center; opacity:0.30; filter: alpha(opacity=30); } .transpToolBar:hover { width: 100%; text-align: center; opacity:1.0; filter: alpha(opacity=100); } img.disabled { opacity: 0.3; filter: alpha(opacity=3); }

<style type="text/css"> .noMaskClass .rich-mpnl-mask-div{ display:none; } </style> <rich:modalPanel id="modalPanelMessages" height="100" rendered="#{empty showMsg ? true : showMsg}" styleClass="noMaskClass" onbeforeshow="removeTabHandlingFromPanel(#{rich: component('modalPanelMessages')})" onshow="closeTimeModalPanel('modalPanelMessages' , '3000', false);" showWhenRendered="#{!empty facesMessages.current GlobalMessages}"> <f:facet name="header">Mensagem</f:facet> <f:facet name="controls">

<h:panelGroup> <h:graphicImage value="/img/clos eMP.gif" onclick="Richfaces.hideM odalPanel('modalPanelMessages')"/> </h:panelGroup> </f:facet> <rich:messages id="#{formId}Messages" globalOnly="true" infoClass="formMessage" style="margin: 5px" errorClass="error formMessage" warnStyle="display: none" /> </rich:modalPanel>

<rich:modalPanel id="modalPanelMessages" height="100" onshow="timeClose();" styleClass="noMaskClass" rendered="#{empty showMsg ? true : showMsg}" showWhenRendered="#{util.containsGlobalMessages( )}" onbeforeshow="removeTabHandlingFromPanel(#{rich: component('modalPanelMessages')})"> <f:facet name="header">Mensagem</f:facet> <f:facet name="controls"> <h:panelGroup> <h:graphicImage value="/img/clos eMP.gif" onclick="Richfaces.hideModalPanel('modalPanelMessages')"/> </h:panelGroup> </f:facet> <rich:messages id="#{formId}Messages" globalOnly="true" infoClass="formMessage" style="margin: 5px" errorClass="error formMessage" warnStyle="display: none" /> </rich:modalPanel>

javax.el.ELException: /WEB-INF/xhtml/tags/form/form.xhtml @132,83 showWhenRender ed="#{util.containsGlobalMessages()}": Method not found: br.com.itx.component.Ut il@1f986f6.containsGlobalMessages() javax.el.ELException: /WEB-INF/xhtml/tags/form/form.xhtml @132,83 showWhenRender ed="#{util.containsGlobalMessages()}": Method not found: br.com.itx.component.Ut il@1f986f6.containsGlobalMessages()

[09:50:50] alisonbuss: ### 1 ############################### TRF5 - PJe (Processo Judicial Eletrnico do TRF 5) Atividades Interna: Pesquisa relacionada a padres de Usabilidade na WEB. ### 2 ############################### TRF5 - PJe (Processo Judicial Eletrnico do TRF 5) Ajuste de Funcionalidade:

Ajuste dos espaos dinmicos de mensagens exibidas no sistema aps submisso dos formulri os. No caso de mensagens de erro, o espao dinmico de mensagens dever ficar aberto a t que o usurio feche (ao do usurio). Se a mensagem for de outro tipo, dever ser exibi a por 3 segundos e fechar de forma automtica. Ajustar as possveis incompatibilidad es com os navegadores Firefox e Internet Explorer. Ajuste #306 #################################### Ajuste de compresso das imagens do PJe sem comprometer a qualidades delas.

/* $Id: jquery.maskedinput-1.2.2.js 522 2010-08-16 13:24:36Z jplacerda $ */##### ################################################################################ ################################################################################ ############### /// <reference path="../../../lib/jquery-1.2.6.js" /> /* Masked Input plugin for jQuery Copyright (c) 2007-2009 Josh Bush (digitalbush.com)

Licensed under the MIT license (http://digitalbush.com/projects/masked-i nput-plugin/#license) Version: 1.2.2 (03/09/2009 22:39:06) */ (function($) { var pasteEventName = ($.browser.msie ? 'paste' : 'input') + ".mask"; var iPhone = (window.orientation != undefined); $.mask = { //Predefined definitions: '9': 'a': '*': } }; character definitions { "[0-9]", "[A-Za-z]", "[A-Za-z0-9]"

$.fn.extend({ //Helper Function for Caret positioning caret: function(begin, end) { if (this.length == 0) return; if (typeof begin == 'number') { end = (typeof end == 'number') ? end : begin; return this.each(function() { if (this.setSelectionRange) { this.focus(); this.setSelectionRange(begin, en d); } else if (this.createTextRange) { var range = this.createTextRange (); range.collapse(true); range.moveEnd('character', end); range.moveStart('character', beg in); range.select(); } }); } else { if (this[0].setSelectionRange) { begin = this[0].selectionStart; end = this[0].selectionEnd; } else if (document.selection && document.select ion.createRange) { var range = document.selection.createRan ge(); begin = 0 - range.duplicate().moveStart( 'character', -100000); end = begin + range.text.length; } return { begin: begin, end: end }; } }, unmask: function() { return this.trigger("unmask"); }, mask: function(mask, settings) { if (!mask && this.length > 0) { var input = $(this[0]); var tests = input.data("tests"); return $.map(input.data("buffer"), function(c, i ) {

return tests[i] ? c : null; }).join(''); } settings = $.extend({ placeholder: "_", completed: null, fixedCharacter: false // Adicionado parmetro para deixar fixo os caracteres do input. }, settings); var var var var var defs = $.mask.definitions; tests = []; partialPosition = mask.length; firstNonMaskPos = null; len = mask.length;

$.each(mask.split(""), function(i, c) { if (c == '?') { len--; partialPosition = i; } else if (defs[c]) { tests.push(new RegExp(defs[c])); if(firstNonMaskPos==null) firstNonMaskPos = tests.length - 1; } else { tests.push(null); } }); return this.each(function() { var input = $(this); var buffer = $.map(mask.split(""), function(c, i ) { if (c != '?') return defs[c] ? settings.placeholder : c }); var ignore = false; //Variab le for ignoring control keys var focusText = input.val(); input.data("buffer", buffer).data("tests", tests ); function seekNext(pos) { while (++pos <= len && !tests[pos]); return pos; }; function shiftL(pos) { while (!tests[pos] && --pos >= 0); for (var i = pos; i < len; i++) { if (tests[i]) { buffer[i] = settings.pla ceholder; var j = seekNext(i); if (j < len && tests[i]. test(buffer[j])) { buffer[i] = buff er[j]; } else break; }

} writeBuffer(); input.caret(Math.max(firstNonMaskPos, po s)); }; function shiftR(pos) { for (var i = pos, c = settings.placehold er; i < len; i++) { if (tests[i]) { var j = seekNext(i); var t = buffer[i]; buffer[i] = c; if (j < len && tests[j]. test(t)) c = t; else break; } } }; function keydownEvent(e) { var pos = $(this).caret(); var k = e.keyCode; ignore = (k < 16 (k > 16 && k < 32) (k > 32 && k < 41)); //delete selection before proceeding if ((pos.begin - pos.end) != 0 && (!igno re k == 8 k == 46)) clearBuffer(pos.begin, pos.end); //backspace, delete, and escape get spec ial treatment if (k == 8 127)) {//backspace/delete shiftL(pos.begin + (k == 46 ? 0 : -1)); return false; } else if (k == 27) {//escape input.val(focusText); input.caret(0, checkVal()); return false; } }; function keypressEvent(e) { if (ignore) { ignore = false; //Fixes Mac FF bug on backspace return (e.keyCode == 8) ? false : null; } e = e window.event; var k = e.charCode e.keyCode ch; var pos = $(this).caret(); if (e.ctrlKey e.altKey e.metaKey) e.whi k == 46 (iPhone && k ==

{//Ignore return true; } else if ((k >= 32 && k <= 125) 186) {//typeable characters var p = seekNext(pos.begin - 1); if (p < len) { var c = String.fromCharC ode(k); if (tests[p].test(c)) { shiftR(p); buffer[p] = c; writeBuffer(); var next = seekN ext(p); $(this).caret(ne xt); if (settings.com pleted && next == len) settings .completed.call(input); } } } return false; }; function clearBuffer(start, end) { for (var i = start; i < end && i < len; i++) { if (tests[i]) buffer[i] = settings.pla ceholder; } }; function writeBuffer() { return input.val(buffer .join('')).val(); }; function checkVal(allow) { //try to place characters where they bel ong var test = input.val(); var lastMatch = -1; for (var i = 0, pos = 0; i < len; i++) { if (tests[i]) { buffer[i] = settings.pla ceholder; while (pos++ < test.leng th) { var c = test.cha rAt(pos - 1); if (tests[i].tes t(c)) { buffer[i ] = c; lastMatc h = i; break; } else if(settin gs.fixedCharacter) { k >

/* Adici onado o "else if" para possibilitar ao usurio, a colocar o Ctrl+ v de acordo com o parmetro (settings.fixedCharacter) igual a TRUE. */ i++; } } if (pos > test.length) break; } else if (buffer[i] == test[pos ] && i != partialPosition) { pos++; lastMatch = i; } } if (!allow && lastMatch + 1 < partialPos ition) { input.val(""); clearBuffer(0, len); } else if (allow lastMatch + 1 >= par tialPosition) { writeBuffer(); if (!allow) input.val(input.val( ).substring(0, lastMatch + 1)); } return (partialPosition ? i : firstNonMa skPos); }; if (!input.attr("readonly")) { input .one("unmask", function() { input .unbind(".mask") .removeData("buffer") .removeData("tests"); }) .bind("focus.mask", function() { /* SCRIPT ORIGINAL focusText = input.val(); var pos = checkVal(); writeBuffer(); setTimeout(function() { if (pos == mask. length) input.ca ret(0, pos); else input.ca ret(pos); }, 0); */ if(settings.fixedCharacter) { writeBuffer(); input.caret(0); } else { focusText = input.val(); var pos = checkVal();

writeBuffer(); setTimeout(function() { if (pos == mask. length) input.ca ret(0, pos); else input.ca ret(pos); }, 0); } }) .bind("blur.mask", function() { /* SCRIPT ORIGINAL checkVal(); if (input.val() != focus Text) input.change(); */ if(!settings.fixedCharacter) { checkVal(); if (input.val() != focus Text){ input.change(); } } }) .bind("keydown.mask", keydownEvent) .bind("keypress.mask", keypressEvent) .bind(pasteEventName, function() { setTimeout(function() { input.ca ret(checkVal(true)); }, 0); }); } /* SCRIPT ORIGINAL checkVal(); //Perform initial check for existing values */ if(settings.fixedCharacter){ checkVal(true); } else { checkVal(); } }); } }); })(jQuery);

Ajustado o campo [Processo] da pagina Consulta Publica no endereo (http://localho st:8080/pje2_dev/ConsultaPublica/listView.seam) e as modificaes foram a criao de uma mascara que se adapta-se ao numero do processo. Os arquivos envolvido nessa mod ificaes foi: /FI-Core/js/jquery.maskedinput-1.2.2.js /PJE2/WEB-INF/src/action/META-INF/gridQuery/consultaPublicaGrid.component.xml

/PJE2/WEB-INF/xhtml/components/form/buttons/consultaPublica.xhtml /PJE2/WEB-INF/xhtml/components/form/jurisdicao.xhtml /PJE2/WEB-INF/src/action/br/com/infox/cliente/home/ConsultaProcessoHome.java /PJE2/WEB-INF/src/action/META-INF/form/consultaPublicaForm.component.xml Na classe ConsultaProcessoHome.java foi adicionados alguns mtodos [disseminarNume roProcesso, searchConsultaPublica] e tambm um atributo auxiliar chamado de [nume roProcesso] j no arquivo jquery.maskedinput-1.2.2.js foi adicionado um parmetro de apoia a mascara chamado de [fixedCharacter] que passando como true ele deixa a mascara fixa no input.

Seam - Contextual Components - A Framework for Enterprise Java V2.2.1.CR1

Ajustado o campo [Classe Judicial] aumentando a largura da caixa de sugesto na pa gina de Consulta Publica, com isso os arquivos modificado foram: FI-Core\WEB-INF\xhtml\tags\form\fields\suggest.xhtml Foi adicionado uma parmetro chamado [widthBoxSuggest] para aumentar a largura da caixa de sugesto. PJE2\WEB-INF\src\action\META-INF\form\consultaPublicaForm.component.xml Foi adicionado um parametro [widthBoxSuggest] no VALUE classeJudicial para aumen tar a caixa de sugesto. Ajustar o campo [Classe Judicial] aumentado a caixa de sugesto automaticamente de acordo com a largura dos caracteres sugeridos na caixa, assim possibilitando ao usurio ter uma melhor visualizao das sugestes da caixa na pagina de Consulta Public a.

Ajustar o campo [Classe Judicial] aumentado a caixa de sugesto automaticamente de acordo com a largura dos caracteres sugeridos na caixa, assim possibilitando ao usurio ter uma melhor visualizao das sugestes da caixa na pagina de Consulta Public a. 13 value=classeJudicial, parmetro (widthBoxSuggest: 800).

<?xml version="1.0" encoding="ISO-8859-1"?> <!-- $Id: horaPeriodo.xhtml 612 2010-08-25 14:24:28Z jplacerda $ --> <!-IBPM - Ferramenta de produtividade Java Copyright (c) 1986-2009 Infox Tecnologia da Informao Ltda. Este programa software livre; voc pode redistribu-lo e/ou modific-lo sob os termos da GNU GENERAL PUBLIC LICENSE (GPL) conforme publicada p

ela Free Software Foundation; verso 2 da Licena. Este programa distribudo na expectativa de que seja til, porm, SEM NENHUMA GARANTIA; nem mesmo a garantia implcita de COMERCIABILIDADE OU ADEQUAO A UMA FINALIDADE ESPECFICA. Consulte a GNU GPL para mais detalhes. Voc deve ter recebido uma cpia da GNU GPL junto com este programa; se no, veja em http://www.gnu.org/licenses/ --> <ui:composition xmlns="http://www.w3.org/1999/xhtml" xmlns:s="http://jboss.com/products/seam/taglib" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html" xmlns:wi="http://www.itx.com.br/jsf" xmlns:a="http://richfaces.org/a4j" xmlns:rich="http://richfaces.org/rich"> <ui:param name="de" value="#{empty props.de ? de : props.de}" /> <ui:param name="ate" value="#{empty props.ate ? ate : props.ate} " /> <ui:param name="template" value="#{wi:get(template, '/WEB-INF/xh tml/components/templates/edit.xhtml')}"/> <s:decorate id="#{id}Decoration" template="#{template}" rendered="#{wi:get(rendered, true)}"> <ui:define name="label">#{label}</ui:define> <h:outputText value="De: " /> <h:inputText id="#{id}De" size="5" value="#{home.instance[de]}" required="#{required}" styleClass="#{readonly ? 'readOnly' : styleClass } inputText" style="width: 40px !important;"> <wi:mask id="#{id}De" mask="99:99" /> <f:converter converterId="horaConverter"/> </h:inputText> <h:outputText value=" At: " /> <h:inputText id="#{id}Ate" size="5" value="#{home.instance[ate]}" required="#{required}" showRequired="false" styleClass="#{readonly ? 'readOnly' : styleClass } inputText" style="width: 40px !important;"> <wi:mask id="#{id}Ate" mask="99:99" /> <f:converter converterId="horaConverter"/> </h:inputText>

</s:decorate> </ui:composition>

Boa tarde pessoal. Bom anteriormente eu tinha tirado frias em Julho de 2010 de 20 dias e fi cou restando 10 dias, com esse 10 dias deixei para uma melhor poca tanto pra min como para info x, como eu tinha falado com Breno nos meados da quarta semana de Novembro de 2010 sobre a assunt o dos 10 dias ele me auxiliou a falar com Nuno, com isso eu j conversei com Nuno sobre o assunto e ele me autorizou sem problema tirar o restante das frias que ira ocorrer no dia 25/12/2010 at dia 03/01/ 2011, retornando ao trabalho no dia 04/01/2011. A respeito desse assunto deixo formalizado o pedido do restante da frias e agradeo ateno de todos vocs. Restante das frias

Correo do posicionamento das mensagens de erro dos campos obrigatrios nos f ormulrios. Os arquivos modificado foi (FI-Core\styleSkinInfox\padrao.css) que fo i adicionado um classe chamada de .errorFields{} e o (FI-Core\WEB-INF\xhtml\comp onents\templates\edit.xhtml) que na tag <s:message...> foi adicionado a classe d o CSS no parmetro (styleClass="errorFields errors"), refs #642 PADRAO .errorFields { margin-left: 20px; margin-top: 5px; float: left; padding: 2px; border: 1px solid red; background-color: lightYellow; }

EDIT <s:message styleClass="errorFields errors" style="position: absolute; ma rgin-top: -5px"/>

<s:div id="gridDiv" style="width:50%; margin-top:45px;"> #{sessaoHome.sala != null} -- #{currentTime} <s:div rendered="#{sessaoHome.sala != null}"> <rich:dataTable id="idOrgaoJulgadorColegiadoSalaHorarioGrid" value="#{orgaoJulgadorColegiadoSalaHorarioList.l ist(8)}" var="row" rows="8">

<f:facet name="header"> <h:outputText value="#{messages['orgaoJulgad orColegiadoSalaHorario.titleGrid']}" /> </f:facet> <rich:column> <h:selectBooleanCheckbox value="#{row.selecionado}"> <wi:ajaxSupport action="#{sessaoHome.marcarSala(row)}"/> </h:selectBooleanCheckbo x> </rich:column> <rich:column> <f:facet name="header"> <h:outputText value="De" /> </f:facet> <h:outputText value="#{row.horaInicial}" id= "make"> <s:convertDateTime pattern="#{wi:get(pat tern,'kk:mm')}"/> </h:outputText> </rich:column> <rich:column> <f:facet name="header"> <h:outputText value="At" /> </f:facet> <h:outputText value="#{row.horaFinal}" id="m odel"> <s:convertDateTime pattern="#{wi:get(pat tern,'kk:mm')}"/> </h:outputText> </rich:column> <rich:column> <f:facet name="header"> <h:outputText value="Dia" /> </f:facet> <h:outputText value="#{row.diaSemana}" id="p rice"/> </rich:column> <f:facet name="footer"> <rich:datascroller renderIfSinglePage="false " maxPages="5" /> </f:facet> </rich:dataTable> </s:div> <br /> </s:div>

styleClass="noMaskClass"

#{!facesMessages.currentGlobalMessages.isEmpty()} -<rich:messages id="#{formId}Message" globalOnly="true" infoClass="formMessage" style="margin: 5px" errorClass="error formMessage" warnStyle="display: none"/> <a:outputPanel ajaxRendered="true"> <rich:modalPanel id="msgModalPanel" height="100" styleClass="noMaskClass" rendered="#{empty showMsg ? true : showMsg}" showWhenRendered="#{!facesMessages.currentGlobalMessages .isEmpty()}" onshow="setTimeoutModalPanel('msgModalPanel', '3000');" onbeforeshow="removeTabHandlingFromPanel(#{rich:componen t('msgModalPanel')})"> <f:facet name="header">Mensagem</f:facet> <f:facet name="controls"> <span style="cursor:pointer; font-family: Verdan a, Arial; padding-right: 5px" onclick="Richfaces.hideModalPanel('msgModalPan el')">X</span> </f:facet> <rich:messages id="#{formId}Messages" globalOnly="true" infoClass="formMessage" style="margin: 5px" errorClass="error formMessage" warnStyle="display: none"/> </rich:modalPanel> </a:outputPanel>

Ajuste corrigido, Mudando a composio de tags do WI para richFaces, compost o na DIV (gridHorarioSessao) possibilitando o funcionamento correto no navegador IE8, refs #687 Ajuste corrigido, na pagina (Cadastros Auxiliares / Advogado / Confirmar Cadastr o) esta apontando para o template (selectTemplate.xhtml), que contem uma tag chamada de <wi:massag es> que foi retirada porque estava dando duplicao de menssagens e assim ocasionand o um erro.

Erro na UC026 Na aba de "Pessoa Advogado" ao atualizar ou remover alguma informao a caixa de con firmao no esta sumindo e nem fecha. O mesmo acontece nas abas "Meio de contato" e " Documentos do Advogado". Login: vbs Ao:> Cadastros Auxiliares / Advogado / Confirmar Cadastro Verso do sistema:> H4.0-18 Pequeno Ajuste #738

<?xml version="1.0" encoding="ISO-8859-1"?> <!-- $Id: form.xhtml 820 2010-10-04 17:48:59Z jplacerda $ --> <!-IBPM - Ferramenta de produtividade Java Copyright (c) 1986-2009 Infox Tecnologia da Informao Ltda. Este programa software livre; voc pode redistribu-lo e/ou modific-lo sob os termos da GNU GENERAL PUBLIC LICENSE (GPL) conforme publicada pela Free Software Foundation; verso 2 da Licena. Este programa distribudo na expectativa de que seja til, porm, SEM NENHUMA GARANTIA; nem mesmo a garantia implcita de COMERCIABILIDADE OU ADEQUAO A UMA FINALIDADE ESPECFICA. Consulte a GNU GPL para mais detalhes. Voc deve ter recebido uma cpia da GNU GPL junto com este programa; se no, veja em http://www.gnu.org/licenses/ --> <ui:composition xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html" xmlns:a="http://richfaces.org/a4j" xmlns:rich="http://richfaces.org/rich"> <script type="text/javascript"> function removeTabHandlingFromPanel(modalPanelComponent) { modalPanelComponent.lastOnfocus = function(event){}; modalPanelComponent.firstOnfocus = function(event){}; modalPanelComponent.processAllFocusElements = function(event ){}; modalPanelComponent.processTabindexes = function(event){}; modalPanelComponent.restoreTabindexes = function(event){}; modalPanelComponent.preventFocus = function(event){}; modalPanelComponent.restoreFocus = function(event){}; } function setTimeoutModalPanel(idModalPanel, time) {

if (jQuery('dt[class=error formMessage]').html() == null ) setTimeout("Richfaces.hideModalPanel('" + idModa lPanel + "')", time); } </script> <style type="text/css"> .noMaskClass .rich-mpnl-mask-div { display:none; } </style> <a:outputPanel ajaxRendered="true"> <rich:modalPanel id="msgModalPanel" height="100" styleClass="noMaskClass" rendered="#{empty showMsg ? true : showMsg}" showWhenRendered="#{!facesMessages.currentGlobalMessages .isEmpty()}" onshow="setTimeoutModalPanel('msgModalPanel', '3000');" onbeforeshow="removeTabHandlingFromPanel(#{rich:componen t('msgModalPanel')})"> <f:facet name="header">Mensagem</f:facet> <f:facet name="controls"> <span style="cursor:pointer; font-family: Verdan a, Arial; padding-right: 5px" onclick="Richfaces.hideModalPanel('msgModalPan el')">X</span> </f:facet> <rich:messages id="#{formId}Messages" globalOnly="true" infoClass="formMessage" style="margin: 5px" errorClass="error formMessage" warnStyle="display: none"/> </rich:modalPanel> </a:outputPanel> </ui:composition>

onclick="showLoading();" oncomplete="hideLoading();#{oncomplete}"

O bug de numero #698 que est em andamento, no consegui encontrar uma soluo, pedi aju da ao pessoal do PDI e no encontramos uma soluo. O componente de mensagens modalPan el est funcionando corretamente tanto no IE quanto no Firefox em praticamente tod as as pginas, menos nesta pgina por alguma razo desconhecida, de onde est originando o erro da integrao do CNJ. Esta pgina no est seguindo o padro de desenvolvimento d nfox, como tambm no esta utilizando os componentes WI de forma adequada. Para solu

cionar este problema, proponho que a pgina seja refeita seguindo o padro de desenv olvimento e utilizando os componentes WI da forma correta e sempre que possvel. Outros Bugs (#715, #577) da integrao originada do CNJ tambm no esto seguindo os padre exigidos pelas infox. Boa tarde pessoal.

O bug de numero #698 que est em andamento, no consegui encontrar uma soluo, pedi aju da ao pessoal do PDI e no encontramos uma soluo. O componente de mensagens modalPan el est funcionando corretamente tanto no IE quanto no Firefox em praticamente tod as as pginas, menos nesta pgina por alguma razo desconhecida, de onde est originando o erro da integrao do CNJ. Esta pgina no est seguindo o padro de desenvolvimento d nfox, como tambm no esta utilizando os componentes WI de forma adequada. Para solu cionar este problema, proponho que a pgina seja refeita seguindo o padro de desenv olvimento e utilizando os componentes WI da forma correta e sempre que possvel. Outros bugs (#715, #577) da integrao originada do CNJ tambm no esto seguindo os padre exigidos pelas infox. Alison Buss de Arruda Infox Tecnologia da Informao Ltda alisson@infox.com.br Desenvolvimento web / Usabilidade - Matriz Aracaju Tel.: +55 79 3211-5122 Ramal: 215 element = document.getElementById("modalMessage"); if(element == null) { alert('function modalMessage() > a porra ta nula caralho!!'); alert('function modalMessage() > ' + element); } else { element.style.visibility = (element.style.visibi lity == "visible") ? "hidden" : "visible"; alert('function modalMessage() > element.style.v isibility' + element); }

<?xml version="1.0" encoding="ISO-8859-1"?> <!-- $Id: form.xhtml 820 2010-10-04 17:48:59Z jplacerda $ --> <!-IBPM - Ferramenta de produtividade Java Copyright (c) 1986-2009 Infox Tecnologia da Informao Ltda. Este programa software livre; voc pode redistribu-lo e/ou modific-lo sob os termos da GNU GENERAL PUBLIC LICENSE (GPL) conforme publicada pela Free Software Foundation; verso 2 da Licena. Este programa distribudo na expectativa de que seja til, porm, SEM NENHUMA GARANTIA; nem mesmo a garantia implcita de COMERCIABILIDADE OU ADEQUAO A UMA FINALIDADE ESPECFICA. Consulte a GNU GPL para mais detalhes. Voc deve ter recebido uma cpia da GNU GPL junto com este programa; se no, veja em http://www.gnu.org/licenses/ --> <ui:composition xmlns="http://www.w3.org/1999/xhtml"

xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html" xmlns:a="http://richfaces.org/a4j" xmlns:rich="http://richfaces.org/rich"> <script type="text/javascript"> function removeTabHandlingFromPanel(modalPanelComponent) { modalPanelComponent.lastOnfocus = function(event){}; modalPanelComponent.firstOnfocus = function(event){}; modalPanelComponent.processAllFocusElements = function(event ){}; modalPanelComponent.processTabindexes = function(event){}; modalPanelComponent.restoreTabindexes = function(event){}; modalPanelComponent.preventFocus = function(event){}; modalPanelComponent.restoreFocus = function(event){}; } function setTimeoutModalPanel(idModalPanel, time) { if (jQuery('dt[class=error formMessage]').html() == null ) setTimeout("Richfaces.hideModalPanel('" + idModa lPanel + "')", time); } </script> <style type="text/css"> .noMaskClass .rich-mpnl-mask-div { display:none; } </style> <a:outputPanel ajaxRendered="true"> <rich:modalPanel id="msgModalPanel" height="100" styleClass="noMaskClass" rendered="#{empty showMsg ? true : showMsg}" showWhenRendered="#{!facesMessages.currentGlobalMessages .isEmpty()}" onshow="setTimeoutModalPanel('msgModalPanel', '3000');" onbeforeshow="removeTabHandlingFromPanel(#{rich:componen t('msgModalPanel')})"> <f:facet name="header">Mensagem</f:facet> <f:facet name="controls"> <span style="cursor:pointer; font-family: Verdan a, Arial; padding-right: 5px" onclick="Richfaces.hideModalPanel('msgModalPan el')">X</span> </f:facet> <rich:messages id="#{formId}Messages" globalOnly="true" infoClass="formMessage" style="margin: 5px" errorClass="error formMessage" warnStyle="display: none"/> </rich:modalPanel>

</a:outputPanel> </ui:composition>

<!-- Original <h:commandButton id="saveH" eventsQueue="editQueue" action="#{home.persist()}" value="Incluir" styleClass="dr-tbpnl-tb-inact" rendered="#{!home.managed and !isUploadForm and persistSemNewInstance}"> </h:commandButton> -->

<?xml version="1.0" encoding="ISO-8859-1"?> <!-- $Id: form.xhtml 820 2010-10-04 17:48:59Z jplacerda $ --> <!-IBPM - Ferramenta de produtividade Java Copyright (c) 1986-2009 Infox Tecnologia da Informao Ltda. Este programa software livre; voc pode redistribu-lo e/ou modific-lo sob os termos da GNU GENERAL PUBLIC LICENSE (GPL) conforme publicada pela Free Software Foundation; verso 2 da Licena. Este programa distribudo na expectativa de que seja til, porm, SEM NENHUMA GARANTIA; nem mesmo a garantia implcita de COMERCIABILIDADE OU ADEQUAO A UMA FINALIDADE ESPECFICA. Consulte a GNU GPL para mais detalhes. Voc deve ter recebido uma cpia da GNU GPL junto com este programa; se no, veja em http://www.gnu.org/licenses/ --> <ui:composition xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html" xmlns:a="http://richfaces.org/a4j" xmlns:s="http://jboss.com/products/seam/taglib" xmlns:rich="http://richfaces.org/rich"> <script type="text/javascript"> function modalMessage() { element = document.getElementById("modalMessage"); element.style.visibility = (element.style.visibility == "visible") ? "hidden" : "visible"; }

function actionModalMessage() { var globalMessages = '#{!facesMessages.currentGlobalMess ages.isEmpty()}'; if(globalMessages == 'true') { alert('if(globalMessages == true)');//########## ############ if(jQuery('dt[class=error formMessage]').html() == null) { alert("if (jQuery('dt[class=error formMe ssage]').html() == null)");//###################### modalMessage(); //setTimeout("modalMessage()", 3000); } else { alert("else");//###################### modalMessage(); } } } actionModalMessage(); </script> <style type="text/css"> <!-#modalMessage { visibility:hidden; position:fixed; background-color: white; margin-top: -13%; margin-left: 30%; width:300px; height:100px; border:1px solid #BCC1BD; padding: 2px; overflow:auto; z-index:1000; } #modalMessage #title { background-color:#DBF4DE; border:1px solid #C5EDCA; height: 18px; } --> </style> <rich:messages id="#{formId}Messages" globalOnly="true" infoClass="formMessage" style="margin: 5px" errorClass="error formMessage" warnStyle="display: none"/> <div id="modalMessage"> <div id="title"> Mensagem <h:graphicImage style="padding-left: 225px; cursor: pointer;"

value="/img/closeMP.gif" onclick="modalMessage()"/> </div> <rich:messages id="#{formId}Message" globalOnly="true" infoClass="formMessage" style="margin: 5px" errorClass="error formMessage" warnStyle="display: none" /> </div> </ui:composition>

<?xml version="1.0" encoding="ISO-8859-1"?> <!-- $Id: form.xhtml 820 2010-10-04 17:48:59Z jplacerda $ --> <!-IBPM - Ferramenta de produtividade Java Copyright (c) 1986-2009 Infox Tecnologia da Informao Ltda. Este programa software livre; voc pode redistribu-lo e/ou modific-lo sob os termos da GNU GENERAL PUBLIC LICENSE (GPL) conforme publicada pela Free Software Foundation; verso 2 da Licena. Este programa distribudo na expectativa de que seja til, porm, SEM NENHUMA GARANTIA; nem mesmo a garantia implcita de COMERCIABILIDADE OU ADEQUAO A UMA FINALIDADE ESPECFICA. Consulte a GNU GPL para mais detalhes. Voc deve ter recebido uma cpia da GNU GPL junto com este programa; se no, veja em http://www.gnu.org/licenses/ --> <ui:composition xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html" xmlns:a="http://richfaces.org/a4j" xmlns:s="http://jboss.com/products/seam/taglib" xmlns:rich="http://richfaces.org/rich"> <script type="text/javascript"> function modalMessage() { alert("modalMessage()"); element = document.getElementById("modalMessage"); if(element == null) { alert('function modalMessage() > a porra ta nula caralho!! ' + element); } else { alert('function modalMessage() > element.style.v isibility' + element); element.style.visibility = (element.style.visibi lity == "visible") ? "hidden" : "visible"; }

} function actionModalMessage() { var globalMessages = '#{!facesMessages.currentGlobalMess ages.isEmpty()}'; alert("globalMessages: " + globalMessages); if(globalMessages == 'true') { alert('if(globalMessages == true)');//########## ############ if(jQuery('dt[class=error formMessage]').html() == null) { alert("if (jQuery('dt[class=error formMe ssage]').html() == null)");//###################### modalMessage(); //setTimeout("modalMessage()", 3000); } else { alert("else");//###################### modalMessage(); } } } actionModalMessage(); </script> <style type="text/css"> <!-#modalMessage { visibility:hidden; position:fixed; background-color: white; margin-top: -10%; margin-left: 33%; width:300px; height:100px; border:1px solid #BCC1BD; padding: 2px; overflow:auto; z-index:1000; } #modalMessage #title { background-color:#{a4jSkin.headerBackgroundColor }; border:1px solid #C5EDCA; height: 18px; color: #{a4jSkin.headerTextColor}; font-weight: bold; } --> </style> <rich:messages id="#{formId}Messages" globalOnly="true" infoClass="formMessage" style="margin: 5px" errorClass="error formMessage" warnStyle="display: none"/> <div id="modalMessage"> <div id="title">

Mensagem <h:graphicImage style="padding-left: 218px; cursor: pointer;" value="/img/closeMP.gif" onclick="modalMessage();"/> </div> <rich:messages id="#{formId}Message" globalOnly="true" infoClass="formMessage" style="margin: 5px" errorClass="error formMessage" warnStyle="display: none" /> </div> </ui:composition>

function modalMessage() { alert("entro no function -> modalMessage()"); element = document.getElementById("modalMessage"); if(element == null) { alert('function modalMessage() > a porra ta nula caralho!! ' + element); } else { alert('function modalMessage() > element.style.v isibility' + element); element.style.visibility = (element.style.visibi lity == "visible") ? "hidden" : "visible"; } } window.onload = function() { var globalMessages = '#{!facesMessages.currentGlobalMess ages.isEmpty()}'; alert("[A] globalMessages: " + globalMessages); if(globalMessages == 'true') { alert('[A] if(globalMessages == true)');//###### ################ if(jQuery('dt[class=error formMessage]').html() == null) { alert("[A] if (jQuery('dt[class=error fo rmMessage]').html() == null)");//###################### modalMessage(); //setTimeout("modalMessage()", 3000); } else { alert("[A] else");//#################### ## modalMessage(); } } } execute = function() { var globalMessages = '#{!facesMessages.currentGlobalMess ages.isEmpty()}'; alert("[B] globalMessages: " + globalMessages); if(globalMessages == 'true') {

alert('[B] if(globalMessages == true)');//###### ################ if(jQuery('dt[class=error formMessage]').html() == null) { alert("[B] if (jQuery('dt[class=error fo rmMessage]').html() == null)");//###################### modalMessage(); //setTimeout("modalMessage()", 3000); } else { alert("[B] else");//#################### ## modalMessage(); } } } execute();

function modalMessage() { alert("entro no function -> modalMessage()"); element = document.getElementById("modalMessage"); if(element == null) { alert('function modalMessage() > a porra ta nula caralho!! ' + element); } else { alert('function modalMessage() > element.style.v isibility' + element); element.style.visibility = (element.style.visibi lity == "visible") ? "hidden" : "visible"; } } function actionModalMessage() { var globalMessages = '#{!facesMessages.currentGlobalMess ages.isEmpty()}'; alert("globalMessages: " + globalMessages); if(globalMessages == 'true') { alert('if(globalMessages == true)');//########## ############ if(jQuery('dt[class=error formMessage]').html() == null) { alert("if (jQuery('dt[class=error formMe ssage]').html() == null)");//###################### modalMessage(); //setTimeout("modalMessage()", 3000); } else { alert("else");//###################### modalMessage(); } } } actionModalMessage();

function dialogWindow() { element = document.getElementById("dialogMessage"); element.style.visibility = (element.style.visibility == "visible") ? "hidden" : "visible"; jQuery("dialogMessage").draggable(); } function actionDialogMessage() { var globalMessages = '#{!facesMessages.currentGlobalMess ages.isEmpty()}'; if(globalMessages == 'true') { if(jQuery('dt[class=error formMessage]').html() == null) { dialogWindow(); setTimeout("dialogWindow()", 3000); } else { dialogWindow(); } } } actionDialogMessage(); window.onload = actionDialogMessage(); function dialogMessage() { element = document.getElementById("dialogMessage"); element.style.visibility = (element.style.visibility == "visible") ? "hidden" : "visible"; } function actionDialogMessage() { var globalMessages = '#{!facesMessages.currentGlobalMess ages.isEmpty()}'; if(globalMessages == 'true') { if(jQuery('dt[class=error formMessage]').html() == null) { dialogWindow(); setTimeout("dialogMessage()", 3000); } else { dialogMessage(); } } } window.onload = actionDialogMessage(); //actionDialogMessage();

function dialogMessage() { element = document.getElementById("dialogMessage"); element.style.visibility = (element.style.visibility == "visible") ? "hidden" : "visible"; } function actionDialogMessage() { var globalMessages = '#{!facesMessages.currentGlobalMess ages.isEmpty()}'; if(globalMessages == 'true') { if(jQuery('dt[class=error formMessage]').html() == null) { dialogMessage(); setTimeout("dialogMessage()", 3000);

} else { dialogMessage(); } } } window.onload = function() { actionDialogMessage(); } actionDialogMessage();

function modalMessage() { alert("entro no function -> modalMessage()"); element = document.getElementById("modalMessage"); if(element == null) { alert('function modalMessage() > a porra ta nula caralho!! ' + element); } else { alert('function modalMessage() > element.style.v isibility' + element); element.style.visibility = (element.style.visibi lity == "visible") ? "hidden" : "visible"; } } window.onload = function() { var globalMessages = '#{!facesMessages.currentGlobalMess ages.isEmpty()}'; alert("[A] globalMessages: " + globalMessages); if(globalMessages == 'true') { alert('[A] if(globalMessages == true)');//###### ################ if(jQuery('dt[class=error formMessage]').html() == null) { alert("[A] if (jQuery('dt[class=error fo rmMessage]').html() == null)");//###################### modalMessage(); //setTimeout("modalMessage()", 3000); } else { alert("[A] else");//#################### ## modalMessage(); } } } execute = function() { var globalMessages = '#{!facesMessages.currentGlobalMess ages.isEmpty()}'; alert("[B] globalMessages: " + globalMessages); if(globalMessages == 'true') { alert('[B] if(globalMessages == true)');//###### ################ if(jQuery('dt[class=error formMessage]').html() == null) { alert("[B] if (jQuery('dt[class=error fo rmMessage]').html() == null)");//######################

modalMessage(); //setTimeout("modalMessage()", 3000); } else { alert("[B] else");//#################### ## modalMessage(); } } } execute();

<?xml version="1.0" encoding="ISO-8859-1"?> <!-- $Id: form.xhtml 820 2010-10-04 17:48:59Z jplacerda $ --> <!-IBPM - Ferramenta de produtividade Java Copyright (c) 1986-2009 Infox Tecnologia da Informao Ltda. Este programa software livre; voc pode redistribu-lo e/ou modific-lo sob os termos da GNU GENERAL PUBLIC LICENSE (GPL) conforme publicada pela Free Software Foundation; verso 2 da Licena. Este programa distribudo na expectativa de que seja til, porm, SEM NENHUMA GARANTIA; nem mesmo a garantia implcita de COMERCIABILIDADE OU ADEQUAO A UMA FINALIDADE ESPECFICA. Consulte a GNU GPL para mais detalhes. Voc deve ter recebido uma cpia da GNU GPL junto com este programa; se no, veja em http://www.gnu.org/licenses/ --> <ui:composition xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html" xmlns:a="http://richfaces.org/a4j" xmlns:s="http://jboss.com/products/seam/taglib" xmlns:rich="http://richfaces.org/rich"> <script type="text/javascript"> function dialogMessage() { alert("dialogMessage()"); element = document.getElementById("dialogMessage");

element.style.visibility = (element.style.visibility == "visible") ? "hidden" : "visible"; } function actionDialogMessage() { alert("actionDialogMessage()"); var globalMessages = '#{!facesMessages.currentGlobalMess ages.isEmpty()}'; if(globalMessages == 'true') { if(jQuery('dt[class=error formMessage]').html() == null) { dialogMessage(); setTimeout("dialogMessage()", 3000); } else { dialogMessage(); } } } window.onload = function() { alert("window.onload"); actionDialogMessage(); } actionDialogMessage(); </script> <style type="text/css"> <!-#dialogMessage { visibility:hidden; position:fixed; background-color: white; margin-top: -10%; margin-left: 33%; width:300px; height:100px; border:1px solid #BCC1BD; padding:2px; overflow:auto; z-index:1000; } #dialogMessage #title { background-color:#{a4jSkin.headerBackgroundColor }; border:1px solid #C5EDCA; height: 18px; color: #{a4jSkin.headerTextColor}; font-weight: bold; } --> </style> <rich:messages id="#{formId}Messages" globalOnly="true" infoClass="formMessage" style="margin: 5px" errorClass="error formMessage" warnStyle="display: none"/> <div id="dialogMessage">

<div id="title"> Mensagem <h:graphicImage style="padding-left: 218px; cursor: pointer;" value="/img/closeMP.gif" onclick="dialogMessage();"/> </div> <rich:messages id="#{formId}Message" globalOnly="true" infoClass="formMessage" style="margin: 5px" errorClass="error formMessage" warnStyle="display: none" /> </div> </ui:composition>

No arquivo list.xhtml foi ajustado o modo de exibio dos popUps da pagina nos compone ntes (botaoListDocProcess, botaoPaginador). No arquivo paginator.css foi ajustado algumas classes CSS descrito no patch.txt . No arquivo paginator.xhtml foi retirado o s style dos componentes <rich:datascroller /> e ajustado a cdigo da pagina corrigind alguns detalhes descrito no patch.txt . No arquivo documentosAnexadosProcesso.xhtml foi retirado um style do primeiro <rich:column> do arquivo. No arquivo processoDo cumentoBin.xhtml foi retirado o form do componente <a:commandLink />. As correes nos arquivos citados a cima foi feita com o intuito de corrigir o bug B ug Externo #2228 do paginador do detalho do processo.

Ajuste corrigido, foi adicionado 2 parametro (jointPoint, direction) no componente (wi:inputDataPeriodo) e no arquivo (advogado.xhtml) foi adicionado 2 parametro (jointPoint="top-letf ", direction="top-right") no componente (wi:inputDataPeriodo).

jointPoint="top-letf" direction="top-right" wi:inputDataPeriodo

public static String remover(String texto) { StringBuilder sb = new StringBuilder(texto); int posIni = sb.indexOf("<!--"); int posFim = sb.indexOf("-->", posIni); while (posIni != -1 && posFim != -1) { sb.delete(posIni, posFim + 3); posIni = sb.indexOf("<!--"); posFim = sb.indexOf("-->", posIni); } return sb.toString();

<rich:calendar id="#{idFromForm}" value="#{valueDateFrom}" enableManualInput="true" inputStyle="width: 70px; disp lay:inline; " jointPoint="#{jointPoint}" direction="#{direction}" disabled="#{disabled}" required="#{required}" inputClass="#{id}maskDate" datePattern="#{empty pattern ? 'dd/MM/yyyy' : pattern}" onchanged="validarPeriodo('#{rich:clientId(id FromForm)}InputDate', '#{rich:clientId(idToForm)}InputDate', true);" oninputblur="validarD

onclick="Richfaces.showModalPanel('skinPanel')" /> onclick="Richfaces.hideModalPanel('skinPanel')"/>

<?xml version="1.0" encoding="ISO-8859-1"?> <!-IBPM - Ferramenta de produtividade Java Copyright (c) 1986-2009 Infox Tecnologia da Informao Ltda. Este programa software livre; voc pode redistribu-lo e/ou modific-lo sob os termos da GNU GENERAL PUBLIC LICENSE (GPL) conforme publicada pela Free Software Foundation; verso 2 da Licena. Este programa distribudo na expectativa de que seja til, porm, SEM NENHUMA GARANTIA; nem mesmo a garantia implcita de COMERCIABILIDADE OU ADEQUAO A UMA FINALIDADE ESPECFICA. Consulte a GNU GPL para mais detalhes. Voc deve ter recebido uma cpia da GNU GPL junto com este programa; se no, veja em http://www.gnu.org/licenses/ --> <ui:composition xmlns="http://www.w3.org/1999/xhtml" xmlns:s="http://jboss.com/products/seam/taglib" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:c="http://java.sun.com/jstl/core" xmlns:f="http://java.sun.com/jsf/core" xmlns:wi= "http://www.itx.com.br/jsf"

xmlns:h="http://java.sun.com/jsf/html" xmlns:a="http://richfaces.org/a4j" xmlns:rich="http://richfaces.ajax4jsf.org/rich" template="/WEB-INF/xhtml/templates/template-sample.xhtml"> <ui:define name="title">#{messages['sessaoPautaProcessoTrf.painelCalenda rio']}</ui:define> <ui:param name="home" value="#{sessaoHome}" /> <ui:define name="body"> <style> .wi-agenda-selected { background-color: red; } </style> <br/> <a:form> <s:div id="divAgenda"> <rich:panel styleClass="transparency"> <s:div id="scriptAbrirModal"> <ui:param name="currentDate" val ue="#{agendaSessao.currentDate}" /> <script type="text/javascript"> function abrirModal() { if("#{currentDat e}" != "") { #{rich:c omponent('modalSessaoRelacaoJulgamento')}.show(); } } </script> </s:div> <a:jsFunction name="ajaxSubmit" oncomplete="ab rirModal();" reRender="scri ptAbrirModal, modalSessaoRelacaoJulgamento" rendered="true "/> <center> <rich:calendar id="agendaSessao" popup ="false" showW eeksBar="false" showA pplyButton="false" value ChangeListener="#{agendaSessao.selectDay}" oncha nged="ajaxSubmit();"

cellH eight="60" mode= "ajax" dataM odel="#{agendaSessao}" value ="#{value}"> <a:outputPanel id="cell" layout="block " style="height : 100%; text-align: justify;"> <h:panelGrid id="#{id}PanelGridA genda" columns ="1" style=" text-align: justify; width: 140px;"> <f:facet name="header"> <s:div> <h:outpu tText value="{day}" style="align:center;"/> <h:outpu tText value="{data.tipoSessao.escapeHTML()}" style="margin-left: 10px;"/> </s:div> </f:facet> </h:panelGrid> </a:outputPanel> </rich:calendar> </center> </rich:panel> </s:div> </a:form> <rich:modalPanel id="modalSessaoRelacaoJulgamento" width="650" heigh t="300"> <f:facet name="header"> <h:panelGroup> <h:outputText value="#{messages['processosMesa.modalSess ao']}"/> </h:panelGroup> </f:facet> <f:facet name="controls"> <h:panelGroup> <h:graphicImage value="/img/closeMP.gif" onclick="Richfaces.hideModalPane l('modalSessaoRelacaoJulgamento')"/> </h:panelGroup> </f:facet> <wi:dataTable id="sessaoRelacaoJulgamentoList" tableTitle="#{messages['proces sosMesa.modalGridSessao']}" values="#{painelSecretarioSess

aoList.list(10)}" bean="#{painelSecretarioSessao List}" panelWidth="96%"> <ui:define name="toolBar"> <a:commandLink onclick="window.open( 'se ssaoRealizadaPopUp.seam?idSessao=#{row.idSessao}', 'sessaoRealizada', 'width=800 ,height=600, scroll=yes, scrollbars=yes');" rendered="#{r ow.dataFechamentoSessao != null}"> <h:graphicImage title="Detalhe d a Relao de Julgamento" url="#{a4jSkin.imgIconView}"/> <f:param name="idSessao" value=" #{row.idSessao}" /> <f:setPropertyActionListener tar get="#{sessaoHome.id}" value="#{row.idSessao}"></f:setPropertyActionListener> </a:commandLink> <a:commandLink onclick="window.open('ses saoAbertaPopUp.seam?idSessao=#{row.idSessao}', 'sessaoAberta', 'width=800,height =600, scroll=yes, scrollbars=yes');" rendered="#{r ow.dataFechamentoSessao == null}"> <h:graphicImage title="Detalhe d a Relao de Julgamento" url="#{a4jSkin.imgIconView}"/> <f:param name="idSessao" value=" #{row.idSessao}" /> <f:setPropertyActionListener tar get="#{sessaoHome.id}" value="#{row.idSessao}"></f:setPropertyActionListener> </a:commandLink> </ui:define> <wi:columnOutputText columnId="orgaoJulgadorCole giadoSalaHorario" header= "Horrio" columnR endered="true" hideOrd er="true" value=" #{sessaoHome.getHoraInicial(row)}" /> <wi:columnOutputText columnId="sala" header= "Sala" columnR endered="true" value=" #{row.orgaoJulgadorColegiadoSalaHorario.sala}" /> <wi:columnOutputText columnId="tipoSessao" header= "Tipo de Sesso" columnR

endered="true" value=" #{row.tipoSessao}" /> <wi:columnOutputText columnId="qtdProcessoTrf" header= "Quantidade de Processos" columnR endered="true" hideOrd er="true" value=" #{sessaoHome.countProcessoTrf(row)}" /> </wi:dataTable> </rich:modalPanel> </ui:define> </ui:composition> Ajuste corrigido, foi ajustada a ordem dos componentes, porque n o (IE) form dentro de form da erro na renderizao dos componentes, refs #983

Para o excelentssimo senho Fabio Vinicios (Coordenador de Atividades), s olicito a criao da seguinte tarefa: Tarefa de Ajuste: interno. Prioridade: normal Dias: De hoje at sexta 21/01/12 DESCRIO: Ajuste de anomalias de intercafes entre os navegadores Web

<h:form id="papeisUsuarioForm"> <wi:selectOneMenuEntity id="usuarioLocalizacao" value="#{authenticator.localizacaoAtualCombo}" rendered="#{authenticator.usuarioLocalizacaoComboListIte ms.size() gt 1}" template="/WEB-INF/xhtml/components/templates/display.xh tml" onchange="this.form.submit()" items="#{authenticator.usuarioLocalizacaoComboListItems} " style="position:absolute; right:0px; width:auto; color:#{a4jSkin.colorTextMenu}; font-size:14px; text-align:right; background-color:transparent; border:none"> </wi:selectOneMenuEntity> <br/> <h:outputText value="#{authenticator.usuarioLocalizacaoListItems[0]}"

rendered="#{identity.loggedIn and authenticator.usuarioL ocalizacaoComboListItems.size() == 1}" style="position:absolute; right:0px; background-color:transparent; font-size:14px; color:#{a4jSkin.colorTextMenu}; font-weight: normal;" /> </h:form>

Ajuste de CSS feito no parametro (style) do componente <wi:selec tOneMenuEntity> relacionado ao form (papeisUsuarioForm). refs #1083 838 832 -- Bobo 793 798 -- Bobo 831 Foi retirado os parmetros (jointPoint, direction) dos componentes (wi:inputDataPe riodo) Foi ajustado o parmetro (direction= auto ) nos componentes (rich:calendar), refs 1099 Na classe Util.java foi adicionado o mtodo (removeCommentsHTML(String text)) resp onsvel por corrigir o erro ocasionado no Internet Explorer, localizado no diretorio (FI-Core\WEB-INF\src\runtime\br\com\itx\component\Util.java) e j nos templates fo i adicionado o documentoTemplate.xhtml para ser utilizado no documentoHTML.xhtml o template est a localizado n o diretrio (FI-Core\WEB-INF\xhtml\templates\documentoTemplate.xhtml) e o documentoHTML.xht ml foi ajustado para corrigir o erro ocasionado no Internet Explorer, esse arquivo esta localizado no diretrio (PJE2\Painel\painel_usuario\documentoHTML.xhtml), j o codigoValidacaoDocumentoBin .xhtml foi s formatado para ter uma melhor visualizao ele esta no diretrio (PJE2\WEB-INF\xhtml\includePages\codigoValidacaoDocumentoBin.xhtml), refs #987 <h:outputText value="#{util.removeCommentsHTML(proc

Foi chamado o metodo (removeCommentsHTML) da classe (Util.java), na tag (<h:outputText ... ) relacionado com o processoDocumentoBinHome, evitando erro na exibio do documento no (Internet Explorer), refs #

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE datasources PUBLIC "-//JBoss//DTD JBOSS JCA Config 1.5//EN" "http://www.jboss.org/j2ee/dtd/jboss-ds_1_5.dtd"> <datasources> <xa-datasource> <jndi-name>PJE4_DS</jndi-name> <xa-datasource-class>org.postgresql.xa.PGXADataSource</xa-datasource-class> <xa-datasource-property name="ServerName">172.20.1.110</xa-datasource-proper ty> <xa-datasource-property name="PortNumber">5432</xa-datasource-property> <xa-datasource-property name="DatabaseName">desbd_pje_2grau_rodrigo</xa-data source-property> <user-name>postgres</user-name> <password>postgres</password> <!-- disable transaction interleaving --> <track-connection-by-tx /> <!-- corresponding type-mapping in conf/standardjbosscmp-jdbc.xml --> <metadata> <type-mapping>PostgreSQL 8.0</type-mapping> </metadata> </xa-datasource> <xa-datasource> <jndi-name>PJE4_DSBin</jndi-name> <xa-datasource-class>org.postgresql.xa.PGXADataSource</xa-datasource-class> <xa-datasource-property name="ServerName">172.20.1.110</xa-datasource-proper ty> <xa-datasource-property name="PortNumber">5432</xa-datasource-property> <xa-datasource-property name="DatabaseName">desbd_pje_2grau_rodrigo_bin</xadatasource-property> <user-name>postgres</user-name> <password>postgres</password> <!-- disable transaction interleaving --> <track-connection-by-tx /> <!-- corresponding type-mapping in conf/standardjbosscmp-jdbc.xml --> <metadata> <type-mapping>PostgreSQL 8.0</type-mapping> </metadata> </xa-datasource> </datasources>

<wi:messages showDialogMessage="#{showDialogMessage}" timeCloseMSG="#{timeClose MSG}"/> <ui:param name="timeCloseMSG" value="#{empty timeCloseMSG ? '3000' : timeCloseM

SG}"/>

<wi:messages showDialogMessage="#{showDialogMessage}" timeCloseMSG="#{timeCloseM SG}"/> timeCloseMSG

No componente (wi:messages)foi adicionado um parmetro (timeCloseMSG) para o tempo de durao da caixa de mensagem e no arquivo form.xhtml foi adicionado o parmetro (timeClose MSG) na tag (wi:messages). Foi adicionado na tag (wi:messages) o parametro (timeCloseMSG="9000"). Foi ajustado a composio do popUp do seguinte modo ('width=800, height=600, resizab le=yes, scrollbars=yes'), refs #1146 016.019.735-00 laercio_magistrado

Bug assinar Expediente (IE), corrigido, foi modificado o mtodo (inserirAtualizarD oc) da classe ProcessoExpedienteHome e na classe VerificaCertificadoPessoa foi adici onado uma linha de cdigo no mtodo (verificaCertificadoPessoaLogada), resf 1140 Classe: VerificaCertificadoPessoa -> metodo: verificaCertificadoPessoaLogada public static void verificaCertificadoPessoaLogada(String certChainBase6 4Encoded) throws CertificadoException { Pessoa pessoa = PessoaHome.getPessoaLogada(); if (Strings.isEmpty(pessoa.getCertChain())) { throw new CertificadoException("O cadastro do usurio no es t assinado."); } if (!pessoa.checkCertChain(certChainBase64Encoded)) { throw new CertificadoException("O certificado no o mesmo do cadastro do usuario"); } //adicionada by jplacerda X509Certificate[] x509Certificates = DigitalSignatureUtils.loadC ertFromBase64String(certChainBase64Encoded); VerificaCertificado.verificaValidadeCertificado(x509Certificates ); }

Classe: ProcessoExpedienteHome -> metodo: inserirAtualizarDoc //modificado by jplacerda public void inserirAtualizarDoc() { try { VerificaCertificadoPessoa.verificaCertificadoPessoaLogad a(ProcessoDocumentoBinHome.instance().getCertChain()); if (!documentoInserido){ ProcessoDocumentoHome processoDocHome = Processo DocumentoHome.instance(); processoDocHome.persistSemNewInstance(); documentoInserido = Boolean.TRUE; ProcessoDocumentoBinHome.instance().atualizaAssi natura(); assinado = Boolean.TRUE; persist(); } else { ProcessoDocumentoBinHome.instance().update(); } } catch (CertificadoException e) { FacesMessages.instance().add(Severity.ERROR, "Erro ao as sinar o documento: " + e.getMessage(), e); } } AVISO IMPORTANTE: Ai galera foi criado uma funo no arquivo util.js chamada de (openPopUp) essa funo pa ra padronizar todos os popUps do sistema para utilizar-la basta seguir o exemplo abaixo: <a:commandButton onclick="openPopUp('listaDocumentos', 'listDocAdvAnexad o.seam? cid=#{conversation.id}');" ... /> OBS: isso uma funo javascript basta vc chamar a funo e passar o id da pagina e o url da pagina e s isso. <script> function popup() { openPopUp('idDaPagina', 'urlDaPagina.html?valor=123'); } </script> OU <a:commandButton onclick="openPopUp('idDaPagina','urlDaPagina.html?valor =123');" ... />

Para o excelentssimo senho Fabio Vinicios (Coordenador de Atividades), solicito a criao da seguinte tarefa: Tarefa de Ajuste: interno. Prioridade: normal Dias: De hoje at sexta 21/01/12

DESCRIO: Ajuste de anomalias de intercafes entre os navegadores Web <rich:modalPanel id="novaCaixaPanel" ... /> e no <rich:modalPanel id="novoLotePa nel" ... /> No arquivo (PJE2\Painel\painel_usuario\include\caixa.xhtml) foi modificado o modo de fechar do modalPanel. Isso foi aplicado nos modalPanel (<rich:modalPanel id="novaCaixaPanel" ... /> e no <rich:modalPanel id="novoLotePanel" ... />). var progreso = document.getElementById("charactersTyped"); if (obj.value.length < max) { progreso.style.backgroundColor = "#FFFFFF"; progreso.style.backgroundImage = "url(textarea.p ng)"; progreso.style.color = "#000000"; var pos = ancho - parseInt((ancho * parseInt(obj .value.length)) / 250); progreso.style.backgroundPosition = "-" + pos + "px 0px"; } else { progreso.style.backgroundColor = "#CC0000"; progreso.style.backgroundImage = "url()"; progreso.style.color = "#FFFFFF"; } progreso.innerHTML = "("+obj.value.length+" / "+max+")"; var max=250; var ancho=300; Foi feita uma modificao no arquivo (PJE2\Painel\painel_usu ario\Painel_Usuario_Magistrado_2_Grau\sessaoJulgamentoPopUp.xhtml) dentro da aba (id="tabSessaoNaoRealizada"). A modificao foi feita poque no estava exibindo o men sagem de cadastro do voto conforme a descrio do (Bug Interno #1446). ################################## 2061131527 ################################## ################################################################################ ################################################################################ ####################################### Foi adicionado um linha (FacesMessages.instance().clear();) no mtodo ean validate() para limpara duplicao de mensagens. <?xml version="1.0" encoding="ISO-8859-1"?> <!-- $Id$ --> <ui:composition xmlns="http://www.w3.org/1999/xhtml" xmlns:s="http://jboss.com/products/seam/taglib" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:c="http://java.sun.com/jstl/core" private bool

xmlns:f="http://java.sun.com/jsf/core" xmlns:a="http://richfaces.org/a4j" xmlns:wi="http://www.itx.com.br/jsf" xmlns:h="http://java.sun.com/jsf/html" xmlns:rich="http://richfaces.ajax4jsf.org/rich" template="/WEB-INF/xhtml/templates/templateAbasSemMenu.xhtml"> <ui:param name="pageTitle" value="Relao de Julgamento" /> <ui:define name="title">#{pageTitle}</ui:define> <ui:param name="home" value="#{sessaoHome}" /> <ui:define name="body"> <s:div id="composicaoDiv" > <br/> <wi:messages/> <rich:simpleTogglePanel switchType="client" opened="false" label="Composio do rgo Julgador Colegiado" > <a:form> <a:jsFunction name="fpopUp" status="status " reRender="page Body, javascript:window.location.reload()"/> <s:div id="sessaoComposicaoOrdemTable"> <wi:dataTable values="#{sessaoCompos icaoOrdemList.list(5)}" bean=" #{sessaoComposicaoOrdemList}" tableT itle="Gabinetes" id="se ssaoComposicaoOrdemList"> <wi:columnOutputText col umnId="idGabinete" columnWidth="50%" header="Gabinete" value="#{row.orgaoJulgadorColegiadoOrgaoJulgador.orgaoJulgador.orgaoJulgador}"/ > <wi:column header="Gabin ete Revisor" hideOrder="true" columnWidth="50%" > <a:form> <a:region renderRegionOnly="true" > <wi:selectOneMenuEntity id="orgaoJulgadorColegiadoOrgaoJulgadorCombo" showLock="false" value="#{row.orgaoJulgadorColegiadoRevisor}" items="#{sessaoComposicaoOrdemHome.orgaoJulgadorColegiadoOrgaoJulgadorList(row)} " noSelectionLabel="[nenhum]"

rendered="#{row.orgaoJulgadorColegiadoOrgaoJulgador.orgaoJulgador.orgaoJulgador == orgaoJulgadorAtual}"> <a:support event="onchange" action="#{sessaoComposicaoOrdemHome.updateComposicaoOrgaoJulgadorCombo(row)}" reRender="pageBody" oncomplete="window.parent.location.reload();" onsubmit="showLoading();" /> </wi:selectOneMenuEntity> </a:region> </a:form > <s:div rendered= "#{row.orgaoJulgadorColegiadoOrgaoJulgador.orgaoJulgador.orgaoJulgador != orgaoJ ulgadorAtual}" > #{wi:get (row.orgaoJulgadorColegiadoRevisor.orgaoJulgador.orgaoJulgador, 'Nenhum')} </s:div> </wi:column> </wi:dataTable> </s:div> </a:form> </rich:simpleTogglePanel> </s:div> </ui:define> <ui:define name="tabs"> <rich:tab id="form" label="Pauta de Julgamento" immediate="true" status=":status" disabled="#{((sessaoHome.instance.dataFechamentoPauta != null and sessaoHome.instance.dataFechamentoPauta.before(sessaoHome.dataAtual)) or ses saoHome.instance.dataRealizacaoSessao != null)}"> <s:div id="processosPautaJulgamento"> <wi:searchForm formId="processoPauta" formTitle="Pesquisar Processos" opened="false" bean="#{pautaJulgamentoList}" showLogicOperator="false" searchReRender="pautaJulgamentoLi st" clearReRender="processosPautaJulg amento" widthSearchForm="100%"> <wi:inputNumeroProcesso id="nrProcesso" labe l="Processo" valu e="#{pautaJulgamentoList.numeroProcesso}"/>

<wi:selectOneMenuEntity id="orgaoJulgador" label="rgo Julgador" showLock="false" noSelectionLabel="[Todos]" value="#{pautaJulgamentoList.entity.orgaoJulgador}" items="#{orgaoJulgadorSessaoComposicaoItems}"/> <wi:tree assignTo="pautaJulgamentoList.entity.cl asseJudicial" id="classe" tree="#{classeJudicialTree}" icon="/img/nivelTree.gif" iconLeaf="/img/file.gif" label="Classe Judicial"/> <wi:tree assignTo="pautaJulgamentoList.assuntoTr f" id="assuntoTrf" tree="#{assuntoTrfTree}" icon="/img/nivelTree.gif" iconLeaf="/img/file.gif" label="Assunto"/> <ui:include src="/WEB-INF/xhtml/components/grid/ search/cpfOuCnpjConsultaProcesso.xhtml"/> <wi:inputText id="relator" label="Relator" value="#{pautaJulgamen toList.relator}"/> <wi:tree assignTo="pautaJulgamentoList.tipoPesso a" id="tipoPessoa" tree="#{tipoPessoaTree}" icon="/img/nivelTree.gif" iconLeaf="/img/file.gif" label="Tipo de Pessoa"/> <wi:inputText id="parte" label="Nome da Parte" value="#{pautaJulgamen toList.nomeParte}"/> <wi:inputDataPeriodo id="dtDistribuicao" label=" Perodo de Distribuio" valueDa teFrom="#{pautaJulgamentoList.dtDistribuicaoInicio}" valueDa teTo="#{pautaJulgamentoList.dtDistribuicaoFim}"/> <wi:inputDataPeriodo id="dtAtualizacao" label="l tima Concluso para Julgamento"

valueDa teFrom="#{pautaJulgamentoList.dtAtualizacaoInicio}" valueDa teTo="#{pautaJulgamentoList.dtAtualizacaoFim}"/> </wi:searchForm> <s:div id="gridProcessoTrf"> <wi:dataTable values="#{pautaJulgamentoList.list (10)}" bean="#{pautaJulgament oList}" tableTitle="Processos" panelWidth="98%" id="pautaJulgamentoLis t" showMsg="false"> <ui:define name="headerToolBar" > <a:form> <a:region renderRegionOn ly="false"> <h:selectBoolean Checkbox id="addLista" value="#{processoTrfHome.marcouListTudo}" rendered="#{!s:hasRole('idSecretarioSessao') and sessaoHome.instance.dataRealiz acaoSessao == null}"> <a:suppo rt event="onclick" action="#{processoTrfHome.marcarTudo()}" reRender="gridProcessoTrf"/> </h:selectBoolea nCheckbox> </a:region> </a:form> </ui:define> <ui:define name="toolBar"> <a:form> <s:div style="width: 40p x;"> <a:region render RegionOnly="false"> <h:selec tBooleanCheckbox id="toolbarInclusaoSessao" styleClass="checkbox" rendered="#{!s:hasRole('idSecretarioSessao') and sessaoHome.instance.dataRealiz acaoSessao == null}" value="#{row.check}"> <a:support event="onclick" action="#{processoTrfHome.criarLista(row)}"

ajaxSingle="true" onsubmit="showLoading()" oncomplete="hideLoading()" reRender="toolbarInclusaoSessao, btnPautaJulgamento"/> </h:sele ctBooleanCheckbox> <a:comma ndLink onclick="openPopUp('processoTrfPopUp', 'listProcessoCompleto.seam?id=#{r ow.idProcessoTrf}');"> <h:graphicImage title="Detalhe do Processo" url="#{a4jSkin.imgIconView}"/> </a:comm andLink> </a:region> </s:div> </a:form> </ui:define> <wi:columnOutputText columnId="processoT rf" hideOrder="true" header="Processo" value="#{row.numeroProcesso}" /> <wi:columnOutputText columnId="idClasse" hideOrder="true" header="Classe Judicial" value="#{row.classeJudicial}" /> <wi:columnOutputText columnId="idOrgaoJu lgador" hideOrder="true" header="rgo Julgador" value="#{row.orgaoJulgador}" /> <wi:columnOutputText columnId="idProcess oTrfRelator" hideOrder="true" header="Relator" value="#{processoTrfHome.getRelator(row)}" />

</wi:dataTable> <a:form> <s:div id="btnPautaJulgamento"> <wi:commandButton action="proces soTrfHome.incluirProcessos()" value="Incluir" id="inserir" onclick="showLoading()" oncomplete="hideLoading()" reRender="pageBody" rendered="#{processoTrfHome.listaProcesso.size() > 0}"/> <wi:commandButton action="sessao Home.fecharPauta(sessaoHome.instance.getOrgaoJulgadorColegiado().getFechamentoAu tomatico(), sessaoHome.instance)" value="Fechar Pauta" id="fechaPauta" reRender="pageBody" rendered="#{s:hasRole('idSecretarioSessao') and !sessaoHome.instance.orgaoJulg adorColegiado.fechamentoAutomatico}"/> </s:div> </a:form> </s:div> </s:div> </rich:tab> <!-- =========================== Grid Adiados/Pautas Anteriores ======== =================== --> <rich:tab label="#{messages['processoAdiadoVista.aba']}" status=":status" action="#{sessaoPautaProcessoTrfHome.setTipoInclusao('AD')}" id="processosAdiados" disabled="#{sessaoHome.instance.dataRealizacaoSessao ! = null}"> <s:div id="processosAdiadosVista"> <wi:searchForm formId="#{id}processoAd" formTitle="Pesquisar Processo s" bean="#{processoAdiadoVistaLi st}" opened="false" searchReRender="processoAdiad oVistaList" clearReRender="processosAdiadosVi sta" showLogicOperator="false"

widthSearchForm="100%"> <wi:inputNumeroProcesso id="nrProcesso" label="#{messages['processoAdiadoVista.processo']}" showLock="false" value="#{processoAdiadoVistaList.numeroProcesso.numeroProcesso}"/> <wi:selectOneMenuEntity id="orgaoJulgador" label="rgo Julgador" showLock="false" noSelectionLabel="[Todos]" value="#{processoAdiadoVistaList.orgaoJulgadorCombo}" items="#{orgaoJulgadorSessaoComposicaoItems}"/> <wi:inputText id="nomeParte" label="#{messages['pro cessoAdiadoVista.nomeParte']}" showLock="false" value="#{processoAdiad oVistaList.nomeParte}"/> <wi:tree assignTo="processoAdiadoVistaList.class eJudicial" id="classe" tree="#{classeJudicialTree}" showLock="false" icon="/img/nivelTree.gif" iconLeaf="/img/file.gif" label="#{messages['processoAdia doVista.classeJudicial']}"/> <wi:inputText id="relator" label="#{messages['pro cessoAdiadoVista.relator']}" showLock="false" value="#{processoAdiad oVistaList.relator}"/> <wi:tree assignTo="processoAdiadoVistaList.assun toTrf" id="assunto" inNewLine="true" showLock="false" tree="#{assuntoTrfTree}" icon="/img/nivelTree.gif" iconLeaf="/img/file.gif" label="#{messages['processoAdia doVista.assuntoTrf']}"/> </wi:searchForm>

<s:div style="float:left; width:100%"> <wi:dataTable values="#{processoAdiadoVistaList. list(10)}" bean="#{processoAdiado VistaList}" panelWidth="98%" showMsg="false" tableTitle="#{messages ['processoAdiadoVista.titleGrid']}" id="processoAdiadoVist aList"> <ui:define name="headerToolBar"> <a:form> <a:region renderRegionOn ly="false"> <h:selectBoolean Checkbox value="#{sessaoPautaProcessoTrfHome.checkBox}" widthDiv="35px" rendered="#{processoAdiadoVistaList.list().size > 0 and !s:hasRole('idSecretari oSessao') and sessaoHome.instance.dataRealizacaoSessao == null}" id="header"> <a:suppo rt event="onclick" action="#{sessaoPautaProcessoTrfHome.checkAll('AD')}" ajaxSingle="true" onsubmit="showLoading()" oncomplete="hideLoading()" reRender="processoAdiadoVistaList, botaoSessaoPautaProcessoTrf, pageBody"/> </h:selectBoolea nCheckbox> </a:region> </a:form> </ui:define> <ui:define name="toolBar"> <table> <tr> <td> <a:form> <a:region renderRegionOnly="false"> <h:selectBooleanCheckbox id="toolbar" styleClass="checkbox"

rendered="#{!s:hasRole('idSecretarioSessao') and (sessaoHome.instance.dataReali zacaoSessao == null)}" value="#{row.check}"> <a:support event="onclick" action="#{sessaoPautaProcessoTrfHome.criarLista(row)}" ajaxSingle="true" onsubmit="showLoading()" oncomplete="hideLoading()" reRender="actionButton" /> </h:selectBooleanCheckbox> </a:region> </a:form > </td> <td> <a:comma ndLink onclick="openPopUp('processoTrfPopUp', '#{util.urlProject}/Processo/Cons ultaProcesso/Detalhe/listProcessoCompleto.seam?idProcessoTrf=#{row.idProcessoTrf }');" rendered="#{(s:hasRole('magistrado') or s:hasRole('servidor')) and (orgaoJulgado rAtual != null and row.processoTrf.orgaoJulgador == orgaoJulgadorAtual)}"> <h:graphicImage title="Detalhe do Processo" url="#{a4jSkin.imgIconView}"/> </a:comm andLink> <a:comma ndLink onclick="openPopUp('processoTrfPopUp', '#{util.urlProject}/Processo/Deta lheProcessoRevisor/listView.seam?idProcessoTrf=#{row.idProcessoTrf}');" rendered="#{processoTrfHome.isRevisor(row.processoTrf)}"> <h:graphicImage title="Detalhe do Processo" url="#{a4jSkin.imgIconView}"/> </a:comm andLink> <a:comma ndLink onclick="openPopUp('processoTrfPopUp', 'DetalheProcesso/listView.seam?id =#{row.idProcessoTrf}');" rendered="#{s:hasRole('idSecretarioSessao')}"> <h:graphicImage title="Detalhe do Processo"

url="#{a4jSkin.imgIconView}"/> </a:comm andLink> </td> </tr> </table> </ui:define> <wi:columnOutputText columnId="processoT rf.processo.numeroProcesso" header="#{messages['processoAdiadoVista.processo']}" value="#{row.processoTrf.numeroProcesso}"/> <wi:columnOutputTextIdent columnId="proc essoTrf.classeJudicial.classeJudicial" header="#{messages['processoAdiadoVista.classeJudicial']}" value="#{row.processoTrf.classeJudicial}"/> <wi:columnOutputText columnId="processoT rf.orgaoJulgador" header="#{messages['processoAdiadoVista.orgaoJulgador']}" value="#{row.processoTrf.orgaoJulgador}"/> <wi:columnDataList columnId="assuntoTrf" heade r="#{messages['processoAdiadoVista.assuntoTrf']}" value ="#{row.processoTrf.assuntoTrfList}" hideO rder="true"/> <wi:columnOutputText columnId="poloAtivo " hea der="#{messages['processoAdiadoVista.poloAtivo']}" hid eOrder="true" val ue="#{row.processoTrf.listaParteAtivo.get(0)}#{row.processoTrf.listaParteAtivo.s ize > 1 ? ' e outros' : ''}"/> <wi:columnOutputText columnId="poloPassi vo" hea der="#{messages['processoAdiadoVista.poloPassivo']}" hid eOrder="true" val ue="#{row.processoTrf.listaPartePassivo.get(0)}#{row.processoTrf.listaPartePassi vo.size > 1 ? ' e outros' : ''}"/> <wi:columnOutputText columnId="relator"

hideOrder="true" header="#{messages['processoAdiadoVista.relator']}" value="#{processoTrfHome.getRelator(row.sessaoPautaProcessoTrf.processoTrf)}"/> <wi:columnDateTime columnId="dataSessao" hideO rder="true" header="#{mes sages['sessao.dtSessao']}" pattern="dd/M M/yy" value="#{sess aoHome.ultimaSessao(row.idProcessoTrf)}"/> </wi:dataTable> <s:div id="actionButton" styleClass="actionButtons" style="clear: both; width:250px"> <a:form> <wi:commandButton id="botaoSessa oPautaProcessoTrf" value= "Incluir" reRend er="pageBody" onclic k="showLoading()" oncomplete="hideLoading()" render ed="#{(sessaoPautaProcessoTrfHome.listProcesso.size() > 0)}" action ="#{sessaoPautaProcessoTrfHome.gravarSessaoPauta()}" button Style="min-width:75px; width:75px;" ajaxSi ngle="true" style= "float:left; margin-left:20px"/> </a:form> </s:div> </s:div> </s:div> </rich:tab> <!-- =========================== Grid Pedidos de Vista Devolvidos ====== ===================== --> <rich:tab label="Pedido de Vista" status=":status" action="#{sessaoPautaProcessoTrfHome.setTipoInclusao('PV')}" id="idPedidoVistaDevolvido" disabled="#{sessaoHome.instance.dataRealizacaoSessao != null}" > <s:div id="processosPedidoVista">

<wi:searchForm formId="pesquisarProcessoAdiadoVistaListS earchForm" formTitle="Pesquisar Processo s" bean="#{processoAdiadoVistaPV List}" opened="false" showLogicOperator="false" searchReRender="processoAdiad oVistaPVList" clearReRender="processosPedid oVista" widthSearchForm="100%"> <wi:inputNumeroProcesso id="processoTrf" label="#{messages['processoAdiadoVistaList.processoTrf']}" showLock="false" value="#{processoAdiadoVistaPVList.numeroProcesso.numeroProcesso}"/> <wi:selectOneMenuEntity id="orgaoJulgador" label="rgo Julgador" showLock="false" noSelectionLabel="[Todos]" value="#{processoAdiadoVistaPVList.orgaoJulgadorCombo}" items="#{orgaoJulgadorSessaoComposicaoItems}"/> <wi:inputText id="nomeParte" label="#{messages['pro cessoAdiadoVistaList.nomeParte']}" showLock="false" value="#{processoAdiad oVistaPVList.nomeParte}"/> <wi:tree id="classeJudicial" assignTo="processoAdiadoVistaPVList .classeJudicial" tree="#{classeJudicialTree}" showLock="false" icon="/img/nivelTree.gif" iconLeaf="/img/file.gif" label="#{messages['processoAdiadoVistaL ist.classeJudicial']}"/> <wi:inputText id="relator" label="#{messages['pro cessoAdiadoVistaList.relator']}" showLock="false" value="#{processoAdiad oVistaPVList.relator}"/> <wi:tree id="assunto" assignTo="processoAdiadoVistaPV

List.assuntoTrf" tree="#{assuntoTrfTree}" showLock="false" inNewLine="true" icon="/img/nivelTree.gif" iconLeaf="/img/file.gif" label="#{messages['processoAdiadoVi staList.assunto']}"/> </wi:searchForm> <s:div style="float:left; width:100%"> <wi:dataTable values="#{processoAdiadoVistaPVLis t.list(10)}" panelWidth="98%" showMsg="false" bean="#{processoAdiadoVistaPVList}" tableTitle="Processos" id="processoAdiadoVist aPVList"> <ui:define name="headerToolBar"> <a:form> <a:region renderRegionOn ly="false"> <h:selectBoolean Checkbox value="#{sessaoPautaProcessoTrfHome.checkBox}" widthDiv="35px" rendered="#{processoAdiadoVistaPVList.list().size > 0 and !s:hasRole('idSecreta rioSessao') and sessaoHome.instance.dataRealizacaoSessao == null}" id="header"> <a:suppo rt event="onclick" action="#{sessaoPautaProcessoTrfHome.checkAll('PV')}" ajaxSingle="true" onsubmit="showLoading()" oncomplete="hideLoading()" reRender="processoAdiadoVistaPVList, botaoSessaoPautaProcessoTrfPV, pageBody" /> </h:selectBoolea nCheckbox> </a:region> </a:form> </ui:define> <ui:define name="toolBar"> <table> <tr> <td>

<a:form> <a:region renderRegionOnly="false"> <h:selectBooleanCheckbox id="toolbar" styleClass="checkbox" rendered="#{!s:hasRole('idSecretarioSessao') and sessaoHome.instance.dataRealiz acaoSessao == null}" value="#{row.check}"> <a:support event="onclick" action="#{sessaoPautaProcessoTrfHome.criarLista(row)}" ajaxSingle="true" onsubmit="showLoading()" oncomplete="hideLoading()" reRender="botaoSessaoPautaProcessoTrfPV, pageBody"/> </h:selectBooleanCheckbox> </a:region> </a:form > </td> <td> <a:comma ndLink onclick="openPopUp('processoTrfPopUp', '#{util.urlProject}/Processo/Cons ultaProcesso/Detalhe/listProcessoCompleto.seam?idProcessoTrf=#{row.idProcessoTrf }');" rendered="#{(s:hasRole('magistrado') or s:hasRole('servidor')) and (orgaoJulgado rAtual != null and row.processoTrf.orgaoJulgador == orgaoJulgadorAtual)}"> <h:graphicImage title="Detalhe do Processo" url="#{a4jSkin.imgIconView}"/> </a:comm andLink> <a:comma ndLink onclick="openPopUp('processoTrfPopUp', '#{util.urlProject}/Processo/Deta lheProcessoRevisor/listView.seam?idProcessoTrf=#{row.idProcessoTrf}');" rendered="#{processoTrfHome.isRevisor(row.processoTrf)}"> <h:graphicImage title="Detalhe do Processo" url="#{a4jSkin.imgIconView}"/> </a:comm andLink> <a:comma ndLink onclick="openPopUp('processoTrfPopUp', 'DetalheProcesso/listView.seam?id

=#{row.idProcessoTrf}');" rendered="#{s:hasRole('idSecretarioSessao')}"> <h:graphicImage title="Detalhe do Processo" url="#{a4jSkin.imgIconView}"/> </a:comm andLink> </td> </tr> </table> </ui:define> <wi:columnOutputText columnId="processoT rf.processo.numeroProcesso" header="#{messages['processoAdiadoVistaList.processoTrf']}" value="#{row.processoTrf.numeroProcesso}"/> <wi:columnOutputText columnId="processoT rf.classeJudicial.classeJudicial" header="#{messages['processoAdiadoVistaList.classeJudicial']}" value="#{row.processoTrf.classeJudicial}" /> <wi:columnOutputText columnId="processoT rf.orgaoJulgador" header="#{messages['processoTrf.orgaoJulgador']}" value="#{row.processoTrf.orgaoJulgador}"/> <wi:columnDataList columnId="assuntoTrfL ist" heade r="#{messages['processoAdiadoVistaList.assunto']}" value ="#{row.processoTrf.assuntoTrfList}" hideO rder="true"/> <wi:columnDataList columnId="listaParteA tivo" hideO rder="true" heade r="#{messages['processoAdiadoVistaList.poloAtivo']}" value ="#{row.processoTrf.listaParteAtivo.size > 1 ? row.processoTrf.listaParteAtivo.g et(0).getPessoa().getNome().concat(' e outros') : row.processoTrf.listaParteAtiv o.get(0)}"/> <wi:columnDataList columnId="listaParteP assivo"

hideO rder="true" heade r="#{messages['processoAdiadoVistaList.poloPassivo']}" value ="#{row.processoTrf.listaPartePassivo.size > 1 ? row.processoTrf.listaParteAtivo .get(0).getPessoa().getNome().concat(' e outros') : row.processoTrf.listaParteAt ivo.get(0)}"/> <wi:columnOutputText columnId="relator" hideOrder="true" header="#{messages['processoAdiadoVistaList.relator']}" value="#{processoTrfHome.getRelator(row.sessaoPautaProcessoTrf.processoTrf)}" / > <wi:columnOutputText columnId="sessaoPau taProcessoTrf.sessaoComposicaoOrdem.orgaoJulgadorColegiadoOrgaoJulgador.orgaoJul gador" header="Pediu Vista" value="#{row.sessaoPautaProcessoTrf.sessaoComposicaoOrdem.orgaoJulgadorColegiad oOrgaoJulgador.orgaoJulgador}"/> <wi:columnDateTime columnId="dataSessao" hideO rder="true" patte rn="dd/MM/yy" heade r="#{messages['sessao.dtSessao']}" value ="#{sessaoHome.ultimaSessao(row.idProcessoTrf)}"/> </wi:dataTable> <s:div styleClass="actionButtons" style="clear: both; width:250px"> <a:form> <wi:commandButton id="botaoSessa oPautaProcessoTrfPV" value= "Incluir" reRend er="pageBody" onclic k="showLoading()" oncomplete="hideLoading()" render ed="#{(sessaoPautaProcessoTrfHome.listProcesso.size() > 0)}" action ="#{sessaoPautaProcessoTrfHome.gravarSessaoPauta()}"

button Style="min-width:75px; width:75px;" ajaxSi ngle="true" style= "float:left; margin-left:20px"/> </a:form> </s:div> </s:div> </s:div> </rich:tab> <!-- =========================== Grid Processo em mesa ================= ========== --> <rich:tab label="Em Mesa" id="processoMesaTab" disabled="#{sessaoHome.instance.dataRealizacaoSessao ! = null}"> <s:div id="processosEmMesa"> <wi:searchForm formId="pesquisaProcessoTrfMesaListSearch Form" formTitle="Pesquisar Processo s" bean="#{processoTrfMesaList}" opened="false" showLogicOperator="false" searchReRender="idProcessosMe saList" clearReRender="processosEmMes a" widthSearchForm="100%"> <wi:inputNumeroProcesso id="nrProcesso" labe l="Processo" valu e="#{processoTrfMesaList.numeroProcesso.numeroProcesso}"/> <wi:selectOneMenuEntity id="orgaoJulgador" labe l="rgo Julgador" valu e="#{processoTrfMesaList.entity.orgaoJulgador}" items="#{orgaoJulgadorSessaoComposicaoItems}" noSelectionLabel="[Todos]"/> <wi:tree id="classeJudicial" assignTo="processoTrfMesaList.e ntity.classeJudicial" tree="#{classeJudicialTree}" icon="/img/nivelTree.gif" iconLeaf="/img/file.gif" label="Classe Judicial"/> <wi:tree id="assuntoTrf" assignTo="processoTrfMesaList.a ssuntoTrf"

tree="#{assuntoTrfTree}" icon="/img/nivelTree.gif" iconLeaf="/img/file.gif" label="Assunto"/> <wi:inputText id="parte" value="#{processoTrfMe saList.processoParte}" label="Nome da Parte"/ > <wi:inputText id="relator" value="#{processoTrfMe saList.relator}" label="Relator"/> </wi:searchForm> <wi:dataTable values="#{processoTrfMesaList.list(10)}" bean="#{processoTrfMesaList}" panelWidth="98%" tableTitle="#{messages['proces sosMesa.titleGrid']}" id="idProcessosMesaList"> <ui:define name="headerToolBar" > <a:form> <h:selectBooleanCheckbox id="add Lista" rendered="#{!s:hasRole('idSecretarioSessao')}"> <a:support event="onclic k" action="#{sessaoHome.marcaTudo()}" reRender="addItem, idProcessosMesaList, ca dastrarListButton" oncomplete="cadastrarListFunction()"/> </h:selectBooleanCheckbox> </a:form> </ui:define> <ui:define name="toolBar"> <table> <tr> <td> <a:form> <a:comma ndLink id="addCheck" reRender="idProcessosMesaList, cadastrarListButton" action="#{sessaoHome.addItem(row)}" status="status" ajaxSingle="true" rendered="#{not sessaoHome.listTRF.contains(row) and !s:hasRole('idSecretarioSes sao') and sessaoHome.instance.dataRealizacaoSessao == null}"> <h:graphicImage url="/img/jbpm/unchecked.gif" style="cursor:pointer" />

</a:comm andLink> <a:comma ndLink id="remCheck" reRender="idProcessosMesaList, cadastrarListButton" action="#{sessaoHome.addItem(row)}" status="status" ajaxSingle="true" rendered="#{sessaoHome.listTRF.contains(row) and !s:hasRole('idSecretarioSessao' ) and sessaoHome.instance.dataRealizacaoSessao == null}"> <h:graphicImage url="/img/jbpm/checked.gif" style="cursor:pointer" /> </a:comm andLink> </a:form> </td> <td> <a:commandLink onclick="openPopUp('processoTrfPopUp', '#{util.urlProject}/Processo/ConsultaProc esso/Detalhe/listProcessoCompleto.seam?idProcessoTrf=#{row.idProcessoTrf}');" rendered="#{(s:hasRole('magistrado') or s:hasRole('servidor')) and (orgaoJulgado rAtual != null and row.orgaoJulgador == orgaoJulgadorAtual)}"> <h:graph icImage title="Detalhe do Processo" url="#{a4jSkin.imgIconView}"/> </a:commandLink> <a:commandLink onclick="openPopUp('processoTrfPopUp', '#{util.urlProject}/Processo/DetalheProce ssoRevisor/listView.seam?idProcessoTrf=#{row.idProcessoTrf}');" rendered="#{processoTrfHome.isRevisor(row)}"> <h:graph icImage title="Detalhe do Processo" url="#{a4jSkin.imgIconView}"/> </a:commandLink> <a:commandLink onclick="openPopUp('processoTrfPopUp', 'DetalheProcesso/listView.seam?id=#{row.i dProcessoTrf}');" rendered="#{s:hasRole('idSecretarioSessao')}"> <h:graph icImage title="Detalhe do Processo"

url="#{a4jSkin.imgIconView}"/> </a:commandLink> </td> </tr> </table> </ui:define> <wi:columnOutputText columnId="o.processo.numero Processo" header="#{m essages['sessao.processo']}" value="#{ro w.numeroProcesso}"/> <wi:columnOutputText columnId="classeJudicial" header="#{messa ges['processoTrf.classeJudicial']}" value="#{row.cl asseJudicial}"/> <wi:columnOutputText columnId="orgaoJulgador" header= "#{messages['processoTrf.orgaoJulgador']}" value=" #{row.orgaoJulgador}"/> <wi:columnDataList columnId="assuntoTrf" hideOrder="tr ue" header="#{message s['processoTrf.assuntoTrf']}" value="#{row.assu ntoTrfList}"/> <wi:columnOutputText columnId="poloAtivo" hideOrd er="true" header="#{m essages['sessao.poloAtivo']}" value="#{ro w.listaParteAtivo.size()>0 ? (row.listaParteAtivo.size() > 1 ? row.listaParteAti vo.get(0).toString().concat(' e outros') : row.listaParteAtivo.get(0).toString() ) : ''}"/> <wi:columnOutputText columnId="poloPassivo" hideOrd er="true" header="#{m essages['sessao.poloPassivo']}" value="#{ro w.listaPartePassivo.size()>0 ? (row.listaPartePassivo.size() > 1 ? row.listaPart ePassivo.get(0).toString().concat(' e outros') : row.listaPartePassivo.get(0).to String()) : ''}"/> <wi:columnOutputText columnId="relator" hideOrd er="true" header="#{m essages['sessao.relator']}"

value="#{pr ocessoTrfHome.getRelator(row)}"/> <wi:columnDateTime columnId="dataUltimaSessao" hideOrder="tr ue" pattern="dd/M M/yy" header="#{mes sages['sessao.dtSessao']}" value="#{sess aoHome.ultimaSessaoTrf(row.idProcessoTrf)}"/> </wi:dataTable> <a:form> <a:commandButton id="cadastrarListButton" reRender="idPro cessosMesaList" value="Incluir" action="#{sessa oHome.cadastrarSessaoPautaProcessoTrfList()}" style="min-widt h:65px; width:65px;" styleClass="but tons dr-tbpnl-tb-inact" rendered="#{!s: hasRole('idSecretarioSessao')}"/> </a:form> <s:div style="clear: both"> <s:div id="divSuggest"> <wi:dataForm formId="processoEmMesaForm" formTitle="Outr os Processos"> <s:div id="pautaDiv"> <script> function exigePa uta(){ pauta = '#{sessaoHome.exigePauta()}'; if(pauta =='true'){ if(!confirm('A classe exige pauta. Deseja continuar?')) return false; else return true; } else { return true; } } </script> </s:div> <rich:suggestionbox onselect="" height="" width="" />

<wi:suggest id="#{f.id}processoTrf" bean="#{processoTrfSugge st}" label="Processo" assignTo="sessaoHome.pro cessoTrf" reRender="processoEmMesa Form, cadastrar"> <h:column > <h:outputText va lue="#{var.numeroProcesso}" /> </h:column> </wi:suggest> <a:commandButton id="cadastrar" rendered="#{sessaoHome.processoTrf != null and !authenticator.getPapelAtual().g etIdentificador().equals('idSecretarioSessao') and sessaoHome.instance.dataRealizacaoSessao == null}" reRender="pautaDiv, divSuggest" value="Incluir" action="#{sessaoHome.cadastrarSessaoPautaProcessoTrf}" onclick="if(!exigePauta()) return false; showLoading()" oncomplete="hideLoading()" style="min-width:65px; width:65px;" sty leClass="buttons dr-tbpnl-tb-inact"/> </wi:dataForm> </s:div> </s:div> </s:div> </rich:tab> <!-- =========================== Grid Relao Julgamento ======================= ==== --> <rich:tab label="Relao de Julgamento" status=":status" id="relacaoJulgamento"> <s:div id="processosRelacaoJulgamento"> <wi:searchForm formId="#{id}relacaoJulga" formTitle="Pesquisar Processo s da Relao de Julgamento" bean="#{sessaoPautaRelacaoJul gamentoList}" opened="false" showLogicOperator="false" clearReRender="processosRelac aoJulgamento, gridRelacaoJulgamento" searchReRender="gridRelacaoJu

lgamento" widthSearchForm="100%"> <wi:inputNumeroProcesso id="nrProcesso" label="Proce sso" showLock ="false" value="#{ses saoPautaRelacaoJulgamentoList.numeroProcesso.numeroProcesso}"/> <wi:selectOneMenuEntity id="orgaoJulgador" labe l="#{messages['relacaoJulgamento.orgaoJulgador']}" valu e="#{sessaoPautaRelacaoJulgamentoList.orgaoJulgador}" items="#{orgaoJulgadorSessaoComposicaoItems}" noSelectionLabel="[Todos]"/> <wi:tree assignTo="sessaoPautaRelacaoJulgamentoL ist.classeJudicial" id="classe" tree="#{classeJudicialTree}" showLock="false" icon="/img/nivelTree.gif" iconLeaf="/img/file.gif" label="#{messages['relacaoJulga mento.classeJudicial']}"/> <wi:tree assignTo="sessaoPautaRelacaoJulgamentoL ist.assunto" id="assunto" showLock="false" tree="#{assuntoTrfTree}" icon="/img/nivelTree.gif" iconLeaf="/img/file.gif" label="#{messages['relacaoJulga mento.assuntoTrf']}"/> <wi:selectOneMenuEnum id="idTipoInclusao" label="#{messages[ 'relacaoJulgamento.tipoInclusao']}" value="#{sessaoPau taRelacaoJulgamentoList.entity.tipoInclusao}" items="#{sessaoPau taRelacaoJulgamentoList.tipoInclusaoValues}" noSelectionLabel=" Todos"/> <wi:selectBooleanCheckbox id="relatorioR" inNewLine="true" value="#{sessaoPautaRelacaoJulgamentoList.relatorio}" label="Relatrio" /> <ui:include src="/WEB-INF/xhtml/components/grid/

search/cpfOuCnpjConsultaProcesso.xhtml"/> <wi:inputText id="relator" label="#{messages['rel acaoJulgamento.relator']}" showLock="false" value="#{sessaoPautaRe lacaoJulgamentoList.relator}"/> <wi:tree assignTo="sessaoPautaRelacaoJulgamentoL ist.tipoPessoa" id="tipoPessoa" showLock="false" tree="#{tipoPessoaTree}" icon="/img/nivelTree.gif" iconLeaf="/img/file.gif" label="#{messages['relacaoJulga mento.tipoPessoa']}"/> <wi:inputText id="nomeParte" label="#{messages['rel acaoJulgamento.nomeParte']}" showLock="false" inNewLine="true" value="#{sessaoPautaRe lacaoJulgamentoList.nomeParte}"/> <wi:inputDataPeriodo id="dataDistribuicao" label=" #{messages['relacaoJulgamento.periodoDist']}" showLock="false" valueDateFrom="#{se ssaoPautaRelacaoJulgamentoList.dataInicio}" valueDateTo="#{sess aoPautaRelacaoJulgamentoList.dataFim}" /> <wi:inputDataPeriodo id="dataAtualizacao" label=" #{messages['relacaoJulgamento.periodoConclusao']}" showLock="false" valueDateFrom="#{se ssaoPautaRelacaoJulgamentoList.dataInicioAtualizacao}" valueDateTo="#{sess aoPautaRelacaoJulgamentoList.dataFimAtualizacao}" /> <wi:selectBooleanCheckbox id="revisado" value="#{sessaoPautaRelacaoJulgamentoList.revisado}" label="#{messages['relacaoJulgamento.revisado']}"/> </wi:searchForm> </s:div> <s:div id="paiDiv" > <s:div id="gridRelacaoJulgamento" style="float:left; wid th:100%"> <wi:dataTable values="#{sessaoPautaRelacaoJulgam entoList.list(10)}"

bean="#{sessaoPautaRel acaoJulgamentoList}" tableTitle="Processos da Relao de Julgamento" showMsg="false" panelWidth="98%" id="relacaojulgamentoL ist"> <ui:define name="toolBar"> <table> <tr> <td> <s:div> <s:link onclick="openPopUp('popUpDetalhesProcessoTrf#{row.processoTrf}', '');" rendered="#{(s:hasRole('magistrado') or s:hasRole('servidor')) and (orgaoJulgado rAtual != null and row.processoTrf.orgaoJulgador == orgaoJulgadorAtual)}" target="popUpDetalhesProcessoTrf#{row.processoTrf}" view="/Processo/ConsultaProc esso/Detalhe/listProcessoCompleto.seam?idProcessoTrf=#{row.processoTrf.idProcess oTrf}"> <h:graphicImage title="Visualizar Processo" url="/img/view.gif" /> </s:link> <a:commandLink onclick="openPopUp('processoTrfPopUp', '#{util.urlProject}/Proce sso/DetalheProcessoRevisor/listView.seam?idProcessoTrf=#{row.processoTrf.idProce ssoTrf}');" rendered="#{processoTrfHome.isRevisor(row.processoTrf)}"> <h:graphicImage title="Detalhe do Processo" url="#{a4jSkin.imgIconView}"/> </a:commandLink> <a:commandLink onclick="openPopUp('processoTrfPopUp', 'DetalheProcesso/listView .seam?id=#{row.processoTrf.idProcessoTrf}');" rendered="#{s:hasRole('idSecretarioSessao')}"> <h:graphicImage title="Detalhe do Processo" url="#{a4jSkin.imgIconView}"/> </a:commandLink> </s:div> </td> <td> <a:c ommandLink id="linkTrash"

action="#{sessaoPautaRelacaoJulgamentoHome.removeSessaoPauta(row)}" rendered="#{!s:hasRole('idSecretarioSessao') and sessaoPautaRelacaoJulgamentoHome.verificaRevisor( row) and !(row.sessao.dataFechamentoPauta != null and row. tipoInclusao == 'PA') and !sessaoPautaRelacaoJulgamentoHome.verificaProcess oExigeRevisao(row)}" onclick="if(!confirm('Deseja realmente excluir?')) return false; showLoading( );" oncomplete="hideLoading()" reRender="gridRelacaoJulgamento, paiDiv, relacaojulgamentoList" ajaxSingle="true" > <h:graphicImage url="/img/remove.png" title="Remover registro"/> </a:commandLink> <a:region renderRegionOnly="false" > <a:commandLink id="linkTrash2" reRender="paiDiv" onclick="showLoading();if(!confirm('O processo est em paut a fechada. Deseja remover o processo da pauta?')) return false;" action="#{sessaoPautaRelacaoJulgamentoHome.removeSessaoPa uta(row)}" oncomplete="hideLoading()" rendered="#{!s:hasRole('idSecretarioSessao') and sessaoPautaRelacaoJulgamentoHome. verificaRevisor(row) and (row.sessao.dataFechamentoPauta ! = null and row.tipoInclusao == 'PA') and !sessaoPautaRelacaoJulgamentoHome .verificaProcessoExigeRevisao(row)}" ajaxSingle="true"> <h:graphicImage url="/img/remove.png" title="Remover registro"/> </a:commandLink>

</a:region> </td> </tr> </table> </ui:define> <wi:columnOutputText columnId="p rocessoTrf.processo.numeroProcesso" header="#{messages['relacaoJulgamento.processo']}" value="#{row.processoTrf.numeroProcesso}"/> <wi:columnOutputTextIdent column Id="processoTrf.classeJudicial.classeJudicial" header="#{messages['relacaoJulgamento.classeJudicial']}" value="#{row.processoTrf.classeJudicial}"/> <wi:columnOutputText columnId="p rocessoTrf.orgaoJulgador" header="#{messages['relacaoJulgamento.orgaoJulgador']}" value="#{row.processoTrf.orgaoJulgador}"/> <wi:columnDataList columnId="ass untoTrf" header="#{messages['relacaoJulgamento.assuntoTrf']}" value="#{row.processoTrf.assuntoTrfList}"/> <wi:columnOutputText columnId="p olos" header="#{messages['relacaoJulgamento.polos']}" value="#{row.processoTrf.listaParteAtivo.size()>0 ? (row.processoTrf.listaP arteAtivo.size() > 1 ? row.processoTrf.listaParteAtivo.get(0).toString().concat( ' e outros') : row.processoTrf.listaParteAtivo.get(0).toString()) : ''} X #{row.processoTrf.listaPartePassivo.size()>0 ? (row.processoTrf.listaPartePassiv o.size() > 1 ? row.processoTrf.listaPartePassivo.get(0).toString().concat(' e ou tros') : row.processoTrf.listaPartePassivo.get(0).toString()) : ''}"/> <wi:columnOutputText columnId="r elator" header="#{messages['relacaoJulgamento.relator']}" value="#{processoTrfHome.getRelator(row.processoTrf)}"/> <wi:columnEnum columnId="tipoInc lusao" header="# {messages['relacaoJulgamento.tipoInclusao']}"

value="#{ row.tipoInclusao}"/> <wi:column id="colunmSustentacao " header="Suste ntao Oral?"> <a:region renderRegionOn ly="false"> <h:selectBoolean Checkbox id="sustentacaoOral" value="#{row.sustentacaoOral}" showLock="false"> <a:suppo rt event="onclick" action="#{sessaoPautaRelacaoJulgamentoHome.setSust(row)}" reRender="pageBody" onsubmit="showLoading()" oncomplete="hideLoading()"/> </h:selectBoolea nCheckbox> </a:region> </wi:column> <wi:column id="colunmPreferencia " header="Prefe rncia?"> <a:region renderRegionOn ly="false"> <h:selectBoolean Checkbox id="preferencia" value="#{row.preferencia}" showLock="false"> <a:suppo rt event="onclick" action="#{sessaoPautaRelacaoJulgamentoHome.setPref(row)}" reRender="pageBody" onsubmit="showLoading()" oncomplete="hideLoading()"/> </h:selectBoolea nCheckbox> </a:region> </wi:column> <wi:column id="colunmVoto"

header="Voto" columnRendere d="#{s:hasRole('magistrado') or authenticator.getPapelAtual().getIdentificador() == 'Asses'}"> Teste <a:commandLink id="l inkVoto" r eRender="paiDiv" actio n="#{sessaoPautaProcessoVotoHome.voto(row)}" oncli ck="showLoading()" o ncomplete="hideLoading()" ajaxS ingle="true" rende red="#{authenticator.getOrgaoJulgadorAtual() == row.processoTrf.orgaoJulgador}"> <h:graph icImage rendered="#{(not empty sessaoPautaProcessoVotoHome.getVotoMagistrado(row )) and (sessaoPautaProcessoVotoHome.getVotoMagistrado(row).liberaVotoAntecipado == true)}" url="/img/search_green_16.png" title="Voto elaborado e liberado"/> <h:graph icImage rendered="#{(not empty sessaoPautaProcessoVotoHome.getVotoMagistrado(row )) and (sessaoPautaProcessoVotoHome.getVotoMagistrado(row).liberaVotoAntecipado == false)}" url="/img/search_yellow_16.png" title="Voto elaborado e no liberado"/> <h:graph icImage rendered="#{empty sessaoPautaProcessoVotoHome.getVotoMagistrado(row)}" url="/img/search_red_16.png" title="Voto no elaborado"/> </a:commandLink> </wi:column> <wi:column id="colunmRelatorio" header=" Relatrio" columnRe ndered="#{s:hasRole('magistrado') or authenticator.getPapelAtual().getIdentifica dor() == 'Asses'}"> <a:region renderRegionOnly="fals e" > <a:commandLink i d="linkRelatorio" reRender="paiDiv" action="#{sessaoPautaProcessoVotoHome.relatorio(row)}"

onclick="showLoading()" oncomplete="hideLoading()" ajaxSingle="true" rendered="#{authenticator.getOrgaoJulgadorAtual() == row.processoTrf.orgaoJul gador}"> <h:graph icImage rendered="#{(not empty sessaoPautaProcessoVotoHome.getRelatorioMagistrad o(row)) and (sessaoPautaProcessoVotoHome.getRelatorioMagistrado(row).liberaRelat orioAntecipado == true)}" url="/img/search_green_16.png" title="Relatrio elaborado e liberado"/> <h:graph icImage rendered="#{(not empty sessaoPautaProcessoVotoHome.getRelatorioMagistrad o(row)) and (sessaoPautaProcessoVotoHome.getRelatorioMagistrado(row).liberaRelat orioAntecipado == false)}" url="/img/search_yellow_16.png" title="Relatrio elaborado e no liberado"/> <h:graph icImage rendered="#{empty sessaoPautaProcessoVotoHome.getRelatorioMagistrado(row )}" url="/img/search_red_16.png" title="Relatrio no elaborado"/> </a:commandLink> </a:region> </wi:column> </wi:dataTable> </s:div> <!--Div para o form de voto--> <s:div id="votoProcesso" rendered="#{sessaoPautaProcessoVotoHome.sessaoPauta ! = null}" style="float:left; width:100%; margin-top:25px"> <wi:dataForm formId="votoProcessoForm" formTitle="Voto do Proc esso - #{sessaoPautaProcessoVotoHome.sessaoPauta.processoTrf.numeroProcesso}"> <wi:selectOneMenuEntity id="tipoProcesso DocumentoVoto" label="Tipo do Documento" value="#{processoDocumentoHome.instance.tipoProcessoDocumento}" disabled="true" items="#{tipoProcessoDocumentoAcordaoItems}" noSelectionLabel="#{parametroUtil.tipoProcessoDocumentoVoto}"> <a:support event="onchange" ajaxSingle="t

rue" reRender="div modeloDocumento"/> </wi:selectOneMenuEntity> <a:region renderRegionOnly="false" > <wi:selectOneMenuEntity id="mode loDocumentoComboVoto" label="#{messages['modeloDocumento.modeloDocumento']}" value="#{processoDocumentoHome.modeloDocumentoCombo}" items="#{modeloDocumentoProcLocalItems}" noSelectionLabel="Selecione..." rendered="#{!sessaoPautaProcessoVotoHome.votoMagistradoAssinado}"> <a:support reRender="mod eloDocumentoVoto" event ="onchange" actio n="#{sessaoPautaProcessoVotoHome.processarModelo()}" ajaxS ingle="true" onsub mit="showLoading()" oncom plete="hideLoading()"/> </wi:selectOneMenuEntity> </a:region> <wi:selectOneMenuEnum id="tipoVotoMagist rado" label="Voto" value="#{sessaoPautaProcessoVotoHome.instance.tipoResultadoJulgamento}" items="#{sessaoPautaProcessoVotoHome.getVotoMagistradoValues()}" required="true" inNewLine="true" noSelectionLabel="Selecione..." disabled="#{sessaoPautaProcessoVotoHome.votoMagistradoAssinado}"> </wi:selectOneMenuEnum> <wi:selectBooleanCheckbox id="liberaVoto" styleClass="chec kbox" label="Liberar V oto?" value="#{sessaoP autaProcessoVotoHome.instance.liberaVotoAntecipado}" rendered="#{!ses

saoPautaProcessoVotoHome.votoMagistradoAssinado}"> </wi:selectBooleanCheckbox> <wi:selectBooleanCheckbox id="destacaDiscu ssao" styleClass="chec kbox" label="Destacar para Discusso?" value="#{sessaoP autaProcessoVotoHome.instance.destaqueSessao}" rendered="#{!ses saoPautaProcessoVotoHome.votoMagistradoAssinado}"> </wi:selectBooleanCheckbox> <wi:editor id="modeloDocumentoVoto" label="Modelo" value="#{sessaoPautaProcessoV otoHome.modeloDocumento}" requiredField="false" required="true" showVariables="false" onchange="clearSign()" readonly="#{sessaoPautaProces soVotoHome.votoMagistradoAssinado}" /> <ui:define name="buttons"> <wi:commandButton id="cadastrar" value="Gravar 0 1" action="#{sessa oPautaProcessoVotoHome.cadastrarVotoMagistrado()}" buttonStyle="mi n-width:75px; width:75px;" rendered="#{ses saoPautaProcessoVotoHome.instance.processoDocumentoVoto == null}" reRender="paiDi v"/> <wi:commandButton id="atualizar" value="Gravar 0 2" action="#{sessa oPautaProcessoVotoHome.updateVotoMagistrado()}" buttonStyle="mi n-width:75px; width:75px;" rendered="#{ses saoPautaProcessoVotoHome.instance.processoDocumentoVoto != null and !sessaoPauta ProcessoVotoHome.votoMagistradoAssinado}" reRender="paiDi v"/> <wi:commandButton id="remover" value="Remover Voto 03" action="#{sessa oPautaProcessoVotoHome.removerVotoMagistrado()}" buttonStyle="mi n-width:75px; width:auto;"

rendered="#{ses saoPautaProcessoVotoHome.instance.processoDocumentoVoto != null}" reRender="paiDi v"/> <s:div rendered="#{!sessaoPautaP rocessoVotoHome.votoMagistradoAssinado}"> <script> function close() { window.c lose(); } function useBase 64() { return ' false'; } function getData () { return tinyM CE.editors['#{formId}:modeloDocumentoVotoDecoration:modeloDocumentoVotoTextArea' ].getContent(); } function checkVa lidacao() { if ($('# {formId}:signature').value != '') { submitForm(); } else { } } </script> <s:div id="divVotoMagist radoApplet" rendered="#{authenticator.getPapelAtual().getIdentificador() != 'Ass es'}"> <applet width="1 40" height="25" id="certificacao" code="SmartCardSignerApplet" archive="#{util.contextPath}/certificado/InfoxSmartCardSignerApplet.jar"> <param n ame="formId" value="#{formId}" /> <param n ame="signButtonCaption" value="Assinar Digitalmente" /> <param n ame="certificationChainField" value="#{formId}:certChain" /> <param n ame="signatureField" value="#{formId}:signature" /> <param n ame="urlDownload" value="#{util.urlProject}/certificado/" /> <param n ame="getDataFunction" value="getData()" /> <param n ame="useBase64Function" value="useBase64()" /> <param n ame="functionPreSign" value="showLoading(); Richfaces.showModalPanel('mp_formVal

idar')" /> <param n ame="functionPosSign" value="checkValidacao();hideLoading()" /> <param n ame="debug" value="true" /> <param n ame="dataAtual" value="#{currentDatetime}" /> <param n ame="caListDownloadFile" value="#{util.urlProject}/downloadCaList.seam" /> </applet> </s:div> </s:div> <h:inputHidden id="certChain" va lue="#{processoDocumentoBinHome.certChain}"/> <h:inputHidden id="signature" va lue="#{processoDocumentoBinHome.signature}"/> <a:jsFunction name="submitForm" action="#{sessaoPautaProcessoVotoHome.as sinarVotoMagistrado()}" reRender="paiDiv" oncomplete="opener.refreshAcordaoPage(); alert('teste')"/> </ui:define> </wi:dataForm> </s:div> <!--Fim do Form do Voto--> <!--Div do Form do Relatorio--> <s:div id="relatorioProcesso" rendered="#{sessaoPautaProcessoVotoHome.sessaoPautaRe latorio != null}" style="float:left; width:100%; margin-top:25px"> <wi:dataForm formId="relatorioForm" formTitle="Relatrio do Proce sso - #{sessaoPautaProcessoVotoHome.sessaoPautaRelatorio.processoTrf.numeroProce sso}"> <wi:selectOneMenuEntity id="tipoProcesso DocumentoRelatorio" label="Tipo do Documento" value="#{processoDocumentoHome.instance.tipoProcessoDocumento}" disabled="true" items="#{tipoProcessoDocumentoAcordaoItems}" required="true" noSelectionLabel="#{parametroUtil.tipoProcessoDocumentoRelatorio}"> <a:support event="onchange" ajaxSingle="t rue" reRender="div

modeloDocumento"/> </wi:selectOneMenuEntity> <s:div id="relModeloDiv"> <wi:selectOneMenuEntity id="mode loDocumentoComboRelatorio" label="#{messages['model oDocumento.modeloDocumento']}" value="#{processoDocumen toHome.modeloDocumentoCombo}" items="#{modeloDocumento ProcLocalItems}" noSelectionLabel="Seleci one..." rendered="#{!sessaoPauta ProcessoVotoHome.relatorioMagistradoAssinado}"> <a:support reRender="mDRela torio" event="onchange" action="#{sessao PautaProcessoVotoHome.processarModelo()}" ajaxSingle="true " onsubmit="showLo ading()" oncomplete="hide Loading()" /> </wi:selectOneMenuEntity> </s:div> <wi:selectBooleanCheckbox id="liberaRelatorio" styleClass="checkbox" label="Liberar Relatorio?" value="#{sessaoPautaProcessoVoto Home.instance.liberaRelatorioAntecipado}" rendered="#{!sessaoPautaProcesso VotoHome.relatorioMagistradoAssinado}"> </wi:selectBooleanCheckbox> <wi:editor id="mDRelatorio" label="Modelo" value="#{sessaoPautaProcessoV otoHome.modeloDocumento}" requiredField="false" required="true" showVariables="false" onchange="clearSign()" readonly="#{sessaoPautaProces soVotoHome.relatorioMagistradoAssinado}" /> <br /> <ui:define name="buttons"> <wi:commandButton id="cadastrar" value="Gravar" action="#{sessaoPautaPro cessoVotoHome.cadastrarRelatorioMagistrado()}" buttonStyle="min-width:7

5px; width:75px;" rendered="#{sessaoPautaP rocessoVotoHome.instance.processoDocumentoRelatorio == null}" reRender="paiDiv,relator ioProcesso"/> <wi:commandButton id="atualizar" value="Gravar" action="#{sessaoPautaPro cessoVotoHome.updateVotoMagistrado()}" buttonStyle="min-width:7 5px; width:75px;" rendered="#{sessaoPautaP rocessoVotoHome.instance.processoDocumentoRelatorio != null and !sessaoPautaProc essoVotoHome.relatorioMagistradoAssinado}" reRender="paiDiv"/> <wi:commandButton id="remover" value="Remover Relatrio" action="#{sessaoPautaPro cessoVotoHome.removerRelatorioMagistrado()}" buttonStyle="min-width:7 5px; width:120px;" rendered="#{sessaoPautaP rocessoVotoHome.instance.processoDocumentoRelatorio != null}" reRender="paiDiv"/> <s:div rendered="#{!sess aoPautaProcessoVotoHome.relatorioMagistradoAssinado}"> <script> function close() { window.close(); } function useBase64() { return 'false'; } function getData() { return tinyMCE.editors['#{formId}:mDRelatorioDecoration:mDRelatorioTextArea'].ge tContent(); } function checkValidacao() { if ($('#{formId}:signature').value != '') { submitForm(); } else { } } </script> <div id="divVoto

MagistradoApplet"> <applet width="140" height="25" id="certificacao" code="SmartCardSignerApplet" archive="#{util.contextPath}/certificado/InfoxSmartCardSignerApplet.jar"> <param name="formId" value="#{formId}" /> <param name="signButtonCaption" value="Assinar Digitalmente" /> <param name="certificationChainField" value="#{formId}:certChain" /> <param name="signatureField" value="#{formId}:signature" /> <param name="urlDownload" value="#{util.urlProject}/certificado/" /> <param name="getDataFunction" value="getData()" /> <param name="useBase64Function" value="useBase64()" /> <param name="functionPreSign" value="showLoading(); Richfaces.showModalPanel('mp _formValidar')" /> <param name="functionPosSign" value="checkValidacao();hideLoading()" /> <param name="debug" value="true" /> <param name="dataAtual" value="#{currentDatetime}" /> <param name="caListDownloadFile" value="#{util.urlProject}/downloadCaList.seam" /> </applet > </div> </s:div> <h:inputHidden id="certC hain" value="#{processoDocumentoBinHome.certChain}"/> <h:inputHidden id="signa ture" value="#{processoDocumentoBinHome.signature}"/> <a:jsFunction name="submitForm" action="#{sessaoPautaProcessoVot oHome.assinarRelatorioMagistrado()}" reRender="paiDiv" oncomplete="opener.refreshAcorda oPage();alert('teste')"/> </ui:define> </wi:dataForm> </s:div> <!-- Fim do Form do Relatorio--> </s:div> </rich:tab> <!-- =========================== Grid Votao Antecipada =======================

==== --> <rich:tab label="Votao Antecipada" id="votacaoAntecipadaTab" > <s:div id="processosVotacaoAntecipada"> <wi:searchForm formId="#{id}votacaoAntecipadaSearch" formTitle="Pesquisar Processo s para Votao Antecipada" bean="#{sessaoPautaVotacaoAnt ecipadaList}" opened="false" searchReRender="gridVotacaoAn tecipada" clearReRender="processosVotac aoAntecipada, gridVotacaoAntecipada" widthSearchForm="100%" showLogicOperator="false"> <wi:inputNumeroProcesso id="nrProcesso" labe l="Processo" showLock="false" valu e="#{sessaoPautaVotacaoAntecipadaList.numeroProcesso.numeroProcesso}"/> <wi:tree assignTo="sessaoPautaVotacaoAntecipadaL ist.classeJudicial" id="classe" tree="#{classeJudicialTree}" showLock="false" icon="/img/nivelTree.gif" iconLeaf="/img/file.gif" label="#{messages['relacaoJulga mento.classeJudicial']}"/> <wi:selectOneMenuEntity id="orgaoJulgador" labe l="#{messages['relacaoJulgamento.orgaoJulgador']}" valu e="#{sessaoPautaVotacaoAntecipadaList.orgaoJulgador}" items="#{orgaoJulgadorSessaoComposicaoItems}" noSelectionLabel="[Todos]"/> <wi:tree assignTo="sessaoPautaVotacaoAntecipadaL ist.assunto" id="assunto" showLock="false" tree="#{assuntoTrfTree}" icon="/img/nivelTree.gif" iconLeaf="/img/file.gif" label="#{messages['relacaoJulga mento.assuntoTrf']}"/> <wi:selectOneMenuEnum id="idTipoInscricaoOab" label="#{messages[ 'relacaoJulgamento.tipoInclusao']}" value="#{sessaoPau taVotacaoAntecipadaList.entity.tipoInclusao}"

items="#{sessaoPau taVotacaoAntecipadaList.tipoInclusaoValues}" noSelectionLabel=" Todos"/> <ui:include src="/WEB-INF/xhtml/components/form/ cpfOuCnpjConsultaProcesso.xhtml"/> <wi:inputText id="relator" label="#{messages['rel acaoJulgamento.relator']}" showLock="false" value="#{sessaoPautaVo tacaoAntecipadaList.relator}"/> <wi:tree assignTo="sessaoPautaVotacaoAntecipadaL ist.tipoPessoa" id="tipoPessoa" showLock="false" tree="#{tipoPessoaTree}" icon="/img/nivelTree.gif" iconLeaf="/img/file.gif" label="#{messages['relacaoJulga mento.tipoPessoa']}"/> <wi:inputText id="nomeParte" label="#{messages['rel acaoJulgamento.nomeParte']}" showLock="false" inNewLine="true" value="#{sessaoPautaVo tacaoAntecipadaList.nomeParte}"/> <wi:inputDataPeriodo id="dataDistribuicaoSPVA" label=" #{messages['relacaoJulgamento.periodoDist']}" showLock="false" valueDateFrom="#{se ssaoPautaVotacaoAntecipadaList.dataInicio}" valueDateTo="#{sess aoPautaVotacaoAntecipadaList.dataFim}" /> <wi:inputDataPeriodo id="dataAtualizacaoSPVA" label=" #{messages['relacaoJulgamento.periodoConclusao']}" showLock="false" valueDateFrom="#{se ssaoPautaVotacaoAntecipadaList.dataInicioAtualizacao}" valueDateTo="#{sess aoPautaVotacaoAntecipadaList.dataFimAtualizacao}" /> <wi:selectBooleanCheckbox id="revisado" value="#{sessaoPautaVotacaoAntecipadaList.revisado}" label="#{messages['relacaoJulgamento.revisado']}"/> </wi:searchForm> </s:div> <s:div id="divPai" >

<s:div id="gridVotacaoAntecipada" style="float:left; width:100%" > <wi:dataTable values="#{sessaoPautaVotacaoAntecipadaList .list(10)}" bean="#{sessaoPautaVotacaoAnte cipadaList}" panelWidth="98%" tableTitle="#{messages['votaca oAntecipada.titleGrid']}" id="relacaojulgamentoList2"> <ui:define name="toolBar"> <table> <tr> <td> <a:commandLink onclick="openPopUp('processoTrfPopUp', '#{util.urlProject}/Processo/ConsultaProc esso/Detalhe/listProcessoCompleto.seam?idProcessoTrf=#{row.processoTrf.idProcess oTrf}');" rendered="#{(s:hasRole('magistrado') or s:hasRole('servidor')) and (orgaoJulgado rAtual != null and row.processoTrf.orgaoJulgador == orgaoJulgadorAtual)}"> <h:graph icImage title="Detalhe do Processo" url="#{a4jSkin.imgIconView}"/> </a:commandLink> <a:commandLink onclick="openPopUp('processoTrfPopUp', '#{util.urlProject}/Processo/DetalheProce ssoRevisor/listView.seam?idProcessoTrf=#{row.processoTrf.idProcessoTrf}');" rendered="#{processoTrfHome.isRevisor(row.processoTrf)}"> <h:graph icImage title="Detalhe do Processo" url="#{a4jSkin.imgIconView}"/> </a:commandLink> <a:commandLink onclick="openPopUp('processoTrfPopUp', 'DetalheProcesso/listView.seam?id=#{row.p rocessoTrf.idProcessoTrf}');" rendered="#{s:hasRole('idSecretarioSessao')}"> <h:graph icImage title="Detalhe do Processo" url="#{a4jSkin.imgIconView}"/> </a:commandLink> </td> </tr> </table> </ui:define> <wi:columnOutputText columnId="processoTrf.proce sso.numeroProcesso" header= "Processo" value=" #{row.processoTrf.numeroProcesso}"/>

<wi:columnOutputTextIdent columnId="processoTrf. classeJudicial.classeJudicial" header="#{messages['relacaoJulgamento.classeJudicial']}" value="#{row.processoTrf.classeJudicial}"/> <wi:columnDataList columnId="processoTrf.assunto TrfList" header="#{mes sages['relacaoJulgamento.assuntoTrf']}" hideOrder="tr ue" value="#{row. processoTrf.assuntoTrfList}"/> <wi:columnOutputText columnId="polos" header="#{m essages['relacaoJulgamento.polos']}" value="#{ro w.processoTrf.listaParteAtivo.size()>0 ? (row.processoTrf.listaParteAtivo.size() > 1 ? row.processoTrf.listaParteAtivo.get(0).toString().concat(' e outros') : r ow.processoTrf.listaParteAtivo.get(0).toString()) : ''} X #{row.processoTrf.listaPartePassivo.size()>0 ? (row.processoTrf.listaPartePassiv o.size() > 1 ? row.processoTrf.listaPartePassivo.get(0).toString().concat(' e ou tros') : row.processoTrf.listaPartePassivo.get(0).toString()) : ''}" hideOrder=" true"/> <wi:columnOutputText columnId="relator" header= "#{messages['relacaoJulgamento.relator']}" hideOrd er="true" value=" #{processoTrfHome.getRelator(row.processoTrf)}"/> <wi:columnDataList columnId="processoTrf.orgaoJu lgador" header="#{mes sages['relacaoJulgamento.orgaoJulgador']}" hideOrder="tr ue" value="#{row. processoTrf.orgaoJulgador}"/> <wi:columnEnum columnId="tipoInclusao" header="#{messages['relac aoJulgamento.tipoInclusao']}" value="#{row.tipoInclusao }"/> <wi:column id="colunmSustentacao" header="Sustentao Oral?" hideOrder="true" > <a:form> <h:selectBooleanCheckbox id="sus

tentacaoOral" value="#{row.sustentacaoOral}" disabled="#{authenticator.getUsuarioLocalizacaoAtual().getPapel().getIdentifica dor() != 'idSecretarioSessao'}"> <a:suppo rt event="onclick" action="#{sessaoPautaRelacaoJulgamentoHome.setSust(row)}" reRender="pageBody" onsubmit="showLoading()" oncomplete="hideLoading()"/> </h:selectBooleanCheckbox> </a:form> </wi:column> <wi:column id="colunmPreferencia" header="Preferncia?" hideOrder="true"> <a:form> <h:selectBooleanCheckbox id="pre ferencia" value="#{row.preferencia}" showLock="false" disabled="#{authenticator.getUsuarioLocalizacaoAtual().getPapel().getIdentifica dor() != 'idSecretarioSessao'}"> <a:suppo rt event="onclick" action="#{sessaoPautaRelacaoJulgamentoHome.setPref(row)}" reRender="pageBody" onsubmit="showLoading()" oncomplete="hideLoading()"/> </h:selectBooleanCheckbox> </a:form> </wi:column> <wi:column id="colunmVoto" header="Voto" hideOrder="true" columnRendered="#{s:hasRole(' magistrado') or authenticator.getUsuarioLocalizacaoAtual().getPapel().getIdentif icador() == 'Asses'}"> <a:region renderRegionOnly="fals e" > <a:form> <a:commandLink status=": status"

id="voto" r eRender="divPai" actio n="#{sessaoPautaProcessoVotoHome.gravarProcesso(row)}"> <h:graphicImage rendered="#{empty sessaoPautaProcessoVotoHome.getVotoMagistrado(row)}" url="/img /search_16.png"/> <h:graphicImage rendered="#{not empty sessaoPautaProcessoVotoHome.getVotoMagistrado(row)}" url=" /img/search_green_16.png"/> </a:commandLink> </a:form> </a:region> </wi:column> </wi:dataTable> </s:div> <s:div id="votacaoAntecipada" rendered="#{sessaoPautaProcessoVotoHome.processo != n ull}" style="float:left; width:100%; margin-top:25px"> <wi:dataForm formId="votacaoAntecipadaForm" formTitle="Processo - #{sessaoPauta ProcessoVotoHome.processo.getNumeroProcesso()}"> <s:div id="usarModeloDiv"> <table> <tr> <td colspan="2" > <s:div id="divTipoDocume nto"> <wi:selectOneMen uEntity id="#{f.id}tipoProcessoDocumento" label="#{messages['votacaoAntecipada.tipoDocumento']}" items="#{tipoProcessoDocumentoItemsVoto}" disabled="true" value="#{processoDocumentoHome.instance.tipoProcessoDocumento}" noSelectionLabel="Voto"/> </s:div> <wi:selectOneMenuEntity id="modeloDocumentoCombo" label="#{messages['modeloDocumento.modeloDocumento']}" value="#{processoDocumentoHome.modeloDocumentoCombo}" items="#{modeloDocumentoLocalPeticaoInicialItems}" rendered="#{!sessaoPautaProcessoVotoHome.verificaAssinatura()}" noSelectionLabel="Selecione..."> <a:support reRender="modeloDocumento"

event="onchange" action="#{sessaoPautaProcessoVotoHome.processarModelo()}" ajaxSingle="true" onsubmit="showLoading()" oncomplete="hideLoading()" /> </wi:selectOneMenuEntity > <a:region renderRegionOn ly="true"> <wi:selectOneMen uEnum id="tipoVoto" label="#{messages['votacaoAntecipada.tipoVoto']}" value="#{sessaoPautaProcessoVotoHome.instance.tipoResultadoJulgamento} " items="#{sessaoPautaProcessoVotoHome.getVotoEnumValues()}" disabled="#{sessaoPautaProcessoVotoHome.verificaAssinatura()}" required="true"> <a:support event="onchange" reRender="tablediv" ajaxSingle="true" action="#{sessaoPautaProcessoVotoHome.limparLista()}"/> </wi:selectOneMe nuEnum> <s:div id="table div"> <s:div i d="idVotoList" style="width:300px" rendered="#{(sessaoPautaProcessoVotoHome.instance.tipoResultadoJulgamento == 'CP ' or sessaoPautaProcessoVotoHome.instance.tipoResultadoJulgamento =='DR') and !s essaoPautaProcessoVotoHome.verificaAssinatura()}"> <wi:dataTable values="#{sessaoPautaProcessoVotoList.list(15)}" bean="#{sessaoPautaProcessoVotoList}" tableTitle="Processos" id="sessaoPautaProcessoVotoList">

<ui:define name="toolBar">

<a:form> <a:region renderRegionOnly="true"> <h:selectBooleanCheckbox id="toolbarSessaoVoto" styleClass="checkbox" value="#{row.check}"> <a:support event="onclick" action="#{sessaoPautaProcessoVotoHome.criarLista(row)}" ajaxSingle="true" onsubmit="showLoading()" oncomplete="hideLoading()" reRender="toolbarSessaoVoto"/> </h:selectBooleanCheckbox> </a:region> </a:form> </ui:define> <wi:columnOutputText columnId="processoTrf.orgaoJulgador.orgaoJulgador" header="#{messages['votacaoAntecipada.gabinete']}" value="#{row.processoTrf.orgaoJulgador}"/>

<wi:columnOutputText columnId="usuarioVogal" header="#{messages['votacaoAntecipada.magistrado']}" value="#{row.usuarioVogal}"/> </wi:dataTable> </s:div> </s:div> </a:region> <wi:selectBooleanCheckbo x id="impedimentoSuspeicao" value="#{sessaoPautaProcessoVotoHome.instance.impedimentoSuspeicao}" rendered="#{!sessaoPautaProcessoVotoHome.verificaAssinatura()}" label="#{messages['votacaoAntecipada.impedimentoSuspeicao']}" />

<wi:selectBooleanCheckbo x id="destaqueSessao" value="#{sessaoPautaProcessoVotoHome.instance.destaqueSessao}" rendered="#{!sessaoPautaProcessoVotoHome.verificaAssinatura()}" label="#{messages['votacaoAntecipada.destaqueSessao']}" /> </td> </tr> <tr> <td width="50%" > <wi:editor id="modeloDoc umento" label ="Modelo" value ="#{sessaoPautaProcessoVotoHome.modeloDocumento}" requi redField="false" requi red="true" reado nly="#{sessaoPautaProcessoVotoHome.verificaAssinatura()}" showV ariables="false" oncha nge="clearSign()" /> </td> <td width="50%" > <s:div id="votosAlterado sDiv" style="width: 46%; margin-left:52%; margin-top:-25%; float:left;"> <wi:dataTable va lues="#{sessaoPautaProcessoVotosAlteradosList.list(15)}" bean="#{sessaoPautaProcessoVotosAlteradosList}" tableTitle="Votos Alterados" panelWidth="350px" id="votosAlteradosGrid"> <ui:defi ne name="toolBar"> <s:link target="idVoto#{row}" propagation="none" view="/Sessao/RelacaoJulgamento/sessaoVotoPopUp.seam" onclick="openPopUp('idVoto#{row}', 'about:blank');"> <f:param name="idBin" value="#{row.processoDocumentoVoto.processoDocumentoBin.id ProcessoDocumentoBin}" />

<f:param name="idProcessoDoc" value="#{row.processoDocumentoVoto.idProcessoDocum ento}" /> <h:graphicImage title="Visualizar" url="/img/file.gif" /> </s:link> </ui:def ine> <ui:para m name="changeColor" value="#{sessaoPautaProcessoVotoHome.instance.processoDocumentoVoto == null ? 'background-color: #FFFFFF' : (row.dataAlteracaoVoto > sessaoPautaProcessoVotoHome.instance. dataAlteracaoVoto ? 'background-color: #CCCCCC' : 'background-color: #FFFFFF')}" /> <wi:colu mnOutputText columnId="processoTrf.orgaoJulgador.orgaoJulgador" header="#{messages['votacaoAntecipada.gabinete']}" columnStyle="#{changeColor}" value="#{row.processoTrf.orgaoJulgador}"/> <wi:colu mnOutputText columnId="usuarioDesembargadorAcompanhado" header="#{messages['votacaoAntecipada.desembargador']}" columnStyle="#{changeColor}" value="#{row.usuarioDesembargadorAcompanhado}"/> <wi:colu mnDateTime columnId="dataAlteracaoVoto1" header="#{messages['votacaoAntecipada.dataAlteracaoVoto']}" columnStyle="#{changeColor}" value="#{row.dataAlteracaoVoto}"/> </wi:dataTable> </s:div> </td> </tr> </table> </s:div> <ui:define name="buttons"> <wi:commandButton action="#{sess aoPautaProcessoVotoHome.gravar()}" id="cadastrar" rendered="#{!sessaoPautaProcessoVotoHome.verificaAssinatura()}" value="Gravar"

reRender="pageBody" /> <wi:commandButton action="#{sess aoPautaProcessoVotoHome.removerVotocaoAnt()}" id="remover" rendered="#{sessaoPautaProcessoVotoHome.instance.processoDocumentoVoto != null }" value="Remover" reRender="pageBody" /> <s:div rendered="#{!sessaoPautaProcessoV otoHome.verificaAssinatura()}"> <script> function close() { window.close(); } function useBase64() { return 'false'; } function getData() { return tinyMCE.edit ors['#{formId}:modeloDocumentoDecoration:modeloDocumentoTextArea'].getContent(); } function checkValidacao() { if ($('#{formId}:signa ture').value != '') { submitForm(); } else { } } </script> <s:div id="divApplet" rendered=" #{authenticator.getUsuarioLocalizacaoAtual().getPapel().getIdentificador() != 'A sses'}"> <applet width="140" heig ht="25" id="certificacao" code="Sm artCardSignerApplet" archive= "#{util.contextPath}/certificado/InfoxSmartCardSignerApplet.jar"> <param name="for mId" value="#{formId}" /> <param name="sig nButtonCaption" value="Assinar Digitalmente" /> <param name="cer tificationChainField" value="#{formId}:certChain" /> <param name="sig natureField" value="#{formId}:signature" /> <param name="url Download" value="#{util.urlProject}/certificado/" /> <param name="get DataFunction" value="getData()" /> <param name="use Base64Function" value="useBase64()" /> <param name="fun ctionPreSign" value="Richfaces.showModalPanel('mp_formValidar')" />

<param name="fun ctionPosSign" value="checkValidacao()" /> <param name="deb ug" value="true" /> <param name="dat aAtual" value="#{currentDatetime}" /> <param name="caL istDownloadFile" value="#{util.urlProject}/downloadCaList.seam" /> </applet> </s:div> </s:div> <h:inputHidden id="certChain" value="#{proc essoDocumentoBinHome.certChain}"/> <h:inputHidden id="signature" value="#{proc essoDocumentoBinHome.signature}"/> <a:jsFunction name="submitForm" action="#{sessaoPautaProcessoV otoHome.assinarDocumento()}" reRender="pageBody"/> </ui:define> </wi:dataForm> </s:div> </s:div> </rich:tab> </ui:define> </ui:composition> VALFRIDO BATISTA SANTIAGO JUNIOR Direo de Secretaria (SREEO) / Diretor de Secretaria Setor do Arquivo (SREEO) / http://localhost:8080/pje2_dev/Processo/movimentar.seam?idProcesso=393 if ( parseInt(obj.value) > 90 } mpAssociarOutrosParticipantesProcesso.xhtml Foi retirado algumas <wi:ajaxDiv> e colocados alguns parmetros, principalmente no dataForm.xhtml. parseInt(obj.value) < -90 ) {

No arquivo (PJE2\Sessao\RelacaoJulgamento\sessaoPopUp.xhtml) foi retirado um script (Richfaces.showModalPanel('mp_formValidar')) dos ids (certificacao), refs #1585 Foi feita uma modificao no arquivo (PJE2\Painel\painel_usuario\Painel_Usuario_Magi strado_2_Grau\sessaoJulgamentoPopUp.xhtml) dentro da aba (id="tabSessaoNaoRealizada"). A modificao foi feita poque no estava e xibindo o mensagem de cadastro do voto conforme a descrio do (Bug Interno #1446).

divVotoMagistradoApplet Richfaces.showModalPanel('mp_formValidar') No arquivo (PJE2\Sessao\RelacaoJulgamento\sessaoPopUp.xhtml) foi retirado um scr ipt (Richfaces.showModalPanel('mp_formValidar')) dos ids (certificacao).

Foi modificado o mtodo update() da classe ProcessoTrfHome.java e foi criado 2 arq uivos (cadastroPartePessoaFisicaOutrosParticipantes.xhtml, cadastroPartePessoaJuridica OutrosParticipantes.xhtml) para tirar as incompatibilidade nos navegadores e adaptado no arquivo (mpAssocia rOutrosParticipantesProcesso.xhtml). Analise de incompatibilidade entre os navegadores. Bom dia pessoal. A Microsoft anunciou mundialmente nesta (segunda-feira dia 14) o lanamento do seu novo navegador Windows Internet Explorer 9, apenas para os sistemas operacionai s (Windows Vista ou 7). Com isso queria discutir se de fato o contrato da Infox "A respeito dos navegado res" seria para os navegadores com as verses mas novas no mercado, se for o caso como seria essa mudana aqui na Infox e para os cliente ?, levando em conta o impa cto que isso vai ocasionar. Alison Buss de Arruda Infox Tecnologia da Informao Ltda alisson@infox.com.br Desenvolvedor / Usabilidade - Matriz Aracaju Tel.: +55 79 3211-5122 Ramal: 213

0800009-64.2011.4.05.0000

Pesquisa de tcnicas de inovaes em usabilidade para web: descrio...

<s:div id="idEditarModeloDocumento"> <wi:datalist home="#{processoDocumentoHome}" bean="#{processoTrfDocumentoGrid}" gridId="processoDocumentoGridTab" toolBar="none" title="#{processoTrfHome.instance.proces so.processoDocumentoList.size() > 0 ? 'Documentos' : 'Documentos - No existem Doc umentos Anexados ao Processo.'}" headerToolBar="none" showMsg="false"> #{currentTime}

<script type="text/javascript"> <!-alert("Teste"); jQuery("#processoDocumentoGridTa bDiv tr:has(td:contains('No Validado'))").css("background-color", "#DDDDDD"); jQuery("#processoDocumen toGridTabDiv tr:has(.inativo)").css("background-color", "#dddddd").addClass("ina tivo"); --> </script> </wi:datalist> </s:div> <a:form> <a:jsFunction name="fRender" reRender="idEditarM odeloDocumento"/> </a:form> <script type="text/javascript"> <!-function fRender() { location = location.href; } --> </script>

No arquivo taskEvents.xhtml foi modificado a tab para client e na classe TarefaEve ntoHome.java foi modificado o metodo public List<Agrupamento> getAgrupamentos() para no retorna mas nulo e j nos outros arquivos foi retirado alguns forms e corri gido reRender.

No arquivo taskEvents.xhtml foi modificado a tab para "client" e na classe "TarefaEventoHome.java" foi modificado o metodo "getAgrupamentos()" para no retorna mas nulo e j nos outros arquivos foi retirado alguns forms e corrigido reRender, refs #1772 LIST ################################################################################ ######################## <rich:tab id="tabProcessoAudienc ia" label="Audincia " status=":statu s" rendered="true " action="#{proc essoAudienciaHome.newInstance()}"> <ui:include ocesso/ConsultaProcesso/Detalhe/include/abaProcessoAudiencia.xml" /> src="/Pr

</rich:tab> ################################################################################ ##########################

comboRepresentantePassivo, passo2AssociarTestemunhaPoloPassivoAudiencia, passo3AssociarTestemunhaPoloPassivoAudiencia inNewLine = "true"

Boa tarde Lanne. Conforme conversamos anteriormente, o grupo me passou a data da viagem, que ser no dia 04/07/2011 e gostaria de uma confirmao das frias, para poder me antec ipar no pagamento das parcelas e com os demais planejamentos. A respeito de quem poderia me substituir nas frias, isso j foi definido, a questo da usabilidade o Douglas Nunes Carvalho vai ficar responsvel por essa part e, j a parte do desenvolvimento pode ficar caso for necessrio Marlon Assis ou com auxilio de Allan Vincius Rezende. Grato pela ateno! Alison Buss de Arruda Infox Tecnologia da Informao Ltda alisson@infox.com.br Desenvolvedor Web \ Usabilidade - Matriz Aracaju Tel.: +55 79 3211-5122 Ramal: 213 lanne@infox.com.br sarabarros@infox.com.br, breno@infox.com.br, fabiosantos@infox.com.br, douglasca rvalho@infox.com.br, marlonassis@infox.com.br, allan@infox.com.br

##ProcessoParteExpedienteHome.java public Boolean podeTomarCiencia(ProcessoDocumento processoDocumento) { if(processoDocumento.getTipoProcessoDocumento() == null){ if(processoDocumento.getTipoProcessoDocumento().toString ().equals("Expediente")){ String sql = "select o from ProcessoDocumentoExp ediente o " + "where o.processoDocumento = :processoDocumento" ;

Query query = EntityUtil.createQuery(sql); query.setParameter("processoDocumento", processo Documento); if(query.getResultList().size() > 0){ ProcessoDocumentoExpediente processoDocu mentoExpediente = (ProcessoDocumentoExpediente) query.getResultList().get(0); String sql2 = "select o from ProcessoPar teExpediente o " + "where o.processoExpediente = :processoE xpediente"; Query query2 = EntityUtil.createQuery(sq l2); query2.setParameter("processoExpediente" , processoDocumentoExpediente.getProcessoExpediente()); ProcessoParteExpediente processoParteExp ediente = (ProcessoParteExpediente) query2.getResultList().get(0); if (podeTomarCiencia(processoParteExpedi ente)){ return true; }else{ return false; } } } } return true; } ##TemplateInformacoesProcesso.xhtml <s:div id="idEditarModeloDocumento"> <wi:datalist home="#{processoDocumentoHome}" bean="#{processoTrfDocumentoGrid}" gridId="processoDocumentoGridTab" toolBar="none" title="#{processoTrfHome.instance.processo.processoDocumentoList .size() > 0 ? 'Documentos' : 'Documentos - No existem Documentos Anexados ao Proc esso.'}" headerToolBar="none" showMsg="false"> <script type="text/javascript"> <!-jQuery("#processoDocumentoGridTabDiv tr:has(td:c ontains('No Validado'))").css("background-color", "#DDDDDD"); --> </script> </wi:datalist> </s:div>

##IdentificarSigilo.xhtml <?xml version="1.0" encoding="ISO-8859-1"?> <!-IBPM - Ferramenta de produtividade Java Copyright (c) 1986-2009 Infox Tecnologia da Informao Ltda.

Este programa software livre; voc pode redistribu-lo e/ou modific-lo sob os termos da GNU GENERAL PUBLIC LICENSE (GPL) conforme publicada pela Free Software Foundation; verso 2 da Licena. Este programa distribudo na expectativa de que seja til, porm, SEM NENHUMA GARANTIA; nem mesmo a garantia implcita de COMERCIABILIDADE OU ADEQUAO A UMA FINALIDADE ESPECFICA. Consulte a GNU GPL para mais detalhes. Voc deve ter recebido uma cpia da GNU GPL junto com este programa; se no, veja em http://www.gnu.org/licenses/ --> <ui:composition xmlns="http://www.w3.org/1999/xhtml" xmlns:s="http://jboss.com/products/seam/taglib" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html" xmlns:a="http://richfaces.org/a4j" xmlns:rich="http://richfaces.org/rich"> <ui:param name="isAtivo" value="#{empty props.ativo or props.ativo == 'f alse' ? true : (empty props.campoAtivo ? row.ativo : expressions.createValueExpr ession('#{row.'.concat(props.campoAtivo).concat('}')).value)}" /> <ui:param name="styleClass" value="#{empty props.styleClass ? (isAtivo ? '' : 'inativo') : props.styleClass}" /> <ui:param name="styleClass" value="#{empty props.styleClassExpression ? props.styleClass : expressions.createValueExpression('#{'.concat(props.styleClas sExpression).concat('}')).value}" /> <ui:param name="escape" value="#{empty props.escape ? true : props.escap e}" /> <s:div style="width: 100%;" rendered="#{isAtivo}"> <h:outputText value="#{c.value}" escape="#{escape}" rendered="#{not row. documentoSigiloso}"/> <h:outputText value="#{c.value} - (Sigiloso)" escape="#{escape}" style="color: red;" rendered="#{row.documentoSigiloso}"/> </s:div> <s:div style="width: 100%;" styleClass="inativo" rendered="#{!isAtivo}"> <h:outputText value="#{c.value}" escape="#{escape}" rendered="#{not row. documentoSigiloso}"/> <h:outputText value="#{c.value} - (Sigiloso)" escape="#{escape}" style="color: red;" rendered="#{row.documentoSigiloso}"/> </s:div> </ui:composition>

Foi modificado o arquivo "identificarSigilo.xhtml" do projeto PJE2, e fo i retirado uma linha de cdigo javascript do arquivo "templateInformacoesProcesso. xhtml". Com essas modificaes o bug 2085 foi corrigido, refs #2085 <wi:inputText id="#{f.id}" value="#{search[f.id]}" label="#{label}" size="15"

maxlength="15" template="/WEB-INF/xhtml/components/templates/ view.xhtml"> <wi:mask id="#{f.id}" mask="999.999.999-99"/> <ui:insert/> </wi:inputText>

############################################################### <wi:inputText id="#{f.id}" value="#{search[f.id]}" label="#{label}" template="/WEB-INF/xhtml/components/templates/view.xhtml"> <wi:mask id="#{f.id}" mask="999.999.999-99"/> </wi:inputText> ############################################################### <wi:inputCpf id="#{f.id}" value="#{search[f.id]}" label="#{label}" template="/WEB-INF/xhtml/components/templates/ view.xhtml"> <ui:insert/> </wi:inputCpf>

Bug Bug Bug Bug Bug Bug Bug Bug Bug Bug Bug Bug Bug Bug Bug Bug Bug

Interno Interno Interno Interno Interno Interno Interno Interno Interno Interno Interno Interno Interno Interno Interno Interno Interno

#2426, #2425, #2424, #2422, #2419, #2418, #2417, #2415, #2414, #2412, #2410, #2409, #2408, #2407, #2406, #2405, #2403,

A4J.AJAX.Submit('j_id380:j_id399','j_id380',event,{'status':'_viewRoot:s tatus','oncomplete':function(request,event,data){hideLoading();;},'similarityGro upingId':'j_id380:idVoltar','parameters':{'j_id380:idVoltar':'j_id380:idVoltar'}

,'actionUrl':'/pje2_dev/Processo/movimentar.seam'} );return false;

<ui:param name="tooglesWidth" value="49%"/> <div style="position: relative; width: #{tooglesWidth}; height: 300px; float: left;"> </div> <div style="position: relative; width: #{tooglesWidth}; height: 300px; float: right;"> </div>

Você também pode gostar