Commit c63e6bc54c8d60d4f37f5f899d24940181dde407

Authored by erick.sato
2 parents 05ad7322 982313a1
Exists in master

Merge branch 'tarefa-3822' of http://ferramentasgo.centralit.com.br:8080/scm/git…

…/cit-grp-almoxarifado into tarefa-3822
cit-almoxarifado-api/src/main/java/br/com/centralit/api/model/AtendimentoRequisicaoConsumo.java
... ... @@ -11,8 +11,8 @@ import javax.persistence.FetchType;
11 11 import javax.persistence.GeneratedValue;
12 12 import javax.persistence.GenerationType;
13 13 import javax.persistence.Id;
14   -import javax.persistence.ManyToOne;
15 14 import javax.persistence.OneToMany;
  15 +import javax.persistence.OneToOne;
16 16 import javax.persistence.Table;
17 17 import javax.persistence.Temporal;
18 18 import javax.persistence.TemporalType;
... ... @@ -21,6 +21,7 @@ import javax.persistence.Transient;
21 21 import org.hibernate.envers.AuditTable;
22 22 import org.hibernate.envers.Audited;
23 23  
  24 +import br.com.centralit.api.framework.json.ViewsAdmMateriais;
24 25 import br.com.centralit.api.framework.json.ViewsAlmoxarifado;
25 26 import br.com.centralit.framework.json.JsonCalendarSimpleDateDeserializer;
26 27 import br.com.centralit.framework.json.JsonCalendarSimpleDateSerializer;
... ... @@ -93,13 +94,13 @@ public class AtendimentoRequisicaoConsumo extends PersistentObjectAuditOrganizac
93 94 private String numeroAtendimento;
94 95  
95 96 /** Atributo requisicaoConsumo. */
96   - @ManyToOne(fetch = FetchType.LAZY, optional = false)
  97 + @OneToOne(fetch = FetchType.LAZY, optional = false)
97 98 @JsonView({ ViewsAlmoxarifado.AtendimentoRequisicaoConsumoListView.class })
98 99 private RequisicaoConsumo requisicaoConsumo;
99 100  
100 101 /** Atributo atendimentoRequisicaoConsumoItems. */
101 102 @OneToMany(fetch = FetchType.LAZY, mappedBy = "atendimentoRequisicaoConsumo", cascade = CascadeType.ALL, orphanRemoval = true)
102   - @JsonView({ ViewsAlmoxarifado.AtendimentoRequisicaoConsumoEditView.class })
  103 + @JsonView({ ViewsAlmoxarifado.AtendimentoRequisicaoConsumoEditView.class, ViewsAdmMateriais.RequisicaoConsumoEditView.class })
103 104 private Collection<AtendimentoRequisicaoConsumoItem> atendimentoRequisicaoConsumoItems;
104 105  
105 106 @Transient
... ...
cit-almoxarifado-api/src/main/java/br/com/centralit/api/model/AtendimentoRequisicaoConsumoItem.java
... ... @@ -17,13 +17,14 @@ import javax.persistence.Table;
17 17 import org.hibernate.envers.AuditTable;
18 18 import org.hibernate.envers.Audited;
19 19  
20   -import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
21   -import com.fasterxml.jackson.annotation.JsonView;
22   -
  20 +import br.com.centralit.api.framework.json.ViewsAdmMateriais;
23 21 import br.com.centralit.api.framework.json.ViewsAlmoxarifado;
24 22 import br.com.centralit.framework.json.Views;
25 23 import br.com.centralit.framework.model.arquitetura.PersistentObjectAuditOrganizacao;
26 24  
  25 +import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
  26 +import com.fasterxml.jackson.annotation.JsonView;
  27 +
27 28 /**
28 29 * <p>
29 30 * <img src="http://centralit.com.br/images/logo_central.png">
... ... @@ -79,18 +80,16 @@ public class AtendimentoRequisicaoConsumoItem extends PersistentObjectAuditOrgan
79 80 private AtendimentoRequisicaoConsumo atendimentoRequisicaoConsumo;
80 81  
81 82 @ManyToOne(fetch = FetchType.LAZY, optional = false)
82   - @JsonView({ ViewsAlmoxarifado.AtendimentoRequisicaoConsumoItem.class,
83   - ViewsAlmoxarifado.AtendimentoRequisicaoConsumoEditView.class, Views.MaterialConsultaInfo.class })
  83 + @JsonView({ ViewsAlmoxarifado.AtendimentoRequisicaoConsumoItem.class, ViewsAlmoxarifado.AtendimentoRequisicaoConsumoEditView.class, Views.MaterialConsultaInfo.class, ViewsAdmMateriais.RequisicaoConsumoEditView.class })
84 84 private RequisicaoConsumoItem requisicaoConsumoItem;
85 85  
86 86 /** Atributo material. */
87 87 @ManyToOne(fetch = FetchType.LAZY, optional = false)
88   - @JsonView({ ViewsAlmoxarifado.AtendimentoRequisicaoConsumoItem.class,
89   - ViewsAlmoxarifado.AtendimentoRequisicaoConsumoEditView.class })
  88 + @JsonView({ ViewsAlmoxarifado.AtendimentoRequisicaoConsumoItem.class, ViewsAlmoxarifado.AtendimentoRequisicaoConsumoEditView.class, ViewsAdmMateriais.RequisicaoConsumoEditView.class })
90 89 private MaterialConsumo material;
91 90  
92 91 @OneToMany(fetch = FetchType.LAZY, mappedBy = "atendimentoRequisicaoConsumoItem", cascade = CascadeType.ALL, orphanRemoval = true)
93   - @JsonView({ ViewsAlmoxarifado.AtendimentoRequisicaoConsumoEditView.class })
  92 + @JsonView({ ViewsAlmoxarifado.AtendimentoRequisicaoConsumoEditView.class, ViewsAdmMateriais.RequisicaoConsumoEditView.class })
94 93 private Collection<AtendimentoRequisicaoConsumoItemEndereco> atendimentoRequisicaoConsumoItemEnderecos;
95 94  
96 95 @OneToMany(fetch = FetchType.LAZY, mappedBy = "atendimentoRequisicaoConsumoItem", cascade = CascadeType.ALL, orphanRemoval = true)
... ...
cit-almoxarifado-api/src/main/java/br/com/centralit/api/model/AtendimentoRequisicaoConsumoItemEndereco.java
... ... @@ -10,10 +10,12 @@ import javax.persistence.Id;
10 10 import javax.persistence.JoinColumn;
11 11 import javax.persistence.ManyToOne;
12 12 import javax.persistence.Table;
  13 +import javax.persistence.Transient;
13 14  
14 15 import org.hibernate.envers.AuditTable;
15 16 import org.hibernate.envers.Audited;
16 17  
  18 +import br.com.centralit.api.framework.json.ViewsAdmMateriais;
17 19 import br.com.centralit.api.framework.json.ViewsAlmoxarifado;
18 20 import br.com.centralit.framework.json.Views;
19 21 import br.com.centralit.framework.model.arquitetura.PersistentObject;
... ... @@ -35,17 +37,21 @@ public class AtendimentoRequisicaoConsumoItemEndereco extends PersistentObject {
35 37 @JsonView({ Views.GenericView.class })
36 38 private Long id;
37 39  
38   - @JsonView({ ViewsAlmoxarifado.AtendimentoRequisicaoConsumoItem.class, ViewsAlmoxarifado.AtendimentoRequisicaoConsumoEditView.class, Views.MaterialConsultaInfo.class })
  40 + @JsonView({Views.GenericView.class })
39 41 private BigDecimal quantidade;
40 42  
41 43 @ManyToOne(fetch = FetchType.LAZY, optional = false)
42   - @JsonView({ViewsAlmoxarifado.AtendimentoRequisicaoConsumoEditView.class})
  44 + @JsonView({ViewsAlmoxarifado.AtendimentoRequisicaoConsumoEditView.class, ViewsAdmMateriais.RequisicaoConsumoEditView.class})
43 45 private MaterialLocalEstoque materialLocalEstoque;
44 46  
45 47 @ManyToOne(fetch = FetchType.LAZY, optional = false)
46 48 @JsonView({ViewsAlmoxarifado.AtendimentoRequisicaoConsumoEditView.class})
47 49 @JoinColumn(name = "at_req_consumoitem_id")
48 50 private AtendimentoRequisicaoConsumoItem atendimentoRequisicaoConsumoItem;
  51 +
  52 + @Transient
  53 + @JsonView({ViewsAdmMateriais.RequisicaoConsumoEditView.class, ViewsAlmoxarifado.AtendimentoRequisicaoConsumoEditView.class })
  54 + private BigDecimal quantidadeAnterior;
49 55  
50 56 @Override
51 57 public Long getId() {
... ... @@ -80,5 +86,21 @@ public class AtendimentoRequisicaoConsumoItemEndereco extends PersistentObject {
80 86 AtendimentoRequisicaoConsumoItem atendimentoRequisicaoConsumoItem) {
81 87 this.atendimentoRequisicaoConsumoItem = atendimentoRequisicaoConsumoItem;
82 88 }
  89 +
  90 + public BigDecimal getQuantidadeAnterior() {
  91 + if(quantidadeAnterior == null){
  92 + if(quantidade == null){
  93 + quantidadeAnterior = BigDecimal.ZERO;
  94 + }else{
  95 + quantidadeAnterior = quantidade;
  96 + }
  97 + }
  98 +
  99 + return quantidadeAnterior;
  100 + }
  101 +
  102 + public void setQuantidadeAnterior(BigDecimal quantidadeAnterior) {
  103 + this.quantidadeAnterior = quantidadeAnterior;
  104 + }
83 105  
84 106 }
... ...
cit-almoxarifado-api/src/main/java/br/com/centralit/api/model/EnderecoEstoque.java
... ... @@ -85,7 +85,7 @@ public class EnderecoEstoque extends PersistentObjectAuditOrganizacao {
85 85 private String sigla;
86 86  
87 87 @Column(name = "descricao", length = 400, nullable = false)
88   - @JsonView({ ViewsAdmMateriais.EnderecoEstoqueView.class, Views.MaterialLocalEstoqueView.class, ViewsAdmMateriais.TransferenciaEnderecoEstoqueView.class })
  88 + @JsonView({ ViewsAdmMateriais.EnderecoEstoqueView.class, Views.MaterialLocalEstoqueView.class, ViewsAdmMateriais.TransferenciaEnderecoEstoqueView.class, ViewsAdmMateriais.RequisicaoConsumoEditView.class })
89 89 private String descricao;
90 90  
91 91 @ManyToOne(fetch = FetchType.LAZY, optional = true)
... ...
cit-almoxarifado-api/src/main/java/br/com/centralit/api/model/MaterialEstoque.java
... ... @@ -18,6 +18,7 @@ import org.hibernate.envers.Audited;
18 18  
19 19 import com.fasterxml.jackson.annotation.JsonView;
20 20  
  21 +import br.com.centralit.api.framework.json.ViewsAdmMateriais;
21 22 import br.com.centralit.framework.json.Views;
22 23 import br.com.centralit.framework.model.arquitetura.PersistentObjectAuditOrganizacao;
23 24 import br.com.centralit.framework.util.UtilObjeto;
... ... @@ -71,7 +72,7 @@ public class MaterialEstoque extends PersistentObjectAuditOrganizacao {
71 72  
72 73 /** Atributo material. */
73 74 @OneToOne(fetch = FetchType.LAZY, optional = false)
74   - @JsonView({ Views.MaterialLocalEstoqueView.class })
  75 + @JsonView({ Views.MaterialLocalEstoqueView.class, ViewsAdmMateriais.RequisicaoConsumoEditView.class })
75 76 private MaterialConsumo material;
76 77  
77 78 /** Atributo locaisEstoque. */
... ...
cit-almoxarifado-api/src/main/java/br/com/centralit/api/model/MaterialLocalEstoque.java
... ... @@ -68,7 +68,7 @@ public class MaterialLocalEstoque extends PersistentObjectAuditOrganizacao {
68 68  
69 69 /** Atributo materialEstoque. */
70 70 @ManyToOne(fetch = FetchType.LAZY, optional = false, cascade = CascadeType.PERSIST)
71   - @JsonView({ Views.MaterialLocalEstoqueView.class, ViewsAdmMateriais.TransferenciaEnderecoEstoqueView.class })
  71 + @JsonView({Views.MaterialLocalEstoqueView.class, ViewsAdmMateriais.TransferenciaEnderecoEstoqueView.class, ViewsAdmMateriais.RequisicaoConsumoEditView.class })
72 72 private MaterialEstoque materialEstoque;
73 73  
74 74 /** Atributo materialEstoqueInativo. */
... ... @@ -77,7 +77,7 @@ public class MaterialLocalEstoque extends PersistentObjectAuditOrganizacao {
77 77  
78 78 /** Atributo endereco. */
79 79 @ManyToOne(fetch = FetchType.LAZY, optional = false)
80   - @JsonView({ Views.MaterialLocalEstoqueView.class, ViewsAdmMateriais.TransferenciaEnderecoEstoqueView.class })
  80 + @JsonView({ Views.MaterialLocalEstoqueView.class, ViewsAdmMateriais.TransferenciaEnderecoEstoqueView.class, ViewsAdmMateriais.RequisicaoConsumoEditView.class })
81 81 private EnderecoEstoque endereco;
82 82  
83 83 /** Atributo enderecoInativo. */
... ... @@ -88,7 +88,7 @@ public class MaterialLocalEstoque extends PersistentObjectAuditOrganizacao {
88 88 private BigDecimal capacidade;
89 89  
90 90 /** Atributo quantidade. */
91   - @JsonView({ Views.MaterialLocalEstoqueView.class, ViewsAdmMateriais.TransferenciaEnderecoEstoqueView.class })
  91 + @JsonView({ Views.MaterialLocalEstoqueView.class, ViewsAdmMateriais.TransferenciaEnderecoEstoqueView.class, ViewsAdmMateriais.RequisicaoConsumoEditView.class })
92 92 private BigDecimal quantidade = BigDecimal.ZERO;
93 93  
94 94 /** Atributo unidadeMedidaEntrada. */
... ...
cit-almoxarifado-api/src/main/java/br/com/centralit/api/model/RequisicaoConsumo.java
... ... @@ -13,6 +13,7 @@ import javax.persistence.Id;
13 13 import javax.persistence.JoinColumn;
14 14 import javax.persistence.ManyToOne;
15 15 import javax.persistence.OneToMany;
  16 +import javax.persistence.OneToOne;
16 17 import javax.persistence.Table;
17 18 import javax.persistence.Temporal;
18 19 import javax.persistence.TemporalType;
... ... @@ -171,6 +172,10 @@ public class RequisicaoConsumo extends PersistentObjectAuditOrganizacao {
171 172 @JoinColumn(name = "atendente_id")
172 173 @JsonView({ ViewsAlmoxarifado.AtendimentoRequisicaoConsumoEditView.class })
173 174 private Usuario atendente;
  175 +
  176 + @OneToOne(mappedBy = "requisicaoConsumo", fetch = FetchType.LAZY)
  177 + @JsonView({ViewsAlmoxarifado.AtendimentoRequisicaoConsumoEditView.class, ViewsAdmMateriais.RequisicaoConsumoEditView.class})
  178 + private AtendimentoRequisicaoConsumo atendimentoRequisicaoConsumo;
174 179  
175 180 /**
176 181 * Retorna o valor do atributo <code>id</code>
... ... @@ -391,4 +396,12 @@ public class RequisicaoConsumo extends PersistentObjectAuditOrganizacao {
391 396 this.atendente = atendente;
392 397 }
393 398  
  399 + public AtendimentoRequisicaoConsumo getAtendimentoRequisicaoConsumo() {
  400 + return atendimentoRequisicaoConsumo;
  401 + }
  402 +
  403 + public void setAtendimentoRequisicaoConsumo(
  404 + AtendimentoRequisicaoConsumo atendimentoRequisicaoConsumo) {
  405 + this.atendimentoRequisicaoConsumo = atendimentoRequisicaoConsumo;
  406 + }
394 407 }
... ...
cit-almoxarifado-web/src/main/webapp/assets/js/angular/custom/controller/AtendimentoRequisicaoConsumoController.js
... ... @@ -317,41 +317,90 @@ citApp.controller( &#39;AtendimentoRequisicaoConsumoController&#39;,
317 317 }
318 318  
319 319 $scope.addRequisicaoConsumoAoAtendimento = function(req){
320   - var atendimento = {requisicaoConsumo : req};
321   -
322   - if(atendimento.requisicaoConsumo.tipoStatusRequisicao.codigo == $scope.TIPO_STATUS_PRONTA_PARA_ATENDIMENTO || atendimento.requisicaoConsumo.tipoStatusRequisicao.codigo == $scope.TIPO_STATUS_ATENDIDA_PARCIALMENTE){
  320 + if(req.atendimentoRequisicaoConsumo){
  321 + var atendimento = req.atendimentoRequisicaoConsumo;
  322 + delete req.atendimentoRequisicaoConsumo;
  323 +
  324 + atendimento.requisicaoConsumo = req;
  325 +
323 326  
324   - atendimento.requisicaoConsumo.requisicaoConsumoItens.forEach(function (requisicaoConsumoItem) {
325   - if(!atendimento.atendimentoRequisicaoConsumoItems){
326   - atendimento.atendimentoRequisicaoConsumoItems = [];
  327 + if(atendimento.requisicaoConsumo.tipoStatusRequisicao.codigo == $scope.TIPO_STATUS_PRONTA_PARA_ATENDIMENTO || atendimento.requisicaoConsumo.tipoStatusRequisicao.codigo == $scope.TIPO_STATUS_ATENDIDA_PARCIALMENTE){
  328 + var contem = false;
  329 + for(var index = atendimento.atendimentoRequisicaoConsumoItems.length - 1; index >= 0; index--){
  330 + atendimento.requisicaoConsumo.requisicaoConsumoItens.forEach(function(item){
  331 + if(item.id === atendimento.atendimentoRequisicaoConsumoItems[index].requisicaoConsumoItem.id){
  332 + contem = true;
  333 + }
  334 + });
  335 +
  336 + if(!contem){
  337 + atendimento.atendimentoRequisicaoConsumoItems.splice(index, 1);
  338 + }else{
  339 + contem = false;
  340 + }
327 341 }
328 342  
329   - var atendimentoItem = {
330   - material : requisicaoConsumoItem.materialConsumo,
331   - requisicaoConsumoItem : requisicaoConsumoItem,
332   - $locaisEstoque: [],
333   - atendimentoRequisicaoConsumoItemEnderecos: []
334   - };
335   -
336   - MaterialLocalEstoqueRepository.buscarLocaisEstoquePorIdMaterialIdAlmoxarifado(requisicaoConsumoItem.materialConsumo.id, req.almoxarifado.id).then(function(result) {
337   - result.forEach(function(localEstoque){
338   - var atendimentoRequisicaoConsumoItemEndereco = {
339   - materialLocalEstoque: localEstoque.originalElement
340   - };
341   -
342   - atendimentoItem.$locaisEstoque.push(atendimentoRequisicaoConsumoItemEndereco);
343   -
344   - if(localEstoque.localPrincipal){
345   - atendimentoItem.atendimentoRequisicaoConsumoItemEnderecos.push(atendimentoRequisicaoConsumoItemEndereco);
346   - }
  343 + atendimento.atendimentoRequisicaoConsumoItems.forEach(function(atendimentoItem){
  344 + atendimentoItem.$locaisEstoque = [];
  345 + MaterialLocalEstoqueRepository.buscarLocaisEstoquePorIdMaterialIdAlmoxarifado(atendimentoItem.material.id, req.almoxarifado.id).then(function(result) {
  346 + result.forEach(function(localEstoque){
  347 + var atendimentoRequisicaoConsumoItemEndereco = {
  348 + materialLocalEstoque: localEstoque.originalElement
  349 + };
  350 +
  351 + atendimentoItem.$locaisEstoque.push(atendimentoRequisicaoConsumoItemEndereco);
  352 + });
347 353 });
  354 +
  355 + atendimentoItem.$somaQtdAtendida = 0;
  356 + if(atendimentoItem.atendimentoRequisicaoConsumoItemEnderecos.length > 1){
  357 + atendimentoItem.atendimentoRequisicaoConsumoItemEnderecos.forEach(function(atendimentoItemEndereco){
  358 + atendimentoItem.$somaQtdAtendida += parseFloat(atendimentoItemEndereco.quantidade);
  359 + });
  360 + }
  361 +
  362 + buscarInformacoesParaAtendimento(atendimentoItem);
348 363 });
  364 + $scope.atendimentos.push(atendimento);
  365 + }
  366 +
  367 + }else{
  368 + var atendimento = {requisicaoConsumo : req};
  369 + if(atendimento.requisicaoConsumo.tipoStatusRequisicao.codigo == $scope.TIPO_STATUS_PRONTA_PARA_ATENDIMENTO || atendimento.requisicaoConsumo.tipoStatusRequisicao.codigo == $scope.TIPO_STATUS_ATENDIDA_PARCIALMENTE){
349 370  
350   - buscarInformacoesParaAtendimento(atendimentoItem);
351   -
352   - atendimento.atendimentoRequisicaoConsumoItems.push(atendimentoItem);
353   - });
354   - $scope.atendimentos.push(atendimento);
  371 + atendimento.requisicaoConsumo.requisicaoConsumoItens.forEach(function (requisicaoConsumoItem) {
  372 + if(!atendimento.atendimentoRequisicaoConsumoItems){
  373 + atendimento.atendimentoRequisicaoConsumoItems = [];
  374 + }
  375 +
  376 + var atendimentoItem = {
  377 + material : requisicaoConsumoItem.materialConsumo,
  378 + requisicaoConsumoItem : requisicaoConsumoItem,
  379 + $locaisEstoque: [],
  380 + atendimentoRequisicaoConsumoItemEnderecos: []
  381 + };
  382 +
  383 + MaterialLocalEstoqueRepository.buscarLocaisEstoquePorIdMaterialIdAlmoxarifado(requisicaoConsumoItem.materialConsumo.id, req.almoxarifado.id).then(function(result) {
  384 + result.forEach(function(localEstoque){
  385 + var atendimentoRequisicaoConsumoItemEndereco = {
  386 + materialLocalEstoque: localEstoque.originalElement
  387 + };
  388 +
  389 + atendimentoItem.$locaisEstoque.push(atendimentoRequisicaoConsumoItemEndereco);
  390 +
  391 + if(localEstoque.localPrincipal){
  392 + atendimentoItem.atendimentoRequisicaoConsumoItemEnderecos.push(atendimentoRequisicaoConsumoItemEndereco);
  393 + }
  394 + });
  395 + });
  396 +
  397 + buscarInformacoesParaAtendimento(atendimentoItem);
  398 +
  399 + atendimento.atendimentoRequisicaoConsumoItems.push(atendimentoItem);
  400 + });
  401 + $scope.atendimentos.push(atendimento);
  402 + }
  403 +
355 404 }
356 405  
357 406 if($scope.atendimentoRequisicaoConsumo && $scope.atendimentoRequisicaoConsumo.dataAtendimento){
... ... @@ -586,18 +635,25 @@ citApp.controller( &#39;AtendimentoRequisicaoConsumoController&#39;,
586 635 if(enderecosAdicionados[0] && enderecosAdicionados[0].materialLocalEstoque){
587 636 if(enderecosAdicionados.length > 0){
588 637 enderecosItem.forEach(function(enderecoItem){
  638 + var contem = false;
589 639 enderecosAdicionados.forEach(function(enderecoAdicionado){
590   - if(enderecoItem.materialLocalEstoque.id != enderecoAdicionado.materialLocalEstoque.id){
591   - $scope.listaEnderecosSelect.push(enderecoItem);
  640 + if(enderecoItem.materialLocalEstoque.id === enderecoAdicionado.materialLocalEstoque.id){
  641 + contem = true;
592 642 }
593 643 });
  644 +
  645 + if(!contem){
  646 + $scope.listaEnderecosSelect.push(enderecoItem);
  647 + }else{
  648 + contem = false;
  649 + }
594 650 });
595 651 }else{
596   - $scope.listaEnderecosSelect = enderecosItem;
  652 + $scope.listaEnderecosSelect = angular.copy(enderecosItem);
597 653 }
598 654 }else{
599 655 enderecosAdicionados = [];
600   - $scope.listaEnderecosSelect = enderecosItem;
  656 + $scope.listaEnderecosSelect = angular.copy(enderecosItem);
601 657 }
602 658  
603 659 $scope.listaEnderecosAdicionados = enderecosAdicionados;
... ...
cit-almoxarifado-web/src/main/webapp/html/atendimentoRequisicaoConsumo/atendimentoRequisicaoConsumoEdit.html
... ... @@ -157,15 +157,12 @@
157 157 </table>
158 158 </td>
159 159  
160   - <td ng-if="atendimentoRequisicaoConsumoItem.requisicaoConsumoItem.quantidade != atendimentoRequisicaoConsumoItem.requisicaoConsumoItem.quantidadeAtendida && atendimentoRequisicaoConsumoItem.atendimentoRequisicaoConsumoItemEnderecos.length <= 1" class="text-center">
  160 + <td ng-if="atendimentoRequisicaoConsumoItem.atendimentoRequisicaoConsumoItemEnderecos.length <= 1" class="text-center">
161 161 <label-input-decimal ng-id="atendimentoRequisicaoConsumoItem.quantidade$index" ng-evento-blur="aplicarValidacaoDecimal" ng-evento-keyup="validarQuantidadesAtendidas()"
162 162 ng-model="atendimentoRequisicaoConsumoItem.atendimentoRequisicaoConsumoItemEnderecos[0].quantidade" form="atendimentoRequisicaoConsumoForm" ng-disabled="!edit" ng-custom-maxlength="{{atendimentoRequisicaoConsumoItem.material.unidadeArmazenamento.tipoNumerico.codigo === 1 ? 4 : 11}}"
163 163 ng-precisao="{{atendimentoRequisicaoConsumoItem.material.unidadeArmazenamento.tipoNumerico.codigo === 1 ? 0 : 'decimal'}}" />
164 164 </td>
165   - <td class="text-center" ng-show="atendimentoRequisicaoConsumoItem.requisicaoConsumoItem.quantidade == atendimentoRequisicaoConsumoItem.requisicaoConsumoItem.quantidadeAtendida">
166   - <i class='fa fa-check green' tooltip="{{$translate.instant('ALMOXARIFADO.LABEL.ATENDIDA')}}"></i>
167   - </td>
168   - <td ng-if="atendimentoRequisicaoConsumoItem.requisicaoConsumoItem.quantidade != atendimentoRequisicaoConsumoItem.requisicaoConsumoItem.quantidadeAtendida && atendimentoRequisicaoConsumoItem.atendimentoRequisicaoConsumoItemEnderecos.length > 1">
  165 + <td ng-if="atendimentoRequisicaoConsumoItem.atendimentoRequisicaoConsumoItemEnderecos.length > 1">
169 166 <label-input ng-type="text" ng-model="atendimentoRequisicaoConsumoItem.$somaQtdAtendida" ng-disabled="true"></label-input>
170 167 </td>
171 168  
... ...