rez_core 3.1.199 → 3.1.200
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/settings.local.json +26 -0
- package/.idea/250218_nodejs_core.iml +9 -0
- package/.idea/codeStyles/Project.xml +59 -0
- package/.idea/codeStyles/codeStyleConfig.xml +5 -0
- package/.idea/copilot.data.migration.agent.xml +6 -0
- package/.idea/copilot.data.migration.ask.xml +6 -0
- package/.idea/copilot.data.migration.ask2agent.xml +6 -0
- package/.idea/copilot.data.migration.edit.xml +6 -0
- package/.idea/inspectionProfiles/Project_Default.xml +6 -0
- package/.idea/misc.xml +6 -0
- package/.idea/modules.xml +8 -0
- package/.idea/prettier.xml +6 -0
- package/.idea/vcs.xml +6 -0
- package/.prettierrc +3 -3
- package/README.md +99 -99
- package/dist/module/auth/guards/role.guard.js +3 -3
- package/dist/module/auth/services/auth.service.js +2 -2
- package/dist/module/filter/repository/saved-filter.repository.js +4 -4
- package/dist/module/filter/service/filter-evaluator.service.js +2 -2
- package/dist/module/filter/service/filter.service.js +7 -7
- package/dist/module/integration/examples/usage.example.js +9 -9
- package/dist/module/integration/service/integration.service.js +1 -1
- package/dist/module/integration/service/wrapper.service.js +25 -25
- package/dist/module/listmaster/service/list-master-item.service.js +2 -2
- package/dist/module/listmaster/service/list-master.service.js +2 -2
- package/dist/module/mapper/service/field-mapper.service.js +4 -4
- package/dist/module/mapper/service/mapper.service.js +2 -2
- package/dist/module/meta/controller/media.controller.d.ts +3 -0
- package/dist/module/meta/controller/media.controller.js +15 -0
- package/dist/module/meta/controller/media.controller.js.map +1 -1
- package/dist/module/meta/entity/entity-master.entity.d.ts +2 -0
- package/dist/module/meta/entity/entity-master.entity.js +8 -0
- package/dist/module/meta/entity/entity-master.entity.js.map +1 -1
- package/dist/module/meta/service/entity-dynamic.service.js +18 -18
- package/dist/module/meta/service/entity-list.service.js +3 -3
- package/dist/module/meta/service/entity-master.service.js +3 -3
- package/dist/module/meta/service/entity-relation.service.js +11 -11
- package/dist/module/meta/service/entity-service-impl.service.js +3 -3
- package/dist/module/meta/service/media-data.service.d.ts +5 -1
- package/dist/module/meta/service/media-data.service.js +59 -2
- package/dist/module/meta/service/media-data.service.js.map +1 -1
- package/dist/module/meta/service/resolver.service.js +3 -3
- package/dist/module/module/repository/menu.repository.js +12 -12
- package/dist/module/notification/service/notification.service.js +9 -9
- package/dist/module/user/controller/login.controller.js +18 -18
- package/dist/module/user/service/role.service.js +4 -4
- package/dist/module/user/service/user-session.service.js +2 -2
- package/dist/module/workflow/repository/action.repository.js +16 -16
- package/dist/module/workflow/repository/comm-template.repository.js +6 -6
- package/dist/module/workflow/repository/form-master.repository.js +2 -2
- package/dist/module/workflow/repository/stage-group.repository.js +23 -23
- package/dist/module/workflow/repository/stage-movement.repository.js +11 -11
- package/dist/module/workflow/repository/stage.repository.js +8 -8
- package/dist/module/workflow/service/action-template-mapping.service.js +10 -10
- package/dist/module/workflow/service/action.service.js +7 -7
- package/dist/module/workflow/service/entity-modification.service.js +6 -6
- package/dist/module/workflow/service/stage-group.service.js +2 -2
- package/dist/module/workflow/service/stage.service.js +2 -2
- package/dist/module/workflow/service/task.service.js +28 -28
- package/dist/module/workflow/service/workflow-list-master.service.js +15 -15
- package/dist/module/workflow/service/workflow-meta.service.js +50 -50
- package/dist/module/workflow/service/workflow.service.js +2 -2
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/utils/service/reflection-helper.service.js +2 -2
- package/docs/modules/event-driven-integration-design.md +91 -91
- package/docs/modules/integration.md +250 -250
- package/eslint.config.mjs +34 -34
- package/nest-cli.json +14 -14
- package/package.json +118 -118
- package/server.log +850 -0
- package/src/app.controller.ts +12 -12
- package/src/app.module.ts +49 -49
- package/src/app.service.ts +8 -8
- package/src/config/config.module.ts +18 -18
- package/src/config/database.config.ts +23 -23
- package/src/constant/global.constant.ts +67 -67
- package/src/core.module.ts +81 -81
- package/src/decorators/roles.decorator.ts +7 -7
- package/src/dtos/response.dto.ts +6 -6
- package/src/dtos/response.ts +5 -5
- package/src/index.ts +1 -1
- package/src/module/auth/auth.module.ts +49 -49
- package/src/module/auth/controller/auth.controller.ts +28 -28
- package/src/module/auth/guards/google-auth.guard.ts +9 -9
- package/src/module/auth/guards/jwt.guard.ts +22 -22
- package/src/module/auth/guards/role.guard.ts +68 -68
- package/src/module/auth/services/auth.service.ts +50 -50
- package/src/module/auth/services/jwt.service.ts +11 -11
- package/src/module/auth/strategies/google.strategy.ts +54 -54
- package/src/module/auth/strategies/jwt.strategy.ts +58 -58
- package/src/module/auth/strategies/local.strategy.ts +13 -13
- package/src/module/dashboard/controller/dashboard.controller.ts +36 -36
- package/src/module/dashboard/dashboard.module.ts +21 -21
- package/src/module/dashboard/entity/dashboard_page_data.entity.ts +27 -27
- package/src/module/dashboard/entity/widget_master.entity.ts +18 -18
- package/src/module/dashboard/repository/dashboard.repository.ts +42 -42
- package/src/module/dashboard/service/dashboard.service.ts +73 -73
- package/src/module/dev/dev.module.ts +12 -12
- package/src/module/dev/service/dev.service.ts +7 -7
- package/src/module/enterprise/controller/organization.controller.ts +36 -36
- package/src/module/enterprise/enterprise.module.ts +30 -30
- package/src/module/enterprise/entity/enterprise.entity.ts +37 -37
- package/src/module/enterprise/entity/organization-app-mapping.entity.ts +13 -13
- package/src/module/enterprise/entity/organization.entity.ts +92 -92
- package/src/module/enterprise/repository/enterprise.repository.ts +31 -31
- package/src/module/enterprise/repository/organization.repository.ts +26 -26
- package/src/module/enterprise/repository/school.repository.ts +281 -281
- package/src/module/enterprise/service/brand.service.ts +5 -5
- package/src/module/enterprise/service/enterprise.service.ts +16 -16
- package/src/module/enterprise/service/organization-app-mapping.service.ts +4 -4
- package/src/module/enterprise/service/organization.service.ts +145 -145
- package/src/module/filter/controller/filter.controller.ts +84 -84
- package/src/module/filter/dto/filter-request.dto.ts +38 -38
- package/src/module/filter/entity/saved-filter-detail.entity.ts +41 -41
- package/src/module/filter/entity/saved-filter-master.entity.ts +23 -23
- package/src/module/filter/filter.module.ts +31 -31
- package/src/module/filter/repository/saved-filter.repository.ts +168 -168
- package/src/module/filter/service/filter-evaluator.service.ts +86 -86
- package/src/module/filter/service/filter.service.ts +868 -868
- package/src/module/filter/service/saved-filter.service.ts +170 -170
- package/src/module/ics/controller/ics.controller.ts +21 -21
- package/src/module/ics/dto/ics.dto.ts +55 -55
- package/src/module/ics/ics.module.ts +13 -13
- package/src/module/ics/service/ics.service.ts +57 -57
- package/src/module/integration/controller/calender-event.controller.ts +31 -31
- package/src/module/integration/controller/integration.controller.ts +662 -662
- package/src/module/integration/controller/wrapper.controller.ts +37 -37
- package/src/module/integration/dto/create-config.dto.ts +526 -526
- package/src/module/integration/entity/integration-config.entity.ts +112 -112
- package/src/module/integration/entity/integration-entity-mapper.entity.ts +14 -14
- package/src/module/integration/entity/integration-source.entity.ts +17 -17
- package/src/module/integration/entity/user-integration.entity.ts +71 -71
- package/src/module/integration/examples/usage.example.ts +338 -338
- package/src/module/integration/factories/base.factory.ts +7 -7
- package/src/module/integration/factories/email.factory.ts +49 -49
- package/src/module/integration/factories/integration.factory.ts +121 -121
- package/src/module/integration/factories/sms.factory.ts +51 -51
- package/src/module/integration/factories/telephone.factory.ts +41 -41
- package/src/module/integration/factories/whatsapp.factory.ts +56 -56
- package/src/module/integration/integration.module.ts +110 -110
- package/src/module/integration/service/calendar-event.service.ts +118 -118
- package/src/module/integration/service/integration-entity-mapper.service.ts +17 -17
- package/src/module/integration/service/integration-queue.service.ts +229 -229
- package/src/module/integration/service/integration.service.ts +2572 -2572
- package/src/module/integration/service/oauth.service.ts +224 -224
- package/src/module/integration/service/wrapper.service.ts +457 -457
- package/src/module/integration/strategies/email/gmail-api.strategy.ts +280 -280
- package/src/module/integration/strategies/email/outlook-api.strategy.ts +44 -44
- package/src/module/integration/strategies/email/outlook.strategy.ts +64 -64
- package/src/module/integration/strategies/email/sendgrid-api.strategy.ts +260 -260
- package/src/module/integration/strategies/integration.strategy.ts +97 -97
- package/src/module/integration/strategies/sms/gupshup-sms.strategy.ts +146 -146
- package/src/module/integration/strategies/sms/msg91-sms.strategy.ts +164 -164
- package/src/module/integration/strategies/sms/tubelight-sms.strategy.ts +163 -163
- package/src/module/integration/strategies/telephone/ozonetel-voice.strategy.ts +238 -238
- package/src/module/integration/strategies/telephone/tubelight-voice.strategy.ts +210 -210
- package/src/module/integration/strategies/whatsapp/gupshup-whatsapp.strategy.ts +359 -359
- package/src/module/integration/strategies/whatsapp/tubelight-whatsapp.strategy.ts +372 -372
- package/src/module/integration/strategies/whatsapp/whatsapp-cloud.strategy.ts +403 -403
- package/src/module/integration/strategies/whatsapp/whatsapp.strategy.ts +57 -57
- package/src/module/layout/controller/layout.controller.ts +47 -47
- package/src/module/layout/entity/header-items.entity.ts +28 -28
- package/src/module/layout/entity/header-section.entity.ts +19 -19
- package/src/module/layout/layout.module.ts +21 -21
- package/src/module/layout/repository/header-items.repository.ts +18 -18
- package/src/module/layout/repository/header-section.repository.ts +22 -22
- package/src/module/layout/service/header-section.service.ts +25 -25
- package/src/module/layout_preference/controller/layout_preference.controller.ts +47 -47
- package/src/module/layout_preference/entity/layout_preference.entity.ts +28 -28
- package/src/module/layout_preference/layout_preference.module.ts +18 -18
- package/src/module/layout_preference/repository/layout_preference.repository.ts +30 -30
- package/src/module/layout_preference/service/layout_preference.service.ts +172 -172
- package/src/module/lead/controller/lead.controller.ts +30 -30
- package/src/module/lead/lead.module.ts +14 -14
- package/src/module/lead/repository/lead.repository.ts +41 -41
- package/src/module/lead/service/lead.service.ts +54 -54
- package/src/module/listmaster/controller/list-master.controller.ts +187 -187
- package/src/module/listmaster/entity/list-master-items.entity.ts +41 -41
- package/src/module/listmaster/entity/list-master.entity.ts +32 -32
- package/src/module/listmaster/listmaster.module.ts +44 -44
- package/src/module/listmaster/repository/list-master-items.repository.ts +169 -169
- package/src/module/listmaster/repository/list-master.repository.ts +46 -46
- package/src/module/listmaster/service/list-master-engine.ts +19 -19
- package/src/module/listmaster/service/list-master-extension.interface.ts +4 -4
- package/src/module/listmaster/service/list-master-item.service.ts +292 -292
- package/src/module/listmaster/service/list-master-registry.ts +15 -15
- package/src/module/listmaster/service/list-master.service.ts +424 -424
- package/src/module/mapper/controller/field-mapper.controller.ts +69 -69
- package/src/module/mapper/controller/mapper.controller.ts +15 -15
- package/src/module/mapper/dto/field-mapper.dto.ts +14 -14
- package/src/module/mapper/entity/field-lovs.entity.ts +19 -19
- package/src/module/mapper/entity/field-mapper.entity.ts +53 -53
- package/src/module/mapper/entity/mapper.entity.ts +16 -16
- package/src/module/mapper/mapper.module.ts +34 -34
- package/src/module/mapper/repository/field-lovs.repository.ts +35 -35
- package/src/module/mapper/repository/field-mapper.repository.ts +42 -42
- package/src/module/mapper/repository/mapper.repository.ts +15 -15
- package/src/module/mapper/service/field-mapper.service.ts +245 -245
- package/src/module/mapper/service/mapper.service.ts +79 -79
- package/src/module/master/controller/master.controller.ts +74 -74
- package/src/module/master/service/master.service.ts +483 -483
- package/src/module/meta/controller/app-master.controller.ts +38 -38
- package/src/module/meta/controller/attribute-master.controller.ts +66 -66
- package/src/module/meta/controller/entity-dynamic.controller.ts +125 -125
- package/src/module/meta/controller/entity-master.controller.ts +28 -28
- package/src/module/meta/controller/entity-relation.controller.ts +36 -36
- package/src/module/meta/controller/entity.controller.ts +385 -385
- package/src/module/meta/controller/entity.public.controller.ts +75 -75
- package/src/module/meta/controller/media.controller.ts +92 -82
- package/src/module/meta/controller/meta.controller.ts +96 -96
- package/src/module/meta/controller/view-master.controller.ts +86 -86
- package/src/module/meta/dto/entity-list-data.dto.ts +6 -6
- package/src/module/meta/dto/entity-tab.dto.ts +4 -4
- package/src/module/meta/dto/entity-table.dto.ts +9 -9
- package/src/module/meta/entity/app-master.entity.ts +34 -34
- package/src/module/meta/entity/attribute-master.entity.ts +87 -87
- package/src/module/meta/entity/base-entity.entity.ts +75 -75
- package/src/module/meta/entity/entity-master.entity.ts +84 -78
- package/src/module/meta/entity/entity-relation-data.entity.ts +29 -29
- package/src/module/meta/entity/entity-relation.entity.ts +23 -23
- package/src/module/meta/entity/entity-table-column.entity.ts +61 -61
- package/src/module/meta/entity/entity-table.entity.ts +50 -50
- package/src/module/meta/entity/media-data.entity.ts +32 -32
- package/src/module/meta/entity/preference.entity.ts +62 -62
- package/src/module/meta/entity/view-master.entity.ts +41 -41
- package/src/module/meta/entity.module.ts +158 -158
- package/src/module/meta/repository/app-master.repository.ts +20 -20
- package/src/module/meta/repository/attribute-master.repository.ts +110 -110
- package/src/module/meta/repository/entity-master.repository.ts +69 -69
- package/src/module/meta/repository/entity-table-column.repository.ts +39 -39
- package/src/module/meta/repository/entity-table.repository.ts +53 -53
- package/src/module/meta/repository/media-data.repository.ts +50 -50
- package/src/module/meta/repository/preference.repository.ts +20 -20
- package/src/module/meta/repository/user-app-mapping.repository.ts +28 -28
- package/src/module/meta/repository/view-master.repository.ts +42 -42
- package/src/module/meta/service/app-master.service.ts +37 -37
- package/src/module/meta/service/attribute-master.service.ts +117 -117
- package/src/module/meta/service/common.service.ts +9 -9
- package/src/module/meta/service/entity-dynamic.service.ts +762 -762
- package/src/module/meta/service/entity-list.service.ts +205 -205
- package/src/module/meta/service/entity-master.service.ts +164 -164
- package/src/module/meta/service/entity-realation-data.service.ts +9 -9
- package/src/module/meta/service/entity-relation.service.ts +69 -69
- package/src/module/meta/service/entity-service-impl.service.ts +524 -524
- package/src/module/meta/service/entity-table-column.service.ts +39 -39
- package/src/module/meta/service/entity-table.service.ts +150 -150
- package/src/module/meta/service/entity-validation.service.ts +185 -185
- package/src/module/meta/service/entity.service.ts +67 -67
- package/src/module/meta/service/field-group.service.ts +103 -103
- package/src/module/meta/service/media-data.service.ts +240 -149
- package/src/module/meta/service/populate-meta.service.ts +173 -173
- package/src/module/meta/service/preference.service.ts +16 -16
- package/src/module/meta/service/resolver.service.ts +240 -240
- package/src/module/meta/service/section-master.service.ts +104 -104
- package/src/module/meta/service/update-form-json.service.ts +22 -22
- package/src/module/meta/service/user-app-mapping.service.ts +17 -17
- package/src/module/meta/service/view-master.service.ts +111 -111
- package/src/module/module/controller/menu.controller.ts +15 -15
- package/src/module/module/controller/module-access.controller.ts +134 -134
- package/src/module/module/entity/menu.entity.ts +43 -43
- package/src/module/module/entity/module-access.entity.ts +25 -25
- package/src/module/module/entity/module-action.entity.ts +17 -17
- package/src/module/module/entity/module.entity.ts +52 -52
- package/src/module/module/module.module.ts +42 -42
- package/src/module/module/repository/menu.repository.ts +184 -184
- package/src/module/module/repository/module-access.repository.ts +344 -344
- package/src/module/module/service/menu.service.ts +82 -82
- package/src/module/module/service/module-access.service.ts +209 -209
- package/src/module/notification/controller/notification.controller.ts +58 -58
- package/src/module/notification/controller/otp.controller.ts +117 -117
- package/src/module/notification/entity/notification.entity.ts +26 -26
- package/src/module/notification/entity/otp.entity.ts +28 -28
- package/src/module/notification/firebase-admin.config.ts +22 -22
- package/src/module/notification/notification.module.ts +69 -69
- package/src/module/notification/repository/otp.repository.ts +27 -27
- package/src/module/notification/service/email.service.ts +127 -127
- package/src/module/notification/service/notification.service.ts +164 -164
- package/src/module/notification/service/otp.service.ts +132 -132
- package/src/module/third-party-module/entity/third-party-api-registry.entity.ts +52 -52
- package/src/module/third-party-module/repository/third-party-api-registry.repository.ts +20 -20
- package/src/module/third-party-module/service/api-registry.service.ts +13 -13
- package/src/module/third-party-module/third-party.module.ts +12 -12
- package/src/module/user/controller/login.controller.ts +197 -197
- package/src/module/user/controller/user.controller.ts +40 -40
- package/src/module/user/dto/create-user.dto.ts +62 -62
- package/src/module/user/dto/update-user.dto.ts +4 -4
- package/src/module/user/entity/role.entity.ts +33 -33
- package/src/module/user/entity/user-role-mapping.entity.ts +38 -38
- package/src/module/user/entity/user-session.entity.ts +61 -61
- package/src/module/user/entity/user.entity.ts +71 -71
- package/src/module/user/repository/role.repository.ts +96 -96
- package/src/module/user/repository/user-role-mapping.repository.ts +126 -126
- package/src/module/user/repository/user.repository.ts +50 -50
- package/src/module/user/repository/userSession.repository.ts +33 -33
- package/src/module/user/service/login.service.ts +280 -280
- package/src/module/user/service/role.service.ts +189 -189
- package/src/module/user/service/user-role-mapping.service.ts +98 -98
- package/src/module/user/service/user-session.service.ts +168 -168
- package/src/module/user/service/user.service.ts +353 -353
- package/src/module/user/user.module.ts +65 -65
- package/src/module/workflow/controller/action-category.controller.ts +54 -54
- package/src/module/workflow/controller/action-resource-mapping.controller.ts +23 -23
- package/src/module/workflow/controller/action-template-mapping.controller.ts +35 -35
- package/src/module/workflow/controller/action.controller.ts +95 -95
- package/src/module/workflow/controller/activity-log.controller.ts +55 -55
- package/src/module/workflow/controller/comm-template.controller.ts +41 -41
- package/src/module/workflow/controller/entity-modification.controller.ts +35 -35
- package/src/module/workflow/controller/form-master.controller.ts +43 -43
- package/src/module/workflow/controller/stage-group.controller.ts +48 -48
- package/src/module/workflow/controller/stage.controller.ts +50 -50
- package/src/module/workflow/controller/task.controller.ts +77 -77
- package/src/module/workflow/controller/workflow-list-master.controller.ts +44 -44
- package/src/module/workflow/controller/workflow-meta.controller.ts +80 -80
- package/src/module/workflow/controller/workflow.controller.ts +67 -67
- package/src/module/workflow/entity/action-category.entity.ts +38 -38
- package/src/module/workflow/entity/action-data.entity.ts +55 -55
- package/src/module/workflow/entity/action-resources-mapping.entity.ts +29 -29
- package/src/module/workflow/entity/action-template-mapping.entity.ts +17 -17
- package/src/module/workflow/entity/action.entity.ts +50 -50
- package/src/module/workflow/entity/activity-log.entity.ts +43 -43
- package/src/module/workflow/entity/comm-template.entity.ts +43 -43
- package/src/module/workflow/entity/entity-modification.entity.ts +38 -38
- package/src/module/workflow/entity/form.entity.ts +25 -25
- package/src/module/workflow/entity/stage-action-mapping.entity.ts +17 -17
- package/src/module/workflow/entity/stage-group.entity.ts +23 -23
- package/src/module/workflow/entity/stage-movement-data.entity.ts +38 -38
- package/src/module/workflow/entity/stage.entity.ts +20 -20
- package/src/module/workflow/entity/task-data.entity.ts +88 -88
- package/src/module/workflow/entity/template-attach-mapper.entity.ts +30 -30
- package/src/module/workflow/entity/workflow-data.entity.ts +11 -11
- package/src/module/workflow/entity/workflow-level-mapping.entity.ts +18 -18
- package/src/module/workflow/entity/workflow.entity.ts +20 -20
- package/src/module/workflow/repository/action-category.repository.ts +79 -79
- package/src/module/workflow/repository/action-data.repository.ts +242 -242
- package/src/module/workflow/repository/action.repository.ts +277 -277
- package/src/module/workflow/repository/activity-log.repository.ts +149 -149
- package/src/module/workflow/repository/comm-template.repository.ts +149 -149
- package/src/module/workflow/repository/form-master.repository.ts +59 -59
- package/src/module/workflow/repository/stage-group.repository.ts +176 -176
- package/src/module/workflow/repository/stage-movement.repository.ts +227 -227
- package/src/module/workflow/repository/stage.repository.ts +172 -172
- package/src/module/workflow/repository/task.repository.ts +117 -117
- package/src/module/workflow/repository/workflow.repository.ts +42 -42
- package/src/module/workflow/service/action-category.service.ts +33 -33
- package/src/module/workflow/service/action-data.service.ts +62 -62
- package/src/module/workflow/service/action-resources-mapping.service.ts +10 -10
- package/src/module/workflow/service/action-template-mapping.service.ts +55 -55
- package/src/module/workflow/service/action.service.ts +263 -263
- package/src/module/workflow/service/activity-log.service.ts +107 -107
- package/src/module/workflow/service/comm-template.service.ts +176 -176
- package/src/module/workflow/service/entity-modification.service.ts +67 -67
- package/src/module/workflow/service/form-master.service.ts +35 -35
- package/src/module/workflow/service/populate-workflow.service.ts +303 -303
- package/src/module/workflow/service/stage-action-mapping.service.ts +5 -5
- package/src/module/workflow/service/stage-group.service.ts +307 -307
- package/src/module/workflow/service/stage.service.ts +199 -199
- package/src/module/workflow/service/task.service.ts +561 -561
- package/src/module/workflow/service/workflow-list-master.service.ts +60 -60
- package/src/module/workflow/service/workflow-meta.service.ts +581 -581
- package/src/module/workflow/service/workflow.service.ts +205 -205
- package/src/module/workflow/workflow.module.ts +174 -174
- package/src/module/workflow-automation/controller/workflow-automation.controller.ts +21 -21
- package/src/module/workflow-automation/entity/workflow-automation-action.entity.ts +26 -26
- package/src/module/workflow-automation/entity/workflow-automation.entity.ts +35 -35
- package/src/module/workflow-automation/interface/action.decorator.ts +7 -7
- package/src/module/workflow-automation/interface/action.interface.ts +5 -5
- package/src/module/workflow-automation/service/action-registery.service.ts +35 -35
- package/src/module/workflow-automation/service/workflow-automation-engine.service.ts +214 -214
- package/src/module/workflow-automation/service/workflow-automation.service.ts +345 -345
- package/src/module/workflow-automation/workflow-automation.module.ts +34 -34
- package/src/resources/dev.properties.yaml +30 -30
- package/src/resources/local.properties.yaml +27 -27
- package/src/resources/properties.module.ts +12 -12
- package/src/resources/properties.yaml.ts +11 -11
- package/src/resources/uat.properties.yaml +15 -15
- package/src/utils/dto/excel-data.dto.ts +14 -14
- package/src/utils/dto/excelsheet-data.dto.ts +5 -5
- package/src/utils/service/base64util.service.ts +18 -18
- package/src/utils/service/clockIDGenUtil.service.ts +21 -21
- package/src/utils/service/codeGenerator.service.ts +22 -22
- package/src/utils/service/dateUtil.service.ts +17 -17
- package/src/utils/service/encryptUtil.service.ts +97 -97
- package/src/utils/service/excel-helper.service.ts +72 -72
- package/src/utils/service/excelUtil.service.ts +15 -15
- package/src/utils/service/file-util.service.ts +11 -11
- package/src/utils/service/json-util.service.ts +23 -23
- package/src/utils/service/loggingUtil.service.ts +34 -34
- package/src/utils/service/reflection-helper.service.ts +62 -62
- package/src/utils/service/wbsCodeGen.service.ts +8 -8
- package/src/utils/utils.module.ts +25 -25
- package/tsconfig.build.json +4 -4
- package/tsconfig.json +24 -24
- package/.vscode/extensions.json +0 -5
|
@@ -100,10 +100,10 @@ let FieldMapperService = class FieldMapperService extends entity_service_impl_se
|
|
|
100
100
|
await super.getResolvedEntityDataByDataSource(entityType, parent_id, userData);
|
|
101
101
|
}
|
|
102
102
|
else {
|
|
103
|
-
const relations = await this.datasource.query(`SELECT target_entity_id
|
|
104
|
-
FROM cr_entity_relation_data
|
|
105
|
-
WHERE source_entity_type = ?
|
|
106
|
-
AND source_entity_id = ?
|
|
103
|
+
const relations = await this.datasource.query(`SELECT target_entity_id
|
|
104
|
+
FROM cr_entity_relation_data
|
|
105
|
+
WHERE source_entity_type = ?
|
|
106
|
+
AND source_entity_id = ?
|
|
107
107
|
AND target_entity_type = ?`, [parent_type, parent_id, field.mapped_entity_type]);
|
|
108
108
|
const targetEntityIds = relations.map((r) => r.target_entity_id);
|
|
109
109
|
this.loggingService.log('package', 'fieldMapperService', 'targetEntityIds', targetEntityIds);
|
|
@@ -27,8 +27,8 @@ let MapperService = class MapperService extends entity_service_impl_service_1.En
|
|
|
27
27
|
async getByMappedEntityType(mappedEntityType, filter, status) {
|
|
28
28
|
if (!mappedEntityType)
|
|
29
29
|
return [];
|
|
30
|
-
const mappers = await this.dataSource.query(`SELECT id, name, code, status
|
|
31
|
-
FROM cr_mapper_master
|
|
30
|
+
const mappers = await this.dataSource.query(`SELECT id, name, code, status
|
|
31
|
+
FROM cr_mapper_master
|
|
32
32
|
WHERE mapped_entity_type = ? AND (-1 = ? OR name LIKE ? OR code LIKE ?)`, [mappedEntityType, filter || -1, `%${filter}%`, `%${filter}%`]);
|
|
33
33
|
const distinctStatuses = [
|
|
34
34
|
...new Set(mappers.map((m) => m.status).filter((s) => s !== null)),
|
|
@@ -14,4 +14,7 @@ export declare class MediaController {
|
|
|
14
14
|
getDownloadUrl(id: number, res: Response, req: Request & {
|
|
15
15
|
user: any;
|
|
16
16
|
}, expiresIn?: number): Promise<void>;
|
|
17
|
+
generateUploadPath(req: Request & {
|
|
18
|
+
user: any;
|
|
19
|
+
}, mapped_entity_type: string, mapped_entity_id?: number, parent_id?: number, parent_type?: string): Promise<string | null>;
|
|
17
20
|
}
|
|
@@ -51,6 +51,10 @@ let MediaController = class MediaController {
|
|
|
51
51
|
});
|
|
52
52
|
}
|
|
53
53
|
}
|
|
54
|
+
async generateUploadPath(req, mapped_entity_type, mapped_entity_id, parent_id, parent_type) {
|
|
55
|
+
const loggedInUser = req.user.userData;
|
|
56
|
+
return this.mediaDataService.buildUploadPathGeneric(mapped_entity_type, loggedInUser, mapped_entity_id, parent_id, parent_type);
|
|
57
|
+
}
|
|
54
58
|
};
|
|
55
59
|
exports.MediaController = MediaController;
|
|
56
60
|
__decorate([
|
|
@@ -72,6 +76,17 @@ __decorate([
|
|
|
72
76
|
__metadata("design:paramtypes", [Number, Object, Object, Number]),
|
|
73
77
|
__metadata("design:returntype", Promise)
|
|
74
78
|
], MediaController.prototype, "getDownloadUrl", null);
|
|
79
|
+
__decorate([
|
|
80
|
+
(0, common_1.Post)('generateUploadPath'),
|
|
81
|
+
__param(0, (0, common_1.Req)()),
|
|
82
|
+
__param(1, (0, common_1.Query)('mapped_entity_type')),
|
|
83
|
+
__param(2, (0, common_1.Query)('mapped_entity_id')),
|
|
84
|
+
__param(3, (0, common_1.Query)('parent_id')),
|
|
85
|
+
__param(4, (0, common_1.Query)('parent_type')),
|
|
86
|
+
__metadata("design:type", Function),
|
|
87
|
+
__metadata("design:paramtypes", [Object, String, Number, Number, String]),
|
|
88
|
+
__metadata("design:returntype", Promise)
|
|
89
|
+
], MediaController.prototype, "generateUploadPath", null);
|
|
75
90
|
exports.MediaController = MediaController = __decorate([
|
|
76
91
|
(0, common_1.Controller)('media'),
|
|
77
92
|
(0, common_1.UseGuards)(jwt_guard_1.JwtAuthGuard),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"media.controller.js","sourceRoot":"","sources":["../../../../src/module/meta/controller/media.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAWwB;AAExB,2DAA2D;AAC3D,sEAAiE;AAI1D,IAAM,eAAe,GAArB,MAAM,eAAe;IAC1B,YAA6B,gBAAkC;QAAlC,qBAAgB,GAAhB,gBAAgB,CAAkB;IAAG,CAAC;IAI7D,AAAN,KAAK,CAAC,cAAc,CAElB,IAKC,EACM,GAA4B,EAC5B,GAAa;QAEpB,MAAM,YAAY,GAAG,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;QAEvC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,0BAA0B,CACnE,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,aAAa,EAClB,YAAY,EACZ,IAAI,CAAC,kBAAkB,EACvB,IAAI,CAAC,gBAAgB,CACtB,CAAC;QACF,IAAI,MAAM,EAAE,CAAC;YACX,GAAG,CAAC,MAAM,CAAC,mBAAU,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC;gBAC7B,OAAO,EAAE,+BAA+B;gBACxC,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE,MAAM;aACb,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAIK,AAAN,KAAK,CAAC,cAAc,CACL,EAAU,EAChB,GAAa,EACb,GAA4B,EACf,SAAkB;QAEtC,MAAM,YAAY,GAAG,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;QACvC,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,CACjE,EAAE,EACF,YAAY,EACZ,SAAS,CACV,CAAC;YACF,GAAG,CAAC,MAAM,CAAC,mBAAU,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC;gBAC7B,OAAO,EAAE,mCAAmC;gBAC5C,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE,WAAW;aAClB,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,GAAG,CAAC,MAAM,CAAC,mBAAU,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC;gBAChD,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,6BAA6B;gBACvD,OAAO,EAAE,KAAK;aACf,CAAC,CAAC;QACL,CAAC;IACH,CAAC;CACF,CAAA;
|
|
1
|
+
{"version":3,"file":"media.controller.js","sourceRoot":"","sources":["../../../../src/module/meta/controller/media.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -101,6 +101,14 @@ __decorate([
|
|
|
101
101
|
(0, typeorm_1.Column)({ name: 'is_workflow', nullable: true }),
|
|
102
102
|
__metadata("design:type", Boolean)
|
|
103
103
|
], EntityMaster.prototype, "is_workflow", void 0);
|
|
104
|
+
__decorate([
|
|
105
|
+
(0, typeorm_1.Column)({ name: 'doc_upload_path', nullable: true, length: 50 }),
|
|
106
|
+
__metadata("design:type", String)
|
|
107
|
+
], EntityMaster.prototype, "doc_upload_path", void 0);
|
|
108
|
+
__decorate([
|
|
109
|
+
(0, typeorm_1.Column)({ name: 'overwrite_path', type: 'tinyint', nullable: true }),
|
|
110
|
+
__metadata("design:type", Number)
|
|
111
|
+
], EntityMaster.prototype, "overwrite_path", void 0);
|
|
104
112
|
exports.EntityMaster = EntityMaster = __decorate([
|
|
105
113
|
(0, typeorm_1.Entity)({ name: 'cr_entity_master' }),
|
|
106
114
|
__metadata("design:paramtypes", [])
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity-master.entity.js","sourceRoot":"","sources":["../../../../src/module/meta/entity/entity-master.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6DAAkD;AAClD,uEAA4E;AAC5E,qCAAyC;AAGlC,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,+BAAU;IAC1C;QACE,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,WAAW,GAAG,yCAAuB,CAAC;IAC7C,CAAC;
|
|
1
|
+
{"version":3,"file":"entity-master.entity.js","sourceRoot":"","sources":["../../../../src/module/meta/entity/entity-master.entity.ts"],"names":[],"mappings":"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"}
|
|
@@ -43,8 +43,8 @@ let EntityDynamicService = class EntityDynamicService {
|
|
|
43
43
|
entityData.entity_type = entityType;
|
|
44
44
|
}
|
|
45
45
|
if (!entityData.code && loggedInUser) {
|
|
46
|
-
const result = await this.dataSource.query(`SELECT MAX(CAST(SUBSTRING(code, LENGTH(entity_type) + 1) AS UNSIGNED)) AS max_seq_no
|
|
47
|
-
FROM ${tableName}
|
|
46
|
+
const result = await this.dataSource.query(`SELECT MAX(CAST(SUBSTRING(code, LENGTH(entity_type) + 1) AS UNSIGNED)) AS max_seq_no
|
|
47
|
+
FROM ${tableName}
|
|
48
48
|
WHERE entity_type = ?`, [entityData.entity_type]);
|
|
49
49
|
let maxSeqNo = result?.[0]?.max_seq_no ? Number(result[0].max_seq_no) : 0;
|
|
50
50
|
maxSeqNo += 1;
|
|
@@ -149,7 +149,7 @@ let EntityDynamicService = class EntityDynamicService {
|
|
|
149
149
|
}
|
|
150
150
|
async getEntityWithRelation(entityType, id, loggedInUser) {
|
|
151
151
|
const mainEntity = await this.getEntity(entityType, id, loggedInUser);
|
|
152
|
-
const relatedEntities = await this.dataSource.query(`SELECT * FROM cr_entity_relation_data WHERE source_entity_id = ? AND target_entity_type IN (
|
|
152
|
+
const relatedEntities = await this.dataSource.query(`SELECT * FROM cr_entity_relation_data WHERE source_entity_id = ? AND target_entity_type IN (
|
|
153
153
|
SELECT target_entity_type FROM cr_entity_relation WHERE source_entity_type = ?)`, [id, entityType]);
|
|
154
154
|
const response = {
|
|
155
155
|
entity_type: entityType,
|
|
@@ -207,8 +207,8 @@ let EntityDynamicService = class EntityDynamicService {
|
|
|
207
207
|
targetEntityId = createdEntity.insertId || createdEntity.id;
|
|
208
208
|
entityData = await this.getEntity(targetEntityType, targetEntityId, loggedInUser);
|
|
209
209
|
}
|
|
210
|
-
await this.dataSource.query(`INSERT INTO cr_entity_relation_data
|
|
211
|
-
(organization_id, source_entity_id, source_entity_type, target_entity_id, target_entity_type, relation_type)
|
|
210
|
+
await this.dataSource.query(`INSERT INTO cr_entity_relation_data
|
|
211
|
+
(organization_id, source_entity_id, source_entity_type, target_entity_id, target_entity_type, relation_type)
|
|
212
212
|
VALUES (?, ?, ?, ?, ?,?)`, [
|
|
213
213
|
organizationId,
|
|
214
214
|
id,
|
|
@@ -253,8 +253,8 @@ let EntityDynamicService = class EntityDynamicService {
|
|
|
253
253
|
entityData.enterprise_id = loggedInUser.enterprise_id;
|
|
254
254
|
}
|
|
255
255
|
if (!entityData.code && loggedInUser) {
|
|
256
|
-
const result = await this.dataSource.query(`SELECT MAX(CAST(SUBSTRING(code, LENGTH(entity_type) + 1) AS UNSIGNED)) AS max_seq_no
|
|
257
|
-
FROM ${tableName}
|
|
256
|
+
const result = await this.dataSource.query(`SELECT MAX(CAST(SUBSTRING(code, LENGTH(entity_type) + 1) AS UNSIGNED)) AS max_seq_no
|
|
257
|
+
FROM ${tableName}
|
|
258
258
|
WHERE entity_type = ?`, [entityData.entity_type]);
|
|
259
259
|
let maxSeqNo = result?.[0]?.max_seq_no ? Number(result[0].max_seq_no) : 0;
|
|
260
260
|
maxSeqNo += 1;
|
|
@@ -365,13 +365,13 @@ let EntityDynamicService = class EntityDynamicService {
|
|
|
365
365
|
return result[0].db_table_name;
|
|
366
366
|
}
|
|
367
367
|
async getAttributeCodes(entityType, organizationId) {
|
|
368
|
-
const result = await this.dataSource.query(`SELECT attribute_key,
|
|
369
|
-
MAX(db_datatype) AS db_datatype,
|
|
370
|
-
MAX(element_type) AS element_type,
|
|
371
|
-
MAX(is_hidden) AS is_hidden
|
|
372
|
-
FROM cr_entity_attribute
|
|
373
|
-
WHERE mapped_entity_type = ? AND organization_id = ?
|
|
374
|
-
and (is_hidden IS NULL OR is_hidden = 0) -- Exclude hidden attributes
|
|
368
|
+
const result = await this.dataSource.query(`SELECT attribute_key,
|
|
369
|
+
MAX(db_datatype) AS db_datatype,
|
|
370
|
+
MAX(element_type) AS element_type,
|
|
371
|
+
MAX(is_hidden) AS is_hidden
|
|
372
|
+
FROM cr_entity_attribute
|
|
373
|
+
WHERE mapped_entity_type = ? AND organization_id = ?
|
|
374
|
+
and (is_hidden IS NULL OR is_hidden = 0) -- Exclude hidden attributes
|
|
375
375
|
GROUP BY attribute_key`, [entityType, organizationId]);
|
|
376
376
|
if (!result.length) {
|
|
377
377
|
console.log(`No attributes found for entity '${entityType}' and org '${organizationId}'`);
|
|
@@ -403,15 +403,15 @@ let EntityDynamicService = class EntityDynamicService {
|
|
|
403
403
|
}
|
|
404
404
|
async getCode(entityType, loggedInUser) {
|
|
405
405
|
const organizationId = loggedInUser.organization_id;
|
|
406
|
-
const result = await this.dataSource.query(`SELECT db_table_name
|
|
407
|
-
FROM cr_entity_master
|
|
406
|
+
const result = await this.dataSource.query(`SELECT db_table_name
|
|
407
|
+
FROM cr_entity_master
|
|
408
408
|
WHERE mapped_entity_type = ? AND organization_id = ?`, [entityType, organizationId]);
|
|
409
409
|
if (!result.length) {
|
|
410
410
|
throw new Error(`Entity type '${entityType}' not found in cr_entity_master for org '${organizationId}'`);
|
|
411
411
|
}
|
|
412
412
|
const tableName = result[0].db_table_name;
|
|
413
|
-
const seqResult = await this.dataSource.query(`SELECT MAX(CAST(SUBSTRING(code, LENGTH(entity_type) + 1) AS UNSIGNED)) AS max_seq_no
|
|
414
|
-
FROM \`${tableName}\`
|
|
413
|
+
const seqResult = await this.dataSource.query(`SELECT MAX(CAST(SUBSTRING(code, LENGTH(entity_type) + 1) AS UNSIGNED)) AS max_seq_no
|
|
414
|
+
FROM \`${tableName}\`
|
|
415
415
|
WHERE entity_type = ?`, [entityType]);
|
|
416
416
|
let maxSeqNo = seqResult?.[0]?.max_seq_no
|
|
417
417
|
? Number(seqResult[0].max_seq_no)
|
|
@@ -75,11 +75,11 @@ let EntityListService = class EntityListService {
|
|
|
75
75
|
}
|
|
76
76
|
getQuery(source, groupByColumn) {
|
|
77
77
|
if (groupByColumn) {
|
|
78
|
-
return `SELECT ${groupByColumn} as tab_value, COUNT(1) AS tab_value_count
|
|
78
|
+
return `SELECT ${groupByColumn} as tab_value, COUNT(1) AS tab_value_count
|
|
79
79
|
FROM ${source}`;
|
|
80
80
|
}
|
|
81
81
|
else {
|
|
82
|
-
return `SELECT *
|
|
82
|
+
return `SELECT *
|
|
83
83
|
FROM ${source}`;
|
|
84
84
|
}
|
|
85
85
|
}
|
|
@@ -123,7 +123,7 @@ let EntityListService = class EntityListService {
|
|
|
123
123
|
return { query, argumentList: argsObjectList };
|
|
124
124
|
}
|
|
125
125
|
async getMaxSequenceNumber(tableName, parentType, parentId) {
|
|
126
|
-
const query = `SELECT COUNT(1) seq_no
|
|
126
|
+
const query = `SELECT COUNT(1) seq_no
|
|
127
127
|
FROM ${tableName} WHERE 1=1 `;
|
|
128
128
|
const argsObjectList = [];
|
|
129
129
|
const result = await this.entityManager.query(query, argsObjectList);
|
|
@@ -70,9 +70,9 @@ let EntityMasterService = class EntityMasterService {
|
|
|
70
70
|
if (!entityMasterData) {
|
|
71
71
|
throw new Error(`Entity master with mapped_entity_type "${entityType}" not found.`);
|
|
72
72
|
}
|
|
73
|
-
const attributes = await this.dataSource.query(`SELECT *
|
|
74
|
-
FROM cr_entity_attribute
|
|
75
|
-
WHERE mapped_entity_type = ?
|
|
73
|
+
const attributes = await this.dataSource.query(`SELECT *
|
|
74
|
+
FROM cr_entity_attribute
|
|
75
|
+
WHERE mapped_entity_type = ?
|
|
76
76
|
AND organization_id = ? `, [entityMasterData.mapped_entity_type, loggedInUser.organization_id]);
|
|
77
77
|
entityMasterData['attribute_list'] = attributes;
|
|
78
78
|
entityMasterData['operation_list'] = {
|
|
@@ -19,12 +19,12 @@ let EntityRelationService = class EntityRelationService extends entity_service_i
|
|
|
19
19
|
this.dataSource = dataSource;
|
|
20
20
|
}
|
|
21
21
|
async getEntityRelations(entityType, loggedInUser, includeSelf = false) {
|
|
22
|
-
const relations = await this.dataSource.query(`SELECT name as label, target_entity_type as value, id
|
|
23
|
-
FROM cr_entity_relation
|
|
22
|
+
const relations = await this.dataSource.query(`SELECT name as label, target_entity_type as value, id
|
|
23
|
+
FROM cr_entity_relation
|
|
24
24
|
WHERE source_entity_type = ? AND organization_id = ?`, [entityType, loggedInUser.organization_id]);
|
|
25
25
|
if (includeSelf) {
|
|
26
|
-
const [entity] = await this.dataSource.query(`SELECT name as label
|
|
27
|
-
FROM cr_entity_master
|
|
26
|
+
const [entity] = await this.dataSource.query(`SELECT name as label
|
|
27
|
+
FROM cr_entity_master
|
|
28
28
|
WHERE mapped_entity_type = ? AND organization_id = ?`, [entityType, loggedInUser.organization_id]);
|
|
29
29
|
if (entity) {
|
|
30
30
|
relations.unshift({
|
|
@@ -39,13 +39,13 @@ let EntityRelationService = class EntityRelationService extends entity_service_i
|
|
|
39
39
|
async getRelatedEntityIds(sourceEntity, targetEntity, targetIds, orgId) {
|
|
40
40
|
if (!targetIds.length)
|
|
41
41
|
return [];
|
|
42
|
-
const result = await this.dataSource.query(`
|
|
43
|
-
SELECT DISTINCT source_entity_id
|
|
44
|
-
FROM cr_entity_relation_data
|
|
45
|
-
WHERE source_entity_type = ?
|
|
46
|
-
AND target_entity_type = ?
|
|
47
|
-
AND target_entity_id IN (?)
|
|
48
|
-
AND organization_id = ?
|
|
42
|
+
const result = await this.dataSource.query(`
|
|
43
|
+
SELECT DISTINCT source_entity_id
|
|
44
|
+
FROM cr_entity_relation_data
|
|
45
|
+
WHERE source_entity_type = ?
|
|
46
|
+
AND target_entity_type = ?
|
|
47
|
+
AND target_entity_id IN (?)
|
|
48
|
+
AND organization_id = ?
|
|
49
49
|
`, [sourceEntity, targetEntity, targetIds, orgId]);
|
|
50
50
|
return result.map((r) => r.source_entity_id);
|
|
51
51
|
}
|
|
@@ -50,9 +50,9 @@ let EntityServiceImpl = class EntityServiceImpl {
|
|
|
50
50
|
maxSeqNo = Number(maxSeqNo) + 1;
|
|
51
51
|
entityData.code = entityData.entity_type + maxSeqNo;
|
|
52
52
|
}
|
|
53
|
-
const statusList = await repo.query(`SELECT id
|
|
54
|
-
FROM cr_list_master_items
|
|
55
|
-
WHERE code = ?
|
|
53
|
+
const statusList = await repo.query(`SELECT id
|
|
54
|
+
FROM cr_list_master_items
|
|
55
|
+
WHERE code = ?
|
|
56
56
|
AND organization_id = ?`, [global_constant_1.STATUS_ACTIVE, loggedInUser?.organization_id || -1]);
|
|
57
57
|
console.log('Status List:', statusList);
|
|
58
58
|
console.log(`status_code,${global_constant_1.STATUS_ACTIVE},statusList, ${loggedInUser?.organization_id}`);
|
|
@@ -3,10 +3,12 @@ import { MediaDataRepository } from '../repository/media-data.repository';
|
|
|
3
3
|
import { ConfigService } from '@nestjs/config';
|
|
4
4
|
import { S3 } from 'aws-sdk';
|
|
5
5
|
import { MediaData } from '../entity/media-data.entity';
|
|
6
|
+
import { DataSource } from 'typeorm';
|
|
6
7
|
export declare class MediaDataService extends EntityServiceImpl {
|
|
7
8
|
private readonly configService;
|
|
8
9
|
private readonly mediaRepository;
|
|
9
|
-
|
|
10
|
+
private dataSource;
|
|
11
|
+
constructor(configService: ConfigService, mediaRepository: MediaDataRepository, dataSource: DataSource);
|
|
10
12
|
s3AccessKeyID: any;
|
|
11
13
|
s3AccessKeySecret: any;
|
|
12
14
|
s3Region: any;
|
|
@@ -27,4 +29,6 @@ export declare class MediaDataService extends EntityServiceImpl {
|
|
|
27
29
|
id: number;
|
|
28
30
|
size: number | undefined;
|
|
29
31
|
}>;
|
|
32
|
+
buildUploadPathGeneric(mappedEntityType: string, loggedInUser: any, mappedEntityId?: number, parentId?: number, parentType?: string): Promise<string | null>;
|
|
33
|
+
private resolveUploadPath;
|
|
30
34
|
}
|
|
@@ -18,11 +18,13 @@ const aws_sdk_1 = require("aws-sdk");
|
|
|
18
18
|
const media_data_entity_1 = require("../entity/media-data.entity");
|
|
19
19
|
const global_constant_1 = require("../../../constant/global.constant");
|
|
20
20
|
const uuid_1 = require("uuid");
|
|
21
|
+
const typeorm_1 = require("typeorm");
|
|
21
22
|
let MediaDataService = class MediaDataService extends entity_service_impl_service_1.EntityServiceImpl {
|
|
22
|
-
constructor(configService, mediaRepository) {
|
|
23
|
+
constructor(configService, mediaRepository, dataSource) {
|
|
23
24
|
super();
|
|
24
25
|
this.configService = configService;
|
|
25
26
|
this.mediaRepository = mediaRepository;
|
|
27
|
+
this.dataSource = dataSource;
|
|
26
28
|
this.s3AccessKeyID = this.configService.get('AWS.S3.AWS_ACCESS_KEY_ID');
|
|
27
29
|
this.s3AccessKeySecret = this.configService.get('AWS.S3.AWS_SECRET_KEY');
|
|
28
30
|
this.s3Region = this.configService.get('AWS.S3.AWS_REGION');
|
|
@@ -106,11 +108,66 @@ let MediaDataService = class MediaDataService extends entity_service_impl_servic
|
|
|
106
108
|
throw new Error('Failed to generate signed URL');
|
|
107
109
|
}
|
|
108
110
|
}
|
|
111
|
+
async buildUploadPathGeneric(mappedEntityType, loggedInUser, mappedEntityId, parentId, parentType) {
|
|
112
|
+
const entityMaster = await this.entityMasterService.getEntityData(mappedEntityType, loggedInUser);
|
|
113
|
+
if (!entityMaster) {
|
|
114
|
+
throw new Error(`Entity master not found for ${mappedEntityType}`);
|
|
115
|
+
}
|
|
116
|
+
let pathTemplate = entityMaster.doc_upload_path ?? '';
|
|
117
|
+
const entityOverwrite = entityMaster.overwrite_path ?? 0;
|
|
118
|
+
if (!pathTemplate) {
|
|
119
|
+
throw new Error(`doc_upload_path not defined for ${mappedEntityType}`);
|
|
120
|
+
}
|
|
121
|
+
const replacements = {};
|
|
122
|
+
let organizationData = await this.dataSource.query('SELECT * FROM sso_organization WHERE id = ?', [loggedInUser.organization_id]);
|
|
123
|
+
replacements['org_code'] = organizationData[0].code;
|
|
124
|
+
const levelEntityId = entityOverwrite ? mappedEntityId : loggedInUser.level_id;
|
|
125
|
+
const levelEntityData = await super.getEntityData(loggedInUser.level_type, levelEntityId, loggedInUser);
|
|
126
|
+
if (levelEntityData?.code) {
|
|
127
|
+
replacements['level_code'] = levelEntityData.code;
|
|
128
|
+
}
|
|
129
|
+
const matches = pathTemplate.match(/\$\{(\w+)\}/g) || [];
|
|
130
|
+
for (const variable of matches) {
|
|
131
|
+
const key = variable.replace(/\$\{|\}/g, '');
|
|
132
|
+
if (replacements[key])
|
|
133
|
+
continue;
|
|
134
|
+
if (key === 'org_code')
|
|
135
|
+
continue;
|
|
136
|
+
if (key.endsWith('_code')) {
|
|
137
|
+
const entityType = key.replace('_code', '').toUpperCase();
|
|
138
|
+
let entityId;
|
|
139
|
+
if (parentType?.toUpperCase() === entityType && parentId) {
|
|
140
|
+
entityId = parentId;
|
|
141
|
+
}
|
|
142
|
+
else {
|
|
143
|
+
entityId = mappedEntityId;
|
|
144
|
+
}
|
|
145
|
+
if (entityId) {
|
|
146
|
+
const entityData = await super.getEntityData(entityType, entityId, loggedInUser);
|
|
147
|
+
replacements[key] = entityData?.code ?? null;
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
if (loggedInUser.level_type === 'ORG' && entityOverwrite === 0) {
|
|
152
|
+
replacements['level_code'] = null;
|
|
153
|
+
}
|
|
154
|
+
if (pathTemplate) {
|
|
155
|
+
const finalPath = this.resolveUploadPath(pathTemplate, replacements);
|
|
156
|
+
return finalPath;
|
|
157
|
+
}
|
|
158
|
+
return null;
|
|
159
|
+
}
|
|
160
|
+
resolveUploadPath(template, replacements) {
|
|
161
|
+
let path = template;
|
|
162
|
+
path = path.replace(/\$\{(\w+)\}/g, (_, key) => replacements[key] || '');
|
|
163
|
+
return path.replace(/\/+/g, '/').replace(/\/$/, '');
|
|
164
|
+
}
|
|
109
165
|
};
|
|
110
166
|
exports.MediaDataService = MediaDataService;
|
|
111
167
|
exports.MediaDataService = MediaDataService = __decorate([
|
|
112
168
|
(0, common_1.Injectable)(),
|
|
113
169
|
__metadata("design:paramtypes", [config_1.ConfigService,
|
|
114
|
-
media_data_repository_1.MediaDataRepository
|
|
170
|
+
media_data_repository_1.MediaDataRepository,
|
|
171
|
+
typeorm_1.DataSource])
|
|
115
172
|
], MediaDataService);
|
|
116
173
|
//# sourceMappingURL=media-data.service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"media-data.service.js","sourceRoot":"","sources":["../../../../src/module/meta/service/media-data.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,+EAAkE;AAClE,+EAA0E;AAC1E,2CAA+C;AAC/C,qCAA6B;AAC7B,mEAAwD;AACxD,uEAG2C;AAC3C,+BAAoC;
|
|
1
|
+
{"version":3,"file":"media-data.service.js","sourceRoot":"","sources":["../../../../src/module/meta/service/media-data.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -125,12 +125,12 @@ let ResolverService = class ResolverService {
|
|
|
125
125
|
displayValue === '') {
|
|
126
126
|
return displayValue;
|
|
127
127
|
}
|
|
128
|
-
const [attr] = await this.dataSource.query(`SELECT * FROM cr_entity_attribute
|
|
128
|
+
const [attr] = await this.dataSource.query(`SELECT * FROM cr_entity_attribute
|
|
129
129
|
WHERE mapped_entity_type = ? AND organization_id = ? AND attribute_key = ?`, [entityType, loggedInUser.organization_id, attrKey]);
|
|
130
130
|
if (!attr)
|
|
131
131
|
return displayValue;
|
|
132
132
|
if (attr.data_source_type === 'entity') {
|
|
133
|
-
const [entityDef] = await this.dataSource.query(`SELECT * FROM cr_entity_master
|
|
133
|
+
const [entityDef] = await this.dataSource.query(`SELECT * FROM cr_entity_master
|
|
134
134
|
WHERE mapped_entity_type = ? AND organization_id = ?`, [attr.datasource_list, loggedInUser.organization_id]);
|
|
135
135
|
if (!entityDef)
|
|
136
136
|
return displayValue;
|
|
@@ -145,7 +145,7 @@ let ResolverService = class ResolverService {
|
|
|
145
145
|
return item?.id ?? displayValue;
|
|
146
146
|
}
|
|
147
147
|
else if (attr.data_source_type === 'master') {
|
|
148
|
-
const [item] = await this.dataSource.query(`SELECT id FROM cr_list_master_items
|
|
148
|
+
const [item] = await this.dataSource.query(`SELECT id FROM cr_list_master_items
|
|
149
149
|
WHERE ${attr.data_source_attribute} = ? AND organization_id = ?`, [displayValue, loggedInUser.organization_id]);
|
|
150
150
|
return item?.id ?? displayValue;
|
|
151
151
|
}
|
|
@@ -60,10 +60,10 @@ let MenuRepository = class MenuRepository extends typeorm_1.Repository {
|
|
|
60
60
|
async getMenuItems(moduleCodes, appcode, levelType) {
|
|
61
61
|
return await this.menuData
|
|
62
62
|
.createQueryBuilder('menu')
|
|
63
|
-
.leftJoin('sso_module', 'module', `
|
|
64
|
-
menu.module_code = module.module_code
|
|
65
|
-
AND LOWER(menu.appcode) = LOWER(module.appcode)
|
|
66
|
-
AND menu.level_type = module.level_type
|
|
63
|
+
.leftJoin('sso_module', 'module', `
|
|
64
|
+
menu.module_code = module.module_code
|
|
65
|
+
AND LOWER(menu.appcode) = LOWER(module.appcode)
|
|
66
|
+
AND menu.level_type = module.level_type
|
|
67
67
|
`)
|
|
68
68
|
.where('menu.module_code IN (:...moduleCodes)', { moduleCodes })
|
|
69
69
|
.andWhere('LOWER(menu.appcode) = LOWER(:appcode)', { appcode })
|
|
@@ -82,11 +82,11 @@ let MenuRepository = class MenuRepository extends typeorm_1.Repository {
|
|
|
82
82
|
async resolveUserRoles(userId, appcode, levelType, levelId) {
|
|
83
83
|
const repo = this.dataSource.getRepository(user_role_mapping_entity_1.UserRoleMapping);
|
|
84
84
|
if (userId) {
|
|
85
|
-
const getUserDetails = await this.dataSource.query(`
|
|
86
|
-
SELECT * from sso_user where id = ?
|
|
85
|
+
const getUserDetails = await this.dataSource.query(`
|
|
86
|
+
SELECT * from sso_user where id = ?
|
|
87
87
|
`, [userId]);
|
|
88
|
-
const getUserUrm = await this.dataSource.query(`
|
|
89
|
-
SELECT * from sso_user_role_mapping where user_id = ? and appcode = ?
|
|
88
|
+
const getUserUrm = await this.dataSource.query(`
|
|
89
|
+
SELECT * from sso_user_role_mapping where user_id = ? and appcode = ?
|
|
90
90
|
`, [userId, appcode]);
|
|
91
91
|
if (getUserDetails.length > 0 &&
|
|
92
92
|
getUserDetails[0].organization_id === 1) {
|
|
@@ -105,10 +105,10 @@ let MenuRepository = class MenuRepository extends typeorm_1.Repository {
|
|
|
105
105
|
if (roles.length)
|
|
106
106
|
return roles.map((r) => r.urm_role_id);
|
|
107
107
|
if (levelType === 'SCH') {
|
|
108
|
-
const [sch] = await this.dataSource.query(`
|
|
109
|
-
SELECT s.brand_id, s.organization_id
|
|
110
|
-
FROM eth_school_profile s
|
|
111
|
-
WHERE s.id = ?
|
|
108
|
+
const [sch] = await this.dataSource.query(`
|
|
109
|
+
SELECT s.brand_id, s.organization_id
|
|
110
|
+
FROM eth_school_profile s
|
|
111
|
+
WHERE s.id = ?
|
|
112
112
|
`, [levelId]);
|
|
113
113
|
const brandId = sch?.brand_id;
|
|
114
114
|
const orgId = sch?.organization_id;
|
|
@@ -66,11 +66,11 @@ let NotificationsService = class NotificationsService {
|
|
|
66
66
|
const isReadBool = String(filterQuery.is_read).toLowerCase() === 'true';
|
|
67
67
|
isReadFilter = isReadBool ? 1 : 0;
|
|
68
68
|
}
|
|
69
|
-
let query = `
|
|
70
|
-
SELECT
|
|
71
|
-
n.*
|
|
72
|
-
FROM cr_notification n
|
|
73
|
-
WHERE n.user_id = ? AND n.level_id = ? AND n.level_type = ?
|
|
69
|
+
let query = `
|
|
70
|
+
SELECT
|
|
71
|
+
n.*
|
|
72
|
+
FROM cr_notification n
|
|
73
|
+
WHERE n.user_id = ? AND n.level_id = ? AND n.level_type = ?
|
|
74
74
|
`;
|
|
75
75
|
const params = [id, level_id, level_type];
|
|
76
76
|
if (isReadFilter !== undefined) {
|
|
@@ -104,10 +104,10 @@ let NotificationsService = class NotificationsService {
|
|
|
104
104
|
}
|
|
105
105
|
async markAllAsRead(loggedInUser) {
|
|
106
106
|
const { id, level_id, level_type } = loggedInUser;
|
|
107
|
-
const query = `
|
|
108
|
-
UPDATE cr_notification
|
|
109
|
-
SET is_read = 1
|
|
110
|
-
WHERE user_id = ? AND level_id = ? AND level_type = ? AND is_read = 0
|
|
107
|
+
const query = `
|
|
108
|
+
UPDATE cr_notification
|
|
109
|
+
SET is_read = 1
|
|
110
|
+
WHERE user_id = ? AND level_id = ? AND level_type = ? AND is_read = 0
|
|
111
111
|
`;
|
|
112
112
|
const params = [id, level_id, level_type];
|
|
113
113
|
const result = await this.dataSource.query(query, params);
|
|
@@ -57,27 +57,27 @@ let LoginController = class LoginController {
|
|
|
57
57
|
try {
|
|
58
58
|
const actualState = state.replace('gmail_config:', '');
|
|
59
59
|
const result = await this.integrationService.handleGmailTokensCallback(email, googleAccessToken, googleRefreshToken, actualState);
|
|
60
|
-
return res.send(`<html><body><script>
|
|
61
|
-
window.opener.postMessage({ type: 'CONFIG_SUCCESS' }, '*');
|
|
62
|
-
window.close();
|
|
60
|
+
return res.send(`<html><body><script>
|
|
61
|
+
window.opener.postMessage({ type: 'CONFIG_SUCCESS' }, '*');
|
|
62
|
+
window.close();
|
|
63
63
|
</script> <p>Configuration successful. You can close this window.</p> </body></html>`);
|
|
64
64
|
}
|
|
65
65
|
catch (error) {
|
|
66
|
-
return res.send(`
|
|
67
|
-
<html>
|
|
68
|
-
<body>
|
|
69
|
-
<script>
|
|
70
|
-
if (window.opener) {
|
|
71
|
-
window.opener.postMessage({
|
|
72
|
-
type: "CONFIG_FAILED",
|
|
73
|
-
error: "${error.message || 'Something went wrong'}"
|
|
74
|
-
}, "*");
|
|
75
|
-
}
|
|
76
|
-
window.close();
|
|
77
|
-
</script>
|
|
78
|
-
<p>Configuration failed. Please close this window.</p>
|
|
79
|
-
</body>
|
|
80
|
-
</html>
|
|
66
|
+
return res.send(`
|
|
67
|
+
<html>
|
|
68
|
+
<body>
|
|
69
|
+
<script>
|
|
70
|
+
if (window.opener) {
|
|
71
|
+
window.opener.postMessage({
|
|
72
|
+
type: "CONFIG_FAILED",
|
|
73
|
+
error: "${error.message || 'Something went wrong'}"
|
|
74
|
+
}, "*");
|
|
75
|
+
}
|
|
76
|
+
window.close();
|
|
77
|
+
</script>
|
|
78
|
+
<p>Configuration failed. Please close this window.</p>
|
|
79
|
+
</body>
|
|
80
|
+
</html>
|
|
81
81
|
`);
|
|
82
82
|
}
|
|
83
83
|
}
|
|
@@ -76,10 +76,10 @@ let RoleService = class RoleService extends entity_service_impl_service_1.Entity
|
|
|
76
76
|
if (!existingRole) {
|
|
77
77
|
return { success: false, error: 'Role not found' };
|
|
78
78
|
}
|
|
79
|
-
const associatedUsers = await this.entityManager.query(`SELECT map.*
|
|
80
|
-
FROM sso_user_role_mapping map
|
|
81
|
-
JOIN sso_user usr ON map.user_id = usr.id
|
|
82
|
-
WHERE usr.status = ${resolveStatus.id}
|
|
79
|
+
const associatedUsers = await this.entityManager.query(`SELECT map.*
|
|
80
|
+
FROM sso_user_role_mapping map
|
|
81
|
+
JOIN sso_user usr ON map.user_id = usr.id
|
|
82
|
+
WHERE usr.status = ${resolveStatus.id}
|
|
83
83
|
and map.role_id = ${existingRole?.id}`);
|
|
84
84
|
if (associatedUsers.length > 0) {
|
|
85
85
|
return {
|
|
@@ -71,8 +71,8 @@ let UserSessionService = class UserSessionService {
|
|
|
71
71
|
};
|
|
72
72
|
let getUserDetails;
|
|
73
73
|
if (currentUser) {
|
|
74
|
-
getUserDetails = await this.dataSource.query(`
|
|
75
|
-
SELECT * from sso_user where id = ?
|
|
74
|
+
getUserDetails = await this.dataSource.query(`
|
|
75
|
+
SELECT * from sso_user where id = ?
|
|
76
76
|
`, [currentUser.id]);
|
|
77
77
|
}
|
|
78
78
|
if (getUserDetails[0].organization_id == 1 && payload.level_type == 'ORG') {
|