Commit fe62be018e8a71521a2bb4ddd64b429e2cd996be

Authored by erick.sato
1 parent a5de072e
Exists in master

[Redmine Atendimento #4206]Alteração geração de codigo estudo tecnico

cit-contratos-api/src/main/java/br/com/centralit/api/dao/EstudoTecnicoDao.java
@@ -53,4 +53,6 @@ public interface EstudoTecnicoDao extends CitGenericDAO{ @@ -53,4 +53,6 @@ public interface EstudoTecnicoDao extends CitGenericDAO{
53 */ 53 */
54 public Collection<EstudoTecnico> findAutoCompleteEstudoTecnicoPorCodigoAndOrganizacao(String codigo, Long idOrganizacao); 54 public Collection<EstudoTecnico> findAutoCompleteEstudoTecnicoPorCodigoAndOrganizacao(String codigo, Long idOrganizacao);
55 55
  56 + EstudoTecnico buscarUltimoRegistroPorDataEmissao(int ano, Long idOrganizacao);
  57 +
56 } 58 }
cit-contratos-api/src/main/java/br/com/centralit/api/dao/impl/EstudoTecnicoDaoHibernate.java
1 package br.com.centralit.api.dao.impl; 1 package br.com.centralit.api.dao.impl;
2 2
  3 +import java.util.Calendar;
3 import java.util.Collection; 4 import java.util.Collection;
4 5
5 import org.springframework.stereotype.Repository; 6 import org.springframework.stereotype.Repository;
@@ -10,6 +11,7 @@ import br.com.centralit.framework.dao.arquitetura.CitGenericDAOImpl; @@ -10,6 +11,7 @@ import br.com.centralit.framework.dao.arquitetura.CitGenericDAOImpl;
10 import br.com.centralit.framework.dao.arquitetura.SearchSeven; 11 import br.com.centralit.framework.dao.arquitetura.SearchSeven;
11 12
12 import com.googlecode.genericdao.search.Filter; 13 import com.googlecode.genericdao.search.Filter;
  14 +import com.googlecode.genericdao.search.Search;
13 import com.googlecode.genericdao.search.Sort; 15 import com.googlecode.genericdao.search.Sort;
14 16
15 17
@@ -64,11 +66,11 @@ public class EstudoTecnicoDaoHibernate extends CitGenericDAOImpl implements Estu @@ -64,11 +66,11 @@ public class EstudoTecnicoDaoHibernate extends CitGenericDAOImpl implements Estu
64 66
65 SearchSeven search = new SearchSeven(this.persistentClass); 67 SearchSeven search = new SearchSeven(this.persistentClass);
66 68
67 - search.addFilterILike("codigo", "%" + codigo + "%"); 69 + search.addFilterILike("registroSequencial.sequencialAno", "%" + codigo + "%");
68 70
69 search.addFilterEmpty("dataInativo"); 71 search.addFilterEmpty("dataInativo");
70 72
71 - search.addSort(Sort.asc("codigo")); 73 + search.addSort(Sort.asc("registroSequencial.sequencialAno"));
72 74
73 search.setMaxResults(10); 75 search.setMaxResults(10);
74 76
@@ -89,9 +91,9 @@ public class EstudoTecnicoDaoHibernate extends CitGenericDAOImpl implements Estu @@ -89,9 +91,9 @@ public class EstudoTecnicoDaoHibernate extends CitGenericDAOImpl implements Estu
89 91
90 SearchSeven searchSeven = new SearchSeven(this.persistentClass); 92 SearchSeven searchSeven = new SearchSeven(this.persistentClass);
91 93
92 - searchSeven.addSort(Sort.asc("codigo")); 94 + searchSeven.addSort(Sort.asc("registroSequencial.sequencialAno"));
93 95
94 - searchSeven.addFilter(Filter.ilike("codigo", "%" + codigo + "%")); 96 + searchSeven.addFilter(Filter.ilike("registroSequencial.sequencialAno", "%" + codigo + "%"));
95 97
96 searchSeven.addFilterEqual("organizacao.id", idOrganizacao); 98 searchSeven.addFilterEqual("organizacao.id", idOrganizacao);
97 99
@@ -101,4 +103,33 @@ public class EstudoTecnicoDaoHibernate extends CitGenericDAOImpl implements Estu @@ -101,4 +103,33 @@ public class EstudoTecnicoDaoHibernate extends CitGenericDAOImpl implements Estu
101 103
102 } 104 }
103 105
  106 + @Override
  107 + public EstudoTecnico buscarUltimoRegistroPorDataEmissao(int ano, Long idOrganizacao) {
  108 + int anoInformado = ano;
  109 +
  110 + Calendar dataInicial = Calendar.getInstance();
  111 + dataInicial.set(anoInformado, Calendar.JANUARY, 1);
  112 + dataInicial.set(Calendar.HOUR_OF_DAY,00);
  113 + dataInicial.set(Calendar.MINUTE,00);
  114 + dataInicial.set(Calendar.SECOND,00);
  115 + dataInicial.set(Calendar.MILLISECOND,0);
  116 +
  117 + Calendar dataFinal = Calendar.getInstance();
  118 + dataFinal.set(anoInformado, Calendar.DECEMBER, 31);
  119 + dataFinal.set(Calendar.HOUR_OF_DAY,23);
  120 + dataFinal.set(Calendar.MINUTE,59);
  121 + dataFinal.set(Calendar.SECOND,59);
  122 + dataFinal.set(Calendar.MILLISECOND,999);
  123 +
  124 + Search search = new Search();
  125 + search.addFilterNotNull("registroSequencial.numeroSequencial");
  126 + search.addFilterEqual("organizacao.id", idOrganizacao);
  127 + search.addFilterGreaterOrEqual("dataCriacao", dataInicial);
  128 + search.addFilterLessOrEqual("dataCriacao", dataFinal);
  129 + search.addSortDesc("registroSequencial.numeroSequencial");
  130 + search.setMaxResults(1);
  131 +
  132 + return searchUnique(search);
  133 + }
  134 +
104 } 135 }
cit-contratos-api/src/main/java/br/com/centralit/api/model/EstudoTecnico.java
@@ -5,6 +5,7 @@ import java.util.Collection; @@ -5,6 +5,7 @@ import java.util.Collection;
5 5
6 import javax.persistence.CascadeType; 6 import javax.persistence.CascadeType;
7 import javax.persistence.Column; 7 import javax.persistence.Column;
  8 +import javax.persistence.Embedded;
8 import javax.persistence.Entity; 9 import javax.persistence.Entity;
9 import javax.persistence.FetchType; 10 import javax.persistence.FetchType;
10 import javax.persistence.GeneratedValue; 11 import javax.persistence.GeneratedValue;
@@ -59,10 +60,9 @@ public class EstudoTecnico extends PersistentObjectAuditOrganizacao { @@ -59,10 +60,9 @@ public class EstudoTecnico extends PersistentObjectAuditOrganizacao {
59 @JsonView({ Views.GenericView.class }) 60 @JsonView({ Views.GenericView.class })
60 private Long id; 61 private Long id;
61 62
62 - /** Atributo codigo. */  
63 - @Column(length = 30, nullable=false)  
64 - @JsonView({ ViewsContrato.EstudoTecnicoEditView.class, ViewsContrato.TermoReferenciaListView.class, ViewsContrato.EstudoTecnicoAutoCompleteView.class, ViewsContrato.ContratoEditView.class })  
65 - private String codigo; 63 + @Embedded
  64 + @JsonView({ ViewsContrato.EstudoTecnicoEditView.class, ViewsContrato.TermoReferenciaEditView.class, Views.GenericView.class })
  65 + private RegistroSequencial registroSequencial;
66 66
67 /** Atributo numeroPortaria. */ 67 /** Atributo numeroPortaria. */
68 @Column(length = 30, nullable=false) 68 @Column(length = 30, nullable=false)
@@ -167,6 +167,16 @@ public class EstudoTecnico extends PersistentObjectAuditOrganizacao { @@ -167,6 +167,16 @@ public class EstudoTecnico extends PersistentObjectAuditOrganizacao {
167 @JsonView({ ViewsContrato.EstudoTecnicoEditView.class }) 167 @JsonView({ ViewsContrato.EstudoTecnicoEditView.class })
168 private Collection<EstudoTecnicoDocumento> documentos; 168 private Collection<EstudoTecnicoDocumento> documentos;
169 169
  170 + public RegistroSequencial getRegistroSequencial() {
  171 +
  172 + return registroSequencial;
  173 + }
  174 +
  175 + public void setRegistroOcorrenciaSequencial(RegistroSequencial registroSequencial) {
  176 +
  177 + this.registroSequencial = registroSequencial;
  178 + }
  179 +
170 /** 180 /**
171 * Retorna o valor do atributo <code>id</code> 181 * Retorna o valor do atributo <code>id</code>
172 * 182 *
@@ -189,26 +199,6 @@ public class EstudoTecnico extends PersistentObjectAuditOrganizacao { @@ -189,26 +199,6 @@ public class EstudoTecnico extends PersistentObjectAuditOrganizacao {
189 } 199 }
190 200
191 /** 201 /**
192 - * Retorna o valor do atributo <code>codigo</code>  
193 - *  
194 - * @return <code>String</code>  
195 - */  
196 - public String getCodigo() {  
197 -  
198 - return codigo;  
199 - }  
200 -  
201 - /**  
202 - * Define o valor do atributo <code>codigo</code>.  
203 - *  
204 - * @param codigo  
205 - */  
206 - public void setCodigo(String codigo) {  
207 -  
208 - this.codigo = codigo;  
209 - }  
210 -  
211 - /**  
212 * Retorna o valor do atributo <code>numeroPortaria</code> 202 * Retorna o valor do atributo <code>numeroPortaria</code>
213 * 203 *
214 * @return <code>String</code> 204 * @return <code>String</code>
cit-contratos-api/src/main/java/br/com/centralit/api/service/impl/ContratoEmpenhoServiceImpl.java
@@ -11,6 +11,14 @@ import java.util.Map; @@ -11,6 +11,14 @@ import java.util.Map;
11 11
12 import javax.servlet.http.HttpServletResponse; 12 import javax.servlet.http.HttpServletResponse;
13 13
  14 +import net.sf.jasperreports.engine.JRException;
  15 +import net.sf.jasperreports.engine.JasperCompileManager;
  16 +import net.sf.jasperreports.engine.JasperFillManager;
  17 +import net.sf.jasperreports.engine.JasperPrint;
  18 +import net.sf.jasperreports.engine.JasperReport;
  19 +import net.sf.jasperreports.engine.design.JasperDesign;
  20 +import net.sf.jasperreports.engine.xml.JRXmlLoader;
  21 +
14 import org.springframework.beans.factory.annotation.Autowired; 22 import org.springframework.beans.factory.annotation.Autowired;
15 import org.springframework.security.core.context.SecurityContextHolder; 23 import org.springframework.security.core.context.SecurityContextHolder;
16 import org.springframework.stereotype.Service; 24 import org.springframework.stereotype.Service;
@@ -38,13 +46,6 @@ import br.com.centralit.framework.util.UtilColecao; @@ -38,13 +46,6 @@ import br.com.centralit.framework.util.UtilColecao;
38 import br.com.centralit.framework.util.UtilDataBase; 46 import br.com.centralit.framework.util.UtilDataBase;
39 import br.com.centralit.framework.util.UtilDate; 47 import br.com.centralit.framework.util.UtilDate;
40 import br.com.centralit.framework.util.UtilObjeto; 48 import br.com.centralit.framework.util.UtilObjeto;
41 -import net.sf.jasperreports.engine.JRException;  
42 -import net.sf.jasperreports.engine.JasperCompileManager;  
43 -import net.sf.jasperreports.engine.JasperFillManager;  
44 -import net.sf.jasperreports.engine.JasperPrint;  
45 -import net.sf.jasperreports.engine.JasperReport;  
46 -import net.sf.jasperreports.engine.design.JasperDesign;  
47 -import net.sf.jasperreports.engine.xml.JRXmlLoader;  
48 49
49 /** 50 /**
50 * 51 *
cit-contratos-api/src/main/java/br/com/centralit/api/service/impl/EstudoTecnicoServiceImpl.java
1 package br.com.centralit.api.service.impl; 1 package br.com.centralit.api.service.impl;
2 2
3 import java.util.ArrayList; 3 import java.util.ArrayList;
  4 +import java.util.Calendar;
4 import java.util.Collection; 5 import java.util.Collection;
5 import java.util.HashMap; 6 import java.util.HashMap;
6 import java.util.List; 7 import java.util.List;
7 import java.util.Map; 8 import java.util.Map;
8 9
  10 +import org.apache.commons.lang3.StringUtils;
9 import org.springframework.beans.factory.annotation.Autowired; 11 import org.springframework.beans.factory.annotation.Autowired;
10 import org.springframework.beans.factory.annotation.Qualifier; 12 import org.springframework.beans.factory.annotation.Qualifier;
11 import org.springframework.security.core.context.SecurityContextHolder; 13 import org.springframework.security.core.context.SecurityContextHolder;
@@ -28,6 +30,7 @@ import br.com.centralit.api.model.EstudoTecnicoRequisitoNegocio; @@ -28,6 +30,7 @@ import br.com.centralit.api.model.EstudoTecnicoRequisitoNegocio;
28 import br.com.centralit.api.model.Fornecedor; 30 import br.com.centralit.api.model.Fornecedor;
29 import br.com.centralit.api.model.OrgaoExterno; 31 import br.com.centralit.api.model.OrgaoExterno;
30 import br.com.centralit.api.model.QuestionarioPergunta; 32 import br.com.centralit.api.model.QuestionarioPergunta;
  33 +import br.com.centralit.api.model.RegistroSequencial;
31 import br.com.centralit.api.service.AnexoService; 34 import br.com.centralit.api.service.AnexoService;
32 import br.com.centralit.api.service.ColaboradorService; 35 import br.com.centralit.api.service.ColaboradorService;
33 import br.com.centralit.api.service.ConfiguracaoParametroSistemaService; 36 import br.com.centralit.api.service.ConfiguracaoParametroSistemaService;
@@ -148,7 +151,7 @@ public class EstudoTecnicoServiceImpl extends GenericServiceImpl&lt;EstudoTecnico, @@ -148,7 +151,7 @@ public class EstudoTecnicoServiceImpl extends GenericServiceImpl&lt;EstudoTecnico,
148 this.montarObjetoEstudoTecnico(estudoTecnico); 151 this.montarObjetoEstudoTecnico(estudoTecnico);
149 152
150 // verifica se tem codigo, senao gera e salva entidade 153 // verifica se tem codigo, senao gera e salva entidade
151 - if (UtilObjeto.isReferencia(estudoTecnico.getCodigo())) { 154 + if (UtilObjeto.isReferencia(estudoTecnico.getRegistroSequencial())) {
152 155
153 return super.save(estudoTecnico); 156 return super.save(estudoTecnico);
154 157
@@ -183,7 +186,7 @@ public class EstudoTecnicoServiceImpl extends GenericServiceImpl&lt;EstudoTecnico, @@ -183,7 +186,7 @@ public class EstudoTecnicoServiceImpl extends GenericServiceImpl&lt;EstudoTecnico,
183 this.montarObjetoEstudoTecnico(estudoTecnico); 186 this.montarObjetoEstudoTecnico(estudoTecnico);
184 187
185 // verifica se tem codigo, senao gera e salva entidade 188 // verifica se tem codigo, senao gera e salva entidade
186 - if (UtilObjeto.isReferencia(estudoTecnico.getCodigo())) { 189 + if (UtilObjeto.isReferencia(estudoTecnico.getRegistroSequencial())) {
187 190
188 return super.save(estudoTecnico); 191 return super.save(estudoTecnico);
189 192
@@ -397,17 +400,22 @@ public class EstudoTecnicoServiceImpl extends GenericServiceImpl&lt;EstudoTecnico, @@ -397,17 +400,22 @@ public class EstudoTecnicoServiceImpl extends GenericServiceImpl&lt;EstudoTecnico,
397 */ 400 */
398 private void configurarCodigo(EstudoTecnico entitySaved) { 401 private void configurarCodigo(EstudoTecnico entitySaved) {
399 402
400 - EstudoTecnico ultimoRegistro = (EstudoTecnico) this.estudoTecnicoDao.buscarUltimoRegistroComOrdenadoParametrizada(CAMPO_BUSCA_PARAMETRIZADA_ULTIMO_REGISTRO); 403 + Usuario usuarioLogado = (Usuario) usuarioService.find(( (Usuario) SecurityContextHolder.getContext().getAuthentication().getPrincipal() ).getId());
  404 + Calendar date = Calendar.getInstance();
  405 + EstudoTecnico ultimoRegistro = (EstudoTecnico) estudoTecnicoDao.buscarUltimoRegistroPorDataEmissao(date.get(Calendar.YEAR), usuarioLogado.getOrganizacao().getId());
401 406
402 Long sequencial = null; 407 Long sequencial = null;
403 -  
404 - if (UtilObjeto.isReferencia(ultimoRegistro)) {  
405 - sequencial = ultimoRegistro.getCodigo() == null ? null : Long.parseLong(ultimoRegistro.getCodigo()); 408 + if (ultimoRegistro != null) {
  409 + sequencial = ultimoRegistro.getRegistroSequencial().getNumeroSequencial() == null ? null : ultimoRegistro.getRegistroSequencial().getNumeroSequencial();
406 } 410 }
407 -  
408 - String codigo = this.configuracaoParametroSistemaService.gerarNumeroIdentificacaoSeguencial(sequencial);  
409 -  
410 - entitySaved.setCodigo(codigo); 411 + if (sequencial != null){
  412 + sequencial++;
  413 + } else {
  414 + sequencial = 1l;
  415 + }
  416 + String numeroAnoOcorrencia = StringUtils.leftPad(sequencial.toString() + date.get(Calendar.YEAR), 9, "0");
  417 + RegistroSequencial registroSequencial = new RegistroSequencial(sequencial, numeroAnoOcorrencia);
  418 + entitySaved.setRegistroOcorrenciaSequencial(registroSequencial);
411 } 419 }
412 420
413 @Override 421 @Override
cit-contratos-api/src/main/resources/script-bd/v1.0.0-alpha10/01-cit-contratos-1.0.0-ALFA-10-postgres.sql
1 -- ERICK SATO INÍCIO 30/03/2016 1 -- ERICK SATO INÍCIO 30/03/2016
2 TRUNCATE INTERNACIONALIZACAO; 2 TRUNCATE INTERNACIONALIZACAO;
3 UPDATE DOMINIO SET descricao = 'Reforço' where CHAVE = 'tipoFinalidadeEmpenhoContrato' AND descricao = 'Redorço'; 3 UPDATE DOMINIO SET descricao = 'Reforço' where CHAVE = 'tipoFinalidadeEmpenhoContrato' AND descricao = 'Redorço';
4 --- ERICK SATO FIM 30/03/2016  
5 \ No newline at end of file 4 \ No newline at end of file
  5 +-- ERICK SATO FIM 30/03/2016
  6 +
  7 +-- ERICK INIICIO 31/03/2016
  8 +
  9 +--cnt_estudoTecnico
  10 +ALTER TABLE cnt_estudoTecnico ADD COLUMN numerosequencial bigint NULL;
  11 +ALTER TABLE cnt_estudoTecnico ADD COLUMN sequencialAno varchar(20) NULL;
  12 +
  13 +DO $$
  14 +DECLARE
  15 + r RECORD;
  16 +BEGIN
  17 + FOR r IN
  18 + SELECT
  19 + lpad(CAST(concat(CAST(CAST(codigo AS integer) AS VARCHAR), CAST(date_part('Year', (SELECT CURRENT_TIMESTAMP)) AS VARCHAR)) AS VARCHAR),9,'0') AS SEQUENCIALANO
  20 + FROM cnt_estudoTecnico
  21 + LOOP
  22 + UPDATE cnt_estudoTecnico SET numerosequencial = CAST(codigo AS integer), sequencialAno = r.SEQUENCIALANO WHERE
  23 + lpad(CAST(concat(CAST(CAST(codigo AS integer) AS VARCHAR), CAST(date_part('Year', (SELECT CURRENT_TIMESTAMP)) AS VARCHAR)) AS VARCHAR),9,'0') = r.SEQUENCIALANO;
  24 + END LOOP;
  25 +END$$;
  26 +
  27 +ALTER TABLE cnt_estudoTecnico DROP COLUMN codigo;
  28 +
  29 +-- ERICK FIM 31/03/2016
  30 +
cit-contratos-api/src/test/java/br/com/centralit/api/service/impl/EstudoTecnicoServiceImplTest.java
1 package br.com.centralit.api.service.impl; 1 package br.com.centralit.api.service.impl;
2 2
3 -import static org.hamcrest.MatcherAssert.assertThat;  
4 -import static org.hamcrest.Matchers.equalTo;  
5 import static org.junit.Assert.assertNotNull; 3 import static org.junit.Assert.assertNotNull;
6 import static org.junit.Assert.assertTrue; 4 import static org.junit.Assert.assertTrue;
7 import static org.mockito.Matchers.any; 5 import static org.mockito.Matchers.any;
@@ -122,7 +120,7 @@ public class EstudoTecnicoServiceImplTest extends GenericServiceImplTest&lt;EstudoT @@ -122,7 +120,7 @@ public class EstudoTecnicoServiceImplTest extends GenericServiceImplTest&lt;EstudoT
122 120
123 @Override 121 @Override
124 protected void inicializarMocksDasDependencias() { 122 protected void inicializarMocksDasDependencias() {
125 - 123 +
126 } 124 }
127 125
128 @Before 126 @Before
@@ -190,9 +188,7 @@ public class EstudoTecnicoServiceImplTest extends GenericServiceImplTest&lt;EstudoT @@ -190,9 +188,7 @@ public class EstudoTecnicoServiceImplTest extends GenericServiceImplTest&lt;EstudoT
190 188
191 assertNotNull(estudoTecnicoSaved.getId()); 189 assertNotNull(estudoTecnicoSaved.getId());
192 assertTrue(estudoTecnicoSaved.getId() > 0); 190 assertTrue(estudoTecnicoSaved.getId() > 0);
193 - assertNotNull(estudoTecnicoSaved.getCodigo());  
194 - assertThat(estudoTecnicoSaved.getCodigo(), equalTo(CODIGO_INICIAL_ESTUDO_TECNICO_TESTE_SAVE_SEM_CODIGO));  
195 - 191 + assertNotNull(estudoTecnicoSaved.getRegistroSequencial());
196 LOG.info("==================== Finalizando testSavePrimeiroRegistroEstudoTecnicoSemCodigo ==================== "); 192 LOG.info("==================== Finalizando testSavePrimeiroRegistroEstudoTecnicoSemCodigo ==================== ");
197 193
198 } 194 }
@@ -204,7 +200,6 @@ public class EstudoTecnicoServiceImplTest extends GenericServiceImplTest&lt;EstudoT @@ -204,7 +200,6 @@ public class EstudoTecnicoServiceImplTest extends GenericServiceImplTest&lt;EstudoT
204 200
205 EstudoTecnico estudoTecnico = Fixture.from(EstudoTecnico.class).gimme("valid"); 201 EstudoTecnico estudoTecnico = Fixture.from(EstudoTecnico.class).gimme("valid");
206 estudoTecnico.setId(1L); 202 estudoTecnico.setId(1L);
207 - estudoTecnico.setCodigo("000001");  
208 203
209 Colaborador colaborador = Fixture.from(Colaborador.class).gimme("valid"); 204 Colaborador colaborador = Fixture.from(Colaborador.class).gimme("valid");
210 205
@@ -233,7 +228,6 @@ public class EstudoTecnicoServiceImplTest extends GenericServiceImplTest&lt;EstudoT @@ -233,7 +228,6 @@ public class EstudoTecnicoServiceImplTest extends GenericServiceImplTest&lt;EstudoT
233 228
234 assertNotNull(estudoTecnicoSaved.getId()); 229 assertNotNull(estudoTecnicoSaved.getId());
235 assertTrue(estudoTecnicoSaved.getId() > 0); 230 assertTrue(estudoTecnicoSaved.getId() > 0);
236 - assertNotNull(estudoTecnicoSaved.getCodigo());  
237 231
238 LOG.info("==================== Finalizando testMergeRegistroEstudoTecnicoComCodigo ==================== "); 232 LOG.info("==================== Finalizando testMergeRegistroEstudoTecnicoComCodigo ==================== ");
239 233
cit-contratos-web/src/main/webapp/assets/js/angular/custom/controller/EstudoTecnicoListController.js
@@ -13,9 +13,10 @@ citApp.controller(&#39;EstudoTecnicoListController&#39;, [&#39;$scope&#39;, &#39;EstudoTecnicoReposi @@ -13,9 +13,10 @@ citApp.controller(&#39;EstudoTecnicoListController&#39;, [&#39;$scope&#39;, &#39;EstudoTecnicoReposi
13 13
14 $scope.headers = [ 14 $scope.headers = [
15 { 15 {
16 - value : 'codigo', 16 + value : 'registroSequencial.sequencialAno',
17 title : $translate.instant('LABEL.NUM_ESTUDO_TECNICO'), 17 title : $translate.instant('LABEL.NUM_ESTUDO_TECNICO'),
18 - align : 'text-center' 18 + align : 'text-center',
  19 + mask : [new RegExp(/(\d{3})(\d{1,4})$/), '$1/$2']
19 },{ 20 },{
20 value : 'descricaoSolucao', 21 value : 'descricaoSolucao',
21 title : $translate.instant('CONTRATOS.LABEL.DESCRICAO_SOLUCAO'), 22 title : $translate.instant('CONTRATOS.LABEL.DESCRICAO_SOLUCAO'),
@@ -28,8 +29,8 @@ citApp.controller(&#39;EstudoTecnicoListController&#39;, [&#39;$scope&#39;, &#39;EstudoTecnicoReposi @@ -28,8 +29,8 @@ citApp.controller(&#39;EstudoTecnicoListController&#39;, [&#39;$scope&#39;, &#39;EstudoTecnicoReposi
28 dir : 'asc', 29 dir : 'asc',
29 sort : 'id', 30 sort : 'id',
30 limit : 10, 31 limit : 10,
31 - fields: ['id', 'codigo', 'descricaoSolucao'],  
32 - filters : [{type: 'numeric-range', field: 'codigo'}, 32 + fields: ['id', 'registroSequencial.sequencialAno', 'descricaoSolucao'],
  33 + filters : [{type: 'numeric-range', field: 'registroSequencial.sequencialAno'},
33 {type: 'string', field: 'descricaoSolucao'}] 34 {type: 'string', field: 'descricaoSolucao'}]
34 }; 35 };
35 36
cit-contratos-web/src/main/webapp/html/contrato/dialog_item_contrato.html
@@ -22,7 +22,7 @@ @@ -22,7 +22,7 @@
22 <fieldset> 22 <fieldset>
23 <div class="row"> 23 <div class="row">
24 <div class="col-sm-4"> 24 <div class="col-sm-4">
25 - <auto-complete ng-label="LABEL.ESTUDO_TECNICO" ng-id="itemContratoTemp.estudoTecnico" ng-item="item.codigo" 25 + <auto-complete ng-label="LABEL.ESTUDO_TECNICO" ng-id="itemContratoTemp.estudoTecnico" ng-item="item.registroSequencial.sequencialAno"
26 ng-model="itemContratoTemp.estudoTecnico" form="formDialogItemContrato" ng-obrigatorio="editItemContrato" 26 ng-model="itemContratoTemp.estudoTecnico" form="formDialogItemContrato" ng-obrigatorio="editItemContrato"
27 ng-disabled="!editItemContrato" ng-find="findAutoCompleteEstudoTecnicoPorCodigoAndOrganizacao(value)"/> 27 ng-disabled="!editItemContrato" ng-find="findAutoCompleteEstudoTecnicoPorCodigoAndOrganizacao(value)"/>
28 </div><!-- .col-sm-4 --> 28 </div><!-- .col-sm-4 -->
cit-contratos-web/src/main/webapp/html/estudoTecnico/estudoTecnicoPg1.html
@@ -7,8 +7,8 @@ @@ -7,8 +7,8 @@
7 7
8 <div class='row'> 8 <div class='row'>
9 <div class="col-sm-3"> 9 <div class="col-sm-3">
10 - <label-input ng-type="text" ng-id="estudoTecnico.codigo" ng-label="CONTRATOS.LABEL.NUM_ESTUDO_TECNICO" ng-obrigatorio="false" ng-disabled="true" form="planejamentoContratacaoForm"  
11 - ng-model="estudoTecnico.codigo" ng-custom-maxlength="6" /> 10 + <label-input ng-type="text" ng-id="estudoTecnico.registroSequencial.sequencialAno" ng-label="CONTRATOS.LABEL.NUM_ESTUDO_TECNICO" ng-obrigatorio="false" ng-disabled="true" form="planejamentoContratacaoForm"
  11 + ng-model="estudoTecnico.registroSequencial.sequencialAno" ng-custom-maxlength="6" ng-mask="999999/9999"/>
12 </div> 12 </div>
13 13
14 <div class="col-sm-3"> 14 <div class="col-sm-3">