1 package ecar.dao;
2
3 import java.util.ArrayList;
4 import java.util.Iterator;
5 import java.util.List;
6
7 import javax.servlet.http.HttpServletRequest;
8
9 import org.hibernate.HibernateException;
10 import org.hibernate.Transaction;
11
12 import comum.database.Dao;
13 import comum.util.Data;
14 import comum.util.Pagina;
15
16 import ecar.exception.ECARException;
17 import ecar.pojo.ItemEstLocalRevIettlr;
18 import ecar.pojo.ItemEstLocalRevIettlrPK;
19 import ecar.pojo.ItemEstruturarevisaoIettrev;
20 import ecar.pojo.LocalItemLit;
21
22
23
24
25
26
27
28 public class ItemEstLocalRevIettlrDAO extends Dao {
29
30
31
32
33
34
35
36
37
38 public ItemEstLocalRevIettlrDAO(HttpServletRequest request) {
39 super();
40 this.request = request;
41
42
43
44
45 }
46
47
48
49
50
51
52
53
54 public void setItemEstLocalRevIettlrDAO(HttpServletRequest request, ItemEstLocalRevIettlr itemEstrutLocal) throws ECARException {
55 itemEstrutLocal.setItemEstruturarevisaoIettrev((ItemEstruturarevisaoIettrev) this.buscar(ItemEstruturarevisaoIettrev.class, Integer.valueOf(Pagina.getParamStr(request, "codIettrev"))));
56 itemEstrutLocal.setLocalItemLit((LocalItemLit) new LocalItemDao(request).buscar(LocalItemLit.class, Long.valueOf(Pagina.getParamStr(request, "codLit"))));
57 }
58
59
60
61
62
63 public void setPK(ItemEstLocalRevIettlr itemEstrutLocal) {
64 ItemEstLocalRevIettlrPK chave = new ItemEstLocalRevIettlrPK();
65
66 chave.setCodIettrev(Integer.valueOf(itemEstrutLocal.getItemEstruturarevisaoIettrev().getCodIettrev().intValue()));
67 chave.setCodLit(Long.valueOf(itemEstrutLocal.getLocalItemLit().getCodLit().intValue()));
68
69 itemEstrutLocal.setComp_id(chave);
70 }
71
72
73
74
75
76
77 public void salvar(ItemEstLocalRevIettlr itemEstrutLocal) throws ECARException {
78 setPK(itemEstrutLocal);
79 try {
80 if (buscar(ItemEstLocalRevIettlr.class, itemEstrutLocal.getComp_id()) != null)
81 throw new ECARException("itemEstrutura.localItem.inclusao.jaExiste");
82 } catch (ECARException e) {
83 this.logger.error(e);
84 if (e.getMessageKey().equalsIgnoreCase("erro.objectNotFound")) {
85 super.salvar(itemEstrutLocal);
86 }
87 else
88
89 throw e;
90 }
91 }
92
93
94
95
96
97
98
99
100
101 public void excluir(String[] codigosParaExcluir, Integer codItemEstrutura) throws ECARException {
102 Transaction tx = null;
103
104 try {
105 ArrayList objetos = new ArrayList();
106
107 super.inicializarLogBean();
108
109 tx = session.beginTransaction();
110
111 for (int i = 0; i < codigosParaExcluir.length; i++) {
112 ItemEstLocalRevIettlrPK chave = new ItemEstLocalRevIettlrPK(Long.valueOf(codigosParaExcluir[i]), codItemEstrutura);
113 ItemEstLocalRevIettlr itemEstrutLocal = (ItemEstLocalRevIettlr) buscar(ItemEstLocalRevIettlr.class, chave);
114
115 session.delete(itemEstrutLocal);
116 objetos.add(itemEstrutLocal);
117 }
118
119 tx.commit();
120
121 if (super.logBean != null) {
122 super.logBean.setCodigoTransacao(Data.getHoraAtual(false));
123 super.logBean.setOperacao("EXC");
124 Iterator itObj = objetos.iterator();
125
126 while (itObj.hasNext()) {
127 super.logBean.setObj(itObj.next());
128 super.loggerAuditoria.info(logBean.toString());
129 }
130 }
131 } catch (HibernateException e) {
132 if (tx != null)
133 try {
134 tx.rollback();
135 } catch (HibernateException r) {
136 this.logger.error(r);
137 throw new ECARException("erro.hibernateException");
138 }
139 this.logger.error(e);
140 throw new ECARException("erro.hibernateException");
141 }
142 }
143
144
145
146
147
148
149
150
151
152 public String getAbrangencia(Integer codItemEstrutura) throws ECARException {
153 ItemEstruturarevisaoIettrev itemEstrutura = new ItemEstruturarevisaoIettrev();
154 ItemEstLocalRevIettlr itemEstrutLocal = new ItemEstLocalRevIettlr();
155
156 itemEstrutura = (ItemEstruturarevisaoIettrev) new ItemEstruturarevisaoIettrevDAO(request).buscar(ItemEstruturarevisaoIettrev.class, codItemEstrutura);
157 List lista = new ItemEstruturarevisaoIettrevDAO(request).ordenaSet(itemEstrutura.getItemEstLocalRevIettlrs(), "this.localItemLit.identificacaoLit", "asc");
158 Iterator it = lista.iterator();
159
160 if (it.hasNext()) {
161 itemEstrutLocal = (ItemEstLocalRevIettlr) it.next();
162 return itemEstrutLocal.getLocalItemLit().getLocalGrupoLgp().getIdentificacaoLgp();
163 }
164 else {
165 return "";
166 }
167
168 }
169
170 }