Commit 683228cf46f5e02278d41e65ea65f4940a38067f

Authored by Ciro Junior
2 parents 6ba1f4be cb9bf5c3
Exists in master

Merge remote-tracking branch 'origin/local-4466' into tarefa-4466

cit-ecm-api/src/main/java/br/com/centralit/api/model/TarjaAssinaturaVH.java
... ... @@ -1,42 +0,0 @@
1   -package br.com.centralit.api.model;
2   -
3   -import java.io.Serializable;
4   -
5   -import com.fasterxml.jackson.annotation.JsonView;
6   -
7   -import br.com.centralit.api.framework.json.ViewsEcm;
8   -
9   -public class TarjaAssinaturaVH implements Serializable{
10   -
11   - private static final long serialVersionUID = -82446677470229523L;
12   -
13   - @JsonView({ ViewsEcm.TarjaAssinaturaEditview.class })
14   - private TarjaAssinatura assinaturaInterna;
15   -
16   - @JsonView({ ViewsEcm.TarjaAssinaturaEditview.class })
17   - private TarjaAssinatura assinaturaCertificado;
18   -
19   -
20   - public TarjaAssinatura getAssinaturaInterna() {
21   -
22   - return assinaturaInterna;
23   - }
24   -
25   -
26   - public void setAssinaturaInterna(TarjaAssinatura assinaturaInterna) {
27   -
28   - this.assinaturaInterna = assinaturaInterna;
29   - }
30   -
31   -
32   - public TarjaAssinatura getAssinaturaCertificado() {
33   -
34   - return assinaturaCertificado;
35   - }
36   -
37   -
38   - public void setAssinaturaCertificado(TarjaAssinatura assinaturaCertificado) {
39   -
40   - this.assinaturaCertificado = assinaturaCertificado;
41   - }
42   -}
cit-ecm-api/src/main/java/br/com/centralit/api/service/TarjaAssinaturaService.java
... ... @@ -3,7 +3,6 @@ package br.com.centralit.api.service;
3 3 import org.springframework.web.multipart.MultipartFile;
4 4  
5 5 import br.com.centralit.api.model.TarjaAssinatura;
6   -import br.com.centralit.api.model.TarjaAssinaturaVH;
7 6 import br.com.centralit.framework.service.arquitetura.GenericService;
8 7  
9 8 /**
... ... @@ -35,27 +34,24 @@ public interface TarjaAssinaturaService extends GenericService<TarjaAssinatura,
35 34  
36 35 /**
37 36 *
38   - * Método responsável por retornar todas as tarjas de assinatura existentes no banco.
39   - * Normalmente existem apenas dois tipos fixos de tarjas:</br>
40   - * <ul>
41   - * <li>Tarja de assinatura interna</li>
42   - * <li>Tarja de assinatura de certificado digital</li>
43   - * </ul>
  37 + * M&eacute;todo respons&aacute;vel por salvar os dois tipos de tarjas de assinatura ao mesmo tempo
44 38 *
45 39 * @author ciro.junior (<a href="mailto:ciro.junior@centralit.com.br">ciro.junior@centralit.com.br</a>)
46 40 *
  41 + * @param tarjaAssinaturaVH
47 42 * @return
48 43 */
49   - TarjaAssinaturaVH getAllTarjas ();
  44 + TarjaAssinatura save (TarjaAssinatura tarjaAssinatura);
  45 +
50 46  
51 47 /**
52 48 *
53   - * M&eacute;todo respons&aacute;vel por salvar os dois tipos de tarjas de assinatura ao mesmo tempo
  49 + * M&eacute;todo respons&aacute;vel por remover a imagem associada a uma tarja de assinatura.
54 50 *
55 51 * @author ciro.junior (<a href="mailto:ciro.junior@centralit.com.br">ciro.junior@centralit.com.br</a>)
56 52 *
57   - * @param tarjaAssinaturaVH
  53 + * @param tarjaAssinatura
58 54 * @return
59 55 */
60   - TarjaAssinaturaVH save (TarjaAssinaturaVH tarjaAssinaturaVH);
  56 + TarjaAssinatura removeImagem (TarjaAssinatura tarjaAssinatura);
61 57 }
... ...
cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/InicializarEcmServiceImpl.java
... ... @@ -344,7 +344,7 @@ public class InicializarEcmServiceImpl extends UtilStartup {
344 344 pgTarjaAssinatura = this.paginaService.saveIfNotExist(pgTarjaAssinatura);
345 345  
346 346 Menu menuTarjaAssinatura = new Menu("Tarja de Assinatura", pgTarjaAssinatura, menuCadastroBasico, 0, 9, null, null, null, null, modulo);
347   - menuTarjaAssinatura.setIncludes(this.gerarArquivosMenu(menuTarjaAssinatura, this.CIT_ECM_WEB_ANGULAR, "TarjaAssinatura", true, false, true));
  347 + menuTarjaAssinatura.setIncludes(this.gerarArquivosMenu(menuTarjaAssinatura, this.CIT_ECM_WEB_ANGULAR, "TarjaAssinatura", true, true, true));
348 348 this.menuService.mergeIfNotExist(menuTarjaAssinatura);
349 349 }
350 350  
... ...
cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/TarjaAssinaturaServiceImpl.java
1 1 package br.com.centralit.api.service.impl;
2 2  
3 3 import java.io.IOException;
4   -import java.util.ArrayList;
5   -import java.util.List;
6 4  
7 5 import org.apache.log4j.Logger;
8 6 import org.springframework.beans.factory.annotation.Autowired;
... ... @@ -13,13 +11,11 @@ import org.springframework.web.multipart.MultipartFile;
13 11  
14 12 import br.com.centralit.api.dao.TarjaAssinaturaDao;
15 13 import br.com.centralit.api.model.TarjaAssinatura;
16   -import br.com.centralit.api.model.TarjaAssinaturaVH;
17 14 import br.com.centralit.api.service.AnexoImagemService;
18 15 import br.com.centralit.api.service.OrganizacaoService;
19 16 import br.com.centralit.api.service.TarjaAssinaturaService;
20 17 import br.com.centralit.framework.model.AnexoImagem;
21 18 import br.com.centralit.framework.model.Organizacao;
22   -import br.com.centralit.framework.model.arquitetura.PersistentObject;
23 19 import br.com.centralit.framework.service.arquitetura.GenericServiceImpl;
24 20  
25 21 /**
... ... @@ -55,13 +51,8 @@ public class TarjaAssinaturaServiceImpl extends GenericServiceImpl&lt;TarjaAssinatu
55 51 this.validator = validator;
56 52 }
57 53  
58   - public TarjaAssinaturaVH save (TarjaAssinaturaVH tarjaAssinaturaVH){
59   - TarjaAssinaturaVH tarjaAssinaturaVHSaved = new TarjaAssinaturaVH();
60   - if(tarjaAssinaturaVH.getAssinaturaInterna() != null && tarjaAssinaturaVH.getAssinaturaCertificado() != null){
61   - tarjaAssinaturaVHSaved.setAssinaturaInterna(this.merge(tarjaAssinaturaVH.getAssinaturaInterna()));
62   - tarjaAssinaturaVHSaved.setAssinaturaCertificado(this.merge(tarjaAssinaturaVH.getAssinaturaCertificado()));
63   - }
64   - return tarjaAssinaturaVHSaved;
  54 + public TarjaAssinatura save (TarjaAssinatura tarjaAssinatura){
  55 + return this.merge(tarjaAssinatura);
65 56 }
66 57  
67 58 @Override
... ... @@ -70,6 +61,15 @@ public class TarjaAssinaturaServiceImpl extends GenericServiceImpl&lt;TarjaAssinatu
70 61 return super.merge(tarjaAssinatura);
71 62 }
72 63  
  64 + @Override
  65 + public TarjaAssinatura removeImagem (TarjaAssinatura tarjaAssinatura) {
  66 + if(tarjaAssinatura.getAnexoImagem() != null) {
  67 + anexoImagemService.removeById(tarjaAssinatura.getAnexoImagem().getId());
  68 + tarjaAssinatura.setAnexoImagem(null);
  69 + }
  70 + return this.merge(tarjaAssinatura);
  71 + }
  72 +
73 73 /**{@inheritDoc}*/
74 74 @Override
75 75 public void uploadAnexoImagemTarja(MultipartFile file, Long idOrganizacao, Long idTarjaAssinatura) {
... ... @@ -90,27 +90,4 @@ public class TarjaAssinaturaServiceImpl extends GenericServiceImpl&lt;TarjaAssinatu
90 90 + "identificar a causa: ", ioe.getCause());
91 91 }
92 92 }
93   -
94   - /**{@inheritDoc}*/
95   - @Override
96   - public TarjaAssinaturaVH getAllTarjas () {
97   -
98   - TarjaAssinaturaVH tarjaAssinaturaVH = new TarjaAssinaturaVH();
99   - List<PersistentObject> tarjas = tarjaAssinaturaDao.findAll();
100   - List<TarjaAssinatura> tarjasAssinatura = new ArrayList<>();
101   - for (PersistentObject item : tarjas) {
102   - if(item instanceof TarjaAssinatura){
103   - tarjasAssinatura.add((TarjaAssinatura) item);
104   - }
105   - }
106   - for (TarjaAssinatura tarjaAssinatura : tarjasAssinatura) {
107   - if(tarjaAssinatura.getTipoAssinatura().getCodigo() == 1L){
108   - tarjaAssinaturaVH.setAssinaturaInterna(tarjaAssinatura);
109   - continue;
110   - }
111   - tarjaAssinaturaVH.setAssinaturaCertificado(tarjaAssinatura);
112   - }
113   - return tarjaAssinaturaVH;
114   - }
115   -
116 93 }
... ...
cit-ecm-api/src/main/resources/scripts/v1.0.0-alpha9/01-cit-ecm-1.0.0-ALFA-3-postgres.sql 0 → 100644
... ... @@ -0,0 +1,53 @@
  1 +-- CIRO - 18/04/2016 - INICIO
  2 +
  3 +ALTER TABLE anexoimagem DROP CONSTRAINT fk_jrmn20bykidk1pkxu492d4bmx;
  4 +DROP TABLE anexoimagem;
  5 +
  6 +CREATE TABLE anexoimagem
  7 +(
  8 + id bigint NOT NULL,
  9 + databloqueio date,
  10 + datainativo date,
  11 + datacriacao timestamp without time zone NOT NULL,
  12 + dataedicao timestamp without time zone NOT NULL,
  13 + version bigint,
  14 + anexo bytea,
  15 + descricao character varying(300),
  16 + inativador_id bigint,
  17 + autor_id bigint,
  18 + editor_id bigint,
  19 + organizacao_id bigint,
  20 + CONSTRAINT anexoimagem_pkey PRIMARY KEY (id),
  21 + CONSTRAINT fk_5hyw0geaeeh6hnssbssi7htvb FOREIGN KEY (editor_id)
  22 + REFERENCES seguranca_usuario (id) MATCH SIMPLE
  23 + ON UPDATE NO ACTION ON DELETE NO ACTION,
  24 + CONSTRAINT fk_76rf21tx2q8px4fjbsavu4kva FOREIGN KEY (inativador_id)
  25 + REFERENCES seguranca_usuario (id) MATCH SIMPLE
  26 + ON UPDATE NO ACTION ON DELETE NO ACTION,
  27 + CONSTRAINT fk_cx5i3h3y5675r622to4rddra3 FOREIGN KEY (autor_id)
  28 + REFERENCES seguranca_usuario (id) MATCH SIMPLE
  29 + ON UPDATE NO ACTION ON DELETE NO ACTION,
  30 + CONSTRAINT fk_few35t9tvbqe49wakqts3mt4l FOREIGN KEY (organizacao_id)
  31 + REFERENCES organizacao (id) MATCH SIMPLE
  32 + ON UPDATE NO ACTION ON DELETE NO ACTION
  33 +);
  34 +
  35 +ALTER TABLE configuracao DROP COLUMN anexoimagem_id;
  36 +
  37 +CREATE TABLE configuracao_anexoimagem
  38 +(
  39 + configuracao_id bigint NOT NULL,
  40 + anexoimagem_id bigint NOT NULL,
  41 + CONSTRAINT fk_2nqdnlb8v5u1xe3hjvl3p5f4o FOREIGN KEY (configuracao_id)
  42 + REFERENCES configuracao (id) MATCH SIMPLE
  43 + ON UPDATE NO ACTION ON DELETE NO ACTION,
  44 + CONSTRAINT fk_3r4n34ctyem6lxoijg47ennvp FOREIGN KEY (anexoimagem_id)
  45 + REFERENCES anexoimagem (id) MATCH SIMPLE
  46 + ON UPDATE NO ACTION ON DELETE NO ACTION
  47 +);
  48 +
  49 +INSERT INTO tarjaassinatura(id, databloqueio, datainativo, datacriacao, dataedicao, version, conteudo, descricao, inativador_id, autor_id, editor_id, anexoimagem_id, tipoassinatura_id)
  50 +VALUES (NEXTVAL('hibernate_sequence'), LOCALTIMESTAMP, NULL, LOCALTIMESTAMP, LOCALTIMESTAMP, 0, '', '', null, (select id from seguranca_usuario where username = 'admin'), null, null, (select id from dominio where chave = 'tipoAssinatura' and codigo = 1));
  51 +INSERT INTO tarjaassinatura(id, databloqueio, datainativo, datacriacao, dataedicao, version, conteudo, descricao, inativador_id, autor_id, editor_id, anexoimagem_id, tipoassinatura_id)
  52 +VALUES (NEXTVAL('hibernate_sequence'), LOCALTIMESTAMP, NULL, LOCALTIMESTAMP, LOCALTIMESTAMP, 0, '', '', null, (select id from seguranca_usuario where username = 'admin'), null, null, (select id from dominio where chave = 'tipoAssinatura' and codigo = 2));
  53 +-- CIRO - 18/04/2016 - FIM
0 54 \ No newline at end of file
... ...
cit-ecm-web/src/main/java/br/com/centralit/controller/TarjaAssinaturaController.java
... ... @@ -13,17 +13,14 @@ import org.springframework.web.multipart.MultipartFile;
13 13  
14 14 import br.com.centralit.api.framework.json.ViewsEcm;
15 15 import br.com.centralit.api.model.TarjaAssinatura;
16   -import br.com.centralit.api.model.TarjaAssinaturaVH;
17 16 import br.com.centralit.api.service.TarjaAssinaturaService;
18 17 import br.com.centralit.framework.controller.GenericController;
19 18 import br.com.centralit.framework.json.ResponseBodyWrapper;
20   -import br.com.centralit.framework.view.ResultResponseVH;
21 19  
22 20 @Controller
23 21 @RequestMapping("/rest/tarjaAssinatura")
24 22 public class TarjaAssinaturaController extends GenericController<TarjaAssinatura> {
25 23  
26   - @Autowired
27 24 private TarjaAssinaturaService tarjaAssinaturaService;
28 25  
29 26 @Override
... ... @@ -31,6 +28,12 @@ public class TarjaAssinaturaController extends GenericController&lt;TarjaAssinatura
31 28 return ViewsEcm.TarjaAssinaturaEditview.class;
32 29 }
33 30  
  31 + @Autowired
  32 + public TarjaAssinaturaController( TarjaAssinaturaService tarjaAssinaturaService ) {
  33 + super(tarjaAssinaturaService);
  34 + this.tarjaAssinaturaService = tarjaAssinaturaService;
  35 + }
  36 +
34 37 @ResponseBody
35 38 @RequestMapping(value = "/uploadFileLogo", method = RequestMethod.POST)
36 39 public void uploadFileHandle(@RequestParam(value = "filename", required = false) String name,
... ... @@ -42,21 +45,19 @@ public class TarjaAssinaturaController extends GenericController&lt;TarjaAssinatura
42 45 }
43 46  
44 47 @ResponseBody
45   - @RequestMapping(value = "/getAllTarjas", method = RequestMethod.GET, produces = "application/json")
46   - public ResponseBodyWrapper getAllTarjas () {
  48 + @RequestMapping(value = "/saveTarjaAssinatura", method = RequestMethod.POST, produces = "application/json")
  49 + public ResponseBodyWrapper save(@RequestBody TarjaAssinatura tarjaAssinatura) throws Exception {
47 50  
48   - ResultResponseVH<TarjaAssinaturaVH> resultResponseVH = new ResultResponseVH<TarjaAssinaturaVH>(this.tarjaAssinaturaService.getAllTarjas());
49   - ResponseBodyWrapper responseBody = new ResponseBodyWrapper(resultResponseVH, this.getEditView());
  51 + ResponseBodyWrapper responseBody = new ResponseBodyWrapper(this.tarjaAssinaturaService.save(tarjaAssinatura), getEditView());
50 52  
51 53 return responseBody;
52   -
53 54 }
54 55  
55 56 @ResponseBody
56   - @RequestMapping(value = "/saveTarjaAssinatura", method = RequestMethod.POST, produces = "application/json")
57   - public ResponseBodyWrapper save(@RequestBody TarjaAssinaturaVH tarjaAssinaturaVH) throws Exception {
  57 + @RequestMapping(value = "/removeImagem", method = RequestMethod.POST, produces = "application/json")
  58 + public ResponseBodyWrapper removeImagem(@RequestBody TarjaAssinatura tarjaAssinatura) throws Exception {
58 59  
59   - ResponseBodyWrapper responseBody = new ResponseBodyWrapper(this.tarjaAssinaturaService.save(tarjaAssinaturaVH), getEditView());
  60 + ResponseBodyWrapper responseBody = new ResponseBodyWrapper(this.tarjaAssinaturaService.removeImagem(tarjaAssinatura), getEditView());
60 61  
61 62 return responseBody;
62 63 }
... ...
cit-ecm-web/src/main/java/br/com/centralit/listener/StartupListenerEcm.java
... ... @@ -404,12 +404,10 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen
404 404 internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.TIPO_SUPORTE_DOCUMENTO ", "Tipo suporte de documento", dominio, modulo));
405 405 internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.TARJAS_ASSINATURA", "Tarjas de assinatura", dominio, modulo));
406 406 internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.LOGO_TARJA_ASSINATURA", "Logotipo da tarja de assinatura", dominio, modulo));
407   - internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.DADOS_TARJA_ASSINATURA_INTERNA", "Dados da tarja de assinatura interna", dominio, modulo));
  407 + internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.DADOS_TARJA_ASSINATURA", "Dados da tarja de assinatura", dominio, modulo));
408 408 internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.TIPO_ASSINATURA", "Tipo de assinatura", dominio, modulo));
409 409 internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.CONTEUDO_HTML", "Conteúdo HTML", dominio, modulo));
410   - internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.DADOS_TARJA_ASSINATURA_CERTIFICADO_DIGITAL", "Dados da tarja de assinatura com certificado digital", dominio, modulo));
411   - internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.ASSINATURA_CERTIFICADO_DIGITAL", "Assinatura com certificado digital", dominio, modulo));
412   - internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.ASSINATURA_INTERNA", "Assinatura interna", dominio, modulo));
  410 + internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.REMOVER_IMAGEM", "Remover imagem", dominio, modulo));
413 411 }
414 412  
415 413 /**
... ...
cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/TarjaAssinaturaController.js
... ... @@ -16,18 +16,21 @@ citApp.controller(&#39;TarjaAssinaturaController&#39;,
16 16 DominioRepository,
17 17 FileUploader) {
18 18  
19   -
20 19 $scope.resetForm = function() {
21   - $scope.tarjaAssinatura = {
22   - assinaturaInterna : {tipoAssinatura : $scope.tipoAssinaturaInterna},
23   - assinaturaCertificado : {tipoAssinatura : $scope.tipoAssinaturaCertificado}
24   - };
25   - if ($scope.uploaderLogoTarjaAssinaturaInterna && $scope.uploaderLogoTarjaAssinaturaCertificado){
26   - $scope.uploaderLogoTarjaAssinaturaInterna.clearQueue();
27   - $scope.uploaderLogoTarjaAssinaturaCertificado.clearQueue();
  20 +
  21 + if($scope.tarjaAssinatura) {
  22 + var originalTipoAssinatura = $scope.tarjaAssinatura.tipoAssinatura;
  23 + $scope.tarjaAssinatura = {
  24 + tipoAssinatura : originalTipoAssinatura
  25 + }
  26 + }
  27 +
  28 + if ($scope.uploaderLogo){
  29 + $scope.uploaderLogo.clearQueue();
  30 + $scope.uploaderLogo.url = '/cit-ecm-web/rest/tarjaAssinatura/uploadFileLogo?idOrganizacao=' + $scope.usuarioLogado.organizacao.id + '&idTarjaAssinatura=';
28 31 }
29 32  
30   - $scope.edit = true;
  33 +// $scope.edit = true;
31 34 $timeout(function(){
32 35 if($scope.tarjaAssinaturaForm){
33 36 $scope.tarjaAssinaturaForm.$submitted = false;
... ... @@ -35,7 +38,6 @@ citApp.controller(&#39;TarjaAssinaturaController&#39;,
35 38 }
36 39 });
37 40 };
38   - $scope.resetForm();
39 41  
40 42 DominioRepository.buscaDominioByCodigoAndChave(1, 'tipoAssinatura').then(function(result) {
41 43 $scope.tipoAssinaturaInterna = result.originalElement;
... ... @@ -44,28 +46,11 @@ citApp.controller(&#39;TarjaAssinaturaController&#39;,
44 46 $scope.tipoAssinaturaCertificado = result.originalElement;
45 47 });
46 48  
47   - $scope.getAllTarjas = function(){
48   - $scope.setLoadingGet(true);
49   - TarjaAssinaturaRepository.getAllTarjas().then(function(result) {
50   - $scope.tarjaAssinatura = result.originalElement;
51   - $scope.edit = false;
52   - $scope.setLoading(false);
53   - });
54   - };
55   - $scope.getAllTarjas();
56   -
57   - var vincularIdTarjaUploader = function () {
58   - if($scope.tarjaAssinatura.assinaturaInterna.id && $scope.tarjaAssinatura.assinaturaCertificado.id){
59   - $scope.uploaderLogoTarjaAssinaturaInterna.url += $scope.tarjaAssinatura.assinaturaInterna.id;
60   - $scope.uploaderLogoTarjaAssinaturaCertificado.url += $scope.tarjaAssinatura.assinaturaCertificado.id;
61   - }
62   - };
63   -
64   - $scope.saveOrUpdate = function(){
  49 + $scope.saveOrUpdate = function(form){
65 50  
66   - $scope.tarjaAssinaturaForm.$submitted = true;
  51 + form.$submitted = true;
67 52  
68   - if($scope.tarjaAssinaturaForm.$invalid){
  53 + if(form.$invalid){
69 54 $scope.showAlert('error', $translate.instant('MSG.MN001'), " ", false);
70 55 return;
71 56 }
... ... @@ -75,30 +60,52 @@ citApp.controller(&#39;TarjaAssinaturaController&#39;,
75 60 TarjaAssinaturaRepository.save($scope.tarjaAssinatura).then(function(result) {
76 61 $scope.tarjaAssinatura = result.originalElement;
77 62 $scope.showAlert("success", $translate.instant('MSG.REGISTRO_SALVO'));
78   - $scope.tarjaAssinaturaForm.$submitted = false;
  63 + form.$submitted = false;
79 64 $scope.setLoading(false);
80   - if($scope.uploaderLogoTarjaAssinaturaInterna.queue.length > 0 || $scope.uploaderLogoTarjaAssinaturaCertificado.queue.length > 0){
81   - $scope.uploaderLogoTarjaAssinaturaInterna.uploadAll();
82   - $scope.uploaderLogoTarjaAssinaturaCertificado.uploadAll();
  65 + if($scope.uploaderLogo.queue.length > 0){
  66 + $scope.uploaderLogo.uploadAll();
83 67 }
  68 + $scope.$showPageSearchWorkspace($scope.workspace);
  69 + $scope.fetchResult();
84 70 });
85 71 };
86 72  
87 73 $scope.cancelarEdicao = function () {
88 74 $scope.resetForm();
89   - $scope.getAllTarjas();
  75 + $scope.$showPageSearchWorkspace($scope.workspace);
  76 + $scope.fetchResult();
90 77 $scope.edit= false
91 78 }
92 79  
  80 + $scope.fetchResult = function(){
  81 + angular.element('#searchTarjaAssinatura').scope().fetchResult();
  82 + };
  83 +
  84 + $scope.removeImagem = function (){
  85 + if($scope.tarjaAssinatura.anexoImagem){
  86 + TarjaAssinaturaRepository.removeImagem($scope.tarjaAssinatura).then(function (result) {
  87 + $scope.tarjaAssinatura = result.originalElement;
  88 + if($scope.uploaderLogo.queue.length > 0){
  89 + $scope.uploaderLogo.clearQueue();
  90 + }
  91 + })
  92 + }
  93 + }
  94 + $scope.openFile = function () {
  95 + if($scope.edit){
  96 + angular.element('#uploadLogoTarjaAssinatura').trigger('click');
  97 + }
  98 + }
  99 +
93 100 //INSTANCIA DO OBJETO PARA FAZER UPLOAD
94   - $scope.uploaderLogoTarjaAssinaturaInterna = new FileUploader({
  101 + $scope.uploaderLogo = new FileUploader({
95 102 autoUpload: false,
96 103 queueLimit: 1,
97 104 url : '/cit-ecm-web/rest/tarjaAssinatura/uploadFileLogo?idOrganizacao=' + $scope.usuarioLogado.organizacao.id + '&idTarjaAssinatura='
98 105 });
99 106  
100 107 // FILTERS
101   - $scope.uploaderLogoTarjaAssinaturaInterna.filters.push({
  108 + $scope.uploaderLogo.filters.push({
102 109 name: 'imageFilter',
103 110 fn: function(item , options) {
104 111 var type = '|' + item.type.slice(item.type.lastIndexOf('/') + 1) + '|';
... ... @@ -107,96 +114,57 @@ citApp.controller(&#39;TarjaAssinaturaController&#39;,
107 114 });
108 115  
109 116 // CALLBACKS
110   - $scope.uploaderLogoTarjaAssinaturaInterna.onWhenAddingFileFailed = function(item , filter, options) {
111   - $scope.uploaderLogoTarjaAssinaturaInterna.clearQueue();
112   - console.info('onWhenAddingFileFailed', item, filter, options);
  117 + $scope.uploaderLogo.onWhenAddingFileFailed = function(item , filter, options) {
  118 + $scope.uploaderLogo.clearQueue();
  119 +// console.info('onWhenAddingFileFailed', item, filter, options);
113 120 };
114   - $scope.uploaderLogoTarjaAssinaturaInterna.onAfterAddingFile = function(fileItem) {
115   - console.info('onAfterAddingFile', fileItem);
  121 + $scope.uploaderLogo.onAfterAddingFile = function(fileItem) {
  122 +// console.info('onAfterAddingFile', fileItem);
116 123 };
117   - $scope.uploaderLogoTarjaAssinaturaInterna.onAfterAddingAll = function(addedFileItems) {
118   - console.info('onAfterAddingAll', addedFileItems);
  124 + $scope.uploaderLogo.onAfterAddingAll = function(addedFileItems) {
  125 +// console.info('onAfterAddingAll', addedFileItems);
119 126 };
120   - $scope.uploaderLogoTarjaAssinaturaInterna.onBeforeUploadItem = function(item) {
121   - console.info('onBeforeUploadItem', item);
  127 + $scope.uploaderLogo.onBeforeUploadItem = function(item) {
  128 +// console.info('onBeforeUploadItem', item);
122 129 };
123   - $scope.uploaderLogoTarjaAssinaturaInterna.onProgressItem = function(fileItem, progress) {
124   - console.info('onProgressItem', fileItem, progress);
  130 + $scope.uploaderLogo.onProgressItem = function(fileItem, progress) {
  131 +// console.info('onProgressItem', fileItem, progress);
125 132 };
126   - $scope.uploaderLogoTarjaAssinaturaInterna.onProgressAll = function(progress) {
127   - console.info('onProgressAll', progress);
  133 + $scope.uploaderLogo.onProgressAll = function(progress) {
  134 +// console.info('onProgressAll', progress);
128 135 };
129   - $scope.uploaderLogoTarjaAssinaturaInterna.onSuccessItem = function(fileItem, response, status, headers) {
130   - console.info('onSuccessItem', fileItem, response, status, headers);
  136 + $scope.uploaderLogo.onSuccessItem = function(fileItem, response, status, headers) {
  137 +// console.info('onSuccessItem', fileItem, response, status, headers);
131 138 };
132   - $scope.uploaderLogoTarjaAssinaturaInterna.onErrorItem = function(fileItem, response, status, headers) {
133   - console.info('onErrorItem', fileItem, response, status, headers);
  139 + $scope.uploaderLogo.onErrorItem = function(fileItem, response, status, headers) {
  140 +// console.info('onErrorItem', fileItem, response, status, headers);
134 141 };
135   - $scope.uploaderLogoTarjaAssinaturaInterna.onCancelItem = function(fileItem, response, status, headers) {
136   - console.info('onCancelItem', fileItem, response, status, headers);
  142 + $scope.uploaderLogo.onCancelItem = function(fileItem, response, status, headers) {
  143 +// console.info('onCancelItem', fileItem, response, status, headers);
137 144 };
138   - $scope.uploaderLogoTarjaAssinaturaInterna.onCompleteItem = function(fileItem, response, status, headers) {
139   - console.info('onCompleteItem', fileItem, response, status, headers);
  145 + $scope.uploaderLogo.onCompleteItem = function(fileItem, response, status, headers) {
  146 +// console.info('onCompleteItem', fileItem, response, status, headers);
140 147 };
141   - $scope.uploaderLogoTarjaAssinaturaInterna.onCompleteAll = function() {
142   - $scope.uploaderLogoTarjaAssinaturaInterna.clearQueue();
143   - $scope.getAllTarjas()
144   - console.info('onCompleteAll');
  148 + $scope.uploaderLogo.onCompleteAll = function() {
  149 + $scope.uploaderLogo.clearQueue();
  150 + $scope.getTarjaAssinatura($scope.tarjaAssinatura.id, $scope.edit)
  151 +// console.info('onCompleteAll');
145 152 };
146 153  
147   -//INSTANCIA DO OBJETO PARA FAZER UPLOAD
148   - $scope.uploaderLogoTarjaAssinaturaCertificado = new FileUploader({
149   - autoUpload: false,
150   - queueLimit: 1,
151   - url :'/cit-ecm-web/rest/tarjaAssinatura/uploadFileLogo?idOrganizacao=' + $scope.usuarioLogado.organizacao.id + '&idTarjaAssinatura='
152   - });
153   -
154   - // FILTERS
155   - $scope.uploaderLogoTarjaAssinaturaCertificado.filters.push({
156   - name: 'imageFilter',
157   - fn: function(item , options) {
158   - var type = '|' + item.type.slice(item.type.lastIndexOf('/') + 1) + '|';
159   - return '|jpg|png|jpeg|bmp|gif|'.indexOf(type) !== -1;
160   - }
161   - });
  154 + $scope.getTarjaAssinatura = function(id, edit) {
  155 + $scope.resetForm();
  156 + $scope.setLoadingGet(true);
  157 + TarjaAssinaturaRepository.get(id).then(function(result) {
  158 + $scope.tarjaAssinatura = result.originalElement;
  159 + vincularIdTarjaUploader();
  160 + $scope.edit = edit;
  161 + $scope.setLoading(false);
  162 + });
  163 + };
162 164  
163   - // CALLBACKS
164   - $scope.uploaderLogoTarjaAssinaturaCertificado.onWhenAddingFileFailed = function(item , filter, options) {
165   - $scope.uploaderLogoTarjaAssinaturaCertificado.clearQueue();
166   - console.info('onWhenAddingFileFailed', item, filter, options);
167   - };
168   - $scope.uploaderLogoTarjaAssinaturaCertificado.onAfterAddingFile = function(fileItem) {
169   - console.info('onAfterAddingFile', fileItem);
170   - };
171   - $scope.uploaderLogoTarjaAssinaturaCertificado.onAfterAddingAll = function(addedFileItems) {
172   - console.info('onAfterAddingAll', addedFileItems);
  165 + var vincularIdTarjaUploader = function () {
  166 + if($scope.tarjaAssinatura.id){
  167 + $scope.uploaderLogo.url += $scope.tarjaAssinatura.id;
  168 + }
173 169 };
174   - $scope.uploaderLogoTarjaAssinaturaCertificado.onBeforeUploadItem = function(item) {
175   - console.info('onBeforeUploadItem', item);
176   - };
177   - $scope.uploaderLogoTarjaAssinaturaCertificado.onProgressItem = function(fileItem, progress) {
178   - console.info('onProgressItem', fileItem, progress);
179   - };
180   - $scope.uploaderLogoTarjaAssinaturaCertificado.onProgressAll = function(progress) {
181   - console.info('onProgressAll', progress);
182   - };
183   - $scope.uploaderLogoTarjaAssinaturaCertificado.onSuccessItem = function(fileItem, response, status, headers) {
184   - console.info('onSuccessItem', fileItem, response, status, headers);
185   - };
186   - $scope.uploaderLogoTarjaAssinaturaCertificado.onErrorItem = function(fileItem, response, status, headers) {
187   - console.info('onErrorItem', fileItem, response, status, headers);
188   - };
189   - $scope.uploaderLogoTarjaAssinaturaCertificado.onCancelItem = function(fileItem, response, status, headers) {
190   - console.info('onCancelItem', fileItem, response, status, headers);
191   - };
192   - $scope.uploaderLogoTarjaAssinaturaCertificado.onCompleteItem = function(fileItem, response, status, headers) {
193   - console.info('onCompleteItem', fileItem, response, status, headers);
194   - };
195   - $scope.uploaderLogoTarjaAssinaturaCertificado.onCompleteAll = function() {
196   - $scope.uploaderLogoTarjaAssinaturaCertificado.clearQueue();
197   - $scope.getAllTarjas();
198   - console.info('onCompleteAll');
199   - };
200   -
201   - vincularIdTarjaUploader();
202 170 }]);
... ...
cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/TarjaAssinaturaListController.js
... ... @@ -17,31 +17,32 @@ citApp.controller(&#39;TarjaAssinaturaListController&#39;,
17 17 angular.element("#editTarjaAssinatura").scope().resetForm();
18 18 };
19 19  
20   - $scope.headers = [ {title : $translate.instant('LABEL.TIPO_ASSINATURA'), value : 'dominio.tipoAssinatura' },
21   - {title : $translate.instant('LABEL.DESCRICAO'), value : 'descricao' }];
  20 + $scope.headers = [ {title : $translate.instant('LABEL.DESCRICAO'), value : 'descricao' },
  21 + {title : $translate.instant('ECM.LABEL.TIPO_ASSINATURA'), value : 'tipoAssinatura.descricao' }];
22 22  
23 23 $scope.filterCriteria = {
24 24 start : 1,
25 25 dir : 'asc',
26 26 sort : 'id',
27 27 limit : 10,
28   - fields: ['id', 'tipoAssinatura.descricao', 'descricao'],
29   - filters : [ {type : 'string', field : 'tipoAssinatura.descricao', listaDominio : [] },
30   - {type : 'string', field : 'descricao' }]
  28 + fields: ['id', 'descricao', 'tipoAssinatura.descricao'],
  29 + filters : [{type : 'string', field : 'descricao' },
  30 + {type : 'string', field : 'tipoAssinatura.descricao', listaDominio : [] }]
31 31 };
32 32  
33 33 DominioRepository.findAllDominio('tipoAssinatura').then(function(result) {
34 34 $scope.filterCriteria.filters[0].listaDominio = result;
35 35 });
36 36  
37   - $scope.abrirVisualizar = function(edit){
  37 + $scope.editarVisualizarTarjaAssinatura = function(edit){
38 38 var tarjaAssinatura = $scope.tarjaAssinaturaChecked;
39 39  
40 40 if(!tarjaAssinatura) {
41   - $scope.showAlert('warning', !edit ? $translate.instant('MSG.SELECIONE_UM_ITEM_PARA_VISUALIZACAO') : $translate.instant('MSG.SELECIONE_UM_ITEM_PARA_EDICAO'));
  41 + $scope.showAlert('warning', !edit ? $translate.instant('MSG.SELECIONE_UM_ITEM_PARA_VISUALIZACAO') :
  42 + $translate.instant('MSG.SELECIONE_UM_ITEM_PARA_EDICAO'));
42 43 return;
43 44 }
44   - angular.element('#editTarjaAssinatura').scope().getTarjaAssinatura(tarjaAssinatura, edit);
  45 + angular.element('#editTarjaAssinatura').scope().getTarjaAssinatura(tarjaAssinatura.id, edit);
45 46 $scope.$showPageEditWorkspace($scope.workspace);
46 47 };
47 48 }]);
... ...
cit-ecm-web/src/main/webapp/assets/js/angular/custom/repository/TarjaAssinaturaRepository.js
... ... @@ -5,13 +5,12 @@ citApp.factory(&#39;TarjaAssinaturaRepository&#39;, [&#39;RestangularEcm&#39;, &#39;AbstractReposito
5 5 function TarjaAssinaturaRepository() {
6 6 AbstractRepository.call(this, restangularEcm, 'rest/tarjaAssinatura');
7 7  
8   - this.getAllTarjas = function() {
9   - return restangularEcm.one(this.route + "/getAllTarjas" ).get();
10   - };
11   -
12 8 this.save = function(tarjaAssinatura) {
13 9 return restangularEcm.all(this.route + "/saveTarjaAssinatura").post(tarjaAssinatura).then();
14 10 };
  11 + this.removeImagem = function(tarjaAssinatura) {
  12 + return restangularEcm.all(this.route + "/removeImagem").post(tarjaAssinatura).then();
  13 + };
15 14 }
16 15  
17 16 AbstractRepository.extend(TarjaAssinaturaRepository);
... ...
cit-ecm-web/src/main/webapp/html/tarjaAssinatura/tarjaAssinatura.html
1   -<div ng-include src="'/cit-ecm-web/html/tarjaAssinatura/tarjaAssinaturaEdit.html'"></div>
2   -<!-- <div ng-include src="'/cit-ecm-web/html/tarjaAssinatura/tarjaAssinaturaList.html'" ng-show="workspace.$showSearch"></div> -->
  1 +<div ng-include src="'/cit-ecm-web/html/tarjaAssinatura/tarjaAssinaturaList.html'" ng-show="workspace.$showSearch"></div>
  2 +<div ng-include src="'/cit-ecm-web/html/tarjaAssinatura/tarjaAssinaturaEdit.html'" ng-show="workspace.$showEdit"></div>
... ...
cit-ecm-web/src/main/webapp/html/tarjaAssinatura/tarjaAssinaturaEdit.html
... ... @@ -2,22 +2,26 @@
2 2 <div class="bar-buttons-action fixed">
3 3 <div class="row">
4 4 <div class="col-sm-8 text-left">
5   - <button class="btn btn-clear" ng-click="saveOrUpdate()" ng-show="edit">
  5 + <button class="btn btn-clear" ng-click="saveOrUpdate(tarjaAssinaturaForm)" ng-show="edit" type="button">
6 6 <i class="fa fa-save green"></i>
7 7 <translate>LABEL.SALVAR</translate>
8 8 </button>
9   - <button class="btn btn-clear" ng-click="resetForm()" ng-show="edit">
  9 + <button class="btn btn-clear" ng-click="resetForm()" ng-show="edit"type="button">
10 10 <i class="fa fa-eraser yellow-dark"></i>
11 11 <translate>LABEL.LIMPAR</translate>
12 12 </button>
13   - <button class="btn btn-clear" ng-show="!edit" ng-click="edit = true">
  13 + <button class="btn btn-clear" ng-click="edit = true" ng-show="!edit" type="button">
14 14 <i class="fa fa-pencil blue"></i>
15 15 <translate>LABEL.EDITAR</translate>
16 16 </button>
17   - <button class="btn btn-clear" ng-show="edit" ng-click="cancelarEdicao()">
  17 + <button class="btn btn-clear" ng-click="cancelarEdicao()" ng-show="edit" type="button">
18 18 <i class="fa fa-times"></i>
19 19 <translate>LABEL.CANCELAR</translate>
20 20 </button>
  21 + <button class="btn btn-clear" ng-click="cancelarEdicao()" ng-hide="edit" type="button" >
  22 + <i class="fa fa-search"></i>
  23 + <translate>LABEL.PESQUISAR</translate>
  24 + </button>
21 25 </div>
22 26 <!-- .col -->
23 27  
... ... @@ -30,121 +34,66 @@
30 34  
31 35 <breadcrumb ng-workspace="workspace"></breadcrumb>
32 36 <form name="tarjaAssinaturaForm">
33   - <tabset class="tabbable margin-top margin-bottom">
34   - <tab>
35   - <tab-heading><translate>ECM.LABEL.ASSINATURA_INTERNA</translate></tab-heading>
36   -<!-- <form name="tarjaAssinaturaInternaForm"> -->
37   - <p><small>( <span class="red">*</span> ) <translate>LABEL.CAMPOS_OBRIGATORIOS</translate></small></p>
38   - <fieldset>
39   - <legend>
40   - <translate>ECM.LABEL.DADOS_TARJA_ASSINATURA_INTERNA</translate>
41   - </legend>
42   - </fieldset>
43   - <div class="row">
44   - <div class="col-md-6">
45   - <label-input ng-id="tarjaAssinatura.assinaturaInterna.descricao" ng-label="LABEL.DESCRICAO" ng-type="text"
46   - ng-model="tarjaAssinatura.assinaturaInterna.descricao" form="tarjaAssinaturaForm" ng-obrigatorio="true"
47   - ng-custom-maxlength="100" ng-type="text" ng-disabled="!edit" />
48   - </div>
49   - <div class="col-md-4">
50   - <label-input ng-id="tarjaAssinatura.assinaturaInterna.tipoAssinatura" ng-label="ECM.LABEL.TIPO_ASSINATURA" ng-type="text"
51   - ng-disabled="true" ng-model="tarjaAssinatura.assinaturaInterna.tipoAssinatura.descricao" form="tarjaAssinaturaForm"
52   - ng-obrigatorio="false" ng-type="text" />
53   - </div>
54   - </div>
55   - <div class="row">
56   - <div class="col-sm-12">
57   - <div class="form-group" ng-disable="!edit">
58   - <label class="control-label"><translate>ECM.LABEL.LOGO_TARJA_ASSINATURA</translate></label>
59   - <div ng-if="tarjaAssinatura.assinaturaInterna.anexoImagem.anexo == undefined" nv-file-drop="" uploader="uploaderLogoTarjaAssinaturaInterna"
60   - onclick="this.edit ? $('#uploadLogoTarjaAssinaturaInterna').click() : null">
61   - <div nv-file-over="" uploader="uploaderLogoTarjaAssinaturaInterna" over-class="another-file-over-class" class="well my-drop-zone">
62   - <span ng-show="uploaderLogoTarjaAssinaturaInterna.queue.length <= 0"><translate>MSG.ARRASTE_SOLTE_ARQUIVO</translate></span>
63   - <span ng-show="uploaderLogoTarjaAssinaturaInterna.queue.length > 0">{{uploaderLogoTarjaAssinaturaInterna.queue[0].file.name}}</span>
64   - </div>
65   - </div>
66   - <input id="uploadLogoTarjaAssinaturaInterna" type="file" nv-file-select="" uploader="uploaderLogoTarjaAssinaturaInterna" ng-show="false" />
67   - </div><!-- .form-group -->
68   - </div>
69   - </div>
70   - <div class="row">
71   - <div class="col-sm-12" ng-show="tarjaAssinatura.assinaturaInterna.anexoImagem.anexo">
72   - <img ng-src="data:image/JPEG;base64,{{tarjaAssinatura.assinaturaInterna.anexoImagem.anexo}}" class="img-thumbnail" style="max-width: 300px; height: auto;">
73   - </div>
74   - </div>
75   - <div class="row">
76   - <div class="col-md-12">
77   - <div class="form-group">
78   - <label class="control-label block" ng-class="{'has-error': !tarjaAssinatura.assinaturaInterna.conteudo && tarjaAssinaturaForm.$submitted}">
79   - <translate>ECM.LABEL.CONTEUDO_HTML</translate> <span class="red">*</span>
80   - <i ng-show="!tarjaAssinatura.assinaturaInterna.conteudo && tarjaAssinaturaForm.$submitted" class='fa fa-warning red'
81   - tooltip="{{$translate.instant('ECM.LABEL.CONTEUDO_HTML') + ' ' +$translate.instant('LABEL.CAMPO_OBRIGATORIO')}}"
82   - tooltip-placement='top'></i>
83   - </label>
84   - <div id="tarjaAssinatura.assinaturaInterna.conteudo" ckeditor="options" ng-if='edit' ready="onReady()" ng-model="tarjaAssinatura.assinaturaInterna.conteudo" ></div>
85   - <iframe id="visualizacaoConteudoTarjaAssinatura" srcdoc="{{tarjaAssinatura.assinaturaInterna.conteudo}}" allowfullscreen class="iframe-report" ng-show="!edit" style="min-height: 100px !important;"></iframe>
86   - </div>
87   - </div>
88   - </div>
89   -<!-- </form> -->
90   - </tab>
91   -
92   - <tab>
93   - <tab-heading><translate>ECM.LABEL.ASSINATURA_CERTIFICADO_DIGITAL</translate></tab-heading>
94   - <p><small>( <span class="red">*</span> ) <translate>LABEL.CAMPOS_OBRIGATORIOS</translate></small></p>
95   - <fieldset>
96   - <legend>
97   - <translate>ECM.LABEL.DADOS_TARJA_ASSINATURA_CERTIFICADO_DIGITAL</translate>
98   - </legend>
99   - </fieldset>
100   - <div class="row">
101   - <div class="col-md-6">
102   - <label-input ng-id="tarjaAssinatura.assinaturaCertificado.descricao" ng-label="LABEL.DESCRICAO" ng-type="text"
103   - ng-model="tarjaAssinatura.assinaturaCertificado.descricao" form="tarjaAssinaturaForm" ng-obrigatorio="true"
104   - ng-custom-maxlength="100" ng-type="text" ng-disabled="!edit" />
105   - </div>
106   - <div class="col-md-4">
107   - <label-input ng-id="tarjaAssinatura.assinaturaCertificado.tipoAssinatura" ng-label="ECM.LABEL.TIPO_ASSINATURA" ng-type="text"
108   - ng-disabled="true" ng-model="tarjaAssinatura.assinaturaCertificado.tipoAssinatura.descricao" form="tarjaAssinaturaForm"
109   - ng-obrigatorio="false" ng-type="text" />
110   - </div>
111   - </div>
112   - <div class="row">
113   - <div class="col-sm-12">
114   - <div class="form-group">
115   - <label class="control-label"><translate>ECM.LABEL.LOGO_TARJA_ASSINATURA</translate></label>
116   - <div ng-if="tarjaAssinatura.assinaturaCertificado.anexoImagem.anexo == undefined" nv-file-drop="" uploader="uploaderLogoTarjaAssinaturaCertificado"
117   - onclick="$('#uploadLogoTarjaAssinaturaCertificado').click()">
118   - <div nv-file-over="" uploader="uploaderLogoTarjaAssinaturaCertificado" over-class="another-file-over-class" class="well my-drop-zone">
119   - <span ng-show="uploaderLogoTarjaAssinaturaCertificado.queue.length <= 0"><translate>MSG.ARRASTE_SOLTE_ARQUIVO</translate></span>
120   - <span ng-show="uploaderLogoTarjaAssinaturaCertificado.queue.length > 0">{{uploaderLogoTarjaAssinaturaCertificado.queue[0].file.name}}</span>
121   - </div>
122   - </div>
123   - <input id="uploadLogoTarjaAssinaturaCertificado" type="file" nv-file-select="" uploader="uploaderLogoTarjaAssinaturaCertificado" ng-show="false" />
124   - </div><!-- .form-group -->
125   - </div>
126   - <div class="row">
127   - <div class="col-sm-12" ng-show="tarjaAssinatura.assinaturaCertificado.anexoImagem.anexo">
128   - <img ng-src="data:image/JPEG;base64,{{tarjaAssinatura.assinaturaCertificado.anexoImagem.anexo}}" class="img-thumbnail" style="max-width: 300px; height: auto;">
129   - </div>
130   - </div>
131   - </div>
132   -
133   - <div class="row">
134   - <div class="col-md-12">
135   - <div class="form-group">
136   - <label class="control-label block" ng-class="{'has-error': !tarjaAssinatura.assinaturaCertificado.conteudo && tarjaAssinaturaForm.$submitted}">
137   - <translate>ECM.LABEL.CONTEUDO_HTML</translate> <span class="red">*</span>
138   - <i ng-show="!tarjaAssinatura.assinaturaCertificado.conteudo && tarjaAssinaturaForm.$submitted" class='fa fa-warning red'
139   - tooltip="{{$translate.instant('ECM.LABEL.CONTEUDO_HTML') + ' ' +$translate.instant('LABEL.CAMPO_OBRIGATORIO')}}"
140   - tooltip-placement='top'></i>
141   - </label>
142   - <div id="tarjaAssinatura.assinaturaCertificado.conteudo" ckeditor="options" ng-if='edit' ready="onReady()" ng-model="tarjaAssinatura.assinaturaCertificado.conteudo" ></div>
143   - <iframe id="visualizacaoConteudoTarjaAssinatura" srcdoc="{{tarjaAssinatura.assinaturaCertificado.conteudo}}"allowfullscreen class="iframe-report" ng-show="!edit" style="min-height: 100px !important;"></iframe>
  37 + <fieldset>
  38 + <legend>
  39 + <translate>ECM.LABEL.DADOS_TARJA_ASSINATURA</translate>
  40 + </legend>
  41 + </fieldset>
  42 + <p><small>( <span class="red">*</span> ) <translate>LABEL.CAMPOS_OBRIGATORIOS</translate></small></p>
  43 + <div class="row">
  44 + <div class="col-md-6">
  45 + <label-input ng-id="tarjaAssinatura.descricao" ng-label="LABEL.DESCRICAO" ng-type="text"
  46 + ng-model="tarjaAssinatura.descricao" form="tarjaAssinaturaForm" ng-obrigatorio="true"
  47 + ng-custom-maxlength="100" ng-type="text" ng-disabled="!edit" />
  48 + </div>
  49 + <div class="col-md-4">
  50 + <label-input ng-id="tarjaAssinatura.tipoAssinatura" ng-label="ECM.LABEL.TIPO_ASSINATURA" ng-type="text"
  51 + ng-disabled="true" ng-model="tarjaAssinatura.tipoAssinatura.descricao" form="tarjaAssinaturaForm"
  52 + ng-obrigatorio="false" ng-type="text" />
  53 + </div>
  54 + </div>
  55 + <div class="row">
  56 + <div class="col-sm-12">
  57 + <div class="form-group" ng-disable="!edit">
  58 + <label class="control-label"><translate>ECM.LABEL.LOGO_TARJA_ASSINATURA</translate></label>
  59 + <div ng-if="tarjaAssinatura.anexoImagem.anexo == undefined" nv-file-drop="" uploader="uploaderLogo" ng-click="openFile();">
  60 + <div nv-file-over="" uploader="uploaderLogo" over-class="another-file-over-class" class="well my-drop-zone">
  61 + <span ng-show="uploaderLogo.queue.length <= 0"><translate>MSG.ARRASTE_SOLTE_ARQUIVO</translate></span>
  62 + <span ng-show="uploaderLogo.queue.length > 0">{{uploaderLogo.queue[0].file.name}}</span>
144 63 </div>
145 64 </div>
  65 + <input id="uploadLogoTarjaAssinatura" type="file" nv-file-select="" uploader="uploaderLogo" ng-show="false" />
  66 + </div><!-- .form-group -->
  67 + </div>
  68 + </div>
  69 + <div class="row">
  70 + <div class="col-sm-12" ng-show="tarjaAssinatura.anexoImagem.anexo">
  71 + <img ng-src="data:image/JPEG;base64,{{tarjaAssinatura.anexoImagem.anexo}}" class="img-thumbnail" style="max-width: 300px; height: auto;">
  72 + </div>
  73 + </div>
  74 + </br>
  75 + <div class="row">
  76 + <div class="col-sm-2" ng-show="tarjaAssinatura.anexoImagem.anexo && edit">
  77 + <button class="btn btn-warning" ng-click="removeImagem()">
  78 + <translate>ECM.LABEL.REMOVER_IMAGEM</translate>
  79 + </button>
  80 + </div>
  81 + </div>
  82 + </br>
  83 + <div class="row">
  84 + <div class="col-md-12">
  85 + <div class="form-group">
  86 + <label class="control-label block" ng-class="{'has-error': !tarjaAssinatura.conteudo && tarjaAssinaturaForm.$submitted}">
  87 + <translate>ECM.LABEL.CONTEUDO_HTML</translate> <span class="red">*</span>
  88 + <i ng-show="!tarjaAssinatura.conteudo && tarjaAssinaturaForm.$submitted" class='fa fa-warning red'
  89 + tooltip="{{$translate.instant('ECM.LABEL.CONTEUDO_HTML') + ' ' +$translate.instant('LABEL.CAMPO_OBRIGATORIO')}}"
  90 + tooltip-placement='top'></i>
  91 + </label>
  92 + <div id="tarjaAssinatura.conteudo" ckeditor="options" ng-if='edit' ready="onReady()" ng-model="tarjaAssinatura.conteudo" ></div>
  93 + <iframe id="visualizacaoConteudoTarjaAssinatura" srcdoc="{{tarjaAssinatura.conteudo}}"
  94 + allowfullscreen class="iframe-report" ng-show="!edit" style="min-height: 100px !important;"></iframe>
146 95 </div>
147   - </tab>
148   - </tabset>
  96 + </div>
  97 + </div>
149 98 </form>
150 99 </div><!-- .page-content -->
... ...
cit-ecm-web/src/main/webapp/html/tarjaAssinatura/tarjaAssinaturaList.html
... ... @@ -2,11 +2,11 @@
2 2 <div class="bar-buttons-action fixed">
3 3 <div class="row">
4 4 <div class="col-sm-8 text-left">
5   - <button class="btn btn-clear" ng-click="abrirVisualizar(false);">
  5 + <button class="btn btn-clear" ng-click="editarVisualizarTarjaAssinatura(false);">
6 6 <i class="fa fa-search blue"></i>
7 7 <translate>LABEL.VISUALIZAR</translate>
8 8 </button>
9   - <button class="btn btn-clear" ng-click="abrirVisualizar(true);">
  9 + <button class="btn btn-clear" ng-click="editarVisualizarTarjaAssinatura(true);">
10 10 <i class="fa fa-pencil blue"></i>
11 11 <translate>LABEL.EDITAR</translate>
12 12 </button>
... ... @@ -27,7 +27,6 @@
27 27  
28 28 <breadcrumb ng-workspace="workspace"></breadcrumb>
29 29  
30   - <list-view ng-lista="tarjaAssinaturaList" ng-repository="TarjaAssinaturaRepository" ng-use-custom-remove="false" ng-headers="headers"
31   - ng-filter-criteria="filterCriteria" ng-item-selecionado="tarjaAssinaturaChecked"></list-view>
32   -</div>
33   -<!-- .page-content -->
  30 + <list-view ng-lista="tarjaAssinaturaList" ng-repository="TarjaAssinaturaRepository" ng-use-custom-remove="false"
  31 + ng-headers="headers" ng-filter-criteria="filterCriteria" ng-item-selecionado="tarjaAssinaturaChecked"></list-view>
  32 +</div><!-- .page-content -->
... ...