Skip to content

Commit

Permalink
save radio answers and disable them
Browse files Browse the repository at this point in the history
  • Loading branch information
Rocio De Santiago authored and Rocio De Santiago committed Jan 16, 2025
1 parent 20bb755 commit e30e3ed
Show file tree
Hide file tree
Showing 5 changed files with 52 additions and 18 deletions.
2 changes: 2 additions & 0 deletions services/app-api/forms/qms.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ import {
export const qmsReportTemplate: ReportTemplate = {
type: ReportType.QMS,
title: "plan id",
year: 2026,
options: {},
pages: [
{
id: "root",
Expand Down
9 changes: 8 additions & 1 deletion services/app-api/handlers/reports/buildReport.ts
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,14 @@ export const buildReport = async (
report.lastEditedByEmail = user.email;
report.type = reportType;
report.status = ReportStatus.NOT_STARTED;
report.name = reportOptions["name"];
report.name = reportOptions.name;
report.year = reportOptions.year;
report.options = {
cahps: reportOptions.cahps,
hciidd: reportOptions.hciidd,
nciad: reportOptions.nciad,
pom: reportOptions.pom,
};

if (reportType == ReportType.QMS) {
/*
Expand Down
7 changes: 7 additions & 0 deletions services/app-api/types/reports.ts
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,11 @@ export const isReportType = (x: string | undefined): x is ReportType => {

export interface ReportOptions {
name: string;
year: number;
cahps: boolean;
hciidd: boolean;
nciad: boolean;
pom: boolean;
}

export interface CMIT {
Expand Down Expand Up @@ -116,6 +121,8 @@ export type ReportTemplate = {
defaultMeasures: MeasureOptions[];
};
measureTemplates: Record<MeasureTemplateName, MeasurePageTemplate>;
year: number;
options: { [key: string]: boolean };
};

export type PageTemplate =
Expand Down
45 changes: 28 additions & 17 deletions services/ui-src/src/components/modals/AddEditReportModal.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ export const AddEditReportModal = ({
const onSubmit = async (formData: any) => {
setSubmitting(true);

const userEnteredReportName = formData?.reportTitle?.answer;
const userEnteredReportName = formData.reportTitle.answer;

if (selectedReport) {
if (userEnteredReportName) {
Expand All @@ -47,11 +47,13 @@ export const AddEditReportModal = ({
await putReport(selectedReport);
} else {
const reportOptions: ReportOptions = {
name: "",
name: userEnteredReportName,
year: 2026,
cahps: formData.cahps.answer == "true",
hciidd: formData.hciidd.answer == "true",
nciad: formData.nciad.answer == "true",
pom: formData.pom.answer == "true",
};
if (userEnteredReportName) {
reportOptions.name = userEnteredReportName;
}
await createReport(reportType, activeState, reportOptions);
await reportHandler(reportType, activeState);
}
Expand Down Expand Up @@ -103,6 +105,7 @@ export const AddEditReportModal = ({
options={dropdownYears}
onChange={handleYearChange}
value={selectedYear}
disabled={!!selectedReport}
/>
<RadioField
element={{
Expand All @@ -112,20 +115,22 @@ export const AddEditReportModal = ({
value: [
{
label: "Yes",
value: "0",
value: "true",
checkedChildren: [],
checked: false,
},
{
label: "No",
value: "1",
value: "false",
checkedChildren: [],
checked: false,
},
],
required: "A response is required",
answer: selectedReport?.options.cahps?.toString(),
}}
formkey={"radioQuestion1"}
disabled={!!selectedReport}
formkey={"cahps"}
/>
<RadioField
element={{
Expand All @@ -135,20 +140,22 @@ export const AddEditReportModal = ({
value: [
{
label: "Yes",
value: "0",
value: "true",
checkedChildren: [],
checked: false,
},
{
label: "No",
value: "1",
value: "false",
checkedChildren: [],
checked: false,
},
],
required: "A response is required",
answer: selectedReport?.options.hciidd?.toString(),
}}
formkey={"radioQuestion2"}
disabled={!!selectedReport}
formkey={"hciidd"}
/>
<RadioField
element={{
Expand All @@ -158,20 +165,22 @@ export const AddEditReportModal = ({
value: [
{
label: "Yes",
value: "0",
value: "true",
checkedChildren: [],
checked: false,
},
{
label: "No",
value: "1",
value: "false",
checkedChildren: [],
checked: false,
},
],
required: "A response is required",
answer: selectedReport?.options.nciad?.toString(),
}}
formkey={"radioQuestion3"}
disabled={!!selectedReport}
formkey={"nciad"}
/>
<RadioField
element={{
Expand All @@ -180,20 +189,22 @@ export const AddEditReportModal = ({
value: [
{
label: "Yes",
value: "0",
value: "true",
checkedChildren: [],
checked: false,
},
{
label: "No",
value: "1",
value: "false",
checkedChildren: [],
checked: false,
},
],
required: "A response is required",
answer: selectedReport?.options.pom?.toString(),
}}
formkey={"radioQuestion4"}
disabled={!!selectedReport}
formkey={"pom"}
/>
</Flex>
</form>
Expand Down
7 changes: 7 additions & 0 deletions services/ui-src/src/types/report.ts
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,8 @@ export type ReportTemplate = {
optionGroups: Record<string, MeasureOptions[]>;
};
measureTemplates: Record<MeasureTemplateName, MeasurePageTemplate>;
year: number;
options: { [key: string]: boolean };
};

export interface Report extends ReportTemplate {
Expand Down Expand Up @@ -231,6 +233,11 @@ export enum MeasureSpecification {

export interface ReportOptions {
name: string;
year: number;
cahps: boolean;
hciidd: boolean;
nciad: boolean;
pom: boolean;
}

export interface CMIT {
Expand Down

0 comments on commit e30e3ed

Please sign in to comment.