@7365admin1/module-hygiene 4.12.0 → 4.14.0

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # @7365admin1/module-hygiene
2
2
 
3
+ ## 4.14.0
4
+
5
+ ### Minor Changes
6
+
7
+ - Hygiene Cleaning Schedule Enhancement Release
8
+
9
+ ## 4.13.0
10
+
11
+ ### Minor Changes
12
+
13
+ - Update module hygiene
14
+
3
15
  ## 4.12.0
4
16
 
5
17
  ### Minor Changes
package/dist/index.d.ts CHANGED
@@ -4,6 +4,17 @@ import { Request, Response, NextFunction } from 'express';
4
4
  import Joi from 'joi';
5
5
  import * as bson from 'bson';
6
6
 
7
+ declare enum ServiceType {
8
+ REAL_ESTATE_DEVELOPER = "real_estate_developer",
9
+ PROPERTY_MANAGEMENT_AGENCY = "property_management_agency",
10
+ SECURITY_AGENCY = "security_agency",
11
+ CLEANING_SERVICES = "cleaning_services",
12
+ MECHANICAL_ELECTRICAL_SERVICES = "mechanical_electrical_services",
13
+ LANDSCAPING_SERVICES = "landscaping_services",
14
+ PEST_CONTROL_SERVICES = "pest_control_services",
15
+ POOL_MAINTENANCE_SERVICES = "pool_maintenance_services"
16
+ }
17
+ type TServiceType = ServiceType;
7
18
  declare const allowedTypes: string[];
8
19
  declare const allowedStatus: string[];
9
20
  declare const allowedPeriods: string[];
@@ -31,6 +42,7 @@ type TAreaUnits = {
31
42
  type TArea = {
32
43
  _id?: ObjectId;
33
44
  site: string | ObjectId;
45
+ serviceType: TServiceType;
34
46
  name: string;
35
47
  type: (typeof allowedTypes)[number];
36
48
  set?: number;
@@ -40,13 +52,13 @@ type TArea = {
40
52
  updatedAt?: Date | string;
41
53
  deletedAt?: Date | string;
42
54
  };
43
- type TAreaCreate = Pick<TArea, "site" | "name" | "type" | "set" | "units">;
55
+ type TAreaCreate = Pick<TArea, "site" | "serviceType" | "name" | "type" | "set" | "units">;
44
56
  type TAreaGetQuery = {
45
57
  page?: number;
46
58
  limit?: number;
47
59
  search?: string;
48
60
  type?: (typeof allowedTypes)[number] | "all";
49
- } & Pick<TArea, "site">;
61
+ } & Pick<TArea, "site" | "serviceType">;
50
62
  type TAreaUpdate = Partial<Pick<TArea, "name" | "type" | "set" | "units">>;
51
63
  type TAreaUpdateChecklist = {
52
64
  units: TAreaUnits[];
@@ -54,6 +66,7 @@ type TAreaUpdateChecklist = {
54
66
  declare const areaSchema: Joi.ObjectSchema<any>;
55
67
  declare function MArea(value: TAreaCreate): {
56
68
  site: string | ObjectId;
69
+ serviceType: ServiceType;
57
70
  name: string;
58
71
  type: string;
59
72
  set: number;
@@ -69,10 +82,9 @@ declare function useAreaRepo(): {
69
82
  createTextIndex: () => Promise<void>;
70
83
  createUniqueIndex: () => Promise<void>;
71
84
  createArea: (value: TAreaCreate, session?: ClientSession) => Promise<ObjectId>;
72
- getAreas: ({ page, limit, search, type, site, }: TAreaGetQuery) => Promise<{}>;
73
- getAreasForChecklist: (site: string | ObjectId) => Promise<{}>;
85
+ getAreas: ({ page, limit, search, type, site, serviceType, }: TAreaGetQuery) => Promise<{}>;
86
+ getAreasForChecklist: (site: string | ObjectId, serviceType: TServiceType) => Promise<{}>;
74
87
  getAreaById: (_id: string | ObjectId) => Promise<{}>;
75
- getAreaByMultipleId: (_id: string[] | ObjectId[]) => Promise<bson.Document[]>;
76
88
  verifyAreaByUnitId: (unitId: string | ObjectId) => Promise<{}>;
77
89
  updateArea: (_id: string | ObjectId, value: TAreaUpdate, session?: ClientSession) => Promise<number>;
78
90
  updateAreaChecklist: (unitId: string | ObjectId, name: string, session?: ClientSession) => Promise<number>;
@@ -80,13 +92,17 @@ declare function useAreaRepo(): {
80
92
  };
81
93
 
82
94
  declare function useAreaService(): {
83
- importArea: ({ dataJson, site, }: {
95
+ importArea: ({ dataJson, site, serviceType, }: {
84
96
  dataJson: string;
85
97
  site: string | ObjectId;
98
+ serviceType: TServiceType;
86
99
  }) => Promise<{
87
100
  message: string;
88
101
  }>;
89
- exportAreas: (site: string | ObjectId) => Promise<Buffer>;
102
+ exportAreas: ({ site, serviceType, }: {
103
+ site: string | ObjectId;
104
+ serviceType: TServiceType;
105
+ }) => Promise<Buffer>;
90
106
  };
91
107
 
92
108
  interface MulterRequest extends Request {
@@ -111,22 +127,27 @@ declare function useAreaController(): {
111
127
  type TUnit = {
112
128
  _id?: ObjectId;
113
129
  site: string | ObjectId;
130
+ serviceType: TServiceType;
114
131
  name: string;
115
132
  createdAt?: string;
116
133
  updatedAt?: string;
117
134
  deletedAt?: string;
118
135
  status?: "active" | "deleted";
119
136
  };
120
- type TUnitCreate = Pick<TUnit, "site" | "name">;
137
+ type TUnitCreate = {
138
+ serviceType?: TServiceType;
139
+ } & Pick<TUnit, "site" | "name">;
121
140
  type TUnitGetQuery = {
122
141
  page?: number;
123
142
  limit?: number;
124
143
  search?: string;
144
+ serviceType?: TServiceType;
125
145
  } & Pick<TUnit, "site">;
126
146
  type TUnitUpdate = Pick<TUnit, "name">;
127
147
  declare const unitSchema: Joi.ObjectSchema<any>;
128
148
  declare function MUnit(value: TUnitCreate): {
129
149
  site: string | ObjectId;
150
+ serviceType: ServiceType | undefined;
130
151
  name: string;
131
152
  status: string;
132
153
  createdAt: Date;
@@ -135,15 +156,19 @@ declare function MUnit(value: TUnitCreate): {
135
156
  };
136
157
 
137
158
  declare function useUnitService(): {
138
- importUnit: ({ dataJson, site, }: {
159
+ importUnit: ({ dataJson, site, serviceType, }: {
139
160
  dataJson: string;
140
161
  site: string | ObjectId;
162
+ serviceType?: ServiceType | undefined;
141
163
  }) => Promise<{
142
164
  message: string;
143
165
  }>;
144
166
  updateUnit: (_id: string | ObjectId, value: TUnitUpdate) => Promise<number>;
145
167
  deleteUnit: (_id: string | ObjectId) => Promise<number>;
146
- exportUnits: (site: string | ObjectId) => Promise<Buffer>;
168
+ exportUnits: ({ site, serviceType, }: {
169
+ site: string | ObjectId;
170
+ serviceType?: ServiceType | undefined;
171
+ }) => Promise<Buffer>;
147
172
  };
148
173
 
149
174
  declare function useUnitRepository(): {
@@ -151,7 +176,7 @@ declare function useUnitRepository(): {
151
176
  createTextIndex: () => Promise<void>;
152
177
  createUniqueIndex: () => Promise<void>;
153
178
  createUnit: (value: TUnitCreate, session?: ClientSession) => Promise<ObjectId>;
154
- getUnits: ({ page, limit, search, site, }: TUnitGetQuery) => Promise<{}>;
179
+ getUnits: ({ page, limit, search, site, serviceType, }: TUnitGetQuery) => Promise<{}>;
155
180
  updateUnit: (_id: string | ObjectId, value: TUnitUpdate, session?: ClientSession) => Promise<number>;
156
181
  deleteUnit: (_id: string | ObjectId, session?: ClientSession) => Promise<number>;
157
182
  };
@@ -168,21 +193,24 @@ declare function useUnitController(): {
168
193
  type TParentChecklist = {
169
194
  _id?: ObjectId;
170
195
  site?: string | ObjectId;
196
+ serviceType?: TServiceType;
171
197
  status?: (typeof allowedStatus)[number];
172
198
  createdAt?: Date | string;
173
199
  updatedAt?: Date | string;
174
200
  };
175
201
  type TParentChecklistGetQuery = {
202
+ site: string | ObjectId;
203
+ serviceType: TServiceType;
176
204
  page?: number;
177
205
  limit?: number;
178
206
  search?: string;
179
- site: string | ObjectId;
180
207
  startDate?: string | Date;
181
208
  endDate?: string | Date;
182
209
  } & Pick<TParentChecklist, "status">;
183
210
  declare const parentChecklistSchema: Joi.ObjectSchema<any>;
184
211
  declare function MParentChecklist(value: TParentChecklist): {
185
212
  site: string | ObjectId | undefined;
213
+ serviceType: ServiceType | undefined;
186
214
  status: string;
187
215
  createdAt: string | Date;
188
216
  updatedAt: string | Date;
@@ -191,13 +219,21 @@ declare function MParentChecklist(value: TParentChecklist): {
191
219
  declare function useParentChecklistRepo(): {
192
220
  createIndex: () => Promise<void>;
193
221
  createParentChecklist: (value: TParentChecklist, session?: ClientSession) => Promise<ObjectId | ObjectId[]>;
194
- getAllParentChecklist: ({ page, limit, search, site, startDate, endDate, status, }: TParentChecklistGetQuery) => Promise<{}>;
222
+ getAllParentChecklist: ({ page, limit, search, site, startDate, endDate, status, serviceType, }: TParentChecklistGetQuery) => Promise<{}>;
223
+ getParentChecklistById: (_id: string | ObjectId) => Promise<TParentChecklist & {
224
+ _id: ObjectId;
225
+ }>;
195
226
  updateParentChecklistStatuses: (_id: string | ObjectId, status: (typeof allowedStatus)[number], session?: ClientSession) => Promise<number>;
196
227
  closeExpiredParentChecklists: () => Promise<number>;
197
228
  getTodayParentChecklists: () => Promise<{
198
229
  _id: ObjectId;
199
230
  site: ObjectId;
200
231
  }[]>;
232
+ getTodayParentChecklistsForAreaGen: () => Promise<{
233
+ _id: ObjectId;
234
+ site: ObjectId;
235
+ serviceType: string;
236
+ }[]>;
201
237
  };
202
238
 
203
239
  declare function useParentChecklistController(): {
@@ -209,6 +245,7 @@ declare const allowedChecklistStatus: string[];
209
245
  type TCleaningScheduleArea = {
210
246
  _id?: ObjectId;
211
247
  schedule: string | ObjectId;
248
+ serviceType: TServiceType;
212
249
  area: string | ObjectId;
213
250
  name: string;
214
251
  type: (typeof allowedTypes)[number];
@@ -237,8 +274,8 @@ type TAreaChecklistUnits = {
237
274
  completedBy?: string | ObjectId;
238
275
  timestamp?: Date | string;
239
276
  };
240
- type TAreaChecklistCreate = Pick<TCleaningScheduleArea, "schedule" | "area"> & {
241
- site: string | ObjectId;
277
+ type TAreaChecklistCreate = Pick<TCleaningScheduleArea, "schedule" | "area" | "name" | "type" | "checklist" | "createdBy"> & {
278
+ serviceType: TServiceType;
242
279
  };
243
280
  type TAreaChecklistBatchCreate = Pick<TCleaningScheduleArea, "schedule" | "createdBy"> & {
244
281
  site: string | ObjectId;
@@ -247,14 +284,16 @@ type TCleaningScheduleAreaGetQuery = {
247
284
  page?: number;
248
285
  limit?: number;
249
286
  search?: string;
287
+ serviceType?: TServiceType;
250
288
  type?: (typeof allowedTypes)[number] | "all";
251
289
  status?: (typeof allowedStatus)[number] | "all";
252
290
  } & Pick<TCleaningScheduleArea, "schedule">;
253
291
  type TAreaChecklistUpdate = Pick<TCleaningScheduleArea, "checklist">;
254
292
  type TAreaChecklistUnitsUpdate = Pick<TAreaChecklistUnits, "approve" | "reject" | "remarks" | "completedBy"> & Pick<TAreaChecklist, "attachment">;
255
293
  declare const areaChecklistSchema: Joi.ObjectSchema<any>;
256
- declare function MAreaChecklist(value: TCleaningScheduleArea): {
294
+ declare function MAreaChecklist(value: TAreaChecklistCreate): {
257
295
  schedule: string | ObjectId;
296
+ serviceType: ServiceType;
258
297
  area: string | ObjectId;
259
298
  name: string;
260
299
  type: string;
@@ -304,8 +343,8 @@ declare function useAreaChecklistRepo(): {
304
343
  createIndex: () => Promise<void>;
305
344
  createTextIndex: () => Promise<void>;
306
345
  createUniqueIndex: () => Promise<void>;
307
- createAreaChecklist: (value: TCleaningScheduleArea, session?: ClientSession) => Promise<ObjectId>;
308
- getAllAreaChecklist: ({ page, limit, search, type, status, schedule, }: TCleaningScheduleAreaGetQuery, session?: ClientSession) => Promise<{}>;
346
+ createAreaChecklist: (value: TAreaChecklistCreate, session?: ClientSession) => Promise<ObjectId>;
347
+ getAllAreaChecklist: ({ page, limit, search, type, status, schedule, serviceType, }: TCleaningScheduleAreaGetQuery, session?: ClientSession) => Promise<{}>;
309
348
  getAreaChecklistHistory: ({ page, limit, search, type, schedule, status, createdAt, }: {
310
349
  page?: number | undefined;
311
350
  limit?: number | undefined;
@@ -316,22 +355,28 @@ declare function useAreaChecklistRepo(): {
316
355
  createdAt?: string | Date | undefined;
317
356
  }) => Promise<{}>;
318
357
  getAreaChecklistHistoryDetails: (_id: string | ObjectId) => Promise<{}>;
319
- getAreaChecklistUnits: ({ page, limit, search, _id, }: {
358
+ getAreaChecklistUnits: ({ page, limit, search, serviceType, _id, }: {
320
359
  page?: number | undefined;
321
360
  limit?: number | undefined;
322
361
  search?: string | undefined;
362
+ serviceType?: ServiceType | undefined;
323
363
  _id: string | ObjectId;
324
364
  }, session?: ClientSession) => Promise<{}>;
325
365
  getAreaChecklistById: (_id: string | ObjectId, session?: ClientSession) => Promise<mongodb.WithId<bson.Document>>;
326
- getAreaChecklistByAreaAndSchedule: (schedule: string | ObjectId, area: string | ObjectId, session?: ClientSession) => Promise<mongodb.WithId<bson.Document>>;
366
+ getAreaChecklistByAreaAndSchedule: ({ schedule, serviceType, area, session, }: {
367
+ schedule: string | ObjectId;
368
+ serviceType?: ServiceType | undefined;
369
+ area: string | ObjectId;
370
+ session?: ClientSession | undefined;
371
+ }) => Promise<mongodb.WithId<bson.Document>>;
327
372
  getAreaChecklistSetOwner: (_id: string | ObjectId, set: number, session?: ClientSession) => Promise<any>;
328
373
  updateAreaChecklist: (_id: string | ObjectId, value: TAreaChecklistUpdate, session?: ClientSession) => Promise<number>;
329
374
  updateAreaChecklistStatus: (_id: string | ObjectId, status: (typeof allowedStatus)[number], session?: ClientSession) => Promise<number>;
330
375
  updateAreaChecklistUnits: (_id: string | ObjectId, set: number, unitId: string | ObjectId, value: TAreaChecklistUnitsUpdate, session?: ClientSession) => Promise<number>;
331
376
  getMaxSetNumberForArea: (areaId: string | ObjectId, session?: ClientSession) => Promise<any>;
332
377
  closeExpiredAreaChecklists: () => Promise<number>;
333
- pushScheduleTaskSets: (scheduleId: string | ObjectId, areaId: string | ObjectId, scheduleTaskId: string | ObjectId, newSets: TAreaChecklist[]) => Promise<number>;
334
- insertAutoGenSets: (scheduleId: string | ObjectId, areaId: string | ObjectId, newSets: any[]) => Promise<number>;
378
+ pushScheduleTaskSets: (scheduleId: string | ObjectId, serviceType: TServiceType, areaId: string | ObjectId, scheduleTaskId: string | ObjectId, newSets: TAreaChecklist[]) => Promise<number>;
379
+ insertAutoGenSets: (scheduleId: string | ObjectId, serviceType: TServiceType, areaId: string | ObjectId, newSets: any[]) => Promise<number>;
335
380
  trimOverflowSets: () => Promise<number>;
336
381
  };
337
382
 
@@ -513,6 +558,7 @@ declare function useCheckOutItemController(): {
513
558
  type TScheduleTask = {
514
559
  _id?: ObjectId;
515
560
  site: string | ObjectId;
561
+ serviceType: TServiceType;
516
562
  title: string;
517
563
  time: string;
518
564
  dates: string[];
@@ -527,17 +573,18 @@ type TScheduleTask = {
527
573
  updatedAt?: string | Date;
528
574
  deletedAt?: string | Date;
529
575
  };
530
- type TScheduleTaskCreate = Pick<TScheduleTask, "site" | "title" | "time" | "dates" | "description" | "areas" | "createdBy">;
576
+ type TScheduleTaskCreate = Pick<TScheduleTask, "site" | "serviceType" | "title" | "time" | "dates" | "description" | "areas" | "createdBy">;
531
577
  type TScheduleTaskGetQuery = {
532
578
  page?: number;
533
579
  limit?: number;
534
580
  search?: string;
535
- } & Pick<TScheduleTask, "site">;
581
+ } & Pick<TScheduleTask, "site" | "serviceType">;
536
582
  type TScheduleTaskGetById = Pick<TScheduleTask, "title" | "time" | "dates" | "description" | "areas" | "status" | "createdBy" | "createdAt">;
537
583
  type TScheduleTaskUpdate = Partial<Pick<TScheduleTask, "title" | "time" | "dates" | "description" | "areas">>;
538
584
  declare const scheduleTaskSchema: Joi.ObjectSchema<any>;
539
585
  declare function MScheduleTask(value: TScheduleTaskCreate): {
540
586
  site: string | ObjectId;
587
+ serviceType: ServiceType;
541
588
  title: string;
542
589
  time: string;
543
590
  dates: string[];
@@ -557,15 +604,14 @@ declare function useScheduleTaskRepository(): {
557
604
  createIndex: () => Promise<void>;
558
605
  createTextIndex: () => Promise<void>;
559
606
  createScheduleTask: (value: TScheduleTaskCreate, session?: ClientSession) => Promise<ObjectId>;
560
- getScheduleTasks: ({ page, limit, search, site, }: TScheduleTaskGetQuery) => Promise<{}>;
607
+ getScheduleTasks: ({ page, limit, search, site, serviceType, }: TScheduleTaskGetQuery) => Promise<{}>;
561
608
  getAllScheduleTask: () => Promise<TScheduleTask[]>;
562
- getTasksForScheduleTask: ({ page, limit, search, site, }: TScheduleTaskGetQuery) => Promise<{}>;
563
609
  getScheduleTaskById: (_id: string | ObjectId, session?: ClientSession) => Promise<TScheduleTaskGetById>;
564
610
  updateScheduleTask: (_id: string | ObjectId, value: TScheduleTaskUpdate, session?: ClientSession) => Promise<number>;
565
611
  };
566
612
 
567
613
  declare function useScheduleTaskService(): {
568
- checkScheduleConditions: (schedule: any, currentDate?: Date) => boolean;
614
+ checkScheduleConditions: (schedule: any, serviceType: TServiceType, currentDate?: Date) => boolean;
569
615
  processScheduledTasks: (currentDate?: Date) => Promise<{
570
616
  processed: number;
571
617
  validated: number;
@@ -580,7 +626,6 @@ declare function useScheduleTaskService(): {
580
626
  declare function useScheduleTaskController(): {
581
627
  createScheduleTask: (req: Request, res: Response, next: NextFunction) => Promise<void>;
582
628
  getScheduleTasks: (req: Request, res: Response, next: NextFunction) => Promise<void>;
583
- getTasksForScheduleTask: (req: Request, res: Response, next: NextFunction) => Promise<void>;
584
629
  getScheduleTaskById: (req: Request, res: Response, next: NextFunction) => Promise<void>;
585
630
  updateScheduleTask: (req: Request, res: Response, next: NextFunction) => Promise<void>;
586
631
  };
@@ -594,4 +639,4 @@ declare function useQRController(): {
594
639
  generateQR: (req: Request, res: Response, next: NextFunction) => Promise<void>;
595
640
  };
596
641
 
597
- export { MArea, MAreaChecklist, MCheckOutItem, MParentChecklist, MScheduleTask, MStock, MSupply, MUnit, TArea, TAreaChecklist, TAreaChecklistBatchCreate, TAreaChecklistCreate, TAreaChecklistUnits, TAreaChecklistUnitsUpdate, TAreaChecklistUpdate, TAreaCreate, TAreaGetQuery, TAreaUnits, TAreaUpdate, TAreaUpdateChecklist, TCheckOutItem, TCheckOutItemCreate, TCheckOutItemCreateByBatchService, TCheckOutItemCreateService, TCheckOutItemGetById, TCheckOutItemGetQuery, TCleaningScheduleArea, TCleaningScheduleAreaGetQuery, TGetStocksQuery, TParentChecklist, TParentChecklistGetQuery, TScheduleTask, TScheduleTaskCreate, TScheduleTaskGetById, TScheduleTaskGetQuery, TScheduleTaskUpdate, TStock, TStockCreate, TStockCreateService, TSupply, TSupplyCreate, TSupplyGetById, TSupplyGetQuery, TSupplyUpdate, TUnit, TUnitCreate, TUnitGetQuery, TUnitUpdate, allowedCheckOutItemStatus, allowedChecklistStatus, allowedPeriods, allowedStatus, allowedTypes, areaChecklistSchema, areaSchema, checkOutItemSchema, parentChecklistSchema, scheduleTaskSchema, stockSchema, supplySchema, unitSchema, useAreaChecklistController, useAreaChecklistRepo, useAreaChecklistService, useAreaController, useAreaExportService, useAreaRepo, useAreaService, useCheckOutItemController, useCheckOutItemRepository, useCheckOutItemService, useHygieneDashboardController, useHygieneDashboardRepository, useParentChecklistController, useParentChecklistRepo, useQRController, useQRService, useScheduleTaskController, useScheduleTaskRepository, useScheduleTaskService, useStockController, useStockRepository, useStockService, useSupplyController, useSupplyRepository, useUnitController, useUnitExportService, useUnitRepository, useUnitService };
642
+ export { MArea, MAreaChecklist, MCheckOutItem, MParentChecklist, MScheduleTask, MStock, MSupply, MUnit, ServiceType, TArea, TAreaChecklist, TAreaChecklistBatchCreate, TAreaChecklistCreate, TAreaChecklistUnits, TAreaChecklistUnitsUpdate, TAreaChecklistUpdate, TAreaCreate, TAreaGetQuery, TAreaUnits, TAreaUpdate, TAreaUpdateChecklist, TCheckOutItem, TCheckOutItemCreate, TCheckOutItemCreateByBatchService, TCheckOutItemCreateService, TCheckOutItemGetById, TCheckOutItemGetQuery, TCleaningScheduleArea, TCleaningScheduleAreaGetQuery, TGetStocksQuery, TParentChecklist, TParentChecklistGetQuery, TScheduleTask, TScheduleTaskCreate, TScheduleTaskGetById, TScheduleTaskGetQuery, TScheduleTaskUpdate, TServiceType, TStock, TStockCreate, TStockCreateService, TSupply, TSupplyCreate, TSupplyGetById, TSupplyGetQuery, TSupplyUpdate, TUnit, TUnitCreate, TUnitGetQuery, TUnitUpdate, allowedCheckOutItemStatus, allowedChecklistStatus, allowedPeriods, allowedStatus, allowedTypes, areaChecklistSchema, areaSchema, checkOutItemSchema, parentChecklistSchema, scheduleTaskSchema, stockSchema, supplySchema, unitSchema, useAreaChecklistController, useAreaChecklistRepo, useAreaChecklistService, useAreaController, useAreaExportService, useAreaRepo, useAreaService, useCheckOutItemController, useCheckOutItemRepository, useCheckOutItemService, useHygieneDashboardController, useHygieneDashboardRepository, useParentChecklistController, useParentChecklistRepo, useQRController, useQRService, useScheduleTaskController, useScheduleTaskRepository, useScheduleTaskService, useStockController, useStockRepository, useStockService, useSupplyController, useSupplyRepository, useUnitController, useUnitExportService, useUnitRepository, useUnitService };