rez_core 0.0.7 → 1.0.2-o

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 (286) hide show
  1. package/.idea/250218_nodejs_core.iml +12 -0
  2. package/.idea/codeStyles/Project.xml +59 -0
  3. package/.idea/codeStyles/codeStyleConfig.xml +5 -0
  4. package/.idea/dataSources.xml +12 -0
  5. package/.idea/modules.xml +8 -0
  6. package/.idea/prettier.xml +6 -0
  7. package/.idea/vcs.xml +6 -0
  8. package/data/master.xlsx +0 -0
  9. package/dist/app.module.d.ts +0 -2
  10. package/dist/app.module.js +0 -31
  11. package/dist/app.module.js.map +1 -1
  12. package/dist/config/config.module.js +1 -1
  13. package/dist/config/config.module.js.map +1 -1
  14. package/dist/config/database.config.d.ts +3 -0
  15. package/dist/config/database.config.js +14 -6
  16. package/dist/config/database.config.js.map +1 -1
  17. package/dist/constant/global.constant.d.ts +6 -2
  18. package/dist/constant/global.constant.js +7 -3
  19. package/dist/constant/global.constant.js.map +1 -1
  20. package/dist/core.module.js +6 -0
  21. package/dist/core.module.js.map +1 -1
  22. package/dist/decorators/roles.decorator.js.map +1 -1
  23. package/dist/main.js +2 -1
  24. package/dist/main.js.map +1 -1
  25. package/dist/module/auth/auth.module.js +1 -1
  26. package/dist/module/auth/auth.module.js.map +1 -1
  27. package/dist/module/auth/guards/role.guard.js +3 -3
  28. package/dist/module/auth/strategies/google.strategy.d.ts +3 -1
  29. package/dist/module/auth/strategies/google.strategy.js +7 -5
  30. package/dist/module/auth/strategies/google.strategy.js.map +1 -1
  31. package/dist/module/auth/strategies/jwt.strategy.d.ts +4 -4
  32. package/dist/module/auth/strategies/jwt.strategy.js +8 -9
  33. package/dist/module/auth/strategies/jwt.strategy.js.map +1 -1
  34. package/dist/module/enterprise/enterprise.module.js +1 -1
  35. package/dist/module/enterprise/enterprise.module.js.map +1 -1
  36. package/dist/module/enterprise/service/organization.service.d.ts +9 -7
  37. package/dist/module/enterprise/service/organization.service.js +35 -14
  38. package/dist/module/enterprise/service/organization.service.js.map +1 -1
  39. package/dist/module/layout/controller/layout.controller.d.ts +11 -0
  40. package/dist/module/layout/controller/layout.controller.js +61 -0
  41. package/dist/module/layout/controller/layout.controller.js.map +1 -0
  42. package/dist/module/layout/dto/header.dto.d.ts +0 -0
  43. package/dist/module/layout/dto/header.dto.js +1 -0
  44. package/dist/module/layout/dto/header.dto.js.map +1 -0
  45. package/dist/module/layout/entity/header-items.entity.d.ts +10 -0
  46. package/dist/module/layout/entity/header-items.entity.js +52 -0
  47. package/dist/module/layout/entity/header-items.entity.js.map +1 -0
  48. package/dist/module/layout/entity/header-section.entity.d.ts +7 -0
  49. package/dist/module/layout/entity/header-section.entity.js +40 -0
  50. package/dist/module/layout/entity/header-section.entity.js.map +1 -0
  51. package/dist/module/layout/layout.module.d.ts +2 -0
  52. package/dist/module/layout/layout.module.js +30 -0
  53. package/dist/module/layout/layout.module.js.map +1 -0
  54. package/dist/module/layout/repository/header-items.repository.d.ts +7 -0
  55. package/dist/module/layout/repository/header-items.repository.js +36 -0
  56. package/dist/module/layout/repository/header-items.repository.js.map +1 -0
  57. package/dist/module/layout/repository/header-section.repository.d.ts +7 -0
  58. package/dist/module/layout/repository/header-section.repository.js +36 -0
  59. package/dist/module/layout/repository/header-section.repository.js.map +1 -0
  60. package/dist/module/layout/service/header-section.service.d.ts +8 -0
  61. package/dist/module/layout/service/header-section.service.js +37 -0
  62. package/dist/module/layout/service/header-section.service.js.map +1 -0
  63. package/dist/module/meta/controller/entity.controller.d.ts +1 -0
  64. package/dist/module/meta/controller/entity.controller.js +37 -1
  65. package/dist/module/meta/controller/entity.controller.js.map +1 -1
  66. package/dist/module/meta/entity/base-entity.entity.d.ts +1 -2
  67. package/dist/module/meta/entity/base-entity.entity.js +1 -2
  68. package/dist/module/meta/entity/base-entity.entity.js.map +1 -1
  69. package/dist/module/meta/entity/entity-master.entity.d.ts +1 -0
  70. package/dist/module/meta/entity/entity-master.entity.js +4 -0
  71. package/dist/module/meta/entity/entity-master.entity.js.map +1 -1
  72. package/dist/module/meta/entity/entity-table-column.entity.js.map +1 -1
  73. package/dist/module/meta/entity/entity-table.entity.d.ts +1 -0
  74. package/dist/module/meta/entity/entity-table.entity.js +4 -0
  75. package/dist/module/meta/entity/entity-table.entity.js.map +1 -1
  76. package/dist/module/meta/entity/media-data.entity.d.ts +11 -0
  77. package/dist/module/meta/entity/media-data.entity.js +55 -0
  78. package/dist/module/meta/entity/media-data.entity.js.map +1 -0
  79. package/dist/module/meta/entity.module.js +15 -1
  80. package/dist/module/meta/entity.module.js.map +1 -1
  81. package/dist/module/meta/repository/entity-table-column.repository.js +2 -2
  82. package/dist/module/meta/repository/entity-table.repository.d.ts +1 -0
  83. package/dist/module/meta/repository/entity-table.repository.js +9 -0
  84. package/dist/module/meta/repository/entity-table.repository.js.map +1 -1
  85. package/dist/module/meta/repository/media-data.repository.d.ts +9 -0
  86. package/dist/module/meta/repository/media-data.repository.js +55 -0
  87. package/dist/module/meta/repository/media-data.repository.js.map +1 -0
  88. package/dist/module/meta/service/entity-list.service.d.ts +3 -1
  89. package/dist/module/meta/service/entity-list.service.js +26 -3
  90. package/dist/module/meta/service/entity-list.service.js.map +1 -1
  91. package/dist/module/meta/service/entity-service-impl.service.d.ts +13 -5
  92. package/dist/module/meta/service/entity-service-impl.service.js +92 -15
  93. package/dist/module/meta/service/entity-service-impl.service.js.map +1 -1
  94. package/dist/module/meta/service/entity-table-column.service.d.ts +1 -0
  95. package/dist/module/meta/service/entity-table-column.service.js +4 -0
  96. package/dist/module/meta/service/entity-table-column.service.js.map +1 -1
  97. package/dist/module/meta/service/entity-table.service.d.ts +1 -0
  98. package/dist/module/meta/service/entity-table.service.js +3 -0
  99. package/dist/module/meta/service/entity-table.service.js.map +1 -1
  100. package/dist/module/meta/service/entity.service.d.ts +3 -1
  101. package/dist/module/meta/service/media-data.service.d.ts +9 -0
  102. package/dist/module/meta/service/media-data.service.js +36 -0
  103. package/dist/module/meta/service/media-data.service.js.map +1 -0
  104. package/dist/module/meta/service/preference.service.d.ts +1 -5
  105. package/dist/module/meta/service/preference.service.js +3 -11
  106. package/dist/module/meta/service/preference.service.js.map +1 -1
  107. package/dist/module/module/entity/menu.entity.d.ts +1 -2
  108. package/dist/module/module/entity/menu.entity.js +1 -2
  109. package/dist/module/module/entity/menu.entity.js.map +1 -1
  110. package/dist/module/module/entity/module.entity.d.ts +1 -2
  111. package/dist/module/module/entity/module.entity.js +1 -2
  112. package/dist/module/module/entity/module.entity.js.map +1 -1
  113. package/dist/module/module/module.module.js +2 -2
  114. package/dist/module/module/module.module.js.map +1 -1
  115. package/dist/module/module/repository/menu.repository.js +3 -3
  116. package/dist/module/module/repository/menu.repository.js.map +1 -1
  117. package/dist/module/module/repository/module-access.repository.js +31 -20
  118. package/dist/module/module/repository/module-access.repository.js.map +1 -1
  119. package/dist/module/module/service/menu.service.js +2 -2
  120. package/dist/module/module/service/menu.service.js.map +1 -1
  121. package/dist/module/module/service/module-access.service.js.map +1 -1
  122. package/dist/module/notification/controller/otp.controller.d.ts +17 -0
  123. package/dist/module/notification/controller/otp.controller.js +67 -0
  124. package/dist/module/notification/controller/otp.controller.js.map +1 -0
  125. package/dist/module/notification/entity/otp.entity.d.ts +10 -0
  126. package/dist/module/notification/entity/otp.entity.js +52 -0
  127. package/dist/module/notification/entity/otp.entity.js.map +1 -0
  128. package/dist/module/notification/notification.module.d.ts +2 -0
  129. package/dist/module/notification/notification.module.js +27 -0
  130. package/dist/module/notification/notification.module.js.map +1 -0
  131. package/dist/module/notification/repository/otp.repository.d.ts +9 -0
  132. package/dist/module/notification/repository/otp.repository.js +44 -0
  133. package/dist/module/notification/repository/otp.repository.js.map +1 -0
  134. package/dist/module/notification/service/otp.service.d.ts +16 -0
  135. package/dist/module/notification/service/otp.service.js +66 -0
  136. package/dist/module/notification/service/otp.service.js.map +1 -0
  137. package/dist/module/user/controller/login.controller.d.ts +1 -3
  138. package/dist/module/user/controller/login.controller.js +0 -1
  139. package/dist/module/user/controller/login.controller.js.map +1 -1
  140. package/dist/module/user/dto/create-user.dto.js.map +1 -1
  141. package/dist/module/user/entity/role.entity.js.map +1 -1
  142. package/dist/module/user/repository/user-role-mapping.repository.js +4 -1
  143. package/dist/module/user/repository/user-role-mapping.repository.js.map +1 -1
  144. package/dist/module/user/repository/user.repository.js.map +1 -1
  145. package/dist/module/user/service/login.service.d.ts +12 -4
  146. package/dist/module/user/service/login.service.js +24 -9
  147. package/dist/module/user/service/login.service.js.map +1 -1
  148. package/dist/module/user/service/role.service.d.ts +1 -5
  149. package/dist/module/user/service/role.service.js +3 -10
  150. package/dist/module/user/service/role.service.js.map +1 -1
  151. package/dist/module/user/service/user-session.service.d.ts +1 -3
  152. package/dist/module/user/service/user-session.service.js +1 -1
  153. package/dist/module/user/service/user-session.service.js.map +1 -1
  154. package/dist/module/user/service/user.service.d.ts +7 -8
  155. package/dist/module/user/service/user.service.js +13 -17
  156. package/dist/module/user/service/user.service.js.map +1 -1
  157. package/dist/module/user/user.module.js +1 -0
  158. package/dist/module/user/user.module.js.map +1 -1
  159. package/dist/resources/dev.properties.yaml +15 -0
  160. package/dist/resources/properties.module.d.ts +2 -0
  161. package/dist/resources/properties.module.js +25 -0
  162. package/dist/resources/properties.module.js.map +1 -0
  163. package/dist/resources/properties.yaml.d.ts +2 -0
  164. package/dist/resources/properties.yaml.js +10 -0
  165. package/dist/resources/properties.yaml.js.map +1 -0
  166. package/dist/resources/uat.properties.yaml +15 -0
  167. package/dist/tsconfig.build.tsbuildinfo +1 -1
  168. package/dist/utils/dto/excel-data.dto.d.ts +7 -0
  169. package/dist/utils/dto/excel-data.dto.js +16 -0
  170. package/dist/utils/dto/excel-data.dto.js.map +1 -0
  171. package/dist/utils/dto/excelsheet-data.dto.d.ts +5 -0
  172. package/dist/utils/dto/excelsheet-data.dto.js +3 -0
  173. package/dist/utils/dto/excelsheet-data.dto.js.map +1 -0
  174. package/dist/utils/service/excel-helper.service.d.ts +3 -1
  175. package/dist/utils/service/excel-helper.service.js +12 -3
  176. package/dist/utils/service/excel-helper.service.js.map +1 -1
  177. package/dist/utils/service/loggingUtil.service.js +6 -6
  178. package/dist/utils/service/loggingUtil.service.js.map +1 -1
  179. package/dist/utils/utils.module.js.map +1 -1
  180. package/nest-cli.json +6 -0
  181. package/package.json +1 -1
  182. package/src/app.module.ts +0 -0
  183. package/src/config/config.module.ts +1 -1
  184. package/src/config/database.config.ts +10 -5
  185. package/src/constant/global.constant.ts +13 -4
  186. package/src/core.module.ts +6 -0
  187. package/src/decorators/roles.decorator.ts +5 -2
  188. package/src/module/auth/auth.module.ts +3 -2
  189. package/src/module/auth/guards/google-auth.guard.ts +1 -1
  190. package/src/module/auth/guards/jwt.guard.ts +22 -22
  191. package/src/module/auth/guards/role.guard.ts +68 -68
  192. package/src/module/auth/services/auth.service.ts +29 -29
  193. package/src/module/auth/services/jwt.service.ts +11 -11
  194. package/src/module/auth/strategies/google.strategy.ts +7 -4
  195. package/src/module/auth/strategies/jwt.strategy.ts +5 -6
  196. package/src/module/auth/strategies/local.strategy.ts +13 -13
  197. package/src/module/dev/dev.module.ts +12 -12
  198. package/src/module/dev/service/dev.service.ts +7 -7
  199. package/src/module/enterprise/enterprise.module.ts +2 -3
  200. package/src/module/enterprise/entity/enterprise.entity.ts +37 -37
  201. package/src/module/enterprise/entity/organization.entity.ts +80 -80
  202. package/src/module/enterprise/service/organization.service.ts +48 -13
  203. package/src/module/layout/controller/layout.controller.ts +32 -0
  204. package/src/module/layout/dto/header.dto.ts +0 -0
  205. package/src/module/layout/entity/header-items.entity.ts +28 -0
  206. package/src/module/layout/entity/header-section.entity.ts +19 -0
  207. package/src/module/layout/layout.module.ts +17 -0
  208. package/src/module/layout/repository/header-items.repository.ts +18 -0
  209. package/src/module/layout/repository/header-section.repository.ts +18 -0
  210. package/src/module/layout/service/header-section.service.ts +26 -0
  211. package/src/module/master/controller/master.controller.ts +22 -22
  212. package/src/module/meta/controller/entity.controller.ts +56 -3
  213. package/src/module/meta/dto/entity-list-data.dto.ts +6 -6
  214. package/src/module/meta/entity/attribute-master.entity.ts +67 -67
  215. package/src/module/meta/entity/base-entity.entity.ts +2 -3
  216. package/src/module/meta/entity/entity-master.entity.ts +3 -0
  217. package/src/module/meta/entity/entity-table-column.entity.ts +1 -1
  218. package/src/module/meta/entity/entity-table.entity.ts +4 -2
  219. package/src/module/meta/entity/media-data.entity.ts +32 -0
  220. package/src/module/meta/entity/preference.entity.ts +65 -65
  221. package/src/module/meta/entity.module.ts +15 -1
  222. package/src/module/meta/repository/attribute-master.repository.ts +28 -28
  223. package/src/module/meta/repository/entity-table-column.repository.ts +3 -3
  224. package/src/module/meta/repository/entity-table.repository.ts +14 -0
  225. package/src/module/meta/repository/media-data.repository.ts +50 -0
  226. package/src/module/meta/repository/preference.repository.ts +20 -20
  227. package/src/module/meta/service/entity-list.service.ts +36 -7
  228. package/src/module/meta/service/entity-service-impl.service.ts +138 -20
  229. package/src/module/meta/service/entity-table-column.service.ts +14 -1
  230. package/src/module/meta/service/entity-table.service.ts +8 -1
  231. package/src/module/meta/service/entity.service.ts +13 -1
  232. package/src/module/meta/service/media-data.service.ts +44 -0
  233. package/src/module/meta/service/preference.service.ts +2 -17
  234. package/src/module/module/controller/menu.controller.ts +15 -15
  235. package/src/module/module/controller/module-access.controller.ts +1 -1
  236. package/src/module/module/entity/menu.entity.ts +10 -11
  237. package/src/module/module/entity/module-access.entity.ts +22 -22
  238. package/src/module/module/entity/module-action.entity.ts +19 -19
  239. package/src/module/module/entity/module.entity.ts +9 -10
  240. package/src/module/module/module.module.ts +2 -4
  241. package/src/module/module/repository/menu.repository.ts +7 -10
  242. package/src/module/module/repository/module-access.repository.ts +57 -42
  243. package/src/module/module/service/menu.service.ts +9 -10
  244. package/src/module/module/service/module-access.service.ts +8 -3
  245. package/src/module/notification/controller/otp.controller.ts +41 -0
  246. package/src/module/notification/entity/otp.entity.ts +28 -0
  247. package/src/module/notification/notification.module.ts +14 -0
  248. package/src/module/notification/repository/otp.repository.ts +27 -0
  249. package/src/module/notification/service/otp.service.ts +56 -0
  250. package/src/module/user/controller/login.controller.ts +2 -1
  251. package/src/module/user/controller/user.controller.ts +28 -28
  252. package/src/module/user/dto/create-user.dto.ts +43 -43
  253. package/src/module/user/dto/update-user.dto.ts +4 -4
  254. package/src/module/user/entity/role.entity.ts +1 -1
  255. package/src/module/user/entity/user-role-mapping.entity.ts +21 -21
  256. package/src/module/user/entity/user-session.entity.ts +61 -61
  257. package/src/module/user/entity/user.entity.ts +35 -35
  258. package/src/module/user/repository/role.repository.ts +16 -16
  259. package/src/module/user/repository/user-role-mapping.repository.ts +9 -3
  260. package/src/module/user/repository/user.repository.ts +2 -2
  261. package/src/module/user/repository/userSession.repository.ts +33 -33
  262. package/src/module/user/service/login.service.ts +25 -8
  263. package/src/module/user/service/role.service.ts +2 -13
  264. package/src/module/user/service/user-role-mapping.service.ts +1 -1
  265. package/src/module/user/service/user-session.service.ts +2 -2
  266. package/src/module/user/service/user.service.ts +16 -27
  267. package/src/module/user/user.module.ts +1 -1
  268. package/src/resources/dev.properties.yaml +15 -0
  269. package/src/resources/properties.module.ts +12 -0
  270. package/src/resources/properties.yaml.ts +11 -0
  271. package/src/resources/uat.properties.yaml +15 -0
  272. package/src/utils/dto/excel-data.dto.ts +14 -0
  273. package/src/utils/dto/excelsheet-data.dto.ts +5 -0
  274. package/src/utils/service/clockIDGenUtil.service.ts +1 -1
  275. package/src/utils/service/dateUtil.service.ts +1 -1
  276. package/src/utils/service/encryptUtil.service.ts +97 -97
  277. package/src/utils/service/excel-helper.service.ts +14 -1
  278. package/src/utils/service/excelUtil.service.ts +15 -15
  279. package/src/utils/service/loggingUtil.service.ts +48 -48
  280. package/src/utils/service/reflection-helper.service.ts +53 -53
  281. package/src/utils/utils.module.ts +7 -7
  282. package/.env +0 -6
  283. package/dist/constant/status.constant.d.ts +0 -4
  284. package/dist/constant/status.constant.js +0 -9
  285. package/dist/constant/status.constant.js.map +0 -1
  286. package/src/constant/status.constant.ts +0 -3
@@ -0,0 +1,5 @@
1
+ export interface ExcelsheetData{
2
+ sheetName:string;
3
+ headers: string[];
4
+ rowList: any[][];
5
+ }
@@ -1,4 +1,4 @@
1
- import { Injectable } from "@nestjs/common";
1
+ import { Injectable } from '@nestjs/common';
2
2
 
3
3
  @Injectable()
4
4
  export class ClockIDGenService {
@@ -1,4 +1,4 @@
1
- import { Injectable } from "@nestjs/common";
1
+ import { Injectable } from '@nestjs/common';
2
2
 
3
3
  @Injectable()
4
4
  export class DateUtil {
@@ -1,97 +1,97 @@
1
- import { Injectable, InternalServerErrorException } from '@nestjs/common';
2
- import * as crypto from 'crypto';
3
-
4
- const CryptoJS = require('crypto-js');
5
- const encryptionType = 'aes-256-cbc';
6
-
7
- @Injectable()
8
- export class EncryptUtilService {
9
- constructor() {}
10
-
11
- static encryptGCM(data: any, Datakey: string, Dataiv: string) {
12
- try {
13
- const cipher = crypto.createCipheriv('aes-256-gcm', Datakey, Dataiv);
14
- let encrypted = Buffer.concat([
15
- cipher.update(data, 'utf8'),
16
- cipher.final(),
17
- ]);
18
- const tag = cipher.getAuthTag();
19
- return Buffer.concat([encrypted, tag]).toString('base64');
20
- } catch (error) {
21
- throw new InternalServerErrorException('Encryption process failed');
22
- }
23
- }
24
-
25
- static decryptGCM(data: any, Datakey: any, Dataiv: any) {
26
- try {
27
- data = Buffer.from(data, 'base64');
28
- const decipher = crypto.createDecipheriv('aes-256-gcm', Datakey, Dataiv);
29
- const tag = data.slice(data.length - 16);
30
- decipher.setAuthTag(tag);
31
- data = data.slice(0, data.length - 16);
32
- let decrypted = decipher.update(data, 'utf8') + decipher.final('utf8');
33
- return decrypted;
34
- } catch (error) {
35
- throw new InternalServerErrorException('Encryption process failed');
36
- }
37
- }
38
-
39
- static encryptCBC(data: any, Datakey: any, Dataiv: any) {
40
- let encryptedRequest;
41
- try {
42
- let cipher = CryptoJS.AES.encrypt(data, Datakey, {
43
- iv: Dataiv,
44
- mode: CryptoJS.mode.CBC,
45
- });
46
- encryptedRequest = cipher.toString();
47
- } catch (error) {
48
- console.log(error);
49
- throw new InternalServerErrorException('Encryption process failed');
50
- }
51
- return encryptedRequest;
52
- }
53
-
54
- static decryptCBC(data: any, Datakey: any, Dataiv: any) {
55
- let decryptRequest;
56
- try {
57
- let cipher = CryptoJS.AES.decrypt(data, Datakey, {
58
- iv: Dataiv,
59
- mode: CryptoJS.mode.CBC,
60
- });
61
- decryptRequest = cipher.toString(CryptoJS.enc.Utf8);
62
- } catch (error) {
63
- throw new InternalServerErrorException('Encryption process failed');
64
- }
65
- return decryptRequest;
66
- }
67
-
68
- static encryptRequest(data: any, Datakey: any, Dataiv: any, type?: any) {
69
- try {
70
- switch (type) {
71
- case 'GCM':
72
- return this.encryptGCM(data, Datakey, Dataiv);
73
- case 'CBC':
74
- return this.encryptCBC(data, Datakey, Dataiv);
75
- default:
76
- return this.encryptCBC(data, Datakey, Dataiv);
77
- }
78
- } catch (error) {
79
- throw new InternalServerErrorException('Encryption process failed');
80
- }
81
- }
82
-
83
- static decryptRequest(data: any, Datakey: any, Dataiv: any, type?: any) {
84
- try {
85
- switch (type) {
86
- case 'GCM':
87
- return this.decryptGCM(data, Datakey, Dataiv);
88
- case 'CBC':
89
- return this.decryptCBC(data, Datakey, Dataiv);
90
- default:
91
- return this.decryptCBC(data, Datakey, Dataiv);
92
- }
93
- } catch (error) {
94
- throw new InternalServerErrorException('Encryption process failed');
95
- }
96
- }
97
- }
1
+ import { Injectable, InternalServerErrorException } from '@nestjs/common';
2
+ import * as crypto from 'crypto';
3
+
4
+ const CryptoJS = require('crypto-js');
5
+ const encryptionType = 'aes-256-cbc';
6
+
7
+ @Injectable()
8
+ export class EncryptUtilService {
9
+ constructor() {}
10
+
11
+ static encryptGCM(data: any, Datakey: string, Dataiv: string) {
12
+ try {
13
+ const cipher = crypto.createCipheriv('aes-256-gcm', Datakey, Dataiv);
14
+ let encrypted = Buffer.concat([
15
+ cipher.update(data, 'utf8'),
16
+ cipher.final(),
17
+ ]);
18
+ const tag = cipher.getAuthTag();
19
+ return Buffer.concat([encrypted, tag]).toString('base64');
20
+ } catch (error) {
21
+ throw new InternalServerErrorException('Encryption process failed');
22
+ }
23
+ }
24
+
25
+ static decryptGCM(data: any, Datakey: any, Dataiv: any) {
26
+ try {
27
+ data = Buffer.from(data, 'base64');
28
+ const decipher = crypto.createDecipheriv('aes-256-gcm', Datakey, Dataiv);
29
+ const tag = data.slice(data.length - 16);
30
+ decipher.setAuthTag(tag);
31
+ data = data.slice(0, data.length - 16);
32
+ let decrypted = decipher.update(data, 'utf8') + decipher.final('utf8');
33
+ return decrypted;
34
+ } catch (error) {
35
+ throw new InternalServerErrorException('Encryption process failed');
36
+ }
37
+ }
38
+
39
+ static encryptCBC(data: any, Datakey: any, Dataiv: any) {
40
+ let encryptedRequest;
41
+ try {
42
+ let cipher = CryptoJS.AES.encrypt(data, Datakey, {
43
+ iv: Dataiv,
44
+ mode: CryptoJS.mode.CBC,
45
+ });
46
+ encryptedRequest = cipher.toString();
47
+ } catch (error) {
48
+ console.log(error);
49
+ throw new InternalServerErrorException('Encryption process failed');
50
+ }
51
+ return encryptedRequest;
52
+ }
53
+
54
+ static decryptCBC(data: any, Datakey: any, Dataiv: any) {
55
+ let decryptRequest;
56
+ try {
57
+ let cipher = CryptoJS.AES.decrypt(data, Datakey, {
58
+ iv: Dataiv,
59
+ mode: CryptoJS.mode.CBC,
60
+ });
61
+ decryptRequest = cipher.toString(CryptoJS.enc.Utf8);
62
+ } catch (error) {
63
+ throw new InternalServerErrorException('Encryption process failed');
64
+ }
65
+ return decryptRequest;
66
+ }
67
+
68
+ static encryptRequest(data: any, Datakey: any, Dataiv: any, type?: any) {
69
+ try {
70
+ switch (type) {
71
+ case 'GCM':
72
+ return this.encryptGCM(data, Datakey, Dataiv);
73
+ case 'CBC':
74
+ return this.encryptCBC(data, Datakey, Dataiv);
75
+ default:
76
+ return this.encryptCBC(data, Datakey, Dataiv);
77
+ }
78
+ } catch (error) {
79
+ throw new InternalServerErrorException('Encryption process failed');
80
+ }
81
+ }
82
+
83
+ static decryptRequest(data: any, Datakey: any, Dataiv: any, type?: any) {
84
+ try {
85
+ switch (type) {
86
+ case 'GCM':
87
+ return this.decryptGCM(data, Datakey, Dataiv);
88
+ case 'CBC':
89
+ return this.decryptCBC(data, Datakey, Dataiv);
90
+ default:
91
+ return this.decryptCBC(data, Datakey, Dataiv);
92
+ }
93
+ } catch (error) {
94
+ throw new InternalServerErrorException('Encryption process failed');
95
+ }
96
+ }
97
+ }
@@ -1,6 +1,8 @@
1
1
  import * as ExcelJS from 'exceljs';
2
+ import { ExcelData } from '../dto/excel-data.dto';
3
+ import * as XLSX from 'xlsx';
2
4
 
3
- export class ExcelHelperService {
5
+ export class ExcelHelper {
4
6
  static getHeader(filePath: string, sheetName: string): string[] {
5
7
  const rows = this.readExcel(filePath, 'HEADER', sheetName);
6
8
  return rows.length > 0 ? rows[0] : [];
@@ -53,4 +55,15 @@ export class ExcelHelperService {
53
55
  const jsonString = this.getJSONStringFromList(header, rowData);
54
56
  return JSON.parse(jsonString) as T[];
55
57
  }
58
+
59
+ static writeExcel(excelData: ExcelData) {
60
+ const wb = XLSX.utils.book_new();
61
+
62
+ for (const sheetData of excelData.sheetList) {
63
+ const ws = XLSX.utils.aoa_to_sheet([sheetData.headers, ...sheetData.rowList]);
64
+ XLSX.utils.book_append_sheet(wb, ws, sheetData.sheetName || 'Sheet1');
65
+ }
66
+
67
+ XLSX.writeFile(wb, excelData.filePath);
68
+ }
56
69
  }
@@ -1,15 +1,15 @@
1
- import * as xlsx from 'xlsx';
2
-
3
- export class ExcelUtil {
4
- static readExcel(fileBuffer: Buffer): Record<string, any[]> {
5
- const workbook = xlsx.read(fileBuffer, { type: 'buffer' });
6
- const data: Record<string, any[]> = {};
7
-
8
- workbook.SheetNames.forEach((sheetName) => {
9
- const sheet = workbook.Sheets[sheetName];
10
- data[sheetName] = xlsx.utils.sheet_to_json(sheet);
11
- });
12
-
13
- return data;
14
- }
15
- }
1
+ import * as xlsx from 'xlsx';
2
+
3
+ export class ExcelUtil {
4
+ static readExcel(fileBuffer: Buffer): Record<string, any[]> {
5
+ const workbook = xlsx.read(fileBuffer, { type: 'buffer' });
6
+ const data: Record<string, any[]> = {};
7
+
8
+ workbook.SheetNames.forEach((sheetName) => {
9
+ const sheet = workbook.Sheets[sheetName];
10
+ data[sheetName] = xlsx.utils.sheet_to_json(sheet);
11
+ });
12
+
13
+ return data;
14
+ }
15
+ }
@@ -1,56 +1,56 @@
1
- import { Injectable, Logger } from "@nestjs/common";
1
+ import { Injectable, Logger } from '@nestjs/common';
2
2
  import { transports } from 'winston';
3
+
3
4
  const winston = require('winston');
4
5
  const moment = require('moment');
5
6
 
6
7
  @Injectable()
7
8
  export class LoggingService {
8
-
9
- constructor(
10
- ) { }
11
-
12
-
13
-
14
- async log(
15
- level: string,
16
- serviceName: string,
17
- methodName: string,
18
- message: string,
19
- parameters?: unknown[],
20
- debuginfo?: unknown[]) {
21
-
22
-
23
- let levelInfo = level.toLowerCase().trim();
24
- let logger = new Logger(serviceName);
25
-
26
- const fileConfiguration = {
27
- format: winston.format.combine(
28
- winston.format.errors({ stzack: true }),
29
- winston.format.timestamp({ format: 'DD/MM/YYYY HH:mm:ss' }),
30
- winston.format.printf(info => `${info.timestamp} : ${info.level}: ${serviceName}: ${methodName} : ${message} : ${JSON.stringify(parameters) || ""} : ${JSON.stringify(debuginfo) || ""}`),
31
- ),
32
-
33
- transports: [
34
- new transports.File({
35
- dirname: `/data01/logs/${moment().format("DD-MM-YYYY")}/activity/${moment().format("HH dddd")}`,
36
- filename: 'activity.log',
37
- level: `${level}`
38
- })
39
- ],
40
- }
41
-
42
- const filelogger = winston.createLogger(fileConfiguration);
43
- let data = `${message} -- Parameters: ${JSON.stringify(parameters)}`;
44
-
45
- if (levelInfo == "debug" || levelInfo == "info") {
46
- logger.debug(`${methodName} : ${message} : Parameters :${JSON.stringify(parameters)}: Debug Info: ${JSON.stringify(debuginfo)}`);
47
- }
48
- else if (levelInfo == "error") {
49
- logger.error(`${methodName} : ${message} : Parameters :${JSON.stringify(parameters)}: Debug Info: ${JSON.stringify(debuginfo)}`)
50
- }
51
- filelogger.on('finish', () => {});
52
- filelogger.end();
9
+ constructor() {}
10
+
11
+ async log(
12
+ level: string,
13
+ serviceName: string,
14
+ methodName: string,
15
+ message: string,
16
+ parameters?: unknown[],
17
+ debuginfo?: unknown[],
18
+ ) {
19
+ let levelInfo = level.toLowerCase().trim();
20
+ let logger = new Logger(serviceName);
21
+
22
+ const fileConfiguration = {
23
+ format: winston.format.combine(
24
+ winston.format.errors({ stzack: true }),
25
+ winston.format.timestamp({ format: 'DD/MM/YYYY HH:mm:ss' }),
26
+ winston.format.printf(
27
+ (info) =>
28
+ `${info.timestamp} : ${info.level}: ${serviceName}: ${methodName} : ${message} : ${JSON.stringify(parameters) || ''} : ${JSON.stringify(debuginfo) || ''}`,
29
+ ),
30
+ ),
31
+
32
+ transports: [
33
+ new transports.File({
34
+ dirname: `/data01/logs/${moment().format('DD-MM-YYYY')}/activity/${moment().format('HH dddd')}`,
35
+ filename: 'activity.log',
36
+ level: `${level}`,
37
+ }),
38
+ ],
39
+ };
40
+
41
+ const filelogger = winston.createLogger(fileConfiguration);
42
+ let data = `${message} -- Parameters: ${JSON.stringify(parameters)}`;
43
+
44
+ if (levelInfo == 'debug' || levelInfo == 'info') {
45
+ logger.debug(
46
+ `${methodName} : ${message} : Parameters :${JSON.stringify(parameters)}: Debug Info: ${JSON.stringify(debuginfo)}`,
47
+ );
48
+ } else if (levelInfo == 'error') {
49
+ logger.error(
50
+ `${methodName} : ${message} : Parameters :${JSON.stringify(parameters)}: Debug Info: ${JSON.stringify(debuginfo)}`,
51
+ );
53
52
  }
54
-
55
-
53
+ filelogger.on('finish', () => {});
54
+ filelogger.end();
55
+ }
56
56
  }
@@ -1,53 +1,53 @@
1
- import { Injectable } from '@nestjs/common';
2
- import { ModuleRef } from '@nestjs/core';
3
- import { DataSource, Repository } from 'typeorm';
4
- import { getRepositoryToken } from '@nestjs/typeorm';
5
-
6
- @Injectable()
7
- export class ReflectionHelper {
8
- constructor(
9
- private moduleRef: ModuleRef,
10
- private dataSource: DataSource,
11
- ) {}
12
-
13
- getRepoService(entityName: string): Repository<any> | null {
14
- const entityMetadata: any = this.dataSource.entityMetadatas.find(
15
- (meta) =>
16
- meta.name === entityName ||
17
- (meta.target && (meta.target as any).name === entityName),
18
- );
19
-
20
- if (!entityMetadata) {
21
- console.error(`Entity "${entityName}" not found in TypeORM metadata`);
22
- return null;
23
- }
24
-
25
- try {
26
- return this.moduleRef.get<Repository<any>>(
27
- getRepositoryToken(entityMetadata.target),
28
- { strict: false },
29
- );
30
- } catch (error) {
31
- console.error(`Repository for "${entityName}" not found:`, error.message);
32
- return null;
33
- }
34
- }
35
-
36
- async getBean<T>(beanName: string): Promise<T | null> {
37
- try {
38
- const provider = this.moduleRef.get<T>(beanName as any, {
39
- strict: false,
40
- });
41
-
42
- if (!provider) {
43
- console.error(`Bean "${beanName}" not found in moduleRef.`);
44
- return null;
45
- }
46
-
47
- return provider;
48
- } catch (error) {
49
- console.error(`Bean "${beanName}" not found:`, error.message);
50
- return null;
51
- }
52
- }
53
- }
1
+ import { Injectable } from '@nestjs/common';
2
+ import { ModuleRef } from '@nestjs/core';
3
+ import { DataSource, Repository } from 'typeorm';
4
+ import { getRepositoryToken } from '@nestjs/typeorm';
5
+
6
+ @Injectable()
7
+ export class ReflectionHelper {
8
+ constructor(
9
+ private moduleRef: ModuleRef,
10
+ private dataSource: DataSource,
11
+ ) {}
12
+
13
+ getRepoService(entityName: string): Repository<any> | null {
14
+ const entityMetadata: any = this.dataSource.entityMetadatas.find(
15
+ (meta) =>
16
+ meta.name === entityName ||
17
+ (meta.target && (meta.target as any).name === entityName),
18
+ );
19
+
20
+ if (!entityMetadata) {
21
+ console.error(`Entity "${entityName}" not found in TypeORM metadata`);
22
+ return null;
23
+ }
24
+
25
+ try {
26
+ return this.moduleRef.get<Repository<any>>(
27
+ getRepositoryToken(entityMetadata.target),
28
+ { strict: false },
29
+ );
30
+ } catch (error) {
31
+ console.error(`Repository for "${entityName}" not found:`, error.message);
32
+ return null;
33
+ }
34
+ }
35
+
36
+ async getBean<T>(beanName: string): Promise<T | null> {
37
+ try {
38
+ const provider = this.moduleRef.get<T>(beanName as any, {
39
+ strict: false,
40
+ });
41
+
42
+ if (!provider) {
43
+ console.error(`Bean "${beanName}" not found in moduleRef.`);
44
+ return null;
45
+ }
46
+
47
+ return provider;
48
+ } catch (error) {
49
+ console.error(`Bean "${beanName}" not found:`, error.message);
50
+ return null;
51
+ }
52
+ }
53
+ }
@@ -1,12 +1,12 @@
1
- import {Global, Module} from "@nestjs/common";
2
- import { LoggingService } from "./service/loggingUtil.service";
3
- import {ReflectionHelper} from "./service/reflection-helper.service";
4
- import { ExcelUtil } from "./service/excelUtil.service";
5
- import { ClockIDGenService } from "./service/clockIDGenUtil.service";
1
+ import { Global, Module } from '@nestjs/common';
2
+ import { LoggingService } from './service/loggingUtil.service';
3
+ import { ReflectionHelper } from './service/reflection-helper.service';
4
+ import { ExcelUtil } from './service/excelUtil.service';
5
+ import { ClockIDGenService } from './service/clockIDGenUtil.service';
6
6
 
7
7
  @Global()
8
8
  @Module({
9
- providers: [LoggingService, ReflectionHelper,ExcelUtil,ClockIDGenService],
10
- exports: [LoggingService, ReflectionHelper,ExcelUtil,ClockIDGenService],
9
+ providers: [LoggingService, ReflectionHelper, ExcelUtil, ClockIDGenService],
10
+ exports: [LoggingService, ReflectionHelper, ExcelUtil, ClockIDGenService],
11
11
  })
12
12
  export class UtilsModule {}
package/.env DELETED
@@ -1,6 +0,0 @@
1
- master_key= 0QZ2eRJv5oVILYnyBlC+FbSGVQiWKReh
2
- master_iv= heuUQf5uPVtkotrFAOKUVw==
3
- secret_key= 1hard_to_guess_secret7890a
4
- clientID=324529881356-596sc8ksrb9lg01i7sktofqqqf0fv2ug.apps.googleusercontent.com
5
- clientSecret=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
6
- callbackURL=http://localhost:3000/auth/google/callback
@@ -1,4 +0,0 @@
1
- export declare enum StatusType {
2
- ACTIVE = 0,
3
- INACTIVE = 1
4
- }
@@ -1,9 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.StatusType = void 0;
4
- var StatusType;
5
- (function (StatusType) {
6
- StatusType[StatusType["ACTIVE"] = 0] = "ACTIVE";
7
- StatusType[StatusType["INACTIVE"] = 1] = "INACTIVE";
8
- })(StatusType || (exports.StatusType = StatusType = {}));
9
- //# sourceMappingURL=status.constant.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"status.constant.js","sourceRoot":"","sources":["../../src/constant/status.constant.ts"],"names":[],"mappings":";;;AAAA,IAAY,UAEX;AAFD,WAAY,UAAU;IAClB,+CAAM,CAAA;IAAE,mDAAQ,CAAA;AACpB,CAAC,EAFW,UAAU,0BAAV,UAAU,QAErB"}
@@ -1,3 +0,0 @@
1
- export enum StatusType{
2
- ACTIVE, INACTIVE
3
- }