@churchsoln/dbms 1.0.47 → 1.0.49
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/Dockerfile +21 -21
- package/Makefile +132 -132
- package/app.js +37 -37
- package/config/config.js +33 -33
- package/config/errorCodes.js +65 -65
- package/config/errorMsgs.js +82 -82
- package/constants/index.js +94 -94
- package/controllers/church.js +100 -100
- package/controllers/index.js +6 -6
- package/controllers/master.js +138 -138
- package/controllers/migration.js +24 -24
- package/controllers/seed.js +33 -33
- package/db-setup.js +87 -87
- package/deployment/docker-compose.local.yml +64 -64
- package/deployment/docker-compose.yml +62 -62
- package/deployment/nginx/nginx-certs/localhost.crt +22 -22
- package/deployment/nginx/nginx-certs/localhost.key +28 -28
- package/deployment/nginx/nginx.local.conf +72 -72
- package/middlewares/church-filter.js +16 -16
- package/migrations/church/20221226151615-create-province.js +27 -27
- package/migrations/church/20221226151616-create-city.js +41 -41
- package/migrations/church/20221226151617-create-subRole.js +25 -25
- package/migrations/church/20221226151618-create-membership.js +68 -68
- package/migrations/church/20221226151619-create-member.js +140 -140
- package/migrations/church/20221227151615-create-user.js +60 -60
- package/migrations/church/20230826140644-create-eventsUpdates.js +29 -29
- package/migrations/church/20230904143429-create-ministries.js +26 -26
- package/migrations/church/20231021160018-create-gallery.js +28 -28
- package/migrations/church/20231105074019-create-feedback.js +28 -28
- package/migrations/church/20231111113342-create-banner.js +29 -29
- package/migrations/church/20231216105640-create-directoryBoard.js +31 -31
- package/migrations/church/20240214160101-create-volunteer.js +31 -31
- package/migrations/church/20240330111437-create-download.js +29 -29
- package/migrations/church/20240427170617-create-links.js +26 -26
- package/migrations/church/20240815170617-create-userTransfer.js +63 -63
- package/migrations/church/20240815170620-create-subRolePermission.js +40 -40
- package/migrations/church/20240915170620-create-transferType.js +25 -25
- package/migrations/church/20240917170620-create-accounts.js +27 -27
- package/migrations/church/20240918170621-create-church.js +54 -54
- package/migrations/church/20240918170622-create-group.js +61 -61
- package/migrations/church/20240918170623-create-groupMembers.js +74 -74
- package/migrations/church/20240918170627-create-pledge.js +96 -96
- package/migrations/church/20240919170627-create-contributionBatch.js +42 -42
- package/migrations/church/20240919170628-create-contributionTransaction.js +82 -82
- package/migrations/church/20240919170629-create-contributionTransactionLine.js +74 -74
- package/migrations/church/20240919170630-update-groupMembers.js +77 -77
- package/migrations/church/20241204170631-create-pledgeAccount.js +55 -55
- package/migrations/church/20241204170632-create-memberStatus.js +26 -0
- package/migrations/church/20241204170633-update-member.js +33 -0
- package/migrations/church/20241204170634-update-membership.js +33 -0
- package/migrations/church/20241204170635-update-pledge.js +33 -0
- package/migrations/church/20241204170636-update-contributionTransactionLine.js +33 -0
- package/migrations/common/20221226140655-create-subscriptionPlan.js +31 -31
- package/migrations/common/20221226143006-create-role.js +25 -25
- package/migrations/common/20240815170619-create-permission.js +27 -27
- package/migrations/common/20240815170620-create-church.js +56 -56
- package/migrations/common/20240815170621-create-churchDomain.js +40 -40
- package/migrations/common/20240918170621-create-churchPermission.js +53 -53
- package/migrations/common/20240918170622-create-user.js +35 -35
- package/migrations/common/20240918170627-create-subscriptionPlanPermission.js +53 -53
- package/models/church/accounts.js +23 -27
- package/models/church/banner.js +29 -29
- package/models/church/church.js +62 -62
- package/models/church/city.js +23 -23
- package/models/church/contributionBatch.js +45 -45
- package/models/church/contributionTransaction.js +90 -90
- package/models/church/contributionTransactionLine.js +81 -80
- package/models/church/directoryBoard.js +33 -33
- package/models/church/download.js +35 -35
- package/models/church/eventsUpdates.js +29 -29
- package/models/church/feedback.js +27 -27
- package/models/church/gallery.js +33 -33
- package/models/church/group.js +78 -78
- package/models/church/groupMembers.js +73 -73
- package/models/church/index.js +30 -30
- package/models/church/links.js +22 -22
- package/models/church/member.js +161 -171
- package/models/church/memberStatus.js +22 -0
- package/models/church/membership.js +80 -81
- package/models/church/ministries.js +16 -16
- package/models/church/pledge.js +65 -65
- package/models/church/pledgeAccount.js +45 -37
- package/models/church/province.js +23 -23
- package/models/church/subRole.js +21 -21
- package/models/church/subRolePermission.js +22 -22
- package/models/church/transferType.js +15 -15
- package/models/church/user.js +78 -78
- package/models/church/userTransfer.js +45 -45
- package/models/church/volunteer.js +33 -33
- package/models/common/church.js +58 -58
- package/models/common/churchDomain.js +21 -21
- package/models/common/churchPermission.js +26 -26
- package/models/common/index.js +40 -40
- package/models/common/permission.js +17 -17
- package/models/common/role.js +15 -15
- package/models/common/subscriptionPlan.js +34 -34
- package/models/common/subscriptionPlanPermission.js +33 -33
- package/models/common/user.js +39 -39
- package/package.json +41 -41
- package/public/swagger/church.json +521 -521
- package/public/swagger/master.json +537 -537
- package/public/swagger/migration.json +83 -83
- package/public/swagger/seed.json +98 -98
- package/queues/db-create.js +9 -9
- package/queues/index.js +5 -5
- package/queues/master.js +9 -9
- package/queues/migration.js +9 -9
- package/queues/seed.js +9 -9
- package/redis/config.js +5 -5
- package/routes/index.js +30 -30
- package/routes/v1/church.js +45 -45
- package/routes/v1/index.js +7 -7
- package/routes/v1/master.js +68 -68
- package/routes/v1/migration.js +10 -10
- package/routes/v1/seed.js +12 -12
- package/seeders/church/20241005124245-province.js +101 -101
- package/seeders/church/20241005124547-city.js +87 -87
- package/seeders/church/20241005131418-transferType.js +40 -40
- package/seeders/church/20241005131419-memberStatus.js +34 -0
- package/seeders/common/20241005123516-subscriptionPlan.js +43 -43
- package/seeders/common/20241005124105-role.js +38 -38
- package/seeders/common/20241005153047-permission.js +252 -242
- package/seeders/common/20241005153048-user.js +48 -48
- package/services/church.js +312 -312
- package/services/index.js +6 -6
- package/services/master.js +344 -344
- package/services/migration.js +30 -30
- package/services/seed.js +39 -39
- package/utils/churchManager.js +98 -98
- package/utils/crypto.js +40 -40
- package/utils/docUpload.js +51 -51
- package/utils/encryptDecrypt.js +26 -26
- package/utils/index.js +33 -33
- package/utils/logger.js +104 -104
- package/utils/response.js +108 -108
- package/utils/swagger.js +25 -25
- package/utils/verifyToken.js +58 -58
- package/validators/church.js +154 -154
- package/validators/index.js +3 -3
- package/validators/master.js +152 -152
- package/workers/db-create.js +37 -37
- package/workers/index.js +4 -4
- package/workers/master.js +50 -50
- package/workers/migrations.js +63 -63
- package/workers/seed.js +85 -85
package/config/errorMsgs.js
CHANGED
|
@@ -1,82 +1,82 @@
|
|
|
1
|
-
module.exports = {
|
|
2
|
-
success: "Success",
|
|
3
|
-
churchCreated: "Church created successfully",
|
|
4
|
-
churchUpdated: "Church updated successfully",
|
|
5
|
-
churchAlreadyExists: "Church already exists",
|
|
6
|
-
migrationInitiated: "Migration initiated successfully",
|
|
7
|
-
seedInitiated: "Seed initiated successfully",
|
|
8
|
-
actionNotPermitted: "Action not permitted",
|
|
9
|
-
invalidCredentials: "Invalid Credentials",
|
|
10
|
-
passwordNotSet: "Password not set",
|
|
11
|
-
subscriptionAlreadyExists: "Subscription Plan already exists",
|
|
12
|
-
masterAlreadyExists: "Master already exists",
|
|
13
|
-
roleAlreadyExists: "Role already exists",
|
|
14
|
-
activated: "Activated successfully",
|
|
15
|
-
deactivated: "Deactivated successfully",
|
|
16
|
-
invalidId: "Invalid ID",
|
|
17
|
-
permissionExists: "Permission already exists",
|
|
18
|
-
invalidChurchId: "Invalid Church ID",
|
|
19
|
-
invalidPermissionId: "Invalid Permission ID",
|
|
20
|
-
100: "Continue",
|
|
21
|
-
101: "Switching Protocols",
|
|
22
|
-
102: "Processing", // RFC2518
|
|
23
|
-
103: "Early Hints",
|
|
24
|
-
200: "OK",
|
|
25
|
-
201: "Created",
|
|
26
|
-
202: "Accepted",
|
|
27
|
-
203: "Non-Authoritative Information",
|
|
28
|
-
204: "No Content",
|
|
29
|
-
205: "Reset Content",
|
|
30
|
-
206: "Partial Content",
|
|
31
|
-
207: "Multi-Status", // RFC4918
|
|
32
|
-
208: "Already Reported", // RFC5842
|
|
33
|
-
226: "IM Used", // RFC3229
|
|
34
|
-
300: "Multiple Choices",
|
|
35
|
-
301: "Moved Permanently",
|
|
36
|
-
302: "Found",
|
|
37
|
-
303: "See Other",
|
|
38
|
-
304: "Not Modified",
|
|
39
|
-
305: "Use Proxy",
|
|
40
|
-
307: "Temporary Redirect",
|
|
41
|
-
308: "Permanent Redirect", // RFC7238
|
|
42
|
-
400: "Bad Request",
|
|
43
|
-
401: "Unauthorized",
|
|
44
|
-
402: "Payment Required",
|
|
45
|
-
403: "Forbidden",
|
|
46
|
-
404: "Not Found",
|
|
47
|
-
405: "Method Not Allowed",
|
|
48
|
-
406: "Not Acceptable",
|
|
49
|
-
407: "Proxy Authentication Required",
|
|
50
|
-
408: "Request Timeout",
|
|
51
|
-
409: "Conflict",
|
|
52
|
-
410: "Gone",
|
|
53
|
-
411: "Length Required",
|
|
54
|
-
412: "Precondition Failed",
|
|
55
|
-
413: "Payload Too Large",
|
|
56
|
-
414: "URI Too Long",
|
|
57
|
-
415: "Unsupported Media Type",
|
|
58
|
-
416: "Range Not Satisfiable",
|
|
59
|
-
417: "Expectation Failed",
|
|
60
|
-
418: "I'm a teapot", // RFC2324
|
|
61
|
-
421: "Misdirected Request", // RFC7540
|
|
62
|
-
422: "Unprocessable Entity", // RFC4918
|
|
63
|
-
423: "Locked", // RFC4918
|
|
64
|
-
424: "Failed Dependency", // RFC4918
|
|
65
|
-
425: "Reserved for WebDAV advanced collections expired proposal", // RFC2817
|
|
66
|
-
426: "Upgrade Required", // RFC2817
|
|
67
|
-
428: "Precondition Required", // RFC6585
|
|
68
|
-
429: "Too Many Requests", // RFC6585
|
|
69
|
-
431: "Request Header Fields Too Large", // RFC6585
|
|
70
|
-
451: "Unavailable For Legal Reasons", // RFC7725
|
|
71
|
-
500: "Internal Server Error",
|
|
72
|
-
501: "Not Implemented",
|
|
73
|
-
502: "Bad Gateway",
|
|
74
|
-
503: "Service Unavailable",
|
|
75
|
-
504: "Gateway Timeout",
|
|
76
|
-
505: "HTTP Version Not Supported",
|
|
77
|
-
506: "Variant Also Negotiates", // RFC2295
|
|
78
|
-
507: "Insufficient Storage", // RFC4918
|
|
79
|
-
508: "Loop Detected", // RFC5842
|
|
80
|
-
510: "Not Extended", // RFC2774
|
|
81
|
-
511: "Network Authentication Required", // RFC6585
|
|
82
|
-
};
|
|
1
|
+
module.exports = {
|
|
2
|
+
success: "Success",
|
|
3
|
+
churchCreated: "Church created successfully",
|
|
4
|
+
churchUpdated: "Church updated successfully",
|
|
5
|
+
churchAlreadyExists: "Church already exists",
|
|
6
|
+
migrationInitiated: "Migration initiated successfully",
|
|
7
|
+
seedInitiated: "Seed initiated successfully",
|
|
8
|
+
actionNotPermitted: "Action not permitted",
|
|
9
|
+
invalidCredentials: "Invalid Credentials",
|
|
10
|
+
passwordNotSet: "Password not set",
|
|
11
|
+
subscriptionAlreadyExists: "Subscription Plan already exists",
|
|
12
|
+
masterAlreadyExists: "Master already exists",
|
|
13
|
+
roleAlreadyExists: "Role already exists",
|
|
14
|
+
activated: "Activated successfully",
|
|
15
|
+
deactivated: "Deactivated successfully",
|
|
16
|
+
invalidId: "Invalid ID",
|
|
17
|
+
permissionExists: "Permission already exists",
|
|
18
|
+
invalidChurchId: "Invalid Church ID",
|
|
19
|
+
invalidPermissionId: "Invalid Permission ID",
|
|
20
|
+
100: "Continue",
|
|
21
|
+
101: "Switching Protocols",
|
|
22
|
+
102: "Processing", // RFC2518
|
|
23
|
+
103: "Early Hints",
|
|
24
|
+
200: "OK",
|
|
25
|
+
201: "Created",
|
|
26
|
+
202: "Accepted",
|
|
27
|
+
203: "Non-Authoritative Information",
|
|
28
|
+
204: "No Content",
|
|
29
|
+
205: "Reset Content",
|
|
30
|
+
206: "Partial Content",
|
|
31
|
+
207: "Multi-Status", // RFC4918
|
|
32
|
+
208: "Already Reported", // RFC5842
|
|
33
|
+
226: "IM Used", // RFC3229
|
|
34
|
+
300: "Multiple Choices",
|
|
35
|
+
301: "Moved Permanently",
|
|
36
|
+
302: "Found",
|
|
37
|
+
303: "See Other",
|
|
38
|
+
304: "Not Modified",
|
|
39
|
+
305: "Use Proxy",
|
|
40
|
+
307: "Temporary Redirect",
|
|
41
|
+
308: "Permanent Redirect", // RFC7238
|
|
42
|
+
400: "Bad Request",
|
|
43
|
+
401: "Unauthorized",
|
|
44
|
+
402: "Payment Required",
|
|
45
|
+
403: "Forbidden",
|
|
46
|
+
404: "Not Found",
|
|
47
|
+
405: "Method Not Allowed",
|
|
48
|
+
406: "Not Acceptable",
|
|
49
|
+
407: "Proxy Authentication Required",
|
|
50
|
+
408: "Request Timeout",
|
|
51
|
+
409: "Conflict",
|
|
52
|
+
410: "Gone",
|
|
53
|
+
411: "Length Required",
|
|
54
|
+
412: "Precondition Failed",
|
|
55
|
+
413: "Payload Too Large",
|
|
56
|
+
414: "URI Too Long",
|
|
57
|
+
415: "Unsupported Media Type",
|
|
58
|
+
416: "Range Not Satisfiable",
|
|
59
|
+
417: "Expectation Failed",
|
|
60
|
+
418: "I'm a teapot", // RFC2324
|
|
61
|
+
421: "Misdirected Request", // RFC7540
|
|
62
|
+
422: "Unprocessable Entity", // RFC4918
|
|
63
|
+
423: "Locked", // RFC4918
|
|
64
|
+
424: "Failed Dependency", // RFC4918
|
|
65
|
+
425: "Reserved for WebDAV advanced collections expired proposal", // RFC2817
|
|
66
|
+
426: "Upgrade Required", // RFC2817
|
|
67
|
+
428: "Precondition Required", // RFC6585
|
|
68
|
+
429: "Too Many Requests", // RFC6585
|
|
69
|
+
431: "Request Header Fields Too Large", // RFC6585
|
|
70
|
+
451: "Unavailable For Legal Reasons", // RFC7725
|
|
71
|
+
500: "Internal Server Error",
|
|
72
|
+
501: "Not Implemented",
|
|
73
|
+
502: "Bad Gateway",
|
|
74
|
+
503: "Service Unavailable",
|
|
75
|
+
504: "Gateway Timeout",
|
|
76
|
+
505: "HTTP Version Not Supported",
|
|
77
|
+
506: "Variant Also Negotiates", // RFC2295
|
|
78
|
+
507: "Insufficient Storage", // RFC4918
|
|
79
|
+
508: "Loop Detected", // RFC5842
|
|
80
|
+
510: "Not Extended", // RFC2774
|
|
81
|
+
511: "Network Authentication Required", // RFC6585
|
|
82
|
+
};
|
package/constants/index.js
CHANGED
|
@@ -1,94 +1,94 @@
|
|
|
1
|
-
const ROLES = {
|
|
2
|
-
SUPER_ADMIN: 1,
|
|
3
|
-
CHURCH_ADMIN: 2,
|
|
4
|
-
ADMIN: 3,
|
|
5
|
-
PUBLIC: 4,
|
|
6
|
-
};
|
|
7
|
-
const TRANSFER_STATUS = {
|
|
8
|
-
PENDING: "pending",
|
|
9
|
-
APPROVED: "approved",
|
|
10
|
-
REJECTED: "rejected",
|
|
11
|
-
};
|
|
12
|
-
|
|
13
|
-
const QUEUES = {
|
|
14
|
-
MASTER: "master",
|
|
15
|
-
DB_CREATE: "db-create",
|
|
16
|
-
MIGRATION: "migration",
|
|
17
|
-
SEED: "seed",
|
|
18
|
-
};
|
|
19
|
-
|
|
20
|
-
const CONTRIBUTION_TRANSACTION_STATUS = {
|
|
21
|
-
PENDING: "Pending",
|
|
22
|
-
CLEARED: "Cleared",
|
|
23
|
-
VOIDED: "Voided",
|
|
24
|
-
REVERSED: "Reversed",
|
|
25
|
-
};
|
|
26
|
-
const WORKERS = QUEUES;
|
|
27
|
-
|
|
28
|
-
const AUTH_DATA = {
|
|
29
|
-
SESSION_EXPIRY: 2 * 60 * 60, // 2 hr
|
|
30
|
-
};
|
|
31
|
-
|
|
32
|
-
const ONBOARD_STATUS = {
|
|
33
|
-
DB_CREATION_IN_PROGRESS: "db_creation_in_progress",
|
|
34
|
-
DB_CREATION_FAILED: "db_creation_failed",
|
|
35
|
-
DB_CREATION_COMPLETED: "db_creation_completed",
|
|
36
|
-
MIGRATION_IN_PROGRESS: "migration_in_progress",
|
|
37
|
-
MIGRATION_FAILED: "migration_failed",
|
|
38
|
-
MIGRATION_COMPLETED: "migration_completed",
|
|
39
|
-
SEED_IN_PROGRESS: "seed_in_progress",
|
|
40
|
-
SEED_FAILED: "seed_failed",
|
|
41
|
-
SEED_COMPLETED: "seed_completed",
|
|
42
|
-
ONBOARD_COMPLETED: "onboard_completed",
|
|
43
|
-
};
|
|
44
|
-
|
|
45
|
-
const SUBSCRIPTION_PLAN_ID = {
|
|
46
|
-
FREE_TRAIL: 1,
|
|
47
|
-
BASIC: 2,
|
|
48
|
-
PREMIUM: 3,
|
|
49
|
-
CUSTOM: 4
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
const MEMBER_STATUS = {
|
|
53
|
-
ACTIVE: "Active",
|
|
54
|
-
INACTIVE: "Inactive",
|
|
55
|
-
DECEASED: "Deceased",
|
|
56
|
-
PROSPECT: "Prospect",
|
|
57
|
-
REGULAR_ATTENDEE: "Regular Attendee",
|
|
58
|
-
SINGLE_MEMBER: "Single Member",
|
|
59
|
-
VISITOR: "Visitor",
|
|
60
|
-
};
|
|
61
|
-
|
|
62
|
-
const GENDER = {
|
|
63
|
-
MALE: "Male",
|
|
64
|
-
FEMALE: "Female",
|
|
65
|
-
OTHER: "Other",
|
|
66
|
-
};
|
|
67
|
-
|
|
68
|
-
const RELATIONSHIP = {
|
|
69
|
-
HEAD: "Head",
|
|
70
|
-
SPOUSE: "Spouse",
|
|
71
|
-
CHILD: "Child",
|
|
72
|
-
SIBLING: "Sibling",
|
|
73
|
-
OTHER: "Other",
|
|
74
|
-
};
|
|
75
|
-
|
|
76
|
-
const CODE_LENGTH = {
|
|
77
|
-
OTP: 4,
|
|
78
|
-
ENV_NUMBER: 5,
|
|
79
|
-
};
|
|
80
|
-
|
|
81
|
-
module.exports = {
|
|
82
|
-
ROLES,
|
|
83
|
-
TRANSFER_STATUS,
|
|
84
|
-
CONTRIBUTION_TRANSACTION_STATUS,
|
|
85
|
-
QUEUES,
|
|
86
|
-
WORKERS,
|
|
87
|
-
AUTH_DATA,
|
|
88
|
-
ONBOARD_STATUS,
|
|
89
|
-
SUBSCRIPTION_PLAN_ID,
|
|
90
|
-
MEMBER_STATUS,
|
|
91
|
-
GENDER,
|
|
92
|
-
RELATIONSHIP,
|
|
93
|
-
CODE_LENGTH
|
|
94
|
-
};
|
|
1
|
+
const ROLES = {
|
|
2
|
+
SUPER_ADMIN: 1,
|
|
3
|
+
CHURCH_ADMIN: 2,
|
|
4
|
+
ADMIN: 3,
|
|
5
|
+
PUBLIC: 4,
|
|
6
|
+
};
|
|
7
|
+
const TRANSFER_STATUS = {
|
|
8
|
+
PENDING: "pending",
|
|
9
|
+
APPROVED: "approved",
|
|
10
|
+
REJECTED: "rejected",
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
const QUEUES = {
|
|
14
|
+
MASTER: "master",
|
|
15
|
+
DB_CREATE: "db-create",
|
|
16
|
+
MIGRATION: "migration",
|
|
17
|
+
SEED: "seed",
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
const CONTRIBUTION_TRANSACTION_STATUS = {
|
|
21
|
+
PENDING: "Pending",
|
|
22
|
+
CLEARED: "Cleared",
|
|
23
|
+
VOIDED: "Voided",
|
|
24
|
+
REVERSED: "Reversed",
|
|
25
|
+
};
|
|
26
|
+
const WORKERS = QUEUES;
|
|
27
|
+
|
|
28
|
+
const AUTH_DATA = {
|
|
29
|
+
SESSION_EXPIRY: 2 * 60 * 60, // 2 hr
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
const ONBOARD_STATUS = {
|
|
33
|
+
DB_CREATION_IN_PROGRESS: "db_creation_in_progress",
|
|
34
|
+
DB_CREATION_FAILED: "db_creation_failed",
|
|
35
|
+
DB_CREATION_COMPLETED: "db_creation_completed",
|
|
36
|
+
MIGRATION_IN_PROGRESS: "migration_in_progress",
|
|
37
|
+
MIGRATION_FAILED: "migration_failed",
|
|
38
|
+
MIGRATION_COMPLETED: "migration_completed",
|
|
39
|
+
SEED_IN_PROGRESS: "seed_in_progress",
|
|
40
|
+
SEED_FAILED: "seed_failed",
|
|
41
|
+
SEED_COMPLETED: "seed_completed",
|
|
42
|
+
ONBOARD_COMPLETED: "onboard_completed",
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
const SUBSCRIPTION_PLAN_ID = {
|
|
46
|
+
FREE_TRAIL: 1,
|
|
47
|
+
BASIC: 2,
|
|
48
|
+
PREMIUM: 3,
|
|
49
|
+
CUSTOM: 4
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
const MEMBER_STATUS = {
|
|
53
|
+
ACTIVE: "Active",
|
|
54
|
+
INACTIVE: "Inactive",
|
|
55
|
+
DECEASED: "Deceased",
|
|
56
|
+
PROSPECT: "Prospect",
|
|
57
|
+
REGULAR_ATTENDEE: "Regular Attendee",
|
|
58
|
+
SINGLE_MEMBER: "Single Member",
|
|
59
|
+
VISITOR: "Visitor",
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
const GENDER = {
|
|
63
|
+
MALE: "Male",
|
|
64
|
+
FEMALE: "Female",
|
|
65
|
+
OTHER: "Other",
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
const RELATIONSHIP = {
|
|
69
|
+
HEAD: "Head",
|
|
70
|
+
SPOUSE: "Spouse",
|
|
71
|
+
CHILD: "Child",
|
|
72
|
+
SIBLING: "Sibling",
|
|
73
|
+
OTHER: "Other",
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
const CODE_LENGTH = {
|
|
77
|
+
OTP: 4,
|
|
78
|
+
ENV_NUMBER: 5,
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
module.exports = {
|
|
82
|
+
ROLES,
|
|
83
|
+
TRANSFER_STATUS,
|
|
84
|
+
CONTRIBUTION_TRANSACTION_STATUS,
|
|
85
|
+
QUEUES,
|
|
86
|
+
WORKERS,
|
|
87
|
+
AUTH_DATA,
|
|
88
|
+
ONBOARD_STATUS,
|
|
89
|
+
SUBSCRIPTION_PLAN_ID,
|
|
90
|
+
MEMBER_STATUS,
|
|
91
|
+
GENDER,
|
|
92
|
+
RELATIONSHIP,
|
|
93
|
+
CODE_LENGTH
|
|
94
|
+
};
|
package/controllers/church.js
CHANGED
|
@@ -1,100 +1,100 @@
|
|
|
1
|
-
const { churchService } = require("../services");
|
|
2
|
-
const errorCodes = require("../config/errorCodes");
|
|
3
|
-
const response = require("../utils/response");
|
|
4
|
-
const errorMsgs = require("../config/errorMsgs");
|
|
5
|
-
class ChurchController {
|
|
6
|
-
async onboardChurch(req, res) {
|
|
7
|
-
try {
|
|
8
|
-
const result = await churchService.onboardChurch(req.body);
|
|
9
|
-
response.success(req, res, result.code, result.data, result.message);
|
|
10
|
-
} catch (err) {
|
|
11
|
-
response.error(req, res, errorCodes.HTTP_INTERNAL_SERVER_ERROR, err.message);
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
async allChurch(req, res) {
|
|
16
|
-
try {
|
|
17
|
-
const result = await churchService.allChurchService(req.query);
|
|
18
|
-
response.success(req, res, result.code, result.data, result.message);
|
|
19
|
-
} catch (err) {
|
|
20
|
-
response.error(req, res, errorCodes.HTTP_INTERNAL_SERVER_ERROR, err);
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
async churchById(req, res) {
|
|
25
|
-
try {
|
|
26
|
-
const result = await churchService.churchByIdService(req.params);
|
|
27
|
-
response.success(req, res, result.code, result.data, result.message);
|
|
28
|
-
} catch (err) {
|
|
29
|
-
response.error(req, res, errorCodes.HTTP_INTERNAL_SERVER_ERROR, err);
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
async updateChurchById(req, res) {
|
|
34
|
-
try {
|
|
35
|
-
const result = await churchService.updateChurchByIdService({ ...req.params, ...req.body });
|
|
36
|
-
response.success(req, res, result.code, result.data, result.message);
|
|
37
|
-
} catch (err) {
|
|
38
|
-
response.error(req, res, errorCodes.HTTP_INTERNAL_SERVER_ERROR, err);
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
async uploadFile(req, res) {
|
|
42
|
-
try {
|
|
43
|
-
const file = req.files[0];
|
|
44
|
-
let file_folder = "documents";
|
|
45
|
-
if (file?.mimetype?.includes("image")) file_folder = "images";
|
|
46
|
-
else if (file?.mimetype?.includes("video")) file_folder = "videos";
|
|
47
|
-
else file_folder = "documents";
|
|
48
|
-
const responseData = {
|
|
49
|
-
url: `${process.env.BASE_URL}/dbms/api/uploads/${file_folder}/${file?.filename}`,
|
|
50
|
-
original_name: file?.originalname,
|
|
51
|
-
};
|
|
52
|
-
response.success(req, res, errorCodes.HTTP_OK, responseData, errorMsgs.success);
|
|
53
|
-
} catch (err) {
|
|
54
|
-
response.error(req, res, errorCodes.HTTP_INTERNAL_SERVER_ERROR, err);
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
async addChurchPermission(req, res) {
|
|
58
|
-
try {
|
|
59
|
-
const result = await churchService.addChurchPermissionService({
|
|
60
|
-
...req.params,
|
|
61
|
-
...req.body,
|
|
62
|
-
});
|
|
63
|
-
response.success(req, res, result.code, result.data, result.message);
|
|
64
|
-
} catch (err) {
|
|
65
|
-
response.error(req, res, errorCodes.HTTP_INTERNAL_SERVER_ERROR, err);
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
async getChurchPermission(req, res) {
|
|
69
|
-
try {
|
|
70
|
-
const { roleId } = req.user;
|
|
71
|
-
const result = await churchService.getChurchPermissionService({
|
|
72
|
-
...req.params,
|
|
73
|
-
roleId,
|
|
74
|
-
});
|
|
75
|
-
response.success(req, res, result.code, result.data, result.message);
|
|
76
|
-
} catch (err) {
|
|
77
|
-
response.error(req, res, errorCodes.HTTP_INTERNAL_SERVER_ERROR, err);
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
async deleteChurchPermissionById(req, res) {
|
|
81
|
-
try {
|
|
82
|
-
const result = await churchService.deleteChurchPermissionByIdService({
|
|
83
|
-
...req.params,
|
|
84
|
-
});
|
|
85
|
-
response.success(req, res, result.code, result.data, result.message);
|
|
86
|
-
} catch (err) {
|
|
87
|
-
response.error(req, res, errorCodes.HTTP_INTERNAL_SERVER_ERROR, err);
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
async login(req, res) {
|
|
92
|
-
try {
|
|
93
|
-
const result = await churchService.login(req.body);
|
|
94
|
-
response.success(req, res, result.code, result.data, result.message);
|
|
95
|
-
} catch (err) {
|
|
96
|
-
response.error(req, res, errorCodes.HTTP_INTERNAL_SERVER_ERROR, err.message);
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
module.exports = new ChurchController();
|
|
1
|
+
const { churchService } = require("../services");
|
|
2
|
+
const errorCodes = require("../config/errorCodes");
|
|
3
|
+
const response = require("../utils/response");
|
|
4
|
+
const errorMsgs = require("../config/errorMsgs");
|
|
5
|
+
class ChurchController {
|
|
6
|
+
async onboardChurch(req, res) {
|
|
7
|
+
try {
|
|
8
|
+
const result = await churchService.onboardChurch(req.body);
|
|
9
|
+
response.success(req, res, result.code, result.data, result.message);
|
|
10
|
+
} catch (err) {
|
|
11
|
+
response.error(req, res, errorCodes.HTTP_INTERNAL_SERVER_ERROR, err.message);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
async allChurch(req, res) {
|
|
16
|
+
try {
|
|
17
|
+
const result = await churchService.allChurchService(req.query);
|
|
18
|
+
response.success(req, res, result.code, result.data, result.message);
|
|
19
|
+
} catch (err) {
|
|
20
|
+
response.error(req, res, errorCodes.HTTP_INTERNAL_SERVER_ERROR, err);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
async churchById(req, res) {
|
|
25
|
+
try {
|
|
26
|
+
const result = await churchService.churchByIdService(req.params);
|
|
27
|
+
response.success(req, res, result.code, result.data, result.message);
|
|
28
|
+
} catch (err) {
|
|
29
|
+
response.error(req, res, errorCodes.HTTP_INTERNAL_SERVER_ERROR, err);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
async updateChurchById(req, res) {
|
|
34
|
+
try {
|
|
35
|
+
const result = await churchService.updateChurchByIdService({ ...req.params, ...req.body });
|
|
36
|
+
response.success(req, res, result.code, result.data, result.message);
|
|
37
|
+
} catch (err) {
|
|
38
|
+
response.error(req, res, errorCodes.HTTP_INTERNAL_SERVER_ERROR, err);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
async uploadFile(req, res) {
|
|
42
|
+
try {
|
|
43
|
+
const file = req.files[0];
|
|
44
|
+
let file_folder = "documents";
|
|
45
|
+
if (file?.mimetype?.includes("image")) file_folder = "images";
|
|
46
|
+
else if (file?.mimetype?.includes("video")) file_folder = "videos";
|
|
47
|
+
else file_folder = "documents";
|
|
48
|
+
const responseData = {
|
|
49
|
+
url: `${process.env.BASE_URL}/dbms/api/uploads/${file_folder}/${file?.filename}`,
|
|
50
|
+
original_name: file?.originalname,
|
|
51
|
+
};
|
|
52
|
+
response.success(req, res, errorCodes.HTTP_OK, responseData, errorMsgs.success);
|
|
53
|
+
} catch (err) {
|
|
54
|
+
response.error(req, res, errorCodes.HTTP_INTERNAL_SERVER_ERROR, err);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
async addChurchPermission(req, res) {
|
|
58
|
+
try {
|
|
59
|
+
const result = await churchService.addChurchPermissionService({
|
|
60
|
+
...req.params,
|
|
61
|
+
...req.body,
|
|
62
|
+
});
|
|
63
|
+
response.success(req, res, result.code, result.data, result.message);
|
|
64
|
+
} catch (err) {
|
|
65
|
+
response.error(req, res, errorCodes.HTTP_INTERNAL_SERVER_ERROR, err);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
async getChurchPermission(req, res) {
|
|
69
|
+
try {
|
|
70
|
+
const { roleId } = req.user;
|
|
71
|
+
const result = await churchService.getChurchPermissionService({
|
|
72
|
+
...req.params,
|
|
73
|
+
roleId,
|
|
74
|
+
});
|
|
75
|
+
response.success(req, res, result.code, result.data, result.message);
|
|
76
|
+
} catch (err) {
|
|
77
|
+
response.error(req, res, errorCodes.HTTP_INTERNAL_SERVER_ERROR, err);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
async deleteChurchPermissionById(req, res) {
|
|
81
|
+
try {
|
|
82
|
+
const result = await churchService.deleteChurchPermissionByIdService({
|
|
83
|
+
...req.params,
|
|
84
|
+
});
|
|
85
|
+
response.success(req, res, result.code, result.data, result.message);
|
|
86
|
+
} catch (err) {
|
|
87
|
+
response.error(req, res, errorCodes.HTTP_INTERNAL_SERVER_ERROR, err);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
async login(req, res) {
|
|
92
|
+
try {
|
|
93
|
+
const result = await churchService.login(req.body);
|
|
94
|
+
response.success(req, res, result.code, result.data, result.message);
|
|
95
|
+
} catch (err) {
|
|
96
|
+
response.error(req, res, errorCodes.HTTP_INTERNAL_SERVER_ERROR, err.message);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
module.exports = new ChurchController();
|
package/controllers/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
module.exports = {
|
|
2
|
-
ChurchController: require("./church"),
|
|
3
|
-
MigrationController: require("./migration"),
|
|
4
|
-
SeedController: require("./seed"),
|
|
5
|
-
MasterController: require("./master"),
|
|
6
|
-
};
|
|
1
|
+
module.exports = {
|
|
2
|
+
ChurchController: require("./church"),
|
|
3
|
+
MigrationController: require("./migration"),
|
|
4
|
+
SeedController: require("./seed"),
|
|
5
|
+
MasterController: require("./master"),
|
|
6
|
+
};
|