Multiple applicant category profiles
- Dominant language
- Python
- Stars
- 8
- Forks
- 2
- Avg merge
- 14h 34m
- Merged PRs (30d)
- 46
Description
* As an IAO analyst
* I want to be able to select different applicant profiles for the same applicant
* so that the applicant can make requests for different reasons (i.e. categories)
**Assumptions & Scope**
What are the assumptions for this story?
While an applicant may be the same person, the context for their request may differ. For example, a person may make a request on behalf of a business or law firm. That same person may make a personal request that is unrelated to their professional work.
As a result the same individual should have one applicant profile with sub-profiles based upon categories of requestors. This will limit the duplication of applicant profiles (multiple profiles returned in search results for the same person) in the legacy system.
What is IN scope?
What is NOT in scope?
View and select existing Applicant Profile #4761
Search Applicant Profile #4758
**Acceptance Criteria**
**Scenario 1: Applicant has one category profile**
* GIVEN the IAO analyst clicks on applicant profile search result
* WHEN the applicant has only one Profile (i.e. applicant category)
* THEN there will be a tag with a + that says 'Add Additional Profile'
* AND there will be no number next to Applicant Profile
* https://jacklyn808742.invisionapp.com/console/FOI---Intake-ckpq19frj032r013q6gpm8t1m/clp8r0umw0g3t016n0eue6392/play
**Scenario 2: Applicant has multiple category profiles**
* GIVEN the IAO analyst clicks on applicant profile search result
* WHEN the applicant has more than one Profile (i.e. applicant category)
* THEN there will be a tags for each profile (i.e. category) and a tag to 'Add New'
* AND profiles will be listed in alphabetical order by category: 'Business' Individual' 'Law' ....
* AND there will be a number next to Applicant Profile with the number of profiles: (1), (2), (3), etc.
* https://jacklyn808742.invisionapp.com/console/FOI---Intake-ckpq19frj032r013q6gpm8t1m/clp8r0umw0g3x016n974a3g1u/play
**Scenario 3: Click on category profile tag**
* GIVEN the IAO analyst is on an Applicant Profile with multiple profiles (i.e., categories)
* WHEN the IAO analyst clicks on a profile (i.e. category)
* THEN the category tag will turn blue
* AND the Applicant Profile displayed will be for that category (e.g. Interest Group)
* https://jacklyn808742.invisionapp.com/console/FOI---Intake-ckpq19frj032r013q6gpm8t1m/clp8r0umw0g3v016n2cgg0dqd/play
**Scenario 3: Select profile when applicant has multiple category profiles**
* GIVEN the IAO analyst is on an Applicant Profile with multiple profiles (i.e., categories)
* https://jacklyn808742.invisionapp.com/console/FOI---Intake-ckpq19frj032r013q6gpm8t1m/clp8r0umw0g3v016n2cgg0dqd/play
* WHEN the IAO analyst clicks the 'Select Profile' button
* THEN the Select Applicant modal will open with the message, 'You are selecting an applicant with multiple profiles. Are you sure the request falls under the **Interest Group** Category?
* AND buttons to 'Cancel' and 'Select Interest Group'
Jacky to insert design?
**Scenario 4: Cancel Select Interest Group**
* GIVEN the IAO analyst is on the Select Interest Group modal
* WHEN the IAO analyst clicks the 'Cancel' button
* THEN the Select Applicant modal will close
* AND the analyst will remain on the Applicant Profile
* AND the category selected will still be selected (e.g. Interest Group)
**Scenario 5: Select Interest Group**
* GIVEN the IAO analyst is on the Select Interest Group modal
* WHEN the IAO analyst clicks the 'Select Interest Group' button
* THEN a the modal will close
* AND the Applicant Profile with the specific category will be linked to the new FOI request
* AND the analyst will be returned to the Request View for the request?
* AND the 'Search Applicant Profile' link will be updated to 'Applicant Profile'
* https://jacklyn808742.invisionapp.com/console/FOI---Intake-ckpq19frj032r013q6gpm8t1m/clp8r0umw0g3p016ngmj29rhz/play
**Validation Rules? (If yes, list here)**
**Design**
@xxx - please link the Design here
**Definition of Ready**
1. [ ] Is there a well articulated User Story?
2. [ ] Is there Acceptance Criteria that covers all scenarios (happy/sad paths)?
3. [ ] If there is a user interface, is there a design?
4. [ ] Does the user story need user research/validation?
5. [ ] Does this User Story needs stakeholder approval?
6. [ ] Design / Solution accepted by Product Owner
7. [ ] Is this user story small enough to be completed in a Sprint? Should it be split?
8. [ ] Are the dependencies known/ understood? (technical, business, regulatory/policy)
9. [ ] Has the story been estimated?
**Definition of Done**
1. [ ] Passes developer unit tests
2. [ ] Passes peer code review
3. [ ] If there's a user interface, passes UX assurance
4. [ ] Passes QA of Acceptance Criteria with verification in Dev and Test
5. [ ] Confirm Test cases built and succeeding
6. [ ] No regression test failures
7. [ ] Test coverage acceptable by Product Owner
8. [ ] Ticket ready to be merged to master or story branch
9. [ ] Developer to list Config changes/ Update documents and designs
10. [ ] Can be demoed in Sprint Review
11. [ ] Tagged as part of a Release
12. [ ] Feature flagged if required
13. [ ] Change Management activities done?
Contributor guide
Research direction
No files, tests, or implementation entry points are identified in the issue. Start by reviewing the related Applicant Profile issues #4761 and #4758, then confirm the missing design and scope with the product team. Done means the listed profile-selection scenarios are implemented and covered by tests, but the issue does not define where those changes belong.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- full-stack
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100