Skip to content

Trainer Hub (Oracle Hub) and Cohort Page Documentation

iescobedx edited this page Feb 22, 2022 · 25 revisions

Iteration X (Read Note)

Trainer Hub (Oracle Hub) & Cohort Page Component Documentation

Trainer Hub (Oracle Hub) & Cohort Page Aura Component Documentation

Trainer Hub (Oracle Hub) & Cohort Page Apex Class Documentation

Trainer Hub (Oracle Hub) & Cohort Page Permission Sets Documentation

Notes

  • Iteration X made no modifications on the Trainer Hub and Cohort Page portions of the package.

Previous Iterations

Click Me!

ITERATION 6

Component dependency chart

Trainer-Hub-Package-Component-Dependencies


Previous Iterations

Objects

Assessment__c

Object for 1on1, Project, and misc. Assessments

Fields

  • Name : Text field for name of Assessment
  • Type__c : Picklist field for type of Assessment (1on1, Project, Misc)
  • Description__c : Description of Assessment

Hero_Assessment__c

Junction object for Hero (Account) and Assessment objects

Fields

  • Assessment__c : MasterDetail Relationship to Assessment object
  • Account : MasterDetail Relationship to the Account or Hero object
  • Name : Autonumber Name of HeroAssessment
  • Overall_Score__c : Overall Score Hero receives on Assessment
  • Notes__c : Notes about score received

Project__c

Object to represent Projects that an Oracle assigns to Heroes and Cohorts

Fields

  • Description__c : Brief overview of the project
  • Name : Text name of the project

Equivalency__c

Junction Object between Skill__c and Project__c -- How Oracles add relevant skill equivalencies to a project

Fields

  • Skill__c : Master-detail relation to a skill object
  • Project__c : Master-detail relation to a project object
  • Name : Auto Number
  • Skill_Equivalency__c : Number representing the months of equivalent experience of a skill

Changes to Existing Objects

Curriculum__c

Fields

  • Technology__c : Added picklist values 'Python' and 'Data'

Account

Fields

  • Project__c : Added a lookup relationship to a Project object -- represents a Hero's currently assigned project

Cohort__c

Fields

  • Project__c : Added a lookup relationship to a Project object -- represents a Cohort's currently assigned project

Aura Components

AddEquivalencyComponent

 Component that handles the assignment of fields to new equivalency objects

AssessmentCreation

 Component with form to create an Assessment record

AssessmentHeroList

 Component with a list of Hero Assessment records

AssessmentList

 Component with a list of Assessment records

AssignProject

 Component for adding to/editing the Account(s) and Cohort(s) Project__c field

CohortPageContainer

 Component that contains the other components for the Cohort Page

CohortPageEditRecord

 Component that displays and edits information about the selected Assessment record

CohortPageHeroAssessmentEditRecord

 Component that displays and edits information about the selected Hero Assessment record

CurrentCohortAverage

 Component that employs d3.js to display the current Cohort's average exam scores

DynamicRow

 Component that houses the addEquivalencyComponent and handles initial loading of data and dynamic addition/deletion of rows

ExamList

 Component with a list of Exam records

FlaggedHeroList

 Component that displays Hero records that have been flagged by QC

HeroAssessmentCreation

 Component with form to create a Hero Assessment record

HeroGroupchart

 Component that displays a grouped-bar graph for Cohort averages

HeroList

 Component that displays a list of Hero records

NewProjectCreation

 Component that allows Trainers to create new projects

ProjectHome

 Component that allows Trainers to view all project records - (Project__c object) 

QCInterview

 Component that displays a list of QC Interview records

TrainerHubAndCohortsPage

 Component that contains Trainer Hub and Cohort Page components

TrainerHubPastCohortsTable

 Component that displays a list of previous cohorts with a button to navigate to a page with attributes set by the selected cohorts Id

TrainerHubTransferActiveCohortPage

 Component featuring a button to transfer to the active cohort page

Apex Classes

AddEquivalencyComponentAuraController

Apex class used by addEquivalencyComponent component

Methods

  • getSkills() : Gets all skills listed in database and returns them in a list of object type Skill__c

AssessmentListController

Controller for Assessment List Component to be able to display data from org on the component about each Assessment

Methods

  • AssessmentList() : Returns a List of all Assessment records

AssessmentSetup

Apex Class used to setup dummy data; it is best to run UserAccountSetup.UserSetup() before using the methods in this class

Methods

  • Setup() : Creates Assessment and Hero Assessment records
  • associateCohort() : Creates a Cohort record and links it to Account records
  • QCSetup() : Creates QC Interview and QC Question Answer records

AssignProjectController

Apex Class used to handle loading of Accounts (Heroes) and Cohorts; handle inserting of values into Project__c field of Account and Cohort

Methods

  • getAccounts() : return a list of Accounts to potentially assign projects to
  • getCohorts() : return a list of Cohorts to potentially assign projects to
  • assignProject(String grouping, String[] namesToAssign, String projectIdToAssign) : Edit project field for each entity in 'namesToAssign' list

CurrentCohortController

Controller used to grab data for QC Scores, Exams, and Hero Assessments; it only grabs the active cohort of the running user/trainer

Methods

  • getData() : Returns a list of Pair objects (object in OOP sense)

Subclasses

  • Pair : Holds a String for name and a Decimal for value and has a constructor that takes a String and a Decimal to set name and value

D3GrpChartController

Methods

  • getDataMap() : Returns a Map with Strings as keys and Lists of grpBarChart objects (object in OOP sense) as values

Subclasses

  • grpBarChart : Holds a String for grpName and a Decimal for grpValue and has a constructor that takes a String and a Deciaml to set grpName and grpValue

DynamicRowAuraController

Controller used by dynamicRow component

Methods

  • saveEquivalency(List<Equivalency__c> equivList) : Takes a list of object type Equivalency__c and inserts to the database
  • retrieveCurrentEquivalencies(String projectId) : Takes the provided project id and gets any skills that have been linked to the project and returns a list of object type Equivalency__c

ExamListController

Controller for Exam List Component to be able to display data from org on the component about Exam Results from each hero

Methods

  • ExamList() : Returns a List of all Exam Result records
  • SearchExamList(String searchKey) : Returns a list of Exam Result records that match the search key

FlaggedHeroController

Controller for Flagged Hero List Component to be able to display data from org on the component

Methods

HeroList() : Returns a List of QC Flag records

HeroAssessmentListController

Controller for Hero Assessment List component to be able to display data from org on the component

Methods

  • HeroList() : Returns a List of Hero Assessment records
  • SearchHeroList(String searchKey) : Returns a List of Hero Assessment records that match the search key

HeroListController

Controller for Hero List component to be able to display data from org on the component

Methods

  • HeroList(String cohort) : Returns a List of Accounts where the Account is a Hero type and is in the Cohort that the Id (String argument) provided indicates

NewProjectCreationAuraController

Controller for the NewProjectCreation component to retrieve Project Names (Project__c Object) for duplicate checking, as well as inserting new Projects

Methods

  • getListOfProjectNames(): returns a list of names from Project__c to check for duplicates
  • setNewProject(): inserts the new project from the NewProjectCreation component

ProjectHomeController

Controller for the ProjectHome to retrieve Project (Project__c Object) to be displayed/listed on the projectHome component

Methods

  • retrieveProjects(): returns a list of projects (Project__c Object) to be displayed on the projectHome component

QCInterviewController

Controller for QC Interview Component to be able to display data from org on the component

Methods

  • HeroList() : Returns a List of QC Interview records

TrainerHubPastCohortsTableAuraController

Controller for Trainer Hub Past Cohorts Table component

Methods

  • fetchPastCohorts() : Returns a List of Cohort records that are related to the current User
  • fetchActiveCohort() : Returns the Id of the Cohort record that is currently active for the current User

Apex Test Classes

  • AddEquivalencyComponentTest
  • AssessmentListControllerTest
  • AssessmentSetupTest
  • AssignProjectControllerTest
  • CurrentCohortControllerTest
  • D3GrpChartControllerTest
  • DynamicRowAuraControllerTest
  • FlaggedHeroControllerTest
  • HeroAssessmentListControllerTest
  • HeroListControllerTest
  • ProjectHomeControllerTest
  • NewProjectCreationAuraControllerTest
  • QCInterviewControllerTest
  • TrainHubPastCohortsTable_Test

Flexipages

Previous Cohorts

Page that displays previous Cohorts in Trainer Hub with links to their Cohort Pages and has a button to display current Cohort's Cohort Page

TrainerHub Home

Home Page for Trainer Hub: displays current cohort averages, flagged heroes, items to approve, and all cohort averages

TRIAL OF THE TITANS

├─Install Instructions
│   ├Site Setup
├─General Documentation
│   ├Data Modeling/Relationships
│         ├Data Model
│         ├Custom Objects & Fields
│   ├Issues & Suggestions
│         ├Known Issues
│         ├Data Model Issues & Suggestions
│   ├Dependency Chart
├─Resources
├─Package Overview
│   ├Trial of the Titans Package
│         ├QC Hub
│         ├Trainer Hub
│         ├Mock Interview
│   ├Chart Package Package
│   ├Hero Hub Package
│   ├Titan Hub Package
│   ├Exam Interview Package
│   ├Portfolio Hub Package
├─Archive

Clone this wiki locally