Commit e7fc72ae991f89d4923dffe20b1e722b95455bbb

Authored by erick.sato
2 parents f8ae3d14 ec25b426
Exists in master

Merge branch 'tarefa-3931' into adm-1.12.0

cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/AtendimentoRequisicaoConsumoItemServiceImpl.java
@@ -45,9 +45,9 @@ import br.com.centralit.framework.util.UtilObjeto; @@ -45,9 +45,9 @@ import br.com.centralit.framework.util.UtilObjeto;
45 @Service("atendimentoRequisicaoConsumoItemService") 45 @Service("atendimentoRequisicaoConsumoItemService")
46 public class AtendimentoRequisicaoConsumoItemServiceImpl extends GenericServiceImpl<AtendimentoRequisicaoConsumoItem, Long> implements AtendimentoRequisicaoConsumoItemService { 46 public class AtendimentoRequisicaoConsumoItemServiceImpl extends GenericServiceImpl<AtendimentoRequisicaoConsumoItem, Long> implements AtendimentoRequisicaoConsumoItemService {
47 47
48 - private static final String VALIDACAO_DATA_ATENDIMENTO_FORA_REFERENCIA = "VALIDACAO.DATA_ATENDIMENTO_FORA_REFERENCIA"; 48 + private static final String VALIDACAO_DATA_ATENDIMENTO_FORA_REFERENCIA = "ALMOXARIFADO.VALIDACAO.DATA_ATENDIMENTO_FORA_REFERENCIA";
49 49
50 - private static final String VALIDACAO_ERRO_EXCLUSAO_EXISTE_MOVIMENTACAO = "VALIDACAO.ERRO_EXCLUSAO_EXISTE_MOVIMENTACAO"; 50 + private static final String VALIDACAO_ERRO_EXCLUSAO_EXISTE_MOVIMENTACAO = "ALMOXARIFADO.VALIDACAO.ERRO_EXCLUSAO_EXISTE_MOVIMENTACAO";
51 51
52 /** Atributo atendimentoRequisicaoConsumoItemDao. */ 52 /** Atributo atendimentoRequisicaoConsumoItemDao. */
53 private AtendimentoRequisicaoConsumoItemDao atendimentoRequisicaoConsumoItemDao; 53 private AtendimentoRequisicaoConsumoItemDao atendimentoRequisicaoConsumoItemDao;
@@ -63,7 +63,7 @@ public class AtendimentoRequisicaoConsumoItemServiceImpl extends GenericServiceI @@ -63,7 +63,7 @@ public class AtendimentoRequisicaoConsumoItemServiceImpl extends GenericServiceI
63 63
64 @Autowired 64 @Autowired
65 private RequisicaoConsumoService requisicaoConsumoService; 65 private RequisicaoConsumoService requisicaoConsumoService;
66 - 66 +
67 @Autowired 67 @Autowired
68 private ContaContabilMovimentoService contaContabilMovimentoService; 68 private ContaContabilMovimentoService contaContabilMovimentoService;
69 69
@@ -123,7 +123,7 @@ public class AtendimentoRequisicaoConsumoItemServiceImpl extends GenericServiceI @@ -123,7 +123,7 @@ public class AtendimentoRequisicaoConsumoItemServiceImpl extends GenericServiceI
123 123
124 throw new BusinessException(VALIDACAO_ERRO_EXCLUSAO_EXISTE_MOVIMENTACAO, CodigoErro.REGRA_NEGOCIO.getValue()); 124 throw new BusinessException(VALIDACAO_ERRO_EXCLUSAO_EXISTE_MOVIMENTACAO, CodigoErro.REGRA_NEGOCIO.getValue());
125 } 125 }
126 - 126 +
127 //Remove movimentos do estoque 127 //Remove movimentos do estoque
128 this.movimentoEstoqueService.removerMovimentosAtendimentoItem(entity); 128 this.movimentoEstoqueService.removerMovimentosAtendimentoItem(entity);
129 //Remove movimentos contacontabil 129 //Remove movimentos contacontabil
cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/AtendimentoRequisicaoConsumoServiceImpl.java
@@ -60,13 +60,13 @@ import br.com.centralit.framework.util.UtilString; @@ -60,13 +60,13 @@ import br.com.centralit.framework.util.UtilString;
60 @Service("atendimentoRequisicaoConsumoService") 60 @Service("atendimentoRequisicaoConsumoService")
61 public class AtendimentoRequisicaoConsumoServiceImpl extends GenericServiceImpl<AtendimentoRequisicaoConsumo, Long> implements AtendimentoRequisicaoConsumoService { 61 public class AtendimentoRequisicaoConsumoServiceImpl extends GenericServiceImpl<AtendimentoRequisicaoConsumo, Long> implements AtendimentoRequisicaoConsumoService {
62 62
63 - private static final String VALIDACAO_QUANTIDADE_ZERADA_NEGATIVA = "VALIDACAO.QUANTIDADE_ZERADA_NEGATIVA"; 63 + private static final String VALIDACAO_QUANTIDADE_ZERADA_NEGATIVA = "ALMOXARIFADO.VALIDACAO.QUANTIDADE_ZERADA_NEGATIVA";
64 64
65 - private static final String VALIDACAO_ERRO_EXCLUSAO_EXISTE_MOVIMENTACAO = "VALIDACAO.ERRO_EXCLUSAO_EXISTE_MOVIMENTACAO"; 65 + private static final String VALIDACAO_ERRO_EXCLUSAO_EXISTE_MOVIMENTACAO = "ALMOXARIFADO.VALIDACAO.ERRO_EXCLUSAO_EXISTE_MOVIMENTACAO";
66 66
67 - private static final String VALIDACAO_ERRO_EDICAO_EXISTE_MOVIMENTACAO = "VALIDACAO.ERRO_EDICAO_EXISTE_MOVIMENTACAO"; 67 + private static final String VALIDACAO_ERRO_EDICAO_EXISTE_MOVIMENTACAO = "ALMOXARIFADO.VALIDACAO.ERRO_EDICAO_EXISTE_MOVIMENTACAO";
68 68
69 - private static final String VALIDACAO_DATA_ATENDIMENTO_FORA_REFERENCIA = "VALIDACAO.DATA_ATENDIMENTO_FORA_REFERENCIA"; 69 + private static final String VALIDACAO_DATA_ATENDIMENTO_FORA_REFERENCIA = "ALMOXARIFADO.VALIDACAO.DATA_ATENDIMENTO_FORA_REFERENCIA";
70 70
71 private static final String VALIDACAO_QUANTIDADE_A_ATENDER_SUPERIOR_A_QTD_ESTOQUE = "ALMOXARIFADO.VALIDACAO.QUANTIDADE_A_ATENDER_SUPERIOR_A_QTD_ESTOQUE"; 71 private static final String VALIDACAO_QUANTIDADE_A_ATENDER_SUPERIOR_A_QTD_ESTOQUE = "ALMOXARIFADO.VALIDACAO.QUANTIDADE_A_ATENDER_SUPERIOR_A_QTD_ESTOQUE";
72 72
@@ -95,7 +95,7 @@ public class AtendimentoRequisicaoConsumoServiceImpl extends GenericServiceImpl&lt; @@ -95,7 +95,7 @@ public class AtendimentoRequisicaoConsumoServiceImpl extends GenericServiceImpl&lt;
95 95
96 @Autowired 96 @Autowired
97 private ConfiguracaoParametroSistemaService configuracaoParametroSistemaService; 97 private ConfiguracaoParametroSistemaService configuracaoParametroSistemaService;
98 - 98 +
99 @Autowired 99 @Autowired
100 private ContaContabilMovimentoService contaContabilMovimentoService; 100 private ContaContabilMovimentoService contaContabilMovimentoService;
101 101
@@ -181,13 +181,13 @@ public class AtendimentoRequisicaoConsumoServiceImpl extends GenericServiceImpl&lt; @@ -181,13 +181,13 @@ public class AtendimentoRequisicaoConsumoServiceImpl extends GenericServiceImpl&lt;
181 181
182 //Apaga movimentos de estoque 182 //Apaga movimentos de estoque
183 this.movimentoEstoqueService.removerMovimentosAtendimento(atendimentoRequisicaoConsumo); 183 this.movimentoEstoqueService.removerMovimentosAtendimento(atendimentoRequisicaoConsumo);
184 - 184 +
185 //Apaga movimentos contabeis 185 //Apaga movimentos contabeis
186 - for (AtendimentoRequisicaoConsumoItem atendimentoItem : entity.getAtendimentoRequisicaoConsumoItems()){ 186 + for (AtendimentoRequisicaoConsumoItem atendimentoItem : atendimento.getAtendimentoRequisicaoConsumoItems()){
187 this.contaContabilMovimentoService.removerMovimentosAtendimento(atendimentoItem.getId()); 187 this.contaContabilMovimentoService.removerMovimentosAtendimento(atendimentoItem.getId());
188 } 188 }
189 this.movimentoEstoqueService.gerarMovimentoAtendimento(atendimentoRequisicaoConsumo); 189 this.movimentoEstoqueService.gerarMovimentoAtendimento(atendimentoRequisicaoConsumo);
190 - } 190 + }
191 191
192 } 192 }
193 193
@@ -336,7 +336,7 @@ public class AtendimentoRequisicaoConsumoServiceImpl extends GenericServiceImpl&lt; @@ -336,7 +336,7 @@ public class AtendimentoRequisicaoConsumoServiceImpl extends GenericServiceImpl&lt;
336 336
337 prontaParaAtendimento = Boolean.FALSE; 337 prontaParaAtendimento = Boolean.FALSE;
338 } 338 }
339 - 339 +
340 //Remove movimentos contacontabil 340 //Remove movimentos contacontabil
341 this.contaContabilMovimentoService.removerMovimentosAtendimento(atendimentoRequisicaoConsumoItem.getId()); 341 this.contaContabilMovimentoService.removerMovimentosAtendimento(atendimentoRequisicaoConsumoItem.getId());
342 } 342 }
cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/impl/MaterialEstoqueSaldoMedioServiceImpl.java
@@ -20,38 +20,38 @@ import br.com.centralit.framework.util.UtilObjeto; @@ -20,38 +20,38 @@ import br.com.centralit.framework.util.UtilObjeto;
20 * <p> 20 * <p>
21 * <img src="http://centralit.com.br/images/logo_central.png"> 21 * <img src="http://centralit.com.br/images/logo_central.png">
22 * </p> 22 * </p>
23 - * 23 + *
24 * <p> 24 * <p>
25 * <b>Company: </b> Central IT - Governança Corporativa - 25 * <b>Company: </b> Central IT - Governança Corporativa -
26 * </p> 26 * </p>
27 - * 27 + *
28 * <p> 28 * <p>
29 * <b>Title: </b> 29 * <b>Title: </b>
30 * </p> 30 * </p>
31 - * 31 + *
32 * <p> 32 * <p>
33 * <b>Description: </b> 33 * <b>Description: </b>
34 * </p> 34 * </p>
35 - * 35 + *
36 * @since 23/06/2015 - 17:53:30 36 * @since 23/06/2015 - 17:53:30
37 - * 37 + *
38 * @version 1.0.0 38 * @version 1.0.0
39 - * 39 + *
40 * @author geovane.filho 40 * @author geovane.filho
41 - * 41 + *
42 */ 42 */
43 @Service("materialEstoqueSaldoMedioService") 43 @Service("materialEstoqueSaldoMedioService")
44 public class MaterialEstoqueSaldoMedioServiceImpl extends GenericServiceImpl<MaterialEstoqueSaldoMedio, Long> implements MaterialEstoqueSaldoMedioService { 44 public class MaterialEstoqueSaldoMedioServiceImpl extends GenericServiceImpl<MaterialEstoqueSaldoMedio, Long> implements MaterialEstoqueSaldoMedioService {
45 45
46 @Autowired 46 @Autowired
47 private MaterialEstoqueSaldoMedioDao materialEstoqueSaldoMedioDao; 47 private MaterialEstoqueSaldoMedioDao materialEstoqueSaldoMedioDao;
48 - 48 +
49 @Autowired 49 @Autowired
50 private MaterialConsumoService materialConsumoService; 50 private MaterialConsumoService materialConsumoService;
51 - 51 +
52 /** 52 /**
53 * Responsável pela criação de novas instâncias desta classe. 53 * Responsável pela criação de novas instâncias desta classe.
54 - * 54 + *
55 * @param entradaAlmoxarifadoDao 55 * @param entradaAlmoxarifadoDao
56 * @param validator 56 * @param validator
57 */ 57 */
@@ -61,7 +61,7 @@ public class MaterialEstoqueSaldoMedioServiceImpl extends GenericServiceImpl&lt;Mat @@ -61,7 +61,7 @@ public class MaterialEstoqueSaldoMedioServiceImpl extends GenericServiceImpl&lt;Mat
61 this.materialEstoqueSaldoMedioDao = materialEstoqueSaldoMedioDao; 61 this.materialEstoqueSaldoMedioDao = materialEstoqueSaldoMedioDao;
62 this.validator = validator; 62 this.validator = validator;
63 } 63 }
64 - 64 +
65 /** 65 /**
66 * {@inheritDoc} 66 * {@inheritDoc}
67 */ 67 */
@@ -71,29 +71,29 @@ public class MaterialEstoqueSaldoMedioServiceImpl extends GenericServiceImpl&lt;Mat @@ -71,29 +71,29 @@ public class MaterialEstoqueSaldoMedioServiceImpl extends GenericServiceImpl&lt;Mat
71 if (saldoMedio == null) { 71 if (saldoMedio == null) {
72 saldoMedio = new MaterialEstoqueSaldoMedio(material); 72 saldoMedio = new MaterialEstoqueSaldoMedio(material);
73 } 73 }
74 - 74 +
75 BigDecimal qntAtual = saldoMedio.getQuantidadeAtual(); 75 BigDecimal qntAtual = saldoMedio.getQuantidadeAtual();
76 BigDecimal valorTotalAtual = BigDecimal.ZERO; 76 BigDecimal valorTotalAtual = BigDecimal.ZERO;
77 if(UtilObjeto.isReferencia(saldoMedio.getValorUnitarioMedio()) && UtilObjeto.isReferencia(saldoMedio.getRestoMedio())) { 77 if(UtilObjeto.isReferencia(saldoMedio.getValorUnitarioMedio()) && UtilObjeto.isReferencia(saldoMedio.getRestoMedio())) {
78 valorTotalAtual = saldoMedio.getValorUnitarioMedio().multiply(saldoMedio.getQuantidadeAtual()).add(saldoMedio.getRestoMedio()); 78 valorTotalAtual = saldoMedio.getValorUnitarioMedio().multiply(saldoMedio.getQuantidadeAtual()).add(saldoMedio.getRestoMedio());
79 } 79 }
80 - 80 +
81 BigDecimal qntNova = qntAtual.add(quantidade); 81 BigDecimal qntNova = qntAtual.add(quantidade);
82 BigDecimal valorTotalNovo = valorTotalAtual.add(valorTotal); 82 BigDecimal valorTotalNovo = valorTotalAtual.add(valorTotal);
83 - 83 +
84 BigDecimal valorUnitarioNovo = valorTotalNovo.divide(qntNova, 4, BigDecimal.ROUND_HALF_UP); 84 BigDecimal valorUnitarioNovo = valorTotalNovo.divide(qntNova, 4, BigDecimal.ROUND_HALF_UP);
85 - 85 +
86 BigDecimal valorUnitXquantidade = qntNova.multiply(valorUnitarioNovo); 86 BigDecimal valorUnitXquantidade = qntNova.multiply(valorUnitarioNovo);
87 BigDecimal valorRestoNovo = valorTotalNovo.subtract(valorUnitXquantidade); 87 BigDecimal valorRestoNovo = valorTotalNovo.subtract(valorUnitXquantidade);
88 -  
89 - 88 +
  89 +
90 saldoMedio.setQuantidadeAtual(qntNova); 90 saldoMedio.setQuantidadeAtual(qntNova);
91 saldoMedio.setValorUnitarioMedio(valorUnitarioNovo); 91 saldoMedio.setValorUnitarioMedio(valorUnitarioNovo);
92 saldoMedio.setRestoMedio(valorRestoNovo); 92 saldoMedio.setRestoMedio(valorRestoNovo);
93 - 93 +
94 this.materialEstoqueSaldoMedioDao.save(saldoMedio); 94 this.materialEstoqueSaldoMedioDao.save(saldoMedio);
95 } 95 }
96 - 96 +
97 /** 97 /**
98 * {@inheritDoc} 98 * {@inheritDoc}
99 */ 99 */
@@ -101,26 +101,28 @@ public class MaterialEstoqueSaldoMedioServiceImpl extends GenericServiceImpl&lt;Mat @@ -101,26 +101,28 @@ public class MaterialEstoqueSaldoMedioServiceImpl extends GenericServiceImpl&lt;Mat
101 public MaterialEstoqueSaldoMedio findByMaterial(Material idMaterial) { 101 public MaterialEstoqueSaldoMedio findByMaterial(Material idMaterial) {
102 return this.materialEstoqueSaldoMedioDao.findByMaterial(idMaterial); 102 return this.materialEstoqueSaldoMedioDao.findByMaterial(idMaterial);
103 } 103 }
104 - 104 +
105 /** 105 /**
106 * {@inheritDoc} 106 * {@inheritDoc}
107 */ 107 */
108 @Override 108 @Override
109 public BigDecimal realizaMovimentoSaida(MaterialConsumo materialConsumo, BigDecimal quantidadeMovimentada) { 109 public BigDecimal realizaMovimentoSaida(MaterialConsumo materialConsumo, BigDecimal quantidadeMovimentada) {
110 BigDecimal retorno = BigDecimal.ZERO; 110 BigDecimal retorno = BigDecimal.ZERO;
111 - 111 +
112 MaterialEstoqueSaldoMedio estoqueMedio = this.findByMaterial(materialConsumo); //Busco o saldo de estoque baseado na média móvel 112 MaterialEstoqueSaldoMedio estoqueMedio = this.findByMaterial(materialConsumo); //Busco o saldo de estoque baseado na média móvel
113 - 113 +
114 if (estoqueMedio.getQuantidadeAtual().compareTo(quantidadeMovimentada) > 0) { 114 if (estoqueMedio.getQuantidadeAtual().compareTo(quantidadeMovimentada) > 0) {
115 retorno = retorno.add(estoqueMedio.getValorUnitarioMedio().multiply(quantidadeMovimentada)); 115 retorno = retorno.add(estoqueMedio.getValorUnitarioMedio().multiply(quantidadeMovimentada));
116 estoqueMedio.setQuantidadeAtual(estoqueMedio.getQuantidadeAtual().subtract(quantidadeMovimentada)); 116 estoqueMedio.setQuantidadeAtual(estoqueMedio.getQuantidadeAtual().subtract(quantidadeMovimentada));
117 this.save(estoqueMedio); 117 this.save(estoqueMedio);
118 } else { 118 } else {
119 - retorno = retorno.add((estoqueMedio.getValorUnitarioMedio().multiply(quantidadeMovimentada)).add(estoqueMedio.getRestoMedio())); 119 + if(estoqueMedio.getValorUnitarioMedio() != null && estoqueMedio.getRestoMedio() != null){
  120 + retorno = retorno.add((estoqueMedio.getValorUnitarioMedio().multiply(quantidadeMovimentada)).add(estoqueMedio.getRestoMedio()));
  121 + }
120 estoqueMedio.setQuantidadeAtual(estoqueMedio.getQuantidadeAtual().subtract(quantidadeMovimentada)); 122 estoqueMedio.setQuantidadeAtual(estoqueMedio.getQuantidadeAtual().subtract(quantidadeMovimentada));
121 this.save(estoqueMedio); 123 this.save(estoqueMedio);
122 } 124 }
123 - 125 +
124 return retorno; 126 return retorno;
125 } 127 }
126 128
@@ -130,30 +132,30 @@ public class MaterialEstoqueSaldoMedioServiceImpl extends GenericServiceImpl&lt;Mat @@ -130,30 +132,30 @@ public class MaterialEstoqueSaldoMedioServiceImpl extends GenericServiceImpl&lt;Mat
130 @Override 132 @Override
131 public BigDecimal realizaMovimentoDevolucao(MaterialConsumo materialConsumo, BigDecimal quantidadeMovimentada) { 133 public BigDecimal realizaMovimentoDevolucao(MaterialConsumo materialConsumo, BigDecimal quantidadeMovimentada) {
132 BigDecimal retorno = BigDecimal.ZERO; 134 BigDecimal retorno = BigDecimal.ZERO;
133 - 135 +
134 MaterialEstoqueSaldoMedio estoqueMedio = this.findByMaterial(materialConsumo); //Busco o saldo de estoque baseado na média móvel 136 MaterialEstoqueSaldoMedio estoqueMedio = this.findByMaterial(materialConsumo); //Busco o saldo de estoque baseado na média móvel
135 - 137 +
136 retorno = retorno.add(estoqueMedio.getValorUnitarioMedio().multiply(quantidadeMovimentada)); //Gero o valor monetario da movimentação sendo realizada 138 retorno = retorno.add(estoqueMedio.getValorUnitarioMedio().multiply(quantidadeMovimentada)); //Gero o valor monetario da movimentação sendo realizada
137 - 139 +
138 if (estoqueMedio.getQuantidadeAtual().equals(BigDecimal.ZERO)) { //Se o saldo atual da quantidade em estoque for zero eu adiciono o resto na movimentação 140 if (estoqueMedio.getQuantidadeAtual().equals(BigDecimal.ZERO)) { //Se o saldo atual da quantidade em estoque for zero eu adiciono o resto na movimentação
139 retorno = retorno.add(estoqueMedio.getRestoMedio()); 141 retorno = retorno.add(estoqueMedio.getRestoMedio());
140 } 142 }
141 - 143 +
142 estoqueMedio.setQuantidadeAtual(estoqueMedio.getQuantidadeAtual().add(quantidadeMovimentada)); //Atualizo a quantidade atual do estoque 144 estoqueMedio.setQuantidadeAtual(estoqueMedio.getQuantidadeAtual().add(quantidadeMovimentada)); //Atualizo a quantidade atual do estoque
143 this.save(estoqueMedio); 145 this.save(estoqueMedio);
144 - 146 +
145 return retorno; 147 return retorno;
146 } 148 }
147 - 149 +
148 public BigDecimal buscaValorUnitario(Long materialId){ 150 public BigDecimal buscaValorUnitario(Long materialId){
149 - BigDecimal retorno = BigDecimal.ZERO; 151 + BigDecimal retorno = BigDecimal.ZERO;
150 retorno = this.materialEstoqueSaldoMedioDao.buscaValorUnitario(materialId); 152 retorno = this.materialEstoqueSaldoMedioDao.buscaValorUnitario(materialId);
151 return retorno; 153 return retorno;
152 } 154 }
153 - 155 +
154 public BigDecimal buscaValorResto(Long materialId){ 156 public BigDecimal buscaValorResto(Long materialId){
155 - BigDecimal retorno = BigDecimal.ZERO; 157 + BigDecimal retorno = BigDecimal.ZERO;
156 retorno = this.materialEstoqueSaldoMedioDao.buscaValorResto(materialId); 158 retorno = this.materialEstoqueSaldoMedioDao.buscaValorResto(materialId);
157 return retorno; 159 return retorno;
158 - } 160 + }
159 } 161 }
cit-almoxarifado-api/src/main/java/br/com/centralit/api/service/validation/MaterialEstoqueSaldoMedioValidator.java
@@ -19,15 +19,15 @@ public class MaterialEstoqueSaldoMedioValidator implements Validator { @@ -19,15 +19,15 @@ public class MaterialEstoqueSaldoMedioValidator implements Validator {
19 19
20 @Override 20 @Override
21 public void validate(Object target, Errors errors) { 21 public void validate(Object target, Errors errors) {
22 - 22 +
23 ValidationUtils.rejectIfEmpty(errors, "material", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "LABEL.MATERIAL"); 23 ValidationUtils.rejectIfEmpty(errors, "material", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "LABEL.MATERIAL");
24 - 24 +
25 ValidationUtils.rejectIfEmpty(errors, "quantidadeAtual", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "ALMOXARIFADO.LABEL.QUANTIDADE_ATUAL"); 25 ValidationUtils.rejectIfEmpty(errors, "quantidadeAtual", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "ALMOXARIFADO.LABEL.QUANTIDADE_ATUAL");
26 -  
27 - ValidationUtils.rejectIfEmpty(errors, "valorUnitarioMedio", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "LABEL.VALORUNITARIOMEDIO");  
28 -  
29 - ValidationUtils.rejectIfEmpty(errors, "restoMedio", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "LABEL.RESTOMEDIO");  
30 - 26 +
  27 + ValidationUtils.rejectIfEmpty(errors, "valorUnitarioMedio", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "ALMOXARIFADO.LABEL.VALORUNITARIOMEDIO");
  28 +
  29 + ValidationUtils.rejectIfEmpty(errors, "restoMedio", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "ALMOXARIFADO.LABEL.RESTOMEDIO");
  30 +
31 } 31 }
32 } 32 }
33 33
cit-almoxarifado-web/src/main/java/br/com/centralit/listener/StartupListenerAlmoxarifado.java
@@ -55,16 +55,16 @@ public class StartupListenerAlmoxarifado extends UtilStartup implements Applicat @@ -55,16 +55,16 @@ public class StartupListenerAlmoxarifado extends UtilStartup implements Applicat
55 55
56 @Autowired 56 @Autowired
57 private ConfiguracaoNotificacaoRessuprimentoService configuracaoNotificacaoRessuprimentoService; 57 private ConfiguracaoNotificacaoRessuprimentoService configuracaoNotificacaoRessuprimentoService;
58 - 58 +
59 @Autowired 59 @Autowired
60 private DominioService dominioService; 60 private DominioService dominioService;
61 - 61 +
62 @Autowired 62 @Autowired
63 private InternacionalizacaoService internacionalizacaoService; 63 private InternacionalizacaoService internacionalizacaoService;
64 - 64 +
65 @Autowired 65 @Autowired
66 private ModuloService moduloService; 66 private ModuloService moduloService;
67 - 67 +
68 /** 68 /**
69 * 69 *
70 */ 70 */
@@ -100,9 +100,9 @@ public class StartupListenerAlmoxarifado extends UtilStartup implements Applicat @@ -100,9 +100,9 @@ public class StartupListenerAlmoxarifado extends UtilStartup implements Applicat
100 list.add(new Dominio(Dominio.TIPO_STATUS_BAIXA_ESTORNO, Dominio.TIPO_STATUS_ESTORNO_TOTAL_DESC, Dominio.TIPO_STATUS_ESTORNO_TOTAL_NOME, Dominio.TIPO_STATUS_ESTORNO_TOTAL, Boolean.FALSE)); 100 list.add(new Dominio(Dominio.TIPO_STATUS_BAIXA_ESTORNO, Dominio.TIPO_STATUS_ESTORNO_TOTAL_DESC, Dominio.TIPO_STATUS_ESTORNO_TOTAL_NOME, Dominio.TIPO_STATUS_ESTORNO_TOTAL, Boolean.FALSE));
101 list.add(new Dominio(Dominio.TIPO_STATUS_BAIXA_ESTORNO, Dominio.TIPO_STATUS_SEM_ESTORNO_DESC, Dominio.TIPO_STATUS_SEM_ESTORNO_NOME, Dominio.TIPO_STATUS_SEM_ESTORNO, Boolean.FALSE)); 101 list.add(new Dominio(Dominio.TIPO_STATUS_BAIXA_ESTORNO, Dominio.TIPO_STATUS_SEM_ESTORNO_DESC, Dominio.TIPO_STATUS_SEM_ESTORNO_NOME, Dominio.TIPO_STATUS_SEM_ESTORNO, Boolean.FALSE));
102 list.add(new Dominio(Dominio.TIPO_STATUS_BAIXA_ESTORNO, Dominio.TIPO_STATUS_ESTORNO_PARCIAL_DESC, Dominio.TIPO_STATUS_ESTORNO_PARCIAL_NOME, Dominio.TIPO_STATUS_ESTORNO_PARCIAL, Boolean.FALSE)); 102 list.add(new Dominio(Dominio.TIPO_STATUS_BAIXA_ESTORNO, Dominio.TIPO_STATUS_ESTORNO_PARCIAL_DESC, Dominio.TIPO_STATUS_ESTORNO_PARCIAL_NOME, Dominio.TIPO_STATUS_ESTORNO_PARCIAL, Boolean.FALSE));
103 - list.add(new Dominio(Dominio.TIPO_STATUS_BAIXA_ESTORNO, Dominio.TIPO_STATUS_ESTORNO_TOTAL_DESC, Dominio.TIPO_STATUS_ESTORNO_TOTAL_NOME, Dominio.TIPO_STATUS_ESTORNO_TOTAL, Boolean.FALSE)); 103 + list.add(new Dominio(Dominio.TIPO_STATUS_BAIXA_ESTORNO, Dominio.TIPO_STATUS_ESTORNO_TOTAL_DESC, Dominio.TIPO_STATUS_ESTORNO_TOTAL_NOME, Dominio.TIPO_STATUS_ESTORNO_TOTAL, Boolean.FALSE));
104 list.add(new Dominio(Dominio.TIPO_FECHAMENTO_ALMOXARIFADO, Dominio.TIPO_FECHAMENTO_ALMOXARIFADO_DESC_FIFO, Dominio.TIPO_FECHAMENTO_ALMOXARIFADO_NOME_FIFO, Dominio.TIPO_FECHAMENTO_ALMOXARIFADO_FIFO_CODIGO, Boolean.FALSE)); 104 list.add(new Dominio(Dominio.TIPO_FECHAMENTO_ALMOXARIFADO, Dominio.TIPO_FECHAMENTO_ALMOXARIFADO_DESC_FIFO, Dominio.TIPO_FECHAMENTO_ALMOXARIFADO_NOME_FIFO, Dominio.TIPO_FECHAMENTO_ALMOXARIFADO_FIFO_CODIGO, Boolean.FALSE));
105 - list.add(new Dominio(Dominio.TIPO_FECHAMENTO_ALMOXARIFADO, Dominio.TIPO_FECHAMENTO_ALMOXARIFADO_DESC_MEDIA, Dominio.TIPO_FECHAMENTO_ALMOXARIFADO_NOME_MEDIA, Dominio.TIPO_FECHAMENTO_ALMOXARIFADO_MEDIA_CODIGO, Boolean.FALSE)); 105 + list.add(new Dominio(Dominio.TIPO_FECHAMENTO_ALMOXARIFADO, Dominio.TIPO_FECHAMENTO_ALMOXARIFADO_DESC_MEDIA, Dominio.TIPO_FECHAMENTO_ALMOXARIFADO_NOME_MEDIA, Dominio.TIPO_FECHAMENTO_ALMOXARIFADO_MEDIA_CODIGO, Boolean.FALSE));
106 list.add(new Dominio("tipoMaterial", "Consumo", "CONSUMO", 1L, Boolean.FALSE)); 106 list.add(new Dominio("tipoMaterial", "Consumo", "CONSUMO", 1L, Boolean.FALSE));
107 list.add(new Dominio("tipoMaterial", "Permanente", "PERMANENTE", 2L, Boolean.FALSE)); 107 list.add(new Dominio("tipoMaterial", "Permanente", "PERMANENTE", 2L, Boolean.FALSE));
108 list.add(new Dominio("tipoMaterial", "Serviço", "SERVICO", 3L, Boolean.FALSE)); 108 list.add(new Dominio("tipoMaterial", "Serviço", "SERVICO", 3L, Boolean.FALSE));
@@ -118,35 +118,35 @@ public class StartupListenerAlmoxarifado extends UtilStartup implements Applicat @@ -118,35 +118,35 @@ public class StartupListenerAlmoxarifado extends UtilStartup implements Applicat
118 list.add(new Dominio("tipoMovimentoEstoque", "Devolução requisição", "DEVOLUCAO", 4L, Boolean.FALSE)); 118 list.add(new Dominio("tipoMovimentoEstoque", "Devolução requisição", "DEVOLUCAO", 4L, Boolean.FALSE));
119 list.add(new Dominio("tipoSaida", "Baixa", "ENTRADA", 1L, Boolean.FALSE)); 119 list.add(new Dominio("tipoSaida", "Baixa", "ENTRADA", 1L, Boolean.FALSE));
120 list.add(new Dominio("tipoSaida", "Requisição", "REQUISICAO", 2L, Boolean.FALSE)); 120 list.add(new Dominio("tipoSaida", "Requisição", "REQUISICAO", 2L, Boolean.FALSE));
121 -  
122 - 121 +
  122 +
123 this.dominioService.saveListIfNotExist(list); 123 this.dominioService.saveListIfNotExist(list);
124 Logger.getLogger(StartupListenerAlmoxarifado.class).info("Domínios executados - StartupListenerAlmoxarifado!"); 124 Logger.getLogger(StartupListenerAlmoxarifado.class).info("Domínios executados - StartupListenerAlmoxarifado!");
125 } 125 }
126 126
127 /** 127 /**
128 - * 128 + *
129 * Método responsável por gerar internacionalização do módulo almoxarifado 129 * Método responsável por gerar internacionalização do módulo almoxarifado
130 - * 130 + *
131 * @author rogerio.cassimiro 131 * @author rogerio.cassimiro
132 - * 132 + *
133 */ 133 */
134 private void gerarInternacionalizacao() { 134 private void gerarInternacionalizacao() {
135 135
136 dominioPT_BR = this.dominioService.findByChaveAndCodigo(Dominio.TIPO_IDIOMA, Dominio.TIPO_IDIOMA_PT_BR_CODIGO); 136 dominioPT_BR = this.dominioService.findByChaveAndCodigo(Dominio.TIPO_IDIOMA, Dominio.TIPO_IDIOMA_PT_BR_CODIGO);
137 moduloSelecionado = this.moduloService.getModuloPorBaseUrl(BASE_URL_ALMOXARIFADO, null); 137 moduloSelecionado = this.moduloService.getModuloPorBaseUrl(BASE_URL_ALMOXARIFADO, null);
138 List<Internacionalizacao> internacionalizacaoList = new ArrayList<Internacionalizacao>(); 138 List<Internacionalizacao> internacionalizacaoList = new ArrayList<Internacionalizacao>();
139 - 139 +
140 this.gerarLabel(dominioPT_BR, moduloSelecionado, internacionalizacaoList); 140 this.gerarLabel(dominioPT_BR, moduloSelecionado, internacionalizacaoList);
141 this.gerarValidacao(dominioPT_BR, moduloSelecionado, internacionalizacaoList); 141 this.gerarValidacao(dominioPT_BR, moduloSelecionado, internacionalizacaoList);
142 this.gerarMensagem(dominioPT_BR, moduloSelecionado, internacionalizacaoList); 142 this.gerarMensagem(dominioPT_BR, moduloSelecionado, internacionalizacaoList);
143 - 143 +
144 this.internacionalizacaoService.saveListIfNotExist(internacionalizacaoList); 144 this.internacionalizacaoService.saveListIfNotExist(internacionalizacaoList);
145 Logger.getLogger(StartupListenerAlmoxarifado.class).info("Internacionalização executada - StartupListenerAlmoxarifado!"); 145 Logger.getLogger(StartupListenerAlmoxarifado.class).info("Internacionalização executada - StartupListenerAlmoxarifado!");
146 } 146 }
147 - 147 +
148 private void gerarLabel(Dominio dominio, Modulo modulo, List<Internacionalizacao> internacionalizacaoList) { 148 private void gerarLabel(Dominio dominio, Modulo modulo, List<Internacionalizacao> internacionalizacaoList) {
149 - 149 +
150 internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.LABEL.TERMO_BAIXA_COM_RESUMO_CONTABIL", "Termo de Baixa com Resumo Contábil", dominio, modulo)); 150 internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.LABEL.TERMO_BAIXA_COM_RESUMO_CONTABIL", "Termo de Baixa com Resumo Contábil", dominio, modulo));
151 internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.LABEL.GERAR_RELATORIO_TERMO", "Termo de baixa", dominio, modulo)); 151 internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.LABEL.GERAR_RELATORIO_TERMO", "Termo de baixa", dominio, modulo));
152 internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.LABEL.ENTRADA_ALMOXARIFADO", "Entrada de materiais", dominio, modulo)); 152 internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.LABEL.ENTRADA_ALMOXARIFADO", "Entrada de materiais", dominio, modulo));
@@ -288,9 +288,12 @@ public class StartupListenerAlmoxarifado extends UtilStartup implements Applicat @@ -288,9 +288,12 @@ public class StartupListenerAlmoxarifado extends UtilStartup implements Applicat
288 internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.LABEL.QUANTIDADE_REQUERIDA", "Quantidade requerida", dominio, modulo)); 288 internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.LABEL.QUANTIDADE_REQUERIDA", "Quantidade requerida", dominio, modulo));
289 internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.LABEL.DADOS_ATENDIMENTO", "Dados do atendimento", dominio, modulo)); 289 internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.LABEL.DADOS_ATENDIMENTO", "Dados do atendimento", dominio, modulo));
290 internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.LABEL.SITUACAO_ESTORNO", "Situação estorno", dominio, modulo)); 290 internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.LABEL.SITUACAO_ESTORNO", "Situação estorno", dominio, modulo));
291 - 291 +
  292 + internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.LABEL.VALORUNITARIOMEDIO", "Valor unitário médio", dominio, modulo));
  293 + internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.LABEL.RESTOMEDIO", "Resto médio", dominio, modulo));
  294 +
292 } 295 }
293 - 296 +
294 private void gerarValidacao(Dominio dominio, Modulo modulo, List<Internacionalizacao> internacionalizacaoList) { 297 private void gerarValidacao(Dominio dominio, Modulo modulo, List<Internacionalizacao> internacionalizacaoList) {
295 internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.VALIDACAO.EXISTE_MOVIMENTO_DEPOIS_ENTRADA", "Existe movimento após a entrada!", dominio, modulo)); 298 internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.VALIDACAO.EXISTE_MOVIMENTO_DEPOIS_ENTRADA", "Existe movimento após a entrada!", dominio, modulo));
296 internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.VALIDACAO.DATA_DEVOLUCAO_DATA_FINALIZACAO", "Data de devolução não pode ser inferior a data de finalização da requisição!", dominio, modulo)); 299 internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.VALIDACAO.DATA_DEVOLUCAO_DATA_FINALIZACAO", "Data de devolução não pode ser inferior a data de finalização da requisição!", dominio, modulo));
@@ -304,9 +307,15 @@ public class StartupListenerAlmoxarifado extends UtilStartup implements Applicat @@ -304,9 +307,15 @@ public class StartupListenerAlmoxarifado extends UtilStartup implements Applicat
304 internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.VALIDACAO.DATA_ESTORNO_MENOR_DATA_ALMOXARIFADO", "A data do estorno não pode ser menor que a data da baixa!", dominio, modulo)); 307 internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.VALIDACAO.DATA_ESTORNO_MENOR_DATA_ALMOXARIFADO", "A data do estorno não pode ser menor que a data da baixa!", dominio, modulo));
305 internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.VALIDACAO.PERIODO_INVALIDO_INFERIOR_DOZE_MESES", "Período inválido. O período da referência deve ser inferior a 12 meses", dominio, modulo)); 308 internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.VALIDACAO.PERIODO_INVALIDO_INFERIOR_DOZE_MESES", "Período inválido. O período da referência deve ser inferior a 12 meses", dominio, modulo));
306 internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.VALIDACAO.QUANTIDADE_A_ATENDER_SUPERIOR_A_QTD_ESTOQUE", "Quantidade a atender superior a do estoque para o material:", dominio, modulo)); 309 internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.VALIDACAO.QUANTIDADE_A_ATENDER_SUPERIOR_A_QTD_ESTOQUE", "Quantidade a atender superior a do estoque para o material:", dominio, modulo));
  310 + internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.VALIDACAO.DATA_ATENDIMENTO_FORA_REFERENCIA", "Data de atendimento fora da referência vigente!", dominio, modulo));
  311 + internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.VALIDACAO.ERRO_EXCLUSAO_EXISTE_MOVIMENTACAO", "Não foi possível realizar a exclusão pois existe movimentações após o atendimento.", dominio, modulo));
  312 + internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.VALIDACAO.ERRO_EDICAO_EXISTE_MOVIMENTACAO", "Não foi possível realizar a edição pois existe movimentações após o atendimento", dominio, modulo));
  313 +
  314 + internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.VALIDACAO.QUANTIDADE_ZERADA_NEGATIVA", "A quantidade a atender está zerada ou vazia do seguinte material: ", dominio, modulo));
  315 +
307 316
308 } 317 }
309 - 318 +
310 private void gerarMensagem(Dominio dominio, Modulo modulo, List<Internacionalizacao> internacionalizacaoList) { 319 private void gerarMensagem(Dominio dominio, Modulo modulo, List<Internacionalizacao> internacionalizacaoList) {
311 internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.MSG.ATENDA_AO_MENOS_UMA_REQUISICAO", "Por favor, atenda ao menos uma requisição antes de continuar.", dominio, modulo)); 320 internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.MSG.ATENDA_AO_MENOS_UMA_REQUISICAO", "Por favor, atenda ao menos uma requisição antes de continuar.", dominio, modulo));
312 internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.MSG.CATALOGOS_CADASTRADOS_OPCOES", "Os seguintes catálogos existem no sistema com a mesma lista de materiais que você selecionou no seu cadastro, você pode selecionar uma das opções ou continuar salvando o cadastro atual.", dominio, modulo)); 321 internacionalizacaoList.add(new Internacionalizacao("ALMOXARIFADO.MSG.CATALOGOS_CADASTRADOS_OPCOES", "Os seguintes catálogos existem no sistema com a mesma lista de materiais que você selecionou no seu cadastro, você pode selecionar uma das opções ou continuar salvando o cadastro atual.", dominio, modulo));
cit-almoxarifado-web/src/main/webapp/assets/js/angular/custom/controller/AtendimentoRequisicaoConsumoController.js
@@ -4,6 +4,7 @@ citApp.controller( &#39;AtendimentoRequisicaoConsumoController&#39;, @@ -4,6 +4,7 @@ citApp.controller( &#39;AtendimentoRequisicaoConsumoController&#39;,
4 ['$scope', 4 ['$scope',
5 '$translate', 5 '$translate',
6 '$timeout', 6 '$timeout',
  7 + '$filter',
7 'AtendimentoRequisicaoConsumoRepository', 8 'AtendimentoRequisicaoConsumoRepository',
8 'AtendimentoRequisicaoConsumoItemRepository', 9 'AtendimentoRequisicaoConsumoItemRepository',
9 'RequisicaoConsumoRepository', 10 'RequisicaoConsumoRepository',
@@ -12,6 +13,7 @@ citApp.controller( &#39;AtendimentoRequisicaoConsumoController&#39;, @@ -12,6 +13,7 @@ citApp.controller( &#39;AtendimentoRequisicaoConsumoController&#39;,
12 function AtendimentoRequisicaoConsumoController($scope, 13 function AtendimentoRequisicaoConsumoController($scope,
13 $translate, 14 $translate,
14 $timeout, 15 $timeout,
  16 + $filter,
15 AtendimentoRequisicaoConsumoRepository, 17 AtendimentoRequisicaoConsumoRepository,
16 AtendimentoRequisicaoConsumoItemRepository, 18 AtendimentoRequisicaoConsumoItemRepository,
17 RequisicaoConsumoRepository, 19 RequisicaoConsumoRepository,
@@ -329,6 +331,11 @@ citApp.controller( &#39;AtendimentoRequisicaoConsumoController&#39;, @@ -329,6 +331,11 @@ citApp.controller( &#39;AtendimentoRequisicaoConsumoController&#39;,
329 }); 331 });
330 $scope.atendimentos.push(atendimento); 332 $scope.atendimentos.push(atendimento);
331 } 333 }
  334 +
  335 + if($scope.atendimentoRequisicaoConsumo && $scope.atendimentoRequisicaoConsumo.dataAtendimento){
  336 + $scope.atendimentoRequisicaoConsumo.dataAtendimento = $filter('date')($scope.atendimentoRequisicaoConsumo.dataAtendimento, "dd/MM/yyyy");
  337 + }
  338 +
332 }; 339 };
333 340
334 // SALVA O AtendimentoRequisicaoConsumo 341 // SALVA O AtendimentoRequisicaoConsumo
@@ -456,6 +463,7 @@ citApp.controller( &#39;AtendimentoRequisicaoConsumoController&#39;, @@ -456,6 +463,7 @@ citApp.controller( &#39;AtendimentoRequisicaoConsumoController&#39;,
456 dataFinalizacao : atendimentoRequisicaoConsumo.$dataFinalizacao}).then(function() { 463 dataFinalizacao : atendimentoRequisicaoConsumo.$dataFinalizacao}).then(function() {
457 angular.element('#searchAtendimentoRequisicaoConsumo').scope().fetchResult(); 464 angular.element('#searchAtendimentoRequisicaoConsumo').scope().fetchResult();
458 $scope.$modalConfirmInstance.dismiss('cancel'); 465 $scope.$modalConfirmInstance.dismiss('cancel');
  466 + $scope.$modalInstance.dismiss('cancel');
459 $scope.listaSelecionados = []; 467 $scope.listaSelecionados = [];
460 $scope.resetForm(); 468 $scope.resetForm();
461 $scope.showAlert("success", $translate.instant('MSG.REGISTRO_SALVO')); 469 $scope.showAlert("success", $translate.instant('MSG.REGISTRO_SALVO'));