@procxo/shared 1.0.2 → 1.0.4
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/package.json +4 -2
- package/src/config/index.ts +5 -0
- package/src/config/ormconfig.factory.ts +102 -0
- package/src/config/typeorm.config.ts +22 -0
- package/src/core/constant/index.ts +1 -0
- package/src/core/constant/notification-preference.ts +113 -0
- package/src/core/json/core-data/currency.json +8 -0
- package/{dist → src}/core/json/core-data/department.json +38 -38
- package/{dist → src}/core/json/core-data/permission.json +898 -898
- package/src/core/json/core-data/role.json +30 -0
- package/src/core/json/core-data/user.json +12 -0
- package/src/core/json/geographic-data/cities.json +54693 -0
- package/src/core/json/geographic-data/countries.json +31 -0
- package/src/database/entities/activity-logs.entity.ts +31 -0
- package/src/database/entities/address.entity.ts +31 -0
- package/src/database/entities/alert.entity.ts +139 -0
- package/src/database/entities/approval-condition.entity.ts +48 -0
- package/src/database/entities/approval-hierarchy-role.entity.ts +24 -0
- package/src/database/entities/approval-hierarchy-user.entity.ts +24 -0
- package/src/database/entities/approval-hierarchy.entity.ts +59 -0
- package/src/database/entities/approval-journey.entity.ts +75 -0
- package/src/database/entities/approval-level-escalation-user.entity.ts +23 -0
- package/src/database/entities/approval-level-escalation.entity.ts +45 -0
- package/src/database/entities/approval-level-user.entity.ts +25 -0
- package/src/database/entities/approval-level.entity.ts +51 -0
- package/src/database/entities/base.entity.ts +31 -0
- package/src/database/entities/chat.entity.ts +36 -0
- package/src/database/entities/city.entity.ts +25 -0
- package/src/database/entities/client.entity.ts +91 -0
- package/src/database/entities/contact.entity.ts +27 -0
- package/src/database/entities/country.entity.ts +69 -0
- package/src/database/entities/credit-note.entity.ts +88 -0
- package/src/database/entities/currency.entity.ts +21 -0
- package/src/database/entities/department.entity.ts +21 -0
- package/src/database/entities/entitlement.entity.ts +64 -0
- package/src/database/entities/expense.entity.ts +141 -0
- package/src/database/entities/file.entity.ts +22 -0
- package/src/database/entities/fixed-invoice-item.entity.ts +29 -0
- package/src/database/entities/group.entity.ts +21 -0
- package/src/database/entities/gst.entity.ts +32 -0
- package/src/database/entities/holiday.entity.ts +51 -0
- package/{dist/database/entities/index.d.ts → src/database/entities/index.ts} +79 -78
- package/src/database/entities/invoice-template-footer.entity.ts +70 -0
- package/src/database/entities/invoice-template-header.entity.ts +34 -0
- package/src/database/entities/invoice-template-table.entity.ts +83 -0
- package/src/database/entities/invoice-template.entity.ts +119 -0
- package/src/database/entities/invoice.entity.ts +139 -0
- package/src/database/entities/invoice_item.entity.ts +69 -0
- package/src/database/entities/leave-balance.entity.ts +118 -0
- package/src/database/entities/leave-request.entity.ts +155 -0
- package/src/database/entities/leave-type.entity.ts +37 -0
- package/src/database/entities/matter-tag.entity.ts +21 -0
- package/src/database/entities/matter-task-view-filter.entity.ts +21 -0
- package/src/database/entities/matter-team-member.entity.ts +30 -0
- package/src/database/entities/matter.entity.ts +156 -0
- package/src/database/entities/payment.entity.ts +72 -0
- package/src/database/entities/permission.entity.ts +27 -0
- package/src/database/entities/quickbooks-connection.entity.ts +35 -0
- package/src/database/entities/quickbooks-sync-log.entity.ts +79 -0
- package/src/database/entities/role-permission.entity.ts +30 -0
- package/src/database/entities/role-shift.entity.ts +43 -0
- package/src/database/entities/role.entity.ts +30 -0
- package/src/database/entities/sequence-generator.entity.ts +40 -0
- package/src/database/entities/shift.entity.ts +72 -0
- package/src/database/entities/sub-task-tag.entity.ts +22 -0
- package/src/database/entities/subtask-user.entity.ts +21 -0
- package/src/database/entities/subtask.entity.ts +125 -0
- package/src/database/entities/summary-task-status.entity.ts +15 -0
- package/src/database/entities/superset.entity.ts +38 -0
- package/src/database/entities/tag.entity.ts +19 -0
- package/src/database/entities/task-comment.entity.ts +41 -0
- package/src/database/entities/task-milestone.entity.ts +14 -0
- package/src/database/entities/task-remainder.entity.ts +29 -0
- package/src/database/entities/task-tag.entity.ts +22 -0
- package/src/database/entities/task-type.entity.ts +14 -0
- package/src/database/entities/task-user.entity.ts +21 -0
- package/src/database/entities/task.entity.ts +176 -0
- package/src/database/entities/template-task.entity.ts +25 -0
- package/src/database/entities/template.entity.ts +28 -0
- package/src/database/entities/timesheet-comment.entity.ts +45 -0
- package/src/database/entities/timesheet-event.entity.ts +256 -0
- package/src/database/entities/timesheet-summary.entity.ts +101 -0
- package/src/database/entities/timesheet.entity.ts +76 -0
- package/src/database/entities/transfer-ownership.entity.ts +39 -0
- package/src/database/entities/upload-log.entity.ts +78 -0
- package/src/database/entities/user-notification-channel.entity.ts +43 -0
- package/src/database/entities/user-notification-preference.entity.ts +50 -0
- package/src/database/entities/user-role.entity.ts +25 -0
- package/src/database/entities/user-session-history.entity.ts +45 -0
- package/src/database/entities/user-shift.entity.ts +109 -0
- package/src/database/entities/user.entity.ts +198 -0
- package/src/database/index.ts +1 -0
- package/{dist/database/migrations/1770706648232-initialMigration.js → src/database/migrations/1770706648232-initialMigration.ts} +9 -9
- package/src/database/seeder/base.seed.ts +104 -0
- package/src/database/seeder/config/seeder.config.ts +26 -0
- package/src/database/seeder/errors/seeder.error.ts +20 -0
- package/src/database/seeder/seed-runner.ts +200 -0
- package/src/database/seeder/seeds/city.seed.ts +70 -0
- package/src/database/seeder/seeds/country.seed.ts +58 -0
- package/src/database/seeder/seeds/currency.seed.ts +52 -0
- package/src/database/seeder/seeds/department.seed.ts +47 -0
- package/src/database/seeder/seeds/permission.seed.ts +54 -0
- package/src/database/seeder/seeds/role-permission.seed.ts +58 -0
- package/src/database/seeder/seeds/role.seed.ts +52 -0
- package/src/database/seeder/seeds/user-role.seed.ts +72 -0
- package/src/database/seeder/seeds/user.seed.ts +87 -0
- package/{dist/index.d.ts → src/index.ts} +5 -1
- package/src/scripts/create-schema.ts +94 -0
- package/dist/config/index.d.ts +0 -2
- package/dist/config/index.d.ts.map +0 -1
- package/dist/config/index.js +0 -7
- package/dist/config/index.js.map +0 -1
- package/dist/config/ormconfig.factory.d.ts +0 -10
- package/dist/config/ormconfig.factory.d.ts.map +0 -1
- package/dist/config/ormconfig.factory.js +0 -47
- package/dist/config/ormconfig.factory.js.map +0 -1
- package/dist/config/typeorm.config.d.ts +0 -4
- package/dist/config/typeorm.config.d.ts.map +0 -1
- package/dist/config/typeorm.config.js +0 -22
- package/dist/config/typeorm.config.js.map +0 -1
- package/dist/core/constant/index.d.ts +0 -2
- package/dist/core/constant/index.d.ts.map +0 -1
- package/dist/core/constant/index.js +0 -18
- package/dist/core/constant/index.js.map +0 -1
- package/dist/core/constant/notification-preference.d.ts +0 -29
- package/dist/core/constant/notification-preference.d.ts.map +0 -1
- package/dist/core/constant/notification-preference.js +0 -81
- package/dist/core/constant/notification-preference.js.map +0 -1
- package/dist/core/json/core-data/currency.json +0 -8
- package/dist/core/json/core-data/role.json +0 -30
- package/dist/core/json/core-data/user.json +0 -12
- package/dist/core/json/geographic-data/cities.json +0 -54693
- package/dist/core/json/geographic-data/countries.json +0 -31
- package/dist/database/entities/activity-logs.entity.d.ts +0 -11
- package/dist/database/entities/activity-logs.entity.d.ts.map +0 -1
- package/dist/database/entities/activity-logs.entity.js +0 -56
- package/dist/database/entities/activity-logs.entity.js.map +0 -1
- package/dist/database/entities/address.entity.d.ts +0 -13
- package/dist/database/entities/address.entity.d.ts.map +0 -1
- package/dist/database/entities/address.entity.js +0 -63
- package/dist/database/entities/address.entity.js.map +0 -1
- package/dist/database/entities/alert.entity.d.ts +0 -37
- package/dist/database/entities/alert.entity.d.ts.map +0 -1
- package/dist/database/entities/alert.entity.js +0 -171
- package/dist/database/entities/alert.entity.js.map +0 -1
- package/dist/database/entities/approval-condition.entity.d.ts +0 -16
- package/dist/database/entities/approval-condition.entity.d.ts.map +0 -1
- package/dist/database/entities/approval-condition.entity.js +0 -66
- package/dist/database/entities/approval-condition.entity.js.map +0 -1
- package/dist/database/entities/approval-hierarchy-role.entity.d.ts +0 -10
- package/dist/database/entities/approval-hierarchy-role.entity.d.ts.map +0 -1
- package/dist/database/entities/approval-hierarchy-role.entity.js +0 -47
- package/dist/database/entities/approval-hierarchy-role.entity.js.map +0 -1
- package/dist/database/entities/approval-hierarchy-user.entity.d.ts +0 -10
- package/dist/database/entities/approval-hierarchy-user.entity.d.ts.map +0 -1
- package/dist/database/entities/approval-hierarchy-user.entity.js +0 -47
- package/dist/database/entities/approval-hierarchy-user.entity.js.map +0 -1
- package/dist/database/entities/approval-hierarchy.entity.d.ts +0 -22
- package/dist/database/entities/approval-hierarchy.entity.d.ts.map +0 -1
- package/dist/database/entities/approval-hierarchy.entity.js +0 -80
- package/dist/database/entities/approval-hierarchy.entity.js.map +0 -1
- package/dist/database/entities/approval-journey.entity.d.ts +0 -32
- package/dist/database/entities/approval-journey.entity.d.ts.map +0 -1
- package/dist/database/entities/approval-journey.entity.js +0 -125
- package/dist/database/entities/approval-journey.entity.js.map +0 -1
- package/dist/database/entities/approval-level-escalation-user.entity.d.ts +0 -10
- package/dist/database/entities/approval-level-escalation-user.entity.d.ts.map +0 -1
- package/dist/database/entities/approval-level-escalation-user.entity.js +0 -47
- package/dist/database/entities/approval-level-escalation-user.entity.js.map +0 -1
- package/dist/database/entities/approval-level-escalation.entity.d.ts +0 -14
- package/dist/database/entities/approval-level-escalation.entity.d.ts.map +0 -1
- package/dist/database/entities/approval-level-escalation.entity.js +0 -65
- package/dist/database/entities/approval-level-escalation.entity.js.map +0 -1
- package/dist/database/entities/approval-level-user.entity.d.ts +0 -10
- package/dist/database/entities/approval-level-user.entity.d.ts.map +0 -1
- package/dist/database/entities/approval-level-user.entity.js +0 -49
- package/dist/database/entities/approval-level-user.entity.js.map +0 -1
- package/dist/database/entities/approval-level.entity.d.ts +0 -17
- package/dist/database/entities/approval-level.entity.d.ts.map +0 -1
- package/dist/database/entities/approval-level.entity.js +0 -76
- package/dist/database/entities/approval-level.entity.js.map +0 -1
- package/dist/database/entities/base.entity.d.ts +0 -12
- package/dist/database/entities/base.entity.d.ts.map +0 -1
- package/dist/database/entities/base.entity.js +0 -63
- package/dist/database/entities/base.entity.js.map +0 -1
- package/dist/database/entities/chat.entity.d.ts +0 -13
- package/dist/database/entities/chat.entity.d.ts.map +0 -1
- package/dist/database/entities/chat.entity.js +0 -67
- package/dist/database/entities/chat.entity.js.map +0 -1
- package/dist/database/entities/city.entity.d.ts +0 -11
- package/dist/database/entities/city.entity.d.ts.map +0 -1
- package/dist/database/entities/city.entity.js +0 -53
- package/dist/database/entities/city.entity.js.map +0 -1
- package/dist/database/entities/client.entity.d.ts +0 -40
- package/dist/database/entities/client.entity.d.ts.map +0 -1
- package/dist/database/entities/client.entity.js +0 -146
- package/dist/database/entities/client.entity.js.map +0 -1
- package/dist/database/entities/contact.entity.d.ts +0 -12
- package/dist/database/entities/contact.entity.d.ts.map +0 -1
- package/dist/database/entities/contact.entity.js +0 -57
- package/dist/database/entities/contact.entity.js.map +0 -1
- package/dist/database/entities/country.entity.d.ts +0 -26
- package/dist/database/entities/country.entity.d.ts.map +0 -1
- package/dist/database/entities/country.entity.js +0 -127
- package/dist/database/entities/country.entity.js.map +0 -1
- package/dist/database/entities/credit-note.entity.d.ts +0 -35
- package/dist/database/entities/credit-note.entity.d.ts.map +0 -1
- package/dist/database/entities/credit-note.entity.js +0 -144
- package/dist/database/entities/credit-note.entity.js.map +0 -1
- package/dist/database/entities/currency.entity.d.ts +0 -10
- package/dist/database/entities/currency.entity.d.ts.map +0 -1
- package/dist/database/entities/currency.entity.js +0 -47
- package/dist/database/entities/currency.entity.js.map +0 -1
- package/dist/database/entities/department.entity.d.ts +0 -10
- package/dist/database/entities/department.entity.d.ts.map +0 -1
- package/dist/database/entities/department.entity.js +0 -47
- package/dist/database/entities/department.entity.js.map +0 -1
- package/dist/database/entities/entitlement.entity.d.ts +0 -24
- package/dist/database/entities/entitlement.entity.d.ts.map +0 -1
- package/dist/database/entities/entitlement.entity.js +0 -106
- package/dist/database/entities/entitlement.entity.js.map +0 -1
- package/dist/database/entities/expense.entity.d.ts +0 -47
- package/dist/database/entities/expense.entity.d.ts.map +0 -1
- package/dist/database/entities/expense.entity.js +0 -221
- package/dist/database/entities/expense.entity.js.map +0 -1
- package/dist/database/entities/file.entity.d.ts +0 -9
- package/dist/database/entities/file.entity.d.ts.map +0 -1
- package/dist/database/entities/file.entity.js +0 -46
- package/dist/database/entities/file.entity.js.map +0 -1
- package/dist/database/entities/fixed-invoice-item.entity.d.ts +0 -9
- package/dist/database/entities/fixed-invoice-item.entity.d.ts.map +0 -1
- package/dist/database/entities/fixed-invoice-item.entity.js +0 -52
- package/dist/database/entities/fixed-invoice-item.entity.js.map +0 -1
- package/dist/database/entities/group.entity.d.ts +0 -9
- package/dist/database/entities/group.entity.d.ts.map +0 -1
- package/dist/database/entities/group.entity.js +0 -45
- package/dist/database/entities/group.entity.js.map +0 -1
- package/dist/database/entities/gst.entity.d.ts +0 -6
- package/dist/database/entities/gst.entity.d.ts.map +0 -1
- package/dist/database/entities/gst.entity.js +0 -44
- package/dist/database/entities/gst.entity.js.map +0 -1
- package/dist/database/entities/holiday.entity.d.ts +0 -14
- package/dist/database/entities/holiday.entity.d.ts.map +0 -1
- package/dist/database/entities/holiday.entity.js +0 -79
- package/dist/database/entities/holiday.entity.js.map +0 -1
- package/dist/database/entities/index.d.ts.map +0 -1
- package/dist/database/entities/index.js +0 -94
- package/dist/database/entities/index.js.map +0 -1
- package/dist/database/entities/invoice-template-footer.entity.d.ts +0 -24
- package/dist/database/entities/invoice-template-footer.entity.d.ts.map +0 -1
- package/dist/database/entities/invoice-template-footer.entity.js +0 -118
- package/dist/database/entities/invoice-template-footer.entity.js.map +0 -1
- package/dist/database/entities/invoice-template-header.entity.d.ts +0 -14
- package/dist/database/entities/invoice-template-header.entity.d.ts.map +0 -1
- package/dist/database/entities/invoice-template-header.entity.js +0 -68
- package/dist/database/entities/invoice-template-header.entity.js.map +0 -1
- package/dist/database/entities/invoice-template-table.entity.d.ts +0 -35
- package/dist/database/entities/invoice-template-table.entity.d.ts.map +0 -1
- package/dist/database/entities/invoice-template-table.entity.js +0 -143
- package/dist/database/entities/invoice-template-table.entity.js.map +0 -1
- package/dist/database/entities/invoice-template.entity.d.ts +0 -39
- package/dist/database/entities/invoice-template.entity.d.ts.map +0 -1
- package/dist/database/entities/invoice-template.entity.js +0 -157
- package/dist/database/entities/invoice-template.entity.js.map +0 -1
- package/dist/database/entities/invoice.entity.d.ts +0 -46
- package/dist/database/entities/invoice.entity.d.ts.map +0 -1
- package/dist/database/entities/invoice.entity.js +0 -212
- package/dist/database/entities/invoice.entity.js.map +0 -1
- package/dist/database/entities/invoice_item.entity.d.ts +0 -22
- package/dist/database/entities/invoice_item.entity.d.ts.map +0 -1
- package/dist/database/entities/invoice_item.entity.js +0 -89
- package/dist/database/entities/invoice_item.entity.js.map +0 -1
- package/dist/database/entities/leave-balance.entity.d.ts +0 -38
- package/dist/database/entities/leave-balance.entity.d.ts.map +0 -1
- package/dist/database/entities/leave-balance.entity.js +0 -166
- package/dist/database/entities/leave-balance.entity.js.map +0 -1
- package/dist/database/entities/leave-request.entity.d.ts +0 -64
- package/dist/database/entities/leave-request.entity.d.ts.map +0 -1
- package/dist/database/entities/leave-request.entity.js +0 -219
- package/dist/database/entities/leave-request.entity.js.map +0 -1
- package/dist/database/entities/leave-type.entity.d.ts +0 -15
- package/dist/database/entities/leave-type.entity.d.ts.map +0 -1
- package/dist/database/entities/leave-type.entity.js +0 -72
- package/dist/database/entities/leave-type.entity.js.map +0 -1
- package/dist/database/entities/matter-tag.entity.d.ts +0 -10
- package/dist/database/entities/matter-tag.entity.d.ts.map +0 -1
- package/dist/database/entities/matter-tag.entity.js +0 -45
- package/dist/database/entities/matter-tag.entity.js.map +0 -1
- package/dist/database/entities/matter-task-view-filter.entity.d.ts +0 -11
- package/dist/database/entities/matter-task-view-filter.entity.d.ts.map +0 -1
- package/dist/database/entities/matter-task-view-filter.entity.js +0 -42
- package/dist/database/entities/matter-task-view-filter.entity.js.map +0 -1
- package/dist/database/entities/matter-team-member.entity.d.ts +0 -11
- package/dist/database/entities/matter-team-member.entity.d.ts.map +0 -1
- package/dist/database/entities/matter-team-member.entity.js +0 -56
- package/dist/database/entities/matter-team-member.entity.js.map +0 -1
- package/dist/database/entities/matter.entity.d.ts +0 -62
- package/dist/database/entities/matter.entity.d.ts.map +0 -1
- package/dist/database/entities/matter.entity.js +0 -249
- package/dist/database/entities/matter.entity.js.map +0 -1
- package/dist/database/entities/payment.entity.d.ts +0 -26
- package/dist/database/entities/payment.entity.d.ts.map +0 -1
- package/dist/database/entities/payment.entity.js +0 -127
- package/dist/database/entities/payment.entity.js.map +0 -1
- package/dist/database/entities/permission.entity.d.ts +0 -11
- package/dist/database/entities/permission.entity.d.ts.map +0 -1
- package/dist/database/entities/permission.entity.js +0 -52
- package/dist/database/entities/permission.entity.js.map +0 -1
- package/dist/database/entities/quickbooks-connection.entity.d.ts +0 -14
- package/dist/database/entities/quickbooks-connection.entity.d.ts.map +0 -1
- package/dist/database/entities/quickbooks-connection.entity.js +0 -71
- package/dist/database/entities/quickbooks-connection.entity.js.map +0 -1
- package/dist/database/entities/quickbooks-sync-log.entity.d.ts +0 -34
- package/dist/database/entities/quickbooks-sync-log.entity.d.ts.map +0 -1
- package/dist/database/entities/quickbooks-sync-log.entity.js +0 -116
- package/dist/database/entities/quickbooks-sync-log.entity.js.map +0 -1
- package/dist/database/entities/role-permission.entity.d.ts +0 -10
- package/dist/database/entities/role-permission.entity.d.ts.map +0 -1
- package/dist/database/entities/role-permission.entity.js +0 -49
- package/dist/database/entities/role-permission.entity.js.map +0 -1
- package/dist/database/entities/role-shift.entity.d.ts +0 -8
- package/dist/database/entities/role-shift.entity.d.ts.map +0 -1
- package/dist/database/entities/role-shift.entity.js +0 -48
- package/dist/database/entities/role-shift.entity.js.map +0 -1
- package/dist/database/entities/role.entity.d.ts +0 -13
- package/dist/database/entities/role.entity.d.ts.map +0 -1
- package/dist/database/entities/role.entity.js +0 -58
- package/dist/database/entities/role.entity.js.map +0 -1
- package/dist/database/entities/sequence-generator.entity.d.ts +0 -8
- package/dist/database/entities/sequence-generator.entity.d.ts.map +0 -1
- package/dist/database/entities/sequence-generator.entity.js +0 -64
- package/dist/database/entities/sequence-generator.entity.js.map +0 -1
- package/dist/database/entities/shift.entity.d.ts +0 -18
- package/dist/database/entities/shift.entity.d.ts.map +0 -1
- package/dist/database/entities/shift.entity.js +0 -110
- package/dist/database/entities/shift.entity.js.map +0 -1
- package/dist/database/entities/sub-task-tag.entity.d.ts +0 -10
- package/dist/database/entities/sub-task-tag.entity.d.ts.map +0 -1
- package/dist/database/entities/sub-task-tag.entity.js +0 -45
- package/dist/database/entities/sub-task-tag.entity.js.map +0 -1
- package/dist/database/entities/subtask-user.entity.d.ts +0 -10
- package/dist/database/entities/subtask-user.entity.d.ts.map +0 -1
- package/dist/database/entities/subtask-user.entity.js +0 -45
- package/dist/database/entities/subtask-user.entity.js.map +0 -1
- package/dist/database/entities/subtask.entity.d.ts +0 -47
- package/dist/database/entities/subtask.entity.d.ts.map +0 -1
- package/dist/database/entities/subtask.entity.js +0 -185
- package/dist/database/entities/subtask.entity.js.map +0 -1
- package/dist/database/entities/summary-task-status.entity.d.ts +0 -7
- package/dist/database/entities/summary-task-status.entity.d.ts.map +0 -1
- package/dist/database/entities/summary-task-status.entity.js +0 -37
- package/dist/database/entities/summary-task-status.entity.js.map +0 -1
- package/dist/database/entities/superset.entity.d.ts +0 -15
- package/dist/database/entities/superset.entity.d.ts.map +0 -1
- package/dist/database/entities/superset.entity.js +0 -73
- package/dist/database/entities/superset.entity.js.map +0 -1
- package/dist/database/entities/tag.entity.d.ts +0 -10
- package/dist/database/entities/tag.entity.d.ts.map +0 -1
- package/dist/database/entities/tag.entity.js +0 -43
- package/dist/database/entities/tag.entity.js.map +0 -1
- package/dist/database/entities/task-comment.entity.d.ts +0 -15
- package/dist/database/entities/task-comment.entity.d.ts.map +0 -1
- package/dist/database/entities/task-comment.entity.js +0 -67
- package/dist/database/entities/task-comment.entity.js.map +0 -1
- package/dist/database/entities/task-milestone.entity.d.ts +0 -7
- package/dist/database/entities/task-milestone.entity.d.ts.map +0 -1
- package/dist/database/entities/task-milestone.entity.js +0 -36
- package/dist/database/entities/task-milestone.entity.js.map +0 -1
- package/dist/database/entities/task-remainder.entity.d.ts +0 -12
- package/dist/database/entities/task-remainder.entity.d.ts.map +0 -1
- package/dist/database/entities/task-remainder.entity.js +0 -57
- package/dist/database/entities/task-remainder.entity.js.map +0 -1
- package/dist/database/entities/task-tag.entity.d.ts +0 -10
- package/dist/database/entities/task-tag.entity.d.ts.map +0 -1
- package/dist/database/entities/task-tag.entity.js +0 -45
- package/dist/database/entities/task-tag.entity.js.map +0 -1
- package/dist/database/entities/task-type.entity.d.ts +0 -7
- package/dist/database/entities/task-type.entity.d.ts.map +0 -1
- package/dist/database/entities/task-type.entity.js +0 -36
- package/dist/database/entities/task-type.entity.js.map +0 -1
- package/dist/database/entities/task-user.entity.d.ts +0 -10
- package/dist/database/entities/task-user.entity.d.ts.map +0 -1
- package/dist/database/entities/task-user.entity.js +0 -45
- package/dist/database/entities/task-user.entity.js.map +0 -1
- package/dist/database/entities/task.entity.d.ts +0 -53
- package/dist/database/entities/task.entity.d.ts.map +0 -1
- package/dist/database/entities/task.entity.js +0 -259
- package/dist/database/entities/task.entity.js.map +0 -1
- package/dist/database/entities/template-task.entity.d.ts +0 -11
- package/dist/database/entities/template-task.entity.d.ts.map +0 -1
- package/dist/database/entities/template-task.entity.js +0 -53
- package/dist/database/entities/template-task.entity.js.map +0 -1
- package/dist/database/entities/template.entity.d.ts +0 -13
- package/dist/database/entities/template.entity.d.ts.map +0 -1
- package/dist/database/entities/template.entity.js +0 -58
- package/dist/database/entities/template.entity.js.map +0 -1
- package/dist/database/entities/timesheet-comment.entity.d.ts +0 -11
- package/dist/database/entities/timesheet-comment.entity.d.ts.map +0 -1
- package/dist/database/entities/timesheet-comment.entity.js +0 -65
- package/dist/database/entities/timesheet-comment.entity.js.map +0 -1
- package/dist/database/entities/timesheet-event.entity.d.ts +0 -48
- package/dist/database/entities/timesheet-event.entity.d.ts.map +0 -1
- package/dist/database/entities/timesheet-event.entity.js +0 -328
- package/dist/database/entities/timesheet-event.entity.js.map +0 -1
- package/dist/database/entities/timesheet-summary.entity.d.ts +0 -27
- package/dist/database/entities/timesheet-summary.entity.d.ts.map +0 -1
- package/dist/database/entities/timesheet-summary.entity.js +0 -161
- package/dist/database/entities/timesheet-summary.entity.js.map +0 -1
- package/dist/database/entities/timesheet.entity.d.ts +0 -32
- package/dist/database/entities/timesheet.entity.d.ts.map +0 -1
- package/dist/database/entities/timesheet.entity.js +0 -112
- package/dist/database/entities/timesheet.entity.js.map +0 -1
- package/dist/database/entities/transfer-ownership.entity.d.ts +0 -15
- package/dist/database/entities/transfer-ownership.entity.d.ts.map +0 -1
- package/dist/database/entities/transfer-ownership.entity.js +0 -75
- package/dist/database/entities/transfer-ownership.entity.js.map +0 -1
- package/dist/database/entities/upload-log.entity.d.ts +0 -31
- package/dist/database/entities/upload-log.entity.d.ts.map +0 -1
- package/dist/database/entities/upload-log.entity.js +0 -111
- package/dist/database/entities/upload-log.entity.js.map +0 -1
- package/dist/database/entities/user-notification-channel.entity.d.ts +0 -8
- package/dist/database/entities/user-notification-channel.entity.d.ts.map +0 -1
- package/dist/database/entities/user-notification-channel.entity.js +0 -63
- package/dist/database/entities/user-notification-channel.entity.js.map +0 -1
- package/dist/database/entities/user-notification-preference.entity.d.ts +0 -10
- package/dist/database/entities/user-notification-preference.entity.d.ts.map +0 -1
- package/dist/database/entities/user-notification-preference.entity.js +0 -72
- package/dist/database/entities/user-notification-preference.entity.js.map +0 -1
- package/dist/database/entities/user-role.entity.d.ts +0 -10
- package/dist/database/entities/user-role.entity.d.ts.map +0 -1
- package/dist/database/entities/user-role.entity.js +0 -45
- package/dist/database/entities/user-role.entity.js.map +0 -1
- package/dist/database/entities/user-session-history.entity.d.ts +0 -16
- package/dist/database/entities/user-session-history.entity.d.ts.map +0 -1
- package/dist/database/entities/user-session-history.entity.js +0 -78
- package/dist/database/entities/user-session-history.entity.js.map +0 -1
- package/dist/database/entities/user-shift.entity.d.ts +0 -24
- package/dist/database/entities/user-shift.entity.d.ts.map +0 -1
- package/dist/database/entities/user-shift.entity.js +0 -153
- package/dist/database/entities/user-shift.entity.js.map +0 -1
- package/dist/database/entities/user.entity.d.ts +0 -74
- package/dist/database/entities/user.entity.d.ts.map +0 -1
- package/dist/database/entities/user.entity.js +0 -280
- package/dist/database/entities/user.entity.js.map +0 -1
- package/dist/database/index.d.ts +0 -2
- package/dist/database/index.d.ts.map +0 -1
- package/dist/database/index.js +0 -18
- package/dist/database/index.js.map +0 -1
- package/dist/database/migrations/1770706648232-initialMigration.d.ts +0 -7
- package/dist/database/migrations/1770706648232-initialMigration.d.ts.map +0 -1
- package/dist/database/migrations/1770706648232-initialMigration.js.map +0 -1
- package/dist/database/seeder/base.seed.d.ts +0 -19
- package/dist/database/seeder/base.seed.d.ts.map +0 -1
- package/dist/database/seeder/base.seed.js +0 -83
- package/dist/database/seeder/base.seed.js.map +0 -1
- package/dist/database/seeder/config/seeder.config.d.ts +0 -7
- package/dist/database/seeder/config/seeder.config.d.ts.map +0 -1
- package/dist/database/seeder/config/seeder.config.js +0 -21
- package/dist/database/seeder/config/seeder.config.js.map +0 -1
- package/dist/database/seeder/errors/seeder.error.d.ts +0 -11
- package/dist/database/seeder/errors/seeder.error.d.ts.map +0 -1
- package/dist/database/seeder/errors/seeder.error.js +0 -27
- package/dist/database/seeder/errors/seeder.error.js.map +0 -1
- package/dist/database/seeder/seed-runner.d.ts +0 -2
- package/dist/database/seeder/seed-runner.d.ts.map +0 -1
- package/dist/database/seeder/seed-runner.js +0 -157
- package/dist/database/seeder/seed-runner.js.map +0 -1
- package/dist/database/seeder/seeds/city.seed.d.ts +0 -8
- package/dist/database/seeder/seeds/city.seed.d.ts.map +0 -1
- package/dist/database/seeder/seeds/city.seed.js +0 -62
- package/dist/database/seeder/seeds/city.seed.js.map +0 -1
- package/dist/database/seeder/seeds/country.seed.d.ts +0 -8
- package/dist/database/seeder/seeds/country.seed.d.ts.map +0 -1
- package/dist/database/seeder/seeds/country.seed.js +0 -54
- package/dist/database/seeder/seeds/country.seed.js.map +0 -1
- package/dist/database/seeder/seeds/currency.seed.d.ts +0 -8
- package/dist/database/seeder/seeds/currency.seed.d.ts.map +0 -1
- package/dist/database/seeder/seeds/currency.seed.js +0 -50
- package/dist/database/seeder/seeds/currency.seed.js.map +0 -1
- package/dist/database/seeder/seeds/department.seed.d.ts +0 -8
- package/dist/database/seeder/seeds/department.seed.d.ts.map +0 -1
- package/dist/database/seeder/seeds/department.seed.js +0 -48
- package/dist/database/seeder/seeds/department.seed.js.map +0 -1
- package/dist/database/seeder/seeds/permission.seed.d.ts +0 -8
- package/dist/database/seeder/seeds/permission.seed.d.ts.map +0 -1
- package/dist/database/seeder/seeds/permission.seed.js +0 -54
- package/dist/database/seeder/seeds/permission.seed.js.map +0 -1
- package/dist/database/seeder/seeds/role-permission.seed.d.ts +0 -8
- package/dist/database/seeder/seeds/role-permission.seed.d.ts.map +0 -1
- package/dist/database/seeder/seeds/role-permission.seed.js +0 -47
- package/dist/database/seeder/seeds/role-permission.seed.js.map +0 -1
- package/dist/database/seeder/seeds/role.seed.d.ts +0 -8
- package/dist/database/seeder/seeds/role.seed.d.ts.map +0 -1
- package/dist/database/seeder/seeds/role.seed.js +0 -52
- package/dist/database/seeder/seeds/role.seed.js.map +0 -1
- package/dist/database/seeder/seeds/user-role.seed.d.ts +0 -8
- package/dist/database/seeder/seeds/user-role.seed.d.ts.map +0 -1
- package/dist/database/seeder/seeds/user-role.seed.js +0 -66
- package/dist/database/seeder/seeds/user-role.seed.js.map +0 -1
- package/dist/database/seeder/seeds/user.seed.d.ts +0 -8
- package/dist/database/seeder/seeds/user.seed.d.ts.map +0 -1
- package/dist/database/seeder/seeds/user.seed.js +0 -110
- package/dist/database/seeder/seeds/user.seed.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/scripts/create-schema.d.ts +0 -2
- package/dist/scripts/create-schema.d.ts.map +0 -1
- package/dist/scripts/create-schema.js +0 -77
- package/dist/scripts/create-schema.js.map +0 -1
- package/dist/tsconfig.build.tsbuildinfo +0 -1
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { Entity, Column, ManyToOne, JoinColumn } from 'typeorm';
|
|
2
|
+
import { BaseEntity } from './base.entity';
|
|
3
|
+
import { CreditNoteEntity } from './credit-note.entity';
|
|
4
|
+
|
|
5
|
+
@Entity({ name: 'timesheet_summaries', schema: 'core' })
|
|
6
|
+
export class TimesheetSummary extends BaseEntity {
|
|
7
|
+
@Column({ type: 'varchar', name: 'matter_name', nullable: true })
|
|
8
|
+
matterName: string;
|
|
9
|
+
|
|
10
|
+
@Column({ type: 'varchar', name: 'group_name', nullable: true })
|
|
11
|
+
groupName: string;
|
|
12
|
+
|
|
13
|
+
@Column({ type: 'varchar', name: 'client_name', nullable: true })
|
|
14
|
+
clientName: string;
|
|
15
|
+
|
|
16
|
+
@Column({ type: 'varchar', name: 'title', nullable: true })
|
|
17
|
+
title: string;
|
|
18
|
+
|
|
19
|
+
@Column({ type: 'varchar', name: 'suffix', nullable: true })
|
|
20
|
+
suffix: string;
|
|
21
|
+
|
|
22
|
+
@Column({ type: 'varchar', name: 'file_path', nullable: true })
|
|
23
|
+
filePath: string;
|
|
24
|
+
|
|
25
|
+
@Column({ type: 'int', name: 'matter_id', nullable: true })
|
|
26
|
+
matterId: number;
|
|
27
|
+
|
|
28
|
+
@Column({ type: 'int', name: 'invoice_id', nullable: true })
|
|
29
|
+
invoiceId: number;
|
|
30
|
+
|
|
31
|
+
@Column({ type: 'varchar', name: 'status', nullable: true })
|
|
32
|
+
status: string;
|
|
33
|
+
|
|
34
|
+
@Column({ type: 'varchar', name: 'review_or_draft', nullable: true })
|
|
35
|
+
reviewOrDraft: string;
|
|
36
|
+
|
|
37
|
+
@Column('decimal', {
|
|
38
|
+
precision: 10,
|
|
39
|
+
scale: 2,
|
|
40
|
+
name: 'duration',
|
|
41
|
+
nullable: true,
|
|
42
|
+
})
|
|
43
|
+
duration: number;
|
|
44
|
+
|
|
45
|
+
@Column('decimal', {
|
|
46
|
+
precision: 10,
|
|
47
|
+
scale: 2,
|
|
48
|
+
name: 'total_price',
|
|
49
|
+
nullable: true,
|
|
50
|
+
})
|
|
51
|
+
totalPrice: number;
|
|
52
|
+
|
|
53
|
+
@Column('decimal', {
|
|
54
|
+
precision: 10,
|
|
55
|
+
scale: 2,
|
|
56
|
+
name: 'reviewer_amount',
|
|
57
|
+
nullable: true,
|
|
58
|
+
})
|
|
59
|
+
reviewerAmount: number;
|
|
60
|
+
|
|
61
|
+
@Column({ default: true, name: 'is_visible', nullable: true })
|
|
62
|
+
isVisible: boolean;
|
|
63
|
+
|
|
64
|
+
@Column({ type: 'date', name: 'date', nullable: true })
|
|
65
|
+
date: Date;
|
|
66
|
+
|
|
67
|
+
@Column({ type: 'decimal', name: 'credit_amount', nullable: true })
|
|
68
|
+
credit_amount: number | null;
|
|
69
|
+
|
|
70
|
+
@Column({ type: 'decimal', name: 'balance_amount', nullable: true })
|
|
71
|
+
balance_amount: number | null;
|
|
72
|
+
|
|
73
|
+
@Column({ type: 'int', name: 'credit_note_id', nullable: true })
|
|
74
|
+
credit_note_id: number | null;
|
|
75
|
+
|
|
76
|
+
@Column({ type: 'decimal', name: 'original_amount', nullable: true })
|
|
77
|
+
original_amount: number | null;
|
|
78
|
+
|
|
79
|
+
@Column({
|
|
80
|
+
type: 'decimal',
|
|
81
|
+
name: 'invoiced_amount',
|
|
82
|
+
precision: 10,
|
|
83
|
+
scale: 2,
|
|
84
|
+
nullable: true,
|
|
85
|
+
default: 0,
|
|
86
|
+
})
|
|
87
|
+
invoicedAmount: number;
|
|
88
|
+
|
|
89
|
+
@Column({
|
|
90
|
+
type: 'decimal',
|
|
91
|
+
name: 'remaining_amount',
|
|
92
|
+
precision: 10,
|
|
93
|
+
scale: 2,
|
|
94
|
+
nullable: true,
|
|
95
|
+
})
|
|
96
|
+
remainingAmount: number;
|
|
97
|
+
|
|
98
|
+
@ManyToOne(() => CreditNoteEntity, (creditNote) => creditNote.summaries)
|
|
99
|
+
@JoinColumn({ name: 'credit_note_id' })
|
|
100
|
+
creditNote: CreditNoteEntity;
|
|
101
|
+
}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { User } from './user.entity';
|
|
2
|
+
import {
|
|
3
|
+
Entity,
|
|
4
|
+
Column,
|
|
5
|
+
OneToMany,
|
|
6
|
+
ManyToOne,
|
|
7
|
+
JoinColumn,
|
|
8
|
+
} from 'typeorm';
|
|
9
|
+
import { BaseEntity } from './base.entity';
|
|
10
|
+
import { TimesheetEvent } from './timesheet-event.entity';
|
|
11
|
+
import { TimesheetComment } from './timesheet-comment.entity';
|
|
12
|
+
|
|
13
|
+
export enum TimesheetStatus {
|
|
14
|
+
PENDING = 'PENDING',
|
|
15
|
+
APPROVED = 'APPROVED',
|
|
16
|
+
SEND_BACK = 'SEND-BACK',
|
|
17
|
+
MISSING = 'MISSING',
|
|
18
|
+
ACTIVE = 'ACTIVE',
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
enum ApprovalFlowType {
|
|
22
|
+
REPORTING_MANAGER_BASED = 'REPORTING_MANAGER_BASED',
|
|
23
|
+
HIERARCHY_BASED='HIERARCHY_BASED'
|
|
24
|
+
}
|
|
25
|
+
@Entity({ name: 'timesheets', schema: 'timesheet' })
|
|
26
|
+
export class Timesheet extends BaseEntity {
|
|
27
|
+
|
|
28
|
+
@Column({ name: 'user_id', type: 'integer', nullable: false })
|
|
29
|
+
user_id: number;
|
|
30
|
+
|
|
31
|
+
@ManyToOne(() => User)
|
|
32
|
+
@JoinColumn({ name: 'user_id' })
|
|
33
|
+
user: User;
|
|
34
|
+
|
|
35
|
+
@Column({ name: 'week_start', type: 'date', nullable: false })
|
|
36
|
+
week_start: Date;
|
|
37
|
+
|
|
38
|
+
@Column({ name: 'week_end', type: 'date', nullable: false })
|
|
39
|
+
week_end: Date;
|
|
40
|
+
|
|
41
|
+
@Column({
|
|
42
|
+
name: 'status',
|
|
43
|
+
type: 'varchar',
|
|
44
|
+
default: 'PENDING',
|
|
45
|
+
comment: 'PENDING | APPROVED |SEND-BACK',
|
|
46
|
+
})
|
|
47
|
+
status: string;
|
|
48
|
+
|
|
49
|
+
@Column({ name: 'submitted_at', type: 'timestamp', nullable: true })
|
|
50
|
+
submitted_at: Date;
|
|
51
|
+
|
|
52
|
+
@Column({ name: 'approved_at', type: 'timestamp', nullable: true })
|
|
53
|
+
approved_at: Date;
|
|
54
|
+
|
|
55
|
+
@Column({ name: 'approved_by', type: 'integer', nullable: true })
|
|
56
|
+
approved_by: number;
|
|
57
|
+
|
|
58
|
+
@Column({name:'is_resubmitted',type:'boolean',default:false})
|
|
59
|
+
is_resubmitted: boolean;
|
|
60
|
+
|
|
61
|
+
@Column({name:'resubmitted_at',type:'timestamp',nullable:true})
|
|
62
|
+
resubmitted_at: Date;
|
|
63
|
+
|
|
64
|
+
@Column({
|
|
65
|
+
type: 'enum',
|
|
66
|
+
enum: ApprovalFlowType,
|
|
67
|
+
nullable: true,
|
|
68
|
+
})
|
|
69
|
+
approval_flow_type: ApprovalFlowType | null;
|
|
70
|
+
|
|
71
|
+
@OneToMany(() => TimesheetEvent, (timesheetEvent) => timesheetEvent.timesheet)
|
|
72
|
+
timesheet_events: TimesheetEvent[];
|
|
73
|
+
|
|
74
|
+
@OneToMany(() => TimesheetComment, (timesheetComment) => timesheetComment.timesheet)
|
|
75
|
+
timesheet_comments: TimesheetComment[];
|
|
76
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { Entity, Column, ManyToOne, JoinColumn } from 'typeorm';
|
|
2
|
+
import { BaseEntity } from './base.entity';
|
|
3
|
+
import { User } from './user.entity';
|
|
4
|
+
|
|
5
|
+
@Entity({ name: 'ownership_transfers', schema: 'user' })
|
|
6
|
+
export class OwnershipTransfer extends BaseEntity {
|
|
7
|
+
@Column({ name: 'ownership_transfer_from_user_id' })
|
|
8
|
+
owenershipTransferFromUserId: number;
|
|
9
|
+
|
|
10
|
+
@Column({ name: 'ownership_transfer_to_user_id' })
|
|
11
|
+
ownershipTransferToUserId: number;
|
|
12
|
+
|
|
13
|
+
@Column({ name: 'ownership_transfer_reason', type: 'text' })
|
|
14
|
+
ownershipTransferReason: string;
|
|
15
|
+
|
|
16
|
+
@Column({ name: 'ownership_transfer_notes', type: 'text', nullable: true })
|
|
17
|
+
ownershipTransferNotes: string;
|
|
18
|
+
|
|
19
|
+
@Column({ name: 'transferred_at' })
|
|
20
|
+
transferredAt: Date;
|
|
21
|
+
|
|
22
|
+
@Column({name:'transferred_by_user_id'})
|
|
23
|
+
transferredByUserId: number;
|
|
24
|
+
|
|
25
|
+
@Column({name:"transfered_data",type:"jsonb",nullable:true})
|
|
26
|
+
transferedData: any;
|
|
27
|
+
|
|
28
|
+
@ManyToOne(() => User, { nullable: true })
|
|
29
|
+
@JoinColumn({ name: 'ownership_transfer_from_user_id' })
|
|
30
|
+
ownershipTransferFromUser: User;
|
|
31
|
+
|
|
32
|
+
@ManyToOne(() => User, { nullable: true })
|
|
33
|
+
@JoinColumn({ name: 'ownership_transfer_to_user_id' })
|
|
34
|
+
ownershipTransferToUser: User;
|
|
35
|
+
|
|
36
|
+
@ManyToOne(() => User, { nullable: true })
|
|
37
|
+
@JoinColumn({ name: 'transferred_by_user_id' })
|
|
38
|
+
transferredByUser: User;
|
|
39
|
+
}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Entity,
|
|
3
|
+
Column,
|
|
4
|
+
ManyToOne,
|
|
5
|
+
JoinColumn,
|
|
6
|
+
CreateDateColumn,
|
|
7
|
+
} from 'typeorm';
|
|
8
|
+
import {User} from './user.entity';
|
|
9
|
+
import {BaseEntity} from './base.entity';
|
|
10
|
+
|
|
11
|
+
// Enums
|
|
12
|
+
export enum UploadModuleEnum {
|
|
13
|
+
HOLIDAY = 'HOLIDAY',
|
|
14
|
+
USER = 'USER',
|
|
15
|
+
CLIENT = 'CLIENT',
|
|
16
|
+
EXPENSE = 'EXPENSE',
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export enum UploadStatus {
|
|
20
|
+
PENDING = 'PENDING',
|
|
21
|
+
IN_PROGRESS = 'IN_PROGRESS',
|
|
22
|
+
COMPLETED = 'COMPLETED',
|
|
23
|
+
FAILED = 'FAILED',
|
|
24
|
+
PROCESSING = 'PROCESSING',
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
@Entity({ name: 'upload_logs', schema: 'user'})
|
|
28
|
+
export class UploadLog extends BaseEntity {
|
|
29
|
+
|
|
30
|
+
@Column()
|
|
31
|
+
user_id: number;
|
|
32
|
+
|
|
33
|
+
@ManyToOne(() => User, (user) => user.uploadLogs)
|
|
34
|
+
@JoinColumn({ name: 'user_id' })
|
|
35
|
+
user: User;
|
|
36
|
+
|
|
37
|
+
@Column({
|
|
38
|
+
type: 'enum',
|
|
39
|
+
enum: UploadModuleEnum,
|
|
40
|
+
nullable: true,
|
|
41
|
+
})
|
|
42
|
+
module: UploadModuleEnum;
|
|
43
|
+
|
|
44
|
+
@Column({ nullable: true })
|
|
45
|
+
file_name: string;
|
|
46
|
+
|
|
47
|
+
@Column({ type: 'int', nullable: true })
|
|
48
|
+
file_size: number;
|
|
49
|
+
|
|
50
|
+
@Column({
|
|
51
|
+
type: 'enum',
|
|
52
|
+
enum: UploadStatus,
|
|
53
|
+
default: UploadStatus.PENDING,
|
|
54
|
+
})
|
|
55
|
+
status: UploadStatus;
|
|
56
|
+
|
|
57
|
+
@Column({ type: 'int', nullable: true })
|
|
58
|
+
total_records: number;
|
|
59
|
+
|
|
60
|
+
@Column({ type: 'int', nullable: true })
|
|
61
|
+
success_count: number;
|
|
62
|
+
|
|
63
|
+
@Column({ type: 'int', nullable: true })
|
|
64
|
+
failure_count: number;
|
|
65
|
+
|
|
66
|
+
@Column({ nullable: true })
|
|
67
|
+
error_file_path: string;
|
|
68
|
+
|
|
69
|
+
@CreateDateColumn({ name: 'started_at' })
|
|
70
|
+
started_at: Date;
|
|
71
|
+
|
|
72
|
+
@Column({ type: 'timestamp', nullable: true })
|
|
73
|
+
completed_at: Date;
|
|
74
|
+
|
|
75
|
+
@Column({ type: 'json', nullable: true })
|
|
76
|
+
errors: any;
|
|
77
|
+
}
|
|
78
|
+
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { Entity, Column, Index } from 'typeorm';
|
|
2
|
+
import { BaseEntity } from './base.entity';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* User Notification Channels Entity
|
|
6
|
+
* Controls global enable/disable for notification channels
|
|
7
|
+
*/
|
|
8
|
+
@Entity({ name: 'user_notification_channel', schema: 'notification' })
|
|
9
|
+
@Index(['userId'], { unique: true })
|
|
10
|
+
export class UserNotificationChannel extends BaseEntity {
|
|
11
|
+
@Column({
|
|
12
|
+
name: 'user_id',
|
|
13
|
+
type: 'integer',
|
|
14
|
+
nullable: false,
|
|
15
|
+
unique: true,
|
|
16
|
+
comment: 'ID of the user',
|
|
17
|
+
})
|
|
18
|
+
userId: number;
|
|
19
|
+
|
|
20
|
+
@Column({
|
|
21
|
+
name: 'email_enabled',
|
|
22
|
+
type: 'boolean',
|
|
23
|
+
default: true,
|
|
24
|
+
comment: 'Global enable/disable for email notifications',
|
|
25
|
+
})
|
|
26
|
+
emailEnabled: boolean;
|
|
27
|
+
|
|
28
|
+
@Column({
|
|
29
|
+
name: 'push_enabled',
|
|
30
|
+
type: 'boolean',
|
|
31
|
+
default: true,
|
|
32
|
+
comment: 'Global enable/disable for push notifications',
|
|
33
|
+
})
|
|
34
|
+
pushEnabled: boolean;
|
|
35
|
+
|
|
36
|
+
@Column({
|
|
37
|
+
name: 'whatsapp_enabled',
|
|
38
|
+
type: 'boolean',
|
|
39
|
+
default: false,
|
|
40
|
+
comment: 'Global enable/disable for WhatsApp notifications',
|
|
41
|
+
})
|
|
42
|
+
whatsappEnabled: boolean;
|
|
43
|
+
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { Entity, Column, Index } from 'typeorm';
|
|
2
|
+
import { BaseEntity } from './base.entity';
|
|
3
|
+
import { NotificationPreferenceType } from '../../core/constant';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* User Notification Preference Entity
|
|
7
|
+
* Each row represents one notification type preference for a user
|
|
8
|
+
*/
|
|
9
|
+
@Entity({ name: 'user_notification_preferences', schema: 'notification' })
|
|
10
|
+
@Index(['userId', 'preferenceType'], { unique: true })
|
|
11
|
+
export class UserNotificationPreference extends BaseEntity {
|
|
12
|
+
@Column({
|
|
13
|
+
name: 'user_id',
|
|
14
|
+
type: 'integer',
|
|
15
|
+
nullable: false,
|
|
16
|
+
comment: 'ID of the user',
|
|
17
|
+
})
|
|
18
|
+
userId: number;
|
|
19
|
+
|
|
20
|
+
@Column({
|
|
21
|
+
name: 'preference_type',
|
|
22
|
+
type: 'enum',
|
|
23
|
+
enum: NotificationPreferenceType,
|
|
24
|
+
nullable: false,
|
|
25
|
+
comment: 'Type of notification preference',
|
|
26
|
+
})
|
|
27
|
+
preferenceType: NotificationPreferenceType;
|
|
28
|
+
|
|
29
|
+
@Column({
|
|
30
|
+
name: 'is_enabled',
|
|
31
|
+
type: 'boolean',
|
|
32
|
+
default: true,
|
|
33
|
+
comment: 'Whether this notification type is enabled',
|
|
34
|
+
})
|
|
35
|
+
isEnabled: boolean;
|
|
36
|
+
|
|
37
|
+
@Column({
|
|
38
|
+
type: 'text',
|
|
39
|
+
nullable: true,
|
|
40
|
+
comment: 'Description of the notification preference',
|
|
41
|
+
})
|
|
42
|
+
description: string | null;
|
|
43
|
+
|
|
44
|
+
@Column({
|
|
45
|
+
type: 'json',
|
|
46
|
+
nullable: true,
|
|
47
|
+
comment: 'Additional settings for this notification type',
|
|
48
|
+
})
|
|
49
|
+
metadata: Record<string, any> | null;
|
|
50
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Entity,
|
|
3
|
+
Column,
|
|
4
|
+
ManyToOne,
|
|
5
|
+
JoinColumn,
|
|
6
|
+
} from 'typeorm';
|
|
7
|
+
import { User } from './user.entity';
|
|
8
|
+
import { Role } from './role.entity';
|
|
9
|
+
import { BaseEntity } from './base.entity';
|
|
10
|
+
@Entity({ name: 'user_roles', schema: 'user' })
|
|
11
|
+
export class UserRole extends BaseEntity {
|
|
12
|
+
@Column({ name: 'user_id' })
|
|
13
|
+
user_id: number;
|
|
14
|
+
|
|
15
|
+
@Column({ name: 'role_id' })
|
|
16
|
+
role_id: number;
|
|
17
|
+
|
|
18
|
+
@ManyToOne(() => User, { onDelete: 'CASCADE' })
|
|
19
|
+
@JoinColumn({ name: 'user_id' })
|
|
20
|
+
user: User;
|
|
21
|
+
|
|
22
|
+
@ManyToOne(() => Role, { onDelete: 'CASCADE' })
|
|
23
|
+
@JoinColumn({ name: 'role_id' })
|
|
24
|
+
role: Role;
|
|
25
|
+
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { BaseEntity } from './base.entity';
|
|
2
|
+
import {
|
|
3
|
+
Entity,
|
|
4
|
+
Column,
|
|
5
|
+
ManyToOne,
|
|
6
|
+
JoinColumn,
|
|
7
|
+
} from 'typeorm';
|
|
8
|
+
import { User } from './user.entity';
|
|
9
|
+
|
|
10
|
+
@Entity({ name: 'user_session_history', schema: 'user' })
|
|
11
|
+
export class UserSessionHistory extends BaseEntity {
|
|
12
|
+
@Column({ type: 'int', nullable: true })
|
|
13
|
+
user_id: number | null;
|
|
14
|
+
|
|
15
|
+
@ManyToOne(() => User, (user) => user.user_session_history)
|
|
16
|
+
@JoinColumn({ name: 'user_id' })
|
|
17
|
+
user: User;
|
|
18
|
+
|
|
19
|
+
@Column({ type: 'varchar', nullable: true })
|
|
20
|
+
ip_address: string | null;
|
|
21
|
+
|
|
22
|
+
@Column({ type: 'text', nullable: true })
|
|
23
|
+
user_agent: string | null;
|
|
24
|
+
|
|
25
|
+
@Column({ type: 'varchar', nullable: true })
|
|
26
|
+
browser: string | null;
|
|
27
|
+
|
|
28
|
+
@Column({ type: 'varchar', nullable: true })
|
|
29
|
+
device: string | null;
|
|
30
|
+
|
|
31
|
+
@Column({ type: 'varchar', nullable: true })
|
|
32
|
+
platform: string | null;
|
|
33
|
+
|
|
34
|
+
@Column({ type: 'timestamp', default: () => 'CURRENT_TIMESTAMP' })
|
|
35
|
+
login_timestamp: Date;
|
|
36
|
+
|
|
37
|
+
@Column({ type: 'timestamp', nullable: true })
|
|
38
|
+
logout_timestamp: Date | null;
|
|
39
|
+
|
|
40
|
+
@Column({ type: 'varchar', nullable: true })
|
|
41
|
+
status: string | null;
|
|
42
|
+
|
|
43
|
+
@Column({ type: 'varchar', nullable: true })
|
|
44
|
+
session_id: string | null;
|
|
45
|
+
}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import { User } from './user.entity';
|
|
2
|
+
import { Entity, Column, JoinColumn, OneToOne, ManyToOne } from 'typeorm';
|
|
3
|
+
import { BaseEntity } from './base.entity';
|
|
4
|
+
import { Shift } from './shift.entity';
|
|
5
|
+
|
|
6
|
+
export enum AllocationType {
|
|
7
|
+
ROLE = 'role',
|
|
8
|
+
USER = 'user',
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
@Entity({ name: 'user_shifts', schema: 'timesheet' })
|
|
12
|
+
export class UserShift extends BaseEntity {
|
|
13
|
+
@Column({
|
|
14
|
+
name: 'user_id',
|
|
15
|
+
type: 'integer',
|
|
16
|
+
nullable: false,
|
|
17
|
+
comment: 'ID of the user associated with the shift',
|
|
18
|
+
})
|
|
19
|
+
user_id: number;
|
|
20
|
+
|
|
21
|
+
@Column({
|
|
22
|
+
name: 'current_shift_id',
|
|
23
|
+
type: 'integer',
|
|
24
|
+
nullable: false,
|
|
25
|
+
comment: 'Current shift of the user',
|
|
26
|
+
})
|
|
27
|
+
current_shift_id: number;
|
|
28
|
+
|
|
29
|
+
@ManyToOne(() => Shift)
|
|
30
|
+
@JoinColumn({ name: 'current_shift_id' })
|
|
31
|
+
current_shift: Shift;
|
|
32
|
+
|
|
33
|
+
@Column({
|
|
34
|
+
name: 'is_alternate_shift',
|
|
35
|
+
type: 'boolean',
|
|
36
|
+
nullable: false,
|
|
37
|
+
comment: 'Check if the shift is alternate',
|
|
38
|
+
})
|
|
39
|
+
is_alternate_shift: boolean;
|
|
40
|
+
|
|
41
|
+
@Column({
|
|
42
|
+
name: 'current_alternate_shift_id',
|
|
43
|
+
type: 'integer',
|
|
44
|
+
nullable: true,
|
|
45
|
+
comment: 'Current alternate shift of the user',
|
|
46
|
+
})
|
|
47
|
+
current_alternate_shift_id: number;
|
|
48
|
+
|
|
49
|
+
@ManyToOne(() => Shift)
|
|
50
|
+
@JoinColumn({ name: 'current_alternate_shift_id' })
|
|
51
|
+
current_alternate_shift: Shift;
|
|
52
|
+
|
|
53
|
+
@Column({
|
|
54
|
+
name: 'shift_start_date',
|
|
55
|
+
type: 'date',
|
|
56
|
+
nullable: false,
|
|
57
|
+
comment: 'Start date of the shift',
|
|
58
|
+
})
|
|
59
|
+
shift_start_date: Date;
|
|
60
|
+
|
|
61
|
+
@Column({
|
|
62
|
+
name: 'shift_end_date',
|
|
63
|
+
type: 'date',
|
|
64
|
+
nullable: false,
|
|
65
|
+
comment: 'End date of the shift',
|
|
66
|
+
})
|
|
67
|
+
shift_end_date: Date;
|
|
68
|
+
|
|
69
|
+
@Column({
|
|
70
|
+
name: 'planned_shift_id',
|
|
71
|
+
type: 'integer',
|
|
72
|
+
nullable: true,
|
|
73
|
+
comment: 'The planned shift id to be assigned to the user',
|
|
74
|
+
})
|
|
75
|
+
planned_shift_id: number | null;
|
|
76
|
+
|
|
77
|
+
@ManyToOne(() => Shift)
|
|
78
|
+
@JoinColumn({ name: 'planned_shift_id' })
|
|
79
|
+
planned_shift: Shift;
|
|
80
|
+
|
|
81
|
+
@Column({
|
|
82
|
+
name: 'effective_date',
|
|
83
|
+
type: 'date',
|
|
84
|
+
nullable: true,
|
|
85
|
+
comment: 'The date when the planned shift becomes effective',
|
|
86
|
+
})
|
|
87
|
+
effective_date: Date | null;
|
|
88
|
+
|
|
89
|
+
@OneToOne(() => User) // Define a one-to-one relationship
|
|
90
|
+
@JoinColumn({ name: 'user_id' }) // Specify the column for the foreign key
|
|
91
|
+
user: User;
|
|
92
|
+
|
|
93
|
+
@Column({
|
|
94
|
+
name: 'shift_applied_by',
|
|
95
|
+
type: 'integer',
|
|
96
|
+
nullable: true,
|
|
97
|
+
comment: 'Shift applied by',
|
|
98
|
+
})
|
|
99
|
+
shift_applied_by: number;
|
|
100
|
+
|
|
101
|
+
@Column({
|
|
102
|
+
name: 'allocation_type',
|
|
103
|
+
type: 'enum',
|
|
104
|
+
enum: AllocationType,
|
|
105
|
+
nullable: true,
|
|
106
|
+
comment: 'Allocation type',
|
|
107
|
+
})
|
|
108
|
+
allocation_type: AllocationType;
|
|
109
|
+
}
|