Commit 340dc5bc2d461c48f9bacb7da1ac3c94617edc62
1 parent
7a41928f
Exists in
master
Redmine #tarefa-4936
Showing
7 changed files
with
153 additions
and
53 deletions
Show diff stats
cit-almoxarifado-api/src/main/java/br/com/centralit/api/dao/RequisicaoConsumoDao.java
@@ -2,6 +2,7 @@ package br.com.centralit.api.dao; | @@ -2,6 +2,7 @@ package br.com.centralit.api.dao; | ||
2 | 2 | ||
3 | import java.util.Calendar; | 3 | import java.util.Calendar; |
4 | import java.util.Collection; | 4 | import java.util.Collection; |
5 | +import java.util.List; | ||
5 | 6 | ||
6 | import br.com.centralit.api.model.EstruturaOrganizacional; | 7 | import br.com.centralit.api.model.EstruturaOrganizacional; |
7 | import br.com.centralit.api.model.MaterialConsumo; | 8 | import br.com.centralit.api.model.MaterialConsumo; |
@@ -112,4 +113,9 @@ public interface RequisicaoConsumoDao extends CitGenericDAO { | @@ -112,4 +113,9 @@ public interface RequisicaoConsumoDao extends CitGenericDAO { | ||
112 | */ | 113 | */ |
113 | RequisicaoConsumo findRequisicaoAnteriorPorMaterial(MaterialConsumo materialConsumo, EstruturaOrganizacional unidadeRequisitante); | 114 | RequisicaoConsumo findRequisicaoAnteriorPorMaterial(MaterialConsumo materialConsumo, EstruturaOrganizacional unidadeRequisitante); |
114 | 115 | ||
116 | + Object[] getRequisicaoForReport(Long requisicaoId); | ||
117 | + List<Object> getResumoContabilForReport(Long requisicaoId,boolean isFIFO); | ||
118 | + List<Object> getMateriaisForReport(Long requisicaoId,boolean isFIFO); | ||
119 | + String findtipoStatusRequisicaoPorMaterial(Long requisicaoId); | ||
120 | + | ||
115 | } | 121 | } |
cit-almoxarifado-api/src/main/java/br/com/centralit/api/dao/impl/RequisicaoConsumoDaoHibernate.java
@@ -282,4 +282,88 @@ public class RequisicaoConsumoDaoHibernate extends CitGenericDAOImpl implements | @@ -282,4 +282,88 @@ public class RequisicaoConsumoDaoHibernate extends CitGenericDAOImpl implements | ||
282 | 282 | ||
283 | return this.searchUnique(searchSeven); | 283 | return this.searchUnique(searchSeven); |
284 | } | 284 | } |
285 | + | ||
286 | + @Override | ||
287 | + public String findtipoStatusRequisicaoPorMaterial(Long requisicaoId) { | ||
288 | + return (String)singleResultNativeQuery("select nome from alm_requisicaoconsumo req left join dominio as dominio on dominio.id = req.tipostatusrequisicao_id where req.id = "+requisicaoId); | ||
289 | + } | ||
290 | + | ||
291 | + @Override | ||
292 | + public Object[] getRequisicaoForReport(Long requisicaoId){ | ||
293 | + StringBuilder sql = new StringBuilder(); | ||
294 | + sql.append("select req_c.numerorequisicao as numerorequisicao,alm.nome as almoxarifado,requisitante.nome as unidadereq,locale.nome as enderecour,"); | ||
295 | + sql.append(" usuario.nome as requisitante,c_custo.descricao as centrocustos,req_c.datacriacao as cadem,req_c.datafinalizacaoatendimento as atendidaem from alm_requisicaoconsumo req_c"); | ||
296 | + sql.append(" left join estruturaorganizacional alm on req_c.almoxarifado_id = alm.id"); | ||
297 | + sql.append(" left join estruturaorganizacional requisitante on req_c.unidadeRequisitante_id = requisitante.id"); | ||
298 | + sql.append(" left join localizacao locale on requisitante.localizacao_id = locale.id"); | ||
299 | + sql.append(" left join centrocusto c_custo on req_c.centrocusto_id = c_custo.id"); | ||
300 | + sql.append(" left join seguranca_usuario usuario on req_c.autor_id = usuario.id"); | ||
301 | + sql.append(" where req_c.id = ").append(requisicaoId); | ||
302 | + | ||
303 | + return (Object[]) singleResultNativeQuery(sql.toString()); | ||
304 | + } | ||
305 | + | ||
306 | + @Override | ||
307 | + public List<Object> getResumoContabilForReport(Long requisicaoId,boolean isFIFO) { | ||
308 | + StringBuilder sql = new StringBuilder(); | ||
309 | + sql.append("select distinct contac.codigo,contac.descricao, rc_item.quantidade,"); | ||
310 | + if(isFIFO) | ||
311 | + sql.append("fifo.valorUnitario"); | ||
312 | + else | ||
313 | + sql.append("mat_estoque.valorUnitarioMedio"); | ||
314 | + | ||
315 | + sql.append(" from alm_requisicaoconsumo req_c"); | ||
316 | + sql.append(" left join estruturaorganizacional alm on req_c.organizacao_id = alm.id"); | ||
317 | + sql.append(" left join alm_rc_item rc_item on rc_item.requisicaoConsumo_id = req_c.id"); | ||
318 | + sql.append(" left join alm_materialconsumo mat_c on rc_item.materialconsumo_id = mat_c.id"); | ||
319 | + sql.append(" left join material mat on mat_c.id = mat.id"); | ||
320 | + | ||
321 | + if(isFIFO) | ||
322 | + sql.append(" left join alm_me_fifoitem fifo on fifo.material_id = mat.id"); | ||
323 | + else | ||
324 | + sql.append(" left join alm_materialestoque mat_estoque on mat_estoque.material_id = mat.id"); | ||
325 | + | ||
326 | + sql.append(" left join contacontabil contac on mat.contacontabil_id = contac.id"); | ||
327 | + sql.append(" where req_c.id = ").append(requisicaoId); | ||
328 | + if(isFIFO) | ||
329 | + sql.append(" and fifo.valorUnitario is not null"); | ||
330 | +// sql.append(" and rc_item.quantidadeatendida is not null"); | ||
331 | + sql.append(" order by contac.descricao"); | ||
332 | + | ||
333 | + return (List<Object>) resultListNativeQuery(sql.toString()); | ||
334 | + } | ||
335 | + | ||
336 | + @Override | ||
337 | + public List<Object> getMateriaisForReport(Long requisicaoId,boolean isFIFO) { | ||
338 | + | ||
339 | + StringBuilder sql = new StringBuilder(); | ||
340 | + sql.append("select distinct mat.descricao,umedi.sigla,entrada_item.datavalidade,rc_item.quantidade, rc_item.quantidadeatendida,"); | ||
341 | + | ||
342 | + if(isFIFO) | ||
343 | + sql.append("fifo.valorUnitario"); | ||
344 | + else | ||
345 | + sql.append("mat_estoque.valorUnitarioMedio"); | ||
346 | + | ||
347 | + sql.append(" from alm_requisicaoconsumo req_c"); | ||
348 | + sql.append(" left join estruturaorganizacional alm on req_c.organizacao_id = alm.id"); | ||
349 | + sql.append(" left join alm_rc_item rc_item on rc_item.requisicaoConsumo_id = req_c.id"); | ||
350 | + sql.append(" left join alm_materialconsumo mat_c on rc_item.materialconsumo_id = mat_c.id"); | ||
351 | + sql.append(" left join material mat on mat_c.id = mat.id"); | ||
352 | + sql.append(" left join alm_en_entradaitem entrada_item on entrada_item.material_id = mat.id"); | ||
353 | + sql.append(" left join alm_me_localestoque local_estoque on local_estoque.id = entrada_item.materialLocalEstoque_id"); | ||
354 | + | ||
355 | + if(isFIFO) | ||
356 | + sql.append(" left join alm_me_fifoitem fifo on fifo.material_id = mat.id"); | ||
357 | + else | ||
358 | + sql.append(" left join alm_materialestoque mat_estoque on mat_estoque.material_id = mat.id"); | ||
359 | + | ||
360 | + sql.append(" left join unidademedida umedi on umedi.id = mat_c.unidadearmazenamento_id"); | ||
361 | + sql.append(" where req_c.id =").append(requisicaoId); | ||
362 | + if(isFIFO) | ||
363 | + sql.append("and fifo.quantidadeRestante > 0"); | ||
364 | + | ||
365 | + sql.append(" order by mat.descricao"); | ||
366 | + | ||
367 | + return (List<Object>) resultListNativeQuery(sql.toString()); | ||
368 | + } | ||
285 | } | 369 | } |
cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/RequisicaoConsumoService.java
@@ -2,6 +2,7 @@ package br.com.centralit.api.service; | @@ -2,6 +2,7 @@ package br.com.centralit.api.service; | ||
2 | 2 | ||
3 | import java.util.Calendar; | 3 | import java.util.Calendar; |
4 | import java.util.Collection; | 4 | import java.util.Collection; |
5 | +import java.util.List; | ||
5 | 6 | ||
6 | import br.com.centralit.api.model.EstruturaOrganizacional; | 7 | import br.com.centralit.api.model.EstruturaOrganizacional; |
7 | import br.com.centralit.api.model.MaterialConsumo; | 8 | import br.com.centralit.api.model.MaterialConsumo; |
@@ -122,4 +123,8 @@ public interface RequisicaoConsumoService extends GenericService<RequisicaoConsu | @@ -122,4 +123,8 @@ public interface RequisicaoConsumoService extends GenericService<RequisicaoConsu | ||
122 | */ | 123 | */ |
123 | RequisicaoConsumo findRequisicaoAnteriorPorMaterial(MaterialConsumo materialConsumo, EstruturaOrganizacional unidadeRequisitante); | 124 | RequisicaoConsumo findRequisicaoAnteriorPorMaterial(MaterialConsumo materialConsumo, EstruturaOrganizacional unidadeRequisitante); |
124 | 125 | ||
126 | + Object[] getRequisicaoForReport(Long requisicaoId); | ||
127 | + List<Object> getResumoContabilForReport(Long requisicaoId,boolean isFIFO); | ||
128 | + List<Object> getMateriaisForReport(Long requisicaoId,boolean isFIFO); | ||
129 | + String findtipoStatusRequisicaoPorMaterial(Long requisicaoId); | ||
125 | } | 130 | } |
cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/RequisicaoConsumoServiceImpl.java
@@ -511,4 +511,24 @@ public class RequisicaoConsumoServiceImpl extends GenericServiceImpl<RequisicaoC | @@ -511,4 +511,24 @@ public class RequisicaoConsumoServiceImpl extends GenericServiceImpl<RequisicaoC | ||
511 | 511 | ||
512 | entity.setNumeroRequisicao(codigo); | 512 | entity.setNumeroRequisicao(codigo); |
513 | } | 513 | } |
514 | + | ||
515 | + @Override | ||
516 | + public Object[] getRequisicaoForReport(Long requisicaoId) { | ||
517 | + return requisicaoConsumoDao.getRequisicaoForReport(requisicaoId); | ||
518 | + } | ||
519 | + | ||
520 | + @Override | ||
521 | + public List<Object> getResumoContabilForReport(Long requisicaoId,boolean isFIFO) { | ||
522 | + return requisicaoConsumoDao.getResumoContabilForReport(requisicaoId,isFIFO); | ||
523 | + } | ||
524 | + | ||
525 | + @Override | ||
526 | + public List<Object> getMateriaisForReport(Long requisicaoId,boolean isFIFO) { | ||
527 | + return requisicaoConsumoDao.getMateriaisForReport(requisicaoId,isFIFO); | ||
528 | + } | ||
529 | + | ||
530 | + @Override | ||
531 | + public String findtipoStatusRequisicaoPorMaterial(Long requisicaoId) { | ||
532 | + return requisicaoConsumoDao.findtipoStatusRequisicaoPorMaterial(requisicaoId); | ||
533 | + } | ||
514 | } | 534 | } |
cit-almoxarifado-web/src/main/java/br/com/centralit/controller/BeanMaterial.java
@@ -13,6 +13,7 @@ public class BeanMaterial { | @@ -13,6 +13,7 @@ public class BeanMaterial { | ||
13 | private String endereco; | 13 | private String endereco; |
14 | private BigDecimal qtdeSolicitada; | 14 | private BigDecimal qtdeSolicitada; |
15 | private BigDecimal qtdeFornecida; | 15 | private BigDecimal qtdeFornecida; |
16 | + private BigDecimal qtdeEstoque; | ||
16 | private BigDecimal valorTotal; | 17 | private BigDecimal valorTotal; |
17 | private BigDecimal valorUnitario; | 18 | private BigDecimal valorUnitario; |
18 | 19 | ||
@@ -26,7 +27,7 @@ public class BeanMaterial { | @@ -26,7 +27,7 @@ public class BeanMaterial { | ||
26 | this.valorUnitario = (BigDecimal) objArray[5]; | 27 | this.valorUnitario = (BigDecimal) objArray[5]; |
27 | setValorTotal(valorUnitario); | 28 | setValorTotal(valorUnitario); |
28 | } | 29 | } |
29 | - | 30 | + |
30 | public Integer getItem() { | 31 | public Integer getItem() { |
31 | return item; | 32 | return item; |
32 | } | 33 | } |
@@ -83,6 +84,10 @@ public class BeanMaterial { | @@ -83,6 +84,10 @@ public class BeanMaterial { | ||
83 | public void setValorUnitario(BigDecimal valorUnitario) { | 84 | public void setValorUnitario(BigDecimal valorUnitario) { |
84 | this.valorUnitario = valorUnitario; | 85 | this.valorUnitario = valorUnitario; |
85 | } | 86 | } |
87 | + | ||
88 | + public BigDecimal getQtdeEstoque() { | ||
89 | + return qtdeEstoque; | ||
90 | + } | ||
86 | 91 | ||
87 | @Override | 92 | @Override |
88 | public boolean equals(Object obj) { | 93 | public boolean equals(Object obj) { |
cit-almoxarifado-web/src/main/java/br/com/centralit/controller/BeanSubReportContaContabil.java
@@ -32,7 +32,8 @@ public class BeanSubReportContaContabil { | @@ -32,7 +32,8 @@ public class BeanSubReportContaContabil { | ||
32 | } | 32 | } |
33 | 33 | ||
34 | public BigDecimal getValorTotal() { | 34 | public BigDecimal getValorTotal() { |
35 | - return valorUnitario.multiply(qtde); | 35 | + valorTotal = valorUnitario.multiply(qtde); |
36 | + return valorTotal; | ||
36 | } | 37 | } |
37 | public String getCodigo() { | 38 | public String getCodigo() { |
38 | return codigo; | 39 | return codigo; |
cit-almoxarifado-web/src/main/java/br/com/centralit/controller/ReportGuiaRemessaAtendimentoConsumoController.java
@@ -30,13 +30,11 @@ import org.springframework.web.bind.annotation.RequestParam; | @@ -30,13 +30,11 @@ import org.springframework.web.bind.annotation.RequestParam; | ||
30 | import org.springframework.web.bind.annotation.ResponseBody; | 30 | import org.springframework.web.bind.annotation.ResponseBody; |
31 | 31 | ||
32 | import br.com.centralit.api.model.Entrada; | 32 | import br.com.centralit.api.model.Entrada; |
33 | -import br.com.centralit.api.model.RequisicaoConsumo; | ||
34 | import br.com.centralit.api.service.ConfiguracaoParametroSistemaService; | 33 | import br.com.centralit.api.service.ConfiguracaoParametroSistemaService; |
35 | import br.com.centralit.api.service.ConfiguracaoService; | 34 | import br.com.centralit.api.service.ConfiguracaoService; |
36 | import br.com.centralit.api.service.DominioService; | 35 | import br.com.centralit.api.service.DominioService; |
37 | import br.com.centralit.api.service.EstruturaOrganizacionalService; | 36 | import br.com.centralit.api.service.EstruturaOrganizacionalService; |
38 | import br.com.centralit.api.service.InternacionalizacaoService; | 37 | import br.com.centralit.api.service.InternacionalizacaoService; |
39 | -import br.com.centralit.api.service.RequisicaoConsumoItemService; | ||
40 | import br.com.centralit.api.service.RequisicaoConsumoService; | 38 | import br.com.centralit.api.service.RequisicaoConsumoService; |
41 | import br.com.centralit.api.service.UsuarioService; | 39 | import br.com.centralit.api.service.UsuarioService; |
42 | import br.com.centralit.api.viewHelper.BeanReportVH; | 40 | import br.com.centralit.api.viewHelper.BeanReportVH; |
@@ -84,11 +82,12 @@ public class ReportGuiaRemessaAtendimentoConsumoController extends GenericContro | @@ -84,11 +82,12 @@ public class ReportGuiaRemessaAtendimentoConsumoController extends GenericContro | ||
84 | 82 | ||
85 | @Autowired | 83 | @Autowired |
86 | private ConfiguracaoParametroSistemaService configuracaoParametroSistemaService; | 84 | private ConfiguracaoParametroSistemaService configuracaoParametroSistemaService; |
87 | - ; | 85 | + |
88 | @Autowired | 86 | @Autowired |
89 | private ReportController reportController; | 87 | private ReportController reportController; |
90 | 88 | ||
91 | - private String AV_MONETARIA; | 89 | + private boolean is_FIFO; |
90 | + private final String FIFO = "1"; | ||
92 | 91 | ||
93 | /** Atributo idioma. */ | 92 | /** Atributo idioma. */ |
94 | Dominio idioma; | 93 | Dominio idioma; |
@@ -130,9 +129,8 @@ public class ReportGuiaRemessaAtendimentoConsumoController extends GenericContro | @@ -130,9 +129,8 @@ public class ReportGuiaRemessaAtendimentoConsumoController extends GenericContro | ||
130 | InputStream input = null; | 129 | InputStream input = null; |
131 | InputStream inputSub = null; | 130 | InputStream inputSub = null; |
132 | try { | 131 | try { |
133 | - AV_MONETARIA = configuracaoParametroSistemaService.getParametro("TIPO_AVALIACAO_MONETARIA_ESTOQUE").getValor(); | ||
134 | - | ||
135 | - final String tipoStatusRequisicao = (String)requisicaoConsumoService.singleResultNativeQuery("select nome from alm_requisicaoconsumo req left join dominio as dominio on dominio.id = req.tipostatusrequisicao_id where req.id = "+requisicaoId); | 132 | + is_FIFO = configuracaoParametroSistemaService.getParametro("TIPO_AVALIACAO_MONETARIA_ESTOQUE").getValor().equals(FIFO); |
133 | + final boolean isFinalizada = requisicaoConsumoService.findtipoStatusRequisicaoPorMaterial(requisicaoId).equals("FINALIZADA"); | ||
136 | 134 | ||
137 | Usuario usuarioLogado = (Usuario) usuarioService.find(((Usuario) SecurityContextHolder.getContext().getAuthentication().getPrincipal() ).getId()); | 135 | Usuario usuarioLogado = (Usuario) usuarioService.find(((Usuario) SecurityContextHolder.getContext().getAuthentication().getPrincipal() ).getId()); |
138 | Long organizacaoId = usuarioLogado.getOrganizacao().getId(); | 136 | Long organizacaoId = usuarioLogado.getOrganizacao().getId(); |
@@ -160,13 +158,16 @@ public class ReportGuiaRemessaAtendimentoConsumoController extends GenericContro | @@ -160,13 +158,16 @@ public class ReportGuiaRemessaAtendimentoConsumoController extends GenericContro | ||
160 | 158 | ||
161 | List<BeanRequisicaoSubReport> beanReqSubList = new ArrayList<BeanRequisicaoSubReport>(); | 159 | List<BeanRequisicaoSubReport> beanReqSubList = new ArrayList<BeanRequisicaoSubReport>(); |
162 | 160 | ||
163 | - BeanRequisicaoSubReport beanSubReport = new BeanRequisicaoSubReport(getRequisicao(requisicaoId)); | 161 | + BeanRequisicaoSubReport beanSubReport = new BeanRequisicaoSubReport(requisicaoConsumoService.getRequisicaoForReport(requisicaoId)); |
164 | beanSubReport.setMateriais(getMateriais(requisicaoId)); | 162 | beanSubReport.setMateriais(getMateriais(requisicaoId)); |
165 | beanReqSubList.add(beanSubReport); | 163 | beanReqSubList.add(beanSubReport); |
166 | 164 | ||
167 | parameters.put("BEAN_SUB_REPORT",new JRBeanCollectionDataSource(beanReqSubList)); | 165 | parameters.put("BEAN_SUB_REPORT",new JRBeanCollectionDataSource(beanReqSubList)); |
168 | - parametersSubReport.put("REQ_CONSUMO", getResumoContabil(requisicaoId)); | ||
169 | - parametersSubReport.put("is_asterisco",!tipoStatusRequisicao.equals("ATENDIDA")); | 166 | + |
167 | +// if(isFinalizada) | ||
168 | + parametersSubReport.put("REQ_CONSUMO", getResumoContabil(requisicaoId)); | ||
169 | + | ||
170 | + parametersSubReport.put("is_asterisco",!isFinalizada); | ||
170 | 171 | ||
171 | parameters.put("SUBREPORT_PARAMETERS_MAP",parametersSubReport); | 172 | parameters.put("SUBREPORT_PARAMETERS_MAP",parametersSubReport); |
172 | 173 | ||
@@ -189,23 +190,12 @@ public class ReportGuiaRemessaAtendimentoConsumoController extends GenericContro | @@ -189,23 +190,12 @@ public class ReportGuiaRemessaAtendimentoConsumoController extends GenericContro | ||
189 | } | 190 | } |
190 | 191 | ||
191 | private JRBeanCollectionDataSource getMateriais(Long requisicaoId){ | 192 | private JRBeanCollectionDataSource getMateriais(Long requisicaoId){ |
192 | - StringBuilder sql = new StringBuilder(); | ||
193 | - sql.append("select distinct mat.descricao,umedi.sigla,entrada_item.datavalidade,rc_item.quantidade, rc_item.quantidadeatendida,mat_estoque.valorUnitarioMedio from alm_requisicaoconsumo req_c "); | ||
194 | - sql.append(" left join estruturaorganizacional alm on req_c.organizacao_id = alm.id"); | ||
195 | - sql.append(" left join alm_rc_item rc_item on rc_item.requisicaoConsumo_id = req_c.id"); | ||
196 | - sql.append(" left join alm_materialconsumo mat_c on rc_item.materialconsumo_id = mat_c.id"); | ||
197 | - sql.append(" left join material mat on mat_c.id = mat.id"); | ||
198 | - sql.append(" left join alm_en_entradaitem entrada_item on entrada_item.material_id = mat.id"); | ||
199 | - sql.append(" left join alm_me_localestoque local_estoque on local_estoque.id = entrada_item.materialLocalEstoque_id"); | ||
200 | - sql.append(" left join alm_materialestoque mat_estoque on mat_estoque.material_id = mat.id"); | ||
201 | - sql.append(" left join unidademedida umedi on umedi.id = mat_c.unidadearmazenamento_id"); | ||
202 | - sql.append(" where req_c.id =").append(requisicaoId); | ||
203 | - sql.append(" order by mat.descricao"); | ||
204 | - | ||
205 | - List<Object> result = (List<Object>) usuarioService.resultListNativeQuery(sql.toString()); | 193 | + List<Object> result; |
206 | final List<BeanMaterial> materiais = new ArrayList<BeanMaterial>(); | 194 | final List<BeanMaterial> materiais = new ArrayList<BeanMaterial>(); |
207 | List<BeanMaterial> materiaisResult = new ArrayList<BeanMaterial>(); | 195 | List<BeanMaterial> materiaisResult = new ArrayList<BeanMaterial>(); |
208 | Integer index = 1; | 196 | Integer index = 1; |
197 | + result = requisicaoConsumoService.getMateriaisForReport(requisicaoId,is_FIFO); | ||
198 | + | ||
209 | for(Object obj : result) | 199 | for(Object obj : result) |
210 | materiais.add(new BeanMaterial((Object[]) obj)); | 200 | materiais.add(new BeanMaterial((Object[]) obj)); |
211 | 201 | ||
@@ -217,21 +207,25 @@ public class ReportGuiaRemessaAtendimentoConsumoController extends GenericContro | @@ -217,21 +207,25 @@ public class ReportGuiaRemessaAtendimentoConsumoController extends GenericContro | ||
217 | 207 | ||
218 | return new JRBeanCollectionDataSource(materiaisResult); | 208 | return new JRBeanCollectionDataSource(materiaisResult); |
219 | } | 209 | } |
210 | + | ||
211 | + private void calcularFIFOMateriais(final List<BeanMaterial> materiais, BeanMaterial material,BigDecimal qtdFalta) { | ||
212 | + for(BeanMaterial mat : materiais) | ||
213 | + if(material.getNome().equals(mat.getNome()) && material.getQtdeEstoque().compareTo(mat.getQtdeEstoque()) >=0) | ||
214 | + if(mat.getQtdeEstoque().compareTo(qtdFalta) < 0){ | ||
215 | + material.setValorUnitario(material.getValorUnitarioBD().add(mat.getValorUnitarioBD())); | ||
216 | + material.setValorUnitario(material.getValorUnitarioBD().divide(new BigDecimal(2))); | ||
217 | + qtdFalta = qtdFalta.subtract(mat.getQtdeEstoque()); | ||
218 | + calcularFIFOMateriais(materiais, material, qtdFalta); | ||
219 | + }else{ | ||
220 | + material.setValorUnitario(material.getValorUnitarioBD().add(mat.getValorUnitarioBD())); | ||
221 | + material.setValorUnitario(material.getValorUnitarioBD().divide(new BigDecimal(2))); | ||
222 | + } | ||
223 | + | ||
224 | + } | ||
220 | 225 | ||
221 | private JRBeanCollectionDataSource getResumoContabil(Long requisicaoId){ | 226 | private JRBeanCollectionDataSource getResumoContabil(Long requisicaoId){ |
222 | - StringBuilder sql = new StringBuilder(); | ||
223 | - sql.append("select distinct contac.codigo,contac.descricao, rc_item.quantidade,mat_estoque.valorUnitarioMedio from alm_requisicaoconsumo req_c"); | ||
224 | - sql.append(" left join estruturaorganizacional alm on req_c.organizacao_id = alm.id"); | ||
225 | - sql.append(" left join alm_rc_item rc_item on rc_item.requisicaoConsumo_id = req_c.id"); | ||
226 | - sql.append(" left join alm_materialconsumo mat_c on rc_item.materialconsumo_id = mat_c.id"); | ||
227 | - sql.append(" left join material mat on mat_c.id = mat.id"); | ||
228 | - sql.append(" left join alm_materialestoque mat_estoque on mat_estoque.material_id = mat.id"); | ||
229 | - sql.append(" left join contacontabil contac on mat.contacontabil_id = contac.id"); | ||
230 | - sql.append(" where req_c.id = ").append(requisicaoId); | ||
231 | - sql.append(" and rc_item.quantidadeatendida is not null"); | ||
232 | - sql.append(" order by contac.descricao"); | ||
233 | 227 | ||
234 | - List<Object> result = (List<Object>) usuarioService.resultListNativeQuery(sql.toString()); | 228 | + List<Object> result = requisicaoConsumoService.getResumoContabilForReport(requisicaoId,is_FIFO); |
235 | 229 | ||
236 | final List<BeanSubReportContaContabil> contas = new ArrayList<BeanSubReportContaContabil>(); | 230 | final List<BeanSubReportContaContabil> contas = new ArrayList<BeanSubReportContaContabil>(); |
237 | List<BeanSubReportContaContabil> contasResult = new ArrayList<BeanSubReportContaContabil>(); | 231 | List<BeanSubReportContaContabil> contasResult = new ArrayList<BeanSubReportContaContabil>(); |
@@ -248,21 +242,6 @@ public class ReportGuiaRemessaAtendimentoConsumoController extends GenericContro | @@ -248,21 +242,6 @@ public class ReportGuiaRemessaAtendimentoConsumoController extends GenericContro | ||
248 | }else | 242 | }else |
249 | contasResult.add(conta); | 243 | contasResult.add(conta); |
250 | 244 | ||
251 | - | ||
252 | return contasResult.isEmpty() ? null : new JRBeanCollectionDataSource(contasResult); | 245 | return contasResult.isEmpty() ? null : new JRBeanCollectionDataSource(contasResult); |
253 | } | 246 | } |
254 | - | ||
255 | - private Object[] getRequisicao(Long requisicaoId){ | ||
256 | - StringBuilder sql = new StringBuilder(); | ||
257 | - sql.append("select req_c.numerorequisicao as numerorequisicao,alm.nome as almoxarifado,requisitante.nome as unidadereq,locale.nome as enderecour,"); | ||
258 | - sql.append(" usuario.nome as atendidapor,c_custo.descricao as centrocustos,req_c.datacriacao as cadem,req_c.datafinalizacaoatendimento as atendidaem from alm_requisicaoconsumo req_c"); | ||
259 | - sql.append(" left join estruturaorganizacional alm on req_c.almoxarifado_id = alm.id"); | ||
260 | - sql.append(" left join estruturaorganizacional requisitante on req_c.unidadeRequisitante_id = requisitante.id"); | ||
261 | - sql.append(" left join localizacao locale on requisitante.localizacao_id = locale.id"); | ||
262 | - sql.append(" left join centrocusto c_custo on req_c.centrocusto_id = c_custo.id"); | ||
263 | - sql.append(" left join seguranca_usuario usuario on req_c.autor_id = usuario.id"); | ||
264 | - sql.append(" where req_c.id = ").append(requisicaoId); | ||
265 | - | ||
266 | - return (Object[])usuarioService.singleResultNativeQuery(sql.toString()); | ||
267 | - } | ||
268 | } | 247 | } |
269 | \ No newline at end of file | 248 | \ No newline at end of file |