diff --git a/cit-ecm-api/src/main/java/br/com/centralit/api/dao/TarjaAssinaturaDao.java b/cit-ecm-api/src/main/java/br/com/centralit/api/dao/TarjaAssinaturaDao.java new file mode 100644 index 0000000..afe8979 --- /dev/null +++ b/cit-ecm-api/src/main/java/br/com/centralit/api/dao/TarjaAssinaturaDao.java @@ -0,0 +1,8 @@ +package br.com.centralit.api.dao; + +import br.com.centralit.framework.dao.arquitetura.CitGenericDAO; + + +public interface TarjaAssinaturaDao extends CitGenericDAO { + +} diff --git a/cit-ecm-api/src/main/java/br/com/centralit/api/framework/json/ViewsEcm.java b/cit-ecm-api/src/main/java/br/com/centralit/api/framework/json/ViewsEcm.java index 141a2b4..c9b8a07 100644 --- a/cit-ecm-api/src/main/java/br/com/centralit/api/framework/json/ViewsEcm.java +++ b/cit-ecm-api/src/main/java/br/com/centralit/api/framework/json/ViewsEcm.java @@ -6,105 +6,107 @@ import br.com.centralit.framework.json.Views; *

* *

- * + * *

* Company: Central IT - Governança Corporativa - *

- * + * *

* Title: *

- * + * *

* Description: *

- * + * *

* Iniciativa(s): NUMERO_INICIATIVA *

- * + * *

* Regra(s) de negócio: NUMERO_REGRA_DE_NEGOCIO *

- * + * * @since 22/06/2015 - 15:10:43 - * + * * @version 1.0.0 - * + * * @author lucas.ribeiro - (lucas.ribeiro@centralit.com.br) - * + * */ public class ViewsEcm extends Views { public static class PlanoClassificacaoListView extends Views.GenericView {}; public static class PlanoClassificacaoEditView extends PlanoClassificacaoListView {}; - + public static class PlanoClassificacaoParent extends Views.GenericView {}; - + public static class PlanoClassificacaoFilho extends Views.GenericView{}; - + public static class PlanoClassificacaoAutocompleteRecursive extends Views.GenericView{}; - + public static class PlanoCLassificacaoAutoComplete extends Views.GenericView{}; - + public static class TipoDocumentoList extends Views.GenericView{}; - + public static class TipoDocumentoEdit extends TipoDocumentoList {}; - + public static class HipoteseLegalList extends Views.GenericView{}; - + public static class HipoteseLegalEdit extends HipoteseLegalList {}; - + public static class TipoProcessoList extends Views.GenericView{}; - + public static class TipoProcessoEdit extends TipoProcessoList {}; - + public static class NivelAcessoTipoDocumentoList extends Views.GenericView{}; - + public static class NivelAcessoTipoDocumentoEdit extends NivelAcessoTipoDocumentoList{}; - + public static class ClassificarProcessoDocumentoList extends Views.GenericView{}; - + public static class ClassificarProcessoDocumento extends ClassificarProcessoDocumentoList{}; - + public static class NivelAcessoTipoProcessoList extends Views.GenericView{}; - + public static class NivelAcessoTipoProcessoEdit extends NivelAcessoTipoProcessoList{}; - + public static class InteressadoProcessoList extends Views.GenericView{}; - + public static class InteressadoProcessoEdit extends InteressadoProcessoList{}; - + public static class HistoricoProcessoView extends Views.GenericView{}; - + public static class CancelamentoDocumentoView extends Views.GenericView{}; - + public static class TemplatePadraoListView extends Views.GenericView{}; - + public static class TemplatePadraoEditView extends ViewsEcm.TemplatePadraoListView{}; - + public static class CabecalhoListView extends Views.GenericView{}; - + public static class CabecalhoEditView extends ViewsEcm.CabecalhoListView{}; - + public static class CabecalhoAutoCompleteView extends Views.GenericView{}; - + public static class RodapeListView extends Views.GenericView{}; - + public static class RodapeEditView extends ViewsEcm.RodapeListView{}; - + public static class RodapeAutoCompleteView extends Views.GenericView{}; - + public static class TipoDocumentoPlanoClassificacaoAutoCompleteView extends Views.GenericView{}; public static class ClassificacaoDocumentoGedView extends Views.GenericView{}; public static class HistoricoAtribuicaoProcessoView extends Views.GenericView{}; - + public static class TipoSuporteDocumentoListView extends Views.GenericView{}; - + public static class TipoSuporteDocumentoEdit extends TipoSuporteDocumentoListView{}; - - + + public static class TarjaAssinaturaListview extends Views.GenericView{}; + + public static class TarjaAssinaturaEditview extends ViewsEcm.TarjaAssinaturaListview{}; } diff --git a/cit-ecm-api/src/main/java/br/com/centralit/api/model/TarjaAssinatura.java b/cit-ecm-api/src/main/java/br/com/centralit/api/model/TarjaAssinatura.java new file mode 100644 index 0000000..d6af645 --- /dev/null +++ b/cit-ecm-api/src/main/java/br/com/centralit/api/model/TarjaAssinatura.java @@ -0,0 +1,97 @@ +package br.com.centralit.api.model; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.FetchType; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.ManyToOne; +import javax.persistence.OneToOne; + +import com.fasterxml.jackson.annotation.JsonView; + +import br.com.centralit.api.framework.json.ViewsEcm; +import br.com.centralit.framework.json.Views; +import br.com.centralit.framework.model.AnexoImagem; +import br.com.centralit.framework.model.Dominio; +import br.com.centralit.framework.model.arquitetura.PersistentObjectAudit; + +@Entity +public class TarjaAssinatura extends PersistentObjectAudit{ + + private static final long serialVersionUID = -7187159662335439914L; + + @Id + @GeneratedValue(strategy = GenerationType.AUTO) + @JsonView({ Views.GenericView.class }) + private Long id; + + @JsonView({ ViewsEcm.TarjaAssinaturaEditview.class }) + @Column (length=100, nullable = false) + private String descricao; + + @ManyToOne(fetch = FetchType.LAZY) + @Column (nullable = false) + @JsonView({ ViewsEcm.TarjaAssinaturaEditview.class }) + private Dominio tipoAssinatura; + + /** Conteúdo em HTML*/ + @JsonView({ ViewsEcm.TarjaAssinaturaEditview.class }) + @Column (length=1000, nullable = false) + private String conteudo; + + @OneToOne + @JsonView({ ViewsEcm.TarjaAssinaturaEditview.class }) + private AnexoImagem anexoImagem; + + public Long getId() { + + return id; + } + + public void setId(Long id) { + + this.id = id; + } + + public String getDescricao() { + + return descricao; + } + + public void setDescricao(String descricao) { + + this.descricao = descricao; + } + + public Dominio getTipoAssinatura() { + + return tipoAssinatura; + } + + public void setTipoAssinatura(Dominio tipoAssinatura) { + + this.tipoAssinatura = tipoAssinatura; + } + + public String getConteudo() { + + return conteudo; + } + + public void setConteudo(String conteudo) { + + this.conteudo = conteudo; + } + + public AnexoImagem getAnexoImagem() { + + return anexoImagem; + } + + public void setAnexoImagem(AnexoImagem anexoImagem) { + + this.anexoImagem = anexoImagem; + } +} diff --git a/cit-ecm-api/src/main/java/br/com/centralit/api/service/TarjaAssinaturaService.java b/cit-ecm-api/src/main/java/br/com/centralit/api/service/TarjaAssinaturaService.java new file mode 100644 index 0000000..1915688 --- /dev/null +++ b/cit-ecm-api/src/main/java/br/com/centralit/api/service/TarjaAssinaturaService.java @@ -0,0 +1,34 @@ +package br.com.centralit.api.service; + +import org.springframework.web.multipart.MultipartFile; + +import br.com.centralit.api.model.TarjaAssinatura; +import br.com.centralit.framework.service.arquitetura.GenericService; + + +/** + *

+ * + *

Company: Central IT - Governança Corporativa -

+ * + *

Description:

+ * + * @since 13 de abr de 2016 - 13:40:36 + * @version 1.0.0 + * @author ciro.junior (ciro.junior@centralit.com.br) + * + */ +public interface TarjaAssinaturaService extends GenericService { + + /** + * + * Método responsável por fazer o upload da imagem do logotipo de uma tarja de assinatura. + * + * @author ciro.junior (ciro.junior@centralit.com.br) + * + * @param file + * @param idOrganizacao + * @param idConfiguracao + */ + void uploadAnexoImagemTarja(MultipartFile file, Long idOrganizacao, Long idConfiguracao); +} diff --git a/cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/InicializarEcmServiceImpl.java b/cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/InicializarEcmServiceImpl.java index e54e6d4..8dc4fe7 100644 --- a/cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/InicializarEcmServiceImpl.java +++ b/cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/InicializarEcmServiceImpl.java @@ -21,33 +21,33 @@ import br.com.centralit.framework.model.UtilStartup; *

* *

- * + * *

* Company: Central IT - Governança Corporativa - *

- * + * *

* Title: *

- * + * *

* Description: *

- * + * *

* Iniciativa(s): NUMERO_INICIATIVA *

- * + * *

* Regra(s) de negócio: NUMERO_REGRA_DE_NEGOCIO *

- * + * * @since 22/10/2015 - 08:54:55 - * + * * @version 1.0.0 - * + * * @author rogerio.costa - * + * */ @Service("inicializarEcmService") public class InicializarEcmServiceImpl extends UtilStartup { @@ -74,15 +74,15 @@ public class InicializarEcmServiceImpl extends UtilStartup { *

* Iniciativa(s): NUMERO_INICIATIVA *

- * + * *

* Regra(s) de negócio: NUMERO_REGRA_DE_NEGOCIO *

- * + * * Método responsável por gerar a carga inicial - * + * * @author rogerio.costa - * + * */ public void gerarCarga() { @@ -93,15 +93,15 @@ public class InicializarEcmServiceImpl extends UtilStartup { *

* Iniciativa(s): NUMERO_INICIATIVA *

- * + * *

* Regra(s) de negócio: NUMERO_REGRA_DE_NEGOCIO *

- * + * * Método responsável por - * + * * @author rogerio.costa - * + * * @param modulo */ private void criarPaginasMenus() { @@ -339,6 +339,13 @@ public class InicializarEcmServiceImpl extends UtilStartup { menuSuporteDocumento.setIncludes(this.gerarArquivosMenu(menuSuporteDocumento, this.CIT_ECM_WEB_ANGULAR, "TipoSuporteDocumento", true, true, true)); this.menuService.mergeIfNotExist(menuSuporteDocumento); + // Submenu Tarja de assinatura + Pagina pgTarjaAssinatura = new Pagina("Tarja de Assinatura", "/cit-ecm-web/html/tarjaAssinatura/tarjaAssinatura.html"); + pgTarjaAssinatura = this.paginaService.saveIfNotExist(pgTarjaAssinatura); + + Menu menuTarjaAssinatura = new Menu("Tarja de Assinatura", pgTarjaAssinatura, menuCadastroBasico, 0, 9, null, null, null, null, modulo); + menuTarjaAssinatura.setIncludes(this.gerarArquivosMenu(menuTarjaAssinatura, this.CIT_ECM_WEB_ANGULAR, "Tarja de Assinatura", true, true, true)); + this.menuService.mergeIfNotExist(menuTarjaAssinatura); } } diff --git a/cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/TarjaAssinaturaServiceImpl.java b/cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/TarjaAssinaturaServiceImpl.java new file mode 100644 index 0000000..01f36ed --- /dev/null +++ b/cit-ecm-api/src/main/java/br/com/centralit/api/service/impl/TarjaAssinaturaServiceImpl.java @@ -0,0 +1,63 @@ +package br.com.centralit.api.service.impl; + +import java.io.IOException; + +import org.apache.log4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Qualifier; +import org.springframework.stereotype.Service; +import org.springframework.validation.Validator; +import org.springframework.web.multipart.MultipartFile; + +import br.com.centralit.api.dao.TarjaAssinaturaDao; +import br.com.centralit.api.model.TarjaAssinatura; +import br.com.centralit.api.service.OrganizacaoService; +import br.com.centralit.api.service.TarjaAssinaturaService; +import br.com.centralit.framework.model.AnexoImagem; +import br.com.centralit.framework.model.Organizacao; +import br.com.centralit.framework.service.arquitetura.GenericServiceImpl; + +@Service("tarjaAssinaturaService") +public class TarjaAssinaturaServiceImpl extends GenericServiceImpl implements TarjaAssinaturaService { + + private static final Logger LOG = Logger.getLogger(TarjaAssinaturaServiceImpl.class); + + @Autowired + private OrganizacaoService organizacaoService; + + private TarjaAssinaturaDao tarjaAssinaturaDao; + + @Autowired + public TarjaAssinaturaServiceImpl (TarjaAssinaturaDao tarjaAssinaturaDao, @Qualifier("tarjaAssinaturaValidator") Validator validator) { + this.dao = tarjaAssinaturaDao; + this.tarjaAssinaturaDao = tarjaAssinaturaDao; + this.validator = validator; + } + + @Override + public TarjaAssinatura merge(TarjaAssinatura tarjaAssinatura) { + this.validarEntidade(tarjaAssinatura, this.validator); + return super.merge(tarjaAssinatura); + } + + /**{@inheritDoc}*/ + @Override + public void uploadAnexoImagemTarja(MultipartFile file, Long idOrganizacao, Long idTarjaAssinatura) { + + AnexoImagem anexoImagem = new AnexoImagem (); + try { + Organizacao organizacao = (Organizacao) this.organizacaoService.find(idOrganizacao); + anexoImagem.setAnexo(file.getBytes()); + anexoImagem.setDescricao(file.getOriginalFilename()); + anexoImagem.setOrganizacao(organizacao); + + TarjaAssinatura tarjaAssinatura = (TarjaAssinatura) this.tarjaAssinaturaDao.getReference(idTarjaAssinatura); + tarjaAssinatura.setAnexoImagem(anexoImagem); + this.merge(tarjaAssinatura); + } catch (IOException ioe) { + LOG.error("N\u00e3o consegui anexar a imagem \u00e0 entidade TarjaAssinatura. Verifique a exce\u00e7\u00e3o para " + + "identificar a causa: ", ioe.getCause()); + } + } + +} diff --git a/cit-ecm-api/src/main/java/br/com/centralit/api/service/validation/TarjaAssinaturaValidator.java b/cit-ecm-api/src/main/java/br/com/centralit/api/service/validation/TarjaAssinaturaValidator.java new file mode 100644 index 0000000..605e647 --- /dev/null +++ b/cit-ecm-api/src/main/java/br/com/centralit/api/service/validation/TarjaAssinaturaValidator.java @@ -0,0 +1,29 @@ +package br.com.centralit.api.service.validation; + +import org.springframework.stereotype.Component; +import org.springframework.validation.Errors; +import org.springframework.validation.ValidationUtils; +import org.springframework.validation.Validator; + +import br.com.centralit.api.model.TarjaAssinatura; +import br.com.centralit.framework.exception.CodigoErro; + +@Component("tarjaAssinaturaValidator") +public class TarjaAssinaturaValidator implements Validator{ + + @Override + public boolean supports(Class clazz) { + + return TarjaAssinatura.class.isAssignableFrom(clazz); + } + + @Override + public void validate(Object target, Errors errors) { + + ValidationUtils.rejectIfEmpty(errors, "descricao", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "LABEL.DESCRICAO"); + ValidationUtils.rejectIfEmpty(errors, "conteudo", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "ECM.LABEL.CONTEUDO_HTML"); + + } + + +} diff --git a/cit-ecm-web/src/main/java/br/com/centralit/controller/TarjaAssinaturaController.java b/cit-ecm-web/src/main/java/br/com/centralit/controller/TarjaAssinaturaController.java new file mode 100644 index 0000000..68813bb --- /dev/null +++ b/cit-ecm-web/src/main/java/br/com/centralit/controller/TarjaAssinaturaController.java @@ -0,0 +1,31 @@ +package br.com.centralit.controller; + +import javax.servlet.http.HttpServletRequest; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.multipart.MultipartFile; + +import br.com.centralit.api.model.TarjaAssinatura; +import br.com.centralit.api.service.TarjaAssinaturaService; +import br.com.centralit.framework.controller.GenericController; + +@RequestMapping("/rest/tarjaAssinatura") +public class TarjaAssinaturaController extends GenericController { + + @Autowired + private TarjaAssinaturaService tarjaAssinaturaService; + + @ResponseBody + @RequestMapping(value = "/uploadFileLogo", method = RequestMethod.POST) + public void uploadFileHandle(@RequestParam(value = "filename", required = false) String name, + @RequestParam("file") MultipartFile file, HttpServletRequest request, + @RequestParam("idOrganizacao") Long idOrganizacao, + @RequestParam("idTarjaAssinatura") String idTarjaAssinatura) { + + this.tarjaAssinaturaService.uploadAnexoImagemTarja(file, idOrganizacao, Long.parseLong(idTarjaAssinatura)); + } +} diff --git a/cit-ecm-web/src/main/java/br/com/centralit/listener/StartupListenerEcm.java b/cit-ecm-web/src/main/java/br/com/centralit/listener/StartupListenerEcm.java index 0bbbd98..738f70a 100644 --- a/cit-ecm-web/src/main/java/br/com/centralit/listener/StartupListenerEcm.java +++ b/cit-ecm-web/src/main/java/br/com/centralit/listener/StartupListenerEcm.java @@ -76,15 +76,15 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen *

* Iniciativa(s): NUMERO_INICIATIVA *

- * + * *

* Regra(s) de negócio: NUMERO_REGRA_DE_NEGOCIO *

- * + * * Método responsável por criar as regras de acesso - * + * * @author rogerio.costa - * + * */ private void criarRegraDeAcesso() { @@ -107,9 +107,9 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen /** * Método responsável por criar domínios específicos ECM - * + * * @author halan.lima - * + * */ protected void popularAcoesAlteracaoProcesso() { @@ -153,15 +153,15 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen *

* Iniciativa(s): NUMERO_INICIATIVA *

- * + * *

* Regra(s) de negócio: NUMERO_REGRA_DE_NEGOCIO *

- * + * * Método responsável por incluir dominios - * + * * @author rogerio.costa - * + * */ private void criarDominios() { @@ -197,20 +197,23 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen list.add(new Dominio("tipoProtocoloNup", "Automático", "EXTERNO", 1L, Boolean.FALSE)); list.add(new Dominio("tipoProtocoloNup", "Informado", "NUP_NOVO", 2L, Boolean.FALSE)); - + list.add(new Dominio("formaNumeracao", "Sequencial por ano", "SEQUENCIAL_ANO", 1L)); list.add(new Dominio("formaNumeracao", "Sequencial único", "SEQUENCIAL_UNICO", 2L)); + list.add(new Dominio("tipoAssinatura", "Assinatura interna", "ASSINATURA_INTERNA", 1L)); + list.add(new Dominio("tipoAssinatura", "Assinatura por certificado digital", "ASSINATURA_INTERNA", 2L)); + this.dominioService.saveListIfNotExist(list); } /** - * + * * Método responsável por gerar internacionalização do módulo ECM - * + * * @author rogerio.cassimiro - * + * */ private void gerarInternacionalizacao() { @@ -230,15 +233,15 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen *

* Iniciativa(s): NUMERO_INICIATIVA *

- * + * *

* Regra(s) de negócio: NUMERO_REGRA_DE_NEGOCIO *

- * + * * Método responsável por criar labels - * + * * @author Rogério Gomes - * + * * @param dominio * @param modulo * @param internacionalizacaoList @@ -399,23 +402,23 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.NOME_NOVO_SUPORTE ", "Nome do suporte", dominio, modulo)); internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.NOVO_TIPO_SUPORTE ", "Novo tipo suporte de documento", dominio, modulo)); internacionalizacaoList.add(new Internacionalizacao("ECM.LABEL.TIPO_SUPORTE_DOCUMENTO ", "Tipo suporte de documento", dominio, modulo)); - - + + } /** *

* Iniciativa(s): NUMERO_INICIATIVA *

- * + * *

* Regra(s) de negócio: NUMERO_REGRA_DE_NEGOCIO *

- * + * * Método responsável por - * + * * @author Rogério Gomes - * + * * @param dominio * @param modulo * @param internacionalizacaoList @@ -439,15 +442,15 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen *

* Iniciativa(s): NUMERO_INICIATIVA *

- * + * *

* Regra(s) de negócio: NUMERO_REGRA_DE_NEGOCIO *

- * + * * Método responsável por - * + * * @author Rogério Gomes - * + * * @param dominio * @param modulo * @param internacionalizacaoList @@ -501,8 +504,8 @@ public class StartupListenerEcm extends UtilStartup implements ApplicationListen internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.DESEJA_CAPTURAR", "Desejá capturar o processo?", dominio, modulo)); internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.CAPTURADO_SUCESSO", "Processo capturado com sucesso!", dominio, modulo)); internacionalizacaoList.add(new Internacionalizacao("ECM.MSG.LEGENDA_CAMPO_DINAMICO_NUMERO_DOCUMENTO", "Use: @numeroDocumento@ para adicionar o número do documento", dominio, modulo)); - - + + } } diff --git a/cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/TarjaAssinaturaController.js b/cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/TarjaAssinaturaController.js new file mode 100644 index 0000000..8daa458 --- /dev/null +++ b/cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/TarjaAssinaturaController.js @@ -0,0 +1,191 @@ +'use strict'; + +citApp.controller('TarjaAssinaturaController', + ['$scope', + '$filter', + '$translate', + '$timeout', + 'TarjaAssinaturaRepository', + 'DominioRepository', + function TarjaAssinaturaController($scope, + $filter, + $translate, + $timeout, + TarjaAssinaturaRepository, + DominioRepository) { + + $scope.resetForm = function() { + $scope.tarjaAssinatura = { + assinaturaInterna : {}, + assinaturaCertificado : {} + }; + $scope.tipoAssinaturaInterna = {}; + $scope.tipoAssinaturaCertificado = {}; + + $scope.edit = true; + $timeout(function(){ + $scope.tarjaAssinaturaForm.$submitted = false; + $scope.tarjaAssinaturaForm.$setPristine(); + }); + }; + + DominioRepository.buscaDominioByCodigoAndChave('tipoAssinatura', 1).then(function(result) { + $scope.tipoAssinaturaInterna = result.originalElement; + }); + DominioRepository.buscaDominioByCodigoAndChave('tipoAssinatura', 2).then(function(result) { + $scope.tipoAssinaturaCertificado = result.originalElement; + }); + + // Atualiza pagina de pesquisa + $scope.atualizaPaginaPesquisa = function () { + angular.element('#searchTarjaAssinatura').scope().fetchResult(); + }; + + $scope.saveOrUpdate = function(){ + + $scope.tarjaAssinaturaInternaForm.$submitted = true; + $scope.tarjaAssinaturaCertificadoForm.$submitted = true; + + if($scope.tarjaAssinaturaInternaForm.$invalid || $scope.tarjaAssinaturaCertificadoForm.$invalid){ + $scope.showAlert('error', $translate.instant('MSG.MN001'), " ", false); + return; + } + + $scope.setLoadingSalva(true); + + TarjaAssinaturaRepository.save($scope.tarjaAssinatura).then(function(result) { + $scope.tarjaAssinatura = result.originalElement; + $scope.showAlert("success", $translate.instant('MSG.REGISTRO_SALVO')); + form.$submitted = false; + $scope.setLoading(false); + }); + if(uploaderLogoTarja.queue.length > 0){ + uploaderLogoTarja.uploadAll(); + } + }; + + $scope.getAllTarjas = function(){ + $scope.setLoadingGet(true); + TarjaAssinaturaRepository.findAllTarjas().then(function(result) { + angular.forEach(result, function(item){ + $scope.contrato.valorTotalItens += item.valorTotalItem; + }); + $scope.tarjaAssinatura = result.originalElement; + $scope.edit = edit; + $scope.setLoading(false); + }); + }; + + $scope.getAllTarjas(); + +//INSTANCIA DO OBJETO PARA FAZER UPLOAD + var uploaderLogoTarjaAssinaturaInterna = $scope.uploaderLogoTarjaAssinaturaInterna = new FileUploader({ + autoUpload: false, + queueLimit: 1, + url : '/cit-ecm-web/rest/tarjaAssinatura/uploadFileLogo?idOrganizacao=' + $scope.usuarioLogado.organizacao.id + + '&idTarjaAssinatura=' + $scope.tarjaAssinatura.assinaturaInterna.id + }); + + // FILTERS + uploaderLogoTarjaAssinaturaInterna.filters.push({ + name: 'imageFilter', + fn: function(item , options) { + var type = '|' + item.type.slice(item.type.lastIndexOf('/') + 1) + '|'; + return '|jpg|png|jpeg|bmp|gif|'.indexOf(type) !== -1; + } + }); + + // CALLBACKS + uploaderLogoTarjaAssinaturaInterna.onWhenAddingFileFailed = function(item , filter, options) { + uploaderLogoTarjaAssinaturaInterna.clearQueue(); + console.info('onWhenAddingFileFailed', item, filter, options); + }; + uploaderLogoTarjaAssinaturaInterna.onAfterAddingFile = function(fileItem) { + console.info('onAfterAddingFile', fileItem); + }; + uploaderLogoTarjaAssinaturaInterna.onAfterAddingAll = function(addedFileItems) { + console.info('onAfterAddingAll', addedFileItems); + }; + uploaderLogoTarjaAssinaturaInterna.onBeforeUploadItem = function(item) { + console.info('onBeforeUploadItem', item); + }; + uploaderLogoTarjaAssinaturaInterna.onProgressItem = function(fileItem, progress) { + console.info('onProgressItem', fileItem, progress); + }; + uploaderLogoTarjaAssinaturaInterna.onProgressAll = function(progress) { + console.info('onProgressAll', progress); + }; + uploaderLogoTarjaAssinaturaInterna.onSuccessItem = function(fileItem, response, status, headers) { + console.info('onSuccessItem', fileItem, response, status, headers); + }; + uploaderLogoTarjaAssinaturaInterna.onErrorItem = function(fileItem, response, status, headers) { + console.info('onErrorItem', fileItem, response, status, headers); + }; + uploaderLogoTarjaAssinaturaInterna.onCancelItem = function(fileItem, response, status, headers) { + console.info('onCancelItem', fileItem, response, status, headers); + }; + uploaderLogoTarjaAssinaturaInterna.onCompleteItem = function(fileItem, response, status, headers) { + console.info('onCompleteItem', fileItem, response, status, headers); + }; + uploaderLogoTarjaAssinaturaInterna.onCompleteAll = function() { + uploaderLogoTarjaAssinaturaInterna.clearQueue(); + $scope.getTarjaAssinatura($scope.tarjaAssinatura); + console.info('onCompleteAll'); + }; + +//INSTANCIA DO OBJETO PARA FAZER UPLOAD + var uploaderLogoTarjaAssinaturaCertificado = $scope.uploaderLogoTarjaAssinaturaCertificado = new FileUploader({ + autoUpload: false, + queueLimit: 1, + url : '/cit-ecm-web/rest/tarjaAssinatura/uploadFileLogo?idOrganizacao=' + $scope.usuarioLogado.organizacao.id + + '&idTarjaAssinatura=' + $scope.tarjaAssinatura.assinaturaCertificado.id + }); + + // FILTERS + uploaderLogoTarjaAssinaturaCertificado.filters.push({ + name: 'imageFilter', + fn: function(item , options) { + var type = '|' + item.type.slice(item.type.lastIndexOf('/') + 1) + '|'; + return '|jpg|png|jpeg|bmp|gif|'.indexOf(type) !== -1; + } + }); + + // CALLBACKS + uploaderLogoTarjaAssinaturaCertificado.onWhenAddingFileFailed = function(item , filter, options) { + uploaderLogoTarjaAssinaturaCertificado.clearQueue(); + console.info('onWhenAddingFileFailed', item, filter, options); + }; + uploaderLogoTarjaAssinaturaCertificado.onAfterAddingFile = function(fileItem) { + console.info('onAfterAddingFile', fileItem); + }; + uploaderLogoTarjaAssinaturaCertificado.onAfterAddingAll = function(addedFileItems) { + console.info('onAfterAddingAll', addedFileItems); + }; + uploaderLogoTarjaAssinaturaCertificado.onBeforeUploadItem = function(item) { + console.info('onBeforeUploadItem', item); + }; + uploaderLogoTarjaAssinaturaCertificado.onProgressItem = function(fileItem, progress) { + console.info('onProgressItem', fileItem, progress); + }; + uploaderLogoTarjaAssinaturaCertificado.onProgressAll = function(progress) { + console.info('onProgressAll', progress); + }; + uploaderLogoTarjaAssinaturaCertificado.onSuccessItem = function(fileItem, response, status, headers) { + console.info('onSuccessItem', fileItem, response, status, headers); + }; + uploaderLogoTarjaAssinaturaCertificado.onErrorItem = function(fileItem, response, status, headers) { + console.info('onErrorItem', fileItem, response, status, headers); + }; + uploaderLogoTarjaAssinaturaCertificado.onCancelItem = function(fileItem, response, status, headers) { + console.info('onCancelItem', fileItem, response, status, headers); + }; + uploaderLogoTarjaAssinaturaCertificado.onCompleteItem = function(fileItem, response, status, headers) { + console.info('onCompleteItem', fileItem, response, status, headers); + }; + uploaderLogoTarjaAssinaturaCertificado.onCompleteAll = function() { + uploaderLogoTarjaAssinaturaCertificado.clearQueue(); + $scope.getTarjaAssinatura($scope.tarjaAssinatura); + console.info('onCompleteAll'); + }; + +}]); diff --git a/cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/TarjaAssinaturaListController.js b/cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/TarjaAssinaturaListController.js new file mode 100644 index 0000000..43fcb68 --- /dev/null +++ b/cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/TarjaAssinaturaListController.js @@ -0,0 +1,47 @@ +'use strict'; + +citApp.controller('TarjaAssinaturaListController', + ['$scope', + '$translate', + '$timeout', + 'TarjaAssinaturaRepository', + 'DominioRepository', + function ListController($scope, + $translate, + $timeout, + TarjaAssinaturaRepository, + DominioRepository) { + $scope.$showAdvancedFilters = false; + + $scope.resetForm = function() { + angular.element("#editTarjaAssinatura").scope().resetForm(); + }; + + $scope.headers = [ {title : $translate.instant('LABEL.TIPO_ASSINATURA'), value : 'dominio.tipoAssinatura' }, + {title : $translate.instant('LABEL.DESCRICAO'), value : 'descricao' }]; + + $scope.filterCriteria = { + start : 1, + dir : 'asc', + sort : 'id', + limit : 10, + fields: ['id', 'tipoAssinatura.descricao', 'descricao'], + filters : [ {type : 'string', field : 'tipoAssinatura.descricao', listaDominio : [] }, + {type : 'string', field : 'descricao' }] + }; + + DominioRepository.findAllDominio('tipoAssinatura').then(function(result) { + $scope.filterCriteria.filters[0].listaDominio = result; + }); + + $scope.abrirVisualizar = function(edit){ + var tarjaAssinatura = $scope.tarjaAssinaturaChecked; + + if(!tarjaAssinatura) { + $scope.showAlert('warning', !edit ? $translate.instant('MSG.SELECIONE_UM_ITEM_PARA_VISUALIZACAO') : $translate.instant('MSG.SELECIONE_UM_ITEM_PARA_EDICAO')); + return; + } + angular.element('#editTarjaAssinatura').scope().getTarjaAssinatura(tarjaAssinatura, edit); + $scope.$showPageEditWorkspace($scope.workspace); + }; +}]); diff --git a/cit-ecm-web/src/main/webapp/assets/js/angular/custom/repository/TarjaAssinaturaRepository.js b/cit-ecm-web/src/main/webapp/assets/js/angular/custom/repository/TarjaAssinaturaRepository.js new file mode 100644 index 0000000..83e033d --- /dev/null +++ b/cit-ecm-web/src/main/webapp/assets/js/angular/custom/repository/TarjaAssinaturaRepository.js @@ -0,0 +1,16 @@ +'use strict'; + +citApp.factory('TarjaAssinaturaRepository', ['RestangularEcm', 'AbstractRepository', function (restangularEcm, AbstractRepository) { + + function TarjaAssinaturaRepository() { + AbstractRepository.call(this, restangularEcm, 'rest/tarjaAssinatura'); + + this.findAllTarjas = function() { + return restangular.one(this.route).getList("findAllTarjas").then(); + }; + } + + AbstractRepository.extend(TarjaAssinaturaRepository); + + return new TarjaAssinaturaRepository(); +}]); diff --git a/cit-ecm-web/src/main/webapp/html/tarjaAssinatura/tarjaAssinatura.html b/cit-ecm-web/src/main/webapp/html/tarjaAssinatura/tarjaAssinatura.html new file mode 100644 index 0000000..732fcaf --- /dev/null +++ b/cit-ecm-web/src/main/webapp/html/tarjaAssinatura/tarjaAssinatura.html @@ -0,0 +1,2 @@ + +
diff --git a/cit-ecm-web/src/main/webapp/html/tarjaAssinatura/tarjaAssinaturaEdit.html b/cit-ecm-web/src/main/webapp/html/tarjaAssinatura/tarjaAssinaturaEdit.html new file mode 100644 index 0000000..3b428ad --- /dev/null +++ b/cit-ecm-web/src/main/webapp/html/tarjaAssinatura/tarjaAssinaturaEdit.html @@ -0,0 +1,90 @@ +
+
+
+
+ + + + +
+ + +
+ + +
+
+
+ +

ECM.LABEL.TARJAS_ASSINATURA

+
+ + +
+

( * ) LABEL.CAMPOS_OBRIGATORIOS

+
+ + ECM.LABEL.DADOS_TARJA_ASSINATURA + +
+
+
+ +
+
+ +
+
+
+
+
+ +
+ +
+
+
+
+
+
+ +
+
+ MSG.ARRASTE_SOLTE_ARQUIVO + {{uploaderLogoTarja.queue[0].file.name}} +
+
+ +
+
+
+
+
+ +
+ +
+
+
+
+ diff --git a/cit-ecm-web/src/main/webapp/html/tarjaAssinatura/tarjaAssinaturaList.html b/cit-ecm-web/src/main/webapp/html/tarjaAssinatura/tarjaAssinaturaList.html new file mode 100644 index 0000000..b01569b --- /dev/null +++ b/cit-ecm-web/src/main/webapp/html/tarjaAssinatura/tarjaAssinaturaList.html @@ -0,0 +1,33 @@ +
+
+
+
+ + + + +
+ + +
+ + +
+ +
+ +
+ + + + + +
+ -- libgit2 0.21.2