@tomei/rental 0.17.3-dev.4 → 0.17.3-dev.6

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 (349) hide show
  1. package/.commitlintrc.json +22 -22
  2. package/.gitlab-ci.yml +16 -16
  3. package/.husky/commit-msg +9 -9
  4. package/.husky/pre-commit +7 -7
  5. package/.prettierrc +4 -4
  6. package/Jenkinsfile +51 -51
  7. package/README.md +8 -8
  8. package/dist/ClassMappings/ItemClassMap.d.ts +4 -0
  9. package/dist/ClassMappings/ItemClassMap.js +8 -0
  10. package/dist/ClassMappings/ItemClassMap.js.map +1 -0
  11. package/dist/ClassMappings/index.d.ts +2 -0
  12. package/dist/ClassMappings/index.js +6 -0
  13. package/dist/ClassMappings/index.js.map +1 -0
  14. package/dist/components/agreement/agreement.d.ts +27 -0
  15. package/dist/components/agreement/agreement.js +120 -0
  16. package/dist/components/agreement/agreement.js.map +1 -0
  17. package/dist/components/agreement/agreement.repository.d.ts +8 -0
  18. package/dist/components/agreement/agreement.repository.js +52 -0
  19. package/dist/components/agreement/agreement.repository.js.map +1 -0
  20. package/dist/components/agreement-history/agreement-history.d.ts +17 -0
  21. package/dist/components/agreement-history/agreement-history.js +40 -0
  22. package/dist/components/agreement-history/agreement-history.js.map +1 -0
  23. package/dist/components/agreement-history/agreement-history.repository.d.ts +8 -0
  24. package/dist/components/agreement-history/agreement-history.repository.js +52 -0
  25. package/dist/components/agreement-history/agreement-history.repository.js.map +1 -0
  26. package/dist/components/agreement-signature/agreement-signature.d.ts +27 -0
  27. package/dist/components/agreement-signature/agreement-signature.js +99 -0
  28. package/dist/components/agreement-signature/agreement-signature.js.map +1 -0
  29. package/dist/components/agreement-signature/agreement-signature.repository.d.ts +8 -0
  30. package/dist/components/agreement-signature/agreement-signature.repository.js +53 -0
  31. package/dist/components/agreement-signature/agreement-signature.repository.js.map +1 -0
  32. package/dist/components/booking/booking.d.ts +46 -0
  33. package/dist/components/booking/booking.js +289 -0
  34. package/dist/components/booking/booking.js.map +1 -0
  35. package/dist/components/booking/booking.repository.d.ts +8 -0
  36. package/dist/components/booking/booking.repository.js +52 -0
  37. package/dist/components/booking/booking.repository.js.map +1 -0
  38. package/dist/components/hirer-change-request-new-hirer/hirer-change-request-new-hirer.d.ts +32 -0
  39. package/dist/components/hirer-change-request-new-hirer/hirer-change-request-new-hirer.js +106 -0
  40. package/dist/components/hirer-change-request-new-hirer/hirer-change-request-new-hirer.js.map +1 -0
  41. package/dist/components/hirer-change-request-new-hirer/hirer-change-request-new-hirer.repository.d.ts +9 -0
  42. package/dist/components/hirer-change-request-new-hirer/hirer-change-request-new-hirer.repository.js +62 -0
  43. package/dist/components/hirer-change-request-new-hirer/hirer-change-request-new-hirer.repository.js.map +1 -0
  44. package/dist/components/hirer-change-request-remove-hirer/hirer-change-request-remove-hirer.d.ts +22 -0
  45. package/dist/components/hirer-change-request-remove-hirer/hirer-change-request-remove-hirer.js +89 -0
  46. package/dist/components/hirer-change-request-remove-hirer/hirer-change-request-remove-hirer.js.map +1 -0
  47. package/dist/components/hirer-change-request-remove-hirer/hirer-change-request-remove-hirer.repository.d.ts +9 -0
  48. package/dist/components/hirer-change-request-remove-hirer/hirer-change-request-remove-hirer.repository.js +63 -0
  49. package/dist/components/hirer-change-request-remove-hirer/hirer-change-request-remove-hirer.repository.js.map +1 -0
  50. package/dist/components/hirer-change-request-signature/hirer-change-request-signature.d.ts +30 -0
  51. package/dist/components/hirer-change-request-signature/hirer-change-request-signature.js +208 -0
  52. package/dist/components/hirer-change-request-signature/hirer-change-request-signature.js.map +1 -0
  53. package/dist/components/hirer-change-request-signature/hirer-change-request-signature.repository.d.ts +9 -0
  54. package/dist/components/hirer-change-request-signature/hirer-change-request-signature.repository.js +63 -0
  55. package/dist/components/hirer-change-request-signature/hirer-change-request-signature.repository.js.map +1 -0
  56. package/dist/components/joint-hirer/joint-hirer.d.ts +26 -0
  57. package/dist/components/joint-hirer/joint-hirer.js +137 -0
  58. package/dist/components/joint-hirer/joint-hirer.js.map +1 -0
  59. package/dist/components/joint-hirer/joint-hirer.repository.d.ts +8 -0
  60. package/dist/components/joint-hirer/joint-hirer.repository.js +52 -0
  61. package/dist/components/joint-hirer/joint-hirer.repository.js.map +1 -0
  62. package/dist/components/rental/rental.d.ts +71 -0
  63. package/dist/components/rental/rental.js +841 -0
  64. package/dist/components/rental/rental.js.map +1 -0
  65. package/dist/components/rental/rental.repository.d.ts +8 -0
  66. package/dist/components/rental/rental.repository.js +52 -0
  67. package/dist/components/rental/rental.repository.js.map +1 -0
  68. package/dist/components/rental-hirer-change-request/rental-hirer-change-request.d.ts +71 -0
  69. package/dist/components/rental-hirer-change-request/rental-hirer-change-request.js +531 -0
  70. package/dist/components/rental-hirer-change-request/rental-hirer-change-request.js.map +1 -0
  71. package/dist/components/rental-hirer-change-request/rental-hirer-change-request.repository.d.ts +9 -0
  72. package/dist/components/rental-hirer-change-request/rental-hirer-change-request.repository.js +62 -0
  73. package/dist/components/rental-hirer-change-request/rental-hirer-change-request.repository.js.map +1 -0
  74. package/dist/components/rental-price/rental-price.d.ts +18 -0
  75. package/dist/components/rental-price/rental-price.js +66 -0
  76. package/dist/components/rental-price/rental-price.js.map +1 -0
  77. package/dist/components/rental-price/rental-price.repository.d.ts +8 -0
  78. package/dist/components/rental-price/rental-price.repository.js +52 -0
  79. package/dist/components/rental-price/rental-price.repository.js.map +1 -0
  80. package/dist/database.d.ts +4 -0
  81. package/dist/database.js +37 -0
  82. package/dist/database.js.map +1 -0
  83. package/dist/enum/account-type.enum.d.ts +4 -0
  84. package/dist/enum/account-type.enum.js +9 -0
  85. package/dist/enum/account-type.enum.js.map +1 -0
  86. package/dist/enum/aggrement-status.enum.d.ts +5 -0
  87. package/dist/enum/aggrement-status.enum.js +10 -0
  88. package/dist/enum/aggrement-status.enum.js.map +1 -0
  89. package/dist/enum/agreement-signature-status.enum.d.ts +4 -0
  90. package/dist/enum/agreement-signature-status.enum.js +9 -0
  91. package/dist/enum/agreement-signature-status.enum.js.map +1 -0
  92. package/dist/enum/booking.enum.d.ts +5 -0
  93. package/dist/enum/booking.enum.js +10 -0
  94. package/dist/enum/booking.enum.js.map +1 -0
  95. package/dist/enum/hirer-type.enum.d.ts +4 -0
  96. package/dist/enum/hirer-type.enum.js +9 -0
  97. package/dist/enum/hirer-type.enum.js.map +1 -0
  98. package/dist/enum/index.d.ts +10 -0
  99. package/dist/enum/index.js +22 -0
  100. package/dist/enum/index.js.map +1 -0
  101. package/dist/enum/rental-hirer-change-request-hirer-role.d.ts +4 -0
  102. package/dist/enum/rental-hirer-change-request-hirer-role.js +9 -0
  103. package/dist/enum/rental-hirer-change-request-hirer-role.js.map +1 -0
  104. package/dist/enum/rental-hirer-change-request-status.d.ts +7 -0
  105. package/dist/enum/rental-hirer-change-request-status.js +12 -0
  106. package/dist/enum/rental-hirer-change-request-status.js.map +1 -0
  107. package/dist/enum/rental-hirer-change-request-type.d.ts +4 -0
  108. package/dist/enum/rental-hirer-change-request-type.js +9 -0
  109. package/dist/enum/rental-hirer-change-request-type.js.map +1 -0
  110. package/dist/enum/rental-status.enum.d.ts +9 -0
  111. package/dist/enum/rental-status.enum.js +14 -0
  112. package/dist/enum/rental-status.enum.js.map +1 -0
  113. package/dist/index.d.ts +28 -1
  114. package/dist/index.js +52 -1
  115. package/dist/index.js.map +1 -1
  116. package/dist/interfaces/agreemeent-signature-attr.interface.d.ts +14 -0
  117. package/dist/interfaces/agreemeent-signature-attr.interface.js +3 -0
  118. package/dist/interfaces/agreemeent-signature-attr.interface.js.map +1 -0
  119. package/dist/interfaces/agreement-attr.interface.d.ts +7 -0
  120. package/dist/{src/interfaces/hirer-signature-attr.interface.js → interfaces/agreement-attr.interface.js} +1 -1
  121. package/dist/interfaces/agreement-attr.interface.js.map +1 -0
  122. package/dist/interfaces/agreement-history-attr.interface.d.ts +7 -0
  123. package/dist/interfaces/agreement-history-attr.interface.js +3 -0
  124. package/dist/interfaces/agreement-history-attr.interface.js.map +1 -0
  125. package/dist/interfaces/booking-attr.interface.d.ts +18 -0
  126. package/dist/interfaces/booking-attr.interface.js +3 -0
  127. package/dist/interfaces/booking-attr.interface.js.map +1 -0
  128. package/dist/interfaces/booking-find-all-search-attr.interface.d.ts +12 -0
  129. package/dist/interfaces/booking-find-all-search-attr.interface.js +3 -0
  130. package/dist/interfaces/booking-find-all-search-attr.interface.js.map +1 -0
  131. package/dist/interfaces/hirer-change-request-new-hirer-attr.interface.d.ts +15 -0
  132. package/dist/interfaces/hirer-change-request-new-hirer-attr.interface.js +3 -0
  133. package/dist/interfaces/hirer-change-request-new-hirer-attr.interface.js.map +1 -0
  134. package/dist/interfaces/hirer-change-request-remove-hirer-attr.interface.d.ts +5 -0
  135. package/dist/interfaces/hirer-change-request-remove-hirer-attr.interface.js +3 -0
  136. package/dist/interfaces/hirer-change-request-remove-hirer-attr.interface.js.map +1 -0
  137. package/dist/interfaces/hirer-change-request-signature-attr.interface.d.ts +14 -0
  138. package/dist/interfaces/hirer-change-request-signature-attr.interface.js +3 -0
  139. package/dist/interfaces/hirer-change-request-signature-attr.interface.js.map +1 -0
  140. package/dist/interfaces/index.d.ts +14 -0
  141. package/dist/interfaces/index.js +3 -0
  142. package/dist/interfaces/index.js.map +1 -0
  143. package/dist/interfaces/joint-hirer-attr.interface.d.ts +11 -0
  144. package/dist/interfaces/joint-hirer-attr.interface.js +3 -0
  145. package/dist/interfaces/joint-hirer-attr.interface.js.map +1 -0
  146. package/dist/interfaces/rental-attr.interface.d.ts +24 -0
  147. package/dist/interfaces/rental-attr.interface.js +3 -0
  148. package/dist/interfaces/rental-attr.interface.js.map +1 -0
  149. package/dist/interfaces/rental-find-all-search-attr.interface.d.ts +10 -0
  150. package/dist/interfaces/rental-find-all-search-attr.interface.js +3 -0
  151. package/dist/interfaces/rental-find-all-search-attr.interface.js.map +1 -0
  152. package/dist/interfaces/rental-hirer-change-request.attr.interface.d.ts +16 -0
  153. package/dist/interfaces/rental-hirer-change-request.attr.interface.js +3 -0
  154. package/dist/interfaces/rental-hirer-change-request.attr.interface.js.map +1 -0
  155. package/dist/interfaces/rental-hirer-change-request.update.interface.d.ts +4 -0
  156. package/dist/interfaces/rental-hirer-change-request.update.interface.js +3 -0
  157. package/dist/interfaces/rental-hirer-change-request.update.interface.js.map +1 -0
  158. package/dist/interfaces/rental-price-attr.interface.d.ts +7 -0
  159. package/dist/interfaces/rental-price-attr.interface.js +3 -0
  160. package/dist/interfaces/rental-price-attr.interface.js.map +1 -0
  161. package/dist/interfaces/response-hirer-signature-attr.interface.d.ts +14 -0
  162. package/dist/interfaces/response-hirer-signature-attr.interface.js +3 -0
  163. package/dist/interfaces/response-hirer-signature-attr.interface.js.map +1 -0
  164. package/dist/models/agreement-history.entity.d.ts +10 -0
  165. package/dist/models/agreement-history.entity.js +65 -0
  166. package/dist/models/agreement-history.entity.js.map +1 -0
  167. package/dist/models/agreement-signature.entity.d.ts +18 -0
  168. package/dist/{src/models/hirer-signature.entity.js → models/agreement-signature.entity.js} +7 -6
  169. package/dist/models/agreement-signature.entity.js.map +1 -0
  170. package/dist/models/agreement.entity.d.ts +14 -0
  171. package/dist/models/agreement.entity.js +70 -0
  172. package/dist/models/agreement.entity.js.map +1 -0
  173. package/dist/models/booking.entity.d.ts +21 -0
  174. package/dist/models/booking.entity.js +128 -0
  175. package/dist/models/booking.entity.js.map +1 -0
  176. package/dist/models/hirer-change-request-new-hirer.entity.d.ts +19 -0
  177. package/dist/models/hirer-change-request-new-hirer.entity.js +121 -0
  178. package/dist/models/hirer-change-request-new-hirer.entity.js.map +1 -0
  179. package/dist/models/hirer-change-request-remove-hirer.entity.d.ts +11 -0
  180. package/dist/models/hirer-change-request-remove-hirer.entity.js +57 -0
  181. package/dist/models/hirer-change-request-remove-hirer.entity.js.map +1 -0
  182. package/dist/models/hirer-change-request-signature.entity.d.ts +18 -0
  183. package/dist/models/hirer-change-request-signature.entity.js +101 -0
  184. package/dist/models/hirer-change-request-signature.entity.js.map +1 -0
  185. package/dist/models/index.d.ts +12 -0
  186. package/dist/models/index.js +26 -0
  187. package/dist/models/index.js.map +1 -0
  188. package/dist/models/joint-hirer.entity.d.ts +14 -0
  189. package/dist/models/joint-hirer.entity.js +91 -0
  190. package/dist/models/joint-hirer.entity.js.map +1 -0
  191. package/dist/models/rental-hirer-change-request.entity.d.ts +22 -0
  192. package/dist/models/rental-hirer-change-request.entity.js +108 -0
  193. package/dist/models/rental-hirer-change-request.entity.js.map +1 -0
  194. package/dist/models/rental-price.entity.d.ts +8 -0
  195. package/dist/models/rental-price.entity.js +59 -0
  196. package/dist/models/rental-price.entity.js.map +1 -0
  197. package/dist/models/rental.entity.d.ts +29 -0
  198. package/dist/models/rental.entity.js +160 -0
  199. package/dist/models/rental.entity.js.map +1 -0
  200. package/dist/src/components/agreement/agreement.d.ts +1 -1
  201. package/dist/src/components/agreement/agreement.js +77 -94
  202. package/dist/src/components/agreement/agreement.js.map +1 -1
  203. package/dist/src/components/agreement/agreement.repository.js +35 -50
  204. package/dist/src/components/agreement/agreement.repository.js.map +1 -1
  205. package/dist/src/components/agreement-history/agreement-history.js +10 -21
  206. package/dist/src/components/agreement-history/agreement-history.js.map +1 -1
  207. package/dist/src/components/agreement-history/agreement-history.repository.js +35 -50
  208. package/dist/src/components/agreement-history/agreement-history.repository.js.map +1 -1
  209. package/dist/src/components/agreement-signature/agreement-signature.js +57 -70
  210. package/dist/src/components/agreement-signature/agreement-signature.js.map +1 -1
  211. package/dist/src/components/agreement-signature/agreement-signature.repository.js +36 -51
  212. package/dist/src/components/agreement-signature/agreement-signature.repository.js.map +1 -1
  213. package/dist/src/components/booking/booking.js +206 -231
  214. package/dist/src/components/booking/booking.js.map +1 -1
  215. package/dist/src/components/booking/booking.repository.js +35 -50
  216. package/dist/src/components/booking/booking.repository.js.map +1 -1
  217. package/dist/src/components/hirer-change-request-new-hirer/hirer-change-request-new-hirer.js +47 -62
  218. package/dist/src/components/hirer-change-request-new-hirer/hirer-change-request-new-hirer.js.map +1 -1
  219. package/dist/src/components/hirer-change-request-new-hirer/hirer-change-request-new-hirer.repository.js +46 -63
  220. package/dist/src/components/hirer-change-request-new-hirer/hirer-change-request-new-hirer.repository.js.map +1 -1
  221. package/dist/src/components/hirer-change-request-remove-hirer/hirer-change-request-remove-hirer.js +49 -64
  222. package/dist/src/components/hirer-change-request-remove-hirer/hirer-change-request-remove-hirer.js.map +1 -1
  223. package/dist/src/components/hirer-change-request-remove-hirer/hirer-change-request-remove-hirer.repository.js +47 -64
  224. package/dist/src/components/hirer-change-request-remove-hirer/hirer-change-request-remove-hirer.repository.js.map +1 -1
  225. package/dist/src/components/hirer-change-request-signature/hirer-change-request-signature.js +150 -167
  226. package/dist/src/components/hirer-change-request-signature/hirer-change-request-signature.js.map +1 -1
  227. package/dist/src/components/hirer-change-request-signature/hirer-change-request-signature.repository.js +47 -64
  228. package/dist/src/components/hirer-change-request-signature/hirer-change-request-signature.repository.js.map +1 -1
  229. package/dist/src/components/joint-hirer/joint-hirer.js +82 -97
  230. package/dist/src/components/joint-hirer/joint-hirer.js.map +1 -1
  231. package/dist/src/components/joint-hirer/joint-hirer.repository.js +35 -50
  232. package/dist/src/components/joint-hirer/joint-hirer.repository.js.map +1 -1
  233. package/dist/src/components/rental/rental.d.ts +2 -2
  234. package/dist/src/components/rental/rental.js +566 -595
  235. package/dist/src/components/rental/rental.js.map +1 -1
  236. package/dist/src/components/rental/rental.repository.js +35 -50
  237. package/dist/src/components/rental/rental.repository.js.map +1 -1
  238. package/dist/src/components/rental-hirer-change-request/rental-hirer-change-request.js +416 -456
  239. package/dist/src/components/rental-hirer-change-request/rental-hirer-change-request.js.map +1 -1
  240. package/dist/src/components/rental-hirer-change-request/rental-hirer-change-request.repository.js +46 -63
  241. package/dist/src/components/rental-hirer-change-request/rental-hirer-change-request.repository.js.map +1 -1
  242. package/dist/src/components/rental-price/rental-price.js +33 -46
  243. package/dist/src/components/rental-price/rental-price.js.map +1 -1
  244. package/dist/src/components/rental-price/rental-price.repository.js +35 -50
  245. package/dist/src/components/rental-price/rental-price.repository.js.map +1 -1
  246. package/dist/src/models/hirer-change-request-new-hirer.entity.d.ts +1 -1
  247. package/dist/src/models/hirer-change-request-remove-hirer.entity.d.ts +1 -1
  248. package/dist/src/models/hirer-change-request-signature.entity.d.ts +1 -1
  249. package/dist/tsconfig.build.tsbuildinfo +1 -0
  250. package/dist/tsconfig.tsbuildinfo +1 -1
  251. package/eslint.config.mjs +58 -58
  252. package/jest.config.js +10 -10
  253. package/migrations/20250529092130-add-status-to-joint-hirer.js +19 -19
  254. package/migrations/agreement-signature-table-migration.js +64 -64
  255. package/migrations/booking-table-migration.js +79 -79
  256. package/migrations/hirer-change-request-new-hirer-migration.js +72 -72
  257. package/migrations/hirer-change-request-remove-hirer-migration.js +39 -39
  258. package/migrations/hirer-change-request-signature-migration.js +65 -65
  259. package/migrations/joint-hirer-table-migration.js +52 -52
  260. package/migrations/rental-aggreement-history-migration.js +41 -41
  261. package/migrations/rental-aggrement-table-migration.js +30 -30
  262. package/migrations/rental-hirer-change-request-migrations.js +64 -64
  263. package/migrations/rental-price-table-migration.js +32 -32
  264. package/migrations/rental-table-migrations.js +96 -96
  265. package/package.json +77 -75
  266. package/sonar-project.properties +12 -12
  267. package/src/ClassMappings/ItemClassMap.ts +7 -0
  268. package/src/ClassMappings/index.ts +3 -0
  269. package/src/components/agreement/agreement.repository.ts +54 -54
  270. package/src/components/agreement/agreement.ts +185 -185
  271. package/src/components/agreement-history/agreement-history.repository.ts +54 -54
  272. package/src/components/agreement-history/agreement-history.ts +57 -57
  273. package/src/components/agreement-signature/agreement-signature.repository.ts +55 -55
  274. package/src/components/agreement-signature/agreement-signature.ts +143 -143
  275. package/src/components/booking/booking.repository.ts +51 -51
  276. package/src/components/booking/booking.ts +492 -492
  277. package/src/components/hirer-change-request-new-hirer/hirer-change-request-new-hirer.repository.ts +64 -64
  278. package/src/components/hirer-change-request-new-hirer/hirer-change-request-new-hirer.ts +153 -153
  279. package/src/components/hirer-change-request-remove-hirer/hirer-change-request-remove-hirer.repository.ts +65 -65
  280. package/src/components/hirer-change-request-remove-hirer/hirer-change-request-remove-hirer.ts +134 -134
  281. package/src/components/hirer-change-request-signature/hirer-change-request-signature.repository.ts +65 -65
  282. package/src/components/hirer-change-request-signature/hirer-change-request-signature.ts +272 -272
  283. package/src/components/joint-hirer/joint-hirer.repository.ts +54 -54
  284. package/src/components/joint-hirer/joint-hirer.ts +189 -189
  285. package/src/components/rental/rental.repository.ts +51 -51
  286. package/src/components/rental/rental.ts +1395 -1167
  287. package/src/components/rental-hirer-change-request/rental-hirer-change-request.repository.ts +64 -64
  288. package/src/components/rental-hirer-change-request/rental-hirer-change-request.ts +917 -918
  289. package/src/components/rental-price/rental-price.repository.ts +54 -54
  290. package/src/components/rental-price/rental-price.ts +100 -100
  291. package/src/database.ts +39 -39
  292. package/src/enum/account-type.enum.ts +4 -4
  293. package/src/enum/agreement-signature-status.enum.ts +4 -4
  294. package/src/enum/booking.enum.ts +5 -5
  295. package/src/enum/hirer-type.enum.ts +4 -4
  296. package/src/enum/index.ts +21 -21
  297. package/src/enum/rental-hirer-change-request-hirer-role.ts +4 -4
  298. package/src/enum/rental-hirer-change-request-status.ts +7 -7
  299. package/src/enum/rental-hirer-change-request-type.ts +4 -4
  300. package/src/enum/rental-status.enum.ts +39 -39
  301. package/src/index.ts +54 -52
  302. package/src/interfaces/agreemeent-signature-attr.interface.ts +15 -15
  303. package/src/interfaces/agreement-attr.interface.ts +7 -7
  304. package/src/interfaces/agreement-history-attr.interface.ts +7 -7
  305. package/src/interfaces/booking-attr.interface.ts +19 -19
  306. package/src/interfaces/booking-find-all-search-attr.interface.ts +12 -12
  307. package/src/interfaces/hirer-change-request-new-hirer-attr.interface.ts +15 -15
  308. package/src/interfaces/hirer-change-request-remove-hirer-attr.interface.ts +5 -5
  309. package/src/interfaces/hirer-change-request-signature-attr.interface.ts +15 -15
  310. package/src/interfaces/index.ts +29 -29
  311. package/src/interfaces/joint-hirer-attr.interface.ts +11 -11
  312. package/src/interfaces/rental-attr.interface.ts +25 -25
  313. package/src/interfaces/rental-find-all-search-attr.interface.ts +11 -11
  314. package/src/interfaces/rental-hirer-change-request.attr.interface.ts +17 -17
  315. package/src/interfaces/rental-hirer-change-request.update.interface.ts +4 -4
  316. package/src/interfaces/rental-price-attr.interface.ts +7 -7
  317. package/src/interfaces/response-hirer-signature-attr.interface.ts +15 -15
  318. package/src/models/agreement-history.entity.ts +51 -51
  319. package/src/models/agreement-signature.entity.ts +86 -86
  320. package/src/models/agreement.entity.ts +47 -47
  321. package/src/models/booking.entity.ts +105 -105
  322. package/src/models/hirer-change-request-new-hirer.entity.ts +102 -102
  323. package/src/models/hirer-change-request-remove-hirer.entity.ts +47 -47
  324. package/src/models/hirer-change-request-signature.entity.ts +86 -86
  325. package/src/models/index.ts +25 -25
  326. package/src/models/joint-hirer.entity.ts +70 -70
  327. package/src/models/rental-price.entity.ts +38 -38
  328. package/src/models/rental.entity.ts +133 -133
  329. package/tsconfig.build.json +11 -6
  330. package/tsconfig.json +22 -24
  331. package/dist/src/components/agreement-signature/hirer-signature.d.ts +0 -27
  332. package/dist/src/components/agreement-signature/hirer-signature.js +0 -112
  333. package/dist/src/components/agreement-signature/hirer-signature.js.map +0 -1
  334. package/dist/src/components/agreement-signature/hirer-signature.repository.d.ts +0 -8
  335. package/dist/src/components/agreement-signature/hirer-signature.repository.js +0 -67
  336. package/dist/src/components/agreement-signature/hirer-signature.repository.js.map +0 -1
  337. package/dist/src/components/hirer-signature/hirer-signature.d.ts +0 -27
  338. package/dist/src/components/hirer-signature/hirer-signature.js +0 -112
  339. package/dist/src/components/hirer-signature/hirer-signature.js.map +0 -1
  340. package/dist/src/components/hirer-signature/hirer-signature.repository.d.ts +0 -8
  341. package/dist/src/components/hirer-signature/hirer-signature.repository.js +0 -67
  342. package/dist/src/components/hirer-signature/hirer-signature.repository.js.map +0 -1
  343. package/dist/src/enum/hirer-signature-status.enum.d.ts +0 -4
  344. package/dist/src/enum/hirer-signature-status.enum.js +0 -9
  345. package/dist/src/enum/hirer-signature-status.enum.js.map +0 -1
  346. package/dist/src/interfaces/hirer-signature-attr.interface.d.ts +0 -14
  347. package/dist/src/interfaces/hirer-signature-attr.interface.js.map +0 -1
  348. package/dist/src/models/hirer-signature.entity.d.ts +0 -16
  349. package/dist/src/models/hirer-signature.entity.js.map +0 -1
@@ -0,0 +1,531 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RentalHirerChangeRequest = void 0;
4
+ const general_1 = require("@tomei/general");
5
+ const rental_hirer_change_request_repository_1 = require("./rental-hirer-change-request.repository");
6
+ const config_1 = require("@tomei/config");
7
+ const activity_history_1 = require("@tomei/activity-history");
8
+ const rental_hirer_change_request_type_1 = require("../../enum/rental-hirer-change-request-type");
9
+ const rental_hirer_change_request_status_1 = require("../../enum/rental-hirer-change-request-status");
10
+ const rental_1 = require("../rental/rental");
11
+ const enum_1 = require("../../enum");
12
+ const sequelize_1 = require("sequelize");
13
+ const joint_hirer_repository_1 = require("../../components/joint-hirer/joint-hirer.repository");
14
+ const hirer_change_request_signature_repository_1 = require("../hirer-change-request-signature/hirer-change-request-signature.repository");
15
+ const hirer_change_request_signature_1 = require("../hirer-change-request-signature/hirer-change-request-signature");
16
+ const hirer_change_request_new_hirer_1 = require("../hirer-change-request-new-hirer/hirer-change-request-new-hirer");
17
+ const hirer_change_request_remove_hirer_1 = require("../hirer-change-request-remove-hirer/hirer-change-request-remove-hirer");
18
+ const joint_hirer_1 = require("../joint-hirer/joint-hirer");
19
+ class RentalHirerChangeRequest extends general_1.ObjectBase {
20
+ get RequestId() {
21
+ return this.ObjectId;
22
+ }
23
+ set RequestId(value) {
24
+ this.ObjectId = value;
25
+ }
26
+ constructor(hirerChangeRequestAttr) {
27
+ super();
28
+ this.ObjectType = 'RentalHirerChangeRequest';
29
+ this.TableName = 'rental_HirerChangeRequest';
30
+ this.Signatures = [];
31
+ this.Rental = null;
32
+ if (hirerChangeRequestAttr) {
33
+ this.RequestId = hirerChangeRequestAttr.RequestId;
34
+ this.RentalId = hirerChangeRequestAttr.RentalId;
35
+ this.Type = hirerChangeRequestAttr.Type;
36
+ this.Status = hirerChangeRequestAttr.Status;
37
+ this.RequestedAt = hirerChangeRequestAttr.RequestedAt;
38
+ this.RequestedById = hirerChangeRequestAttr.RequestedById;
39
+ this.RequestingHirerId = hirerChangeRequestAttr.RequestingHirerId;
40
+ this.RequestingHirerType = hirerChangeRequestAttr.RequestingHirerType;
41
+ this.CancelRemarks = hirerChangeRequestAttr.CancelRemarks;
42
+ this.UpdatedAt = hirerChangeRequestAttr.UpdatedAt;
43
+ this.UpdatedById = hirerChangeRequestAttr.UpdatedById;
44
+ }
45
+ }
46
+ toJSON() {
47
+ return {
48
+ RequestId: this.RequestId,
49
+ RentalId: this.RentalId,
50
+ Type: this.Type,
51
+ Status: this.Status,
52
+ RequestedAt: this.RequestedAt,
53
+ RequestedById: this.RequestedById,
54
+ RequestingHirerId: this.RequestingHirerId,
55
+ RequestingHirerType: this.RequestingHirerType,
56
+ CancelRemarks: this.CancelRemarks,
57
+ UpdatedAt: this.UpdatedAt,
58
+ UpdatedById: this.UpdatedById,
59
+ };
60
+ }
61
+ static async init(requestId, dbTransaction) {
62
+ try {
63
+ if (requestId) {
64
+ const hirerChangeReq = await RentalHirerChangeRequest._Repository.findByPk(requestId, dbTransaction);
65
+ if (hirerChangeReq) {
66
+ return new RentalHirerChangeRequest(hirerChangeReq.get({ plain: true }));
67
+ }
68
+ else {
69
+ throw new general_1.ClassError('HirerChangeRequest', 'HirerChangeRequestErrMsg00', 'HirerChangeRequest not found');
70
+ }
71
+ }
72
+ return new RentalHirerChangeRequest();
73
+ }
74
+ catch (error) {
75
+ console.error('Error initializing RentalHirerChangeRequest:', error);
76
+ throw error;
77
+ }
78
+ }
79
+ async checkForDuplicate(dbTransaction) {
80
+ try {
81
+ if (!this.RentalId) {
82
+ throw new general_1.ClassError('HirerChangeRequest', 'HirerChangeRequestErrMsg08', 'RentalId is required to check for duplicate requests.');
83
+ }
84
+ const isDuplicate = await RentalHirerChangeRequest._Repository.findAll({
85
+ where: {
86
+ RentalId: this.RentalId,
87
+ Type: this.Type,
88
+ Status: {
89
+ [sequelize_1.Op.notIn]: [
90
+ rental_hirer_change_request_status_1.HirerChangeRequestStatusEnum.COMPLETED,
91
+ rental_hirer_change_request_status_1.HirerChangeRequestStatusEnum.CANCELLED,
92
+ ],
93
+ },
94
+ },
95
+ transaction: dbTransaction,
96
+ });
97
+ if (isDuplicate.length > 0) {
98
+ throw new general_1.ClassError('HirerChangeRequest', 'HirerChangeRequestErrMsg04', 'Duplicate record detected.');
99
+ }
100
+ }
101
+ catch (error) {
102
+ throw error;
103
+ }
104
+ }
105
+ async getSignatures(dbTransaction) {
106
+ try {
107
+ if (this.Signatures.length > 0) {
108
+ return this.Signatures;
109
+ }
110
+ const hirers = await RentalHirerChangeRequest._HirerSignatureRepository.findAll({
111
+ where: {
112
+ RequestId: this.RequestId,
113
+ },
114
+ transaction: dbTransaction,
115
+ });
116
+ this.Signatures = await Promise.all(hirers.map(async (hirer) => {
117
+ return await hirer_change_request_signature_1.HirerChangeRequestSignature.init(hirer.SignatureId, dbTransaction);
118
+ }));
119
+ return this.Signatures;
120
+ }
121
+ catch (error) {
122
+ throw error;
123
+ }
124
+ }
125
+ async checkIsAllSigned(dbTransaction) {
126
+ try {
127
+ const listUpdatedHirer = await this.getSignatures(dbTransaction);
128
+ if (listUpdatedHirer.length > 0) {
129
+ return listUpdatedHirer.every((record) => record.SignedAt !== null);
130
+ }
131
+ else {
132
+ return false;
133
+ }
134
+ }
135
+ catch (error) {
136
+ throw error;
137
+ }
138
+ }
139
+ async create(loginUser, dbTransaction) {
140
+ try {
141
+ const systemCode = config_1.ApplicationConfig.getComponentConfigValue('system-code');
142
+ const isPrivileged = await loginUser.checkPrivileges(systemCode, 'HIRER_CHANGE_REQUEST');
143
+ if (!isPrivileged) {
144
+ throw new general_1.ClassError('HirerChangeRequest', 'HirerChangeRequestErrMsg01', "You do not have 'HIRER_CHANGE_REQUEST' privilege.");
145
+ }
146
+ if (!this.RentalId || !this.RequestingHirerId) {
147
+ throw new general_1.ClassError('HirerChangeRequest', 'HirerChangeRequestErrMsg02', 'RentalId and RequestingHirerId are required.');
148
+ }
149
+ const rental = await rental_1.Rental.init(dbTransaction, this.RentalId);
150
+ if (rental.AccountType !== enum_1.RentalAccountTypeEnum.JOINT) {
151
+ throw new general_1.ClassError('HirerChangeRequest', 'HirerChangeRequestErrMsg03', 'Only Rental with Joint Account Type Allowed.');
152
+ }
153
+ const jointHirers = await rental.getJointHirers(dbTransaction);
154
+ if (this.Type === rental_hirer_change_request_type_1.HirerChangeRequestTypeEnum.ADD) {
155
+ const maxJointHirer = config_1.ComponentConfig.getComponentConfigValue('@tomei/rental', 'maxJointHirerLength');
156
+ if ((jointHirers === null || jointHirers === void 0 ? void 0 : jointHirers.length) >= maxJointHirer) {
157
+ throw new general_1.ClassError('HirerChangeRequest', 'HirerChangeRequestErrMsg05', 'Joint Hirer exceed max joint hirer length.');
158
+ }
159
+ }
160
+ if (this.Type == rental_hirer_change_request_type_1.HirerChangeRequestTypeEnum.REMOVE &&
161
+ (jointHirers === null || jointHirers === void 0 ? void 0 : jointHirers.length) <= 1) {
162
+ throw new general_1.ClassError('HirerChangeRequest', 'HirerChangeRequestErrMsg05', 'Cannot remove the last joint hirer.');
163
+ }
164
+ await this.checkForDuplicate(dbTransaction);
165
+ this.ObjectId = this.createId();
166
+ this.RequestedById = loginUser.ObjectId;
167
+ this.RequestedAt = new Date();
168
+ this.UpdatedById = loginUser.ObjectId;
169
+ this.UpdatedAt = new Date();
170
+ this.Status = rental_hirer_change_request_status_1.HirerChangeRequestStatusEnum.PENDINGSIGNATURES;
171
+ this.RequestingHirerType =
172
+ rental.CustomerId === this.RequestingHirerId
173
+ ? enum_1.HirerChangeRequestHirerRoleEnum.MAIN
174
+ : enum_1.HirerChangeRequestHirerRoleEnum.JOINT;
175
+ const entityValueAfter = {
176
+ RequestId: this.RequestId,
177
+ RentalId: this.RentalId,
178
+ Type: this.Type,
179
+ Status: this.Status,
180
+ RequestedById: this.RequestedById,
181
+ RequestedAt: this.RequestedAt,
182
+ RequestingHirerId: this.RequestingHirerId,
183
+ RequestingHirerType: this.RequestingHirerType,
184
+ CancelRemarks: this.CancelRemarks,
185
+ UpdatedById: this.UpdatedById,
186
+ UpdatedAt: this.UpdatedAt,
187
+ };
188
+ await RentalHirerChangeRequest._Repository.create(entityValueAfter, {
189
+ transaction: dbTransaction,
190
+ });
191
+ await this.generateSignatures(loginUser, dbTransaction);
192
+ const activity = new activity_history_1.Activity();
193
+ activity.ObjectId = this._createId();
194
+ activity.Action = activity_history_1.ActionEnum.CREATE;
195
+ activity.Description =
196
+ this.Type === rental_hirer_change_request_type_1.HirerChangeRequestTypeEnum.ADD
197
+ ? 'Add New Hirer'
198
+ : 'Remove Hirer';
199
+ activity.EntityId = this.ObjectId;
200
+ activity.EntityType = this.ObjectType;
201
+ activity.EntityValueBefore = JSON.stringify({});
202
+ activity.EntityValueAfter = JSON.stringify(entityValueAfter);
203
+ await activity.create(loginUser.ObjectId, dbTransaction);
204
+ return this;
205
+ }
206
+ catch (error) {
207
+ throw error;
208
+ }
209
+ }
210
+ async update(loginUser, dbTransaction, params) {
211
+ try {
212
+ if (!this.RequestId) {
213
+ throw new general_1.ClassError('HirerChangeRequest', 'HirerChangeRequestErrMsg06', 'RequestId are required.');
214
+ }
215
+ const entityValueBefore = {
216
+ RequestId: this.RequestId,
217
+ RentalId: this.RentalId,
218
+ Type: this.Type,
219
+ Status: this.Status,
220
+ RequestedById: this.RequestedById,
221
+ RequestedAt: this.RequestedAt,
222
+ RequestingHirerId: this.RequestingHirerId,
223
+ RequestingHirerType: this.RequestingHirerType,
224
+ CancelRemarks: this.CancelRemarks,
225
+ UpdatedById: this.UpdatedById,
226
+ UpdatedAt: this.UpdatedAt,
227
+ };
228
+ let { jointHirerId, customerId } = params;
229
+ if (!customerId && !jointHirerId) {
230
+ throw new general_1.ClassError('HirerChangeRequest', 'HirerChangeRequestErrMsg07', 'At least one of customerId or jointHirerId must be provided.');
231
+ }
232
+ const listHirer = await this.getSignatures(dbTransaction);
233
+ if ((listHirer === null || listHirer === void 0 ? void 0 : listHirer.length) > 0) {
234
+ let foundHirer = listHirer === null || listHirer === void 0 ? void 0 : listHirer.find((record) => {
235
+ record.CustomerId === customerId;
236
+ });
237
+ let hirer = await hirer_change_request_signature_1.HirerChangeRequestSignature.init(foundHirer.SignatureId, dbTransaction);
238
+ await hirer.update(loginUser, dbTransaction);
239
+ }
240
+ const isSigned = await this.checkIsAllSigned(dbTransaction);
241
+ if (isSigned) {
242
+ if (this.Type === rental_hirer_change_request_type_1.HirerChangeRequestTypeEnum.ADD) {
243
+ this.Status = rental_hirer_change_request_status_1.HirerChangeRequestStatusEnum.AWAITINGNEWHIRER;
244
+ }
245
+ else if (this.Type === rental_hirer_change_request_type_1.HirerChangeRequestTypeEnum.REMOVE) {
246
+ await RentalHirerChangeRequest._JointHirerRepository.update({ Status: 'Inactive' }, {
247
+ where: {
248
+ HirerId: this.RequestId,
249
+ },
250
+ transaction: dbTransaction,
251
+ });
252
+ this.Status = rental_hirer_change_request_status_1.HirerChangeRequestStatusEnum.COMPLETED;
253
+ }
254
+ }
255
+ const entityValueAfter = {
256
+ RequestId: this.RequestId,
257
+ RentalId: this.RentalId,
258
+ Type: this.Type,
259
+ Status: this.Status,
260
+ RequestedById: this.RequestedById,
261
+ RequestedAt: this.RequestedAt,
262
+ RequestingHirerId: this.RequestingHirerId,
263
+ RequestingHirerType: this.RequestingHirerType,
264
+ CancelRemarks: this.CancelRemarks,
265
+ UpdatedById: this.UpdatedById,
266
+ UpdatedAt: this.UpdatedAt,
267
+ };
268
+ await RentalHirerChangeRequest._Repository.update(entityValueAfter, {
269
+ where: {
270
+ RequestId: this.RequestId,
271
+ },
272
+ transaction: dbTransaction,
273
+ });
274
+ const activity = new activity_history_1.Activity();
275
+ activity.ObjectId = this._createId();
276
+ activity.Action = activity_history_1.ActionEnum.UPDATE;
277
+ activity.Description = 'Update Hirer Change Request';
278
+ activity.EntityId = this.ObjectId;
279
+ activity.EntityType = this.ObjectType;
280
+ activity.EntityValueBefore = JSON.stringify(entityValueBefore);
281
+ activity.EntityValueAfter = JSON.stringify(entityValueAfter);
282
+ await activity.create(loginUser.ObjectId, dbTransaction);
283
+ return this;
284
+ }
285
+ catch (error) {
286
+ throw error;
287
+ }
288
+ }
289
+ async generateSignatures(loginUser, dbTransaction) {
290
+ try {
291
+ if (!this.RentalId) {
292
+ throw new general_1.ClassError('HirerChangeRequest', 'HirerChangeRequestErrMsg09', 'RentalId is required to create signatures.');
293
+ }
294
+ if (!this.Rental) {
295
+ this.Rental = await rental_1.Rental.init(dbTransaction, this.RentalId);
296
+ }
297
+ const jointHirers = await this.Rental.getJointHirers(dbTransaction);
298
+ const mainSignature = await hirer_change_request_signature_1.HirerChangeRequestSignature.init();
299
+ mainSignature.RequestId = this.RequestId;
300
+ mainSignature.CustomerId = this.Rental.CustomerId;
301
+ mainSignature.HirerType = enum_1.HirerChangeRequestHirerRoleEnum.MAIN;
302
+ mainSignature.Method = 'Upload';
303
+ const jointSignaturePromises = jointHirers.map(async (jointHirer) => {
304
+ const signature = await hirer_change_request_signature_1.HirerChangeRequestSignature.init();
305
+ signature.RequestId = this.RequestId;
306
+ signature.JointHirerId = jointHirer.HirerId;
307
+ signature.HirerType = enum_1.HirerChangeRequestHirerRoleEnum.JOINT;
308
+ signature.Method = 'Upload';
309
+ return signature;
310
+ });
311
+ const jointSignatures = await Promise.all(jointSignaturePromises);
312
+ await Promise.all([
313
+ mainSignature.create(loginUser, dbTransaction),
314
+ ...jointSignatures.map((sig) => sig.create(loginUser, dbTransaction)),
315
+ ]);
316
+ this.Signatures = [mainSignature, ...jointSignatures];
317
+ }
318
+ catch (error) {
319
+ console.error('Error creating signatures:', error);
320
+ throw error;
321
+ }
322
+ }
323
+ async createAddRequest(newHirer, loginUser, dbTransaction) {
324
+ try {
325
+ if (!newHirer.FullName ||
326
+ !newHirer.IdNo ||
327
+ !newHirer.IdType ||
328
+ !newHirer.ContactNo ||
329
+ !newHirer.Address ||
330
+ !newHirer.City ||
331
+ !newHirer.State ||
332
+ !newHirer.Postcode ||
333
+ !newHirer.Country) {
334
+ throw new general_1.ClassError('HirerChangeRequest', 'HirerChangeRequestErrMsg10', 'FullName, IdNo, IdType, ContactNo, and Address are required.');
335
+ }
336
+ this.Type = rental_hirer_change_request_type_1.HirerChangeRequestTypeEnum.ADD;
337
+ await this.create(loginUser, dbTransaction);
338
+ const nh = await hirer_change_request_new_hirer_1.HirerChangeRequestNewHirer.init();
339
+ nh.RequestId = this.RequestId;
340
+ nh.FullName = newHirer.FullName;
341
+ nh.Email = newHirer.Email;
342
+ nh.IdType = newHirer.IdType;
343
+ nh.IdNo = newHirer.IdNo;
344
+ nh.ContactNo = newHirer.ContactNo;
345
+ nh.Relationship = newHirer.Relationship;
346
+ nh.Address = newHirer.Address;
347
+ nh.City = newHirer.City;
348
+ nh.State = newHirer.State;
349
+ nh.Postcode = newHirer.Postcode;
350
+ nh.Country = newHirer.Country;
351
+ await nh.create(loginUser, dbTransaction);
352
+ return {
353
+ hirerChangeRequest: this,
354
+ NewHirer: nh,
355
+ };
356
+ }
357
+ catch (error) {
358
+ console.error('Error creating add request:', error);
359
+ throw error;
360
+ }
361
+ }
362
+ async createRemoveRequest(loginUser, dbTransaction, targetHirerId) {
363
+ try {
364
+ await joint_hirer_1.JointHirer.init(targetHirerId, dbTransaction);
365
+ this.Type = rental_hirer_change_request_type_1.HirerChangeRequestTypeEnum.REMOVE;
366
+ await this.create(loginUser, dbTransaction);
367
+ const removeHirer = await hirer_change_request_remove_hirer_1.HirerChangeRequestRemoveHirer.init();
368
+ removeHirer.RequestId = this.RequestId;
369
+ removeHirer.TargetHirerId = targetHirerId;
370
+ await removeHirer.create(loginUser, dbTransaction);
371
+ return {
372
+ hirerChangeRequest: this,
373
+ RemoveHirer: removeHirer,
374
+ };
375
+ }
376
+ catch (error) {
377
+ console.error('Error creating remove request:', error);
378
+ throw error;
379
+ }
380
+ }
381
+ static async findAll(loginUser, dbTransaction, rentalId) {
382
+ try {
383
+ const systemCode = config_1.ApplicationConfig.getComponentConfigValue('system-code');
384
+ const isPrivileged = await loginUser.checkPrivileges(systemCode, 'HIRER_CHANGE_REQUEST');
385
+ if (!isPrivileged) {
386
+ throw new general_1.ClassError('HirerChangeRequest', 'HirerChangeRequestErrMsg01', "You do not have 'HIRER_CHANGE_REQUEST' privilege.");
387
+ }
388
+ if (!rentalId) {
389
+ throw new general_1.ClassError('HirerChangeRequest', 'HirerChangeRequestErrMsg12', 'rentalId is required.');
390
+ }
391
+ await rental_1.Rental.init(dbTransaction, rentalId);
392
+ const records = await RentalHirerChangeRequest._Repository.findAll({
393
+ where: { RentalId: rentalId },
394
+ transaction: dbTransaction,
395
+ });
396
+ const result = (records || []).map((rec) => new RentalHirerChangeRequest(rec.get({ plain: true })));
397
+ return result;
398
+ }
399
+ catch (error) {
400
+ console.error('Error finding all RentalHirerChangeRequest:', error);
401
+ throw error;
402
+ }
403
+ }
404
+ async getNewHirer(dbTransaction) {
405
+ try {
406
+ if (!this.RequestId) {
407
+ throw new general_1.ClassError('HirerChangeRequest', 'HirerChangeRequestErrMsg13', 'RequestId is required to get new hirer.');
408
+ }
409
+ const newHirerRecords = await hirer_change_request_new_hirer_1.HirerChangeRequestNewHirer.findAll({
410
+ RequestId: this.RequestId,
411
+ }, dbTransaction);
412
+ return newHirerRecords[0] || null;
413
+ }
414
+ catch (error) {
415
+ console.error('Error getting new hirer:', error);
416
+ throw error;
417
+ }
418
+ }
419
+ async getRemoveHirer(dbTransaction) {
420
+ try {
421
+ if (!this.RequestId) {
422
+ throw new general_1.ClassError('HirerChangeRequest', 'HirerChangeRequestErrMsg13', 'RequestId is required to get remove hirer.');
423
+ }
424
+ const removeHirerRecords = await hirer_change_request_remove_hirer_1.HirerChangeRequestRemoveHirer.findAll({
425
+ RequestId: this.RequestId,
426
+ }, dbTransaction);
427
+ return removeHirerRecords[0] || null;
428
+ }
429
+ catch (error) {
430
+ console.error('Error getting remove hirer:', error);
431
+ throw error;
432
+ }
433
+ }
434
+ async sign(loginUser, dbTransaction, signatureId) {
435
+ try {
436
+ if (!this.RequestId) {
437
+ throw new general_1.ClassError('HirerChangeRequest', 'HirerChangeRequestErrMsg13', 'RequestId is required to sign signature.');
438
+ }
439
+ const hcrSignature = await hirer_change_request_signature_1.HirerChangeRequestSignature.init(signatureId, dbTransaction);
440
+ await hcrSignature.markSigned(loginUser, dbTransaction);
441
+ return hcrSignature;
442
+ }
443
+ catch (error) {
444
+ throw error;
445
+ }
446
+ }
447
+ async complete(loginUser, dbTransaction, customerId, customerType) {
448
+ const systemCode = config_1.ApplicationConfig.getComponentConfigValue('system-code');
449
+ const isPrivileged = await loginUser.checkPrivileges(systemCode, 'HIRER_CHANGE_REQUEST');
450
+ if (!isPrivileged) {
451
+ throw new general_1.ClassError('HirerChangeRequest', 'HirerChangeRequestErrMsg01', "You do not have 'HIRER_CHANGE_REQUEST' privilege.");
452
+ }
453
+ if (!this.RequestId) {
454
+ throw new general_1.ClassError('HirerChangeRequest', 'HirerChangeRequestErrMsg06', 'RequestId is required.');
455
+ }
456
+ const signatures = await this.getSignatures(dbTransaction);
457
+ if (!signatures.length || !signatures.every((sig) => sig.SignedAt)) {
458
+ throw new general_1.ClassError('HirerChangeRequest', 'HirerChangeRequestErrMsg14', 'All signatures must be signed before completing the request.');
459
+ }
460
+ if (this.Type === rental_hirer_change_request_type_1.HirerChangeRequestTypeEnum.ADD) {
461
+ if (!customerId || !customerType) {
462
+ throw new general_1.ClassError('HirerChangeRequest', 'HirerChangeRequestErrMsg15', 'CustomerId and CustomerType are required for new hirer.');
463
+ }
464
+ const jointHirer = await joint_hirer_1.JointHirer.init();
465
+ jointHirer.RentalId = this.RentalId;
466
+ jointHirer.CustomerId = customerId;
467
+ jointHirer.CustomerType = customerType;
468
+ await jointHirer.create(loginUser, dbTransaction);
469
+ }
470
+ else if (this.Type === rental_hirer_change_request_type_1.HirerChangeRequestTypeEnum.REMOVE) {
471
+ const removeHirer = await this.getRemoveHirer(dbTransaction);
472
+ const jointHirer = await joint_hirer_1.JointHirer.init(removeHirer.TargetHirerId, dbTransaction);
473
+ await jointHirer.remove(loginUser, dbTransaction);
474
+ }
475
+ const now = new Date();
476
+ const entityValueBefore = this.toJSON();
477
+ this.Status = rental_hirer_change_request_status_1.HirerChangeRequestStatusEnum.COMPLETED;
478
+ this.UpdatedAt = new Date();
479
+ this.UpdatedById = loginUser.ObjectId;
480
+ const entityValueAfter = this.toJSON();
481
+ await RentalHirerChangeRequest._Repository.update(entityValueAfter, {
482
+ where: { RequestId: this.RequestId },
483
+ transaction: dbTransaction,
484
+ });
485
+ const activity = new activity_history_1.Activity();
486
+ activity.ObjectId = this._createId();
487
+ activity.Action = activity_history_1.ActionEnum.UPDATE;
488
+ activity.Description = `Mark request as completed.`;
489
+ activity.EntityId = this.RequestId;
490
+ activity.EntityType = this.ObjectType;
491
+ activity.EntityValueBefore = JSON.stringify(entityValueBefore);
492
+ activity.EntityValueAfter = JSON.stringify(entityValueAfter);
493
+ await activity.create(loginUser.ObjectId, dbTransaction);
494
+ return this;
495
+ }
496
+ async cancel(loginUser, dbTransaction, cancelRemarks) {
497
+ const systemCode = config_1.ApplicationConfig.getComponentConfigValue('system-code');
498
+ const isPrivileged = await loginUser.checkPrivileges(systemCode, 'HIRER_CHANGE_REQUEST');
499
+ if (!isPrivileged) {
500
+ throw new general_1.ClassError('HirerChangeRequest', 'HirerChangeRequestErrMsg01', "You do not have 'HIRER_CHANGE_REQUEST' privilege.");
501
+ }
502
+ if (!this.RequestId) {
503
+ throw new general_1.ClassError('HirerChangeRequest', 'HirerChangeRequestErrMsg06', 'RequestId is required.');
504
+ }
505
+ const entityValueBefore = this.toJSON();
506
+ this.Status = rental_hirer_change_request_status_1.HirerChangeRequestStatusEnum.CANCELLED;
507
+ this.CancelRemarks = cancelRemarks;
508
+ this.UpdatedAt = new Date();
509
+ this.UpdatedById = loginUser.ObjectId;
510
+ const entityValueAfter = this.toJSON();
511
+ await RentalHirerChangeRequest._Repository.update(entityValueAfter, {
512
+ where: { RequestId: this.RequestId },
513
+ transaction: dbTransaction,
514
+ });
515
+ const activity = new activity_history_1.Activity();
516
+ activity.ObjectId = this._createId();
517
+ activity.Action = activity_history_1.ActionEnum.UPDATE;
518
+ activity.Description = `Cancel hirer change request.`;
519
+ activity.EntityId = this.RequestId;
520
+ activity.EntityType = this.ObjectType;
521
+ activity.EntityValueBefore = JSON.stringify(entityValueBefore);
522
+ activity.EntityValueAfter = JSON.stringify(entityValueAfter);
523
+ await activity.create(loginUser.ObjectId, dbTransaction);
524
+ return this;
525
+ }
526
+ }
527
+ exports.RentalHirerChangeRequest = RentalHirerChangeRequest;
528
+ RentalHirerChangeRequest._Repository = new rental_hirer_change_request_repository_1.RentalHirerChangeRequestRepository();
529
+ RentalHirerChangeRequest._HirerSignatureRepository = new hirer_change_request_signature_repository_1.HirerChangeRequestSignatureRepository();
530
+ RentalHirerChangeRequest._JointHirerRepository = new joint_hirer_repository_1.JointHirerRepository();
531
+ //# sourceMappingURL=rental-hirer-change-request.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rental-hirer-change-request.js","sourceRoot":"","sources":["../../../src/components/rental-hirer-change-request/rental-hirer-change-request.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { RepositoryBase, IRepositoryBase } from '@tomei/general';
2
+ import { RentalHirerChangeRequestModel } from '../../models/rental-hirer-change-request.entity';
3
+ export declare class RentalHirerChangeRequestRepository extends RepositoryBase<RentalHirerChangeRequestModel> implements IRepositoryBase<RentalHirerChangeRequestModel> {
4
+ constructor();
5
+ findByPk(id: string, transaction?: any): Promise<RentalHirerChangeRequestModel | null>;
6
+ delete(requestId: string, dbTransaction?: any): Promise<void>;
7
+ findAndCountAll(options?: any): Promise<any>;
8
+ findAll(options: any): Promise<RentalHirerChangeRequestModel[]>;
9
+ }
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RentalHirerChangeRequestRepository = void 0;
4
+ const general_1 = require("@tomei/general");
5
+ const rental_hirer_change_request_entity_1 = require("../../models/rental-hirer-change-request.entity");
6
+ class RentalHirerChangeRequestRepository extends general_1.RepositoryBase {
7
+ constructor() {
8
+ super(rental_hirer_change_request_entity_1.RentalHirerChangeRequestModel);
9
+ }
10
+ async findByPk(id, transaction) {
11
+ try {
12
+ const result = await rental_hirer_change_request_entity_1.RentalHirerChangeRequestModel.findByPk(id, {
13
+ transaction: transaction,
14
+ });
15
+ return result;
16
+ }
17
+ catch (error) {
18
+ throw new Error(`An Error occured when fetching : ${error.message}`);
19
+ }
20
+ }
21
+ async delete(requestId, dbTransaction) {
22
+ try {
23
+ const options = {
24
+ where: {
25
+ RequestId: requestId,
26
+ },
27
+ transaction: dbTransaction,
28
+ };
29
+ await rental_hirer_change_request_entity_1.RentalHirerChangeRequestModel.destroy(options);
30
+ }
31
+ catch (error) {
32
+ throw new Error(`An Error occured when delete : ${error.message}`);
33
+ }
34
+ }
35
+ async findAndCountAll(options) {
36
+ try {
37
+ let jointHirers;
38
+ if (options) {
39
+ jointHirers =
40
+ await rental_hirer_change_request_entity_1.RentalHirerChangeRequestModel.findAndCountAll(options);
41
+ }
42
+ else {
43
+ jointHirers = await rental_hirer_change_request_entity_1.RentalHirerChangeRequestModel.findAndCountAll();
44
+ }
45
+ return jointHirers;
46
+ }
47
+ catch (error) {
48
+ throw new Error(`An Error occured when retriving : ${error.message}`);
49
+ }
50
+ }
51
+ async findAll(options) {
52
+ try {
53
+ const result = await rental_hirer_change_request_entity_1.RentalHirerChangeRequestModel.findAll(options);
54
+ return result;
55
+ }
56
+ catch (error) {
57
+ throw new Error(`An Error occured when fetching : ${error.message}`);
58
+ }
59
+ }
60
+ }
61
+ exports.RentalHirerChangeRequestRepository = RentalHirerChangeRequestRepository;
62
+ //# sourceMappingURL=rental-hirer-change-request.repository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rental-hirer-change-request.repository.js","sourceRoot":"","sources":["../../../src/components/rental-hirer-change-request/rental-hirer-change-request.repository.ts"],"names":[],"mappings":";;;AAAA,4CAAiE;AACjE,wGAAgG;AAEhG,MAAa,kCACX,SAAQ,wBAA6C;IAGrD;QACE,KAAK,CAAC,kEAA6B,CAAC,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,QAAQ,CACZ,EAAU,EACV,WAAiB;QAEjB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,kEAA6B,CAAC,QAAQ,CAAC,EAAE,EAAE;gBAC9D,WAAW,EAAE,WAAW;aACzB,CAAC,CAAC;YAEH,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,oCAAoC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACvE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,SAAiB,EAAE,aAAmB;QACjD,IAAI,CAAC;YACH,MAAM,OAAO,GAAG;gBACd,KAAK,EAAE;oBACL,SAAS,EAAE,SAAS;iBACrB;gBACD,WAAW,EAAE,aAAa;aAC3B,CAAC;YACF,MAAM,kEAA6B,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACvD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,kCAAkC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,OAAa;QACjC,IAAI,CAAC;YACH,IAAI,WAAgB,CAAC;YACrB,IAAI,OAAO,EAAE,CAAC;gBACZ,WAAW;oBACT,MAAM,kEAA6B,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YACjE,CAAC;iBAAM,CAAC;gBACN,WAAW,GAAG,MAAM,kEAA6B,CAAC,eAAe,EAAE,CAAC;YACtE,CAAC;YACD,OAAO,WAAW,CAAC;QACrB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,qCAAqC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAY;QACxB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,kEAA6B,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YACpE,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,oCAAoC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACvE,CAAC;IACH,CAAC;CACF;AA5DD,gFA4DC"}