Commit 15e3278f2c1160ce0c520f32696d73639539e81f
Exists in
master
Merge branch 'tarefa-3822' of http://ferramentasgo.centralit.com.br:8080/scm/git…
…/cit-grp-almoxarifado into tarefa-3822 # Conflicts: # cit-almoxarifado-web/src/main/java/br/com/centralit/listener/StartupListenerAlmoxarifado.java
Showing
8 changed files
with
227 additions
and
54 deletions
Show diff stats
cit-almoxarifado-api/src/main/java/br/com/centralit/api/model/AtendimentoRequisicaoConsumoItem.java
1 | package br.com.centralit.api.model; | 1 | package br.com.centralit.api.model; |
2 | 2 | ||
3 | import java.math.BigDecimal; | 3 | import java.math.BigDecimal; |
4 | +import java.util.Collection; | ||
4 | 5 | ||
6 | +import javax.persistence.CascadeType; | ||
5 | import javax.persistence.Entity; | 7 | import javax.persistence.Entity; |
6 | import javax.persistence.FetchType; | 8 | import javax.persistence.FetchType; |
7 | import javax.persistence.GeneratedValue; | 9 | import javax.persistence.GeneratedValue; |
@@ -9,6 +11,7 @@ import javax.persistence.GenerationType; | @@ -9,6 +11,7 @@ import javax.persistence.GenerationType; | ||
9 | import javax.persistence.Id; | 11 | import javax.persistence.Id; |
10 | import javax.persistence.JoinColumn; | 12 | import javax.persistence.JoinColumn; |
11 | import javax.persistence.ManyToOne; | 13 | import javax.persistence.ManyToOne; |
14 | +import javax.persistence.OneToMany; | ||
12 | import javax.persistence.Table; | 15 | import javax.persistence.Table; |
13 | 16 | ||
14 | import org.hibernate.envers.AuditTable; | 17 | import org.hibernate.envers.AuditTable; |
@@ -84,13 +87,9 @@ public class AtendimentoRequisicaoConsumoItem extends PersistentObjectAuditOrgan | @@ -84,13 +87,9 @@ public class AtendimentoRequisicaoConsumoItem extends PersistentObjectAuditOrgan | ||
84 | @JsonView({ ViewsAlmoxarifado.AtendimentoRequisicaoConsumoItem.class, ViewsAlmoxarifado.AtendimentoRequisicaoConsumoEditView.class }) | 87 | @JsonView({ ViewsAlmoxarifado.AtendimentoRequisicaoConsumoItem.class, ViewsAlmoxarifado.AtendimentoRequisicaoConsumoEditView.class }) |
85 | private MaterialConsumo material; | 88 | private MaterialConsumo material; |
86 | 89 | ||
87 | - /** Atributo quantidade. */ | ||
88 | - @JsonView({ ViewsAlmoxarifado.AtendimentoRequisicaoConsumoItem.class, ViewsAlmoxarifado.AtendimentoRequisicaoConsumoEditView.class, Views.MaterialConsultaInfo.class }) | ||
89 | - private BigDecimal quantidade; | ||
90 | - | ||
91 | - @ManyToOne(fetch = FetchType.LAZY, optional = false) | ||
92 | - @JsonView({ViewsAlmoxarifado.AtendimentoRequisicaoConsumoEditView.class}) | ||
93 | - private MaterialLocalEstoque materialLocalEstoque; | 90 | + @OneToMany(fetch = FetchType.LAZY, mappedBy = "atendimentoRequisicaoConsumoItem", cascade = CascadeType.ALL, orphanRemoval = true) |
91 | + @JsonView({ ViewsAlmoxarifado.AtendimentoRequisicaoConsumoEditView.class }) | ||
92 | + private Collection<AtendimentoRequisicaoConsumoItemEndereco> atendimentoRequisicaoConsumoItemEnderecos; | ||
94 | 93 | ||
95 | /** | 94 | /** |
96 | * Retorna o valor do atributo <code>id</code> | 95 | * Retorna o valor do atributo <code>id</code> |
@@ -153,26 +152,6 @@ public class AtendimentoRequisicaoConsumoItem extends PersistentObjectAuditOrgan | @@ -153,26 +152,6 @@ public class AtendimentoRequisicaoConsumoItem extends PersistentObjectAuditOrgan | ||
153 | } | 152 | } |
154 | 153 | ||
155 | /** | 154 | /** |
156 | - * Retorna o valor do atributo <code>quantidade</code> | ||
157 | - * | ||
158 | - * @return <code>BigDecimal</code> | ||
159 | - */ | ||
160 | - public BigDecimal getQuantidade() { | ||
161 | - | ||
162 | - return quantidade; | ||
163 | - } | ||
164 | - | ||
165 | - /** | ||
166 | - * Define o valor do atributo <code>quantidade</code>. | ||
167 | - * | ||
168 | - * @param quantidade | ||
169 | - */ | ||
170 | - public void setQuantidade(BigDecimal quantidade) { | ||
171 | - | ||
172 | - this.quantidade = quantidade; | ||
173 | - } | ||
174 | - | ||
175 | - /** | ||
176 | * Retorna o valor do atributo <code>requisicaoConsumoItem</code> | 155 | * Retorna o valor do atributo <code>requisicaoConsumoItem</code> |
177 | * | 156 | * |
178 | * @return <code>RequisicaoConsumoItem</code> | 157 | * @return <code>RequisicaoConsumoItem</code> |
@@ -192,11 +171,23 @@ public class AtendimentoRequisicaoConsumoItem extends PersistentObjectAuditOrgan | @@ -192,11 +171,23 @@ public class AtendimentoRequisicaoConsumoItem extends PersistentObjectAuditOrgan | ||
192 | this.requisicaoConsumoItem = requisicaoConsumoItem; | 171 | this.requisicaoConsumoItem = requisicaoConsumoItem; |
193 | } | 172 | } |
194 | 173 | ||
195 | - public MaterialLocalEstoque getMaterialLocalEstoque() { | ||
196 | - return materialLocalEstoque; | 174 | + public Collection<AtendimentoRequisicaoConsumoItemEndereco> getAtendimentoRequisicaoConsumoItemEnderecos() { |
175 | + return atendimentoRequisicaoConsumoItemEnderecos; | ||
197 | } | 176 | } |
198 | 177 | ||
199 | - public void setMaterialLocalEstoque(MaterialLocalEstoque materialLocalEstoque) { | ||
200 | - this.materialLocalEstoque = materialLocalEstoque; | 178 | + public void setAtendimentoRequisicaoConsumoItemEnderecos(Collection<AtendimentoRequisicaoConsumoItemEndereco> atendimentoRequisicaoConsumoItemEnderecos) { |
179 | + this.atendimentoRequisicaoConsumoItemEnderecos = atendimentoRequisicaoConsumoItemEnderecos; | ||
180 | + } | ||
181 | + | ||
182 | + public BigDecimal getQuantidade(){ | ||
183 | + BigDecimal quantidade = BigDecimal.ZERO; | ||
184 | + | ||
185 | + if(atendimentoRequisicaoConsumoItemEnderecos != null){ | ||
186 | + for(AtendimentoRequisicaoConsumoItemEndereco itemEndereco : atendimentoRequisicaoConsumoItemEnderecos){ | ||
187 | + quantidade = quantidade.add(itemEndereco.getQuantidade()); | ||
188 | + } | ||
189 | + } | ||
190 | + | ||
191 | + return quantidade; | ||
201 | } | 192 | } |
202 | } | 193 | } |
cit-almoxarifado-api/src/main/java/br/com/centralit/api/model/AtendimentoRequisicaoConsumoItemEndereco.java
0 → 100644
@@ -0,0 +1,77 @@ | @@ -0,0 +1,77 @@ | ||
1 | +package br.com.centralit.api.model; | ||
2 | + | ||
3 | +import java.math.BigDecimal; | ||
4 | + | ||
5 | +import javax.persistence.Entity; | ||
6 | +import javax.persistence.FetchType; | ||
7 | +import javax.persistence.GeneratedValue; | ||
8 | +import javax.persistence.GenerationType; | ||
9 | +import javax.persistence.Id; | ||
10 | +import javax.persistence.JoinColumn; | ||
11 | +import javax.persistence.ManyToOne; | ||
12 | +import javax.persistence.Table; | ||
13 | + | ||
14 | +import br.com.centralit.api.framework.json.ViewsAlmoxarifado; | ||
15 | +import br.com.centralit.framework.json.Views; | ||
16 | +import br.com.centralit.framework.model.arquitetura.PersistentObject; | ||
17 | + | ||
18 | +import com.fasterxml.jackson.annotation.JsonView; | ||
19 | + | ||
20 | +@Entity | ||
21 | +@Table(name = "alm_rc_at_item_endereco") | ||
22 | +public class AtendimentoRequisicaoConsumoItemEndereco extends PersistentObject { | ||
23 | + | ||
24 | + private static final long serialVersionUID = 1L; | ||
25 | + | ||
26 | + @Id | ||
27 | + @GeneratedValue(strategy = GenerationType.AUTO) | ||
28 | + @JsonView({ Views.GenericView.class }) | ||
29 | + private Long id; | ||
30 | + | ||
31 | + @JsonView({ ViewsAlmoxarifado.AtendimentoRequisicaoConsumoItem.class, ViewsAlmoxarifado.AtendimentoRequisicaoConsumoEditView.class, Views.MaterialConsultaInfo.class }) | ||
32 | + private BigDecimal quantidade; | ||
33 | + | ||
34 | + @ManyToOne(fetch = FetchType.LAZY, optional = false) | ||
35 | + @JsonView({ViewsAlmoxarifado.AtendimentoRequisicaoConsumoEditView.class}) | ||
36 | + private MaterialLocalEstoque materialLocalEstoque; | ||
37 | + | ||
38 | + @ManyToOne(fetch = FetchType.LAZY, optional = false) | ||
39 | + @JsonView({ViewsAlmoxarifado.AtendimentoRequisicaoConsumoEditView.class}) | ||
40 | + @JoinColumn(name = "at_req_consumoitem_id") | ||
41 | + private AtendimentoRequisicaoConsumoItem atendimentoRequisicaoConsumoItem; | ||
42 | + | ||
43 | + @Override | ||
44 | + public Long getId() { | ||
45 | + return this.id; | ||
46 | + } | ||
47 | + | ||
48 | + public void setId(Long id) { | ||
49 | + this.id = id; | ||
50 | + } | ||
51 | + | ||
52 | + public BigDecimal getQuantidade() { | ||
53 | + return quantidade; | ||
54 | + } | ||
55 | + | ||
56 | + public void setQuantidade(BigDecimal quantidade) { | ||
57 | + this.quantidade = quantidade; | ||
58 | + } | ||
59 | + | ||
60 | + public MaterialLocalEstoque getMaterialLocalEstoque() { | ||
61 | + return materialLocalEstoque; | ||
62 | + } | ||
63 | + | ||
64 | + public void setMaterialLocalEstoque(MaterialLocalEstoque materialLocalEstoque) { | ||
65 | + this.materialLocalEstoque = materialLocalEstoque; | ||
66 | + } | ||
67 | + | ||
68 | + public AtendimentoRequisicaoConsumoItem getAtendimentoRequisicaoConsumoItem() { | ||
69 | + return atendimentoRequisicaoConsumoItem; | ||
70 | + } | ||
71 | + | ||
72 | + public void setAtendimentoRequisicaoConsumoItem( | ||
73 | + AtendimentoRequisicaoConsumoItem atendimentoRequisicaoConsumoItem) { | ||
74 | + this.atendimentoRequisicaoConsumoItem = atendimentoRequisicaoConsumoItem; | ||
75 | + } | ||
76 | + | ||
77 | +} |
cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/AtendimentoRequisicaoConsumoServiceImpl.java
@@ -16,6 +16,7 @@ import org.springframework.validation.Validator; | @@ -16,6 +16,7 @@ import org.springframework.validation.Validator; | ||
16 | import br.com.centralit.api.dao.AtendimentoRequisicaoConsumoDao; | 16 | import br.com.centralit.api.dao.AtendimentoRequisicaoConsumoDao; |
17 | import br.com.centralit.api.model.AtendimentoRequisicaoConsumo; | 17 | import br.com.centralit.api.model.AtendimentoRequisicaoConsumo; |
18 | import br.com.centralit.api.model.AtendimentoRequisicaoConsumoItem; | 18 | import br.com.centralit.api.model.AtendimentoRequisicaoConsumoItem; |
19 | +import br.com.centralit.api.model.AtendimentoRequisicaoConsumoItemEndereco; | ||
19 | import br.com.centralit.api.model.DominioAlmoxarifado; | 20 | import br.com.centralit.api.model.DominioAlmoxarifado; |
20 | import br.com.centralit.api.model.MaterialLocalEstoque; | 21 | import br.com.centralit.api.model.MaterialLocalEstoque; |
21 | import br.com.centralit.api.service.AtendimentoRequisicaoConsumoItemService; | 22 | import br.com.centralit.api.service.AtendimentoRequisicaoConsumoItemService; |
@@ -180,14 +181,16 @@ public class AtendimentoRequisicaoConsumoServiceImpl extends GenericServiceImpl< | @@ -180,14 +181,16 @@ public class AtendimentoRequisicaoConsumoServiceImpl extends GenericServiceImpl< | ||
180 | 181 | ||
181 | for(AtendimentoRequisicaoConsumo atendimento : entity.getAtendimentos()){ | 182 | for(AtendimentoRequisicaoConsumo atendimento : entity.getAtendimentos()){ |
182 | for(AtendimentoRequisicaoConsumoItem atendimentoItem : atendimento.getAtendimentoRequisicaoConsumoItems()){ | 183 | for(AtendimentoRequisicaoConsumoItem atendimentoItem : atendimento.getAtendimentoRequisicaoConsumoItems()){ |
183 | - | ||
184 | - if(somatorioQuantidadesAtentidasPorMaterial.containsKey(atendimentoItem.getMaterialLocalEstoque())){ | ||
185 | - | ||
186 | - somatorioQuantidadesAtentidasPorMaterial.put(atendimentoItem.getMaterialLocalEstoque(), | ||
187 | - somatorioQuantidadesAtentidasPorMaterial.get(atendimentoItem.getMaterialLocalEstoque()).add(atendimentoItem.getQuantidade())); | 184 | + for(AtendimentoRequisicaoConsumoItemEndereco itemEndereco : atendimentoItem.getAtendimentoRequisicaoConsumoItemEnderecos()){ |
188 | 185 | ||
189 | - }else{ | ||
190 | - somatorioQuantidadesAtentidasPorMaterial.put(atendimentoItem.getMaterialLocalEstoque(), atendimentoItem.getQuantidade()); | 186 | + if(somatorioQuantidadesAtentidasPorMaterial.containsKey(itemEndereco.getMaterialLocalEstoque())){ |
187 | + | ||
188 | + somatorioQuantidadesAtentidasPorMaterial.put(itemEndereco.getMaterialLocalEstoque(), | ||
189 | + somatorioQuantidadesAtentidasPorMaterial.get(itemEndereco.getMaterialLocalEstoque()).add(itemEndereco.getQuantidade())); | ||
190 | + | ||
191 | + }else{ | ||
192 | + somatorioQuantidadesAtentidasPorMaterial.put(itemEndereco.getMaterialLocalEstoque(), itemEndereco.getQuantidade()); | ||
193 | + } | ||
191 | } | 194 | } |
192 | } | 195 | } |
193 | } | 196 | } |
cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/MovimentoEstoqueServiceImpl.java
@@ -415,10 +415,6 @@ public class MovimentoEstoqueServiceImpl extends GenericServiceImpl<MovimentoEst | @@ -415,10 +415,6 @@ public class MovimentoEstoqueServiceImpl extends GenericServiceImpl<MovimentoEst | ||
415 | 415 | ||
416 | for (AtendimentoRequisicaoConsumoItem atendimentoRequisicaoConsumoItem : atendimento.getAtendimentoRequisicaoConsumoItems()) { | 416 | for (AtendimentoRequisicaoConsumoItem atendimentoRequisicaoConsumoItem : atendimento.getAtendimentoRequisicaoConsumoItems()) { |
417 | 417 | ||
418 | - if(atendimentoRequisicaoConsumoItem.getQuantidade() == null){ | ||
419 | - atendimentoRequisicaoConsumoItem.setQuantidade(new BigDecimal(0));; | ||
420 | - } | ||
421 | - | ||
422 | BigDecimal valorMovimentoFIFO = this.entradaAlmoxarifadoItemService.realizaMovimentoSaida(atendimentoRequisicaoConsumoItem.getMaterial(), atendimentoRequisicaoConsumoItem.getQuantidade()); | 418 | BigDecimal valorMovimentoFIFO = this.entradaAlmoxarifadoItemService.realizaMovimentoSaida(atendimentoRequisicaoConsumoItem.getMaterial(), atendimentoRequisicaoConsumoItem.getQuantidade()); |
423 | BigDecimal valorMovimentoMediaMovel = BigDecimal.ZERO;//BigDecimal valorMovimentoMediaMovel = this.materialEstoqueSaldoMedioService.realizaMovimentoSaida(atendimentoRequisicaoConsumoItem.getMaterial(), atendimentoRequisicaoConsumoItem.getQuantidade()); | 419 | BigDecimal valorMovimentoMediaMovel = BigDecimal.ZERO;//BigDecimal valorMovimentoMediaMovel = this.materialEstoqueSaldoMedioService.realizaMovimentoSaida(atendimentoRequisicaoConsumoItem.getMaterial(), atendimentoRequisicaoConsumoItem.getQuantidade()); |
424 | 420 |
cit-almoxarifado-web/src/main/java/br/com/centralit/listener/StartupListenerAlmoxarifado.java
@@ -421,6 +421,7 @@ public class StartupListenerAlmoxarifado extends UtilStartup implements Applicat | @@ -421,6 +421,7 @@ public class StartupListenerAlmoxarifado extends UtilStartup implements Applicat | ||
421 | internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.MSG.REMOVER_REQUISICAO_ATENDIMENTO", "Remover requisição deste atendimento", dominio, modulo)); | 421 | internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.MSG.REMOVER_REQUISICAO_ATENDIMENTO", "Remover requisição deste atendimento", dominio, modulo)); |
422 | internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.MSG.REQUISICAO_EM_ATENDIMENTO", "está em atendimento pelo atendente ", dominio, modulo)); | 422 | internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.MSG.REQUISICAO_EM_ATENDIMENTO", "está em atendimento pelo atendente ", dominio, modulo)); |
423 | internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.MSG.DESMARQUE_REQUISICAO_EM_ATENDIMENTO", "Desmarque esta requisição de consumo para prosseguir o atendimento.", dominio, modulo)); | 423 | internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.MSG.DESMARQUE_REQUISICAO_EM_ATENDIMENTO", "Desmarque esta requisição de consumo para prosseguir o atendimento.", dominio, modulo)); |
424 | + internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.MSG.ATENDER_MAIS_DE_UM_ENDERECO", "Atender utilizando mais de um endereco", dominio, modulo)); | ||
424 | internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.MSG.INTERROMPER_ATENDIMENTO_NAO_INICIADO", "Somente é permitido realizar essa ação para requisições que foram iniciadas o atendimento por você. Desmarque as requisições que não foram iniciadas o atendimento para prosseguir.", dominio, modulo)); | 425 | internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.MSG.INTERROMPER_ATENDIMENTO_NAO_INICIADO", "Somente é permitido realizar essa ação para requisições que foram iniciadas o atendimento por você. Desmarque as requisições que não foram iniciadas o atendimento para prosseguir.", dominio, modulo)); |
425 | internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.MSG.INTERROMPER_ATENDIMENTO_INICIADO_OUTRO_ATENDENTE", "Somente é permitido realizar essa ação para requisições que foram iniciadas o atendimento por você. Desmarque as requisições que foram iniciadas por outros atendentes para prosseguir.", dominio, modulo)); | 426 | internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.MSG.INTERROMPER_ATENDIMENTO_INICIADO_OUTRO_ATENDENTE", "Somente é permitido realizar essa ação para requisições que foram iniciadas o atendimento por você. Desmarque as requisições que foram iniciadas por outros atendentes para prosseguir.", dominio, modulo)); |
426 | 427 |
cit-almoxarifado-web/src/main/webapp/assets/js/angular/custom/controller/AtendimentoRequisicaoConsumoController.js
@@ -358,20 +358,25 @@ citApp.controller( 'AtendimentoRequisicaoConsumoController', | @@ -358,20 +358,25 @@ citApp.controller( 'AtendimentoRequisicaoConsumoController', | ||
358 | var atendimentoItem = { | 358 | var atendimentoItem = { |
359 | material : requisicaoConsumoItem.materialConsumo, | 359 | material : requisicaoConsumoItem.materialConsumo, |
360 | requisicaoConsumoItem : requisicaoConsumoItem, | 360 | requisicaoConsumoItem : requisicaoConsumoItem, |
361 | - $locaisEstoque: [] | 361 | + $locaisEstoque: [], |
362 | + atendimentoRequisicaoConsumoItemEnderecos: [] | ||
362 | }; | 363 | }; |
363 | 364 | ||
364 | MaterialLocalEstoqueRepository.buscarLocaisEstoquePorIdMaterialIdAlmoxarifado(requisicaoConsumoItem.materialConsumo.id, req.almoxarifado.id).then(function(result) { | 365 | MaterialLocalEstoqueRepository.buscarLocaisEstoquePorIdMaterialIdAlmoxarifado(requisicaoConsumoItem.materialConsumo.id, req.almoxarifado.id).then(function(result) { |
365 | - atendimentoItem.$locaisEstoque = result; | ||
366 | - | ||
367 | result.forEach(function(localEstoque){ | 366 | result.forEach(function(localEstoque){ |
367 | + var atendimentoRequisicaoConsumoItemEndereco = { | ||
368 | + materialLocalEstoque: localEstoque.originalElement | ||
369 | + }; | ||
370 | + | ||
371 | + atendimentoItem.$locaisEstoque.push(atendimentoRequisicaoConsumoItemEndereco); | ||
372 | + | ||
368 | if(localEstoque.localPrincipal){ | 373 | if(localEstoque.localPrincipal){ |
369 | - atendimentoItem.materialLocalEstoque = localEstoque.originalElement; | 374 | + atendimentoItem.atendimentoRequisicaoConsumoItemEnderecos.push(atendimentoRequisicaoConsumoItemEndereco); |
370 | } | 375 | } |
371 | }); | 376 | }); |
372 | }); | 377 | }); |
373 | 378 | ||
374 | - buscarInformacoesParaAtendimento(atendimentoItem); | 379 | + //buscarInformacoesParaAtendimento(atendimentoItem); |
375 | 380 | ||
376 | atendimento.atendimentoRequisicaoConsumoItems.push(atendimentoItem); | 381 | atendimento.atendimentoRequisicaoConsumoItems.push(atendimentoItem); |
377 | }); | 382 | }); |
@@ -550,5 +555,20 @@ citApp.controller( 'AtendimentoRequisicaoConsumoController', | @@ -550,5 +555,20 @@ citApp.controller( 'AtendimentoRequisicaoConsumoController', | ||
550 | $scope.apresentarInfoAtendimentoItem = function(atendimento){ | 555 | $scope.apresentarInfoAtendimentoItem = function(atendimento){ |
551 | atendimento.$verInfo = !atendimento.$verInfo; | 556 | atendimento.$verInfo = !atendimento.$verInfo; |
552 | }; | 557 | }; |
558 | + | ||
559 | + $scope.openModalEnderecosMaterial = function(enderecosItem, enderecosAdicionados){ | ||
560 | + $scope.listaEnderecosSelect = []; | ||
561 | + $scope.listaEnderecosAdicionados = enderecosAdicionados; | ||
562 | + | ||
563 | + enderecosItem.forEach(function(enderecoItem){ | ||
564 | + enderecosAdicionados.forEach(function(enderecoAdicionado){ | ||
565 | + if(enderecoItem.materialLocalEstoque.id != enderecoAdicionado.materialLocalEstoque.id){ | ||
566 | + $scope.listaEnderecosSelect.push(enderecoItem); | ||
567 | + } | ||
568 | + }); | ||
569 | + }); | ||
570 | + | ||
571 | + $scope.$openModal('modal-atendimento-item-enderecos.html', 'md'); | ||
572 | + } | ||
553 | 573 | ||
554 | }]); | 574 | }]); |
cit-almoxarifado-web/src/main/webapp/html/atendimentoRequisicaoConsumo/atendimentoRequisicaoConsumoEdit.html
@@ -113,7 +113,7 @@ | @@ -113,7 +113,7 @@ | ||
113 | <th class="text-center"><translate>ALMOXARIFADO.LABEL.QUANTIDADE_PEDIDA</translate></th> | 113 | <th class="text-center"><translate>ALMOXARIFADO.LABEL.QUANTIDADE_PEDIDA</translate></th> |
114 | <th class="text-center"><translate>ALMOXARIFADO.LABEL.QUANTIDADE_ATENDIDA</translate></th> | 114 | <th class="text-center"><translate>ALMOXARIFADO.LABEL.QUANTIDADE_ATENDIDA</translate></th> |
115 | <th class="text-center" width="20%"><translate>ALMOXARIFADO.LABEL.ENDERECO_ESTOQUE</translate></th> | 115 | <th class="text-center" width="20%"><translate>ALMOXARIFADO.LABEL.ENDERECO_ESTOQUE</translate></th> |
116 | - <th class="text-center"><translate>ALMOXARIFADO.LABEL.ATENDER</translate><span class="red">*</span></th> | 116 | + <th class="text-center"><translate>ALMOXARIFADO.LABEL.ATENDER</translate><span class="red"> *</span></th> |
117 | </tr> | 117 | </tr> |
118 | </thead> | 118 | </thead> |
119 | <tbody> | 119 | <tbody> |
@@ -137,16 +137,25 @@ | @@ -137,16 +137,25 @@ | ||
137 | - atendimentoRequisicaoConsumoItem.$quantidade}}</td> | 137 | - atendimentoRequisicaoConsumoItem.$quantidade}}</td> |
138 | 138 | ||
139 | <td class="text-center"> | 139 | <td class="text-center"> |
140 | - <label-select ng-id="atendimentoRequisicaoConsumoItem.materialLocalEstoque$index" ng-obrigatorio="true" | ||
141 | - ng-model="atendimentoRequisicaoConsumoItem.materialLocalEstoque.id" ng-list="atendimentoRequisicaoConsumoItem.$locaisEstoque" | ||
142 | - form="atendimentoRequisicaoConsumoForm" | ||
143 | - ng-custom-options="materialLocalEstoque.id as materialLocalEstoque.endereco.descricao for materialLocalEstoque"></label-select> | ||
144 | - | 140 | + <table style="width: 100%"> |
141 | + <tr> | ||
142 | + <td> | ||
143 | + <label-select ng-id="atendimentoRequisicaoConsumoItem.materialLocalEstoque$index" ng-obrigatorio="true" | ||
144 | + ng-model="atendimentoRequisicaoConsumoItem.atendimentoRequisicaoConsumoItemEnderecos[0]" ng-list="atendimentoRequisicaoConsumoItem.$locaisEstoque" | ||
145 | + form="atendimentoRequisicaoConsumoForm" | ||
146 | + ng-custom-options="atendimentoRequisicaoConsumoItemEndereco as atendimentoRequisicaoConsumoItemEndereco.materialLocalEstoque.endereco.descricao for atendimentoRequisicaoConsumoItemEndereco"></label-select> | ||
147 | + </td> | ||
148 | + <td style="padding-left: 8px; text-align: right;"> | ||
149 | + <i class="fa fa-plus green" style="cursor: pointer;" ng-click="openModalEnderecosMaterial(atendimentoRequisicaoConsumoItem.$locaisEstoque, atendimentoRequisicaoConsumoItem.atendimentoRequisicaoConsumoItemEnderecos)" | ||
150 | + tooltip="{{$translate.instant('ALMOXARIFADO.MSG.ATENDER_MAIS_DE_UM_ENDERECO')}}"/> | ||
151 | + </td> | ||
152 | + </tr> | ||
153 | + </table> | ||
145 | </td> | 154 | </td> |
146 | 155 | ||
147 | <td ng-if="atendimentoRequisicaoConsumoItem.requisicaoConsumoItem.quantidade != atendimentoRequisicaoConsumoItem.requisicaoConsumoItem.quantidadeAtendida" class="text-center"> | 156 | <td ng-if="atendimentoRequisicaoConsumoItem.requisicaoConsumoItem.quantidade != atendimentoRequisicaoConsumoItem.requisicaoConsumoItem.quantidadeAtendida" class="text-center"> |
148 | <label-input-decimal ng-id="atendimentoRequisicaoConsumoItem.quantidade$index" ng-obrigatorio="true" ng-evento-blur="aplicarValidacaoDecimal" | 157 | <label-input-decimal ng-id="atendimentoRequisicaoConsumoItem.quantidade$index" ng-obrigatorio="true" ng-evento-blur="aplicarValidacaoDecimal" |
149 | - ng-model="atendimentoRequisicaoConsumoItem.quantidade" form="atendimentoRequisicaoConsumoForm" ng-disabled="!edit" ng-custom-maxlength="{{atendimentoRequisicaoConsumoItem.material.unidadeArmazenamento.tipoNumerico.codigo === 1 ? 4 : 11}}" | 158 | + ng-model="atendimentoRequisicaoConsumoItem.atendimentoRequisicaoConsumoItemEnderecos[0].quantidade" form="atendimentoRequisicaoConsumoForm" ng-disabled="!edit" ng-custom-maxlength="{{atendimentoRequisicaoConsumoItem.material.unidadeArmazenamento.tipoNumerico.codigo === 1 ? 4 : 11}}" |
150 | ng-precisao="{{atendimentoRequisicaoConsumoItem.material.unidadeArmazenamento.tipoNumerico.codigo === 1 ? 0 : 'decimal'}}" /> | 159 | ng-precisao="{{atendimentoRequisicaoConsumoItem.material.unidadeArmazenamento.tipoNumerico.codigo === 1 ? 0 : 'decimal'}}" /> |
151 | </td> | 160 | </td> |
152 | <td class="text-center" ng-show="atendimentoRequisicaoConsumoItem.requisicaoConsumoItem.quantidade == atendimentoRequisicaoConsumoItem.requisicaoConsumoItem.quantidadeAtendida"> | 161 | <td class="text-center" ng-show="atendimentoRequisicaoConsumoItem.requisicaoConsumoItem.quantidade == atendimentoRequisicaoConsumoItem.requisicaoConsumoItem.quantidadeAtendida"> |
@@ -226,5 +235,9 @@ | @@ -226,5 +235,9 @@ | ||
226 | </div> | 235 | </div> |
227 | </fieldset> | 236 | </fieldset> |
228 | </div> | 237 | </div> |
238 | + | ||
239 | + <script type="text/ng-template" id="modal-atendimento-item-enderecos.html"> | ||
240 | + <div ng-include src="'/cit-almoxarifado-web/html/atendimentoRequisicaoConsumo/dialog_atendimento_item_enderecos.html'" /> | ||
241 | + </script> | ||
229 | </form> | 242 | </form> |
230 | </div> | 243 | </div> |
cit-almoxarifado-web/src/main/webapp/html/atendimentoRequisicaoConsumo/dialog_atendimento_item_enderecos.html
0 → 100644
@@ -0,0 +1,72 @@ | @@ -0,0 +1,72 @@ | ||
1 | +<div class="modal-header"> | ||
2 | + <button class="btn btn-clear" type="button" | ||
3 | + title="{{$translate.instant('ALMOXARIFADO.LABEL.FILTRAR')}}" | ||
4 | + alt="{{$translate.instant('ALMOXARIFADO.LABEL.FILTRAR')}}" | ||
5 | + ng-click="filtrarRequisicoes();"> | ||
6 | + <i class="fa fa-plus-circle yellow-dark"></i> | ||
7 | + <translate>ALMOXARIFADO.LABEL.FILTRAR</translate> | ||
8 | + </button> | ||
9 | + | ||
10 | + <button title="{{$translate.instant('LABEL.LIMPAR')}}" | ||
11 | + alt="{{$translate.instant('LABEL.LIMPAR')}}" | ||
12 | + ng-click="limparBuscaAvancada()" class="btn btn-clear" type="button"> | ||
13 | + <i class="fa fa-eraser"></i> | ||
14 | + <translate>LABEL.LIMPAR</translate> | ||
15 | + </button> | ||
16 | + | ||
17 | + <button title="{{$translate.instant('LABEL.CANCELAR')}}" | ||
18 | + alt="{{$translate.instant('LABEL.CANCELAR')}}" | ||
19 | + ng-click="$dismiss('cancel');" class="btn btn-clear" type="button"> | ||
20 | + <i class="fa fa-times red"></i> | ||
21 | + <translate>LABEL.CANCELAR</translate> | ||
22 | + </button> | ||
23 | +</div> | ||
24 | + | ||
25 | +<div class="modal-body"> | ||
26 | + <legend style="font-size: 20px"> | ||
27 | + <translate>LABEL.MATERIAIS</translate> | ||
28 | + </legend> | ||
29 | + | ||
30 | + <div class="row"> | ||
31 | + <div class="col-md-12"> | ||
32 | + <label-select ng-id="selectEnderecosMaterial" ng-obrigatorio="true" | ||
33 | + ng-model="enderecoSelecionado" ng-list="listaEnderecosSelect" | ||
34 | + ng-custom-options="atendimentoRequisicaoConsumoItemEndereco.materialLocalEstoque.endereco.descricao for atendimentoRequisicaoConsumoItemEndereco"></label-select> | ||
35 | + </div> | ||
36 | + </div> | ||
37 | + <div class="row"> | ||
38 | + <div class="col-sm-12"> | ||
39 | + <div class="panel panel-default"> | ||
40 | + <div class="panel-heading clearfix"> | ||
41 | + <button class="btn btn-clear" type="button" | ||
42 | + <i class="fa fa-times red"></i> | ||
43 | + <translate>LABEL.REMOVER</translate> | ||
44 | + </button> | ||
45 | + </div> | ||
46 | + <table class="table table-bordered table-striped"> | ||
47 | + <thead> | ||
48 | + <tr> | ||
49 | + <th style="width: 3%;" class="text-center"><input type="checkbox" ng-model="filtroAtendimento.unidadeRequisitanteSelectedAll" ng-click="selectAllUnidadesRequisitantes(unidadeRequisitanteSelectedAll)" /></th> | ||
50 | + <th style="text-align: center"><translate>ALMOXARIFADO.LABEL.ENDERECO_ESTOQUE</translate></th> | ||
51 | + <th style="text-align: center"><translate>ALMOXARIFADO.LABEL.SALDO_ENDERECO</translate></th> | ||
52 | + <th style="text-align: center"><translate>ALMOXARIFADO.LABEL.ATENDER</translate></th> | ||
53 | + </tr> | ||
54 | + </thead> | ||
55 | + <tbody ng-repeat="atendimentoRequisicaoConsumoItemEndereco in listaEnderecosAdicionados"> | ||
56 | + <tr> | ||
57 | + <td class="text-center"><input type="checkbox" ng-checked="unidadeRequisitanteSelecionada.$checkedChBox" ng-model="unidadeRequisitanteSelecionada.$checkedChBox" /></td> | ||
58 | + <td class="text-center">{{atendimentoRequisicaoConsumoItemEndereco.materialLocalEstoque.endereco.descricao}}</td> | ||
59 | + <td class="text-center">{{atendimentoRequisicaoConsumoItemEndereco.materialLocalEstoque.quantidade}}</td> | ||
60 | + <td class="text-center"> | ||
61 | + <label-input-decimal ng-id="atendimentoRequisicaoConsumoItemEndereco.quantidade" ng-obrigatorio="true" ng-evento-blur="aplicarValidacaoDecimal" | ||
62 | + ng-model="atendimentoRequisicaoConsumoItemEndereco.quantidade" form="atendimentoRequisicaoConsumoForm" | ||
63 | + ng-custom-maxlength="{{atendimentoRequisicaoConsumoItemEndereco.materialLocalEstoque.materialEstoque.material.unidadeArmazenamento.tipoNumerico.codigo === 1 ? 4 : 11}}" | ||
64 | + ng-precisao="{{atendimentoRequisicaoConsumoItemEndereco.materialLocalEstoque.materialEstoque.material.unidadeArmazenamento.tipoNumerico.codigo === 1 ? 0 : 'decimal'}}" /> | ||
65 | + </td> | ||
66 | + </tr> | ||
67 | + </tbody> | ||
68 | + </table> | ||
69 | + </div> | ||
70 | + </div> | ||
71 | + </div> | ||
72 | +</div> |