GCTC-NTGC / gc-digital-talent

GC Digital Talent is the new recruitment platform for digital and tech jobs in the Government of Canada. // Talents numériques du GC est la nouvelle plateforme de recrutement pour les emplois numériques et technologiques au gouvernement du Canada.
https://talent.canada.ca
GNU Affero General Public License v3.0
22 stars 9 forks source link

✨ Applications and Processes Widget #10788

Open brindasasi opened 5 months ago

brindasasi commented 5 months ago

✨ Feature

Job Applications is a component which loads and shows the user's PoolCandidate objects, divided in two accordions.

🕵️ Details

ALL applications, ie PoolCandidate objects, appear in the first accordion. Additionally, if a user was successfully qualified in a process, the PoolCandidate object also appears in the the Recruitment processes section.

Job Applications

Cards in the Job Applications accordion show the Job Title, a Status pill, classification, a date, and an icon. The design is based on the same UI as the request card on the Manager dashboard. But please compare it to the design file again to make sure all the small details are correctly working.

The date is the finalDecisionDate, or the removed date, or the submittedDate, or the jobPoster closing date, in that order of priority.

Q: Should it be Removed date for removed applications? A: Yes, if the candidate was removed, they should show up as "unsuccessful" with the "Assessed" date displaying the "Removed date" (but finalDecisionDate takes priority over removed)

The icon is a Edit icon for drafts and a magnifying glass for all others.

Status Pill logic - I attempted to work through the whole logic here

FOR DISCUSSION:

Recruitment Processes

If the user was Qualified in the process, it the PoolCandidate also appears in the Recruitement section. ie finalDecisionAt is not null and finalDecision is one of

Note, QUALIFIED_PENDING indicates they're likely to be qualified, but finalDecision has not actually been made yet, and finalDecisionAt will be null. From the application's perspective, the application is still in assessment.

Cards in the Recruitment Processes accordion show the Job Title, a Status pill, classification, a number of skill assessments, a date, and an icon. The date is a Removed date, if the user is removed, and Awarded date (finalDecisionDate) otherwise. The icon is a magnifying class if the user for removed or expired applications, and an edit icon for others.

Status Pill logic - I attempted to work through the whole logic here.

Dialogs

...

🎨 Design File

https://www.figma.com/design/oZhQe9ahidHFfaiqgREvxa/Dashboard-(All-users)?node-id=2086-63995&node-type=frame&t=sltU21dpZZlO5BUt-0

🧑‍🎨 Designer

@JoshBeveridge

📸 Screenshot

Current View Image

🙋‍♀️ Proposed Implementation

The cards in the widget should reuse the component built for the Manager dashboard.

🌎 Localization

Statuses with longer descriptions...

✅ Acceptance Criteria

🛑 Blockers

Issues which must be completed before this one.

### Blocked By
- [ ] #11075
brindasasi commented 5 months ago

@substrae Its a bit weird to remove the view of statuses like Ready to hire from the dashboard main view to a different page under past applications. 🤔

github-actions[bot] commented 3 months ago

Status: Ready to merge :heavy_check_mark:

Issues blocking this PR:

gobyrne commented 1 day ago

@substrae Its a bit weird to remove the view of statuses like Ready to hire from the dashboard main view to a different page under past applications. 🤔

Yeah, with the new dashboards, this is no longer the case. One should be just below the other.

tristan-orourke commented 19 hours ago

Received, Under Review, Under Assessment Statuses:

Unlike for other statuses, there's no underReviewAt or underAssessmentAt for these statuses. In the current model, if an applicaiton has submittedAt, but no finalDecisionAt, then it's "Received", with no further distinctions.

But we now have business logic for these distinctions. When any interaction happens on the Screening and Assessment page, ie when an assessment has been created, the application moves into Under Review. Then, when it has passed step 1 of screening, it is under assessment.

Should we add computed database fields for these to simplify work on the frontend? We're already doing some processing whenever assessments change.