DB migrations and other utility classes for sci-types-department
parent
5b91703cc9
commit
82ef06c897
|
|
@ -2,6 +2,7 @@
|
|||
.settings
|
||||
node
|
||||
node_modules
|
||||
/sci-types-department/target/
|
||||
/sci-types-project/target/
|
||||
/scientificcms/target/
|
||||
/sci-publications/nbproject/
|
||||
|
|
|
|||
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"name": "sci-types-department",
|
||||
"lockfileVersion": 2,
|
||||
"requires": true,
|
||||
"packages": {}
|
||||
}
|
||||
|
|
@ -166,7 +166,7 @@
|
|||
</configuration>
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
<!-- <plugin>
|
||||
<groupId>com.github.eirslett</groupId>
|
||||
<artifactId>frontend-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
|
|
@ -188,7 +188,7 @@
|
|||
<goal>npm</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<arguments> --userconfig ../libreccm.npmrc install</arguments>
|
||||
<arguments> - -userconfig ../libreccm.npmrc install</arguments>
|
||||
</configuration>
|
||||
</execution>
|
||||
<execution>
|
||||
|
|
@ -201,7 +201,7 @@
|
|||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugin>-->
|
||||
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
|
|
|
|||
|
|
@ -89,7 +89,7 @@ public class Membership implements Serializable {
|
|||
return department;
|
||||
}
|
||||
|
||||
protected void setProject(final SciDepartment department) {
|
||||
protected void setDepartment(final SciDepartment department) {
|
||||
this.department = department;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -110,12 +110,12 @@ public class SciDepartment extends ContentItem implements Serializable {
|
|||
@JsonIgnore
|
||||
private List<Contact> contacts;
|
||||
|
||||
@OneToMany(cascade = CascadeType.ALL, mappedBy = "project")
|
||||
@OneToMany(cascade = CascadeType.ALL, mappedBy = "department")
|
||||
@OrderBy("member ASC")
|
||||
@JsonIgnore
|
||||
private List<Membership> members;
|
||||
|
||||
@OneToMany(cascade = CascadeType.ALL, mappedBy = "project")
|
||||
@OneToMany(cascade = CascadeType.ALL, mappedBy = "department")
|
||||
@OrderBy("project ASC")
|
||||
@JsonIgnore
|
||||
private List<DepartmentProject> projects;
|
||||
|
|
|
|||
|
|
@ -0,0 +1,52 @@
|
|||
package org.scientificcms.contenttypes.scidepartment;
|
||||
|
||||
import org.libreccm.cdi.utils.CdiUtil;
|
||||
import org.libreccm.configuration.Configuration;
|
||||
import org.libreccm.configuration.ConfigurationManager;
|
||||
import org.libreccm.configuration.Setting;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author <a href="mailto:jens.pelzetter@googlemail.com">Jens Pelzetter</a>
|
||||
*/
|
||||
@Configuration
|
||||
public class SciDepartmentConfig {
|
||||
|
||||
@Setting
|
||||
private String contactTypesBundleName
|
||||
= "org.scientificcms.contenttypes.scidepartment.DefaultContactTypes";
|
||||
|
||||
@Setting
|
||||
private String memberRolesBundleName
|
||||
= "org.scientificcms.contenttypes.scidepartment.MemberRoles";
|
||||
|
||||
public static SciDepartmentConfig getConfig() {
|
||||
final ConfigurationManager confManager = CdiUtil
|
||||
.createCdiUtil()
|
||||
.findBean(ConfigurationManager.class);
|
||||
return confManager.findConfiguration(SciDepartmentConfig.class);
|
||||
}
|
||||
|
||||
public SciDepartmentConfig() {
|
||||
super();
|
||||
}
|
||||
|
||||
public String getContactTypesBundleName() {
|
||||
return contactTypesBundleName;
|
||||
}
|
||||
|
||||
public void setContactTypesBundleName(final String contactTypesBundleName) {
|
||||
this.contactTypesBundleName = contactTypesBundleName;
|
||||
}
|
||||
|
||||
public String getMemberRolesBundleName() {
|
||||
return memberRolesBundleName;
|
||||
}
|
||||
|
||||
public void setMemberRolesBundleName(final String memberRolesBundleName) {
|
||||
this.memberRolesBundleName = memberRolesBundleName;
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
package org.scientificcms.contenttypes.scidepartment;
|
||||
|
||||
import org.libreccm.imexport.Processes;
|
||||
import org.librecms.contentsection.AbstractContentItemImExporter;
|
||||
|
||||
import javax.enterprise.context.RequestScoped;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author <a href="mailto:jens.pelzetter@googlemail.com">Jens Pelzetter</a>
|
||||
*/
|
||||
@RequestScoped
|
||||
@Processes(SciDepartment.class)
|
||||
public class SciDepartmentImExporter
|
||||
extends AbstractContentItemImExporter<SciDepartment>{
|
||||
|
||||
@Override
|
||||
public Class<SciDepartment> getEntityClass() {
|
||||
return SciDepartment.class;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,293 @@
|
|||
package org.scientificcms.contenttypes.scidepartment;
|
||||
|
||||
import org.libreccm.l10n.LocalizedString;
|
||||
import org.librecms.assets.ContactableEntity;
|
||||
import org.librecms.assets.Person;
|
||||
import org.librecms.contentsection.ContentItemRepository;
|
||||
import org.scientificcms.contenttypes.sciproject.SciProject;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Objects;
|
||||
import java.util.Optional;
|
||||
|
||||
import javax.enterprise.context.RequestScoped;
|
||||
import javax.inject.Inject;
|
||||
import javax.transaction.Transactional;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author <a href="mailto:jens.pelzetter@googlemail.com">Jens Pelzetter</a>
|
||||
*/
|
||||
@RequestScoped
|
||||
public class SciDepartmentManager implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Inject
|
||||
private ContactRepository contactRepo;
|
||||
|
||||
@Inject
|
||||
private ContentItemRepository itemRepo;
|
||||
|
||||
@Inject
|
||||
private DepartmentProjectRepository departmentProjectRepo;
|
||||
|
||||
@Inject
|
||||
private DepartmentTextRepository departmentTextRepo;
|
||||
|
||||
@Inject
|
||||
private MembershipRepository membershipRepo;
|
||||
|
||||
@Transactional(Transactional.TxType.REQUIRED)
|
||||
public void addText(
|
||||
final LocalizedString text,
|
||||
final SciDepartment toDepartment,
|
||||
final String withKey
|
||||
) {
|
||||
Objects.requireNonNull(
|
||||
toDepartment,
|
||||
"Can't add a text to department null"
|
||||
);
|
||||
Objects.requireNonNull(text, "Can't add null as text.");
|
||||
Objects.requireNonNull(
|
||||
withKey,
|
||||
"Can't add a text to a department with key null."
|
||||
);
|
||||
if (withKey.isBlank()) {
|
||||
throw new IllegalArgumentException(
|
||||
"Can't add a text to a department using a blank key."
|
||||
);
|
||||
}
|
||||
|
||||
final DepartmentText departmentText = new DepartmentText();
|
||||
departmentText.setDepartment(toDepartment);
|
||||
departmentText.setKey(withKey);
|
||||
departmentText.setOrder(toDepartment.getAdditionalTexts().size());
|
||||
departmentText.setText(text);
|
||||
|
||||
toDepartment.putAdditionalText(withKey, departmentText);
|
||||
departmentTextRepo.save(departmentText);
|
||||
itemRepo.save(toDepartment);
|
||||
}
|
||||
|
||||
@Transactional(Transactional.TxType.REQUIRED)
|
||||
public void removeText(
|
||||
final SciDepartment fromDepartment,
|
||||
final String withKey
|
||||
) {
|
||||
Objects.requireNonNull(
|
||||
fromDepartment,
|
||||
"Can't remove a text from department null."
|
||||
);
|
||||
|
||||
if (fromDepartment.getAdditionalTexts().containsKey(withKey)) {
|
||||
final DepartmentText removed = fromDepartment
|
||||
.getAdditionalTexts()
|
||||
.get(withKey);
|
||||
fromDepartment.removeAdditionalText(withKey);
|
||||
itemRepo.save(fromDepartment);
|
||||
departmentTextRepo.delete(removed);
|
||||
}
|
||||
}
|
||||
|
||||
@Transactional(Transactional.TxType.REQUIRED)
|
||||
public void addContact(
|
||||
final ContactableEntity contactable,
|
||||
final SciDepartment toDepartment,
|
||||
final String withType
|
||||
) {
|
||||
Objects.requireNonNull(
|
||||
contactable,
|
||||
"Can't add null as Contact to a SciDepartment."
|
||||
);
|
||||
Objects.requireNonNull(
|
||||
toDepartment,
|
||||
"Can't add a Contact to a department null."
|
||||
);
|
||||
|
||||
final Contact contact = new Contact();
|
||||
contact.setContactable(contactable);
|
||||
contact.setDepartment(toDepartment);
|
||||
contact.setContactType(withType);
|
||||
contact.setOrder(toDepartment.getContacts().size());
|
||||
|
||||
toDepartment.addContact(contact);
|
||||
contactRepo.save(contact);
|
||||
itemRepo.save(toDepartment);
|
||||
}
|
||||
|
||||
@Transactional(Transactional.TxType.REQUIRED)
|
||||
public void removeContact(
|
||||
final ContactableEntity contactable,
|
||||
final SciDepartment fromDepartment
|
||||
) {
|
||||
Objects.requireNonNull(
|
||||
contactable,
|
||||
"Can't remove null as Contact from a SciDepartment."
|
||||
);
|
||||
Objects.requireNonNull(
|
||||
fromDepartment,
|
||||
"Can't remove a Contact from department null."
|
||||
);
|
||||
|
||||
final Optional<Contact> result = fromDepartment
|
||||
.getContacts()
|
||||
.stream()
|
||||
.filter(
|
||||
contact -> filterContact(contact, contactable, fromDepartment)
|
||||
)
|
||||
.findFirst();
|
||||
|
||||
if (result.isPresent()) {
|
||||
final Contact removed = result.get();
|
||||
fromDepartment.removeContact(removed);
|
||||
itemRepo.save(fromDepartment);
|
||||
contactRepo.delete(removed);
|
||||
}
|
||||
}
|
||||
|
||||
@Transactional(Transactional.TxType.REQUIRED)
|
||||
public void addMember(
|
||||
final Person person,
|
||||
final SciDepartment toDepartment,
|
||||
final String withRole,
|
||||
final MembershipStatus withStatus
|
||||
) {
|
||||
Objects.requireNonNull(
|
||||
person,
|
||||
"Can't add null as a member null to a SciDepartment."
|
||||
);
|
||||
Objects.requireNonNull(
|
||||
toDepartment,
|
||||
"Can't a member to a SciDepartment null."
|
||||
);
|
||||
|
||||
final Membership membership = new Membership();
|
||||
membership.setDepartment(toDepartment);
|
||||
membership.setMember(person);
|
||||
membership.setRole(withRole);
|
||||
membership.setStatus(withStatus);
|
||||
|
||||
toDepartment.addMember(membership);
|
||||
membershipRepo.save(membership);
|
||||
itemRepo.save(toDepartment);
|
||||
}
|
||||
|
||||
@Transactional(Transactional.TxType.REQUIRED)
|
||||
public void removeMember(
|
||||
final Person person,
|
||||
final SciDepartment fromDepartment
|
||||
) {
|
||||
Objects.requireNonNull(
|
||||
person,
|
||||
"Can't remove null as a member from a SciDepartment."
|
||||
);
|
||||
Objects.requireNonNull(
|
||||
fromDepartment,
|
||||
"Can't remove a member from a SciDepartment null."
|
||||
);
|
||||
|
||||
final Optional<Membership> result = fromDepartment
|
||||
.getMembers()
|
||||
.stream()
|
||||
.filter(
|
||||
membership -> filterMembership(
|
||||
membership,
|
||||
person,
|
||||
fromDepartment
|
||||
)
|
||||
)
|
||||
.findFirst();
|
||||
|
||||
if (result.isPresent()) {
|
||||
final Membership removed = result.get();
|
||||
fromDepartment.removeMember(removed);
|
||||
itemRepo.save(fromDepartment);
|
||||
membershipRepo.delete(removed);
|
||||
}
|
||||
}
|
||||
|
||||
@Transactional(Transactional.TxType.REQUIRED)
|
||||
public void addProject(
|
||||
final SciProject project,
|
||||
final SciDepartment toDepartment
|
||||
) {
|
||||
Objects.requireNonNull(
|
||||
project,
|
||||
"Can't add null as a project null to a SciDepartment."
|
||||
);
|
||||
Objects.requireNonNull(
|
||||
toDepartment,
|
||||
"Can't a project to a SciDepartment null."
|
||||
);
|
||||
|
||||
final DepartmentProject departmentProject =new DepartmentProject();
|
||||
departmentProject.setDepartment(toDepartment);
|
||||
departmentProject.setProject(project);
|
||||
|
||||
toDepartment.addProject(departmentProject);
|
||||
departmentProjectRepo.save(departmentProject);
|
||||
itemRepo.save(project);
|
||||
}
|
||||
|
||||
@Transactional(Transactional.TxType.REQUIRED)
|
||||
public void removeProject(
|
||||
final SciProject project,
|
||||
final SciDepartment fromDepartment
|
||||
) {
|
||||
Objects.requireNonNull(
|
||||
project,
|
||||
"Can't remove null as a project from a SciDepartment."
|
||||
);
|
||||
Objects.requireNonNull(
|
||||
fromDepartment,
|
||||
"Can't remove a project from a SciDepartment null."
|
||||
);
|
||||
|
||||
final Optional<DepartmentProject> result = fromDepartment
|
||||
.getProjects()
|
||||
.stream()
|
||||
.filter(
|
||||
departmentProject -> filterDepartmentProject(
|
||||
departmentProject, project, fromDepartment
|
||||
)
|
||||
)
|
||||
.findFirst();
|
||||
|
||||
if (result.isPresent()) {
|
||||
final DepartmentProject removed = result.get();
|
||||
fromDepartment.removeProject(removed);
|
||||
itemRepo.save(fromDepartment);
|
||||
departmentProjectRepo.delete(removed);
|
||||
}
|
||||
}
|
||||
|
||||
private boolean filterContact(
|
||||
final Contact contact,
|
||||
final ContactableEntity byContactable,
|
||||
final SciDepartment byDepartment
|
||||
) {
|
||||
return contact.getContactable().equals(byContactable)
|
||||
&& contact.getDepartment().equals(byDepartment);
|
||||
}
|
||||
|
||||
private boolean filterMembership(
|
||||
final Membership membership,
|
||||
final Person byPerson,
|
||||
final SciDepartment byDepartment
|
||||
) {
|
||||
return membership.getMember().equals(byPerson)
|
||||
&& membership.getDepartment().equals(byDepartment);
|
||||
}
|
||||
|
||||
private boolean filterDepartmentProject(
|
||||
final DepartmentProject departmentProject,
|
||||
final SciProject byProject,
|
||||
final SciDepartment byDepartment
|
||||
|
||||
) {
|
||||
return departmentProject.getProject().equals(byProject)
|
||||
&& departmentProject.getDepartment().equals(byDepartment);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,275 @@
|
|||
create table SCI_TYPES_PROJECT.PROJECT_CONTACTS (
|
||||
CONTACT_ID bigint not null,
|
||||
CONTACT_TYPE varchar(255),
|
||||
CONTACT_ORDER bigint,
|
||||
CONTACTABLE_ID bigint,
|
||||
PROJECT_ID bigint,
|
||||
primary key (CONTACT_ID)
|
||||
);
|
||||
|
||||
create table SCI_TYPES_PROJECT.PROJECT_CONTACTS_AUD (
|
||||
CONTACT_ID bigint not null,
|
||||
REV integer not null,
|
||||
REVTYPE tinyint,
|
||||
REVEND integer,
|
||||
CONTACT_TYPE varchar(255),
|
||||
CONTACT_ORDER bigint,
|
||||
CONTACTABLE_ID bigint,
|
||||
PROJECT_ID bigint,
|
||||
primary key (CONTACT_ID, REV)
|
||||
);
|
||||
|
||||
create table SCI_TYPES_PROJECT.PROJECT_DESCS (
|
||||
OBJECT_ID bigint not null,
|
||||
LOCALIZED_VALUE varchar(2147483647),
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (OBJECT_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table SCI_TYPES_PROJECT.PROJECT_DESCS_AUD (
|
||||
REV integer not null,
|
||||
OBJECT_ID bigint not null,
|
||||
LOCALIZED_VALUE varchar(2147483647) not null,
|
||||
LOCALE varchar(255) not null,
|
||||
REVTYPE tinyint,
|
||||
REVEND integer,
|
||||
primary key (REV, OBJECT_ID, LOCALIZED_VALUE, LOCALE)
|
||||
);
|
||||
|
||||
create table SCI_TYPES_PROJECT.PROJECT_FUNDING (
|
||||
OBJECT_ID bigint not null,
|
||||
LOCALIZED_VALUE varchar(2147483647),
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (OBJECT_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table SCI_TYPES_PROJECT.PROJECT_FUNDING_AUD (
|
||||
REV integer not null,
|
||||
OBJECT_ID bigint not null,
|
||||
LOCALIZED_VALUE varchar(2147483647) not null,
|
||||
LOCALE varchar(255) not null,
|
||||
REVTYPE tinyint,
|
||||
REVEND integer,
|
||||
primary key (REV, OBJECT_ID, LOCALIZED_VALUE, LOCALE)
|
||||
);
|
||||
|
||||
create table SCI_TYPES_PROJECT.PROJECT_FUNDING_VOLUME (
|
||||
OBJECT_ID bigint not null,
|
||||
LOCALIZED_VALUE varchar(2147483647),
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (OBJECT_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table SCI_TYPES_PROJECT.PROJECT_FUNDING_VOLUME_AUD (
|
||||
REV integer not null,
|
||||
OBJECT_ID bigint not null,
|
||||
LOCALIZED_VALUE varchar(2147483647) not null,
|
||||
LOCALE varchar(255) not null,
|
||||
REVTYPE tinyint,
|
||||
REVEND integer,
|
||||
primary key (REV, OBJECT_ID, LOCALIZED_VALUE, LOCALE)
|
||||
);
|
||||
|
||||
create table SCI_TYPES_PROJECT.PROJECT_MEMBERSHIPS (
|
||||
MEMBERSHIP_ID bigint not null,
|
||||
MEMBER_ROLE varchar(255),
|
||||
STATUS varchar(255),
|
||||
MEMBER_ID bigint,
|
||||
PROJECT_ID bigint,
|
||||
primary key (MEMBERSHIP_ID)
|
||||
);
|
||||
|
||||
create table SCI_TYPES_PROJECT.PROJECT_MEMBERSHIPS_AUD (
|
||||
MEMBERSHIP_ID bigint not null,
|
||||
REV integer not null,
|
||||
REVTYPE tinyint,
|
||||
REVEND integer,
|
||||
MEMBER_ROLE varchar(255),
|
||||
STATUS varchar(255),
|
||||
MEMBER_ID bigint,
|
||||
PROJECT_ID bigint,
|
||||
primary key (MEMBERSHIP_ID, REV)
|
||||
);
|
||||
|
||||
create table SCI_TYPES_PROJECT.PROJECT_SHORT_DESCS (
|
||||
OBJECT_ID bigint not null,
|
||||
LOCALIZED_VALUE varchar(2147483647),
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (OBJECT_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table SCI_TYPES_PROJECT.PROJECT_SHORT_DESCS_AUD (
|
||||
REV integer not null,
|
||||
OBJECT_ID bigint not null,
|
||||
LOCALIZED_VALUE varchar(2147483647) not null,
|
||||
LOCALE varchar(255) not null,
|
||||
REVTYPE tinyint,
|
||||
REVEND integer,
|
||||
primary key (REV, OBJECT_ID, LOCALIZED_VALUE, LOCALE)
|
||||
);
|
||||
|
||||
create table SCI_TYPES_PROJECT.PROJECTS (
|
||||
PROJECT_BEGIN date,
|
||||
PROJECT_END date,
|
||||
OBJECT_ID bigint not null,
|
||||
primary key (OBJECT_ID)
|
||||
);
|
||||
|
||||
create table SCI_TYPES_PROJECT.PROJECTS_AUD (
|
||||
OBJECT_ID bigint not null,
|
||||
REV integer not null,
|
||||
PROJECT_BEGIN date,
|
||||
PROJECT_END date,
|
||||
primary key (OBJECT_ID, REV)
|
||||
);
|
||||
|
||||
create table SCI_TYPES_PROJECT.SPONSORING (
|
||||
SPONSORING_ID bigint not null,
|
||||
FUNDING_CODE varchar(512),
|
||||
SPONSOR_ORDER bigint,
|
||||
PROJECT_ID bigint,
|
||||
SPONSOR_ID bigint,
|
||||
primary key (SPONSORING_ID)
|
||||
);
|
||||
|
||||
create table SCI_TYPES_PROJECT.SPONSORING_AUD (
|
||||
SPONSORING_ID bigint not null,
|
||||
REV integer not null,
|
||||
REVTYPE tinyint,
|
||||
REVEND integer,
|
||||
FUNDING_CODE varchar(512),
|
||||
SPONSOR_ORDER bigint,
|
||||
PROJECT_ID bigint,
|
||||
SPONSOR_ID bigint,
|
||||
primary key (SPONSORING_ID, REV)
|
||||
);
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_CONTACTS
|
||||
add constraint FKgnma88ye77fb0vdmpuepyb2y7
|
||||
foreign key (CONTACTABLE_ID)
|
||||
references CCM_CMS.CONTACTABLE_ENTITIES;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_CONTACTS
|
||||
add constraint FK21fku49mpakv86hra725t3sok
|
||||
foreign key (PROJECT_ID)
|
||||
references SCI_TYPES_PROJECT.PROJECTS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_CONTACTS_AUD
|
||||
add constraint FK15m4nnwrt964isduiuk8bbeg8
|
||||
foreign key (REV)
|
||||
references CCM_CORE.CCM_REVISIONS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_CONTACTS_AUD
|
||||
add constraint FKciyhqi7w2dby8e3b4arklmfqp
|
||||
foreign key (REVEND)
|
||||
references CCM_CORE.CCM_REVISIONS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_DESCS
|
||||
add constraint FKfh5goal8j4gsjhf65gxm11gxu
|
||||
foreign key (OBJECT_ID)
|
||||
references SCI_TYPES_PROJECT.PROJECTS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_DESCS_AUD
|
||||
add constraint FKfq5fyp71qmrc9y0h6px8vae7l
|
||||
foreign key (REV)
|
||||
references CCM_CORE.CCM_REVISIONS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_DESCS_AUD
|
||||
add constraint FK6615a6cc9tcmovk51a9vqff7x
|
||||
foreign key (REVEND)
|
||||
references CCM_CORE.CCM_REVISIONS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_FUNDING
|
||||
add constraint FKqmq8depjmuly0lixjljwnwut5
|
||||
foreign key (OBJECT_ID)
|
||||
references SCI_TYPES_PROJECT.PROJECTS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_FUNDING_AUD
|
||||
add constraint FK664s3oomoj23e9hvbh97hg5dw
|
||||
foreign key (REV)
|
||||
references CCM_CORE.CCM_REVISIONS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_FUNDING_AUD
|
||||
add constraint FKgtsw7ruamw5m1p15p5y261a23
|
||||
foreign key (REVEND)
|
||||
references CCM_CORE.CCM_REVISIONS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_FUNDING_VOLUME
|
||||
add constraint FKf6lg5n24snpplnvctdknh4mrv
|
||||
foreign key (OBJECT_ID)
|
||||
references SCI_TYPES_PROJECT.PROJECTS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_FUNDING_VOLUME_AUD
|
||||
add constraint FKgnnop98oxffgs7bp9bspajhw9
|
||||
foreign key (REV)
|
||||
references CCM_CORE.CCM_REVISIONS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_FUNDING_VOLUME_AUD
|
||||
add constraint FKk599wppcylm8yo704ht3w7ibj
|
||||
foreign key (REVEND)
|
||||
references CCM_CORE.CCM_REVISIONS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_MEMBERSHIPS
|
||||
add constraint FKdbcet4i6wg7jinmaa0wchqujp
|
||||
foreign key (MEMBER_ID)
|
||||
references CCM_CMS.PERSONS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_MEMBERSHIPS
|
||||
add constraint FK54cqbnqwnv7e13p7k842nmjvt
|
||||
foreign key (PROJECT_ID)
|
||||
references SCI_TYPES_PROJECT.PROJECTS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_MEMBERSHIPS_AUD
|
||||
add constraint FKjdf8o2a5cuusgee0v43n562y4
|
||||
foreign key (REV)
|
||||
references CCM_CORE.CCM_REVISIONS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_MEMBERSHIPS_AUD
|
||||
add constraint FK7yfj65ojma1coq2eeywpu0fcp
|
||||
foreign key (REVEND)
|
||||
references CCM_CORE.CCM_REVISIONS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_SHORT_DESCS
|
||||
add constraint FKqbbb85ebs497yad3gx07kdt1e
|
||||
foreign key (OBJECT_ID)
|
||||
references SCI_TYPES_PROJECT.PROJECTS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_SHORT_DESCS_AUD
|
||||
add constraint FK4ijysk1fk31o5kljgpc2p7yq6
|
||||
foreign key (REV)
|
||||
references CCM_CORE.CCM_REVISIONS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_SHORT_DESCS_AUD
|
||||
add constraint FKkmidmqbpihxhfu1349lcw0rb0
|
||||
foreign key (REVEND)
|
||||
references CCM_CORE.CCM_REVISIONS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECTS
|
||||
add constraint FKqlmls86i354oxprglxg5j9xxy
|
||||
foreign key (OBJECT_ID)
|
||||
references CCM_CMS.CONTENT_ITEMS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECTS_AUD
|
||||
add constraint FKss0w64wsb71r39npak6tg963b
|
||||
foreign key (OBJECT_ID, REV)
|
||||
references CCM_CMS.CONTENT_ITEMS_AUD;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.SPONSORING
|
||||
add constraint FKe8posjrbtsvd7t8q3k8l7ybmy
|
||||
foreign key (PROJECT_ID)
|
||||
references SCI_TYPES_PROJECT.PROJECTS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.SPONSORING
|
||||
add constraint FKt63gl8j92rua5risu9cnhd3py
|
||||
foreign key (SPONSOR_ID)
|
||||
references CCM_CMS.ORGANIZATIONS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.SPONSORING_AUD
|
||||
add constraint FK7ci9e1fuqi8vbjcp9x70747se
|
||||
foreign key (REV)
|
||||
references CCM_CORE.CCM_REVISIONS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.SPONSORING_AUD
|
||||
add constraint FKfa0ems4hsww6wgoapss1bx38f
|
||||
foreign key (REVEND)
|
||||
references CCM_CORE.CCM_REVISIONS;
|
||||
|
|
@ -0,0 +1,275 @@
|
|||
create table SCI_TYPES_PROJECT.PROJECT_CONTACTS (
|
||||
CONTACT_ID int8 not null,
|
||||
CONTACT_TYPE varchar(255),
|
||||
CONTACT_ORDER int8,
|
||||
CONTACTABLE_ID int8,
|
||||
PROJECT_ID int8,
|
||||
primary key (CONTACT_ID)
|
||||
);
|
||||
|
||||
create table SCI_TYPES_PROJECT.PROJECT_CONTACTS_AUD (
|
||||
CONTACT_ID int8 not null,
|
||||
REV int4 not null,
|
||||
REVTYPE int2,
|
||||
REVEND int4,
|
||||
CONTACT_TYPE varchar(255),
|
||||
CONTACT_ORDER int8,
|
||||
CONTACTABLE_ID int8,
|
||||
PROJECT_ID int8,
|
||||
primary key (CONTACT_ID, REV)
|
||||
);
|
||||
|
||||
create table SCI_TYPES_PROJECT.PROJECT_DESCS (
|
||||
OBJECT_ID int8 not null,
|
||||
LOCALIZED_VALUE text,
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (OBJECT_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table SCI_TYPES_PROJECT.PROJECT_DESCS_AUD (
|
||||
REV int4 not null,
|
||||
OBJECT_ID int8 not null,
|
||||
LOCALIZED_VALUE text not null,
|
||||
LOCALE varchar(255) not null,
|
||||
REVTYPE int2,
|
||||
REVEND int4,
|
||||
primary key (REV, OBJECT_ID, LOCALIZED_VALUE, LOCALE)
|
||||
);
|
||||
|
||||
create table SCI_TYPES_PROJECT.PROJECT_FUNDING (
|
||||
OBJECT_ID int8 not null,
|
||||
LOCALIZED_VALUE text,
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (OBJECT_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table SCI_TYPES_PROJECT.PROJECT_FUNDING_AUD (
|
||||
REV int4 not null,
|
||||
OBJECT_ID int8 not null,
|
||||
LOCALIZED_VALUE text not null,
|
||||
LOCALE varchar(255) not null,
|
||||
REVTYPE int2,
|
||||
REVEND int4,
|
||||
primary key (REV, OBJECT_ID, LOCALIZED_VALUE, LOCALE)
|
||||
);
|
||||
|
||||
create table SCI_TYPES_PROJECT.PROJECT_FUNDING_VOLUME (
|
||||
OBJECT_ID int8 not null,
|
||||
LOCALIZED_VALUE text,
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (OBJECT_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table SCI_TYPES_PROJECT.PROJECT_FUNDING_VOLUME_AUD (
|
||||
REV int4 not null,
|
||||
OBJECT_ID int8 not null,
|
||||
LOCALIZED_VALUE text not null,
|
||||
LOCALE varchar(255) not null,
|
||||
REVTYPE int2,
|
||||
REVEND int4,
|
||||
primary key (REV, OBJECT_ID, LOCALIZED_VALUE, LOCALE)
|
||||
);
|
||||
|
||||
create table SCI_TYPES_PROJECT.PROJECT_MEMBERSHIPS (
|
||||
MEMBERSHIP_ID int8 not null,
|
||||
MEMBER_ROLE varchar(255),
|
||||
STATUS varchar(255),
|
||||
MEMBER_ID int8,
|
||||
PROJECT_ID int8,
|
||||
primary key (MEMBERSHIP_ID)
|
||||
);
|
||||
|
||||
create table SCI_TYPES_PROJECT.PROJECT_MEMBERSHIPS_AUD (
|
||||
MEMBERSHIP_ID int8 not null,
|
||||
REV int4 not null,
|
||||
REVTYPE int2,
|
||||
REVEND int4,
|
||||
MEMBER_ROLE varchar(255),
|
||||
STATUS varchar(255),
|
||||
MEMBER_ID int8,
|
||||
PROJECT_ID int8,
|
||||
primary key (MEMBERSHIP_ID, REV)
|
||||
);
|
||||
|
||||
create table SCI_TYPES_PROJECT.PROJECT_SHORT_DESCS (
|
||||
OBJECT_ID int8 not null,
|
||||
LOCALIZED_VALUE text,
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (OBJECT_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table SCI_TYPES_PROJECT.PROJECT_SHORT_DESCS_AUD (
|
||||
REV int4 not null,
|
||||
OBJECT_ID int8 not null,
|
||||
LOCALIZED_VALUE text not null,
|
||||
LOCALE varchar(255) not null,
|
||||
REVTYPE int2,
|
||||
REVEND int4,
|
||||
primary key (REV, OBJECT_ID, LOCALIZED_VALUE, LOCALE)
|
||||
);
|
||||
|
||||
create table SCI_TYPES_PROJECT.PROJECTS (
|
||||
PROJECT_BEGIN date,
|
||||
PROJECT_END date,
|
||||
OBJECT_ID int8 not null,
|
||||
primary key (OBJECT_ID)
|
||||
);
|
||||
|
||||
create table SCI_TYPES_PROJECT.PROJECTS_AUD (
|
||||
OBJECT_ID int8 not null,
|
||||
REV int4 not null,
|
||||
PROJECT_BEGIN date,
|
||||
PROJECT_END date,
|
||||
primary key (OBJECT_ID, REV)
|
||||
);
|
||||
|
||||
create table SCI_TYPES_PROJECT.SPONSORING (
|
||||
SPONSORING_ID int8 not null,
|
||||
FUNDING_CODE varchar(512),
|
||||
SPONSOR_ORDER int8,
|
||||
PROJECT_ID int8,
|
||||
SPONSOR_ID int8,
|
||||
primary key (SPONSORING_ID)
|
||||
);
|
||||
|
||||
create table SCI_TYPES_PROJECT.SPONSORING_AUD (
|
||||
SPONSORING_ID int8 not null,
|
||||
REV int4 not null,
|
||||
REVTYPE int2,
|
||||
REVEND int4,
|
||||
FUNDING_CODE varchar(512),
|
||||
SPONSOR_ORDER int8,
|
||||
PROJECT_ID int8,
|
||||
SPONSOR_ID int8,
|
||||
primary key (SPONSORING_ID, REV)
|
||||
);
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_CONTACTS
|
||||
add constraint FKgnma88ye77fb0vdmpuepyb2y7
|
||||
foreign key (CONTACTABLE_ID)
|
||||
references CCM_CMS.CONTACTABLE_ENTITIES;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_CONTACTS
|
||||
add constraint FK21fku49mpakv86hra725t3sok
|
||||
foreign key (PROJECT_ID)
|
||||
references SCI_TYPES_PROJECT.PROJECTS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_CONTACTS_AUD
|
||||
add constraint FK15m4nnwrt964isduiuk8bbeg8
|
||||
foreign key (REV)
|
||||
references CCM_CORE.CCM_REVISIONS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_CONTACTS_AUD
|
||||
add constraint FKciyhqi7w2dby8e3b4arklmfqp
|
||||
foreign key (REVEND)
|
||||
references CCM_CORE.CCM_REVISIONS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_DESCS
|
||||
add constraint FKfh5goal8j4gsjhf65gxm11gxu
|
||||
foreign key (OBJECT_ID)
|
||||
references SCI_TYPES_PROJECT.PROJECTS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_DESCS_AUD
|
||||
add constraint FKfq5fyp71qmrc9y0h6px8vae7l
|
||||
foreign key (REV)
|
||||
references CCM_CORE.CCM_REVISIONS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_DESCS_AUD
|
||||
add constraint FK6615a6cc9tcmovk51a9vqff7x
|
||||
foreign key (REVEND)
|
||||
references CCM_CORE.CCM_REVISIONS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_FUNDING
|
||||
add constraint FKqmq8depjmuly0lixjljwnwut5
|
||||
foreign key (OBJECT_ID)
|
||||
references SCI_TYPES_PROJECT.PROJECTS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_FUNDING_AUD
|
||||
add constraint FK664s3oomoj23e9hvbh97hg5dw
|
||||
foreign key (REV)
|
||||
references CCM_CORE.CCM_REVISIONS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_FUNDING_AUD
|
||||
add constraint FKgtsw7ruamw5m1p15p5y261a23
|
||||
foreign key (REVEND)
|
||||
references CCM_CORE.CCM_REVISIONS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_FUNDING_VOLUME
|
||||
add constraint FKf6lg5n24snpplnvctdknh4mrv
|
||||
foreign key (OBJECT_ID)
|
||||
references SCI_TYPES_PROJECT.PROJECTS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_FUNDING_VOLUME_AUD
|
||||
add constraint FKgnnop98oxffgs7bp9bspajhw9
|
||||
foreign key (REV)
|
||||
references CCM_CORE.CCM_REVISIONS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_FUNDING_VOLUME_AUD
|
||||
add constraint FKk599wppcylm8yo704ht3w7ibj
|
||||
foreign key (REVEND)
|
||||
references CCM_CORE.CCM_REVISIONS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_MEMBERSHIPS
|
||||
add constraint FKdbcet4i6wg7jinmaa0wchqujp
|
||||
foreign key (MEMBER_ID)
|
||||
references CCM_CMS.PERSONS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_MEMBERSHIPS
|
||||
add constraint FK54cqbnqwnv7e13p7k842nmjvt
|
||||
foreign key (PROJECT_ID)
|
||||
references SCI_TYPES_PROJECT.PROJECTS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_MEMBERSHIPS_AUD
|
||||
add constraint FKjdf8o2a5cuusgee0v43n562y4
|
||||
foreign key (REV)
|
||||
references CCM_CORE.CCM_REVISIONS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_MEMBERSHIPS_AUD
|
||||
add constraint FK7yfj65ojma1coq2eeywpu0fcp
|
||||
foreign key (REVEND)
|
||||
references CCM_CORE.CCM_REVISIONS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_SHORT_DESCS
|
||||
add constraint FKqbbb85ebs497yad3gx07kdt1e
|
||||
foreign key (OBJECT_ID)
|
||||
references SCI_TYPES_PROJECT.PROJECTS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_SHORT_DESCS_AUD
|
||||
add constraint FK4ijysk1fk31o5kljgpc2p7yq6
|
||||
foreign key (REV)
|
||||
references CCM_CORE.CCM_REVISIONS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECT_SHORT_DESCS_AUD
|
||||
add constraint FKkmidmqbpihxhfu1349lcw0rb0
|
||||
foreign key (REVEND)
|
||||
references CCM_CORE.CCM_REVISIONS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECTS
|
||||
add constraint FKqlmls86i354oxprglxg5j9xxy
|
||||
foreign key (OBJECT_ID)
|
||||
references CCM_CMS.CONTENT_ITEMS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.PROJECTS_AUD
|
||||
add constraint FKss0w64wsb71r39npak6tg963b
|
||||
foreign key (OBJECT_ID, REV)
|
||||
references CCM_CMS.CONTENT_ITEMS_AUD;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.SPONSORING
|
||||
add constraint FKe8posjrbtsvd7t8q3k8l7ybmy
|
||||
foreign key (PROJECT_ID)
|
||||
references SCI_TYPES_PROJECT.PROJECTS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.SPONSORING
|
||||
add constraint FKt63gl8j92rua5risu9cnhd3py
|
||||
foreign key (SPONSOR_ID)
|
||||
references CCM_CMS.ORGANIZATIONS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.SPONSORING_AUD
|
||||
add constraint FK7ci9e1fuqi8vbjcp9x70747se
|
||||
foreign key (REV)
|
||||
references CCM_CORE.CCM_REVISIONS;
|
||||
|
||||
alter table SCI_TYPES_PROJECT.SPONSORING_AUD
|
||||
add constraint FKfa0ems4hsww6wgoapss1bx38f
|
||||
foreign key (REVEND)
|
||||
references CCM_CORE.CCM_REVISIONS;
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
groupId=${project.groupId}
|
||||
artifactId=${project.artifactId}
|
||||
version=${project.version}
|
||||
build.date=${timestamp}
|
||||
|
|
@ -0,0 +1 @@
|
|||
sciproject.contact=Contact
|
||||
|
|
@ -0,0 +1 @@
|
|||
sciproject.contact=Kontakt
|
||||
|
|
@ -9,7 +9,6 @@ import org.librecms.assets.ContactableEntity;
|
|||
import org.librecms.assets.Organization;
|
||||
import org.librecms.assets.Person;
|
||||
import org.librecms.contentsection.ContentItemRepository;
|
||||
import org.librecms.ui.contentsections.ContentSectionsUi;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Objects;
|
||||
|
|
|
|||
Loading…
Reference in New Issue