Java tutorial
/*** Copyright (c) 2012 - 2020 Hrcules S. S. Jos Este arquivo parte do programa Oramento Domstico. Oramento Domstico um software livre; voc pode redistribui-lo e/ou modific-lo dentro dos termos da Licena Pblica Geral Menor GNU como publicada pela Fundao do Software Livre (FSF); na verso 2.1 da Licena. Este programa distribudo na esperana que possa ser til, mas SEM NENHUMA GARANTIA; sem uma garantia implcita de ADEQUAO a qualquer MERCADO ou APLICAO EM PARTICULAR. Veja a Licena Pblica Geral Menor GNU em portugus para maiores detalhes. Voc deve ter recebido uma cpia da Licena Pblica Geral Menor GNU sob o nome de "LICENSE.TXT" junto com este programa, se no, acesse o site do projeto no endereco https://github.com/herculeshssj/orcamento ou escreva para a Fundao do Software Livre(FSF) Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. Para mais informaes sobre o programa Oramento Domstico e seu autor entre em contato pelo e-mail herculeshssj@outlook.com, ou ainda escreva para Hrcules S. S. Jos, Av. Ministro Lafaeyte de Andrade, 1683 - Bl. 3 Apt 404, Marco II - Nova Iguau, RJ, Brasil. ***/ package br.com.hslife.orcamento.model; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Map; import java.util.TreeMap; import org.hibernate.criterion.Criterion; import org.hibernate.criterion.Restrictions; public class CriterioAuditoria { // Atributo que armazena os critrios selecionados private Map<String, Criterion> hibernateCriterions = new TreeMap<String, Criterion>(); private String usuario; private String transacao; private String classe; private Date inicio; private Date fim; public String getUsuario() { return usuario; } public void setUsuario(String usuario) { this.usuario = usuario; hibernateCriterions.remove("usuario"); if (usuario != null && !usuario.isEmpty()) { hibernateCriterions.put("usuario", Restrictions.eq("usuario", usuario)); } } public Date getInicio() { return inicio; } public void setInicio(Date inicio) { this.inicio = inicio; hibernateCriterions.remove("inicio"); if (inicio != null) { hibernateCriterions.put("inicio", Restrictions.ge("data", inicio)); } } public Date getFim() { return fim; } public void setFim(Date fim) { this.fim = fim; hibernateCriterions.remove("fim"); if (fim != null) { hibernateCriterions.put("fim", Restrictions.le("data", fim)); } } public String getClasse() { return classe; } public void setClasse(String classe) { this.classe = classe; hibernateCriterions.remove("classe"); if (classe != null && !classe.isEmpty()) { hibernateCriterions.put("classe", Restrictions.eq("classe", classe)); } } public String getTransacao() { return transacao; } public void setTransacao(String transacao) { this.transacao = transacao; hibernateCriterions.remove("transacao"); if (transacao != null && !transacao.isEmpty()) { hibernateCriterions.put("transacao", Restrictions.eq("transacao", transacao)); } } public List<Criterion> buildCriteria() { return new ArrayList<Criterion>(hibernateCriterions.values()); } }