Exemple #1
0
class TeamMembers(UserMixin, db.Model):

    __tablename__ = "team_members"

    team_member_id = db.Column(db.Integer, primary_key=True)
    start_date = db.Column(db.DateTime)
    departure_date = db.Column(db.DateTime)
    name = db.Column(db.String(20))
    position = db.Column(db.String(30))

    grant_reference = db.Column(
        db.Integer,
        db.ForeignKey('submitted_applications.grant_application_id'))
    grant_reference_id = db.relationship('SubmittedApplications',
                                         foreign_keys=grant_reference)

    research_Profile = db.Column(
        db.Integer,
        db.ForeignKey('researcher_profile.researcher_id'),
        nullable=True)
    researcher_profile = db.relationship('Researcher_Profile',
                                         foreign_keys=research_Profile)

    users = db.Column(db.Integer, db.ForeignKey('users.id'), nullable=True)
    UserDetails = db.relationship('User', foreign_keys=users)

    def check_password(self, password):
        return check_password_hash(self.password_hash, password)

    def get_id(self):
        return self.username
Exemple #2
0
class NonAcademicCollabs(UserMixin, db.Model):
    __tablename__ = "non_academic_collaborations"
    non_academic_collaboration_id = db.Column(db.Integer, primary_key=True)
    start_date = db.Column(db.DateTime)
    end_date = db.Column(db.DateTime)
    department = db.Column(db.String(20))
    institution_name = db.Column(db.String(64))
    location = db.Column(db.String(64))
    collaborator_name = db.Column(db.String(40))
    collaborator_goal = db.Column(db.String(40))
    interaction_frequency = db.Column(db.String(40))

    grant_reference = db.Column(
        db.Integer,
        db.ForeignKey('submitted_applications.grant_application_id'))
    grant_reference_id = db.relationship('SubmittedApplications',
                                         foreign_keys=grant_reference)

    research_Profile = db.Column(
        db.Integer,
        db.ForeignKey('researcher_profile.researcher_id'),
        nullable=True)
    researcher_profile = db.relationship('Researcher_Profile',
                                         foreign_keys=research_Profile)

    users = db.Column(db.Integer, db.ForeignKey('users.id'), nullable=True)
    UserDetails = db.relationship('User', foreign_keys=users)

    def check_password(self, password):
        return check_password_hash(self.password_hash, password)

    def get_id(self):
        return self.username
Exemple #3
0
class Conferences(UserMixin, db.Model):
    __tablename__ = "conferences"
    conference_id = db.Column(db.Integer, primary_key=True)
    start_date = db.Column(db.DateTime)
    end_date = db.Column(db.DateTime)
    title = db.Column(db.String(64))
    type = db.Column(db.String(64))
    role = db.Column(db.String(64))
    event_location = db.Column(db.String(30))
    grant_num = db.Column(db.Integer)
    research_Profile = db.Column(
        db.Integer,
        db.ForeignKey('researcher_profile.researcher_id'),
        nullable=True)
    researcher_profile = db.relationship('Researcher_Profile',
                                         foreign_keys=research_Profile)

    users = db.Column(db.Integer, db.ForeignKey('users.id'), nullable=True)
    UserDetails = db.relationship('User', foreign_keys=users)

    def check_password(self, password):
        return check_password_hash(self.password_hash, password)

    def get_id(self):
        return self.username
Exemple #4
0
class Publications(UserMixin, db.Model):
    __tablename__ = "publications"
    publication_id = db.Column(db.Integer, primary_key=True)
    year = db.Column(db.Integer)
    title = db.Column(db.String(120))
    type = db.Column(db.String(64))
    journal_conference_name = db.Column(db.String(64))
    published = db.Column(db.BOOLEAN, default=False)
    in_press = db.Column(db.BOOLEAN, default=False)
    doi = db.Column(db.String(64))

    grant_reference = db.Column(
        db.Integer,
        db.ForeignKey('submitted_applications.grant_application_id'))
    grant_reference_id = db.relationship('SubmittedApplications',
                                         foreign_keys=grant_reference)

    research_Profile = db.Column(
        db.Integer,
        db.ForeignKey('researcher_profile.researcher_id'),
        nullable=True)
    researcher_profile = db.relationship('Researcher_Profile',
                                         foreign_keys=research_Profile)

    users = db.Column(db.Integer, db.ForeignKey('users.id'), nullable=True)
    UserDetails = db.relationship('User', foreign_keys=users)

    def check_password(self, password):
        return check_password_hash(self.password_hash, password)

    def get_id(self):
        return self.username
Exemple #5
0
class Engagements(UserMixin, db.Model):
    __tablename__ = "engagements"
    engagement_id = db.Column(db.Integer, primary_key=True)
    project_name = db.Column(db.String(100))
    start_date = db.Column(db.DateTime)
    end_date = db.Column(db.DateTime)
    activity_type = db.Column(db.String(30))
    project_topic = db.Column(db.String(45))
    target_area = db.Column(db.String(80))
    research_Profile = db.Column(
        db.Integer,
        db.ForeignKey('researcher_profile.researcher_id'),
        nullable=True)
    researcher_profile = db.relationship('Researcher_Profile',
                                         foreign_keys=research_Profile)
    grant_application = db.Column(
        db.Integer,
        db.ForeignKey('grant_application.grant_application_id'),
        nullable=True)
    grant_applications = db.relationship('Grant_Application',
                                         foreign_keys=grant_application)
    users = db.Column(db.Integer, db.ForeignKey('users.id'), nullable=True)
    UserDetails = db.relationship('User', foreign_keys=users)

    def check_password(self, password):
        return check_password_hash(self.password_hash, password)

    def get_id(self):
        return self.username
Exemple #6
0
class Funding_Diversification(UserMixin, db.Model):

    __tablename__ = "funding_diversifications"

    funding_id = db.Column(db.Integer, primary_key=True)
    start_date = db.Column(db.DateTime)
    end_date = db.Column(db.DateTime)
    funding_amount = db.Column(db.Integer)
    funding_body = db.Column(db.String(64))
    funding_programme = db.Column(db.String(64))
    status = db.Column(db.String(20))

    grant_reference = db.Column(
        db.Integer,
        db.ForeignKey('submitted_applications.grant_application_id'))
    grant_reference_id = db.relationship('SubmittedApplications',
                                         foreign_keys=grant_reference)

    research_Profile = db.Column(
        db.Integer,
        db.ForeignKey('researcher_profile.researcher_id'),
        nullable=True)
    researcher_profile = db.relationship('Researcher_Profile',
                                         foreign_keys=research_Profile)

    users = db.Column(db.Integer, db.ForeignKey('users.id'), nullable=True)
    UserDetails = db.relationship('User', foreign_keys=users)

    def check_password(self, password):
        return check_password_hash(self.password_hash, password)

    def get_id(self):
        return self.username
Exemple #7
0
class Innovations(UserMixin, db.Model):
    __tablename__ = "innovations"
    innovation_id = db.Column(db.Integer, primary_key=True)
    year = db.Column(db.Integer)
    type = db.Column(db.String(10))
    title = db.Column(db.String(25))

    grant_reference = db.Column(
        db.Integer,
        db.ForeignKey('submitted_applications.grant_application_id'))
    grant_reference_id = db.relationship('SubmittedApplications',
                                         foreign_keys=grant_reference)

    research_Profile = db.Column(
        db.Integer,
        db.ForeignKey('researcher_profile.researcher_id'),
        nullable=True)
    researcher_profile = db.relationship('Researcher_Profile',
                                         foreign_keys=research_Profile)

    users = db.Column(db.Integer, db.ForeignKey('users.id'), nullable=True)
    UserDetails = db.relationship('User', foreign_keys=users)

    def check_password(self, password):
        return check_password_hash(self.password_hash, password)

    def get_id(self):
        return self.username
Exemple #8
0
class ProposalsAccepted(UserMixin, db.Model):
    __tablename__ = "proposals_accepted"
    accepted_id = db.Column(db.Integer, primary_key=True)
    grant_number = db.Column(
        db.Integer,
        db.ForeignKey('grant_application.grant_application_id'),
        nullable=True)
    grant_applications = db.relationship('Grant_Application',
                                         foreign_keys=grant_number)
    confirmed = db.Column(db.BOOLEAN)
    began = db.Column(db.BOOLEAN)
Exemple #9
0
class Collaborators(UserMixin, db.Model):
    __tablename__ = "collaborators_db"
    collaborator_id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(60))
    organization = db.Column(db.String(80))
    email = db.Column(db.String(80))
    grant_application = db.Column(
        db.Integer,
        db.ForeignKey('grant_application.grant_application_id'),
        nullable=True)
    grant_applications = db.relationship('Grant_Application',
                                         foreign_keys=grant_application)
Exemple #10
0
class Communication(UserMixin, db.Model):
    __tablename__ = "communication"
    research_profile_id = db.Column(db.Integer, primary_key=True)
    year = db.Column(db.Integer)
    num_lectures = db.Column(db.Integer)
    num_visits = db.Column(db.Integer)
    num_media_interactions = db.Column(db.Integer)
    research_Profile = db.Column(
        db.Integer,
        db.ForeignKey('researcher_profile.researcher_id'),
        nullable=True)
    researcher_profile = db.relationship('Researcher_Profile',
                                         foreign_keys=research_Profile)

    users = db.Column(db.Integer, db.ForeignKey('users.id'), nullable=True)
    UserDetails = db.relationship('User', foreign_keys=users)

    def check_password(self, password):
        return check_password_hash(self.password_hash, password)

    def get_id(self):
        return self.username
Exemple #11
0
class ResearcherEducation(UserMixin, db.Model):
    __tablename__ = "researcher_education"
    researcher_education_id = db.Column(db.Integer, primary_key=True)
    field_of_study = db.Column(db.String(60))
    degree = db.Column(db.String(20))
    institution = db.Column(db.String(60))
    location = db.Column(db.String(60))
    year_of_degree = db.Column(db.Integer)
    research_Profile = db.Column(
        db.Integer,
        db.ForeignKey('researcher_profile.researcher_id'),
        nullable=True)
    researcher_profile = db.relationship('Researcher_Profile',
                                         foreign_keys=research_Profile)
    users = db.Column(db.Integer, db.ForeignKey('users.id'), nullable=True)
    UserDetails = db.relationship('User', foreign_keys=users)

    def check_password(self, password):
        return check_password_hash(self.password_hash, password)

    def get_id(self):
        return self.username
Exemple #12
0
class EmploymentDB(UserMixin, db.Model):
    __tablename__ = "employment_db"
    employment_id = db.Column(db.Integer, primary_key=True)
    institution = db.Column(db.String(25))
    location = db.Column(db.String(21))
    year = db.Column(db.Integer)

    research_Profile = db.Column(
        db.Integer,
        db.ForeignKey('researcher_profile.researcher_id'),
        nullable=True)
    researcher_profile = db.relationship('Researcher_Profile',
                                         foreign_keys=research_Profile)

    users = db.Column(db.Integer, db.ForeignKey('users.id'), nullable=True)
    UserDetails = db.relationship('User', foreign_keys=users)

    def check_password(self, password):
        return check_password_hash(self.password_hash, password)

    def get_id(self):
        return self.username
Exemple #13
0
class FundingRatio(UserMixin, db.Model):

    __tablename__ = "funding_ratio"

    funding_ratio_id = db.Column(db.Integer, primary_key=True)
    year = db.Column(db.Integer)
    percentage = db.Column(db.Integer)
    research_Profile = db.Column(
        db.Integer,
        db.ForeignKey('researcher_profile.researcher_id'),
        nullable=True)
    researcher_profile = db.relationship('Researcher_Profile',
                                         foreign_keys=research_Profile)

    users = db.Column(db.Integer, db.ForeignKey('users.id'), nullable=True)
    UserDetails = db.relationship('User', foreign_keys=users)

    def check_password(self, password):
        return check_password_hash(self.password_hash, password)

    def get_id(self):
        return self.username
Exemple #14
0
class Professional_Societies(UserMixin, db.Model):
    __tablename__ = "professional_societies"
    research_profile_id = db.Column(db.Integer, primary_key=True)
    start_date = db.Column(db.DateTime)
    end_date = db.Column(db.DateTime)
    name = db.Column(db.String(20))
    membership_type = db.Column(db.String(64))
    status = db.Column(db.String(64))
    research_Profile = db.Column(
        db.Integer,
        db.ForeignKey('researcher_profile.researcher_id'),
        nullable=True)
    researcher_profile = db.relationship('Researcher_Profile',
                                         foreign_keys=research_Profile)

    users = db.Column(db.Integer, db.ForeignKey('users.id'), nullable=True)
    UserDetails = db.relationship('User', foreign_keys=users)

    def check_password(self, password):
        return check_password_hash(self.password_hash, password)

    def get_id(self):
        return self.username
Exemple #15
0
class SFIAdmin(UserMixin, db.Model):
    __tablename__ = "sfiAdmin"
    sfi_admin_id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(128))
    password_hash = db.Column(db.String(128))
    loginID = db.Column(db.Integer,
                        db.ForeignKey('login_account.login_account_id'),
                        nullable=True)
    loginDetails = db.relationship('Login_Account', foreign_keys=loginID)

    def check_password(self, password):
        return check_password_hash(self.password_hash, password)

    def get_id(self):
        return self.username
Exemple #16
0
class Research_Centre_Admin(UserMixin, db.Model):
    __tablename__ = "research_centre_admin"
    research_centre_id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(128))
    password_hash = db.Column(db.String(128))
    research_profile = db.Column(db.Integer)
    online = db.Column(db.BOOLEAN)
    loginID = db.Column(db.Integer,
                        db.ForeignKey('login_account.login_account_id'),
                        nullable=True)
    loginDetails = db.relationship('Login_Account', foreign_keys=loginID)

    def check_password(self, password):
        return check_password_hash(self.password_hash, password)

    def get_id(self):
        return self.username
Exemple #17
0
class AwardsDB(UserMixin, db.Model):
    __tablename__ = "awards_db"
    awards_id = db.Column(db.Integer, primary_key=True)
    awarding_body = db.Column(db.String(21))
    awarding_details = db.Column(db.String(100))
    member_name = db.Column(db.String(21))
    year = db.Column(db.Integer)
    research_Profile = db.Column(
        db.Integer,
        db.ForeignKey('researcher_profile.researcher_id'),
        nullable=True)

    users = db.Column(db.Integer, db.ForeignKey('users.id'), nullable=True)
    UserDetails = db.relationship('User', foreign_keys=users)

    def check_password(self, password):
        return check_password_hash(self.password_hash, password)

    def get_id(self):
        return self.username
Exemple #18
0
class Researcher_Profile(UserMixin, db.Model):

    __tablename__ = "researcher_profile"

    researcher_id = db.Column(db.Integer, primary_key=True)
    f_name = db.Column(db.String(64))
    l_name = db.Column(db.String(64))
    job_title = db.Column(db.String(40))
    ORCID = db.Column(db.String(19))
    prefix = db.Column(db.String(10))
    suffix = db.Column(db.String(10))
    phone = db.Column(db.Integer)
    phone_extension = db.Column(db.Integer)

    users = db.Column(db.Integer, db.ForeignKey('users.id'), nullable=True)
    UserDetails = db.relationship('User', foreign_keys=users)

    def check_password(self, password):
        return check_password_hash(self.password_hash, password)

    def get_id(self):
        return self.username
Exemple #19
0
class AnnualReports(UserMixin, db.Model):
    __tablename__ = "annual_reports"
    annual_report_id = db.Column(db.Integer, primary_key=True)
    research_Profile = db.Column(
        db.Integer,
        db.ForeignKey('researcher_profile.researcher_id'),
        nullable=True)
    researcher_profile = db.relationship('Researcher_Profile',
                                         foreign_keys=research_Profile)
    publication_id = db.Column(db.Integer,
                               db.ForeignKey('publications.publication_id'),
                               nullable=True)
    publication = db.relationship('Publications', foreign_keys=publication_id)
    academic_collab_id = db.Column(
        db.Integer,
        db.ForeignKey('academic_collaborations.collaboration_id'),
        nullable=True)
    collaborations = db.relationship('AcademicCollabs',
                                     foreign_keys=academic_collab_id)
    education_id = db.Column(
        db.Integer,
        db.ForeignKey('researcher_education.researcher_education_id'),
        nullable=True)
    researcher_education = db.relationship('ResearcherEducation',
                                           foreign_keys=education_id)
    non_academic_collab_id = db.Column(
        db.Integer,
        db.ForeignKey(
            'non_academic_collaborations.non_academic_collaboration_id'),
        nullable=True)
    non_academic_collabs = db.relationship('NonAcademicCollabs',
                                           foreign_keys=non_academic_collab_id)
    impact_id = db.Column(db.Integer,
                          db.ForeignKey('impacts.impact_id'),
                          nullable=True)
    impacts = db.relationship('Impacts', foreign_keys=impact_id)
    innovations_id = db.Column(db.Integer,
                               db.ForeignKey('innovations.innovation_id'),
                               nullable=True)
    innovations = db.relationship('Innovations', foreign_keys=innovations_id)