@ampath/esm-reports-app 1.0.0-next.41 → 1.0.0-next.45

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (183) hide show
  1. package/dist/143.css +1 -0
  2. package/dist/143.css.map +1 -0
  3. package/dist/143.js +1 -0
  4. package/dist/143.js.map +1 -0
  5. package/dist/197.js +1 -1
  6. package/dist/282.js +1 -1
  7. package/dist/282.js.map +1 -1
  8. package/dist/295.css +1 -0
  9. package/dist/295.css.map +1 -0
  10. package/dist/295.js +1 -0
  11. package/dist/295.js.map +1 -0
  12. package/dist/300.js +1 -1
  13. package/dist/311.js +1 -1
  14. package/dist/311.js.map +1 -1
  15. package/dist/335.js +1 -1
  16. package/dist/353.js +1 -1
  17. package/dist/353.js.map +1 -1
  18. package/dist/410.js +1 -0
  19. package/dist/410.js.map +1 -0
  20. package/dist/427.js +2 -0
  21. package/dist/427.js.LICENSE.txt +35 -0
  22. package/dist/427.js.map +1 -0
  23. package/dist/441.js +1 -0
  24. package/dist/441.js.map +1 -0
  25. package/dist/478.js +1 -1
  26. package/dist/478.js.map +1 -1
  27. package/dist/540.js +1 -1
  28. package/dist/540.js.map +1 -1
  29. package/dist/55.js +1 -1
  30. package/dist/652.js +1 -1
  31. package/dist/961.js +1 -1
  32. package/dist/961.js.map +1 -1
  33. package/dist/99.js +1 -1
  34. package/dist/ampath-esm-reports-app.js +1 -1
  35. package/dist/ampath-esm-reports-app.js.map +1 -1
  36. package/dist/routes.json +1 -1
  37. package/package.json +2 -2
  38. package/src/common/report-error/index.ts +1 -0
  39. package/src/common/report-error/show-report-error.ts +25 -0
  40. package/src/common/report-filters/date-range.ts +137 -0
  41. package/src/common/report-filters/index.ts +4 -0
  42. package/src/common/report-filters/report-filters.component.tsx +281 -151
  43. package/src/common/report-filters/report-filters.scss +180 -55
  44. package/src/common/report-filters/types.ts +66 -0
  45. package/src/common/report-filters/use-restore-period.ts +43 -0
  46. package/src/common/report-page/index.ts +2 -0
  47. package/src/common/report-page/report-page.component.tsx +32 -0
  48. package/src/common/report-page/report-page.scss +45 -0
  49. package/src/common/report-page/use-page-scale.ts +50 -0
  50. package/src/common/report-placeholder/has-report-data.ts +15 -0
  51. package/src/common/report-placeholder/index.ts +2 -0
  52. package/src/common/report-placeholder/report-placeholder.component.tsx +56 -0
  53. package/src/common/report-placeholder/report-placeholder.scss +46 -0
  54. package/src/common/report-register/index.ts +5 -0
  55. package/src/common/report-register/register-columns.ts +34 -0
  56. package/src/common/report-register/register-layout.component.tsx +237 -0
  57. package/src/common/report-register/register-layout.scss +140 -0
  58. package/src/common/report-register/register-table.scss +62 -0
  59. package/src/common/report-register/report-parents.ts +27 -0
  60. package/src/common/report-register/rows-to-csv.ts +59 -0
  61. package/src/common/report-register/use-patient-list.ts +92 -0
  62. package/src/common/report-skeleton/index.ts +1 -0
  63. package/src/common/report-skeleton/report-skeleton.component.tsx +46 -0
  64. package/src/common/report-skeleton/report-skeleton.scss +29 -0
  65. package/src/config-schema.ts +9 -1
  66. package/src/dashboard/report-catalog.ts +173 -0
  67. package/src/dashboard/reports-dasboard.tsx +101 -35
  68. package/src/dashboard/reports-dashboard.module.scss +269 -11
  69. package/src/index.ts +13 -1
  70. package/src/reports/datatable-wrapper/datatable-wrapper.component.tsx +50 -48
  71. package/src/reports/moh-240/moh-240-header.component.tsx +54 -56
  72. package/src/reports/moh-240/moh-240.columns.ts +64 -0
  73. package/src/reports/moh-240/moh-240.component.tsx +65 -84
  74. package/src/reports/moh-240/moh-240.scss +36 -7
  75. package/src/reports/moh-240/sub-reports/moh-240-register.component.tsx +27 -65
  76. package/src/reports/moh-240/sub-reports/page-summary.component.tsx +2 -2
  77. package/src/reports/moh-505/moh-505-header.component.tsx +59 -57
  78. package/src/reports/moh-505/moh-505.component.tsx +51 -56
  79. package/src/reports/moh-505/moh-505.scss +116 -2
  80. package/src/reports/moh-705B/moh-204b-register.component.tsx +41 -42
  81. package/src/reports/moh-705B/moh-204b.columns.ts +39 -0
  82. package/src/reports/moh-705B/moh-705b.component.tsx +492 -473
  83. package/src/reports/moh-705B/moh-705b.scss +110 -24
  84. package/src/reports/moh-705a/moh-705a.component.tsx +496 -476
  85. package/src/reports/moh-705a/moh-705a.scss +109 -24
  86. package/src/reports/moh-705a/registers/moh-204a-register.component.tsx +41 -42
  87. package/src/reports/moh-705a/registers/moh-204a.columns.ts +57 -0
  88. package/src/reports/moh-706/moh-706-header.component.tsx +58 -56
  89. package/src/reports/moh-706/moh-706.component.tsx +84 -55
  90. package/src/reports/moh-706/moh-706.scss +115 -19
  91. package/src/reports/moh-710/moh-710.component.tsx +743 -727
  92. package/src/reports/moh-710/moh-710.scss +140 -23
  93. package/src/reports/moh-710/registers/moh-511-710-register.component.tsx +48 -43
  94. package/src/reports/moh-710/registers/moh-511-710.columns.ts +52 -0
  95. package/src/reports/moh-711/moh-711.component.tsx +94 -106
  96. package/src/reports/moh-711/moh711.scss +95 -64
  97. package/src/reports/moh-711/registers/moh-333-register.component.tsx +92 -94
  98. package/src/reports/moh-711/registers/moh-333.columns.ts +119 -0
  99. package/src/reports/moh-711/registers/moh-405-register.component.tsx +88 -89
  100. package/src/reports/moh-711/registers/moh-405.columns.ts +120 -0
  101. package/src/reports/moh-711/registers/moh-406-register.component.tsx +85 -88
  102. package/src/reports/moh-711/registers/moh-406.columns.ts +133 -0
  103. package/src/reports/moh-711/registers/moh-510-register.component.tsx +38 -44
  104. package/src/reports/moh-711/registers/moh-511-register.component.tsx +42 -43
  105. package/src/reports/moh-711/registers/moh-511.columns.ts +59 -0
  106. package/src/reports/moh-711/sections/anc.component.tsx +3 -3
  107. package/src/reports/moh-711/sections/cervical-cancer.component.tsx +3 -3
  108. package/src/reports/moh-711/sections/chanis.component.tsx +2 -3
  109. package/src/reports/moh-711/sections/family-planning.component.tsx +2 -2
  110. package/src/reports/moh-711/sections/gbv.component.tsx +2 -2
  111. package/src/reports/moh-711/sections/maternity.component.tsx +3 -8
  112. package/src/reports/moh-711/sections/medical-social-work.component.tsx +2 -12
  113. package/src/reports/moh-711/sections/other.component.tsx +2 -2
  114. package/src/reports/moh-711/sections/physiotherapy.component.tsx +2 -2
  115. package/src/reports/moh-711/sections/pnc.component.tsx +7 -5
  116. package/src/reports/moh-711/sections/post-abortion.component.tsx +2 -2
  117. package/src/reports/moh-711/sections/rehabilitation.component.tsx +2 -2
  118. package/src/reports/moh-711/sections/report-compiled-by.component.tsx +12 -4
  119. package/src/reports/moh-711/sections/tb-screening.component.tsx +2 -2
  120. package/src/reports/moh-717/moh-717.component.tsx +100 -121
  121. package/src/reports/moh-717/moh717.scss +163 -102
  122. package/src/reports/moh-717/sections/maternity.component.tsx +1 -1
  123. package/src/reports/moh-717/sections/orthopaedic-trauma.component.tsx +1 -1
  124. package/src/reports/moh-717/sections/outpatient.component.tsx +23 -23
  125. package/src/reports/moh-717/sections/preparedby.component.tsx +7 -2
  126. package/src/reports/moh-717/sections/special-services.component.tsx +1 -1
  127. package/src/reports/moh-731/moh-731.component.tsx +127 -110
  128. package/src/reports/moh-731/moh-731.scss +396 -68
  129. package/src/reports/moh-731/registers/moh-366.columns.ts +38 -0
  130. package/src/reports/moh-731/registers/moh-366.component.tsx +76 -83
  131. package/src/reports/moh-731/registers/prep-register.component.tsx +70 -78
  132. package/src/reports/moh-731/registers/prep.columns.ts +34 -0
  133. package/src/reports/moh-731/sections/hiv-and-tb-treatment.component.tsx +1031 -751
  134. package/src/reports/moh-731/sections/hiv-testing-and-pre-exposure.component.tsx +230 -86
  135. package/src/reports/moh-731/sections/pmtct.component.tsx +185 -64
  136. package/src/reports/moh-740/moh-740.component.scss +159 -79
  137. package/src/reports/moh-740/moh-740.component.tsx +261 -230
  138. package/src/reports/moh-740/moh-740.resource.ts +17 -10
  139. package/src/reports/moh-740/registers/moh-222-daily-register/moh-222-daily-register.tsx +77 -96
  140. package/src/reports/moh-740/registers/moh-270-permanent-register/moh-270-permanent-register.tsx +50 -70
  141. package/src/reports/moh-740/registers/moh-740-patient-list.tsx +61 -32
  142. package/src/reports/moh-740/registers/moh-740.columns.ts +52 -0
  143. package/src/reports/moh-740/shared/utils/indicator-register-map.ts +3 -3
  144. package/src/reports/moh-740/types/index.ts +3 -3
  145. package/src/reports/moh-745/moh-745.component.tsx +897 -877
  146. package/src/reports/moh-745/moh-745.scss +104 -46
  147. package/src/reports/moh-745/registers/moh-412-register.component.tsx +42 -43
  148. package/src/reports/moh-745/registers/moh-412.columns.ts +52 -0
  149. package/src/reports/table-wrapper/table-wrapper.component.tsx +23 -14
  150. package/src/reports/table-wrapper/table-wrapper.scss +1 -16
  151. package/src/resources/moh-505.resource.ts +18 -35
  152. package/src/resources/moh-705.resource.ts +28 -39
  153. package/src/resources/moh-706.resource.ts +17 -30
  154. package/src/resources/moh-710.resource.ts +7 -17
  155. package/src/resources/moh-711.resource.ts +46 -64
  156. package/src/resources/moh-717.resource.ts +7 -17
  157. package/src/resources/moh-731.resource.ts +26 -32
  158. package/src/resources/moh-745.resource.ts +18 -20
  159. package/src/resources/patient-list-page.ts +66 -0
  160. package/src/root.component.tsx +28 -26
  161. package/src/root.scss +36 -0
  162. package/src/utils/get-base-url.ts +39 -7
  163. package/tsconfig.json +1 -1
  164. package/dist/110.js +0 -1
  165. package/dist/110.js.map +0 -1
  166. package/dist/184.js +0 -2
  167. package/dist/184.js.LICENSE.txt +0 -14
  168. package/dist/184.js.map +0 -1
  169. package/dist/205.js +0 -1
  170. package/dist/205.js.map +0 -1
  171. package/dist/812.js +0 -1
  172. package/dist/812.js.map +0 -1
  173. package/dist/822.js +0 -2
  174. package/dist/822.js.LICENSE.txt +0 -20
  175. package/dist/822.js.map +0 -1
  176. package/dist/ampath-esm-reports-app.js.buildmanifest.json +0 -560
  177. package/dist/main.js +0 -1
  178. package/dist/main.js.map +0 -1
  179. package/src/reports/moh-731/registers/moh-366.scss +0 -45
  180. package/src/reports/moh-731/registers/prep-registers.scss +0 -45
  181. package/src/reports/moh-740/registers/moh-222-daily-register/moh-222-daily-register.scss +0 -18
  182. package/src/reports/moh-740/registers/moh-270-permanent-register/moh-270-permanent-register.scss +0 -18
  183. /package/src/{reports/moh-740/shared/utils → utils}/format-indicator.ts +0 -0
@@ -9,7 +9,7 @@ interface PostAbortionProps {
9
9
 
10
10
  const PostAbortion: React.FC<PostAbortionProps> = ({ moh711Data }) => {
11
11
  return (
12
- <>
12
+ <div className={styles.section}>
13
13
  <table className={classNames(`${styles.table}`, `${styles.tableBordered}`, `${styles.tableStriped}`)}>
14
14
  <thead>
15
15
  <tr>
@@ -35,7 +35,7 @@ const PostAbortion: React.FC<PostAbortionProps> = ({ moh711Data }) => {
35
35
  </tr>
36
36
  </tbody>
37
37
  </table>
38
- </>
38
+ </div>
39
39
  );
40
40
  };
41
41
 
@@ -9,7 +9,7 @@ interface RehabilitationComponentProps {
9
9
 
10
10
  const RehabilitationComponent: React.FC<RehabilitationComponentProps> = ({ moh711Data }) => {
11
11
  return (
12
- <>
12
+ <div className={styles.section}>
13
13
  <table className={classNames(`${styles.table}`, `${styles.tableBordered}`, `${styles.tableStriped}`)}>
14
14
  <thead>
15
15
  <tr>
@@ -50,7 +50,7 @@ const RehabilitationComponent: React.FC<RehabilitationComponentProps> = ({ moh71
50
50
  </tr>
51
51
  </tbody>
52
52
  </table>
53
- </>
53
+ </div>
54
54
  );
55
55
  };
56
56
 
@@ -2,10 +2,18 @@ import React from 'react';
2
2
 
3
3
  import styles from '../moh711.scss';
4
4
  import classNames from 'classnames';
5
+ import { formatDate, useSession } from '@openmrs/esm-framework';
5
6
 
6
7
  const ReportCompiledByComponent: React.FC = () => {
8
+ const session = useSession();
9
+
10
+ /* Who produced the return and when. Designation and signature stay blank --
11
+ those are signed by hand on the printed form. */
12
+ const compiledBy = session?.user?.person?.display ?? session?.user?.display ?? '';
13
+ const compiledOn = formatDate(new Date(), { mode: 'standard', time: false, noToday: true });
14
+
7
15
  return (
8
- <>
16
+ <div className={styles.section}>
9
17
  <table className={classNames(`${styles.table}`, `${styles.tableBordered}`, `${styles.tableStriped}`)}>
10
18
  <thead>
11
19
  <tr>
@@ -16,7 +24,7 @@ const ReportCompiledByComponent: React.FC = () => {
16
24
  <tr>
17
25
  <td></td>
18
26
  <td>Name:</td>
19
- <td className={styles.compiledBy}></td>
27
+ <td className={styles.compiledBy}>{compiledBy}</td>
20
28
  </tr>
21
29
  <tr>
22
30
  <td></td>
@@ -26,7 +34,7 @@ const ReportCompiledByComponent: React.FC = () => {
26
34
  <tr>
27
35
  <td></td>
28
36
  <td>Date:</td>
29
- <td></td>
37
+ <td className={styles.compiledBy}>{compiledOn}</td>
30
38
  </tr>
31
39
  <tr>
32
40
  <td></td>
@@ -35,7 +43,7 @@ const ReportCompiledByComponent: React.FC = () => {
35
43
  </tr>
36
44
  </tbody>
37
45
  </table>
38
- </>
46
+ </div>
39
47
  );
40
48
  };
41
49
 
@@ -9,7 +9,7 @@ interface TBScreeningProps {
9
9
 
10
10
  const TBScreeningComponent: React.FC<TBScreeningProps> = ({ moh711Data }) => {
11
11
  return (
12
- <>
12
+ <div className={styles.section}>
13
13
  <table className={classNames(`${styles.table}`, `${styles.tableBordered}`, `${styles.tableStriped}`)}>
14
14
  <thead>
15
15
  <tr>
@@ -50,7 +50,7 @@ const TBScreeningComponent: React.FC<TBScreeningProps> = ({ moh711Data }) => {
50
50
  </tr>
51
51
  </tbody>
52
52
  </table>
53
- </>
53
+ </div>
54
54
  );
55
55
  };
56
56
 
@@ -1,11 +1,13 @@
1
1
  import React, { useEffect, useState } from 'react';
2
- import ReportFiltersComponent from '../../common/report-filters/report-filters.component';
2
+ import { ReportFiltersComponent, type ReportPeriod } from '../../common/report-filters';
3
+ import { showReportError } from '../../common/report-error';
4
+ import { hasReportData, ReportPlaceholder } from '../../common/report-placeholder';
3
5
 
4
6
  import styles from './moh717.scss';
5
7
  import classNames from 'classnames';
6
8
  import { useSession } from '@openmrs/esm-framework';
9
+ import dayjs from 'dayjs';
7
10
  import { getMoh717 } from '../../resources/moh-717.resource';
8
- import { Loading } from '@carbon/react';
9
11
  import OutpatientComponent from './sections/outpatient.component';
10
12
  import InpatientComponent from './sections/inpatient.component';
11
13
  import MaternityComponent from './sections/maternity.component';
@@ -17,14 +19,15 @@ import MortuaryComponent from './sections/mortuary.component';
17
19
  import MedicalRecordsComponent from './sections/medical-records.component';
18
20
  import FinanceComponent from './sections/finance.component';
19
21
  import PreparedbyComponent from './sections/preparedby.component';
20
- import { type ReportFilters } from '../moh-705a/type';
22
+ import { ReportSkeleton } from '../../common/report-skeleton';
23
+ import { ReportPage } from '../../common/report-page';
21
24
 
22
25
  const Moh717Report: React.FC = () => {
23
- let errorMessage: string = '';
24
26
  const [moh717ReportData, setMoh717ReportData] = useState<any>(() => {
25
27
  const saved = sessionStorage.getItem('moh717ReportData');
26
28
  return saved ? JSON.parse(saved) : [];
27
29
  });
30
+ const isReportGenerated = hasReportData(moh717ReportData);
28
31
  const [isLoading, setIsLoading] = useState<boolean>(false);
29
32
  const [startDate, setStartDate] = useState<string>(() => {
30
33
  return sessionStorage.getItem('moh717StartDate') || '';
@@ -48,36 +51,15 @@ const Moh717Report: React.FC = () => {
48
51
  const session = useSession();
49
52
  const locationUuid = session?.sessionLocation?.uuid;
50
53
 
51
- const getReportParams = (filters: ReportFilters) => {
52
- let { startDate: sDate, endDate: eDate } = filters;
54
+ /* The masthead fills itself in, as on the other reports */
55
+ const facility = session?.sessionLocation?.display ?? '';
56
+ const reportMonth = startDate ? dayjs(startDate).format('MMMM') : '';
57
+ const reportYear = startDate ? dayjs(startDate).format('YYYY') : '';
53
58
 
54
- if (filters.month) {
55
- const [year, monthIndex] = filters.month.split('-').map(Number);
56
-
57
- const start = new Date(year, monthIndex - 1, 1);
58
- const end = new Date(year, monthIndex, 0);
59
-
60
- const formatLocalDate = (d: Date) => {
61
- const y = d.getFullYear();
62
- const m = String(d.getMonth() + 1).padStart(2, '0');
63
- const day = String(d.getDate()).padStart(2, '0');
64
- return `${y}-${m}-${day}`;
65
- };
66
-
67
- sDate = formatLocalDate(start);
68
- eDate = formatLocalDate(end);
69
- }
70
-
71
- setStartDate(sDate || '');
72
- setEndDate(eDate || '');
73
-
74
- return { startDate: sDate, endDate: eDate };
75
- };
76
-
77
- const fetchMoh717ReportData = async (filters: { startDate?: string; endDate?: string; month?: string }) => {
59
+ const fetchMoh717ReportData = async ({ startDate, endDate }: ReportPeriod) => {
78
60
  setIsLoading(true);
79
-
80
- const { startDate, endDate } = getReportParams(filters);
61
+ setStartDate(startDate);
62
+ setEndDate(endDate);
81
63
 
82
64
  const params = {
83
65
  locationUuids: locationUuid || '',
@@ -91,107 +73,104 @@ const Moh717Report: React.FC = () => {
91
73
  setIsLoading(false);
92
74
  } catch (error) {
93
75
  setIsLoading(false);
94
- errorMessage = error instanceof Error ? error.message : String(error);
95
- throw new Error(`Failed to fetch MOH-717 report data: ${error instanceof Error ? error.message : String(error)}`);
76
+ showReportError('the MOH-717 report', error);
96
77
  }
97
78
  };
98
79
  return (
99
80
  <>
100
81
  <ReportFiltersComponent
101
82
  reportName="MOH-717 Report"
102
- mode="monthly"
83
+ mode="both"
103
84
  onGenerate={fetchMoh717ReportData}
104
- isLoding={isLoading}
85
+ isLoading={isLoading}
86
+ isReportGenerated={isReportGenerated}
87
+ generatedPeriod={{ startDate, endDate }}
105
88
  />
106
- {isLoading && <Loading description="Fetching data...." />}
107
- {!isLoading && errorMessage && (
108
- <div>
109
- <a href="#" className="close" data-dismiss="alert">
110
- &times;
111
- </a>
112
- <h4>
113
- <strong>
114
- <span className="glyphicon glyphicon-warning-sign"></span>{' '}
115
- </strong>{' '}
116
- An error occurred while trying to load the report. Please try again.
117
- </h4>
118
- <p>
119
- <small>{errorMessage}</small>
120
- </p>
121
- </div>
122
- )}
123
- <div className={styles.headerContainer}>
124
- <div className={styles.mainTitleBox}>
125
- <h2 className={styles.mainTitle}>Ministry of Health</h2>
126
- <h3 className={styles.subTitle}>Monthly Service Workload Report for Health Facilities</h3>
127
- <div className={styles.locationContainer}>
128
- <span>
129
- County: <span className={styles.shortLine}></span>
130
- </span>
131
- <span>
132
- Sub-County: <span className={styles.shortLine}></span>
133
- </span>
134
- <span>
135
- Health Facility: <span className={styles.shortLine}></span>
136
- </span>
137
- </div>
138
- <div className={styles.locationContainer}>
139
- <span>
140
- Month: <span className={styles.shortLine}></span>
141
- </span>
142
- <span>
143
- Year: <span className={styles.shortLine}></span>
144
- </span>
145
- <span>
146
- KMHFL Code: <span className={styles.shortLine}></span>
147
- </span>
148
- </div>
149
- </div>
150
- </div>
151
- <div className={styles.container}>
152
- <div className={styles.section}>
153
- <OutpatientComponent
154
- moh717ReportData={moh717ReportData}
155
- startDate={startDate}
156
- endDate={endDate}
157
- locationUuids={locationUuid!}
158
- />
159
- </div>
160
- <InpatientComponent moh717ReportData={moh717ReportData} />
161
- <div className={styles.sectionContainer}>
162
- <div className={styles.left}>
163
- <MaternityComponent
164
- moh717ReportData={moh717ReportData}
165
- startDate={startDate}
166
- endDate={endDate}
167
- locationUuids={locationUuid!}
168
- />
89
+ {isLoading && <ReportSkeleton />}
90
+ {!isLoading && !isReportGenerated && <ReportPlaceholder reportName="MOH-717" />}
91
+ {!isLoading && isReportGenerated && (
92
+ <ReportPage>
93
+ <div className={styles.headerContainer}>
94
+ <div className={styles.mainTitleBox}>
95
+ <h2 className={styles.mainTitle}>Ministry of Health</h2>
96
+ <h3 className={styles.subTitle}>Monthly Service Workload Report for Health Facilities</h3>
97
+ <div className={styles.locationContainer}>
98
+ <span>
99
+ County: <span className={styles.shortLine}></span>
100
+ </span>
101
+ <span>
102
+ Sub-County: <span className={styles.shortLine}></span>
103
+ </span>
104
+ <span>
105
+ Health Facility: <span className={styles.line}>{facility}</span>
106
+ </span>
107
+ </div>
108
+ <div className={styles.locationContainer}>
109
+ <span>
110
+ Month: <span className={styles.shortLine}>{reportMonth}</span>
111
+ </span>
112
+ <span>
113
+ Year: <span className={styles.shortLine}>{reportYear}</span>
114
+ </span>
115
+ <span>
116
+ KMHFL Code: <span className={styles.shortLine}></span>
117
+ </span>
118
+ </div>
119
+ </div>
169
120
  </div>
170
- <div className={styles.right}>
171
- <OperationsComponent moh717ReportData={moh717ReportData} />
121
+ <div className={styles.container}>
172
122
  <div className={styles.section}>
173
- <OrthopaedicTraumaComponent moh717ReportData={moh717ReportData} />
123
+ <OutpatientComponent
124
+ moh717ReportData={moh717ReportData}
125
+ startDate={startDate}
126
+ endDate={endDate}
127
+ locationUuids={locationUuid!}
128
+ />
129
+ </div>
130
+ <div className={styles.section}>
131
+ <InpatientComponent moh717ReportData={moh717ReportData} />
132
+ </div>
133
+ <div className={styles.sectionContainer}>
134
+ <div className={styles.left}>
135
+ <MaternityComponent
136
+ moh717ReportData={moh717ReportData}
137
+ startDate={startDate}
138
+ endDate={endDate}
139
+ locationUuids={locationUuid!}
140
+ />
141
+ </div>
142
+ <div className={styles.right}>
143
+ <div className={styles.section}>
144
+ <OperationsComponent moh717ReportData={moh717ReportData} />
145
+ </div>
146
+ <div className={styles.section}>
147
+ <OrthopaedicTraumaComponent moh717ReportData={moh717ReportData} />
148
+ </div>
149
+ </div>
150
+ </div>
151
+ <div className={styles.section}>
152
+ <SpecialServicesComponent moh717ReportData={moh717ReportData} />
153
+ </div>
154
+ <div className={styles.sectionTwoContainer}>
155
+ <div className={styles.one}>
156
+ <PharmacyComponent moh717ReportData={moh717ReportData} />
157
+ </div>
158
+ <div className={styles.two}>
159
+ <MortuaryComponent moh717ReportData={moh717ReportData} />
160
+ </div>
161
+ <div className={styles.three}>
162
+ <MedicalRecordsComponent moh717ReportData={moh717ReportData} />
163
+ </div>
164
+ </div>
165
+ <div className={styles.section}>
166
+ <FinanceComponent moh717ReportData={moh717ReportData} />
167
+ </div>
168
+ <div className={styles.preparedByContainer}>
169
+ <PreparedbyComponent />
174
170
  </div>
175
171
  </div>
176
- </div>
177
- <SpecialServicesComponent moh717ReportData={moh717ReportData} />
178
- <div className={styles.sectionTwoContainer}>
179
- <div className={styles.one}>
180
- <PharmacyComponent moh717ReportData={moh717ReportData} />
181
- </div>
182
- <div className={styles.two}>
183
- <MortuaryComponent moh717ReportData={moh717ReportData} />
184
- </div>
185
- <div className={styles.three}>
186
- <MedicalRecordsComponent moh717ReportData={moh717ReportData} />
187
- </div>
188
- </div>
189
-
190
- <FinanceComponent moh717ReportData={moh717ReportData} />
191
- <div className={styles.preparedByContainer}>
192
- <PreparedbyComponent />
193
- </div>
194
- </div>
172
+ </ReportPage>
173
+ )}
195
174
  </>
196
175
  );
197
176
  };