@kipicore/dbcore 1.1.16 → 1.1.17

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 (422) hide show
  1. package/dist/esm/configs/aws.js +9 -6
  2. package/dist/esm/configs/env.js +96 -57
  3. package/dist/esm/constants/app.js +336 -330
  4. package/dist/esm/constants/defaultModelAttributes.js +12 -9
  5. package/dist/esm/constants/errorMessages.js +219 -214
  6. package/dist/esm/constants/httpStatusCode.js +5 -2
  7. package/dist/esm/constants/successMessages.js +223 -217
  8. package/dist/esm/helpers/s3Uploader.js +25 -17
  9. package/dist/esm/helpers/utils.js +145 -66
  10. package/dist/esm/index.js +758 -151
  11. package/dist/esm/interfaces/academicCalendarInterface.js +2 -1
  12. package/dist/esm/interfaces/accountHasReceiptDetailsInterface.js +2 -1
  13. package/dist/esm/interfaces/announcementInterface.js +2 -1
  14. package/dist/esm/interfaces/approvalRequestInterface.js +2 -1
  15. package/dist/esm/interfaces/areaInterface.js +2 -1
  16. package/dist/esm/interfaces/attendanceInterface.js +2 -1
  17. package/dist/esm/interfaces/bankAccountDetailsInterface.js +2 -1
  18. package/dist/esm/interfaces/bannerInterface.js +2 -1
  19. package/dist/esm/interfaces/batchInterface.js +2 -1
  20. package/dist/esm/interfaces/batchSubjectBookAssessmentInterface.js +2 -1
  21. package/dist/esm/interfaces/batchSubjectProjectAssessmentInterface.js +2 -1
  22. package/dist/esm/interfaces/blogInterface.js +2 -1
  23. package/dist/esm/interfaces/bookAssessmentDateInterface.js +2 -1
  24. package/dist/esm/interfaces/careerInterface.js +2 -1
  25. package/dist/esm/interfaces/categoriesInterface.js +2 -1
  26. package/dist/esm/interfaces/certificatesHistoryInterface.js +2 -1
  27. package/dist/esm/interfaces/certificatesManagementInterface.js +2 -1
  28. package/dist/esm/interfaces/cityInterface.js +2 -1
  29. package/dist/esm/interfaces/classRoomInterface.js +2 -1
  30. package/dist/esm/interfaces/cloudStorageInterface.js +2 -1
  31. package/dist/esm/interfaces/coinPurchaseOfferInterface.js +2 -1
  32. package/dist/esm/interfaces/columnInterface.js +2 -1
  33. package/dist/esm/interfaces/commanInterface.js +2 -1
  34. package/dist/esm/interfaces/contactFeedBackInterface.js +2 -1
  35. package/dist/esm/interfaces/countryInterface.js +2 -1
  36. package/dist/esm/interfaces/courseHasVisitorsInterface.js +2 -1
  37. package/dist/esm/interfaces/courseInterface.js +2 -1
  38. package/dist/esm/interfaces/dailyBookInterface.js +2 -1
  39. package/dist/esm/interfaces/dashboardManagementInterface.js +2 -1
  40. package/dist/esm/interfaces/driverInterface.js +2 -1
  41. package/dist/esm/interfaces/entityGroupInterface.js +2 -1
  42. package/dist/esm/interfaces/eventInterface.js +2 -1
  43. package/dist/esm/interfaces/examGroupInterface.js +2 -1
  44. package/dist/esm/interfaces/examHasAnswerSheetInterface.js +2 -1
  45. package/dist/esm/interfaces/examInterface.js +2 -1
  46. package/dist/esm/interfaces/facilityInterface.js +2 -1
  47. package/dist/esm/interfaces/featureActionInterface.js +2 -1
  48. package/dist/esm/interfaces/feeHistoryDetailsInterface.js +2 -1
  49. package/dist/esm/interfaces/feeHistoryInterface.js +2 -1
  50. package/dist/esm/interfaces/feeReminderInterface.js +2 -1
  51. package/dist/esm/interfaces/feeReminderSettingInterface.js +2 -1
  52. package/dist/esm/interfaces/feeReminderTypeInterface.js +2 -1
  53. package/dist/esm/interfaces/feeTypeHasTermsInterface.js +2 -1
  54. package/dist/esm/interfaces/feeTypeInterface.js +2 -1
  55. package/dist/esm/interfaces/feedBackInterface.js +2 -1
  56. package/dist/esm/interfaces/feesCollectionInterface.js +2 -1
  57. package/dist/esm/interfaces/fileStorageInterface.js +2 -1
  58. package/dist/esm/interfaces/floorManagementInterface.js +2 -1
  59. package/dist/esm/interfaces/generateIdCardInterface.js +2 -1
  60. package/dist/esm/interfaces/greetingsInterface.js +2 -1
  61. package/dist/esm/interfaces/holidayInterface.js +2 -1
  62. package/dist/esm/interfaces/homeworkInterface.js +2 -1
  63. package/dist/esm/interfaces/informationSupportInterface.js +2 -1
  64. package/dist/esm/interfaces/inquiryInterface.js +2 -1
  65. package/dist/esm/interfaces/instituteEntityInterface.js +2 -1
  66. package/dist/esm/interfaces/instituteEntityTypeInterface.js +2 -1
  67. package/dist/esm/interfaces/instituteInterface.js +2 -1
  68. package/dist/esm/interfaces/instituteSubscriptionPlanInterface.js +2 -1
  69. package/dist/esm/interfaces/inventoryHistoryInterface.js +2 -1
  70. package/dist/esm/interfaces/inventoryInterface.js +2 -1
  71. package/dist/esm/interfaces/invoiceInterface.js +2 -1
  72. package/dist/esm/interfaces/jobApplyInterface.js +2 -1
  73. package/dist/esm/interfaces/lectureHistoryInterface.js +2 -1
  74. package/dist/esm/interfaces/lectureInterface.js +2 -1
  75. package/dist/esm/interfaces/masterLeaveInterface.js +2 -1
  76. package/dist/esm/interfaces/moduleFeatureInterface.js +2 -1
  77. package/dist/esm/interfaces/moduleInterface.js +2 -1
  78. package/dist/esm/interfaces/offersInterface.js +2 -1
  79. package/dist/esm/interfaces/paymentTermsInterface.js +2 -1
  80. package/dist/esm/interfaces/pdcChequeInterface.js +2 -1
  81. package/dist/esm/interfaces/pdcHistoryInterface.js +2 -1
  82. package/dist/esm/interfaces/photosGalleryInterface.js +2 -1
  83. package/dist/esm/interfaces/pincodeInterface.js +2 -1
  84. package/dist/esm/interfaces/plannerInterface.js +2 -1
  85. package/dist/esm/interfaces/productInterface.js +2 -1
  86. package/dist/esm/interfaces/projectAssessmentOptionInterface.js +2 -1
  87. package/dist/esm/interfaces/replaceTeacherInterface.js +2 -1
  88. package/dist/esm/interfaces/roleInterface.js +2 -1
  89. package/dist/esm/interfaces/rulesRegulationInterface.js +2 -1
  90. package/dist/esm/interfaces/schoolFeeCollectionInterface.js +2 -1
  91. package/dist/esm/interfaces/schoolFeeInterface.js +2 -1
  92. package/dist/esm/interfaces/schoolOfferInterface.js +2 -1
  93. package/dist/esm/interfaces/sendNotificationInerface.js +2 -1
  94. package/dist/esm/interfaces/slotInterface.js +2 -1
  95. package/dist/esm/interfaces/stateInterface.js +2 -1
  96. package/dist/esm/interfaces/subCategoriesInterface.js +2 -1
  97. package/dist/esm/interfaces/subjectHasFeeInterface.js +2 -1
  98. package/dist/esm/interfaces/subjectHasPayFeeHistoryInterface.js +2 -1
  99. package/dist/esm/interfaces/subjectIndexInterface.js +2 -1
  100. package/dist/esm/interfaces/subscriptionPlanInterface.js +2 -1
  101. package/dist/esm/interfaces/syllabusInterface.js +2 -1
  102. package/dist/esm/interfaces/taskManagementInterface.js +2 -1
  103. package/dist/esm/interfaces/testimonialInterface.js +2 -1
  104. package/dist/esm/interfaces/toDoInterface.js +2 -1
  105. package/dist/esm/interfaces/tokenInterface.js +2 -1
  106. package/dist/esm/interfaces/tripInterface.js +2 -1
  107. package/dist/esm/interfaces/typeManagementInterface.js +2 -1
  108. package/dist/esm/interfaces/uniqueNumberCounterInterface.js +2 -1
  109. package/dist/esm/interfaces/userBookAssessmentInterface.js +2 -1
  110. package/dist/esm/interfaces/userDetailsInterface.js +2 -1
  111. package/dist/esm/interfaces/userFeeTypeByAccountInterface.js +2 -1
  112. package/dist/esm/interfaces/userFeeTypeInterface.js +2 -1
  113. package/dist/esm/interfaces/userHasAnnouncementInterface.js +2 -1
  114. package/dist/esm/interfaces/userHasBatchInterface.js +2 -1
  115. package/dist/esm/interfaces/userHasCourseInterface.js +2 -1
  116. package/dist/esm/interfaces/userHasDeviceInterface.js +2 -1
  117. package/dist/esm/interfaces/userHasFeeTermsInterface.js +2 -1
  118. package/dist/esm/interfaces/userHasFileInterface.js +2 -1
  119. package/dist/esm/interfaces/userHasHomeWorkInterface.js +2 -1
  120. package/dist/esm/interfaces/userHasInventoryHistoryInterface.js +2 -1
  121. package/dist/esm/interfaces/userHasInventoryInterface.js +2 -1
  122. package/dist/esm/interfaces/userHasLeaveHistoryInterface.js +2 -1
  123. package/dist/esm/interfaces/userHasLeaveInterface.js +2 -1
  124. package/dist/esm/interfaces/userHasOfferInterface.js +2 -1
  125. package/dist/esm/interfaces/userHasParentInterface.js +2 -1
  126. package/dist/esm/interfaces/userHasRoleInterface.js +2 -1
  127. package/dist/esm/interfaces/userHasRollNumberInterface.js +2 -1
  128. package/dist/esm/interfaces/userHasStorageInterface.js +2 -1
  129. package/dist/esm/interfaces/userHasSubjectFeeInterface.js +2 -1
  130. package/dist/esm/interfaces/userInstituteMetaInterface.js +2 -1
  131. package/dist/esm/interfaces/userInterface.js +2 -1
  132. package/dist/esm/interfaces/userLeaveRequestInterface.js +2 -1
  133. package/dist/esm/interfaces/userMetaInterface.js +2 -1
  134. package/dist/esm/interfaces/userPayoutDetailsInterface.js +2 -1
  135. package/dist/esm/interfaces/userPayoutHistoryInterface.js +2 -1
  136. package/dist/esm/interfaces/userPayoutInterface.js +2 -1
  137. package/dist/esm/interfaces/userProjectAssessmentOptionInterface.js +2 -1
  138. package/dist/esm/interfaces/userRequiredStepsInterface.js +2 -1
  139. package/dist/esm/interfaces/userSchoolMetaInterface.js +2 -1
  140. package/dist/esm/interfaces/vehicleInterface.js +2 -1
  141. package/dist/esm/interfaces/vendorManagementInterface.js +2 -1
  142. package/dist/esm/interfaces/videoAnalystInterface.js +2 -1
  143. package/dist/esm/interfaces/walletHistoryInterface.js +2 -1
  144. package/dist/esm/interfaces/walletInterface.js +2 -1
  145. package/dist/esm/interfaces/walletTransactionInterface.js +2 -1
  146. package/dist/esm/interfaces/workingDayInterface.js +2 -1
  147. package/dist/esm/interfaces/workingShiftInterface.js +2 -1
  148. package/dist/esm/models/mongodb/approvalRequestModel.js +43 -8
  149. package/dist/esm/models/mongodb/attendanceModel.js +68 -30
  150. package/dist/esm/models/mongodb/blogModel.js +46 -11
  151. package/dist/esm/models/mongodb/careerModel.js +42 -7
  152. package/dist/esm/models/mongodb/certificatesHistoryModel.js +39 -4
  153. package/dist/esm/models/mongodb/certificatesManagementModel.js +42 -7
  154. package/dist/esm/models/mongodb/columnModel.js +45 -10
  155. package/dist/esm/models/mongodb/dailyBookModel.js +39 -4
  156. package/dist/esm/models/mongodb/dashboardManagementModel.js +46 -11
  157. package/dist/esm/models/mongodb/eventModel.js +58 -20
  158. package/dist/esm/models/mongodb/examGroupModel.js +69 -31
  159. package/dist/esm/models/mongodb/examHasAnswerSheetModel.js +56 -18
  160. package/dist/esm/models/mongodb/examModel.js +76 -38
  161. package/dist/esm/models/mongodb/feeReminderTypeModel.js +42 -7
  162. package/dist/esm/models/mongodb/feedBackModel.js +43 -8
  163. package/dist/esm/models/mongodb/generateIdCardModel.js +39 -4
  164. package/dist/esm/models/mongodb/holidayModel.js +58 -20
  165. package/dist/esm/models/mongodb/index.js +16 -11
  166. package/dist/esm/models/mongodb/informationSupportModel.js +42 -7
  167. package/dist/esm/models/mongodb/inquiryModel.js +67 -29
  168. package/dist/esm/models/mongodb/invoiceModel.js +48 -13
  169. package/dist/esm/models/mongodb/jobApplyModel.js +49 -14
  170. package/dist/esm/models/mongodb/photosGalleryModel.js +46 -11
  171. package/dist/esm/models/mongodb/plannerModel.js +45 -10
  172. package/dist/esm/models/mongodb/plugin/addDefaultAttributesPlugin.js +4 -1
  173. package/dist/esm/models/mongodb/plugin/transformIdInQueryPlugin.js +3 -1
  174. package/dist/esm/models/mongodb/plugin/transformIdInResponsePlugin.js +8 -3
  175. package/dist/esm/models/mongodb/replaceTeacherModel.js +46 -11
  176. package/dist/esm/models/mongodb/schoolFeeModel.js +56 -18
  177. package/dist/esm/models/mongodb/subjectIndexModel.js +145 -107
  178. package/dist/esm/models/mongodb/subscriptionPlanModel.js +47 -12
  179. package/dist/esm/models/mongodb/taskManagementModel.js +56 -18
  180. package/dist/esm/models/mongodb/uniqueNumberCounterModel.js +42 -7
  181. package/dist/esm/models/mongodb/userDetailsModel.js +68 -32
  182. package/dist/esm/models/mongodb/userDoc.js +6 -3
  183. package/dist/esm/models/mongodb/userInstituteMetaModel.js +54 -19
  184. package/dist/esm/models/mongodb/userSchoolMetaModel.js +46 -41
  185. package/dist/esm/models/mongodb/videoAnalystModel.js +40 -5
  186. package/dist/esm/models/mongodb/walletTransactionModel.js +56 -21
  187. package/dist/esm/models/psql/SubCategoriesModel.js +28 -23
  188. package/dist/esm/models/psql/academicCalendarModel.js +26 -21
  189. package/dist/esm/models/psql/accountHasReceiptDetailsModel.js +38 -33
  190. package/dist/esm/models/psql/announcementModel.js +58 -53
  191. package/dist/esm/models/psql/areaModel.js +17 -12
  192. package/dist/esm/models/psql/bankAccountDetailsModel.js +35 -30
  193. package/dist/esm/models/psql/bannerModel.js +40 -35
  194. package/dist/esm/models/psql/batchModel.js +53 -48
  195. package/dist/esm/models/psql/batchSubjectBookAssessmentModel.js +35 -30
  196. package/dist/esm/models/psql/batchSubjectProjectAssessmentModel.js +35 -30
  197. package/dist/esm/models/psql/bookAssessmentDateModel.js +25 -20
  198. package/dist/esm/models/psql/categoriesModel.js +24 -19
  199. package/dist/esm/models/psql/cityModel.js +21 -16
  200. package/dist/esm/models/psql/classRoomModel.js +36 -31
  201. package/dist/esm/models/psql/cloudStorageModel.js +30 -25
  202. package/dist/esm/models/psql/coinPurchaseOfferModel.js +31 -26
  203. package/dist/esm/models/psql/contactFeedBackModel.js +34 -29
  204. package/dist/esm/models/psql/countryModel.js +13 -11
  205. package/dist/esm/models/psql/courseHasVisitorsModel.js +22 -17
  206. package/dist/esm/models/psql/courseModel.js +41 -36
  207. package/dist/esm/models/psql/driverModel.js +51 -46
  208. package/dist/esm/models/psql/entityGroupModel.js +29 -24
  209. package/dist/esm/models/psql/facilityModel.js +34 -29
  210. package/dist/esm/models/psql/featureActionModel.js +28 -23
  211. package/dist/esm/models/psql/feeHistoryDetailsModel.js +45 -40
  212. package/dist/esm/models/psql/feeHistoryModel.js +78 -73
  213. package/dist/esm/models/psql/feeReminderModel.js +63 -58
  214. package/dist/esm/models/psql/feeReminderSettingModel.js +27 -22
  215. package/dist/esm/models/psql/feeTypeHasTermsModel.js +31 -26
  216. package/dist/esm/models/psql/feeTypeModel.js +42 -37
  217. package/dist/esm/models/psql/feesCollectionModel.js +55 -50
  218. package/dist/esm/models/psql/fileStorageModel.js +26 -21
  219. package/dist/esm/models/psql/floorManagementModel.js +25 -20
  220. package/dist/esm/models/psql/greetingsModel.js +34 -29
  221. package/dist/esm/models/psql/homeWorkModel.js +36 -31
  222. package/dist/esm/models/psql/index.js +15 -7
  223. package/dist/esm/models/psql/instituteEntityModel.js +34 -29
  224. package/dist/esm/models/psql/instituteEntityTypeModel.js +25 -20
  225. package/dist/esm/models/psql/instituteModel.js +70 -65
  226. package/dist/esm/models/psql/instituteSubscriptionPlanModel.js +42 -37
  227. package/dist/esm/models/psql/inventoryHistoryModel.js +42 -37
  228. package/dist/esm/models/psql/inventoryModel.js +36 -31
  229. package/dist/esm/models/psql/lectureHistoryModel.js +62 -57
  230. package/dist/esm/models/psql/lectureModel.js +111 -106
  231. package/dist/esm/models/psql/masterLeaveModel.js +41 -36
  232. package/dist/esm/models/psql/moduleFeatureModel.js +29 -24
  233. package/dist/esm/models/psql/moduleModel.js +30 -25
  234. package/dist/esm/models/psql/offerModel.js +39 -34
  235. package/dist/esm/models/psql/paymentTermsModel.js +35 -30
  236. package/dist/esm/models/psql/pdcChequeModel.js +40 -35
  237. package/dist/esm/models/psql/pdcHistoryModel.js +44 -39
  238. package/dist/esm/models/psql/pincodeModel.js +28 -23
  239. package/dist/esm/models/psql/productModel.js +32 -27
  240. package/dist/esm/models/psql/projectAssessmentOptionModel.js +23 -18
  241. package/dist/esm/models/psql/roleModel.js +26 -21
  242. package/dist/esm/models/psql/rulesRegulationModel.js +23 -18
  243. package/dist/esm/models/psql/schoolFeeCollectionModel.js +34 -29
  244. package/dist/esm/models/psql/schoolOfferModel.js +43 -38
  245. package/dist/esm/models/psql/sendNotificationModel.js +32 -27
  246. package/dist/esm/models/psql/slotModel.js +27 -22
  247. package/dist/esm/models/psql/stateModel.js +18 -13
  248. package/dist/esm/models/psql/subjectHasFeeModel.js +25 -20
  249. package/dist/esm/models/psql/subjectHasPayFeeHistoryModel.js +32 -27
  250. package/dist/esm/models/psql/syllabusModel.js +31 -26
  251. package/dist/esm/models/psql/testimonialModel.js +52 -47
  252. package/dist/esm/models/psql/toDoModel.js +35 -30
  253. package/dist/esm/models/psql/tokenModel.js +12 -10
  254. package/dist/esm/models/psql/tripModel.js +34 -29
  255. package/dist/esm/models/psql/typeManagementModel.js +32 -27
  256. package/dist/esm/models/psql/userBookAssessmentModel.js +34 -29
  257. package/dist/esm/models/psql/userFeeTypeByAccountModel.js +41 -36
  258. package/dist/esm/models/psql/userFeeTypeModel.js +44 -39
  259. package/dist/esm/models/psql/userHasAnnouncementModel.js +31 -26
  260. package/dist/esm/models/psql/userHasBatchModel.js +24 -19
  261. package/dist/esm/models/psql/userHasCourseModel.js +35 -30
  262. package/dist/esm/models/psql/userHasDeviceModel.js +26 -21
  263. package/dist/esm/models/psql/userHasFeeTermsModel.js +45 -40
  264. package/dist/esm/models/psql/userHasFileModel.js +29 -24
  265. package/dist/esm/models/psql/userHasHomeWorkModel.js +36 -31
  266. package/dist/esm/models/psql/userHasInventoryHistoryModel.js +41 -36
  267. package/dist/esm/models/psql/userHasInventoryModel.js +45 -40
  268. package/dist/esm/models/psql/userHasLeaveHistoryModel.js +41 -36
  269. package/dist/esm/models/psql/userHasLeaveModel.js +34 -29
  270. package/dist/esm/models/psql/userHasOfferModel.js +36 -31
  271. package/dist/esm/models/psql/userHasParentModel.js +31 -26
  272. package/dist/esm/models/psql/userHasRoleModel.js +27 -22
  273. package/dist/esm/models/psql/userHasRollNumberModel.js +28 -23
  274. package/dist/esm/models/psql/userHasStorageModel.js +27 -22
  275. package/dist/esm/models/psql/userHasSubjectFeeModel.js +27 -22
  276. package/dist/esm/models/psql/userLeaveRequestModel.js +43 -38
  277. package/dist/esm/models/psql/userModel.js +92 -87
  278. package/dist/esm/models/psql/userPayoutDetailsModel.js +41 -36
  279. package/dist/esm/models/psql/userPayoutHistoryModel.js +40 -35
  280. package/dist/esm/models/psql/userPayoutModel.js +63 -58
  281. package/dist/esm/models/psql/userProjectAssessmentOptionModel.js +31 -26
  282. package/dist/esm/models/psql/userRequiredStepsModel.js +22 -17
  283. package/dist/esm/models/psql/vehicleModel.js +30 -25
  284. package/dist/esm/models/psql/vendorManagementModel.js +44 -39
  285. package/dist/esm/models/psql/walletHistoryModel.js +34 -28
  286. package/dist/esm/models/psql/walletModel.js +25 -20
  287. package/dist/esm/models/psql/workingDayModel.js +24 -19
  288. package/dist/esm/models/psql/workingShiftModel.js +34 -29
  289. package/dist/esm/services/Concrete/mongooseCommonService.js +9 -5
  290. package/dist/esm/services/Concrete/sequelizeCommonService.js +9 -6
  291. package/dist/esm/services/Contracts/IMongooseCommonService.js +2 -1
  292. package/dist/esm/services/Contracts/ISequelizeCommonService.js +2 -1
  293. package/dist/esm/types/academicCalendarType.js +2 -1
  294. package/dist/esm/types/accountHasReceiptDetailsType.js +2 -1
  295. package/dist/esm/types/announcementType.js +2 -1
  296. package/dist/esm/types/approveRequestType.js +2 -1
  297. package/dist/esm/types/areaType.js +2 -1
  298. package/dist/esm/types/attendanceType.js +2 -1
  299. package/dist/esm/types/bankAccountDetailsType.js +2 -1
  300. package/dist/esm/types/bannerType.js +2 -1
  301. package/dist/esm/types/batchSubjectBookAssessmentType.js +2 -1
  302. package/dist/esm/types/batchSubjectProjectAssessmentType.js +2 -1
  303. package/dist/esm/types/batchType.js +2 -1
  304. package/dist/esm/types/blogType.js +2 -1
  305. package/dist/esm/types/bookAssessmentDateType.js +2 -1
  306. package/dist/esm/types/careerType.js +2 -1
  307. package/dist/esm/types/categoriesType.js +2 -1
  308. package/dist/esm/types/certificatesHistoryType.js +2 -1
  309. package/dist/esm/types/certificatesManagementType.js +2 -1
  310. package/dist/esm/types/classRoomType.js +2 -1
  311. package/dist/esm/types/cloudStorageType.js +2 -1
  312. package/dist/esm/types/coinPurchaseOfferType.js +2 -1
  313. package/dist/esm/types/commonType.js +2 -1
  314. package/dist/esm/types/contactFeedBackType.js +2 -1
  315. package/dist/esm/types/courseHasVisitorsType.js +2 -1
  316. package/dist/esm/types/courseType.js +2 -1
  317. package/dist/esm/types/dailyBookType.js +2 -1
  318. package/dist/esm/types/dashboardManagementType.js +2 -1
  319. package/dist/esm/types/driverType.js +2 -1
  320. package/dist/esm/types/entityGroupType.js +2 -1
  321. package/dist/esm/types/eventType.js +2 -1
  322. package/dist/esm/types/examGroupType.js +2 -1
  323. package/dist/esm/types/examHasAnswerSheetType.js +2 -1
  324. package/dist/esm/types/examType.js +2 -1
  325. package/dist/esm/types/facilityType.js +2 -1
  326. package/dist/esm/types/featureActionType.js +2 -1
  327. package/dist/esm/types/feeHistoryDetailsType.js +2 -1
  328. package/dist/esm/types/feeHistoryType.js +2 -1
  329. package/dist/esm/types/feeReminderSettingType.js +2 -1
  330. package/dist/esm/types/feeReminderType.js +2 -1
  331. package/dist/esm/types/feeReminderTypeType.js +2 -1
  332. package/dist/esm/types/feeTypeHasTermsType.js +2 -1
  333. package/dist/esm/types/feeTypeType.js +2 -1
  334. package/dist/esm/types/feedBackType.js +2 -1
  335. package/dist/esm/types/feesCollectionType.js +2 -1
  336. package/dist/esm/types/fileStorageType.js +2 -1
  337. package/dist/esm/types/floormanagementType.js +2 -1
  338. package/dist/esm/types/generateIdCardType.js +2 -1
  339. package/dist/esm/types/greetingsType.js +2 -1
  340. package/dist/esm/types/holidayType.js +2 -1
  341. package/dist/esm/types/homeWorkType.js +2 -1
  342. package/dist/esm/types/informationSupportType.js +2 -1
  343. package/dist/esm/types/inquiryType.js +2 -1
  344. package/dist/esm/types/instituteEntityType.js +2 -1
  345. package/dist/esm/types/instituteEntityTypeType.js +2 -1
  346. package/dist/esm/types/instituteSubscriptionPlanType.js +2 -1
  347. package/dist/esm/types/instituteType.js +2 -1
  348. package/dist/esm/types/inventoryHistoryType.js +2 -1
  349. package/dist/esm/types/inventoryType.js +2 -1
  350. package/dist/esm/types/jobApply.js +2 -1
  351. package/dist/esm/types/lectureHistoryType.js +2 -1
  352. package/dist/esm/types/lectureType.js +2 -1
  353. package/dist/esm/types/masterLeaveType.js +2 -1
  354. package/dist/esm/types/moduleFeatureType.js +2 -1
  355. package/dist/esm/types/moduleType.js +2 -1
  356. package/dist/esm/types/offerType.js +2 -1
  357. package/dist/esm/types/paymentTermsType.js +2 -1
  358. package/dist/esm/types/pdcChequeType.js +2 -1
  359. package/dist/esm/types/pdcHistoryType.js +2 -1
  360. package/dist/esm/types/photosGalleryType.js +2 -1
  361. package/dist/esm/types/plannerType.js +2 -1
  362. package/dist/esm/types/productType.js +2 -1
  363. package/dist/esm/types/projectAssessmentOptionType.js +2 -1
  364. package/dist/esm/types/roleType.js +2 -1
  365. package/dist/esm/types/rulesRegulationType.js +2 -1
  366. package/dist/esm/types/schoolFeeCollectionType.js +2 -1
  367. package/dist/esm/types/schoolFeeType.js +2 -1
  368. package/dist/esm/types/schoolOfferType.js +2 -1
  369. package/dist/esm/types/sendNotificationType.js +2 -1
  370. package/dist/esm/types/slotType.js +2 -1
  371. package/dist/esm/types/subCategoryType.js +2 -1
  372. package/dist/esm/types/subjectHasFeeType.js +2 -1
  373. package/dist/esm/types/subjectHasPayFeeHistoryType.js +2 -1
  374. package/dist/esm/types/subjectIndexType.js +2 -1
  375. package/dist/esm/types/subscriptionPlanType.js +2 -1
  376. package/dist/esm/types/syllabusType.js +2 -1
  377. package/dist/esm/types/taskManagementType.js +2 -1
  378. package/dist/esm/types/testimonialType.js +2 -1
  379. package/dist/esm/types/toDoType.js +2 -1
  380. package/dist/esm/types/tripType.js +2 -1
  381. package/dist/esm/types/typeManagementType.js +2 -1
  382. package/dist/esm/types/uniqueNumberCounterType.js +2 -1
  383. package/dist/esm/types/userBookAssessmentType.js +2 -1
  384. package/dist/esm/types/userDetailsType.js +2 -1
  385. package/dist/esm/types/userFeeTypeByAccountType.js +2 -1
  386. package/dist/esm/types/userFeeTypeType.js +2 -1
  387. package/dist/esm/types/userHasAnnouncementType.js +2 -1
  388. package/dist/esm/types/userHasBatchType.js +2 -1
  389. package/dist/esm/types/userHasCourseType.js +2 -1
  390. package/dist/esm/types/userHasDeviceType.js +2 -1
  391. package/dist/esm/types/userHasFeeTermsType.js +2 -1
  392. package/dist/esm/types/userHasFileType.js +2 -1
  393. package/dist/esm/types/userHasHomeWorkType.js +2 -1
  394. package/dist/esm/types/userHasInventoryHistoryType.js +2 -1
  395. package/dist/esm/types/userHasInventoryType.js +2 -1
  396. package/dist/esm/types/userHasLeaveHistoryType.js +2 -1
  397. package/dist/esm/types/userHasLeaveType.js +2 -1
  398. package/dist/esm/types/userHasOffer.js +2 -1
  399. package/dist/esm/types/userHasParentType.js +2 -1
  400. package/dist/esm/types/userHasRoleType.js +2 -1
  401. package/dist/esm/types/userHasRollNumberType.js +2 -1
  402. package/dist/esm/types/userHasStorageType.js +2 -1
  403. package/dist/esm/types/userHasSubjectFeeType.js +2 -1
  404. package/dist/esm/types/userInstituteMetaType.js +2 -1
  405. package/dist/esm/types/userLeaveRequestType.js +2 -1
  406. package/dist/esm/types/userMetaType.js +2 -1
  407. package/dist/esm/types/userPayoutDetailsType.js +2 -1
  408. package/dist/esm/types/userPayoutHistoryType.js +2 -1
  409. package/dist/esm/types/userPayoutType.js +2 -1
  410. package/dist/esm/types/userProjectAssessmentOptionType.js +2 -1
  411. package/dist/esm/types/userRequiredStepsType.js +2 -1
  412. package/dist/esm/types/userSchoolMetaType.js +2 -1
  413. package/dist/esm/types/userType.js +2 -1
  414. package/dist/esm/types/vehicleType.js +2 -1
  415. package/dist/esm/types/vendorType.js +2 -1
  416. package/dist/esm/types/videoAnalystType.js +2 -1
  417. package/dist/esm/types/walletHistoryType.js +2 -1
  418. package/dist/esm/types/walletTransactionType.js +2 -1
  419. package/dist/esm/types/walletType.js +2 -1
  420. package/dist/esm/types/workingDayType.js +2 -1
  421. package/dist/esm/types/workingShiftType.js +2 -1
  422. package/package.json +3 -3
@@ -1,70 +1,75 @@
1
- import { DataTypes, Model, Op } from 'sequelize';
2
- import { sequelize } from './index.js';
3
- import UserModel from './userModel.js';
4
- import InstituteModel from './instituteModel.js';
5
- import { FEE_HISTORY_STATUS, INSTITUTE_ENTITY_TYPE_SEQUENCE, PAYMENT_TYPE, USER_INSTITUTE_META_STATUS } from '../../constants/app.js';
6
- import { FEESCOLLECTION_ERROR_MESSAGES, FILE_STORAGE_ERROR_MESSAGES, USER_INSTITUTE_META_ERROR_MESSAGES } from '../../constants/errorMessages.js';
7
- import FeesCollectionModel from './feesCollectionModel.js';
8
- import FileStorageModel from './fileStorageModel.js';
9
- import BankAccountDetailsModel from './bankAccountDetailsModel.js';
10
- import SchoolFeeCollectionModel from './schoolFeeCollectionModel.js';
11
- import UserInstituteMeta from '../mongodb/userInstituteMetaModel.js';
12
- import InstituteEntityModel from './instituteEntityModel.js';
13
- import UserHasSubjectFeeModel from './userHasSubjectFeeModel.js';
14
- import SubjectHasPayFeeHistory from './subjectHasPayFeeHistoryModel.js';
15
- class FeeHistoryModel extends Model {
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const sequelize_1 = require("sequelize");
7
+ const index_js_1 = require("./index.js");
8
+ const userModel_js_1 = __importDefault(require("./userModel.js"));
9
+ const instituteModel_js_1 = __importDefault(require("./instituteModel.js"));
10
+ const app_js_1 = require("../../constants/app.js");
11
+ const errorMessages_js_1 = require("../../constants/errorMessages.js");
12
+ const feesCollectionModel_js_1 = __importDefault(require("./feesCollectionModel.js"));
13
+ const fileStorageModel_js_1 = __importDefault(require("./fileStorageModel.js"));
14
+ const bankAccountDetailsModel_js_1 = __importDefault(require("./bankAccountDetailsModel.js"));
15
+ const schoolFeeCollectionModel_js_1 = __importDefault(require("./schoolFeeCollectionModel.js"));
16
+ const userInstituteMetaModel_js_1 = __importDefault(require("../mongodb/userInstituteMetaModel.js"));
17
+ const instituteEntityModel_js_1 = __importDefault(require("./instituteEntityModel.js"));
18
+ const userHasSubjectFeeModel_js_1 = __importDefault(require("./userHasSubjectFeeModel.js"));
19
+ const subjectHasPayFeeHistoryModel_js_1 = __importDefault(require("./subjectHasPayFeeHistoryModel.js"));
20
+ class FeeHistoryModel extends sequelize_1.Model {
16
21
  }
17
22
  FeeHistoryModel.init({
18
23
  id: {
19
- type: DataTypes.UUID,
20
- defaultValue: DataTypes.UUIDV4,
24
+ type: sequelize_1.DataTypes.UUID,
25
+ defaultValue: sequelize_1.DataTypes.UUIDV4,
21
26
  allowNull: false,
22
27
  primaryKey: true,
23
28
  },
24
29
  instituteId: {
25
- type: DataTypes.UUID,
30
+ type: sequelize_1.DataTypes.UUID,
26
31
  field: 'institute_id',
27
32
  allowNull: false,
28
33
  },
29
34
  pdfId: {
30
- type: DataTypes.UUID,
35
+ type: sequelize_1.DataTypes.UUID,
31
36
  field: 'pdf_id',
32
37
  allowNull: true,
33
38
  },
34
39
  invoiceId: {
35
- type: DataTypes.INTEGER,
40
+ type: sequelize_1.DataTypes.INTEGER,
36
41
  field: 'invoice_id',
37
42
  defaultValue: null,
38
43
  allowNull: true,
39
44
  },
40
45
  userId: {
41
- type: DataTypes.UUID,
46
+ type: sequelize_1.DataTypes.UUID,
42
47
  field: 'user_id',
43
48
  allowNull: false,
44
49
  },
45
50
  feeCollectionId: {
46
- type: DataTypes.UUID,
51
+ type: sequelize_1.DataTypes.UUID,
47
52
  field: 'fee_collection_id',
48
53
  allowNull: true,
49
54
  },
50
55
  parentHistoryId: {
51
- type: DataTypes.UUID,
56
+ type: sequelize_1.DataTypes.UUID,
52
57
  field: 'parent_history_id',
53
58
  allowNull: true,
54
59
  },
55
60
  bankAccountId: {
56
- type: DataTypes.UUID,
61
+ type: sequelize_1.DataTypes.UUID,
57
62
  field: 'bank_account_id',
58
63
  allowNull: true,
59
64
  },
60
65
  feeTypeId: {
61
- type: DataTypes.ARRAY(DataTypes.STRING),
66
+ type: sequelize_1.DataTypes.ARRAY(sequelize_1.DataTypes.STRING),
62
67
  defaultValue: [],
63
68
  field: 'fee_type_id',
64
69
  allowNull: true,
65
70
  },
66
71
  schoolFeeCollectionId: {
67
- type: DataTypes.UUID,
72
+ type: sequelize_1.DataTypes.UUID,
68
73
  field: 'school_fee_collection_id',
69
74
  allowNull: true,
70
75
  },
@@ -74,45 +79,45 @@ FeeHistoryModel.init({
74
79
  // allowNull: false,
75
80
  // },
76
81
  paidDate: {
77
- type: DataTypes.DATE,
78
- defaultValue: DataTypes.NOW,
82
+ type: sequelize_1.DataTypes.DATE,
83
+ defaultValue: sequelize_1.DataTypes.NOW,
79
84
  allowNull: false,
80
85
  },
81
86
  paidFee: {
82
- type: DataTypes.INTEGER,
87
+ type: sequelize_1.DataTypes.INTEGER,
83
88
  allowNull: false,
84
89
  },
85
90
  paymentType: {
86
- type: DataTypes.ENUM,
87
- values: Object.values(PAYMENT_TYPE),
91
+ type: sequelize_1.DataTypes.ENUM,
92
+ values: Object.values(app_js_1.PAYMENT_TYPE),
88
93
  allowNull: true,
89
94
  // defaultValue: PAYMENT_TYPE.CASH,
90
95
  },
91
96
  status: {
92
- type: DataTypes.ENUM,
93
- values: Object.values(FEE_HISTORY_STATUS),
97
+ type: sequelize_1.DataTypes.ENUM,
98
+ values: Object.values(app_js_1.FEE_HISTORY_STATUS),
94
99
  allowNull: true,
95
- defaultValue: FEE_HISTORY_STATUS.PENDING,
100
+ defaultValue: app_js_1.FEE_HISTORY_STATUS.PENDING,
96
101
  },
97
102
  bankName: {
98
- type: DataTypes.STRING,
103
+ type: sequelize_1.DataTypes.STRING,
99
104
  allowNull: true,
100
105
  },
101
106
  chequeNo: {
102
- type: DataTypes.STRING,
107
+ type: sequelize_1.DataTypes.STRING,
103
108
  allowNull: true,
104
109
  },
105
110
  upiId: {
106
- type: DataTypes.STRING,
111
+ type: sequelize_1.DataTypes.STRING,
107
112
  allowNull: true,
108
113
  },
109
114
  }, {
110
115
  modelName: 'FeeHistoryModel',
111
116
  tableName: 'fee_history',
112
117
  timestamps: true,
113
- sequelize,
118
+ sequelize: index_js_1.sequelize,
114
119
  });
115
- FeeHistoryModel.belongsTo(FeesCollectionModel, {
120
+ FeeHistoryModel.belongsTo(feesCollectionModel_js_1.default, {
116
121
  foreignKey: {
117
122
  name: 'feeCollectionId',
118
123
  field: 'fee_collection_id',
@@ -120,7 +125,7 @@ FeeHistoryModel.belongsTo(FeesCollectionModel, {
120
125
  },
121
126
  as: 'feeHistoryFeeCollection',
122
127
  });
123
- FeesCollectionModel.hasMany(FeeHistoryModel, {
128
+ feesCollectionModel_js_1.default.hasMany(FeeHistoryModel, {
124
129
  foreignKey: {
125
130
  name: 'feeCollectionId',
126
131
  field: 'fee_collection_id',
@@ -128,7 +133,7 @@ FeesCollectionModel.hasMany(FeeHistoryModel, {
128
133
  },
129
134
  as: 'feeCollectionHasFeeHistory',
130
135
  });
131
- FeeHistoryModel.belongsTo(FileStorageModel, {
136
+ FeeHistoryModel.belongsTo(fileStorageModel_js_1.default, {
132
137
  foreignKey: {
133
138
  name: 'pdfId',
134
139
  field: 'pdf_id',
@@ -136,7 +141,7 @@ FeeHistoryModel.belongsTo(FileStorageModel, {
136
141
  },
137
142
  as: 'feeHistoryFile',
138
143
  });
139
- FileStorageModel.hasMany(FeeHistoryModel, {
144
+ fileStorageModel_js_1.default.hasMany(FeeHistoryModel, {
140
145
  foreignKey: {
141
146
  name: 'pdfId',
142
147
  field: 'pdf_id',
@@ -144,7 +149,7 @@ FileStorageModel.hasMany(FeeHistoryModel, {
144
149
  },
145
150
  as: 'filesHasFeeHistory',
146
151
  });
147
- FeeHistoryModel.belongsTo(BankAccountDetailsModel, {
152
+ FeeHistoryModel.belongsTo(bankAccountDetailsModel_js_1.default, {
148
153
  foreignKey: {
149
154
  name: 'bankAccountId',
150
155
  field: 'bank_account_id',
@@ -152,7 +157,7 @@ FeeHistoryModel.belongsTo(BankAccountDetailsModel, {
152
157
  },
153
158
  as: 'feeHistoryAccount',
154
159
  });
155
- BankAccountDetailsModel.hasMany(FeeHistoryModel, {
160
+ bankAccountDetailsModel_js_1.default.hasMany(FeeHistoryModel, {
156
161
  foreignKey: {
157
162
  name: 'bankAccountId',
158
163
  field: 'bank_account_id',
@@ -176,7 +181,7 @@ FeeHistoryModel.hasMany(FeeHistoryModel, {
176
181
  },
177
182
  as: 'feeHistoryHas',
178
183
  });
179
- FeeHistoryModel.belongsTo(SchoolFeeCollectionModel, {
184
+ FeeHistoryModel.belongsTo(schoolFeeCollectionModel_js_1.default, {
180
185
  foreignKey: {
181
186
  name: 'schoolFeeCollectionId',
182
187
  field: 'school_fee_collection_id',
@@ -184,7 +189,7 @@ FeeHistoryModel.belongsTo(SchoolFeeCollectionModel, {
184
189
  },
185
190
  as: 'feeHistorySchool',
186
191
  });
187
- SchoolFeeCollectionModel.hasMany(FeeHistoryModel, {
192
+ schoolFeeCollectionModel_js_1.default.hasMany(FeeHistoryModel, {
188
193
  foreignKey: {
189
194
  name: 'schoolFeeCollectionId',
190
195
  field: 'school_fee_collection_id',
@@ -192,29 +197,29 @@ SchoolFeeCollectionModel.hasMany(FeeHistoryModel, {
192
197
  },
193
198
  as: 'feeHistoryHasSchool',
194
199
  });
195
- FeeHistoryModel.belongsTo(InstituteModel, {
200
+ FeeHistoryModel.belongsTo(instituteModel_js_1.default, {
196
201
  foreignKey: {
197
202
  name: 'instituteId',
198
203
  field: 'institute_id',
199
204
  },
200
205
  as: 'feeHistoryInstitute',
201
206
  });
202
- InstituteModel.hasMany(FeeHistoryModel, {
207
+ instituteModel_js_1.default.hasMany(FeeHistoryModel, {
203
208
  foreignKey: 'instituteId',
204
209
  as: 'instituteHasFeeHistory',
205
210
  });
206
- FeeHistoryModel.belongsTo(UserModel, {
211
+ FeeHistoryModel.belongsTo(userModel_js_1.default, {
207
212
  foreignKey: {
208
213
  name: 'userId',
209
214
  field: 'user_id',
210
215
  },
211
216
  as: 'feeHistoryUser',
212
217
  });
213
- UserModel.hasMany(FeeHistoryModel, {
218
+ userModel_js_1.default.hasMany(FeeHistoryModel, {
214
219
  foreignKey: 'userId',
215
220
  as: 'userHasFeeHistory',
216
221
  });
217
- FeeHistoryModel.belongsTo(UserModel, {
222
+ FeeHistoryModel.belongsTo(userModel_js_1.default, {
218
223
  foreignKey: {
219
224
  name: 'createdBy',
220
225
  allowNull: true,
@@ -222,7 +227,7 @@ FeeHistoryModel.belongsTo(UserModel, {
222
227
  },
223
228
  as: 'createdByUser',
224
229
  });
225
- FeeHistoryModel.belongsTo(UserModel, {
230
+ FeeHistoryModel.belongsTo(userModel_js_1.default, {
226
231
  foreignKey: {
227
232
  name: 'updatedBy',
228
233
  allowNull: true,
@@ -230,7 +235,7 @@ FeeHistoryModel.belongsTo(UserModel, {
230
235
  },
231
236
  as: 'updatedByUser',
232
237
  });
233
- FeeHistoryModel.belongsTo(UserModel, {
238
+ FeeHistoryModel.belongsTo(userModel_js_1.default, {
234
239
  foreignKey: {
235
240
  name: 'deletedBy',
236
241
  allowNull: true,
@@ -240,35 +245,35 @@ FeeHistoryModel.belongsTo(UserModel, {
240
245
  });
241
246
  const subjectWiserFeePay = async (instituteId, feeCollectionId, paidFee, userId) => {
242
247
  try {
243
- const userInstituteMeta = await UserInstituteMeta.findOne({
248
+ const userInstituteMeta = await userInstituteMetaModel_js_1.default.findOne({
244
249
  userId,
245
250
  instituteId,
246
- status: USER_INSTITUTE_META_STATUS.ACCEPTED,
251
+ status: app_js_1.USER_INSTITUTE_META_STATUS.ACCEPTED,
247
252
  });
248
253
  if (!userInstituteMeta) {
249
- throw new Error(USER_INSTITUTE_META_ERROR_MESSAGES.NOT_FOUND);
254
+ throw new Error(errorMessages_js_1.USER_INSTITUTE_META_ERROR_MESSAGES.NOT_FOUND);
250
255
  }
251
- const subjects = await InstituteEntityModel.findAll({
256
+ const subjects = await instituteEntityModel_js_1.default.findAll({
252
257
  where: {
253
- id: { [Op.in]: userInstituteMeta.entities },
258
+ id: { [sequelize_1.Op.in]: userInstituteMeta.entities },
254
259
  },
255
260
  include: [
256
261
  {
257
262
  association: 'entityType',
258
- where: { sequence: INSTITUTE_ENTITY_TYPE_SEQUENCE.LAST },
263
+ where: { sequence: app_js_1.INSTITUTE_ENTITY_TYPE_SEQUENCE.LAST },
259
264
  },
260
265
  ],
261
266
  });
262
267
  const subjectIds = subjects.map(subject => subject.id);
263
- const fees = await UserHasSubjectFeeModel.findAll({
268
+ const fees = await userHasSubjectFeeModel_js_1.default.findAll({
264
269
  where: {
265
- subjectId: { [Op.in]: subjectIds },
270
+ subjectId: { [sequelize_1.Op.in]: subjectIds },
266
271
  instituteId,
267
272
  },
268
273
  });
269
- const feeCollection = await FeesCollectionModel.findByPk(feeCollectionId);
274
+ const feeCollection = await feesCollectionModel_js_1.default.findByPk(feeCollectionId);
270
275
  if (!feeCollection) {
271
- throw new Error(FEESCOLLECTION_ERROR_MESSAGES.NOT_FOUND);
276
+ throw new Error(errorMessages_js_1.FEESCOLLECTION_ERROR_MESSAGES.NOT_FOUND);
272
277
  }
273
278
  // const totalFeeAmount = Number(fees.reduce((total, fee) => total + fee.fee, 0));
274
279
  const feeDistribution = fees.map(fee => {
@@ -279,7 +284,7 @@ const subjectWiserFeePay = async (instituteId, feeCollectionId, paidFee, userId)
279
284
  };
280
285
  });
281
286
  const feeHistoryEntries = await Promise.all(feeDistribution.map(async (distribution) => {
282
- return SubjectHasPayFeeHistory.create({
287
+ return subjectHasPayFeeHistoryModel_js_1.default.create({
283
288
  instituteId,
284
289
  userId,
285
290
  subjectId: distribution.subjectId,
@@ -295,34 +300,34 @@ const subjectWiserFeePay = async (instituteId, feeCollectionId, paidFee, userId)
295
300
  };
296
301
  const beforeCreateOrUpdateHook = async (feeCollection) => {
297
302
  if (feeCollection.paidFee) {
298
- if (feeCollection.paymentType === PAYMENT_TYPE.CHEQUE) {
303
+ if (feeCollection.paymentType === app_js_1.PAYMENT_TYPE.CHEQUE) {
299
304
  feeCollection.upiId = null;
300
305
  if (!feeCollection.chequeNo || !feeCollection.bankName) {
301
- throw new Error(FEESCOLLECTION_ERROR_MESSAGES.FEE_PAID_BY_CHQUE);
306
+ throw new Error(errorMessages_js_1.FEESCOLLECTION_ERROR_MESSAGES.FEE_PAID_BY_CHQUE);
302
307
  }
303
308
  }
304
- else if (feeCollection.paymentType === PAYMENT_TYPE.UPI) {
309
+ else if (feeCollection.paymentType === app_js_1.PAYMENT_TYPE.UPI) {
305
310
  feeCollection.chequeNo = null;
306
311
  feeCollection.bankName = null;
307
312
  if (!feeCollection.upiId) {
308
- throw new Error(FEESCOLLECTION_ERROR_MESSAGES.FEE_PAID_BY_UPI);
313
+ throw new Error(errorMessages_js_1.FEESCOLLECTION_ERROR_MESSAGES.FEE_PAID_BY_UPI);
309
314
  }
310
315
  }
311
- else if (feeCollection.paymentType === PAYMENT_TYPE.CASH) {
316
+ else if (feeCollection.paymentType === app_js_1.PAYMENT_TYPE.CASH) {
312
317
  feeCollection.bankName = null;
313
318
  feeCollection.chequeNo = null;
314
319
  feeCollection.upiId = null;
315
320
  }
316
321
  else
317
- throw new Error(FEESCOLLECTION_ERROR_MESSAGES.PAYMENT_TYPE_REQUIRED);
322
+ throw new Error(errorMessages_js_1.FEESCOLLECTION_ERROR_MESSAGES.PAYMENT_TYPE_REQUIRED);
318
323
  if (feeCollection.pdfId) {
319
- const pdfUrl = await FileStorageModel.findByPk(feeCollection.pdfId);
324
+ const pdfUrl = await fileStorageModel_js_1.default.findByPk(feeCollection.pdfId);
320
325
  if (!pdfUrl)
321
- throw new Error(FILE_STORAGE_ERROR_MESSAGES.NOT_FOUND);
326
+ throw new Error(errorMessages_js_1.FILE_STORAGE_ERROR_MESSAGES.NOT_FOUND);
322
327
  }
323
328
  }
324
329
  if ((!feeCollection.feeTypeId || feeCollection.feeTypeId.length === 0) && !feeCollection.bankAccountId)
325
330
  await subjectWiserFeePay(feeCollection.instituteId, feeCollection.feeCollectionId, feeCollection.paidFee, feeCollection.userId);
326
331
  };
327
332
  FeeHistoryModel.beforeCreate(beforeCreateOrUpdateHook);
328
- export default FeeHistoryModel;
333
+ exports.default = FeeHistoryModel;
@@ -1,100 +1,105 @@
1
- import { DataTypes, Model, Op, Sequelize } from 'sequelize';
2
- import { sequelize } from './index.js';
3
- import InstituteModel from './instituteModel.js';
4
- import UserModel from './userModel.js';
5
- import FeesCollectionModel from './feesCollectionModel.js';
6
- import FeeReminderSettingModel from './feeReminderSettingModel.js';
7
- import { BATCH_ERROR_MESSAGES, FEEREMINDER_ERROR_MESSAGES } from '../../constants/errorMessages.js';
8
- import { FEE_PAYMENT_STATUS } from '../../constants/app.js';
9
- import UserHasBatchModel from './userHasBatchModel.js';
10
- import BatchModel from './batchModel.js';
11
- class FeeReminderModel extends Model {
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const sequelize_1 = require("sequelize");
7
+ const index_js_1 = require("./index.js");
8
+ const instituteModel_js_1 = __importDefault(require("./instituteModel.js"));
9
+ const userModel_js_1 = __importDefault(require("./userModel.js"));
10
+ const feesCollectionModel_js_1 = __importDefault(require("./feesCollectionModel.js"));
11
+ const feeReminderSettingModel_js_1 = __importDefault(require("./feeReminderSettingModel.js"));
12
+ const errorMessages_js_1 = require("../../constants/errorMessages.js");
13
+ const app_js_1 = require("../../constants/app.js");
14
+ const userHasBatchModel_js_1 = __importDefault(require("./userHasBatchModel.js"));
15
+ const batchModel_js_1 = __importDefault(require("./batchModel.js"));
16
+ class FeeReminderModel extends sequelize_1.Model {
12
17
  }
13
18
  FeeReminderModel.init({
14
19
  id: {
15
- type: DataTypes.UUID,
16
- defaultValue: DataTypes.UUIDV4,
20
+ type: sequelize_1.DataTypes.UUID,
21
+ defaultValue: sequelize_1.DataTypes.UUIDV4,
17
22
  allowNull: false,
18
23
  primaryKey: true,
19
24
  },
20
25
  userId: {
21
- type: DataTypes.UUID,
26
+ type: sequelize_1.DataTypes.UUID,
22
27
  allowNull: false,
23
28
  },
24
29
  instituteId: {
25
- type: DataTypes.UUID,
30
+ type: sequelize_1.DataTypes.UUID,
26
31
  allowNull: false,
27
32
  },
28
33
  sendDate: {
29
- type: DataTypes.DATE,
34
+ type: sequelize_1.DataTypes.DATE,
30
35
  allowNull: false,
31
- defaultValue: Sequelize.literal('CURRENT_TIMESTAMP'),
36
+ defaultValue: sequelize_1.Sequelize.literal('CURRENT_TIMESTAMP'),
32
37
  },
33
38
  dueDate: {
34
- type: DataTypes.DATE,
39
+ type: sequelize_1.DataTypes.DATE,
35
40
  allowNull: false,
36
41
  },
37
42
  dueAmount: {
38
- type: DataTypes.INTEGER,
43
+ type: sequelize_1.DataTypes.INTEGER,
39
44
  defaultValue: 0,
40
45
  allowNull: false,
41
46
  },
42
47
  templateId: {
43
- type: DataTypes.UUID,
48
+ type: sequelize_1.DataTypes.UUID,
44
49
  allowNull: false,
45
50
  },
46
51
  batchId: {
47
- type: DataTypes.UUID,
52
+ type: sequelize_1.DataTypes.UUID,
48
53
  allowNull: true,
49
54
  },
50
55
  subjectId: {
51
- type: DataTypes.UUID,
56
+ type: sequelize_1.DataTypes.UUID,
52
57
  allowNull: true,
53
58
  },
54
59
  feeCollectionId: {
55
- type: DataTypes.UUID,
60
+ type: sequelize_1.DataTypes.UUID,
56
61
  allowNull: false,
57
62
  },
58
63
  }, {
59
64
  modelName: 'FeeReminderModel',
60
65
  tableName: 'fee_reminders',
61
66
  timestamps: true,
62
- sequelize,
67
+ sequelize: index_js_1.sequelize,
63
68
  });
64
- FeeReminderModel.belongsTo(UserModel, {
69
+ FeeReminderModel.belongsTo(userModel_js_1.default, {
65
70
  foreignKey: {
66
71
  name: 'userId',
67
72
  field: 'user_id',
68
73
  },
69
74
  as: 'reminderUser',
70
75
  });
71
- UserModel.hasMany(FeeReminderModel, {
76
+ userModel_js_1.default.hasMany(FeeReminderModel, {
72
77
  foreignKey: 'userId',
73
78
  as: 'userReminders',
74
79
  });
75
- FeeReminderModel.belongsTo(FeeReminderSettingModel, {
80
+ FeeReminderModel.belongsTo(feeReminderSettingModel_js_1.default, {
76
81
  foreignKey: {
77
82
  name: 'templateId',
78
83
  field: 'template_id',
79
84
  },
80
85
  as: 'reminderTemplate',
81
86
  });
82
- FeeReminderSettingModel.hasMany(FeeReminderModel, {
87
+ feeReminderSettingModel_js_1.default.hasMany(FeeReminderModel, {
83
88
  foreignKey: 'templateId',
84
89
  as: 'TemplateReminders',
85
90
  });
86
- FeeReminderModel.belongsTo(InstituteModel, {
91
+ FeeReminderModel.belongsTo(instituteModel_js_1.default, {
87
92
  foreignKey: {
88
93
  name: 'instituteId',
89
94
  field: 'institute_id',
90
95
  },
91
96
  as: 'reminderInstitute',
92
97
  });
93
- InstituteModel.hasMany(FeeReminderModel, {
98
+ instituteModel_js_1.default.hasMany(FeeReminderModel, {
94
99
  foreignKey: 'instituteId',
95
100
  as: 'instituteReminders',
96
101
  });
97
- FeeReminderModel.belongsTo(UserModel, {
102
+ FeeReminderModel.belongsTo(userModel_js_1.default, {
98
103
  foreignKey: {
99
104
  name: 'createdBy',
100
105
  allowNull: true,
@@ -102,7 +107,7 @@ FeeReminderModel.belongsTo(UserModel, {
102
107
  },
103
108
  as: 'createdByUser',
104
109
  });
105
- FeeReminderModel.belongsTo(UserModel, {
110
+ FeeReminderModel.belongsTo(userModel_js_1.default, {
106
111
  foreignKey: {
107
112
  name: 'updatedBy',
108
113
  allowNull: true,
@@ -110,7 +115,7 @@ FeeReminderModel.belongsTo(UserModel, {
110
115
  },
111
116
  as: 'updatedByUser',
112
117
  });
113
- FeeReminderModel.belongsTo(UserModel, {
118
+ FeeReminderModel.belongsTo(userModel_js_1.default, {
114
119
  foreignKey: {
115
120
  name: 'deletedBy',
116
121
  allowNull: true,
@@ -118,54 +123,54 @@ FeeReminderModel.belongsTo(UserModel, {
118
123
  },
119
124
  as: 'deletedByUser',
120
125
  });
121
- FeeReminderModel.belongsTo(FeesCollectionModel, {
126
+ FeeReminderModel.belongsTo(feesCollectionModel_js_1.default, {
122
127
  foreignKey: {
123
128
  name: 'feeCollectionId',
124
129
  field: 'fee_collection_id',
125
130
  },
126
131
  as: 'feeCollection',
127
132
  });
128
- FeesCollectionModel.hasMany(FeeReminderModel, {
133
+ feesCollectionModel_js_1.default.hasMany(FeeReminderModel, {
129
134
  foreignKey: 'feeCollectionId',
130
135
  as: 'feeReminders',
131
136
  });
132
137
  const beforeCreateHook = async (feeReminder) => {
133
138
  if (feeReminder.userId && feeReminder.batchId && feeReminder.instituteId) {
134
139
  const { batchId, instituteId, userId } = feeReminder;
135
- const batchExists = await BatchModel.findOne({
140
+ const batchExists = await batchModel_js_1.default.findOne({
136
141
  where: { id: batchId, instituteId },
137
142
  });
138
143
  if (!batchExists) {
139
- throw new Error(BATCH_ERROR_MESSAGES.NOT_FOUND);
144
+ throw new Error(errorMessages_js_1.BATCH_ERROR_MESSAGES.NOT_FOUND);
140
145
  }
141
- const userInBatch = await UserHasBatchModel.findOne({
146
+ const userInBatch = await userHasBatchModel_js_1.default.findOne({
142
147
  where: { userId, batchId },
143
148
  });
144
149
  if (!userInBatch) {
145
- throw new Error(FEEREMINDER_ERROR_MESSAGES.USER_NOT_IN_BATCH);
150
+ throw new Error(errorMessages_js_1.FEEREMINDER_ERROR_MESSAGES.USER_NOT_IN_BATCH);
146
151
  }
147
152
  if (feeReminder.subjectId) {
148
- const validSubject = await UserHasBatchModel.findOne({
153
+ const validSubject = await userHasBatchModel_js_1.default.findOne({
149
154
  where: {
150
155
  userId,
151
156
  batchId,
152
- subjects: { [Op.contains]: [feeReminder.subjectId] },
157
+ subjects: { [sequelize_1.Op.contains]: [feeReminder.subjectId] },
153
158
  },
154
159
  });
155
160
  if (!validSubject) {
156
- throw new Error(FEEREMINDER_ERROR_MESSAGES.SUBJECT_INVALID);
161
+ throw new Error(errorMessages_js_1.FEEREMINDER_ERROR_MESSAGES.SUBJECT_INVALID);
157
162
  }
158
163
  }
159
164
  if (feeReminder.feeCollectionId) {
160
- const validFeeCollection = await FeesCollectionModel.findOne({
165
+ const validFeeCollection = await feesCollectionModel_js_1.default.findOne({
161
166
  where: {
162
167
  userId,
163
168
  instituteId,
164
- status: { [Op.ne]: FEE_PAYMENT_STATUS.COMPLETED },
169
+ status: { [sequelize_1.Op.ne]: app_js_1.FEE_PAYMENT_STATUS.COMPLETED },
165
170
  },
166
171
  });
167
172
  if (!validFeeCollection) {
168
- throw new Error(FEEREMINDER_ERROR_MESSAGES.FEE_COLLECTION_NOT_FOUND);
173
+ throw new Error(errorMessages_js_1.FEEREMINDER_ERROR_MESSAGES.FEE_COLLECTION_NOT_FOUND);
169
174
  }
170
175
  }
171
176
  }
@@ -174,53 +179,53 @@ const beforeUpdateHook = async (feeReminder) => {
174
179
  if (feeReminder.id) {
175
180
  const existingReminder = await FeeReminderModel.findByPk(feeReminder.id);
176
181
  if (!existingReminder) {
177
- throw new Error(FEEREMINDER_ERROR_MESSAGES.NOT_FOUND);
182
+ throw new Error(errorMessages_js_1.FEEREMINDER_ERROR_MESSAGES.NOT_FOUND);
178
183
  }
179
184
  const batchId = feeReminder.batchId || existingReminder.batchId;
180
185
  const instituteId = feeReminder.instituteId || existingReminder.instituteId;
181
186
  const userId = feeReminder.userId || existingReminder.userId;
182
- const batchExists = await BatchModel.findOne({
187
+ const batchExists = await batchModel_js_1.default.findOne({
183
188
  where: {
184
189
  id: batchId,
185
190
  instituteId,
186
191
  },
187
192
  });
188
193
  if (!batchExists) {
189
- throw new Error(BATCH_ERROR_MESSAGES.NOT_FOUND);
194
+ throw new Error(errorMessages_js_1.BATCH_ERROR_MESSAGES.NOT_FOUND);
190
195
  }
191
- const userInBatch = await UserHasBatchModel.findOne({
196
+ const userInBatch = await userHasBatchModel_js_1.default.findOne({
192
197
  where: { userId, batchId },
193
198
  });
194
199
  if (!userInBatch) {
195
- throw new Error(FEEREMINDER_ERROR_MESSAGES.USER_NOT_IN_BATCH);
200
+ throw new Error(errorMessages_js_1.FEEREMINDER_ERROR_MESSAGES.USER_NOT_IN_BATCH);
196
201
  }
197
202
  if (feeReminder.subjectId) {
198
- const validSubject = await UserHasBatchModel.findOne({
203
+ const validSubject = await userHasBatchModel_js_1.default.findOne({
199
204
  where: {
200
205
  userId,
201
206
  batchId,
202
- subjects: { [Op.contains]: [feeReminder.subjectId] },
207
+ subjects: { [sequelize_1.Op.contains]: [feeReminder.subjectId] },
203
208
  },
204
209
  });
205
210
  if (!validSubject) {
206
- throw new Error(FEEREMINDER_ERROR_MESSAGES.SUBJECT_INVALID);
211
+ throw new Error(errorMessages_js_1.FEEREMINDER_ERROR_MESSAGES.SUBJECT_INVALID);
207
212
  }
208
213
  }
209
214
  if (feeReminder.feeCollectionId) {
210
- const validFeeCollection = await FeesCollectionModel.findOne({
215
+ const validFeeCollection = await feesCollectionModel_js_1.default.findOne({
211
216
  where: {
212
217
  userId,
213
218
  instituteId,
214
- status: { [Op.ne]: FEE_PAYMENT_STATUS.COMPLETED },
219
+ status: { [sequelize_1.Op.ne]: app_js_1.FEE_PAYMENT_STATUS.COMPLETED },
215
220
  },
216
221
  });
217
222
  if (!validFeeCollection) {
218
- throw new Error(FEEREMINDER_ERROR_MESSAGES.FEE_COLLECTION_NOT_FOUND);
223
+ throw new Error(errorMessages_js_1.FEEREMINDER_ERROR_MESSAGES.FEE_COLLECTION_NOT_FOUND);
219
224
  }
220
225
  }
221
226
  }
222
227
  else {
223
- throw new Error(FEEREMINDER_ERROR_MESSAGES.INVALID_INPUT);
228
+ throw new Error(errorMessages_js_1.FEEREMINDER_ERROR_MESSAGES.INVALID_INPUT);
224
229
  }
225
230
  };
226
231
  FeeReminderModel.beforeBulkCreate(async (feeReminders) => {
@@ -231,4 +236,4 @@ FeeReminderModel.beforeBulkCreate(async (feeReminders) => {
231
236
  FeeReminderModel.beforeBulkUpdate(async (options) => {
232
237
  await beforeUpdateHook(options.attributes);
233
238
  });
234
- export default FeeReminderModel;
239
+ exports.default = FeeReminderModel;