rez_core 5.0.63 → 5.0.65
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/.prettierrc +3 -3
- package/.vscode/extensions.json +5 -0
- 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 +22 -22
- 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 +26 -26
- package/dist/module/listmaster/service/list-master-item.service.js +2 -2
- package/dist/module/mapper/service/field-mapper.service.js +4 -4
- package/dist/module/meta/repository/entity-attribute-update.repository.js +3 -3
- package/dist/module/meta/repository/entity-master.repository.js +6 -6
- package/dist/module/meta/service/entity-dynamic.service.js +44 -44
- package/dist/module/meta/service/entity-list.service.js +3 -3
- package/dist/module/meta/service/entity-relation.service.js +9 -9
- package/dist/module/meta/service/entity-service-impl.service.js +3 -3
- package/dist/module/meta/service/resolver.service.js +33 -33
- package/dist/module/module/repository/menu.repository.js +17 -17
- package/dist/module/notification/service/notification.service.js +10 -10
- 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 +12 -12
- 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 +20 -20
- package/dist/module/workflow/repository/stage-movement.repository.js +17 -17
- package/dist/module/workflow/repository/stage.repository.js +8 -8
- package/dist/module/workflow/service/action-template-mapping.service.js +13 -13
- package/dist/module/workflow/service/action.service.js +7 -7
- package/dist/module/workflow/service/entity-modification.service.js +2 -2
- package/dist/module/workflow/service/populate-workflow.service.js +2 -1
- package/dist/module/workflow/service/populate-workflow.service.js.map +1 -1
- 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 +18 -18
- package/dist/module/workflow/service/workflow-list-master.service.js +15 -15
- package/dist/module/workflow/service/workflow-meta.service.js +26 -26
- package/dist/module/workflow-automation/service/schedule-handler.service.js +9 -9
- package/dist/module/workflow-schedule/processors/schedule.processor.js +4 -4
- package/dist/module/workflow-schedule/service/workflow-schedule.service.js +9 -9
- 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 +124 -124
- package/src/app.controller.ts +12 -12
- package/src/app.module.ts +66 -66
- package/src/app.service.ts +8 -8
- package/src/config/bull.config.ts +69 -69
- package/src/config/config.module.ts +17 -17
- package/src/config/database.config.ts +48 -48
- package/src/constant/global.constant.ts +67 -67
- package/src/core.module.ts +91 -91
- 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 +278 -278
- 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/entity_json/controller/entity_json.controller.ts +47 -47
- package/src/module/entity_json/entity/entityJson.entity.ts +39 -39
- package/src/module/entity_json/entity_json.module.ts +18 -18
- package/src/module/entity_json/service/entityJson.repository.ts +37 -37
- package/src/module/entity_json/service/entity_json.service.ts +234 -234
- 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 +1239 -1239
- 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 +2633 -2633
- package/src/module/integration/service/oauth.service.ts +224 -224
- package/src/module/integration/service/wrapper.service.ts +701 -701
- 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 +73 -73
- package/src/module/layout_preference/entity/layout_preference.entity.ts +28 -28
- package/src/module/layout_preference/layout_preference.module.ts +22 -22
- package/src/module/layout_preference/repository/layout_preference.repository.ts +65 -65
- package/src/module/layout_preference/service/layout_preference.service.ts +191 -191
- 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/linked_attributes/controller/linked_attributes.controller.ts +37 -37
- package/src/module/linked_attributes/entity/linked_attribute.entity.ts +51 -51
- package/src/module/linked_attributes/linked_attributes.module.ts +16 -16
- package/src/module/linked_attributes/repository/linked_attribute.repository.ts +12 -12
- package/src/module/linked_attributes/service/linked_attributes.service.ts +75 -75
- package/src/module/listmaster/controller/list-master.controller.ts +230 -230
- package/src/module/listmaster/entity/list-master-items.entity.ts +43 -43
- package/src/module/listmaster/entity/list-master.entity.ts +33 -33
- package/src/module/listmaster/listmaster.module.ts +46 -46
- package/src/module/listmaster/repository/list-master-items.repository.ts +173 -173
- 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 +535 -535
- package/src/module/mapper/controller/field-mapper.controller.ts +76 -76
- package/src/module/mapper/controller/mapper.controller.ts +20 -20
- 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 +35 -35
- 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 +32 -32
- package/src/module/mapper/service/field-mapper.service.ts +271 -271
- package/src/module/mapper/service/mapper.service.ts +81 -81
- 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 +84 -84
- package/src/module/meta/controller/entity-dynamic.controller.ts +125 -125
- package/src/module/meta/controller/entity-master.controller.ts +41 -41
- package/src/module/meta/controller/entity-relation.controller.ts +36 -36
- package/src/module/meta/controller/entity.controller.ts +392 -392
- package/src/module/meta/controller/entity.public.controller.ts +75 -75
- package/src/module/meta/controller/media.controller.ts +107 -107
- 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 +92 -92
- package/src/module/meta/entity/base-entity.entity.ts +75 -75
- package/src/module/meta/entity/entity-master.entity.ts +85 -85
- 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 +166 -166
- package/src/module/meta/repository/app-master.repository.ts +20 -20
- package/src/module/meta/repository/attribute-master.repository.ts +138 -138
- package/src/module/meta/repository/entity-attribute-update.repository.ts +44 -44
- package/src/module/meta/repository/entity-master.repository.ts +111 -111
- 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 +130 -130
- package/src/module/meta/service/common.service.ts +9 -9
- package/src/module/meta/service/entity-attribute-update.service.ts +28 -28
- package/src/module/meta/service/entity-dynamic.service.ts +821 -821
- package/src/module/meta/service/entity-list.service.ts +205 -205
- package/src/module/meta/service/entity-master.service.ts +171 -171
- package/src/module/meta/service/entity-realation-data.service.ts +9 -9
- package/src/module/meta/service/entity-relation.service.ts +87 -87
- package/src/module/meta/service/entity-service-impl.service.ts +525 -525
- 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 +187 -187
- 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 +507 -507
- package/src/module/meta/service/populate-meta.service.ts +222 -222
- package/src/module/meta/service/preference.service.ts +16 -16
- package/src/module/meta/service/resolver.service.ts +317 -317
- 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 +127 -127
- package/src/module/microservice-client/microservice-clients.module.ts +13 -13
- package/src/module/microservice-client/service/microservice-client-factory.ts +37 -37
- package/src/module/microservice-client/service/microservice-clients.ts +4 -4
- 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 +191 -191
- 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 +195 -195
- 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 +160 -160
- package/src/module/notification/service/otp.service.ts +133 -133
- 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 +198 -198
- 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 +73 -73
- package/src/module/user/entity/user.entity.ts +59 -59
- 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 +326 -326
- 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 +368 -368
- 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 +111 -111
- package/src/module/workflow/controller/activity-log.controller.ts +55 -55
- package/src/module/workflow/controller/comm-template.controller.ts +43 -43
- 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 +53 -53
- 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 +334 -334
- package/src/module/workflow/repository/action.repository.ts +334 -334
- package/src/module/workflow/repository/activity-log.repository.ts +148 -148
- 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 +197 -197
- package/src/module/workflow/repository/stage-movement.repository.ts +246 -246
- package/src/module/workflow/repository/stage.repository.ts +172 -172
- package/src/module/workflow/repository/task.repository.ts +134 -134
- 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 +131 -131
- package/src/module/workflow/service/action.service.ts +279 -279
- package/src/module/workflow/service/activity-log.service.ts +107 -107
- package/src/module/workflow/service/comm-template.service.ts +180 -180
- package/src/module/workflow/service/entity-modification.service.ts +61 -61
- package/src/module/workflow/service/form-master.service.ts +35 -35
- package/src/module/workflow/service/populate-workflow.service.ts +333 -331
- package/src/module/workflow/service/stage-action-mapping.service.ts +5 -5
- package/src/module/workflow/service/stage-group.service.ts +342 -342
- package/src/module/workflow/service/stage.service.ts +199 -199
- package/src/module/workflow/service/task.service.ts +540 -540
- package/src/module/workflow/service/workflow-list-master.service.ts +60 -60
- package/src/module/workflow/service/workflow-meta.service.ts +654 -654
- package/src/module/workflow/service/workflow.service.ts +209 -209
- package/src/module/workflow/workflow.module.ts +180 -180
- package/src/module/workflow-automation/SCHEDULING_GUIDE.md +145 -145
- package/src/module/workflow-automation/controller/workflow-automation.controller.ts +43 -43
- package/src/module/workflow-automation/entity/workflow-automation-action.entity.ts +26 -26
- package/src/module/workflow-automation/entity/workflow-automation.entity.ts +40 -40
- 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/schedule-handler.service.ts +168 -168
- package/src/module/workflow-automation/service/workflow-automation-engine.service.ts +224 -224
- package/src/module/workflow-automation/service/workflow-automation.service.ts +515 -515
- package/src/module/workflow-automation/workflow-automation.module.ts +54 -54
- package/src/module/workflow-schedule/INSTALLATION.md +244 -244
- package/src/module/workflow-schedule/MULTI_PROJECT_GUIDE.md +196 -196
- package/src/module/workflow-schedule/README.md +422 -422
- package/src/module/workflow-schedule/constants/schedule.constants.ts +48 -48
- package/src/module/workflow-schedule/controller/workflow-schedule.controller.ts +255 -255
- package/src/module/workflow-schedule/docs/CLAUDE_CODE_GUIDE.md +510 -510
- package/src/module/workflow-schedule/docs/CLAUDE_CODE_PROMPT.md +362 -362
- package/src/module/workflow-schedule/docs/RUN_CLAUDE_CODE.sh +68 -68
- package/src/module/workflow-schedule/dto/create-schedule.dto.ts +147 -147
- package/src/module/workflow-schedule/dto/get-execution-logs.dto.ts +119 -119
- package/src/module/workflow-schedule/dto/update-schedule.dto.ts +96 -96
- package/src/module/workflow-schedule/entities/scheduled-workflow.entity.ts +148 -148
- package/src/module/workflow-schedule/entities/workflow-execution-log.entity.ts +154 -154
- package/src/module/workflow-schedule/interfaces/schedule-job-data.interface.ts +53 -53
- package/src/module/workflow-schedule/interfaces/workflow-schedule-options.interface.ts +12 -12
- package/src/module/workflow-schedule/processors/schedule.processor.ts +584 -584
- package/src/module/workflow-schedule/service/workflow-schedule.service.ts +600 -600
- package/src/module/workflow-schedule/workflow-schedule.module.ts +67 -67
- package/src/resources/dev.properties.yaml +31 -31
- 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 +31 -31
- package/src/table.config.ts +133 -133
- 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 +88 -88
- 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 +27 -27
- package/tsconfig.build.json +4 -4
- package/tsconfig.json +24 -24
- package/.claude/settings.local.json +0 -26
- package/.idea/250218_nodejs_core.iml +0 -9
- package/.idea/codeStyles/Project.xml +0 -59
- package/.idea/codeStyles/codeStyleConfig.xml +0 -5
- package/.idea/copilot.data.migration.agent.xml +0 -6
- package/.idea/copilot.data.migration.ask.xml +0 -6
- package/.idea/copilot.data.migration.ask2agent.xml +0 -6
- package/.idea/copilot.data.migration.edit.xml +0 -6
- package/.idea/inspectionProfiles/Project_Default.xml +0 -6
- package/.idea/misc.xml +0 -6
- package/.idea/modules.xml +0 -8
- package/.idea/prettier.xml +0 -6
- package/.idea/vcs.xml +0 -6
- package/server.log +0 -850
|
@@ -43,19 +43,19 @@ let EntityDynamicService = class EntityDynamicService {
|
|
|
43
43
|
if (!entityData.entity_type)
|
|
44
44
|
entityData.entity_type = entityType;
|
|
45
45
|
}
|
|
46
|
-
const statusList = await this.dataSource.query(`
|
|
47
|
-
SELECT id
|
|
48
|
-
FROM frm_list_master_items
|
|
49
|
-
WHERE code = $1
|
|
50
|
-
AND organization_id = $2
|
|
46
|
+
const statusList = await this.dataSource.query(`
|
|
47
|
+
SELECT id
|
|
48
|
+
FROM frm_list_master_items
|
|
49
|
+
WHERE code = $1
|
|
50
|
+
AND organization_id = $2
|
|
51
51
|
`, [global_constant_1.STATUS_ACTIVE, organizationId]);
|
|
52
52
|
if (!entityData.status)
|
|
53
53
|
entityData.status = statusList[0]?.id;
|
|
54
54
|
if (!entityData.code && entityData.entity_type) {
|
|
55
|
-
const result = await this.dataSource.query(`
|
|
56
|
-
SELECT MAX(id) AS max_seq_no
|
|
57
|
-
FROM ${tableName}
|
|
58
|
-
WHERE entity_type = $1
|
|
55
|
+
const result = await this.dataSource.query(`
|
|
56
|
+
SELECT MAX(id) AS max_seq_no
|
|
57
|
+
FROM ${tableName}
|
|
58
|
+
WHERE entity_type = $1
|
|
59
59
|
`, [entityData.entity_type]);
|
|
60
60
|
let maxSeq = Number(result?.[0]?.max_seq_no) || 0;
|
|
61
61
|
maxSeq++;
|
|
@@ -99,18 +99,18 @@ let EntityDynamicService = class EntityDynamicService {
|
|
|
99
99
|
}
|
|
100
100
|
const colList = columns.map((c) => `"${c}"`).join(', ');
|
|
101
101
|
const placeholderList = placeholders.join(', ');
|
|
102
|
-
const sql = `
|
|
103
|
-
INSERT INTO ${tableName} (${colList})
|
|
104
|
-
VALUES (${placeholderList}) RETURNING id
|
|
102
|
+
const sql = `
|
|
103
|
+
INSERT INTO ${tableName} (${colList})
|
|
104
|
+
VALUES (${placeholderList}) RETURNING id
|
|
105
105
|
`;
|
|
106
106
|
const result = await this.dataSource.query(sql, values);
|
|
107
107
|
return result[0];
|
|
108
108
|
}
|
|
109
109
|
async createEntityWithRelation(entityType, data, loggedInUser) {
|
|
110
110
|
const organizationId = loggedInUser.organization_id;
|
|
111
|
-
const getRelation = await this.dataSource.query(`SELECT *
|
|
112
|
-
FROM frm_entity_relation
|
|
113
|
-
WHERE organization_id = $1
|
|
111
|
+
const getRelation = await this.dataSource.query(`SELECT *
|
|
112
|
+
FROM frm_entity_relation
|
|
113
|
+
WHERE organization_id = $1
|
|
114
114
|
AND source_entity_type = $2`, [organizationId, entityType]);
|
|
115
115
|
const { mappedEntities, ...mainData } = data;
|
|
116
116
|
const createdEntityData = await this.createEntity(entityType, mainData, loggedInUser);
|
|
@@ -131,8 +131,8 @@ let EntityDynamicService = class EntityDynamicService {
|
|
|
131
131
|
entity_type: targetEntityType,
|
|
132
132
|
};
|
|
133
133
|
const createdRelatedEntity = await this.createEntity(targetEntityType, itemWithRef, loggedInUser, mainID);
|
|
134
|
-
await this.dataSource.query(`INSERT INTO frm_entity_relation_data (organization_id, source_entity_id, source_entity_type,
|
|
135
|
-
target_entity_id, target_entity_type, relation_type)
|
|
134
|
+
await this.dataSource.query(`INSERT INTO frm_entity_relation_data (organization_id, source_entity_id, source_entity_type,
|
|
135
|
+
target_entity_id, target_entity_type, relation_type)
|
|
136
136
|
VALUES ($1, $2, $3, $4, $5, $6)`, [
|
|
137
137
|
organizationId,
|
|
138
138
|
mainID,
|
|
@@ -154,9 +154,9 @@ let EntityDynamicService = class EntityDynamicService {
|
|
|
154
154
|
}
|
|
155
155
|
async getEntityWithRelation(entityType, id, loggedInUser) {
|
|
156
156
|
const mainEntity = await this.getEntityByDataSource(entityType, id, loggedInUser);
|
|
157
|
-
const relatedEntities = await this.dataSource.query(`SELECT *
|
|
158
|
-
FROM frm_entity_relation_data
|
|
159
|
-
WHERE source_entity_id = $1
|
|
157
|
+
const relatedEntities = await this.dataSource.query(`SELECT *
|
|
158
|
+
FROM frm_entity_relation_data
|
|
159
|
+
WHERE source_entity_id = $1
|
|
160
160
|
AND target_entity_type IN (SELECT target_entity_type FROM frm_entity_relation WHERE source_entity_type = $2)`, [id, entityType]);
|
|
161
161
|
const response = {
|
|
162
162
|
entity_type: entityType,
|
|
@@ -186,9 +186,9 @@ let EntityDynamicService = class EntityDynamicService {
|
|
|
186
186
|
const updatedMainEntity = await this.updateEntity(entityType, id, mainData, loggedInUser);
|
|
187
187
|
const updatedRelations = {};
|
|
188
188
|
if (mappedEntities) {
|
|
189
|
-
const getRelationDefs = await this.dataSource.query(`SELECT *
|
|
190
|
-
FROM frm_entity_relation
|
|
191
|
-
WHERE organization_id = $1
|
|
189
|
+
const getRelationDefs = await this.dataSource.query(`SELECT *
|
|
190
|
+
FROM frm_entity_relation
|
|
191
|
+
WHERE organization_id = $1
|
|
192
192
|
AND source_entity_type = $2`, [organizationId, entityType]);
|
|
193
193
|
for (const [targetEntityType, rawEntityData] of Object.entries(mappedEntities)) {
|
|
194
194
|
const relationDef = getRelationDefs.find((r) => r.target_entity_type === targetEntityType);
|
|
@@ -198,10 +198,10 @@ let EntityDynamicService = class EntityDynamicService {
|
|
|
198
198
|
const entityArray = Array.isArray(rawEntityData)
|
|
199
199
|
? rawEntityData
|
|
200
200
|
: [rawEntityData];
|
|
201
|
-
const existingRelationsForType = await this.dataSource.query(`SELECT *
|
|
202
|
-
FROM frm_entity_relation_data
|
|
203
|
-
WHERE source_entity_type = $1
|
|
204
|
-
AND source_entity_id = $2
|
|
201
|
+
const existingRelationsForType = await this.dataSource.query(`SELECT *
|
|
202
|
+
FROM frm_entity_relation_data
|
|
203
|
+
WHERE source_entity_type = $1
|
|
204
|
+
AND source_entity_id = $2
|
|
205
205
|
AND target_entity_type = $3`, [entityType, id, targetEntityType]);
|
|
206
206
|
const updatedEntities = [];
|
|
207
207
|
for (const item of entityArray) {
|
|
@@ -216,9 +216,9 @@ let EntityDynamicService = class EntityDynamicService {
|
|
|
216
216
|
const createdEntity = await this.createEntity(targetEntityType, item, loggedInUser, Number(id));
|
|
217
217
|
targetEntityId = createdEntity.insertId || createdEntity.id;
|
|
218
218
|
entityData = await this.getEntity(targetEntityType, targetEntityId, loggedInUser);
|
|
219
|
-
await this.dataSource.query(`INSERT INTO frm_entity_relation_data
|
|
220
|
-
(organization_id, source_entity_id, source_entity_type, target_entity_id, target_entity_type,
|
|
221
|
-
relation_type)
|
|
219
|
+
await this.dataSource.query(`INSERT INTO frm_entity_relation_data
|
|
220
|
+
(organization_id, source_entity_id, source_entity_type, target_entity_id, target_entity_type,
|
|
221
|
+
relation_type)
|
|
222
222
|
VALUES ($1, $2, $3, $4, $5, $6)`, [
|
|
223
223
|
organizationId,
|
|
224
224
|
id,
|
|
@@ -302,10 +302,10 @@ let EntityDynamicService = class EntityDynamicService {
|
|
|
302
302
|
}
|
|
303
303
|
const idPlaceholder = `$${idx}`;
|
|
304
304
|
values.push(id);
|
|
305
|
-
const updateQuery = `
|
|
306
|
-
UPDATE ${tableName}
|
|
307
|
-
SET ${updates.join(', ')}
|
|
308
|
-
WHERE id = ${idPlaceholder}
|
|
305
|
+
const updateQuery = `
|
|
306
|
+
UPDATE ${tableName}
|
|
307
|
+
SET ${updates.join(', ')}
|
|
308
|
+
WHERE id = ${idPlaceholder}
|
|
309
309
|
`;
|
|
310
310
|
return await this.dataSource.query(updateQuery, values);
|
|
311
311
|
}
|
|
@@ -316,8 +316,8 @@ let EntityDynamicService = class EntityDynamicService {
|
|
|
316
316
|
const columns = validAttributes
|
|
317
317
|
.map((attr) => `${attr.attribute_key}`)
|
|
318
318
|
.join(', ');
|
|
319
|
-
const selectQuery = `SELECT ${columns}
|
|
320
|
-
FROM ${dataSource}
|
|
319
|
+
const selectQuery = `SELECT ${columns}
|
|
320
|
+
FROM ${dataSource}
|
|
321
321
|
WHERE id = $1`;
|
|
322
322
|
const result = await this.dataSource.query(selectQuery, [id]);
|
|
323
323
|
if (!result.length)
|
|
@@ -346,8 +346,8 @@ let EntityDynamicService = class EntityDynamicService {
|
|
|
346
346
|
const columns = validAttributes
|
|
347
347
|
.map((attr) => `t.${attr.attribute_key}`)
|
|
348
348
|
.join(', ');
|
|
349
|
-
const selectQuery = `SELECT ${columns}
|
|
350
|
-
FROM ${tableName} t
|
|
349
|
+
const selectQuery = `SELECT ${columns}
|
|
350
|
+
FROM ${tableName} t
|
|
351
351
|
WHERE id = $1`;
|
|
352
352
|
const result = await this.dataSource.query(selectQuery, [id]);
|
|
353
353
|
if (!result.length)
|
|
@@ -409,16 +409,16 @@ let EntityDynamicService = class EntityDynamicService {
|
|
|
409
409
|
async deleteEntity(entityType, id, loggedInUser) {
|
|
410
410
|
const organizationId = loggedInUser.organization_id;
|
|
411
411
|
const tableName = await this.getTableName(entityType, organizationId);
|
|
412
|
-
const deleteQuery = `DELETE
|
|
413
|
-
FROM \`${tableName}\`
|
|
412
|
+
const deleteQuery = `DELETE
|
|
413
|
+
FROM \`${tableName}\`
|
|
414
414
|
WHERE id = $1`;
|
|
415
415
|
const result = await this.dataSource.query(deleteQuery, [id]);
|
|
416
416
|
return result;
|
|
417
417
|
}
|
|
418
418
|
async getEntitiesDropdownList(loggedInUser, appcode) {
|
|
419
419
|
const organizationId = loggedInUser.organization_id;
|
|
420
|
-
let query = `SELECT name as label, mapped_entity_type as value
|
|
421
|
-
FROM frm_entity_master
|
|
420
|
+
let query = `SELECT name as label, mapped_entity_type as value
|
|
421
|
+
FROM frm_entity_master
|
|
422
422
|
WHERE organization_id = $1`;
|
|
423
423
|
const params = [organizationId];
|
|
424
424
|
if (appcode) {
|
|
@@ -435,8 +435,8 @@ let EntityDynamicService = class EntityDynamicService {
|
|
|
435
435
|
throw new Error(`Entity type '${entityType}' not found in frm_entity_master for org '${organizationId}'`);
|
|
436
436
|
}
|
|
437
437
|
const tableName = result.db_table_name;
|
|
438
|
-
const seqResult = await this.dataSource.query(`SELECT MAX(id) AS max_seq_no
|
|
439
|
-
FROM ${tableName}
|
|
438
|
+
const seqResult = await this.dataSource.query(`SELECT MAX(id) AS max_seq_no
|
|
439
|
+
FROM ${tableName}
|
|
440
440
|
WHERE entity_type = $1`, [entityType]);
|
|
441
441
|
let maxSeqNo = seqResult?.[0]?.max_seq_no
|
|
442
442
|
? 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 max(id) as seq_no
|
|
126
|
+
const query = `SELECT max(id) as seq_no
|
|
127
127
|
FROM ${tableName} WHERE 1=1 `;
|
|
128
128
|
const argsObjectList = [];
|
|
129
129
|
const result = await this.entityManager.query(query, argsObjectList);
|
|
@@ -21,8 +21,8 @@ let EntityRelationService = class EntityRelationService extends entity_service_i
|
|
|
21
21
|
this.entityMasterRepo = entityMasterRepo;
|
|
22
22
|
}
|
|
23
23
|
async getEntityRelations(entityType, loggedInUser, includeSelf = false) {
|
|
24
|
-
const relations = await this.dataSource.query(`SELECT name as label, target_entity_type as value, id
|
|
25
|
-
FROM frm_entity_relation
|
|
24
|
+
const relations = await this.dataSource.query(`SELECT name as label, target_entity_type as value, id
|
|
25
|
+
FROM frm_entity_relation
|
|
26
26
|
WHERE source_entity_type = $1 AND organization_id = $2`, [entityType, loggedInUser.organization_id]);
|
|
27
27
|
if (includeSelf) {
|
|
28
28
|
const entity = await this.entityMasterRepo.getEntityByMappedEntityType(entityType, loggedInUser.organization_id);
|
|
@@ -53,13 +53,13 @@ let EntityRelationService = class EntityRelationService extends entity_service_i
|
|
|
53
53
|
.join(", ");
|
|
54
54
|
params.push(Number(orgId));
|
|
55
55
|
const orgPlaceholder = `$${paramIndex}`;
|
|
56
|
-
const sql = `
|
|
57
|
-
SELECT DISTINCT source_entity_id
|
|
58
|
-
FROM frm_entity_relation_data
|
|
59
|
-
WHERE source_entity_type = ${sourceEntityParam}
|
|
60
|
-
AND target_entity_type = ${targetEntityParam}
|
|
61
|
-
AND target_entity_id IN (${idPlaceholders})
|
|
62
|
-
AND organization_id = ${orgPlaceholder}
|
|
56
|
+
const sql = `
|
|
57
|
+
SELECT DISTINCT source_entity_id
|
|
58
|
+
FROM frm_entity_relation_data
|
|
59
|
+
WHERE source_entity_type = ${sourceEntityParam}
|
|
60
|
+
AND target_entity_type = ${targetEntityParam}
|
|
61
|
+
AND target_entity_id IN (${idPlaceholders})
|
|
62
|
+
AND organization_id = ${orgPlaceholder}
|
|
63
63
|
`;
|
|
64
64
|
const rows = await this.dataSource.query(sql, params);
|
|
65
65
|
return rows.map((r) => Number(r.source_entity_id));
|
|
@@ -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 frm_list_master_items
|
|
55
|
-
WHERE code = $1
|
|
53
|
+
const statusList = await repo.query(`SELECT id
|
|
54
|
+
FROM frm_list_master_items
|
|
55
|
+
WHERE code = $1
|
|
56
56
|
AND organization_id = $2`, [global_constant_1.STATUS_ACTIVE, loggedInUser?.organization_id || 0]);
|
|
57
57
|
console.log('Status List:', statusList);
|
|
58
58
|
console.log(`status_code,${global_constant_1.STATUS_ACTIVE},statusList, ${loggedInUser?.organization_id}`);
|
|
@@ -94,17 +94,17 @@ let ResolverService = class ResolverService {
|
|
|
94
94
|
if (rawValue === null || rawValue === undefined || rawValue === '') {
|
|
95
95
|
return rawValue;
|
|
96
96
|
}
|
|
97
|
-
const [attr] = await this.dataSource.query(`SELECT *
|
|
98
|
-
FROM frm_entity_attribute
|
|
99
|
-
WHERE mapped_entity_type = $1
|
|
100
|
-
AND organization_id = $2
|
|
97
|
+
const [attr] = await this.dataSource.query(`SELECT *
|
|
98
|
+
FROM frm_entity_attribute
|
|
99
|
+
WHERE mapped_entity_type = $1
|
|
100
|
+
AND organization_id = $2
|
|
101
101
|
AND attribute_key = $3`, [entityType, loggedInUser.organization_id, attrKey]);
|
|
102
102
|
if (!attr)
|
|
103
103
|
return rawValue;
|
|
104
104
|
if (attr.data_source_type === 'entity') {
|
|
105
|
-
const [entityDef] = await this.dataSource.query(`SELECT *
|
|
106
|
-
FROM frm_entity_master
|
|
107
|
-
WHERE mapped_entity_type = $1
|
|
105
|
+
const [entityDef] = await this.dataSource.query(`SELECT *
|
|
106
|
+
FROM frm_entity_master
|
|
107
|
+
WHERE mapped_entity_type = $1
|
|
108
108
|
AND organization_id = $2`, [attr.datasource_list, loggedInUser.organization_id]);
|
|
109
109
|
if (!entityDef)
|
|
110
110
|
return rawValue;
|
|
@@ -113,12 +113,12 @@ let ResolverService = class ResolverService {
|
|
|
113
113
|
const resolvedValues = [];
|
|
114
114
|
for (const code of rawValue) {
|
|
115
115
|
const query = tableName === 'sso_organization'
|
|
116
|
-
? `SELECT *
|
|
117
|
-
FROM ${tableName}
|
|
116
|
+
? `SELECT *
|
|
117
|
+
FROM ${tableName}
|
|
118
118
|
WHERE code = $1`
|
|
119
|
-
: `SELECT *
|
|
120
|
-
FROM ${tableName}
|
|
121
|
-
WHERE id = $1
|
|
119
|
+
: `SELECT *
|
|
120
|
+
FROM ${tableName}
|
|
121
|
+
WHERE id = $1
|
|
122
122
|
AND organization_id = $2`;
|
|
123
123
|
const params = tableName === 'sso_organization'
|
|
124
124
|
? [code]
|
|
@@ -130,12 +130,12 @@ let ResolverService = class ResolverService {
|
|
|
130
130
|
}
|
|
131
131
|
else {
|
|
132
132
|
const query = tableName === 'sso_organization'
|
|
133
|
-
? `SELECT *
|
|
134
|
-
FROM ${tableName}
|
|
133
|
+
? `SELECT *
|
|
134
|
+
FROM ${tableName}
|
|
135
135
|
WHERE id = $1`
|
|
136
|
-
: `SELECT *
|
|
137
|
-
FROM ${tableName}
|
|
138
|
-
WHERE id = $1
|
|
136
|
+
: `SELECT *
|
|
137
|
+
FROM ${tableName}
|
|
138
|
+
WHERE id = $1
|
|
139
139
|
AND organization_id = $2`;
|
|
140
140
|
const params = tableName === 'sso_organization'
|
|
141
141
|
? [rawValue]
|
|
@@ -178,28 +178,28 @@ let ResolverService = class ResolverService {
|
|
|
178
178
|
displayValue === '') {
|
|
179
179
|
return displayValue;
|
|
180
180
|
}
|
|
181
|
-
const [attr] = await this.dataSource.query(`SELECT *
|
|
182
|
-
FROM frm_entity_attribute
|
|
183
|
-
WHERE mapped_entity_type = $1
|
|
184
|
-
AND organization_id = $2
|
|
181
|
+
const [attr] = await this.dataSource.query(`SELECT *
|
|
182
|
+
FROM frm_entity_attribute
|
|
183
|
+
WHERE mapped_entity_type = $1
|
|
184
|
+
AND organization_id = $2
|
|
185
185
|
AND attribute_key = $3`, [entityType, loggedInUser.organization_id, attrKey]);
|
|
186
186
|
if (!attr)
|
|
187
187
|
return displayValue;
|
|
188
188
|
if (attr.data_source_type === 'entity') {
|
|
189
|
-
const [entityDef] = await this.dataSource.query(`SELECT *
|
|
190
|
-
FROM frm_entity_master
|
|
191
|
-
WHERE mapped_entity_type = $1
|
|
189
|
+
const [entityDef] = await this.dataSource.query(`SELECT *
|
|
190
|
+
FROM frm_entity_master
|
|
191
|
+
WHERE mapped_entity_type = $1
|
|
192
192
|
AND organization_id = $2`, [attr.datasource_list, loggedInUser.organization_id]);
|
|
193
193
|
if (!entityDef)
|
|
194
194
|
return displayValue;
|
|
195
195
|
const tableName = entityDef.db_table_name;
|
|
196
196
|
const query = tableName === 'sso_organization'
|
|
197
|
-
? `SELECT id
|
|
198
|
-
FROM ${tableName}
|
|
197
|
+
? `SELECT id
|
|
198
|
+
FROM ${tableName}
|
|
199
199
|
WHERE ${attr.data_source_attribute} = $1`
|
|
200
|
-
: `SELECT id
|
|
201
|
-
FROM ${tableName}
|
|
202
|
-
WHERE ${attr.data_source_attribute} = $1
|
|
200
|
+
: `SELECT id
|
|
201
|
+
FROM ${tableName}
|
|
202
|
+
WHERE ${attr.data_source_attribute} = $1
|
|
203
203
|
AND organization_id = $2`;
|
|
204
204
|
const params = tableName === 'sso_organization'
|
|
205
205
|
? [displayValue]
|
|
@@ -208,10 +208,10 @@ let ResolverService = class ResolverService {
|
|
|
208
208
|
return item?.id ?? displayValue;
|
|
209
209
|
}
|
|
210
210
|
else if (attr.data_source_type === 'master') {
|
|
211
|
-
const [item] = await this.dataSource.query(`SELECT id
|
|
212
|
-
FROM frm_list_master_items
|
|
213
|
-
WHERE ${attr.data_source_attribute} = $1
|
|
214
|
-
AND organization_id = $2
|
|
211
|
+
const [item] = await this.dataSource.query(`SELECT id
|
|
212
|
+
FROM frm_list_master_items
|
|
213
|
+
WHERE ${attr.data_source_attribute} = $1
|
|
214
|
+
AND organization_id = $2
|
|
215
215
|
AND listtype = $3`, [displayValue, loggedInUser.organization_id, attr.datasource_list]);
|
|
216
216
|
return item?.id ?? displayValue;
|
|
217
217
|
}
|
|
@@ -62,10 +62,10 @@ let MenuRepository = class MenuRepository extends typeorm_1.Repository {
|
|
|
62
62
|
async getMenuItems(moduleCodes, appcode, levelType) {
|
|
63
63
|
return await this.menuData
|
|
64
64
|
.createQueryBuilder('menu')
|
|
65
|
-
.leftJoin('sso_module', 'module', `
|
|
66
|
-
menu.module_code = module.module_code
|
|
67
|
-
AND LOWER(menu.appcode) = LOWER(module.appcode)
|
|
68
|
-
AND menu.level_type = module.level_type
|
|
65
|
+
.leftJoin('sso_module', 'module', `
|
|
66
|
+
menu.module_code = module.module_code
|
|
67
|
+
AND LOWER(menu.appcode) = LOWER(module.appcode)
|
|
68
|
+
AND menu.level_type = module.level_type
|
|
69
69
|
`)
|
|
70
70
|
.where('menu.module_code IN (:...moduleCodes)', { moduleCodes })
|
|
71
71
|
.andWhere('LOWER(menu.appcode) = LOWER(:appcode)', { appcode })
|
|
@@ -84,16 +84,16 @@ let MenuRepository = class MenuRepository extends typeorm_1.Repository {
|
|
|
84
84
|
async resolveUserRoles(userId, appcode, levelType, levelId) {
|
|
85
85
|
const repo = this.reflectionHelper.getRepoService('UserRoleMapping');
|
|
86
86
|
if (userId) {
|
|
87
|
-
const getUserDetails = await this.dataSource.query(`
|
|
88
|
-
SELECT *
|
|
89
|
-
from sso_user
|
|
90
|
-
where id = $1
|
|
87
|
+
const getUserDetails = await this.dataSource.query(`
|
|
88
|
+
SELECT *
|
|
89
|
+
from sso_user
|
|
90
|
+
where id = $1
|
|
91
91
|
`, [userId]);
|
|
92
|
-
const getUserUrm = await this.dataSource.query(`
|
|
93
|
-
SELECT *
|
|
94
|
-
from sso_user_role_mapping
|
|
95
|
-
where user_id = $1
|
|
96
|
-
and appcode = $2
|
|
92
|
+
const getUserUrm = await this.dataSource.query(`
|
|
93
|
+
SELECT *
|
|
94
|
+
from sso_user_role_mapping
|
|
95
|
+
where user_id = $1
|
|
96
|
+
and appcode = $2
|
|
97
97
|
`, [userId, appcode]);
|
|
98
98
|
if (getUserDetails.length > 0 &&
|
|
99
99
|
getUserDetails[0].organization_id === 1) {
|
|
@@ -112,10 +112,10 @@ let MenuRepository = class MenuRepository extends typeorm_1.Repository {
|
|
|
112
112
|
if (roles.length)
|
|
113
113
|
return roles.map((r) => r.urm_role_id);
|
|
114
114
|
if (levelType === 'SCH') {
|
|
115
|
-
const [sch] = await this.dataSource.query(`
|
|
116
|
-
SELECT s.brand_id, s.organization_id
|
|
117
|
-
FROM sso_school s
|
|
118
|
-
WHERE s.id = $1
|
|
115
|
+
const [sch] = await this.dataSource.query(`
|
|
116
|
+
SELECT s.brand_id, s.organization_id
|
|
117
|
+
FROM sso_school s
|
|
118
|
+
WHERE s.id = $1
|
|
119
119
|
`, [levelId]);
|
|
120
120
|
const brandId = sch?.brand_id;
|
|
121
121
|
const orgId = sch?.organization_id;
|
|
@@ -67,12 +67,12 @@ let NotificationsService = class NotificationsService {
|
|
|
67
67
|
isReadFilter = isRead ? '1' : '0';
|
|
68
68
|
}
|
|
69
69
|
let paramIndex = 1;
|
|
70
|
-
let sql = `
|
|
71
|
-
SELECT n.*
|
|
72
|
-
FROM frm_notification n
|
|
73
|
-
WHERE n.user_id = $${paramIndex}
|
|
74
|
-
AND n.level_id = $${paramIndex + 1}
|
|
75
|
-
AND n.level_type = $${paramIndex + 2}
|
|
70
|
+
let sql = `
|
|
71
|
+
SELECT n.*
|
|
72
|
+
FROM frm_notification n
|
|
73
|
+
WHERE n.user_id = $${paramIndex}
|
|
74
|
+
AND n.level_id = $${paramIndex + 1}
|
|
75
|
+
AND n.level_type = $${paramIndex + 2}
|
|
76
76
|
`;
|
|
77
77
|
const params = [
|
|
78
78
|
String(id),
|
|
@@ -107,10 +107,10 @@ let NotificationsService = class NotificationsService {
|
|
|
107
107
|
}
|
|
108
108
|
async markAllAsRead(loggedInUser) {
|
|
109
109
|
const { id, level_id, level_type } = loggedInUser;
|
|
110
|
-
const query = `
|
|
111
|
-
UPDATE frm_notification
|
|
112
|
-
SET is_read = 1
|
|
113
|
-
WHERE user_id = $1 AND level_id = $2 AND level_type = $3 AND is_read = 0
|
|
110
|
+
const query = `
|
|
111
|
+
UPDATE frm_notification
|
|
112
|
+
SET is_read = 1
|
|
113
|
+
WHERE user_id = $1 AND level_id = $2 AND level_type = $3 AND is_read = 0
|
|
114
114
|
`;
|
|
115
115
|
const params = [id, level_id, level_type];
|
|
116
116
|
const result = await this.dataSource.query(query, params);
|
|
@@ -58,27 +58,27 @@ let LoginController = class LoginController {
|
|
|
58
58
|
try {
|
|
59
59
|
const actualState = state.replace('gmail_config:', '');
|
|
60
60
|
const result = await this.integrationService.handleGmailTokensCallback(email, googleAccessToken, googleRefreshToken, actualState);
|
|
61
|
-
return res.send(`<html><body><script>
|
|
62
|
-
window.opener.postMessage({ type: 'CONFIG_SUCCESS' }, '*');
|
|
63
|
-
window.close();
|
|
61
|
+
return res.send(`<html><body><script>
|
|
62
|
+
window.opener.postMessage({ type: 'CONFIG_SUCCESS' }, '*');
|
|
63
|
+
window.close();
|
|
64
64
|
</script> <p>Configuration successful. You can close this window.</p> </body></html>`);
|
|
65
65
|
}
|
|
66
66
|
catch (error) {
|
|
67
|
-
return res.send(`
|
|
68
|
-
<html>
|
|
69
|
-
<body>
|
|
70
|
-
<script>
|
|
71
|
-
if (window.opener) {
|
|
72
|
-
window.opener.postMessage({
|
|
73
|
-
type: "CONFIG_FAILED",
|
|
74
|
-
error: "${error.message || 'Something went wrong'}"
|
|
75
|
-
}, "*");
|
|
76
|
-
}
|
|
77
|
-
window.close();
|
|
78
|
-
</script>
|
|
79
|
-
<p>Configuration failed. Please close this window.</p>
|
|
80
|
-
</body>
|
|
81
|
-
</html>
|
|
67
|
+
return res.send(`
|
|
68
|
+
<html>
|
|
69
|
+
<body>
|
|
70
|
+
<script>
|
|
71
|
+
if (window.opener) {
|
|
72
|
+
window.opener.postMessage({
|
|
73
|
+
type: "CONFIG_FAILED",
|
|
74
|
+
error: "${error.message || 'Something went wrong'}"
|
|
75
|
+
}, "*");
|
|
76
|
+
}
|
|
77
|
+
window.close();
|
|
78
|
+
</script>
|
|
79
|
+
<p>Configuration failed. Please close this window.</p>
|
|
80
|
+
</body>
|
|
81
|
+
</html>
|
|
82
82
|
`);
|
|
83
83
|
}
|
|
84
84
|
}
|
|
@@ -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 = $1
|
|
74
|
+
getUserDetails = await this.dataSource.query(`
|
|
75
|
+
SELECT * from sso_user where id = $1
|
|
76
76
|
`, [currentUser.id]);
|
|
77
77
|
}
|
|
78
78
|
if (getUserDetails[0].organization_id == 1 && payload.level_type == 'ORG') {
|
|
@@ -26,10 +26,10 @@ let ActionRepository = class ActionRepository {
|
|
|
26
26
|
}
|
|
27
27
|
async getReasonCode(loggedInUser) {
|
|
28
28
|
const { organization_id } = loggedInUser;
|
|
29
|
-
const result = await this.dataSource.query(`
|
|
30
|
-
SELECT name, type
|
|
31
|
-
FROM frm_list_master
|
|
32
|
-
WHERE organization_id = $1 AND source = 'master'
|
|
29
|
+
const result = await this.dataSource.query(`
|
|
30
|
+
SELECT name, type
|
|
31
|
+
FROM frm_list_master
|
|
32
|
+
WHERE organization_id = $1 AND source = 'master'
|
|
33
33
|
`, [organization_id]);
|
|
34
34
|
const formatted = result.map((item) => ({
|
|
35
35
|
label: item.name,
|
|
@@ -42,10 +42,10 @@ let ActionRepository = class ActionRepository {
|
|
|
42
42
|
if (!list_type) {
|
|
43
43
|
throw new common_1.BadRequestException('list_type is required');
|
|
44
44
|
}
|
|
45
|
-
const result = await this.dataSource.query(`
|
|
46
|
-
SELECT name, id
|
|
47
|
-
FROM frm_list_master_items
|
|
48
|
-
WHERE listtype = $1 AND organization_id = $2
|
|
45
|
+
const result = await this.dataSource.query(`
|
|
46
|
+
SELECT name, id
|
|
47
|
+
FROM frm_list_master_items
|
|
48
|
+
WHERE listtype = $1 AND organization_id = $2
|
|
49
49
|
`, [list_type, organization_id]);
|
|
50
50
|
return result.map((row) => ({
|
|
51
51
|
label: row.name,
|
|
@@ -133,10 +133,10 @@ let ActionRepository = class ActionRepository {
|
|
|
133
133
|
return enrichedResult;
|
|
134
134
|
}
|
|
135
135
|
async getDependentActions(loggedInUser, stage_id, action_id) {
|
|
136
|
-
const stageActions = await this.dataSource.query(`
|
|
137
|
-
SELECT action_id
|
|
138
|
-
FROM frm_wf_stage_action_mapping
|
|
139
|
-
WHERE stage_id = $1
|
|
136
|
+
const stageActions = await this.dataSource.query(`
|
|
137
|
+
SELECT action_id
|
|
138
|
+
FROM frm_wf_stage_action_mapping
|
|
139
|
+
WHERE stage_id = $1
|
|
140
140
|
`, [stage_id]);
|
|
141
141
|
if (!stageActions?.length)
|
|
142
142
|
return [];
|
|
@@ -30,17 +30,17 @@ let CommTemplateRepository = class CommTemplateRepository {
|
|
|
30
30
|
const { organization_id, level_id, level_type } = loggedInUser;
|
|
31
31
|
let is_template;
|
|
32
32
|
if (action_id) {
|
|
33
|
-
const [actionResult] = await this.dataSource.query(`SELECT is_template
|
|
34
|
-
FROM frm_wf_action
|
|
35
|
-
WHERE id = $1 AND organization_id = $2
|
|
33
|
+
const [actionResult] = await this.dataSource.query(`SELECT is_template
|
|
34
|
+
FROM frm_wf_action
|
|
35
|
+
WHERE id = $1 AND organization_id = $2
|
|
36
36
|
LIMIT 1`, [action_id, organization_id]);
|
|
37
37
|
if (!actionResult) {
|
|
38
38
|
throw new Error('Invalid action_id');
|
|
39
39
|
}
|
|
40
40
|
is_template = actionResult.is_template;
|
|
41
|
-
await this.dataSource.query(`UPDATE frm_wf_comm_template
|
|
42
|
-
SET is_template = $1
|
|
43
|
-
WHERE mapped_entity_type = $2
|
|
41
|
+
await this.dataSource.query(`UPDATE frm_wf_comm_template
|
|
42
|
+
SET is_template = $1
|
|
43
|
+
WHERE mapped_entity_type = $2
|
|
44
44
|
AND organization_id = $3 AND level_id = $4 AND level_type=$5`, [is_template, entity_type, organization_id, level_id, level_type]);
|
|
45
45
|
}
|
|
46
46
|
const whereCondition = {
|
|
@@ -17,8 +17,8 @@ let FormMasterRepository = class FormMasterRepository {
|
|
|
17
17
|
this.dataSource = dataSource;
|
|
18
18
|
}
|
|
19
19
|
async getForms(organization_id, source_entity_type) {
|
|
20
|
-
const forms = await this.dataSource.query(`SELECT fm.id as fm_id, fm.name as fm_form_name
|
|
21
|
-
FROM frm_entity_view fm
|
|
20
|
+
const forms = await this.dataSource.query(`SELECT fm.id as fm_id, fm.name as fm_form_name
|
|
21
|
+
FROM frm_entity_view fm
|
|
22
22
|
WHERE fm.organization_id = $1 AND fm.mapped_entity_type = $2`, [organization_id, source_entity_type]);
|
|
23
23
|
const formatted = forms.map((form) => ({
|
|
24
24
|
label: form.fm_form_name,
|