entity UserExtra { cpf String required, telefone String required, tokenAdiministrativo String } entity Email { email String, defalt Boolean } entity Documento { pathDocumento String, nomeDocumento String required, tipoDocumento String, dataUpload LocalDate, dataAlteracao LocalDate, isSign Boolean } entity Assinatura { pathAssinatura String, dataHoraAssinatura LocalDate } entity CertificadoDigital{ nomeRazaoSocial String, email String, responsavel String, dataEmissao LocalDate, dataValidade LocalDate, dataNascimento String, version Integer, serialNumber String, sigAlgName String, sigAlgOID String, cNPJ String, cPF String, rG String, emissor String, tipo String, entidadeCertificadora String, subjectDN String, keyStoreAlias String, expedidoPor String, usosChave String, bigIntegerPubKey String, alias String } entity DocumentosEnviados{ dataHoraEnvio LocalDate required, dataHoraRecebido LocalDate, dataHoraVisualizado LocalDate, assunto String required, mensagem String, requerAssinatura Boolean required } relationship OneToMany{ Documento{assinatura} to Assinatura } relationship ManyToOne{ Documento{user(id)} to User, Email{user(id)} to User, CertificadoDigital{user(id)} to User, DocumentosEnviados{user(id)} to User } relationship OneToOne{ DocumentosEnviados{enviadoPara} to User, DocumentosEnviados{enviadoPor} to User, DocumentosEnviados{documento} to Documento, UserExtra {user} to User } dto all with mapstruct service all with serviceClass paginate all with pager