Rev 1547 |
Blame |
Compare with Previous |
Last modification |
View Log
| RSS feed
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping
PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="pt.estgp.estgweb.domain.EventClass" table="event_class" abstract="true">
<meta attribute="extends">pt.estgp.estgweb.domain.DomainObject</meta>
<meta attribute="scope-class">public abstract</meta>
<id name="id" type="long">
<generator class="native"/>
</id>
<discriminator column="discrimitator"/>
<timestamp source="db" name="updateDate" unsaved-value="null"/>
<property name="saveDate" type="timestamp"/>
<property name="name" type="string"/>
<property name="description" type="string">
<column name="description" sql-type="TEXT"/>
</property>
<property name="eventosGenericos" type="boolean"/>
<property name="eventosFormacoes" type="boolean"/>
<property name="managersRole" type="string"/>
<set name="events" cascade="none" lazy="true">
<key column="eventClass"/>
<one-to-many class="pt.estgp.estgweb.domain.EventGeneric"/>
</set>
<subclass name="pt.estgp.estgweb.domain.EventClassImpl" discriminator-value="EventClassImpl"/>
</class>
<class name="pt.estgp.estgweb.domain.EventGeneric" table="event_generic" abstract="true">
<meta attribute="extends">pt.estgp.estgweb.domain.OwnedDomainObject</meta>
<meta attribute="scope-class">public abstract</meta>
<id name="id" type="long">
<generator class="native"/>
</id>
<discriminator column="discrimitator"/>
<timestamp source="db" name="updateDate" unsaved-value="null"/>
<property name="saveDate" type="timestamp"/>
<!--Controlo-->
<!--OK--><property name="ativo" type="boolean"/><!--Flag Geral de Finalizacao, Tem de desativar das API's-->
<!--OK--><property name="dataAberturaFormulario" type="timestamp"/>
<!--OK--><property name="dataFechoFormulario" type="timestamp"/> <!-- Tem de desativar das API's -->
<!--OK--><property name="dataPublicacao" type="timestamp"/><!--Usado para API's-->
<!--OK--><property name="registeredUsersOnly" type="boolean"/>
<!--OK--><property name="category" type="string"/>
<!--OK--><property name="subCategory" type="string"/>
<!--Metadata-->
<!--OK--><property name="title" type="string"/>
<!--OK--><property name="description" type="string">
<column name="description" sql-type="TEXT"/>
</property>
<!--OK--><property name="observacoes" type="string">
<column name="observacoes" sql-type="TEXT"/>
</property>
<!--OK--><property name="locais" type="string">
<column name="locais" sql-type="TEXT"/>
</property>
<!--OK--><property name="dataInicio" type="timestamp"/>
<!--OK--><property name="flyerRepositoryStream" type="string"/>
<!--OK--><property name="preInformation" type="string">
<column name="preInformation" sql-type="TEXT"/>
</property>
<!--OK--><property name="afterRegisterInformation" type="string">
<column name="afterRegisterInformation" sql-type="TEXT"/>
</property>
<!-- Campos Ativos no Registo -->
<!--Contactos Info Pessoal-->
<!--<property name="nome" type="boolean"/> já assumido para registo-->
<!--<property name="mail" type="boolean"/> já assumido para registo-->
<!--OK--><property name="sexo" type="boolean"/>
<!--OK--><property name="morada" type="boolean"/> <!--Implica ADDRESS, ZIP, CIDADE-->
<!--OK--><property name="pais" type="boolean"/>
<!--OK--><property name="dataNascimento" type="boolean"/>
<!--OK--><property name="nif" type="boolean"/>
<!--OK--><property name="bi" type="boolean"/>
<!--OK--><property name="telefone1" type="boolean"/>
<!--OK--><property name="telefone2" type="boolean"/>
<!--OK--><property name="empresa" type="boolean"/>
<!--OK--><property name="escolaridade" type="boolean"/>
<!--OK--><property name="profissao" type="boolean"/>
<!--Pagamentos
<property name="custoInscricao" type="boolean"/>
<property name="custoAtas" type="boolean"/>
-->
<many-to-one name="owner" class="pt.estgp.estgweb.domain.User" lazy="proxy" outer-join="false"/>
<many-to-one name="eventClass" class="pt.estgp.estgweb.domain.EventClass" lazy="proxy" outer-join="false"/>
<set name="eventRecords" cascade="none" lazy="true">
<key column="event"/>
<one-to-many class="pt.estgp.estgweb.domain.EventGenericRecord"/>
</set>
<subclass name="pt.estgp.estgweb.domain.EventGenericImpl" discriminator-value="EventGenericImpl">
<subclass name="pt.estgp.estgweb.domain.EventFormacoes">
<meta attribute="extends">pt.estgp.estgweb.domain.EventGenericImpl</meta>
<meta attribute="scope-class">public abstract</meta>
<property name="referencia" type="string"/><!--(Ex: AF201516#02)-->
<property name="unidadeOrganica" type="string"/><!--(ESTG, ESEP, ...)-->
<property name="localDeRealizacao" type="string"/><!--(Sala, Laboratório, ...)-->
<property name="dominio" type="string"/> <!--(Gestão, Informática, Marketing, ...)-->
<property name="outroDominio" type="string"/>
<property name="destinatarios" type="string"/>
<property name="conteudos" type="string">
<column name="conteudos" sql-type="MEDIUMTEXT"/>
</property>
<property name="status" type="string"/><!--(Em construção, Ativa, Concluída)-->
<property name="numeroVagas" type="integer"/>
<property name="duracaoHoras" type="integer"/>
<property name="ects" type="integer"/>
<!-- o mesmo da dataInicio <property name="dataRealizacao" type="integer"/>-->
<property name="diasDuracao" type="integer"/>
<property name="custoFormacao" type="double"/> <!--(moeda Euros)-->
<property name="precoFormando" type="double"/> <!--(moeda Euros)-->
<property name="percentagemMinimaLucro" type="double"/> <!--(%)-->
<property name="formadores" type="string"/>
<subclass name="pt.estgp.estgweb.domain.EventFormacoesImpl" discriminator-value="EventFormacoesImpl"/>
</subclass>
</subclass>
</class>
<class name="pt.estgp.estgweb.domain.EventUser" table="event_user" abstract="true">
<meta attribute="extends">pt.estgp.estgweb.domain.DomainObject</meta>
<meta attribute="scope-class">public abstract</meta>
<id name="id" type="long">
<generator class="native"/>
</id>
<discriminator column="discrimitator"/>
<timestamp source="db" name="updateDate" unsaved-value="null"/>
<property name="saveDate" type="timestamp"/>
<property name="email" type="string"/>
<property name="password" type="string"/> <!-- MD5 um user afeta a password sempre que se inscreve mas o email é a ponte para todos os seus registos -->
<!-- Campos de Registo OS MESMOS QUE EM EventGenericRecord-->
<!--Contactos Info Pessoal-->
<!--Obrigatorios-->
<property name="mail" type="string"/>
<property name="nome" type="string"/>
<!--opcionais-->
<property name="sexo" type="string"/>
<property name="morada" type="string"/>
<property name="zip" type="string"/>
<property name="cidade" type="string"/>
<property name="dataNascimento" type="string"/>
<property name="nif" type="string"/>
<property name="bi" type="string"/>
<property name="telefone1" type="string"/>
<property name="telefone2" type="string"/>
<property name="empresa" type="string"/>
<property name="pais" type="string"/>
<property name="escolaridade" type="string"/> <!--12 ano, Bacharelato, Licenciatura, Mestrado, Doutoramento, Outro-->
<property name="profissao" type="string"/>
<!--#########################################-->
<many-to-one name="registeredUserAssociated" class="pt.estgp.estgweb.domain.User" lazy="proxy" outer-join="false"/>
<subclass name="pt.estgp.estgweb.domain.EventUserImpl" discriminator-value="EventUserImpl"/>
</class>
<class name="pt.estgp.estgweb.domain.EventGenericRecord" table="event_generic_record" abstract="true">
<meta attribute="extends">pt.estgp.estgweb.domain.OwnedDomainObject</meta>
<meta attribute="scope-class">public abstract</meta>
<id name="id" type="long">
<generator class="native"/>
</id>
<discriminator column="discrimitator"/>
<timestamp source="db" name="updateDate" unsaved-value="null"/> <!-- devem apagados registos sem confirmacao de email após 48 horas -->
<property name="saveDate" type="timestamp"/>
<property name="password" type="string"/> <!-- MD5 um user afeta a password sempre que se inscreve mas o email é a ponte para todos os seus registos -->
<!-- Campos de Registo -->
<!--Contactos Info Pessoal-->
<!--Obrigatorios-->
<property name="mail" type="string"/>
<property name="nome" type="string"/>
<!--opcionais-->
<property name="sexo" type="string"/>
<property name="morada" type="string"/>
<property name="zip" type="string"/>
<property name="cidade" type="string"/>
<property name="dataNascimento" type="string"/>
<property name="nif" type="string"/>
<property name="bi" type="string"/>
<property name="telefone1" type="string"/>
<property name="telefone2" type="string"/>
<property name="empresa" type="string"/>
<property name="pais" type="string"/>
<property name="escolaridade" type="string"/> <!--12 ano, Bacharelato, Licenciatura, Mestrado, Doutoramento, Outro-->
<property name="profissao" type="string"/>
<!--Controlo-->
<property name="chaveConfirmacao" type="string"/><!--Chave enviada ao user no email-->
<property name="emailConfirmado" type="boolean"/><!--fica verdadeiro apenas apos verificacao do email-->
<property name="confirmado" type="boolean"/>
<property name="observacoes" type="string">
<column name="observacoes" sql-type="TEXT"/>
</property>
<property name="pago" type="boolean"/>
<property name="transacaoInfo" type="string">
<column name="transacaoInfo" sql-type="TEXT"/>
</property>
<many-to-one name="event" class="pt.estgp.estgweb.domain.EventGeneric" lazy="proxy" outer-join="false"/>
<many-to-one name="eventUserAssociated" class="pt.estgp.estgweb.domain.EventUser" lazy="proxy" outer-join="false"/>
<subclass name="pt.estgp.estgweb.domain.EventGenericRecordImpl" discriminator-value="EventGenericRecordImpl"/>
</class>
</hibernate-mapping>