@ampath/esm-reports-app 1.0.0-next.4 → 1.0.0-next.40

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 (131) hide show
  1. package/dist/110.js +1 -0
  2. package/dist/110.js.map +1 -0
  3. package/dist/{260.js → 205.js} +1 -1
  4. package/dist/{260.js.map → 205.js.map} +1 -1
  5. package/dist/812.js +1 -1
  6. package/dist/812.js.map +1 -1
  7. package/dist/822.js +2 -0
  8. package/dist/822.js.map +1 -0
  9. package/dist/ampath-esm-reports-app.js +1 -1
  10. package/dist/ampath-esm-reports-app.js.buildmanifest.json +95 -74
  11. package/dist/ampath-esm-reports-app.js.map +1 -1
  12. package/dist/main.js +1 -1
  13. package/dist/main.js.map +1 -1
  14. package/dist/routes.json +1 -1
  15. package/package.json +1 -1
  16. package/src/common/report-filters/report-filters.component.tsx +5 -1
  17. package/src/dashboard/reports-dasboard.tsx +21 -0
  18. package/src/reports/datatable-wrapper/datatable-wrapper.component.tsx +54 -0
  19. package/src/reports/moh-240/moh-240-header.component.tsx +61 -0
  20. package/src/reports/moh-240/moh-240.component.tsx +93 -0
  21. package/src/reports/moh-240/moh-240.scss +11 -0
  22. package/src/reports/moh-240/sub-reports/moh-240-register.component.tsx +75 -0
  23. package/src/reports/moh-240/sub-reports/page-summary.component.tsx +98 -0
  24. package/src/reports/moh-505/moh-505-header.component.tsx +62 -0
  25. package/src/reports/moh-505/moh-505.component.tsx +440 -0
  26. package/src/reports/moh-505/moh-505.scss +3 -0
  27. package/src/reports/moh-705B/moh-204b-register.component.tsx +236 -0
  28. package/src/reports/moh-705B/moh-705b.component.tsx +524 -0
  29. package/src/reports/moh-705B/moh-705b.scss +44 -0
  30. package/src/reports/moh-705a/moh-705a.component.tsx +528 -0
  31. package/src/reports/moh-705a/moh-705a.scss +45 -0
  32. package/src/reports/moh-705a/registers/moh-204a-register.component.tsx +321 -0
  33. package/src/reports/moh-705a/type.ts +6 -0
  34. package/src/reports/moh-706/moh-706-header.component.tsx +61 -0
  35. package/src/reports/moh-706/moh-706.component.tsx +117 -0
  36. package/src/reports/moh-706/moh-706.scss +30 -0
  37. package/src/reports/moh-706/sub-reports/bacteriology/bacteriology.component.tsx +124 -0
  38. package/src/reports/moh-706/sub-reports/blood-chemistry/blood-chemistry.component.tsx +318 -0
  39. package/src/reports/moh-706/sub-reports/drug-susceptibility-testing/drug-susceptibility-testing.component.tsx +137 -0
  40. package/src/reports/moh-706/sub-reports/haematology/haematology.component.tsx +179 -0
  41. package/src/reports/moh-706/sub-reports/histology-and-cytology/histology-and-cytology.component.tsx +88 -0
  42. package/src/reports/moh-706/sub-reports/parasitology/parasitology.component.tsx +121 -0
  43. package/src/reports/moh-706/sub-reports/serology/serology.component.tsx +47 -0
  44. package/src/reports/moh-706/sub-reports/specimen-referral-to-higher-levels/specimen-referral-to-higher-levels.component.tsx +39 -0
  45. package/src/reports/moh-706/sub-reports/urine-analysis/urine-analysis.component.tsx +108 -0
  46. package/src/reports/moh-710/moh-710.component.tsx +211 -79
  47. package/src/reports/moh-710/moh-710.scss +5 -1
  48. package/src/reports/moh-710/registers/moh-511-710-register.component.tsx +263 -0
  49. package/src/reports/moh-710/registers/type.ts +31 -0
  50. package/src/reports/moh-711/moh-711.component.tsx +109 -1234
  51. package/src/reports/moh-711/moh711.scss +92 -8
  52. package/src/reports/moh-711/registers/moh-333-register.component.tsx +639 -0
  53. package/src/reports/moh-711/registers/moh-405-register.component.tsx +521 -0
  54. package/src/reports/moh-711/registers/moh-406-register.component.tsx +533 -0
  55. package/src/reports/moh-711/registers/moh-510-register.component.tsx +61 -0
  56. package/src/reports/moh-711/registers/moh-511-register.component.tsx +271 -0
  57. package/src/reports/moh-711/registers/type.ts +192 -0
  58. package/src/reports/moh-711/sections/anc.component.tsx +159 -0
  59. package/src/reports/moh-711/sections/cervical-cancer.component.tsx +148 -0
  60. package/src/reports/moh-711/sections/chanis.component.tsx +367 -0
  61. package/src/reports/moh-711/sections/family-planning.component.tsx +221 -0
  62. package/src/reports/moh-711/sections/gbv.component.tsx +115 -0
  63. package/src/reports/moh-711/sections/maternity.component.tsx +326 -0
  64. package/src/reports/moh-711/sections/medical-social-work.component.tsx +83 -0
  65. package/src/reports/moh-711/sections/other.component.tsx +47 -0
  66. package/src/reports/moh-711/sections/physiotherapy.component.tsx +61 -0
  67. package/src/reports/moh-711/sections/pnc.component.tsx +125 -0
  68. package/src/reports/moh-711/sections/post-abortion.component.tsx +42 -0
  69. package/src/reports/moh-711/sections/rehabilitation.component.tsx +57 -0
  70. package/src/reports/moh-711/sections/report-compiled-by.component.tsx +42 -0
  71. package/src/reports/moh-711/sections/tb-screening.component.tsx +57 -0
  72. package/src/reports/moh-717/moh-717.component.tsx +120 -946
  73. package/src/reports/moh-717/moh717.scss +138 -3
  74. package/src/reports/moh-717/registers/nutrition-register.component.tsx +48 -0
  75. package/src/reports/moh-717/sections/finance.component.tsx +42 -0
  76. package/src/reports/moh-717/sections/inpatient.component.tsx +374 -0
  77. package/src/reports/moh-717/sections/maternity.component.tsx +126 -0
  78. package/src/reports/moh-717/sections/medical-records.component.tsx +35 -0
  79. package/src/reports/moh-717/sections/mortuary.component.tsx +43 -0
  80. package/src/reports/moh-717/sections/operations.component.tsx +53 -0
  81. package/src/reports/moh-717/sections/orthopaedic-trauma.component.tsx +98 -0
  82. package/src/reports/moh-717/sections/outpatient.component.tsx +597 -0
  83. package/src/reports/moh-717/sections/pharmacy.component.tsx +43 -0
  84. package/src/reports/moh-717/sections/preparedby.component.tsx +47 -0
  85. package/src/reports/moh-717/sections/special-services.component.tsx +114 -0
  86. package/src/reports/moh-731/moh-731.component.tsx +181 -0
  87. package/src/reports/moh-731/moh-731.scss +118 -0
  88. package/src/reports/moh-731/registers/moh-366.component.tsx +478 -0
  89. package/src/reports/moh-731/registers/moh-366.scss +45 -0
  90. package/src/reports/moh-731/registers/prep-register.component.tsx +292 -0
  91. package/src/reports/moh-731/registers/prep-registers.scss +45 -0
  92. package/src/reports/moh-731/sections/hiv-and-tb-treatment.component.tsx +932 -0
  93. package/src/reports/moh-731/sections/hiv-testing-and-pre-exposure.component.tsx +569 -0
  94. package/src/reports/moh-731/sections/pmtct.component.tsx +451 -0
  95. package/src/reports/moh-740/moh-740.component.scss +120 -0
  96. package/src/reports/moh-740/moh-740.component.tsx +1271 -0
  97. package/src/reports/moh-740/moh-740.resource.ts +42 -0
  98. package/src/reports/moh-740/registers/moh-222-daily-register/moh-222-daily-register.scss +18 -0
  99. package/src/reports/moh-740/registers/moh-222-daily-register/moh-222-daily-register.tsx +104 -0
  100. package/src/reports/moh-740/registers/moh-270-permanent-register/moh-270-permanent-register.scss +18 -0
  101. package/src/reports/moh-740/registers/moh-270-permanent-register/moh-270-permanent-register.tsx +79 -0
  102. package/src/reports/moh-740/registers/moh-740-patient-list.scss +0 -0
  103. package/src/reports/moh-740/registers/moh-740-patient-list.tsx +66 -0
  104. package/src/reports/moh-740/shared/data-cell/data-cell.scss +6 -0
  105. package/src/reports/moh-740/shared/data-cell/data-cell.tsx +23 -0
  106. package/src/reports/moh-740/shared/utils/format-indicator.ts +22 -0
  107. package/src/reports/moh-740/shared/utils/indicator-register-map.ts +157 -0
  108. package/src/reports/moh-740/types/index.ts +216 -0
  109. package/src/reports/moh-745/moh-745.component.tsx +928 -0
  110. package/src/reports/moh-745/moh-745.scss +74 -0
  111. package/src/reports/moh-745/registers/moh-412-register.component.tsx +191 -0
  112. package/src/reports/moh-745/registers/type.ts +30 -0
  113. package/src/reports/table-wrapper/table-row-mapper.component.tsx +53 -0
  114. package/src/reports/table-wrapper/table-wrapper.component.tsx +21 -0
  115. package/src/reports/table-wrapper/table-wrapper.scss +31 -0
  116. package/src/resources/moh-505.resource.ts +86 -0
  117. package/src/resources/moh-705.resource.ts +117 -0
  118. package/src/resources/moh-706.resource.ts +86 -0
  119. package/src/resources/moh-710.resource.ts +28 -0
  120. package/src/resources/moh-711.resource.ts +146 -0
  121. package/src/resources/moh-717.resource.ts +27 -0
  122. package/src/resources/moh-731.resource.ts +96 -0
  123. package/src/resources/moh-745.resource.ts +64 -0
  124. package/src/root.component.tsx +39 -0
  125. package/src/routes.json +3 -1
  126. package/src/utils/utils.ts +36 -0
  127. package/dist/367.js +0 -2
  128. package/dist/367.js.map +0 -1
  129. package/dist/86.js +0 -1
  130. package/dist/86.js.map +0 -1
  131. /package/dist/{367.js.LICENSE.txt → 822.js.LICENSE.txt} +0 -0
@@ -0,0 +1,928 @@
1
+ import React, { useState } from 'react';
2
+ import ReportFiltersComponent from '../../common/report-filters/report-filters.component';
3
+
4
+ import styles from './moh-745.scss';
5
+ import classNames from 'classnames';
6
+ import { useSession } from '@openmrs/esm-framework';
7
+ import { Loading } from '@carbon/react';
8
+ import { getMoh745 } from '../../resources/moh-745.resource';
9
+ import { useNavigate } from 'react-router-dom';
10
+ import { type ReportFilters } from '../moh-705a/type';
11
+
12
+ const Moh745Component: React.FC = () => {
13
+ let errorMessage: string = '';
14
+ const [moh745Data, setMoh745Data] = useState<any>([]);
15
+ const [isLoading, setIsLoading] = useState<boolean>(false);
16
+ const [startDate, setStartDate] = useState<string>('');
17
+ const [endDate, setEndDate] = useState<string>('');
18
+
19
+ const session = useSession();
20
+ const locationUuids = session?.sessionLocation?.uuid;
21
+
22
+ const navigate = useNavigate();
23
+
24
+ const getReportParams = (filters: ReportFilters) => {
25
+ let { startDate: sDate, endDate: eDate } = filters;
26
+
27
+ if (filters.month) {
28
+ const [year, monthIndex] = filters.month.split('-').map(Number);
29
+
30
+ const start = new Date(year, monthIndex - 1, 1);
31
+ const end = new Date(year, monthIndex, 0);
32
+
33
+ const formatLocalDate = (d: Date) => {
34
+ const y = d.getFullYear();
35
+ const m = String(d.getMonth() + 1).padStart(2, '0');
36
+ const day = String(d.getDate()).padStart(2, '0');
37
+ return `${y}-${m}-${day}`;
38
+ };
39
+
40
+ sDate = formatLocalDate(start);
41
+ eDate = formatLocalDate(end);
42
+ }
43
+
44
+ setStartDate(sDate || '');
45
+ setEndDate(eDate || '');
46
+
47
+ return { startDate: sDate, endDate: eDate };
48
+ };
49
+
50
+ const fetchMoh745ReportData = async (filters: { startDate?: string; endDate?: string; month?: string }) => {
51
+ setIsLoading(true);
52
+
53
+ const { startDate, endDate } = getReportParams(filters);
54
+
55
+ const params = {
56
+ locationUuids: locationUuids || '',
57
+ startDate,
58
+ endDate,
59
+ };
60
+ try {
61
+ const data = await getMoh745(params);
62
+ const flatData = Object.assign({}, ...data.result);
63
+ setMoh745Data(flatData);
64
+ setIsLoading(false);
65
+ } catch (error) {
66
+ errorMessage = error instanceof Error ? error.message : String(error);
67
+ setIsLoading(false);
68
+ throw new Error(`Failed to fetch MOH-745 report data: ${error instanceof Error ? error.message : String(error)}`);
69
+ }
70
+ };
71
+
72
+ const navigateToRegister = (indicator?: string) => {
73
+ navigate(
74
+ `/moh-412-register?startDate=${startDate}&endDate=${endDate}&locationUuids=${locationUuids}&indicator=${indicator}`,
75
+ );
76
+ };
77
+ return (
78
+ <>
79
+ <ReportFiltersComponent
80
+ reportName="MOH-745 Report"
81
+ mode="monthly"
82
+ onGenerate={fetchMoh745ReportData}
83
+ isLoding={isLoading}
84
+ />
85
+ {isLoading && <Loading description="Fetching data...." />}
86
+ {!isLoading && errorMessage && (
87
+ <div>
88
+ <a href="#" className="close" data-dismiss="alert">
89
+ &times;
90
+ </a>
91
+ <h4>
92
+ <strong>
93
+ <span className="glyphicon glyphicon-warning-sign"></span>{' '}
94
+ </strong>{' '}
95
+ An error occurred while trying to load the report. Please try again.
96
+ </h4>
97
+ <p>
98
+ <small>{errorMessage}</small>
99
+ </p>
100
+ </div>
101
+ )}
102
+ <h3>CANCER SCREENING MONTHLY SUMMARY FORM</h3>
103
+ <div className={styles.location}>
104
+ <span>
105
+ Facility Name: <span className={styles.line}></span>
106
+ </span>
107
+ <span>
108
+ Facility Code: <span className={styles.line}></span>
109
+ </span>
110
+ <span>
111
+ County: <span className={styles.shortLine}></span>
112
+ </span>
113
+ <span>
114
+ Sub-County: <span className={styles.shortLine}></span>
115
+ </span>
116
+ <span>
117
+ Month: <span className={styles.shortLine}></span>
118
+ </span>
119
+ <span>
120
+ Year: <span className={styles.shortLine}></span>
121
+ </span>
122
+ </div>
123
+ <div className={styles.tableContainer}>
124
+ <table className={classNames(`${styles.table}`, `${styles.tableBordered}`, `${styles.tableStriped}`)}>
125
+ <thead>
126
+ <tr>
127
+ <th colSpan={14}>CERVICAL CANCER SCREENING SUMMARY</th>
128
+ </tr>
129
+ <tr>
130
+ <th rowSpan={2}>
131
+ INDICATORS
132
+ <br />
133
+ <span>
134
+ (Use the page Tally/Summary from the Cancer Screening Register
135
+ <br /> to complete the report)
136
+ </span>
137
+ </th>
138
+ <th colSpan={4}>1) Initial Screening</th>
139
+ <th colSpan={4}>2) Routine Screening</th>
140
+ <th colSpan={4}>3) Post-treatment Screening</th>
141
+ <th rowSpan={2} className={styles.rotateUp}>
142
+ Total no. of Clients <br />
143
+ <span>
144
+ (Initial + Routine <br />+<br /> Post Treatment)
145
+ </span>
146
+ </th>
147
+ </tr>
148
+ <tr>
149
+ <td className={styles.rotateUp}>&lt;25 years</td>
150
+ <td className={styles.rotateUp}>25 - 49 years</td>
151
+ <td className={styles.rotateUp}>
152
+ 50 years and <br />
153
+ above
154
+ </td>
155
+ <td className={styles.rotateUp}>
156
+ Total (Initial <br /> screening)
157
+ </td>
158
+ <td className={styles.rotateUp}>&lt;25 years</td>
159
+ <td className={styles.rotateUp}>25 - 49 years</td>
160
+ <td className={styles.rotateUp}>
161
+ 50 years and <br />
162
+ above
163
+ </td>
164
+ <td className={styles.rotateUp}>
165
+ Total (Routine <br /> screening)
166
+ </td>
167
+ <td className={styles.rotateUp}>&lt;25 years</td>
168
+ <td className={styles.rotateUp}>25 - 49 years</td>
169
+ <td className={styles.rotateUp}>
170
+ 50 years and <br />
171
+ above
172
+ </td>
173
+ <td className={styles.rotateUp}>
174
+ Total (Post- <br />
175
+ treatment <br /> screening)
176
+ </td>
177
+ </tr>
178
+ </thead>
179
+ <tbody>
180
+ <tr>
181
+ <td>1 a) Number of clients who received VIA or VIA/VILLI Screening</td>
182
+ <td onClick={() => navigateToRegister('via_villi_less_25_initial_screening')}>
183
+ {moh745Data.via_villi_less_25_initial_screening}
184
+ </td>
185
+ <td onClick={() => navigateToRegister('via_villi_25_49_initial_screening')}>
186
+ {moh745Data.via_villi_25_49_initial_screening}
187
+ </td>
188
+ <td onClick={() => navigateToRegister('via_villi_50_above_initial_screening')}>
189
+ {moh745Data.via_villi_50_above_initial_screening}
190
+ </td>
191
+ <td></td>
192
+ <td onClick={() => navigateToRegister('via_villi_less_25_routine_screening')}>
193
+ {moh745Data.via_villi_less_25_routine_screening}
194
+ </td>
195
+ <td onClick={() => navigateToRegister('via_villi_25_49_routine_screening')}>
196
+ {moh745Data.via_villi_25_49_routine_screening}
197
+ </td>
198
+ <td onClick={() => navigateToRegister('via_villi_50_above_routine_screening')}>
199
+ {moh745Data.via_villi_50_above_routine_screening}
200
+ </td>
201
+ <td></td>
202
+ <td onClick={() => navigateToRegister('via_villi_less_25_post_treatment_screening')}>
203
+ {moh745Data.via_villi_less_25_post_treatment_screening}
204
+ </td>
205
+ <td onClick={() => navigateToRegister('via_villi_25_49_post_treatment_screening')}>
206
+ {moh745Data.via_villi_25_49_post_treatment_screening}
207
+ </td>
208
+ <td onClick={() => navigateToRegister('via_villi_50_above_post_treatment_screening')}>
209
+ {moh745Data.via_villi_50_above_post_treatment_screening}
210
+ </td>
211
+ <td></td>
212
+ <td onClick={() => navigateToRegister('via_villi_total')}>{moh745Data.via_villi_total}</td>
213
+ </tr>
214
+ <tr>
215
+ <td> b) Number of clients who received Pap smear</td>
216
+ <td onClick={() => navigateToRegister('pap_smear_less_25_initial_screening')}>
217
+ {moh745Data.pap_smear_less_25_initial_screening}
218
+ </td>
219
+ <td onClick={() => navigateToRegister('pap_smear_25_49_initial_screening')}>
220
+ {moh745Data.pap_smear_25_49_initial_screening}
221
+ </td>
222
+ <td onClick={() => navigateToRegister('pap_smear_50_above_initial_screening')}>
223
+ {moh745Data.pap_smear_50_above_initial_screening}
224
+ </td>
225
+ <td></td>
226
+ <td onClick={() => navigateToRegister('pap_smear_less_25_routine_screening')}>
227
+ {moh745Data.pap_smear_less_25_routine_screening}
228
+ </td>
229
+ <td onClick={() => navigateToRegister('pap_smear_25_49_routine_screening')}>
230
+ {moh745Data.pap_smear_25_49_routine_screening}
231
+ </td>
232
+ <td onClick={() => navigateToRegister('pap_smear_50_above_routine_screening')}>
233
+ {moh745Data.pap_smear_50_above_routine_screening}
234
+ </td>
235
+ <td></td>
236
+ <td onClick={() => navigateToRegister('pap_smear_less_25_post_treatment_screening')}>
237
+ {moh745Data.pap_smear_less_25_post_treatment_screening}
238
+ </td>
239
+ <td onClick={() => navigateToRegister('pap_smear_25_49_post_treatment_screening')}>
240
+ {moh745Data.pap_smear_25_49_post_treatment_screening}
241
+ </td>
242
+ <td onClick={() => navigateToRegister('pap_smear_50_above_post_treatment_screening')}>
243
+ {moh745Data.pap_smear_50_above_post_treatment_screening}
244
+ </td>
245
+ <td></td>
246
+ <td onClick={() => navigateToRegister('pap_smear_total')}>{moh745Data.pap_smear_total}</td>
247
+ </tr>
248
+ <tr>
249
+ <td> c) Number of clients who received HPV Test</td>
250
+ <td onClick={() => navigateToRegister('hpv_test_less_25_initial_screening')}>
251
+ {moh745Data.hpv_test_less_25_initial_screening}
252
+ </td>
253
+ <td onClick={() => navigateToRegister('hpv_test_25_49_initial_screening')}>
254
+ {moh745Data.hpv_test_25_49_initial_screening}
255
+ </td>
256
+ <td onClick={() => navigateToRegister('hpv_test_50_above_initial_screening')}>
257
+ {moh745Data.hpv_test_50_above_initial_screening}
258
+ </td>
259
+ <td></td>
260
+ <td onClick={() => navigateToRegister('hpv_test_less_25_routine_screening')}>
261
+ {moh745Data.hpv_test_less_25_routine_screening}
262
+ </td>
263
+ <td onClick={() => navigateToRegister('hpv_test_25_49_routine_screening')}>
264
+ {moh745Data.hpv_test_25_49_routine_screening}
265
+ </td>
266
+ <td onClick={() => navigateToRegister('hpv_test_50_above_routine_screening')}>
267
+ {moh745Data.hpv_test_50_above_routine_screening}
268
+ </td>
269
+ <td></td>
270
+ <td onClick={() => navigateToRegister('hpv_test_less_25_post_treatment_screening')}>
271
+ {moh745Data.hpv_test_less_25_post_treatment_screening}
272
+ </td>
273
+ <td onClick={() => navigateToRegister('hpv_test_25_49_post_treatment_screening')}>
274
+ {moh745Data.hpv_test_25_49_post_treatment_screening}
275
+ </td>
276
+ <td onClick={() => navigateToRegister('hpv_test_50_above_post_treatment_screening')}>
277
+ {moh745Data.hpv_test_50_above_post_treatment_screening}
278
+ </td>
279
+ <td></td>
280
+ <td onClick={() => navigateToRegister('hpv_test_total')}>{moh745Data.hpv_test_total}</td>
281
+ </tr>
282
+ <tr>
283
+ <td>Total Clients Screened (1 a, b &c Above)</td>
284
+ <td>{}</td>
285
+ <td>{}</td>
286
+ <td>{}</td>
287
+ <td>{}</td>
288
+ <td>{}</td>
289
+ <td>{}</td>
290
+ <td>{}</td>
291
+ <td>{}</td>
292
+ <td>{}</td>
293
+ <td>{}</td>
294
+ <td>{}</td>
295
+ <td>{}</td>
296
+ <td>{}</td>
297
+ </tr>
298
+ <tr>
299
+ <td>2 a) Number of clients with Positive VIA or VIA/VILLI result</td>
300
+ <td onClick={() => navigateToRegister('positive_via_villi_less_25_initial_screening')}>
301
+ {moh745Data.positive_via_villi_less_25_initial_screening}
302
+ </td>
303
+ <td onClick={() => navigateToRegister('positive_via_villi_25_49_initial_screening')}>
304
+ {moh745Data.positive_via_villi_25_49_initial_screening}
305
+ </td>
306
+ <td onClick={() => navigateToRegister('positive_via_villi_50_above_initial_screening')}>
307
+ {moh745Data.positive_via_villi_50_above_initial_screening}
308
+ </td>
309
+ <td></td>
310
+ <td onClick={() => navigateToRegister('positive_via_villi_less_25_routine_screening')}>
311
+ {moh745Data.positive_via_villi_less_25_routine_screening}
312
+ </td>
313
+ <td onClick={() => navigateToRegister('positive_via_villi_25_49_routine_screening')}>
314
+ {moh745Data.positive_via_villi_25_49_routine_screening}
315
+ </td>
316
+ <td onClick={() => navigateToRegister('positive_via_villi_50_above_routine_screening')}>
317
+ {moh745Data.positive_via_villi_50_above_routine_screening}
318
+ </td>
319
+ <td></td>
320
+ <td onClick={() => navigateToRegister('positive_via_villi_less_25_post_treatment_screening')}>
321
+ {moh745Data.positive_via_villi_less_25_post_treatment_screening}
322
+ </td>
323
+ <td onClick={() => navigateToRegister('positive_via_villi_25_49_post_treatment_screening')}>
324
+ {moh745Data.positive_via_villi_25_49_post_treatment_screening}
325
+ </td>
326
+ <td onClick={() => navigateToRegister('positive_via_villi_50_above_post_treatment_screening')}>
327
+ {moh745Data.positive_via_villi_50_above_post_treatment_screening}
328
+ </td>
329
+ <td></td>
330
+ <td onClick={() => navigateToRegister('positive_via_villi_total')}>
331
+ {moh745Data.positive_via_villi_total}
332
+ </td>
333
+ </tr>
334
+ <tr>
335
+ <td> b) Number of clients with Positive Cytology result</td>
336
+ <td onClick={() => navigateToRegister('positive_cytology_less_25_initial_screening')}>
337
+ {moh745Data.positive_cytology_less_25_initial_screening}
338
+ </td>
339
+ <td onClick={() => navigateToRegister('positive_cytology_25_49_initial_screening')}>
340
+ {moh745Data.positive_cytology_25_49_initial_screening}
341
+ </td>
342
+ <td onClick={() => navigateToRegister('positive_cytology_50_above_initial_screening')}>
343
+ {moh745Data.positive_cytology_50_above_initial_screening}
344
+ </td>
345
+ <td></td>
346
+ <td onClick={() => navigateToRegister('positive_cytology_less_25_routine_screening')}>
347
+ {moh745Data.positive_cytology_less_25_routine_screening}
348
+ </td>
349
+ <td onClick={() => navigateToRegister('positive_cytology_25_49_routine_screening')}>
350
+ {moh745Data.positive_cytology_25_49_routine_screening}
351
+ </td>
352
+ <td onClick={() => navigateToRegister('positive_cytology_50_above_routine_screening')}>
353
+ {moh745Data.positive_cytology_50_above_routine_screening}
354
+ </td>
355
+ <td></td>
356
+ <td onClick={() => navigateToRegister('positive_cytology_less_25_post_treatment_screening')}>
357
+ {moh745Data.positive_cytology_less_25_post_treatment_screening}
358
+ </td>
359
+ <td onClick={() => navigateToRegister('positive_cytology_25_49_post_treatment_screening')}>
360
+ {moh745Data.positive_cytology_25_49_post_treatment_screening}
361
+ </td>
362
+ <td onClick={() => navigateToRegister('positive_cytology_50_above_post_treatment_screening')}>
363
+ {moh745Data.positive_cytology_50_above_post_treatment_screening}
364
+ </td>
365
+ <td></td>
366
+ <td onClick={() => navigateToRegister('positive_cytology_total')}>
367
+ {moh745Data.positive_cytology_total}
368
+ </td>
369
+ </tr>
370
+ <tr>
371
+ <td> c) Number of clients with Positive HPV result</td>
372
+ <td onClick={() => navigateToRegister('positive_hpv_less_25_initial_screening')}>
373
+ {moh745Data.positive_hpv_less_25_initial_screening}
374
+ </td>
375
+ <td onClick={() => navigateToRegister('positive_hpv_25_49_initial_screening')}>
376
+ {moh745Data.positive_hpv_25_49_initial_screening}
377
+ </td>
378
+ <td onClick={() => navigateToRegister('positive_hpv_50_above_initial_screening')}>
379
+ {moh745Data.positive_hpv_50_above_initial_screening}
380
+ </td>
381
+ <td></td>
382
+ <td onClick={() => navigateToRegister('positive_hpv_less_25_routine_screening')}>
383
+ {moh745Data.positive_hpv_less_25_routine_screening}
384
+ </td>
385
+ <td onClick={() => navigateToRegister('positive_hpv_25_49_routine_screening')}>
386
+ {moh745Data.positive_hpv_25_49_routine_screening}
387
+ </td>
388
+ <td onClick={() => navigateToRegister('positive_hpv_50_above_routine_screening')}>
389
+ {moh745Data.positive_hpv_50_above_routine_screening}
390
+ </td>
391
+ <td></td>
392
+ <td onClick={() => navigateToRegister('positive_hpv_less_25_post_treatment_screening')}>
393
+ {moh745Data.positive_hpv_less_25_post_treatment_screening}
394
+ </td>
395
+ <td onClick={() => navigateToRegister('positive_hpv_25_49_post_treatment_screening')}>
396
+ {moh745Data.positive_hpv_25_49_post_treatment_screening}
397
+ </td>
398
+ <td onClick={() => navigateToRegister('positive_hpv_50_above_post_treatment_screening')}>
399
+ {moh745Data.positive_hpv_50_above_post_treatment_screening}
400
+ </td>
401
+ <td></td>
402
+ <td onClick={() => navigateToRegister('positive_hpv_total')}>{moh745Data.positive_hpv_total}</td>
403
+ </tr>
404
+ <tr>
405
+ <td>Total Clients Screened positive (2 a, b &c Above)</td>
406
+ <td>{}</td>
407
+ <td>{}</td>
408
+ <td>{}</td>
409
+ <td>{}</td>
410
+ <td>{}</td>
411
+ <td>{}</td>
412
+ <td>{}</td>
413
+ <td>{}</td>
414
+ <td>{}</td>
415
+ <td>{}</td>
416
+ <td>{}</td>
417
+ <td>{}</td>
418
+ <td>{}</td>
419
+ </tr>
420
+ <tr>
421
+ <td>3) Number of clients with suspicios cancer lessions </td>
422
+ <td onClick={() => navigateToRegister('suspicious_cancer_lessions_less_25_initial_screening')}>
423
+ {moh745Data.suspicious_cancer_lessions_less_25_initial_screening}
424
+ </td>
425
+ <td onClick={() => navigateToRegister('suspicious_cancer_lessions_25_49_initial_screening')}>
426
+ {moh745Data.suspicious_cancer_lessions_25_49_initial_screening}
427
+ </td>
428
+ <td onClick={() => navigateToRegister('suspicious_cancer_lessions_50_above_initial_screening')}>
429
+ {moh745Data.suspicious_cancer_lessions_50_above_initial_screening}
430
+ </td>
431
+ <td>{}</td>
432
+ <td onClick={() => navigateToRegister('suspicious_cancer_lessions_less_25_routine_screening')}>
433
+ {moh745Data.suspicious_cancer_lessions_less_25_routine_screening}
434
+ </td>
435
+ <td onClick={() => navigateToRegister('suspicious_cancer_lessions_25_49_routine_screening')}>
436
+ {moh745Data.suspicious_cancer_lessions_25_49_routine_screening}
437
+ </td>
438
+ <td onClick={() => navigateToRegister('suspicious_cancer_lessions_50_above_routine_screening')}>
439
+ {moh745Data.suspicious_cancer_lessions_50_above_routine_screening}
440
+ </td>
441
+ <td>{}</td>
442
+ <td onClick={() => navigateToRegister('suspicious_cancer_lessions_less_25_post_treatment_screening')}>
443
+ {moh745Data.suspicious_cancer_lessions_less_25_post_treatment_screening}
444
+ </td>
445
+ <td onClick={() => navigateToRegister('suspicious_cancer_lessions_25_49_post_treatment_screening')}>
446
+ {moh745Data.suspicious_cancer_lessions_25_49_post_treatment_screening}
447
+ </td>
448
+ <td onClick={() => navigateToRegister('suspicious_cancer_lessions_50_above_post_treatment_screening')}>
449
+ {moh745Data.suspicious_cancer_lessions_50_above_post_treatment_screening}
450
+ </td>
451
+ <td>{}</td>
452
+ <td onClick={() => navigateToRegister('suspicious_cancer_lessions_total')}>
453
+ {moh745Data.suspicious_cancer_lessions_total}
454
+ </td>
455
+ </tr>
456
+ <tr>
457
+ <td>4) Number of clients treated using Cryotherapy</td>
458
+ <td onClick={() => navigateToRegister('cryotherapy_treatment_less_25_initial_screening')}>
459
+ {moh745Data.cryotherapy_treatment_less_25_initial_screening}
460
+ </td>
461
+ <td onClick={() => navigateToRegister('cryotherapy_treatment_25_49_initial_screening')}>
462
+ {moh745Data.cryotherapy_treatment_25_49_initial_screening}
463
+ </td>
464
+ <td onClick={() => navigateToRegister('cryotherapy_treatment_50_above_initial_screening')}>
465
+ {moh745Data.cryotherapy_treatment_50_above_initial_screening}
466
+ </td>
467
+ <td>{}</td>
468
+ <td onClick={() => navigateToRegister('cryotherapy_treatment_less_25_routine_screening')}>
469
+ {moh745Data.cryotherapy_treatment_less_25_routine_screening}
470
+ </td>
471
+ <td onClick={() => navigateToRegister('cryotherapy_treatment_25_49_routine_screening')}>
472
+ {moh745Data.cryotherapy_treatment_25_49_routine_screening}
473
+ </td>
474
+ <td onClick={() => navigateToRegister('cryotherapy_treatment_50_above_routine_screening')}>
475
+ {moh745Data.cryotherapy_treatment_50_above_routine_screening}
476
+ </td>
477
+ <td>{}</td>
478
+ <td onClick={() => navigateToRegister('cryotherapy_treatment_less_25_post_treatment_screening')}>
479
+ {moh745Data.cryotherapy_treatment_less_25_post_treatment_screening}
480
+ </td>
481
+ <td onClick={() => navigateToRegister('cryotherapy_treatment_25_49_post_treatment_screening')}>
482
+ {moh745Data.cryotherapy_treatment_25_49_post_treatment_screening}
483
+ </td>
484
+ <td onClick={() => navigateToRegister('cryotherapy_treatment_50_above_post_treatment_screening')}>
485
+ {moh745Data.cryotherapy_treatment_50_above_post_treatment_screening}
486
+ </td>
487
+ <td>{}</td>
488
+ <td onClick={() => navigateToRegister('cryotherapy_treatment_total')}>
489
+ {moh745Data.cryotherapy_treatment_total}
490
+ </td>
491
+ </tr>
492
+ <tr>
493
+ <td>5) Number of clients treated using Thermocoagulation</td>
494
+ <td onClick={() => navigateToRegister('thermocoagulation_treatment_less_25_initial_screening')}>
495
+ {moh745Data.thermocoagulation_treatment_less_25_initial_screening}
496
+ </td>
497
+ <td onClick={() => navigateToRegister('thermocoagulation_treatment_25_49_initial_screening')}>
498
+ {moh745Data.thermocoagulation_treatment_25_49_initial_screening}
499
+ </td>
500
+ <td onClick={() => navigateToRegister('thermocoagulation_treatment_50_above_initial_screening')}>
501
+ {moh745Data.thermocoagulation_treatment_50_above_initial_screening}
502
+ </td>
503
+ <td>{}</td>
504
+ <td onClick={() => navigateToRegister('thermocoagulation_treatment_less_25_routine_screening')}>
505
+ {moh745Data.thermocoagulation_treatment_less_25_routine_screening}
506
+ </td>
507
+ <td onClick={() => navigateToRegister('thermocoagulation_treatment_25_49_routine_screening')}>
508
+ {moh745Data.thermocoagulation_treatment_25_49_routine_screening}
509
+ </td>
510
+ <td onClick={() => navigateToRegister('thermocoagulation_treatment_50_above_routine_screening')}>
511
+ {moh745Data.thermocoagulation_treatment_50_above_routine_screening}
512
+ </td>
513
+ <td>{}</td>
514
+ <td onClick={() => navigateToRegister('thermocoagulation_treatment_less_25_post_treatment_screening')}>
515
+ {moh745Data.thermocoagulation_treatment_less_25_post_treatment_screening}
516
+ </td>
517
+ <td onClick={() => navigateToRegister('thermocoagulation_treatment_25_49_post_treatment_screening')}>
518
+ {moh745Data.thermocoagulation_treatment_25_49_post_treatment_screening}
519
+ </td>
520
+ <td onClick={() => navigateToRegister('via_villi_less_25_initial_screening')}>
521
+ {moh745Data.thermocoagulation_treatment_50_above_post_treatment_screening}
522
+ </td>
523
+ <td>{}</td>
524
+ <td onClick={() => navigateToRegister('thermocoagulation_treatment_total')}>
525
+ {moh745Data.thermocoagulation_treatment_total}
526
+ </td>
527
+ </tr>
528
+ <tr>
529
+ <td>6) Number of clients treated using LEEP</td>
530
+ <td onClick={() => navigateToRegister('leep_treatment_less_25_initial_screening')}>
531
+ {moh745Data.leep_treatment_less_25_initial_screening}
532
+ </td>
533
+ <td onClick={() => navigateToRegister('leep_treatment_25_49_initial_screening')}>
534
+ {moh745Data.leep_treatment_25_49_initial_screening}
535
+ </td>
536
+ <td onClick={() => navigateToRegister('leep_treatment_50_above_initial_screening')}>
537
+ {moh745Data.leep_treatment_50_above_initial_screening}
538
+ </td>
539
+ <td>{}</td>
540
+ <td onClick={() => navigateToRegister('leep_treatment_less_25_routine_screening')}>
541
+ {moh745Data.leep_treatment_less_25_routine_screening}
542
+ </td>
543
+ <td onClick={() => navigateToRegister('leep_treatment_25_49_routine_screening')}>
544
+ {moh745Data.leep_treatment_25_49_routine_screening}
545
+ </td>
546
+ <td onClick={() => navigateToRegister('leep_treatment_50_above_routine_screening')}>
547
+ {moh745Data.leep_treatment_50_above_routine_screening}
548
+ </td>
549
+ <td>{}</td>
550
+ <td onClick={() => navigateToRegister('leep_treatment_less_25_post_treatment_screening')}>
551
+ {moh745Data.leep_treatment_less_25_post_treatment_screening}
552
+ </td>
553
+ <td onClick={() => navigateToRegister('leep_treatment_25_49_post_treatment_screening')}>
554
+ {moh745Data.leep_treatment_25_49_post_treatment_screening}
555
+ </td>
556
+ <td onClick={() => navigateToRegister('leep_treatment_50_above_post_treatment_screening')}>
557
+ {moh745Data.leep_treatment_50_above_post_treatment_screening}
558
+ </td>
559
+ <td>{}</td>
560
+ <td onClick={() => navigateToRegister('leep_treatment_total')}>{moh745Data.leep_treatment_total}</td>
561
+ </tr>
562
+ <tr>
563
+ <td>7) Numeber of other treatment given (e.g Hysterectomy, cone)</td>
564
+ <td onClick={() => navigateToRegister('other_treatment_less_25_initial_screening')}>
565
+ {moh745Data.other_treatment_less_25_initial_screening}
566
+ </td>
567
+ <td onClick={() => navigateToRegister('other_treatment_25_49_initial_screening')}>
568
+ {moh745Data.other_treatment_25_49_initial_screening}
569
+ </td>
570
+ <td onClick={() => navigateToRegister('other_treatment_50_above_initial_screening')}>
571
+ {moh745Data.other_treatment_50_above_initial_screening}
572
+ </td>
573
+ <td>{}</td>
574
+ <td onClick={() => navigateToRegister('other_treatment_less_25_routine_screening')}>
575
+ {moh745Data.other_treatment_less_25_routine_screening}
576
+ </td>
577
+ <td onClick={() => navigateToRegister('other_treatment_25_49_routine_screening')}>
578
+ {moh745Data.other_treatment_25_49_routine_screening}
579
+ </td>
580
+ <td onClick={() => navigateToRegister('other_treatment_50_above_routine_screening')}>
581
+ {moh745Data.other_treatment_50_above_routine_screening}
582
+ </td>
583
+ <td>{}</td>
584
+ <td onClick={() => navigateToRegister('other_treatment_less_25_post_treatment_screening')}>
585
+ {moh745Data.other_treatment_less_25_post_treatment_screening}
586
+ </td>
587
+ <td onClick={() => navigateToRegister('other_treatment_25_49_post_treatment_screening')}>
588
+ {moh745Data.other_treatment_25_49_post_treatment_screening}
589
+ </td>
590
+ <td onClick={() => navigateToRegister('other_treatment_50_above_post_treatment_screening')}>
591
+ {moh745Data.other_treatment_50_above_post_treatment_screening}
592
+ </td>
593
+ <td>{}</td>
594
+ <td onClick={() => navigateToRegister('other_treatment_total')}>{moh745Data.other_treatment_total}</td>
595
+ </tr>
596
+ <tr>
597
+ <td>8) Number of HIV positive clients screened</td>
598
+ <td onClick={() => navigateToRegister('hiv_positive_screened_cervical_cancer_less_25_initial_screening')}>
599
+ {moh745Data.hiv_positive_screened_cervical_cancer_less_25_initial_screening}
600
+ </td>
601
+ <td onClick={() => navigateToRegister('hiv_positive_screened_cervical_cancer_25_49_initial_screening')}>
602
+ {moh745Data.hiv_positive_screened_cervical_cancer_25_49_initial_screening}
603
+ </td>
604
+ <td
605
+ onClick={() => navigateToRegister('hiv_positive_screened_cervical_cancer_50_above_initial_screening')}
606
+ >
607
+ {moh745Data.hiv_positive_screened_cervical_cancer_50_above_initial_screening}
608
+ </td>
609
+ <td>{}</td>
610
+ <td onClick={() => navigateToRegister('hiv_positive_screened_cervical_cancer_less_25_routine_screening')}>
611
+ {moh745Data.hiv_positive_screened_cervical_cancer_less_25_routine_screening}
612
+ </td>
613
+ <td onClick={() => navigateToRegister('hiv_positive_screened_cervical_cancer_25_49_routine_screening')}>
614
+ {moh745Data.hiv_positive_screened_cervical_cancer_25_49_routine_screening}
615
+ </td>
616
+ <td
617
+ onClick={() => navigateToRegister('hiv_positive_screened_cervical_cancer_50_above_routine_screening')}
618
+ >
619
+ {moh745Data.hiv_positive_screened_cervical_cancer_50_above_routine_screening}
620
+ </td>
621
+ <td>{}</td>
622
+ <td
623
+ onClick={() =>
624
+ navigateToRegister('hiv_positive_screened_cervical_cancer_less_25_post_treatment_screening')
625
+ }
626
+ >
627
+ {moh745Data.hiv_positive_screened_cervical_cancer_less_25_post_treatment_screening}
628
+ </td>
629
+ <td
630
+ onClick={() =>
631
+ navigateToRegister('hiv_positive_screened_cervical_cancer_25_49_post_treatment_screening')
632
+ }
633
+ >
634
+ {moh745Data.hiv_positive_screened_cervical_cancer_25_49_post_treatment_screening}
635
+ </td>
636
+ <td
637
+ onClick={() =>
638
+ navigateToRegister('hiv_positive_screened_cervical_cancer_50_above_post_treatment_screening')
639
+ }
640
+ >
641
+ {moh745Data.hiv_positive_screened_cervical_cancer_50_above_post_treatment_screening}
642
+ </td>
643
+ <td>{}</td>
644
+ <td onClick={() => navigateToRegister('hiv_positive_screened_cervical_cancer_total')}>
645
+ {moh745Data.hiv_positive_screened_cervical_cancer_total}
646
+ </td>
647
+ </tr>
648
+ <tr>
649
+ <td>9) Number of HIV positive with positive screening</td>
650
+ <td onClick={() => navigateToRegister('hiv_positive_cervical_cancer_positive_less_25_initial_screening')}>
651
+ {moh745Data.hiv_positive_cervical_cancer_positive_less_25_initial_screening}
652
+ </td>
653
+ <td onClick={() => navigateToRegister('hiv_positive_cervical_cancer_positive_25_49_initial_screening')}>
654
+ {moh745Data.hiv_positive_cervical_cancer_positive_25_49_initial_screening}
655
+ </td>
656
+ <td
657
+ onClick={() => navigateToRegister('hiv_positive_cervical_cancer_positive_50_above_initial_screening')}
658
+ >
659
+ {moh745Data.hiv_positive_cervical_cancer_positive_50_above_initial_screening}
660
+ </td>
661
+ <td>{}</td>
662
+ <td onClick={() => navigateToRegister('hiv_positive_cervical_cancer_positive_less_25_routine_screening')}>
663
+ {moh745Data.hiv_positive_cervical_cancer_positive_less_25_routine_screening}
664
+ </td>
665
+ <td onClick={() => navigateToRegister('hiv_positive_cervical_cancer_positive_25_49_routine_screening')}>
666
+ {moh745Data.hiv_positive_cervical_cancer_positive_25_49_routine_screening}
667
+ </td>
668
+ <td
669
+ onClick={() => navigateToRegister('hiv_positive_cervical_cancer_positive_50_above_routine_screening')}
670
+ >
671
+ {moh745Data.hiv_positive_cervical_cancer_positive_50_above_routine_screening}
672
+ </td>
673
+ <td>{}</td>
674
+ <td
675
+ onClick={() =>
676
+ navigateToRegister('hiv_positive_cervical_cancer_positive_less_25_post_treatment_screening')
677
+ }
678
+ >
679
+ {moh745Data.hiv_positive_cervical_cancer_positive_less_25_post_treatment_screening}
680
+ </td>
681
+ <td
682
+ onClick={() =>
683
+ navigateToRegister('hiv_positive_cervical_cancer_positive_25_49_post_treatment_screening')
684
+ }
685
+ >
686
+ {moh745Data.hiv_positive_cervical_cancer_positive_25_49_post_treatment_screening}
687
+ </td>
688
+ <td
689
+ onClick={() =>
690
+ navigateToRegister('hiv_positive_cervical_cancer_positive_50_above_post_treatment_screening')
691
+ }
692
+ >
693
+ {moh745Data.hiv_positive_cervical_cancer_positive_50_above_post_treatment_screening}
694
+ </td>
695
+ <td>{}</td>
696
+ <td onClick={() => navigateToRegister('hiv_positive_cervical_cancer_positive_total')}>
697
+ {moh745Data.hiv_positive_cervical_cancer_positive_total}
698
+ </td>
699
+ </tr>
700
+ </tbody>
701
+ </table>
702
+ </div>
703
+ <div className={styles.tableContainer}>
704
+ <table className={classNames(`${styles.table}`, `${styles.tableBordered}`, `${styles.tableStriped}`)}>
705
+ <thead>
706
+ <tr>
707
+ <th rowSpan={2}>BREAST CANCER SCREENING SUMMARY</th>
708
+ <th colSpan={13}>Screening Type and Results</th>
709
+ <th rowSpan={2} colSpan={2}>
710
+ FOLLOW UP AND REFERRAL
711
+ </th>
712
+ </tr>
713
+ <tr>
714
+ <th colSpan={3}>CBE</th>
715
+ <th colSpan={5}>Ultrasound - BIRADS</th>
716
+ <th colSpan={5}>Mammogram - BIRADS</th>
717
+ </tr>
718
+ </thead>
719
+ <tbody>
720
+ <tr>
721
+ <td>Client Age</td>
722
+ <td>Normal</td>
723
+ <td>Abnormal</td>
724
+ <td>Total CBEs</td>
725
+ <td>0 to 3</td>
726
+ <td>4</td>
727
+ <td>5</td>
728
+ <td>6</td>
729
+ <td>Total Ultrasounds Done</td>
730
+ <td>0 to 3</td>
731
+ <td>4</td>
732
+ <td>5</td>
733
+ <td>6</td>
734
+ <td>Total Mammograms Done</td>
735
+ <td>No. Followed up</td>
736
+ <td>No. referred out</td>
737
+ </tr>
738
+ <tr>
739
+ <td>25-34 yrs</td>
740
+ <td>{}</td>
741
+ <td>{}</td>
742
+ <td>{}</td>
743
+ <td>{}</td>
744
+ <td>{}</td>
745
+ <td>{}</td>
746
+ <td>{}</td>
747
+ <td>{}</td>
748
+ <td>{}</td>
749
+ <td>{}</td>
750
+ <td>{}</td>
751
+ <td>{}</td>
752
+ <td>{}</td>
753
+ <td>{}</td>
754
+ <td>{}</td>
755
+ </tr>
756
+ <tr>
757
+ <td>35-39 yrs</td>
758
+ <td>{}</td>
759
+ <td>{}</td>
760
+ <td>{}</td>
761
+ <td>{}</td>
762
+ <td>{}</td>
763
+ <td>{}</td>
764
+ <td>{}</td>
765
+ <td>{}</td>
766
+ <td>{}</td>
767
+ <td>{}</td>
768
+ <td>{}</td>
769
+ <td>{}</td>
770
+ <td>{}</td>
771
+ <td>{}</td>
772
+ <td>{}</td>
773
+ </tr>
774
+ <tr>
775
+ <td>40-55 yrs</td>
776
+ <td>{}</td>
777
+ <td>{}</td>
778
+ <td>{}</td>
779
+ <td>{}</td>
780
+ <td>{}</td>
781
+ <td>{}</td>
782
+ <td>{}</td>
783
+ <td>{}</td>
784
+ <td>{}</td>
785
+ <td>{}</td>
786
+ <td>{}</td>
787
+ <td>{}</td>
788
+ <td>{}</td>
789
+ <td>{}</td>
790
+ <td>{}</td>
791
+ </tr>
792
+ <tr>
793
+ <td>56-74 yrs</td>
794
+ <td>{}</td>
795
+ <td>{}</td>
796
+ <td>{}</td>
797
+ <td>{}</td>
798
+ <td>{}</td>
799
+ <td>{}</td>
800
+ <td>{}</td>
801
+ <td>{}</td>
802
+ <td>{}</td>
803
+ <td>{}</td>
804
+ <td>{}</td>
805
+ <td>{}</td>
806
+ <td>{}</td>
807
+ <td>{}</td>
808
+ <td>{}</td>
809
+ </tr>
810
+ <tr>
811
+ <td>&gt; 75 yrs</td>
812
+ <td>{}</td>
813
+ <td>{}</td>
814
+ <td>{}</td>
815
+ <td>{}</td>
816
+ <td>{}</td>
817
+ <td>{}</td>
818
+ <td>{}</td>
819
+ <td>{}</td>
820
+ <td>{}</td>
821
+ <td>{}</td>
822
+ <td>{}</td>
823
+ <td>{}</td>
824
+ <td>{}</td>
825
+ <td>{}</td>
826
+ <td>{}</td>
827
+ </tr>
828
+ <tr>
829
+ <th>Total</th>
830
+ <td>{}</td>
831
+ <td>{}</td>
832
+ <td>{}</td>
833
+ <td>{}</td>
834
+ <td>{}</td>
835
+ <td>{}</td>
836
+ <td>{}</td>
837
+ <td>{}</td>
838
+ <td>{}</td>
839
+ <td>{}</td>
840
+ <td>{}</td>
841
+ <td>{}</td>
842
+ <td>{}</td>
843
+ <td>{}</td>
844
+ <td>{}</td>
845
+ </tr>
846
+ </tbody>
847
+ </table>
848
+ </div>
849
+
850
+ <div className={styles.tableContainer}>
851
+ <table className={classNames(`${styles.table}`, `${styles.tableBordered}`, `${styles.tableStriped}`)}>
852
+ <thead>
853
+ <tr>
854
+ <th rowSpan={2}>COLORECTAL CANCER SCREENING SUMMARY</th>
855
+ <th colSpan={8}>Screening Type and Results</th>
856
+ </tr>
857
+ <tr>
858
+ <th colSpan={3}>FORBT</th>
859
+ <th colSpan={5}>Colonoscopy</th>
860
+ </tr>
861
+ </thead>
862
+ <tbody>
863
+ <tr>
864
+ <td>Client Age</td>
865
+ <td>Positive</td>
866
+ <td>Negative</td>
867
+ <td>Total FORBT Done</td>
868
+ <td>Total No abnormality</td>
869
+ <td>No. With Polyps</td>
870
+ <td>No. With Cancer</td>
871
+ <td>Total No. with other abnormalities</td>
872
+ <td>Total Colonoscopies Done</td>
873
+ </tr>
874
+ <tr>
875
+ <td>45-54 yrs</td>
876
+ <td>{}</td>
877
+ <td>{}</td>
878
+ <td>{}</td>
879
+ <td>{}</td>
880
+ <td>{}</td>
881
+ <td>{}</td>
882
+ <td>{}</td>
883
+ <td>{}</td>
884
+ </tr>
885
+ <tr>
886
+ <td>55-64 yrs</td>
887
+ <td>{}</td>
888
+ <td>{}</td>
889
+ <td>{}</td>
890
+ <td>{}</td>
891
+ <td>{}</td>
892
+ <td>{}</td>
893
+ <td>{}</td>
894
+ <td>{}</td>
895
+ </tr>
896
+ <tr>
897
+ <td>65-75 yrs</td>
898
+ <td>{}</td>
899
+ <td>{}</td>
900
+ <td>{}</td>
901
+ <td>{}</td>
902
+ <td>{}</td>
903
+ <td>{}</td>
904
+ <td>{}</td>
905
+ <td>{}</td>
906
+ </tr>
907
+ </tbody>
908
+ </table>
909
+ </div>
910
+ <div className={styles.location}>
911
+ <span>
912
+ Compiled by: Name <span className={styles.line}></span>
913
+ </span>
914
+ <span>
915
+ Signature <span className={styles.line}></span>
916
+ </span>
917
+ <span>
918
+ Phone no <span className={styles.shortLine}></span>
919
+ </span>
920
+ <span>
921
+ Date <span className={styles.shortLine}></span>
922
+ </span>
923
+ </div>
924
+ </>
925
+ );
926
+ };
927
+
928
+ export default Moh745Component;