payservedb 5.7.6 → 5.7.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (116) hide show
  1. package/.env +2 -2
  2. package/index.js +198 -196
  3. package/package.json +17 -17
  4. package/src/models/account.js +35 -35
  5. package/src/models/apilog.js +18 -18
  6. package/src/models/approvalsWorkflows.js +49 -49
  7. package/src/models/archivedapilog.js +18 -18
  8. package/src/models/archivedauditlog.js +83 -83
  9. package/src/models/asset.js +34 -34
  10. package/src/models/assetsAssignment.js +64 -64
  11. package/src/models/auditlog.js +83 -83
  12. package/src/models/bankdetails.js +40 -40
  13. package/src/models/billerAddress.js +119 -119
  14. package/src/models/booking_invoice.js +151 -151
  15. package/src/models/bookinganalytics.js +63 -63
  16. package/src/models/bookingconfig.js +45 -45
  17. package/src/models/bookingproperty.js +112 -112
  18. package/src/models/bookingreservation.js +192 -192
  19. package/src/models/bookingrevenuerecord.js +84 -84
  20. package/src/models/budget.js +91 -91
  21. package/src/models/budgetCategory.js +19 -19
  22. package/src/models/campaigns.js +72 -72
  23. package/src/models/cashpayment.js +262 -262
  24. package/src/models/combinedUnits.js +62 -62
  25. package/src/models/common_area_electricity.js +38 -38
  26. package/src/models/common_area_generator.js +41 -41
  27. package/src/models/common_area_utility_alert.js +37 -37
  28. package/src/models/common_area_water.js +39 -39
  29. package/src/models/company.js +53 -53
  30. package/src/models/country_tax.js +42 -42
  31. package/src/models/currency_settings.js +39 -39
  32. package/src/models/customer.js +200 -200
  33. package/src/models/default_payment_details.js +17 -17
  34. package/src/models/dutyroster.js +107 -107
  35. package/src/models/email.js +37 -37
  36. package/src/models/entry_exit.js +53 -53
  37. package/src/models/expense.js +99 -99
  38. package/src/models/expense_category.js +45 -45
  39. package/src/models/facility.js +61 -61
  40. package/src/models/facility_payment_details.js +20 -20
  41. package/src/models/facilityasset.js +25 -25
  42. package/src/models/faq.js +18 -18
  43. package/src/models/gl_account_double_entries.js +25 -25
  44. package/src/models/gl_accounts.js +56 -56
  45. package/src/models/gl_entries.js +49 -49
  46. package/src/models/guard.js +47 -47
  47. package/src/models/handover.js +246 -246
  48. package/src/models/invoice.js +336 -336
  49. package/src/models/item_inspection.js +67 -67
  50. package/src/models/leaseagreement.js +221 -221
  51. package/src/models/leasetemplate.js +17 -17
  52. package/src/models/levy.js +206 -206
  53. package/src/models/levy_invoice_settings.js +26 -26
  54. package/src/models/levycontract.js +117 -117
  55. package/src/models/levytype.js +23 -23
  56. package/src/models/maintenance_service_vendor.js +38 -38
  57. package/src/models/maintenance_services.js +17 -17
  58. package/src/models/maintenancerequisition.js +31 -31
  59. package/src/models/message.js +38 -38
  60. package/src/models/module.js +21 -21
  61. package/src/models/notification.js +44 -44
  62. package/src/models/penalty.js +76 -76
  63. package/src/models/pendingCredentials.js +32 -32
  64. package/src/models/propertyManagerContract.js +171 -171
  65. package/src/models/propertyManagerRevenue.js +100 -100
  66. package/src/models/purchase_order.js +202 -202
  67. package/src/models/purchase_request.js +110 -110
  68. package/src/models/refresh_token.js +23 -23
  69. package/src/models/reminder.js +197 -197
  70. package/src/models/report.js +13 -13
  71. package/src/models/resident.js +121 -121
  72. package/src/models/rfq_details.js +131 -131
  73. package/src/models/rfq_response.js +110 -110
  74. package/src/models/service_charge_invoice_upload.js +42 -42
  75. package/src/models/service_charge_payments.js +27 -27
  76. package/src/models/servicerequest.js +55 -55
  77. package/src/models/settings.js +62 -62
  78. package/src/models/smart_meter_daily_consumption.js +44 -44
  79. package/src/models/sms_africastalking.js +20 -20
  80. package/src/models/sms_meliora.js +20 -20
  81. package/src/models/staff.js +36 -36
  82. package/src/models/stocksandspare.js +34 -34
  83. package/src/models/suppliers.js +74 -74
  84. package/src/models/tickets.js +121 -121
  85. package/src/models/unitManagementTemplate.js +44 -44
  86. package/src/models/unitasset.js +25 -25
  87. package/src/models/units.js +112 -112
  88. package/src/models/user.js +187 -187
  89. package/src/models/valueaddedservices.js +79 -79
  90. package/src/models/vas_invoices_upload.js +50 -50
  91. package/src/models/vas_payments.js +24 -24
  92. package/src/models/vasinvoice.js +192 -192
  93. package/src/models/vasvendor.js +57 -57
  94. package/src/models/visitLog.js +86 -86
  95. package/src/models/visitor.js +67 -67
  96. package/src/models/waitlist.js +45 -45
  97. package/src/models/wallet.js +35 -0
  98. package/src/models/wallet_transactions.js +50 -0
  99. package/src/models/water_invoice.js +193 -193
  100. package/src/models/water_meter_account.js +78 -78
  101. package/src/models/water_meter_billing.js +58 -58
  102. package/src/models/water_meter_communication.js +17 -17
  103. package/src/models/water_meter_communication_logs.js +30 -30
  104. package/src/models/water_meter_concentrator.js +63 -63
  105. package/src/models/water_meter_daily_history.js +32 -32
  106. package/src/models/water_meter_iot_cards.js +34 -34
  107. package/src/models/water_meter_manufacturer.js +35 -35
  108. package/src/models/water_meter_monthly_history.js +36 -36
  109. package/src/models/water_meter_settings.js +114 -114
  110. package/src/models/water_meter_single_day_history.js +34 -34
  111. package/src/models/water_meter_size.js +15 -15
  112. package/src/models/water_meters.js +117 -117
  113. package/src/models/water_meters_delivery.js +76 -76
  114. package/src/models/water_prepaid_credit.js +43 -43
  115. package/src/models/water_prepaid_debit.js +50 -50
  116. package/src/models/workorder.js +49 -49
@@ -1,64 +1,64 @@
1
- const mongoose = require('mongoose');
2
-
3
- // Define schema for Booking Analytics
4
- const bookingAnalyticsSchema = new mongoose.Schema({
5
- facilityId: {
6
- type: mongoose.Schema.Types.ObjectId,
7
- ref: 'Facility',
8
- required: true
9
- },
10
- date: {
11
- type: Date,
12
- required: true
13
- },
14
- metrics: {
15
- totalBookings: {
16
- type: Number,
17
- default: 0
18
- },
19
- totalRevenue: {
20
- type: Number,
21
- default: 0
22
- },
23
- pmCommission: {
24
- type: Number,
25
- default: 0
26
- },
27
- landlordRevenue: {
28
- type: Number,
29
- default: 0
30
- },
31
- occupancyRate: {
32
- type: Number,
33
- default: 0
34
- },
35
- averageDailyRate: {
36
- type: Number,
37
- default: 0
38
- }
39
- },
40
- bookingsByStatus: {
41
- new: {
42
- type: Number,
43
- default: 0
44
- },
45
- confirmed: {
46
- type: Number,
47
- default: 0
48
- },
49
- cancelled: {
50
- type: Number,
51
- default: 0
52
- },
53
- completed: {
54
- type: Number,
55
- default: 0
56
- }
57
- }
58
- }, {
59
- timestamps: true
60
- });
61
- // Create model from schema
62
- const BookingAnalytics = mongoose.model('BookingAnalytics', bookingAnalyticsSchema);
63
-
1
+ const mongoose = require('mongoose');
2
+
3
+ // Define schema for Booking Analytics
4
+ const bookingAnalyticsSchema = new mongoose.Schema({
5
+ facilityId: {
6
+ type: mongoose.Schema.Types.ObjectId,
7
+ ref: 'Facility',
8
+ required: true
9
+ },
10
+ date: {
11
+ type: Date,
12
+ required: true
13
+ },
14
+ metrics: {
15
+ totalBookings: {
16
+ type: Number,
17
+ default: 0
18
+ },
19
+ totalRevenue: {
20
+ type: Number,
21
+ default: 0
22
+ },
23
+ pmCommission: {
24
+ type: Number,
25
+ default: 0
26
+ },
27
+ landlordRevenue: {
28
+ type: Number,
29
+ default: 0
30
+ },
31
+ occupancyRate: {
32
+ type: Number,
33
+ default: 0
34
+ },
35
+ averageDailyRate: {
36
+ type: Number,
37
+ default: 0
38
+ }
39
+ },
40
+ bookingsByStatus: {
41
+ new: {
42
+ type: Number,
43
+ default: 0
44
+ },
45
+ confirmed: {
46
+ type: Number,
47
+ default: 0
48
+ },
49
+ cancelled: {
50
+ type: Number,
51
+ default: 0
52
+ },
53
+ completed: {
54
+ type: Number,
55
+ default: 0
56
+ }
57
+ }
58
+ }, {
59
+ timestamps: true
60
+ });
61
+ // Create model from schema
62
+ const BookingAnalytics = mongoose.model('BookingAnalytics', bookingAnalyticsSchema);
63
+
64
64
  module.exports = BookingAnalytics;
@@ -1,46 +1,46 @@
1
- const mongoose = require('mongoose');
2
-
3
- // Define schema for API Configuration (for Booking.com integration if needed)
4
- const bookingConfigSchema = new mongoose.Schema({
5
- facilityId: {
6
- type: mongoose.Schema.Types.ObjectId,
7
- ref: 'Facility',
8
- required: true
9
- },
10
- apiKey: {
11
- type: String,
12
- required: false
13
- },
14
- apiSecret: {
15
- type: String,
16
- required: false
17
- },
18
- isEnabled: {
19
- type: Boolean,
20
- default: false
21
- },
22
- lastConnected: {
23
- type: Date
24
- },
25
- settings: {
26
- autoAcceptBookings: {
27
- type: Boolean,
28
- default: false
29
- },
30
- syncCalendar: {
31
- type: Boolean,
32
- default: true
33
- },
34
- defaultCommission: {
35
- type: Number,
36
- default: 10
37
- }
38
- }
39
- }, {
40
- timestamps: true
41
- });
42
-
43
- // Create model from schema
44
- const BookingConfig = mongoose.model('BookingConfig', bookingConfigSchema);
45
-
1
+ const mongoose = require('mongoose');
2
+
3
+ // Define schema for API Configuration (for Booking.com integration if needed)
4
+ const bookingConfigSchema = new mongoose.Schema({
5
+ facilityId: {
6
+ type: mongoose.Schema.Types.ObjectId,
7
+ ref: 'Facility',
8
+ required: true
9
+ },
10
+ apiKey: {
11
+ type: String,
12
+ required: false
13
+ },
14
+ apiSecret: {
15
+ type: String,
16
+ required: false
17
+ },
18
+ isEnabled: {
19
+ type: Boolean,
20
+ default: false
21
+ },
22
+ lastConnected: {
23
+ type: Date
24
+ },
25
+ settings: {
26
+ autoAcceptBookings: {
27
+ type: Boolean,
28
+ default: false
29
+ },
30
+ syncCalendar: {
31
+ type: Boolean,
32
+ default: true
33
+ },
34
+ defaultCommission: {
35
+ type: Number,
36
+ default: 10
37
+ }
38
+ }
39
+ }, {
40
+ timestamps: true
41
+ });
42
+
43
+ // Create model from schema
44
+ const BookingConfig = mongoose.model('BookingConfig', bookingConfigSchema);
45
+
46
46
  module.exports = BookingConfig;
@@ -1,113 +1,113 @@
1
- const mongoose = require('mongoose');
2
-
3
- // Define the schema for Booking Properties (listing configuration)
4
- const bookingPropertySchema = new mongoose.Schema({
5
- facilityId: {
6
- type: mongoose.Schema.Types.ObjectId,
7
- ref: 'Facility',
8
- required: true
9
- },
10
- unitId: {
11
- type: mongoose.Schema.Types.ObjectId,
12
- ref: 'Unit',
13
- required: true
14
- },
15
- division: {
16
- type: String,
17
- required: false
18
- },
19
- description: {
20
- type: String,
21
- required: false
22
- },
23
- amenities: [{
24
- type: String
25
- }],
26
- basePrice: {
27
- type: Number,
28
- required: true
29
- },
30
- currencyId: {
31
- type: mongoose.Schema.Types.ObjectId,
32
- ref: 'Currency',
33
- required: true
34
- },
35
- weekendPriceAdjustment: {
36
- type: Number,
37
- default: 0
38
- },
39
- minimumStay: {
40
- type: Number,
41
- default: 1
42
- },
43
- maximumStay: {
44
- type: Number,
45
- default: 30
46
- },
47
- advanceBookingDays: {
48
- type: Number,
49
- default: 0
50
- },
51
- cancellationPolicy: {
52
- type: String,
53
- enum: ['Flexible', 'Moderate', 'Strict'],
54
- default: 'Moderate'
55
- },
56
- isListed: {
57
- type: Boolean,
58
- default: false
59
- },
60
- commission: {
61
- type: Number,
62
- required: true,
63
- default: 10 // Default commission percentage
64
- },
65
- blockedDates: [{
66
- startDate: {
67
- type: Date,
68
- required: true
69
- },
70
- endDate: {
71
- type: Date,
72
- required: true
73
- },
74
- reason: {
75
- type: String,
76
- enum: ['Reservation', 'Renovation', 'Owner Use'],
77
- required: true
78
- },
79
- notes: {
80
- type: String
81
- }
82
- }],
83
- // For seasonal pricing or custom date ranges
84
- specialPricing: [{
85
- startDate: {
86
- type: Date,
87
- required: true
88
- },
89
- endDate: {
90
- type: Date,
91
- required: true
92
- },
93
- price: {
94
- type: Number,
95
- required: true
96
- },
97
- name: {
98
- type: String
99
- }
100
- }],
101
- status: {
102
- type: String,
103
- enum: ['Active', 'Inactive', 'Pending Approval'],
104
- default: 'Active'
105
- }
106
- }, {
107
- timestamps: true
108
- });
109
-
110
- // Create model from schema
111
- const BookingProperty = mongoose.model('BookingProperty', bookingPropertySchema);
112
-
1
+ const mongoose = require('mongoose');
2
+
3
+ // Define the schema for Booking Properties (listing configuration)
4
+ const bookingPropertySchema = new mongoose.Schema({
5
+ facilityId: {
6
+ type: mongoose.Schema.Types.ObjectId,
7
+ ref: 'Facility',
8
+ required: true
9
+ },
10
+ unitId: {
11
+ type: mongoose.Schema.Types.ObjectId,
12
+ ref: 'Unit',
13
+ required: true
14
+ },
15
+ division: {
16
+ type: String,
17
+ required: false
18
+ },
19
+ description: {
20
+ type: String,
21
+ required: false
22
+ },
23
+ amenities: [{
24
+ type: String
25
+ }],
26
+ basePrice: {
27
+ type: Number,
28
+ required: true
29
+ },
30
+ currencyId: {
31
+ type: mongoose.Schema.Types.ObjectId,
32
+ ref: 'Currency',
33
+ required: true
34
+ },
35
+ weekendPriceAdjustment: {
36
+ type: Number,
37
+ default: 0
38
+ },
39
+ minimumStay: {
40
+ type: Number,
41
+ default: 1
42
+ },
43
+ maximumStay: {
44
+ type: Number,
45
+ default: 30
46
+ },
47
+ advanceBookingDays: {
48
+ type: Number,
49
+ default: 0
50
+ },
51
+ cancellationPolicy: {
52
+ type: String,
53
+ enum: ['Flexible', 'Moderate', 'Strict'],
54
+ default: 'Moderate'
55
+ },
56
+ isListed: {
57
+ type: Boolean,
58
+ default: false
59
+ },
60
+ commission: {
61
+ type: Number,
62
+ required: true,
63
+ default: 10 // Default commission percentage
64
+ },
65
+ blockedDates: [{
66
+ startDate: {
67
+ type: Date,
68
+ required: true
69
+ },
70
+ endDate: {
71
+ type: Date,
72
+ required: true
73
+ },
74
+ reason: {
75
+ type: String,
76
+ enum: ['Reservation', 'Renovation', 'Owner Use'],
77
+ required: true
78
+ },
79
+ notes: {
80
+ type: String
81
+ }
82
+ }],
83
+ // For seasonal pricing or custom date ranges
84
+ specialPricing: [{
85
+ startDate: {
86
+ type: Date,
87
+ required: true
88
+ },
89
+ endDate: {
90
+ type: Date,
91
+ required: true
92
+ },
93
+ price: {
94
+ type: Number,
95
+ required: true
96
+ },
97
+ name: {
98
+ type: String
99
+ }
100
+ }],
101
+ status: {
102
+ type: String,
103
+ enum: ['Active', 'Inactive', 'Pending Approval'],
104
+ default: 'Active'
105
+ }
106
+ }, {
107
+ timestamps: true
108
+ });
109
+
110
+ // Create model from schema
111
+ const BookingProperty = mongoose.model('BookingProperty', bookingPropertySchema);
112
+
113
113
  module.exports = BookingProperty;