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
@@ -2,7 +2,7 @@ import {
2
2
  BadRequestException,
3
3
  Body,
4
4
  Controller,
5
- Get,
5
+ Get, HttpCode,
6
6
  HttpStatus,
7
7
  Param,
8
8
  Post,
@@ -16,6 +16,8 @@ import { Response } from 'express';
16
16
  import { EntityMasterService } from '../service/entity-master.service';
17
17
  import { BaseEntity } from '../entity/base-entity.entity';
18
18
  import { JwtAuthGuard } from '../../auth/guards/jwt.guard';
19
+ import * as fs from 'fs';
20
+ import * as path from 'path';
19
21
 
20
22
  @UseGuards(JwtAuthGuard)
21
23
  @Controller('entity')
@@ -120,8 +122,59 @@ export class EntityController {
120
122
  @Query('page') page: number = 0,
121
123
  @Query('size') size: number = 1,
122
124
  ) {
125
+ return res
126
+ .status(HttpStatus.OK)
127
+ .json(
128
+ await this.entityService.getFilterDataWithTabs(
129
+ entityType,
130
+ listType,
131
+ filters,
132
+ sortColumn,
133
+ sortOrder,
134
+ page,
135
+ size,
136
+ ),
137
+ );
138
+ }
139
+
140
+ @HttpCode(HttpStatus.OK)
141
+ @Post('download-excel/:entity_type')
142
+ @HttpCode(HttpStatus.OK)
143
+ async downloadExcel(
144
+ @Param('entity_type') entityType: string,
145
+ @Query('list_entity_type') listEntityType: string,
146
+ @Query('display_type') displayType: string,
147
+ @Query() filterCriteria: Record<string, any>,
148
+ @Res() res: Response, // Express Response for file handling
149
+ ) {
150
+ try {
151
+ const filePath = await this.entityService.generateExcelReport(
152
+ entityType,
153
+ filterCriteria,
154
+ listEntityType,
155
+ displayType,
156
+ );
123
157
 
124
- return res.status(HttpStatus.OK).json(await this.entityService.getFilterDataWithTabs(entityType, listType,
125
- filters, sortColumn, sortOrder, page, size));
158
+ if (!filePath || !fs.existsSync(filePath)) {
159
+ return res.status(404).json({ message: 'File not found' });
160
+ }
161
+
162
+ res.setHeader(
163
+ 'Content-Disposition',
164
+ `attachment; filename=${path.basename(filePath)}`,
165
+ );
166
+ res.setHeader('Content-Type', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
167
+
168
+ const fileStream = fs.createReadStream(filePath);
169
+ fileStream.pipe(res);
170
+
171
+ // Optional: Delete file after sending response
172
+ fileStream.on('end', () => {
173
+ fs.unlinkSync(filePath);
174
+ });
175
+ } catch (error) {
176
+ console.error('Error downloading Excel file:', error);
177
+ res.status(500).json({ message: 'Internal server error' });
178
+ }
126
179
  }
127
180
  }
@@ -1,6 +1,6 @@
1
- import { EntityTab } from './entity-tab.dto';
2
-
3
- export class EntityListData {
4
- entity_list: any;
5
- entity_tabs: EntityTab[];
6
- }
1
+ import { EntityTab } from './entity-tab.dto';
2
+
3
+ export class EntityListData {
4
+ entity_list: any;
5
+ entity_tabs: EntityTab[];
6
+ }
@@ -1,67 +1,67 @@
1
- import { BaseEntity } from './base-entity.entity';
2
- import { Column, Entity } from 'typeorm';
3
-
4
- @Entity({ name: 'cr_attribute_master' })
5
- export class AttributeMaster extends BaseEntity {
6
- @Column({ name: 'mapped_entity_type', type: 'varchar', nullable: true })
7
- mapped_entity_type: string;
8
-
9
- @Column({ name: 'mapped_entity_id' })
10
- mapped_entity_id: number;
11
-
12
- @Column({ name: 'element_type', type: 'varchar', nullable: true, length: 50 })
13
- element_type: string;
14
-
15
- @Column({
16
- name: 'data_source_type',
17
- type: 'varchar',
18
- nullable: true,
19
- length: 50,
20
- })
21
- data_source_type: string;
22
-
23
- @Column({ name: 'datasource_list', type: 'varchar', nullable: true })
24
- datasource_list: string;
25
-
26
- @Column({
27
- name: 'custom_values',
28
- type: 'varchar',
29
- length: 2000,
30
- nullable: true,
31
- })
32
- custom_values: string;
33
-
34
- @Column({ name: 'max_length', nullable: true })
35
- max_length: number;
36
-
37
- @Column({ name: 'required', nullable: true })
38
- required: number;
39
-
40
- @Column({
41
- name: 'description',
42
- type: 'varchar',
43
- length: 2000,
44
- nullable: true,
45
- })
46
- description: string;
47
-
48
- @Column({
49
- name: 'attribute_key',
50
- type: 'varchar',
51
- nullable: true,
52
- length: 50,
53
- })
54
- attribute_key: string;
55
-
56
- @Column({ name: 'db_datatype', type: 'varchar', nullable: true, length: 50 })
57
- db_datatype: string;
58
-
59
- @Column({ name: 'category', type: 'varchar', nullable: true, length: 50 })
60
- category: string;
61
-
62
- @Column({ name: 'is_unique', nullable: true })
63
- is_unique: number;
64
-
65
- @Column({ name: 'can_export', nullable: true })
66
- can_export: number;
67
- }
1
+ import { BaseEntity } from './base-entity.entity';
2
+ import { Column, Entity } from 'typeorm';
3
+
4
+ @Entity({ name: 'cr_attribute_master' })
5
+ export class AttributeMaster extends BaseEntity {
6
+ @Column({ name: 'mapped_entity_type', type: 'varchar', nullable: true })
7
+ mapped_entity_type: string;
8
+
9
+ @Column({ name: 'mapped_entity_id' })
10
+ mapped_entity_id: number;
11
+
12
+ @Column({ name: 'element_type', type: 'varchar', nullable: true, length: 50 })
13
+ element_type: string;
14
+
15
+ @Column({
16
+ name: 'data_source_type',
17
+ type: 'varchar',
18
+ nullable: true,
19
+ length: 50,
20
+ })
21
+ data_source_type: string;
22
+
23
+ @Column({ name: 'datasource_list', type: 'varchar', nullable: true })
24
+ datasource_list: string;
25
+
26
+ @Column({
27
+ name: 'custom_values',
28
+ type: 'varchar',
29
+ length: 2000,
30
+ nullable: true,
31
+ })
32
+ custom_values: string;
33
+
34
+ @Column({ name: 'max_length', nullable: true })
35
+ max_length: number;
36
+
37
+ @Column({ name: 'required', nullable: true })
38
+ required: number;
39
+
40
+ @Column({
41
+ name: 'description',
42
+ type: 'varchar',
43
+ length: 2000,
44
+ nullable: true,
45
+ })
46
+ description: string;
47
+
48
+ @Column({
49
+ name: 'attribute_key',
50
+ type: 'varchar',
51
+ nullable: true,
52
+ length: 50,
53
+ })
54
+ attribute_key: string;
55
+
56
+ @Column({ name: 'db_datatype', type: 'varchar', nullable: true, length: 50 })
57
+ db_datatype: string;
58
+
59
+ @Column({ name: 'category', type: 'varchar', nullable: true, length: 50 })
60
+ category: string;
61
+
62
+ @Column({ name: 'is_unique', nullable: true })
63
+ is_unique: number;
64
+
65
+ @Column({ name: 'can_export', nullable: true })
66
+ can_export: number;
67
+ }
@@ -1,6 +1,5 @@
1
1
  import { Column, PrimaryGeneratedColumn } from 'typeorm';
2
- import { StatusType } from '../../../constant/status.constant';
3
- import {Expose} from "class-transformer";
2
+ import { Expose } from 'class-transformer';
4
3
 
5
4
  export class BaseEntity {
6
5
  constructor() {
@@ -18,7 +17,7 @@ export class BaseEntity {
18
17
  name: string;
19
18
  @Column({ name: 'status', type: 'varchar', nullable: true, length: 100 })
20
19
  @Expose()
21
- status: StatusType;
20
+ status: string;
22
21
  @Column({ name: 'parent_type', type: 'varchar', length: 100, nullable: true })
23
22
  @Expose()
24
23
  parent_type: string;
@@ -58,4 +58,7 @@ export class EntityMaster extends BaseEntity {
58
58
  nullable: true,
59
59
  })
60
60
  description: string;
61
+
62
+ @Column({ name: 'storage_type', nullable: true, length: 20 })
63
+ storage_type: string;
61
64
  }
@@ -1,5 +1,5 @@
1
1
  import { ENTITYTYPE_ENTITYTABLECOLUMN } from '../../../constant/global.constant';
2
- import {Column, Entity} from 'typeorm';
2
+ import { Column, Entity } from 'typeorm';
3
3
  import { BaseEntity } from './base-entity.entity';
4
4
 
5
5
  @Entity({ name: 'cr_entity_table_column' })
@@ -1,10 +1,9 @@
1
1
  import { Column, Entity } from 'typeorm';
2
2
  import { BaseEntity } from './base-entity.entity';
3
- import {ENTITYTYPE_ENTITYTABLE} from "../../../constant/global.constant";
3
+ import { ENTITYTYPE_ENTITYTABLE } from '../../../constant/global.constant';
4
4
 
5
5
  @Entity({ name: 'cr_entity_table' })
6
6
  export class EntityTable extends BaseEntity {
7
-
8
7
  constructor() {
9
8
  super();
10
9
  this.entity_type = ENTITYTYPE_ENTITYTABLE;
@@ -48,4 +47,7 @@ export class EntityTable extends BaseEntity {
48
47
 
49
48
  @Column({ name: 'is_proc', nullable: true })
50
49
  is_proc: number;
50
+
51
+ @Column({ name: 'display_type', nullable: true})
52
+ display_type: string;
51
53
  }
@@ -0,0 +1,32 @@
1
+ import { Column, Entity } from 'typeorm';
2
+ import { BaseEntity } from './base-entity.entity';
3
+ import { ENTITYTYPE_MEDIA } from '../../../constant/global.constant';
4
+
5
+ @Entity({ name: 'cr_media_data' })
6
+ export class MediaData extends BaseEntity {
7
+ constructor() {
8
+ super();
9
+ this.entity_type = ENTITYTYPE_MEDIA;
10
+ }
11
+
12
+ @Column({ type: 'varchar', length: 100, nullable: true })
13
+ file_name: string;
14
+
15
+ @Column({ type: 'varchar', length: 100, nullable: true })
16
+ mapped_attribute_key: string;
17
+
18
+ @Column({ type: 'varchar', length: 50, nullable: true })
19
+ mapped_entity_type: string;
20
+
21
+ @Column({ type: 'bigint', nullable: true })
22
+ mapped_entity_id: number;
23
+
24
+ @Column({ type: 'varchar', length: 200, nullable: true })
25
+ media_url: string;
26
+
27
+ @Column({ type: 'varchar', length: 30, nullable: true })
28
+ extension: string;
29
+
30
+ @Column({ type: 'varchar', length: 50, nullable: true })
31
+ content_type: string;
32
+ }
@@ -1,65 +1,65 @@
1
- import { BaseEntity } from './base-entity.entity';
2
- import { Column, Entity } from 'typeorm';
3
- import { ENTITYTYPE_PREFERENCEMASTER } from '../../../constant/global.constant';
4
-
5
- @Entity({ name: 'cr_preference_master' })
6
- export class PreferenceMaster extends BaseEntity {
7
- constructor() {
8
- super();
9
- this.entity_type = ENTITYTYPE_PREFERENCEMASTER;
10
- }
11
-
12
- @Column({ name: 'appcode', type: 'varchar', length: 200, nullable: true })
13
- appCode: string;
14
-
15
- @Column({
16
- name: 'display_name',
17
- type: 'varchar',
18
- length: 200,
19
- nullable: true,
20
- })
21
- display_name: string;
22
-
23
- @Column({
24
- name: 'preference_key',
25
- type: 'varchar',
26
- length: 200,
27
- nullable: true,
28
- })
29
- preference_key: string;
30
-
31
- @Column({
32
- name: 'preference_value',
33
- type: 'varchar',
34
- length: 200,
35
- nullable: true,
36
- })
37
- preference_value: string;
38
-
39
- @Column({
40
- name: 'description',
41
- type: 'varchar',
42
- length: 2000,
43
- nullable: true,
44
- })
45
- description: string;
46
-
47
- @Column({ name: 'reflect_on', type: 'varchar', length: 200, nullable: true })
48
- reflect_on: string;
49
-
50
- @Column({
51
- name: 'default_value',
52
- type: 'varchar',
53
- length: 200,
54
- nullable: true,
55
- })
56
- default_value: string;
57
-
58
- @Column({
59
- name: 'possible_values',
60
- type: 'varchar',
61
- length: 200,
62
- nullable: true,
63
- })
64
- possible_values: string;
65
- }
1
+ import { BaseEntity } from './base-entity.entity';
2
+ import { Column, Entity } from 'typeorm';
3
+ import { ENTITYTYPE_PREFERENCEMASTER } from '../../../constant/global.constant';
4
+
5
+ @Entity({ name: 'cr_preference_master' })
6
+ export class PreferenceMaster extends BaseEntity {
7
+ constructor() {
8
+ super();
9
+ this.entity_type = ENTITYTYPE_PREFERENCEMASTER;
10
+ }
11
+
12
+ @Column({ name: 'appcode', type: 'varchar', length: 200, nullable: true })
13
+ appCode: string;
14
+
15
+ @Column({
16
+ name: 'display_name',
17
+ type: 'varchar',
18
+ length: 200,
19
+ nullable: true,
20
+ })
21
+ display_name: string;
22
+
23
+ @Column({
24
+ name: 'preference_key',
25
+ type: 'varchar',
26
+ length: 200,
27
+ nullable: true,
28
+ })
29
+ preference_key: string;
30
+
31
+ @Column({
32
+ name: 'preference_value',
33
+ type: 'varchar',
34
+ length: 200,
35
+ nullable: true,
36
+ })
37
+ preference_value: string;
38
+
39
+ @Column({
40
+ name: 'description',
41
+ type: 'varchar',
42
+ length: 2000,
43
+ nullable: true,
44
+ })
45
+ description: string;
46
+
47
+ @Column({ name: 'reflect_on', type: 'varchar', length: 200, nullable: true })
48
+ reflect_on: string;
49
+
50
+ @Column({
51
+ name: 'default_value',
52
+ type: 'varchar',
53
+ length: 200,
54
+ nullable: true,
55
+ })
56
+ default_value: string;
57
+
58
+ @Column({
59
+ name: 'possible_values',
60
+ type: 'varchar',
61
+ length: 200,
62
+ nullable: true,
63
+ })
64
+ possible_values: string;
65
+ }
@@ -19,6 +19,9 @@ import { EntityTableService } from './service/entity-table.service';
19
19
  import { EntityTableColumnRepository } from './repository/entity-table-column.repository';
20
20
  import { EntityTableColumnService } from './service/entity-table-column.service';
21
21
  import { EntityListService } from './service/entity-list.service';
22
+ import { MediaData } from './entity/media-data.entity';
23
+ import { MediaDataService } from './service/media-data.service';
24
+ import { MediaDataRepository } from './repository/media-data.repository';
22
25
 
23
26
  @Module({
24
27
  imports: [
@@ -28,6 +31,7 @@ import { EntityListService } from './service/entity-list.service';
28
31
  PreferenceMaster,
29
32
  EntityTable,
30
33
  EntityTableColumn,
34
+ MediaData
31
35
  ]),
32
36
  UtilsModule,
33
37
  ],
@@ -43,8 +47,18 @@ import { EntityListService } from './service/entity-list.service';
43
47
  EntityTableColumnRepository,
44
48
  EntityTableColumnService,
45
49
  EntityListService,
50
+ MediaDataRepository,
51
+ MediaDataService,
52
+ ],
53
+ exports: [
54
+ EntityMasterService,
55
+ EntityServiceImpl,
56
+ PreferenceService,
57
+ EntityListService,
58
+ EntityTableService,
59
+ EntityTableColumnService,
60
+ MediaDataService,
46
61
  ],
47
- exports: [EntityMasterService, EntityServiceImpl, PreferenceService, EntityListService],
48
62
  controllers: [EntityController, MasterController],
49
63
  })
50
64
  export class EntityModule {}
@@ -1,28 +1,28 @@
1
- import { Injectable } from '@nestjs/common';
2
- import { InjectRepository } from '@nestjs/typeorm';
3
- import { AttributeMaster } from '../entity/attribute-master.entity';
4
- import { Repository } from 'typeorm';
5
-
6
- @Injectable()
7
- export class AttributeMasterRepository {
8
- constructor(
9
- @InjectRepository(AttributeMaster)
10
- private readonly attributeMasterRepository: Repository<AttributeMaster>,
11
- ) {}
12
-
13
- async findByMappedEntityIdAndMappedEntityTypeAndAttributeKeyAndOrganizationId(
14
- mappedEntityId: number,
15
- mappedEntityType: string,
16
- attributeKey: string,
17
- organizationId: number,
18
- ): Promise<AttributeMaster | null> {
19
- return await this.attributeMasterRepository.findOne({
20
- where: {
21
- mapped_entity_id: mappedEntityId,
22
- mapped_entity_type: mappedEntityType,
23
- attribute_key: attributeKey,
24
- organization_id: organizationId,
25
- },
26
- });
27
- }
28
- }
1
+ import { Injectable } from '@nestjs/common';
2
+ import { InjectRepository } from '@nestjs/typeorm';
3
+ import { AttributeMaster } from '../entity/attribute-master.entity';
4
+ import { Repository } from 'typeorm';
5
+
6
+ @Injectable()
7
+ export class AttributeMasterRepository {
8
+ constructor(
9
+ @InjectRepository(AttributeMaster)
10
+ private readonly attributeMasterRepository: Repository<AttributeMaster>,
11
+ ) {}
12
+
13
+ async findByMappedEntityIdAndMappedEntityTypeAndAttributeKeyAndOrganizationId(
14
+ mappedEntityId: number,
15
+ mappedEntityType: string,
16
+ attributeKey: string,
17
+ organizationId: number,
18
+ ): Promise<AttributeMaster | null> {
19
+ return await this.attributeMasterRepository.findOne({
20
+ where: {
21
+ mapped_entity_id: mappedEntityId,
22
+ mapped_entity_type: mappedEntityType,
23
+ attribute_key: attributeKey,
24
+ organization_id: organizationId,
25
+ },
26
+ });
27
+ }
28
+ }
@@ -10,12 +10,12 @@ export class EntityTableColumnRepository {
10
10
  private entityTableColumnRepository: Repository<EntityTableColumn>,
11
11
  ) {}
12
12
 
13
- async findByParentIdAndParentType(parentId: number, parentType: string){
13
+ async findByParentIdAndParentType(parentId: number, parentType: string) {
14
14
  return await this.entityTableColumnRepository.find({
15
15
  where: {
16
16
  parent_id: parentId,
17
- parent_type: parentType
18
- }
17
+ parent_type: parentType,
18
+ },
19
19
  });
20
20
  }
21
21
  }
@@ -15,4 +15,18 @@ export class EntityTableRepository {
15
15
  where: { mapped_entity_type: entityType, list_type: listType },
16
16
  });
17
17
  }
18
+
19
+ async findByEntityTypeAndListTypeAndDisplayType(
20
+ entityType: string,
21
+ listType: string,
22
+ displayType: string,
23
+ ) {
24
+ return await this.entityTableRepository.findOne({
25
+ where: {
26
+ mapped_entity_type: entityType,
27
+ list_type: listType,
28
+ display_type: displayType,
29
+ },
30
+ });
31
+ }
18
32
  }
@@ -0,0 +1,50 @@
1
+ import { Injectable } from '@nestjs/common';
2
+ import { InjectRepository } from '@nestjs/typeorm';
3
+ import { MediaData } from '../entity/media-data.entity';
4
+ import { Repository } from 'typeorm';
5
+
6
+ @Injectable()
7
+ export class MediaDataRepository {
8
+ constructor(
9
+ @InjectRepository(MediaData)
10
+ private readonly mediaRepository: Repository<MediaData>,
11
+ ) {}
12
+
13
+ async findByAttributeKeyAndMappedEntityIdAndMappedEntityType(
14
+ attributeKey: string,
15
+ mappedEntityId: number,
16
+ mappedEntityType: string,
17
+ ) {
18
+ return await this.mediaRepository.findOne({
19
+ where: {
20
+ mapped_attribute_key: attributeKey,
21
+ mapped_entity_id: mappedEntityId,
22
+ mapped_entity_type: mappedEntityType,
23
+ },
24
+ });
25
+ }
26
+
27
+ async findByMappedEntityIdAndMappedEntityType(
28
+ mappedEntityId: number,
29
+ mappedEntityType: string,
30
+ ) {
31
+ return await this.mediaRepository.find({
32
+ where: {
33
+ mapped_entity_id: mappedEntityId,
34
+ mapped_entity_type: mappedEntityType,
35
+ },
36
+ });
37
+ }
38
+
39
+ async deleteByAttributeKeyAndMappedEntityIdAndMappedEntityType(
40
+ attributeKey: string,
41
+ mappedEntityId: number,
42
+ mappedEntityType: string,
43
+ ) {
44
+ return await this.mediaRepository.delete({
45
+ mapped_attribute_key: attributeKey,
46
+ mapped_entity_id: mappedEntityId,
47
+ mapped_entity_type: mappedEntityType,
48
+ });
49
+ }
50
+ }
@@ -1,20 +1,20 @@
1
- import { Injectable } from '@nestjs/common';
2
- import { InjectRepository } from '@nestjs/typeorm';
3
- import { PreferenceMaster } from '../entity/preference.entity';
4
- import { Repository } from 'typeorm';
5
-
6
- @Injectable()
7
- export class PreferenceRepository {
8
- constructor(
9
- @InjectRepository(PreferenceMaster)
10
- private readonly preferenceRepository: Repository<PreferenceMaster>,
11
- ) {}
12
-
13
- async findByPreferenceKey(
14
- preferenceKey: string,
15
- ): Promise<PreferenceMaster | null> {
16
- return await this.preferenceRepository.findOne({
17
- where: { preference_key: preferenceKey },
18
- });
19
- }
20
- }
1
+ import { Injectable } from '@nestjs/common';
2
+ import { InjectRepository } from '@nestjs/typeorm';
3
+ import { PreferenceMaster } from '../entity/preference.entity';
4
+ import { Repository } from 'typeorm';
5
+
6
+ @Injectable()
7
+ export class PreferenceRepository {
8
+ constructor(
9
+ @InjectRepository(PreferenceMaster)
10
+ private readonly preferenceRepository: Repository<PreferenceMaster>,
11
+ ) {}
12
+
13
+ async findByPreferenceKey(
14
+ preferenceKey: string,
15
+ ): Promise<PreferenceMaster | null> {
16
+ return await this.preferenceRepository.findOne({
17
+ where: { preference_key: preferenceKey },
18
+ });
19
+ }
20
+ }