View Javadoc

1   /*
2    * Created on 27/10/2004
3    */
4   package ecar.dao;
5   
6   import java.util.List;
7   
8   import javax.servlet.http.HttpServletRequest;
9   
10  import comum.database.Dao;
11  import ecar.exception.ECARException;
12  import ecar.pojo.ExercicioExe;
13  import ecar.pojo.PeriodoExercicioPerExe;
14  
15  /**
16   * @author aleixo
17   */
18  public class PeriodoExercicioDao extends Dao {
19  
20    /**
21     * Construtor. Chama o Session factory do Hibernate
22     */
23    public PeriodoExercicioDao(HttpServletRequest request) {
24      super();
25      this.request = request;
26    }
27  
28    /**
29     * Exclui um periodo de exercicio se este nao estah associado com um
30     * exercicio.
31     * @author yuricooper
32     * @since 31/JUL/2007
33     * @param perExe
34     * @throws ECARException
35     */
36    public void excluir(PeriodoExercicioPerExe perExe) throws ECARException {
37  
38      if (contar(perExe.getExercicioExes()) > 0) {
39        throw new ECARException("perExe.exclusao.erro.exercicioExes");
40      }
41      else {
42        super.excluir(perExe);
43      }
44    }
45  
46    /**
47     * Salva um Periodo de Exercicio somente se não sobrepuser nenhum periodo de
48     * exercicio já cadastrado.
49     * @author yuricooper
50     * @since 31/JUL/2007
51     * @param exercicio
52     * @throws ECARException
53     */
54    public void salvar(PeriodoExercicioPerExe perExe) throws ECARException {
55      if (pesquisarDuplos(perExe, new String[] { "nomePerExe" }, "codPerExe").size() > 0)
56        throw new ECARException("perExe.validacao.registroDuplicado");
57      else {
58        super.salvar(perExe);
59      }
60    }
61  
62    /**
63     * Altera um periodo de exercicio somente se não sobrepoem nenhum outro
64     * periodo de exercicio.
65     * @author yuricooper
66     * @since 31/JUL/2007
67     * @param perExe
68     * @throws ECARException
69     */
70    public void alterar(PeriodoExercicioPerExe perExe) throws ECARException {
71      if (pesquisarDuplos(perExe, new String[] { "nomePerExe" }, "codPerExe").size() > 0)
72        throw new ECARException("perExe.validacao.registroDuplicado");
73      else {
74        super.alterar(perExe);
75      }
76    }
77  }