@ampath/esm-reports-app 1.0.0-next.3 → 1.0.0-next.30

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 (140) hide show
  1. package/dist/138.js +2 -0
  2. package/dist/138.js.LICENSE.txt +20 -0
  3. package/dist/138.js.map +1 -0
  4. package/dist/184.js +1 -1
  5. package/dist/184.js.map +1 -1
  6. package/dist/205.js +1 -0
  7. package/dist/205.js.map +1 -0
  8. package/dist/282.js +1 -1
  9. package/dist/282.js.LICENSE.txt +3 -3
  10. package/dist/282.js.map +1 -1
  11. package/dist/311.js +1 -0
  12. package/dist/311.js.map +1 -0
  13. package/dist/353.js +1 -2
  14. package/dist/353.js.map +1 -1
  15. package/dist/478.js +2 -0
  16. package/dist/478.js.LICENSE.txt +9 -0
  17. package/dist/478.js.map +1 -0
  18. package/dist/540.js +1 -1
  19. package/dist/540.js.map +1 -1
  20. package/dist/645.js +1 -0
  21. package/dist/645.js.map +1 -0
  22. package/dist/812.js +1 -0
  23. package/dist/812.js.map +1 -0
  24. package/dist/961.js +1 -1
  25. package/dist/961.js.map +1 -1
  26. package/dist/ampath-esm-reports-app.js +1 -1
  27. package/dist/ampath-esm-reports-app.js.buildmanifest.json +174 -99
  28. package/dist/ampath-esm-reports-app.js.map +1 -1
  29. package/dist/main.js +1 -1
  30. package/dist/main.js.map +1 -1
  31. package/dist/routes.json +1 -1
  32. package/package.json +2 -1
  33. package/src/common/report-filters/report-filters.component.tsx +127 -0
  34. package/src/common/report-filters/report-filters.scss +49 -0
  35. package/src/dashboard/reports-dasboard.tsx +38 -1
  36. package/src/dashboard/reports-dashboard.module.scss +14 -0
  37. package/src/index.ts +1 -1
  38. package/src/reports/datatable-wrapper/datatable-wrapper.component.tsx +54 -0
  39. package/src/reports/moh-240/moh-240-header.component.tsx +61 -0
  40. package/src/reports/moh-240/moh-240.component.tsx +68 -0
  41. package/src/reports/moh-240/moh-240.scss +3 -0
  42. package/src/reports/moh-240/sub-reports/moh-240-register.component.tsx +72 -0
  43. package/src/reports/moh-240/sub-reports/page-summary.component.tsx +95 -0
  44. package/src/reports/moh-505/moh-505-header.component.tsx +62 -0
  45. package/src/reports/moh-505/moh-505.component.tsx +240 -0
  46. package/src/reports/moh-505/moh-505.scss +3 -0
  47. package/src/reports/moh-705B/moh-204b-register.component.tsx +235 -0
  48. package/src/reports/moh-705B/moh-705b.component.tsx +524 -0
  49. package/src/reports/moh-705B/moh-705b.scss +44 -0
  50. package/src/reports/moh-705a/moh-705a.component.tsx +528 -0
  51. package/src/reports/moh-705a/moh-705a.scss +45 -0
  52. package/src/reports/moh-705a/registers/moh-204a-register.component.tsx +320 -0
  53. package/src/reports/moh-705a/type.ts +6 -0
  54. package/src/reports/moh-706/moh-706-header.component.tsx +61 -0
  55. package/src/reports/moh-706/moh-706.component.tsx +104 -0
  56. package/src/reports/moh-706/moh-706.scss +30 -0
  57. package/src/reports/moh-706/sub-reports/bacteriology/bacteriology.component.tsx +124 -0
  58. package/src/reports/moh-706/sub-reports/blood-chemistry/blood-chemistry.component.tsx +318 -0
  59. package/src/reports/moh-706/sub-reports/drug-susceptibility-testing/drug-susceptibility-testing.component.tsx +137 -0
  60. package/src/reports/moh-706/sub-reports/haematology/haematology.component.tsx +179 -0
  61. package/src/reports/moh-706/sub-reports/histology-and-cytology/histology-and-cytology.component.tsx +88 -0
  62. package/src/reports/moh-706/sub-reports/parasitology/parasitology.component.tsx +121 -0
  63. package/src/reports/moh-706/sub-reports/serology/serology.component.tsx +47 -0
  64. package/src/reports/moh-706/sub-reports/specimen-referral-to-higher-levels/specimen-referral-to-higher-levels.component.tsx +39 -0
  65. package/src/reports/moh-706/sub-reports/urine-analysis/urine-analysis.component.tsx +108 -0
  66. package/src/reports/moh-710/moh-710.component.tsx +665 -0
  67. package/src/reports/moh-710/moh-710.scss +45 -0
  68. package/src/reports/moh-710/patient-list/moh-710-patient-list.component.tsx +13 -0
  69. package/src/reports/moh-711/moh-711.component.tsx +139 -0
  70. package/src/reports/moh-711/moh711.scss +82 -0
  71. package/src/reports/moh-711/registers/moh-333-register.component.tsx +636 -0
  72. package/src/reports/moh-711/registers/moh-405-register.component.tsx +518 -0
  73. package/src/reports/moh-711/registers/moh-406-register.component.tsx +530 -0
  74. package/src/reports/moh-711/registers/moh-510-register.component.tsx +61 -0
  75. package/src/reports/moh-711/registers/moh-511-register.component.tsx +263 -0
  76. package/src/reports/moh-711/registers/type.ts +194 -0
  77. package/src/reports/moh-711/sections/anc.component.tsx +153 -0
  78. package/src/reports/moh-711/sections/cervical-cancer.component.tsx +104 -0
  79. package/src/reports/moh-711/sections/chanis.component.tsx +367 -0
  80. package/src/reports/moh-711/sections/family-planning.component.tsx +221 -0
  81. package/src/reports/moh-711/sections/gbv.component.tsx +115 -0
  82. package/src/reports/moh-711/sections/maternity.component.tsx +319 -0
  83. package/src/reports/moh-711/sections/medical-social-work.component.tsx +83 -0
  84. package/src/reports/moh-711/sections/other.component.tsx +47 -0
  85. package/src/reports/moh-711/sections/physiotherapy.component.tsx +61 -0
  86. package/src/reports/moh-711/sections/pnc.component.tsx +118 -0
  87. package/src/reports/moh-711/sections/post-abortion.component.tsx +42 -0
  88. package/src/reports/moh-711/sections/rehabilitation.component.tsx +57 -0
  89. package/src/reports/moh-711/sections/report-compiled-by.component.tsx +42 -0
  90. package/src/reports/moh-711/sections/tb-screening.component.tsx +57 -0
  91. package/src/reports/moh-717/moh-717.component.tsx +170 -0
  92. package/src/reports/moh-717/moh717.scss +154 -0
  93. package/src/reports/moh-717/sections/finance.component.tsx +42 -0
  94. package/src/reports/moh-717/sections/inpatient.component.tsx +374 -0
  95. package/src/reports/moh-717/sections/maternity.component.tsx +119 -0
  96. package/src/reports/moh-717/sections/medical-records.component.tsx +35 -0
  97. package/src/reports/moh-717/sections/mortuary.component.tsx +43 -0
  98. package/src/reports/moh-717/sections/operations.component.tsx +53 -0
  99. package/src/reports/moh-717/sections/orthopaedic-trauma.component.tsx +98 -0
  100. package/src/reports/moh-717/sections/outpatient.component.tsx +489 -0
  101. package/src/reports/moh-717/sections/pharmacy.component.tsx +43 -0
  102. package/src/reports/moh-717/sections/preparedby.component.tsx +47 -0
  103. package/src/reports/moh-717/sections/special-services.component.tsx +114 -0
  104. package/src/reports/moh-740/moh-740.component.scss +120 -0
  105. package/src/reports/moh-740/moh-740.component.tsx +1263 -0
  106. package/src/reports/moh-740/moh-740.resource.ts +42 -0
  107. package/src/reports/moh-740/registers/moh-222-daily-register/moh-222-daily-register.tsx +6 -0
  108. package/src/reports/moh-740/registers/moh-270-permanent-register/moh-270-permanent-register.scss +18 -0
  109. package/src/reports/moh-740/registers/moh-270-permanent-register/moh-270-permanent-register.tsx +79 -0
  110. package/src/reports/moh-740/registers/moh-740-patient-list.scss +0 -0
  111. package/src/reports/moh-740/registers/moh-740-patient-list.tsx +43 -0
  112. package/src/reports/moh-740/shared/data-cell/data-cell.scss +6 -0
  113. package/src/reports/moh-740/shared/data-cell/data-cell.tsx +23 -0
  114. package/src/reports/moh-740/shared/utils/format-indicator.ts +22 -0
  115. package/src/reports/moh-740/types/index.ts +183 -0
  116. package/src/reports/moh-745/moh-745.component.tsx +928 -0
  117. package/src/reports/moh-745/moh-745.scss +74 -0
  118. package/src/reports/moh-745/registers/moh-412-register.component.tsx +191 -0
  119. package/src/reports/moh-745/registers/type.ts +29 -0
  120. package/src/reports/table-wrapper/table-row-mapper.component.tsx +51 -0
  121. package/src/reports/table-wrapper/table-wrapper.component.tsx +21 -0
  122. package/src/reports/table-wrapper/table-wrapper.scss +31 -0
  123. package/src/resources/moh-705.resource.ts +117 -0
  124. package/src/resources/moh-706.resource.ts +86 -0
  125. package/src/resources/moh-710.resource.ts +60 -0
  126. package/src/resources/moh-711.resource.ts +175 -0
  127. package/src/resources/moh-717.resource.ts +35 -0
  128. package/src/resources/moh-745.resource.ts +64 -0
  129. package/src/root.component.tsx +38 -0
  130. package/src/utils/get-base-url.ts +12 -0
  131. package/src/utils/utils.ts +36 -0
  132. package/dist/255.js +0 -1
  133. package/dist/255.js.map +0 -1
  134. package/dist/353.js.LICENSE.txt +0 -39
  135. package/dist/36.js +0 -1
  136. package/dist/36.js.map +0 -1
  137. package/dist/734.js +0 -1
  138. package/dist/734.js.map +0 -1
  139. package/dist/97.js +0 -1
  140. package/dist/97.js.map +0 -1
@@ -0,0 +1,263 @@
1
+ import { Button, Loading, Table, TableBody, TableHead, TableHeader, TableRow } from '@carbon/react';
2
+ import React, { useEffect, useState } from 'react';
3
+ import { useNavigate, useSearchParams } from 'react-router-dom';
4
+
5
+ import styles from '../moh711.scss';
6
+ import { getMoh511PatientList } from '../../../resources/moh-711.resource';
7
+ import { moh511Columns } from './type';
8
+
9
+ const Moh511Register: React.FC = () => {
10
+ const navigate = useNavigate();
11
+ const [patientlist, setPatientList] = useState<any[]>([]);
12
+ const [isLoading, setIsLoading] = useState(false);
13
+
14
+ const [searchParams] = useSearchParams();
15
+
16
+ const startDate = searchParams.get('startDate');
17
+ const endDate = searchParams.get('endDate');
18
+ const locationUuids = searchParams.get('locationUuids');
19
+ const indicator = searchParams.get('indicator');
20
+
21
+ useEffect(() => {
22
+ const fetchData = async () => {
23
+ if (!startDate || !endDate || !locationUuids || !indicator) return;
24
+
25
+ setIsLoading(true);
26
+
27
+ try {
28
+ const params = {
29
+ startDate,
30
+ endDate,
31
+ locationUuids,
32
+ indicator,
33
+ };
34
+
35
+ const data = await getMoh511PatientList(params);
36
+
37
+ setPatientList(data?.results.results || []);
38
+ } catch (error) {
39
+ console.error('Failed to fetch register data', error);
40
+ } finally {
41
+ setIsLoading(false);
42
+ }
43
+ };
44
+
45
+ fetchData();
46
+ }, [startDate, endDate, locationUuids, indicator]);
47
+
48
+ function navigateBack() {
49
+ navigate('/moh-711');
50
+ }
51
+ return (
52
+ <>
53
+ <div className={styles.buttonContainer}>
54
+ <Button onClick={navigateBack}>Back</Button>
55
+ </div>
56
+ <div>{isLoading && <Loading />}</div>
57
+ <Table>
58
+ <TableHead>
59
+ <TableRow>
60
+ <TableHeader>Serial No.</TableHeader>
61
+ <TableHeader>
62
+ Date.
63
+ <br />
64
+ (DD:MM:YYYY)
65
+ </TableHeader>
66
+ <TableHeader>
67
+ CWC No.
68
+ <br />
69
+ (New Visit)
70
+ </TableHeader>
71
+ <TableHeader>
72
+ CWC No.
73
+ <br />
74
+ (Revisit)
75
+ </TableHeader>
76
+ <TableHeader>
77
+ BIRTH NOTIFICATION
78
+ <br /> (NUMBER)
79
+ </TableHeader>
80
+ <TableHeader>Full Names (Three names)</TableHeader>
81
+ <TableHeader>Age</TableHeader>
82
+ <TableHeader>Sex</TableHeader>
83
+ <TableHeader>
84
+ County/Sub-
85
+ <br />
86
+ county
87
+ </TableHeader>
88
+ <TableHeader>
89
+ Village /Estate / <br />
90
+ Landmark
91
+ </TableHeader>
92
+ <TableHeader>
93
+ Telephone
94
+ <br />
95
+ number
96
+ </TableHeader>
97
+ <TableHeader>Weight</TableHeader>
98
+ <TableHeader>Height</TableHeader>
99
+ <TableHeader>Weight in Kgs</TableHeader>
100
+ <TableHeader>
101
+ Weight
102
+ <br />
103
+ categories:
104
+ <br />
105
+ (1=Normal
106
+ <br />
107
+ 2=UW
108
+ <br />
109
+ 3=SUW
110
+ <br />
111
+ 4=OW
112
+ <br />
113
+ 5=Obese)
114
+ </TableHeader>
115
+ <TableHeader>Height / Length in cm</TableHeader>
116
+ <TableHeader>
117
+ Height/Length
118
+ <br />
119
+ categories:
120
+ <br />
121
+ (1=Normal
122
+ <br />
123
+ 2=Stunted
124
+ <br />
125
+ 3=Sev.
126
+ <br />
127
+ Stunted)
128
+ <br />
129
+ </TableHeader>
130
+ <TableHeader>
131
+ MUAC
132
+ <br />
133
+ 1.Green
134
+ <br />
135
+ 2.Yellow
136
+ <br />
137
+ 3.Red
138
+ </TableHeader>
139
+ <TableHeader>
140
+ Exclusive <br /> Breast feeding <br />
141
+ (less than 6<br /> months)(Y/N)
142
+ </TableHeader>
143
+ <TableHeader>
144
+ Vitamin A
145
+ <br />
146
+ supplimentation:
147
+ <br />
148
+ (6-59 months) (1=6-
149
+ <br />
150
+ 11 months, 2=12-59
151
+ <br />
152
+ months, 3=Not
153
+ <br />
154
+ supplimented)
155
+ </TableHeader>
156
+ <TableHeader>Dewormed (Y/N)</TableHeader>
157
+ <TableHeader>
158
+ MNPs supplimentation:(6-23
159
+ <br />
160
+ children)
161
+ </TableHeader>
162
+ <TableHeader>
163
+ Childs assessed for <br />
164
+ Developmental milestones <br />
165
+ including 1st Haed control ,2=
166
+ <br />
167
+ sitting, 3=talking
168
+ </TableHeader>
169
+ <TableHeader>
170
+ Any Danger Signs
171
+ <br />
172
+ 1.Unable to breastfeed
173
+ <br />
174
+ 2.Unable to drink
175
+ <br />
176
+ 3.Vomits everything
177
+ <br />
178
+ 4.Bloody diarrhoea
179
+ <br />
180
+ 5.Has oedema <br />
181
+ 6.Has convulsions
182
+ </TableHeader>
183
+ <TableHeader>Any Disability</TableHeader>
184
+ <TableHeader>Immunization status up to date(Y/N)</TableHeader>
185
+ <TableHeader>LLIN gievn to under 1 years(Y/N)</TableHeader>
186
+ <TableHeader>
187
+ Follow up for: <br />
188
+ 1=Nutrition service
189
+ <br />
190
+ 2=Rehabilitation service
191
+ </TableHeader>
192
+ <TableHeader>
193
+ 1=referred from CU; 2= <br />
194
+ referred from another H/F;
195
+ <br />
196
+ 3=Not applicable
197
+ </TableHeader>
198
+ <TableHeader>
199
+ 1=referred to CU; 2= <br />
200
+ referred to another H/F;
201
+ <br />
202
+ 3=Not applicable
203
+ </TableHeader>
204
+ <TableHeader>
205
+ Reason for referral <br />
206
+ ....specify
207
+ </TableHeader>
208
+ <TableHeader>REMARKS</TableHeader>
209
+ </TableRow>
210
+ <TableRow>
211
+ <TableHeader>A</TableHeader>
212
+ <TableHeader>B</TableHeader>
213
+ <TableHeader>C</TableHeader>
214
+ <TableHeader>D</TableHeader>
215
+ <TableHeader>E</TableHeader>
216
+ <TableHeader>F</TableHeader>
217
+ <TableHeader>G</TableHeader>
218
+ <TableHeader>H</TableHeader>
219
+ <TableHeader>I</TableHeader>
220
+ <TableHeader>J</TableHeader>
221
+ <TableHeader>K</TableHeader>
222
+ <TableHeader>L</TableHeader>
223
+ <TableHeader>M</TableHeader>
224
+ <TableHeader>N</TableHeader>
225
+ <TableHeader>O</TableHeader>
226
+ <TableHeader>P</TableHeader>
227
+ <TableHeader>Q</TableHeader>
228
+ <TableHeader>R</TableHeader>
229
+ <TableHeader>S</TableHeader>
230
+ <TableHeader>T</TableHeader>
231
+ <TableHeader>U</TableHeader>
232
+ <TableHeader>V</TableHeader>
233
+ <TableHeader>W</TableHeader>
234
+ <TableHeader>X</TableHeader>
235
+ <TableHeader>Y</TableHeader>
236
+ <TableHeader>Z</TableHeader>
237
+ <TableHeader>AA</TableHeader>
238
+ <TableHeader>AB</TableHeader>
239
+ <TableHeader>AC</TableHeader>
240
+ <TableHeader>AD</TableHeader>
241
+ </TableRow>
242
+ </TableHead>
243
+ <TableBody>
244
+ {patientlist?.length > 0 ? (
245
+ patientlist.map((patient, index) => (
246
+ <TableRow key={index}>
247
+ {moh511Columns.map((col) => (
248
+ <td key={col}>{patient?.[col] ?? '-'}</td>
249
+ ))}
250
+ </TableRow>
251
+ ))
252
+ ) : (
253
+ <TableRow>
254
+ <td colSpan={moh511Columns.length}>No data available</td>
255
+ </TableRow>
256
+ )}
257
+ </TableBody>
258
+ </Table>
259
+ </>
260
+ );
261
+ };
262
+
263
+ export default Moh511Register;
@@ -0,0 +1,194 @@
1
+ export const moh406Columns = [
2
+ 'date_of_visit',
3
+ 'pnc_number_new_visit',
4
+ 'pnc_number_revisit',
5
+ 'amrs_id',
6
+ 'full_name',
7
+ 'date_of_birth',
8
+ 'county_subcounty',
9
+ 'village_estate_landmark',
10
+ 'marital_status',
11
+ 'parity',
12
+ 'gravidae',
13
+ 'lmp',
14
+ 'edd',
15
+ 'gestation_weeks',
16
+ 'muac',
17
+ 'height',
18
+ 'weight',
19
+ 'blood_pressure',
20
+ 'breast_exam',
21
+ 'uterus',
22
+ 'pph',
23
+ 'c_section_site',
24
+ 'lochia',
25
+ 'episiotomy',
26
+ 'fistula',
27
+ 'tb_screening',
28
+ 'hiv_tested_pnc',
29
+ 'hiv_test_1',
30
+ 'hiv_test_2',
31
+ 'hiv_test_3',
32
+ 'hiv_result_pnc',
33
+ 'hiv_6wks',
34
+ 'hiv_gt6wks',
35
+ 'infant_result',
36
+ 'mother_result',
37
+ 'cervical_cancer_screening',
38
+ 'family_planning',
39
+ 'other_complications',
40
+ 'haematinics',
41
+ 'referral_from',
42
+ 'referral_to',
43
+ 'referral_reason',
44
+ 'remarks',
45
+ ];
46
+ export const moh511Columns = [
47
+ 'serial_no',
48
+ 'visit_date',
49
+ 'cwc_number_new',
50
+ 'cwc_number_revisit',
51
+ 'birth_notification_number',
52
+ 'full_name',
53
+ 'age',
54
+ 'sex',
55
+ 'county_subcounty',
56
+ 'village_estate_landmark',
57
+ 'telephone_number',
58
+ 'weight',
59
+ 'height',
60
+ 'weight_kg',
61
+ 'weight_category',
62
+ 'height_length_cm',
63
+ 'height_category',
64
+ 'muac',
65
+ 'exclusive_breastfeeding',
66
+ 'vitamin_a_supplementation',
67
+ 'dewormed',
68
+ 'mnp_supplementation',
69
+ 'developmental_milestones',
70
+ 'danger_signs',
71
+ 'disability',
72
+ 'immunization_status',
73
+ 'llin_given',
74
+ 'follow_up',
75
+ 'referred_from',
76
+ 'referred_to',
77
+ 'referral_reason',
78
+ 'remarks',
79
+ ];
80
+ export const moh405Columns = [
81
+ 'date_of_visit',
82
+ 'anc_number_new',
83
+ 'anc_number_revisit',
84
+ 'amrs_id',
85
+ 'visit_number',
86
+ 'full_name',
87
+ 'date_of_birth',
88
+ 'subcounty_county',
89
+ 'village_estate',
90
+ 'marital_status',
91
+ 'parity',
92
+ 'gravidae',
93
+ 'lmp',
94
+ 'edd',
95
+ 'gestation_weeks',
96
+ 'muac',
97
+ 'height',
98
+ 'weight',
99
+ 'blood_pressure',
100
+ 'breast_exam',
101
+ 'fgm',
102
+ 'hb_level',
103
+ 'blood_sugar',
104
+ 'blood_group',
105
+ 'urinalysis',
106
+ 'syphilis_test',
107
+ 'hepatitis_b',
108
+ 'tb_screening',
109
+ 'hiv_testing_type',
110
+ 'hiv_test_1',
111
+ 'hiv_test_2',
112
+ 'hiv_test_3',
113
+ 'hiv_results',
114
+ 'haart',
115
+ 'infant_prophylaxis',
116
+ 'partner_testing',
117
+ 'other_conditions',
118
+ 'deworming',
119
+ 'ipt',
120
+ 'tt_dose',
121
+ 'supplementation',
122
+ 'llitn',
123
+ 'referral_from',
124
+ 'referral_to',
125
+ 'referral_reason',
126
+ 'remarks',
127
+ ];
128
+ export const moh333Columns = [
129
+ 'date_of_admission',
130
+ 'amrsid',
131
+ 'admission_number',
132
+ 'full_name',
133
+ 'date_of_birth',
134
+ 'county_subcounty',
135
+ 'village_landmark',
136
+ 'marital_status',
137
+ 'parity',
138
+ 'gravidae',
139
+ 'anc_visits',
140
+ 'lmp',
141
+ 'edd',
142
+ 'diagnosis',
143
+
144
+ // Delivery section
145
+ 'nupi',
146
+ 'age',
147
+ 'phone_number',
148
+ 'labour_duration',
149
+ 'delivery_date',
150
+ 'delivery_time',
151
+ 'gestation_at_birth',
152
+ 'mode_of_delivery',
153
+ 'no_of_babies',
154
+ 'placenta_complete',
155
+ 'uterotonic_given',
156
+ 'vaginal_examination',
157
+ 'blood_loss',
158
+ 'mother_status',
159
+
160
+ // Delivery complications / outcomes
161
+ 'maternal_deaths_notified',
162
+ 'delivery_complications',
163
+ 'apgar_score',
164
+ 'birth_outcome',
165
+ 'birth_weight',
166
+ 'sex',
167
+
168
+ // Baby care
169
+ 'bf_in_1hr',
170
+ 'teo_given',
171
+ 'cord_chlorhexidine',
172
+ 'birth_deformity',
173
+ 'vitamin_k',
174
+ 'pnc_status',
175
+
176
+ // HIV section
177
+ 'hiv_test_1',
178
+ 'hiv_test_2',
179
+ 'hiv_test_3',
180
+ 'hiv_result_maternity',
181
+ 'start_at_maternity',
182
+
183
+ // Follow-up / referral
184
+ 'kangaroo_mother_care',
185
+ 'congenital_abnormalities',
186
+ 'kit_name_1',
187
+ 'kit_name_2',
188
+ 'kit_name_3',
189
+ 'hiv_initial_retest_status',
190
+ 'maternal_treatment',
191
+ 'referral_from',
192
+ 'referral_to',
193
+ 'reason_for_referral',
194
+ ];
@@ -0,0 +1,153 @@
1
+ import React from 'react';
2
+
3
+ import styles from '../moh711.scss';
4
+ import classNames from 'classnames';
5
+ import { useNavigate } from 'react-router-dom';
6
+
7
+ interface ANCComponentProps {
8
+ moh711Data: any;
9
+ startDate: string;
10
+ endDate: string;
11
+ locationUuids: string;
12
+ }
13
+
14
+ const ANCComponent: React.FC<ANCComponentProps> = ({ moh711Data, startDate, endDate, locationUuids }) => {
15
+ const navigate = useNavigate();
16
+
17
+ const navigateToRegister = (indicator: string) => {
18
+ navigate(
19
+ `/moh-405-register?startDate=${startDate}&endDate=${endDate}&locationUuids=${locationUuids}&indicator=${indicator}`,
20
+ );
21
+ };
22
+ return (
23
+ <>
24
+ <table className={classNames(`${styles.table}`, `${styles.tableBordered}`, `${styles.tableStriped}`)}>
25
+ <thead>
26
+ <tr>
27
+ <th colSpan={3}>A. ANC/PMTCT</th>
28
+ <th>Total</th>
29
+ </tr>
30
+ </thead>
31
+ <tbody>
32
+ <tr>
33
+ <td>1</td>
34
+ <td rowSpan={2}>No. of ANC Clients</td>
35
+ <td>New</td>
36
+ <td onClick={() => navigateToRegister('new_anc_clients')}>{moh711Data.new_anc_clients}</td>
37
+ </tr>
38
+ <tr>
39
+ <td>2</td>
40
+ <td>Re-visit</td>
41
+ <td onClick={() => navigateToRegister('revisit_anc_clients')}>{moh711Data.revisit_anc_clients}</td>
42
+ </tr>
43
+ <tr>
44
+ <td>3</td>
45
+ <td colSpan={2}>No. of Clients given IPT (1st Dose)</td>
46
+ <td onClick={() => navigateToRegister('first_ipt_dose')}>{moh711Data.first_ipt_dose}</td>
47
+ </tr>
48
+ <tr>
49
+ <td>4</td>
50
+ <td colSpan={2}>No. of Clients given IPT (2nd Dose)</td>
51
+ <td onClick={() => navigateToRegister('second_ipt_dose')}>{moh711Data.second_ipt_dose}</td>
52
+ </tr>
53
+ <tr>
54
+ <td>5</td>
55
+ <td colSpan={2}>No. of Clients given IPT (3rd Dose)</td>
56
+ <td onClick={() => navigateToRegister('third_ipt_dose')}>{moh711Data.third_ipt_dose}</td>
57
+ </tr>
58
+ <tr>
59
+ <td>6</td>
60
+ <td colSpan={2}>No. of Clients with Hb&lt;11g/dl</td>
61
+ <td onClick={() => navigateToRegister('Hb_less_11g')}>{moh711Data.Hb_less_11g}</td>
62
+ </tr>
63
+ <tr>
64
+ <td>7</td>
65
+ <td colSpan={2}>No. clients with 1st ANC contact at 12 or less weeks</td>
66
+ <td onClick={() => navigateToRegister('first_anc_contact_12_or_less_weeks')}>
67
+ {moh711Data.first_anc_contact_12_or_less_weeks}
68
+ </td>
69
+ </tr>
70
+ <tr>
71
+ <td>8</td>
72
+ <td colSpan={2}>Pregnant women completing 4th ANC Contacts</td>
73
+ <td onClick={() => navigateToRegister('completing_4_anc_visits')}>{moh711Data.completing_4_anc_visits}</td>
74
+ </tr>
75
+ <tr>
76
+ <td>9</td>
77
+ <td colSpan={2}>No. of clients completed 8th ANC Contacts</td>
78
+ <td onClick={() => navigateToRegister('completing_8_anc_contact')}>
79
+ {moh711Data.completing_8_anc_contact}
80
+ </td>
81
+ </tr>
82
+ <tr>
83
+ <td>10</td>
84
+ <td colSpan={2}>No. of LLINs distributed to under 1 year</td>
85
+ <td onClick={() => navigateToRegister('llins_children_less_than_one')}>
86
+ {moh711Data.llins_children_less_than_one}
87
+ </td>
88
+ </tr>
89
+ <tr>
90
+ <td>11</td>
91
+ <td colSpan={2}>No. of LLINs distributed to ANC clients</td>
92
+ <td onClick={() => navigateToRegister('llins_anc_clients')}>{moh711Data.llins_anc_clients}</td>
93
+ </tr>
94
+ <tr>
95
+ <td>12</td>
96
+ <td rowSpan={2}>No. of clients</td>
97
+ <td>Tested for Syphilis</td>
98
+ <td onClick={() => navigateToRegister('anc_clients_tested_syphilis')}>
99
+ {moh711Data.anc_clients_tested_syphilis}
100
+ </td>
101
+ </tr>
102
+ <tr>
103
+ <td>13</td>
104
+ <td>Positive (+ve)</td>
105
+ <td onClick={() => navigateToRegister('syphilis_positive')}> {moh711Data.syphilis_positive}</td>
106
+ </tr>
107
+ <tr>
108
+ <td>14</td>
109
+ <td colSpan={2}>Total Women Done Breast Examination</td>
110
+ <td onClick={() => navigateToRegister('breast_exam')}>{moh711Data.breast_exam}</td>
111
+ </tr>
112
+ <tr>
113
+ <td>15</td>
114
+ <td colSpan={2}>No. of adolescents (10-14 years) presenting with pregnancy at 1st ANC contact</td>
115
+ <td onClick={() => navigateToRegister('adolesc_10_14')}>{moh711Data.adolesc_10_14}</td>
116
+ </tr>
117
+ <tr>
118
+ <td>16</td>
119
+ <td colSpan={2}>No. of adolescents (15-19 years) presenting with pregnancy at 1st ANC contact</td>
120
+ <td onClick={() => navigateToRegister('adolesc_15_19')}>{moh711Data.adolesc_15_19}</td>
121
+ </tr>
122
+ <tr>
123
+ <td>17</td>
124
+ <td colSpan={2}>No. of youth (20-24 years) presenting with pregnancy at 1st ANC contact</td>
125
+ <td onClick={() => navigateToRegister('youth_20_24')}>{moh711Data.youth_20_24}</td>
126
+ </tr>
127
+ <tr>
128
+ <td>18</td>
129
+ <td colSpan={2}>No. of clients issued with Iron</td>
130
+ <td onClick={() => navigateToRegister('iron')}>{moh711Data.iron}</td>
131
+ </tr>
132
+ <tr>
133
+ <td>19</td>
134
+ <td colSpan={2}>No. of clients issued with Folic</td>
135
+ <td onClick={() => navigateToRegister('folic')}>{moh711Data.folic}</td>
136
+ </tr>
137
+ <tr>
138
+ <td>20</td>
139
+ <td colSpan={2}>No. of clients issued with Combined Ferrous Folate</td>
140
+ <td onClick={() => navigateToRegister('iron_and_folate')}>{moh711Data.iron_and_folate}</td>
141
+ </tr>
142
+ <tr>
143
+ <td>21</td>
144
+ <td colSpan={2}>No. of pregnant women presenting in ANC with complication associated with FGM</td>
145
+ <td onClick={() => navigateToRegister('fgm_complications')}>{moh711Data.fgm_complications}</td>
146
+ </tr>
147
+ </tbody>
148
+ </table>
149
+ </>
150
+ );
151
+ };
152
+
153
+ export default ANCComponent;