Skip to content

Feat/generate opportunity report #510

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 28 commits into
base: in-app-evaluation
Choose a base branch
from

Conversation

alex-struk
Copy link
Collaborator

@alex-struk alex-struk commented Apr 28, 2025

This PR closes issue: [issue #DMM-457]

Includes tests? N
Updated docs? N

Proposed changes:

  • Allows admin users to generate a complete report for all opportunity types after they are awarded by pressing the "View Complete Competition" button on the summary tab of the opportunity details page

@alex-struk alex-struk requested a review from IanFonzie May 2, 2025 18:23
Copy link
Collaborator

@IanFonzie IanFonzie left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

After further consideration, I don't think reusing the existing components are the best use case for this because:

  1. The report is meant to be read-only
  2. Components in Marketplace are used for state management
  3. We shouldn't be modifying the interface of existing components to pacify the requirements of the new report

Instead the src/front-end/typescript/lib/pages/opportunity/:program/complete/index.tsx pages should should execute the necessary Cmds to load all of the data it needs from the back-end and populate some sort of read-only view; you have a few options for this from least to most preferred:

  • Use the existing component's views and finesse the data into a shape that conforms to the state it accepts (i.e. component_.page.View<State, InnerMsg, Route>)
  • Create new read-only views (i.e. component.base.View<SomeProps>)
  • Implement a new view for the components used in the report that accepts certain props (not state from the component). Then, refactor the component to "pass through" the relevant props from component state to the view

Copy link

Quality Gate Failed Quality Gate failed

Failed conditions
0.0% Coverage on New Code (required ≥ 80%)
28.9% Duplication on New Code (required ≤ 3%)
E Reliability Rating on New Code (required ≥ A)

See analysis details on SonarQube Cloud

Catch issues before they fail your Quality Gate with our IDE extension SonarQube for IDE

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants