payservedb 6.5.8 → 6.5.9

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 (141) hide show
  1. package/.env +2 -2
  2. package/index.js +277 -277
  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 +92 -92
  10. package/src/models/assetsAssignment.js +64 -64
  11. package/src/models/auditTrail.js +319 -319
  12. package/src/models/auditlog.js +83 -83
  13. package/src/models/bankdetails.js +40 -40
  14. package/src/models/billerAddress.js +119 -119
  15. package/src/models/booking_invoice.js +151 -151
  16. package/src/models/bookinganalytics.js +63 -63
  17. package/src/models/bookingconfig.js +45 -45
  18. package/src/models/bookingproperty.js +122 -122
  19. package/src/models/bookingreservation.js +192 -192
  20. package/src/models/bookingrevenuerecord.js +84 -84
  21. package/src/models/budget.js +95 -95
  22. package/src/models/budgetCategory.js +19 -19
  23. package/src/models/campaigns.js +94 -94
  24. package/src/models/cashpayment.js +264 -264
  25. package/src/models/combinedUnits.js +62 -62
  26. package/src/models/common_area_electricity.js +38 -38
  27. package/src/models/common_area_generator.js +41 -41
  28. package/src/models/common_area_utility_alert.js +37 -37
  29. package/src/models/common_area_water.js +39 -39
  30. package/src/models/communication_status.js +33 -33
  31. package/src/models/company.js +53 -53
  32. package/src/models/country_tax.js +42 -42
  33. package/src/models/currency_settings.js +39 -39
  34. package/src/models/customer.js +208 -208
  35. package/src/models/dailyChecklist.js +97 -0
  36. package/src/models/default_payment_details.js +17 -17
  37. package/src/models/deliveryTimeMarks.js +18 -18
  38. package/src/models/dutyRosterChecklist.js +250 -250
  39. package/src/models/dutyroster.js +136 -136
  40. package/src/models/email.js +37 -37
  41. package/src/models/email_sms_queue.js +61 -61
  42. package/src/models/entry_exit.js +53 -53
  43. package/src/models/expense.js +99 -99
  44. package/src/models/expense_category.js +45 -45
  45. package/src/models/facility.js +61 -61
  46. package/src/models/facilityWalletTransactionsMetadata.js +236 -236
  47. package/src/models/facility_departements.js +20 -20
  48. package/src/models/facility_payment_details.js +20 -20
  49. package/src/models/facilityasset.js +25 -25
  50. package/src/models/faq.js +18 -18
  51. package/src/models/gl_account_double_entries.js +25 -25
  52. package/src/models/gl_accounts.js +56 -56
  53. package/src/models/gl_entries.js +49 -49
  54. package/src/models/goodsReceivedNotes.js +115 -115
  55. package/src/models/guard.js +47 -47
  56. package/src/models/handover.js +246 -246
  57. package/src/models/invoice.js +336 -336
  58. package/src/models/item_inspection.js +67 -67
  59. package/src/models/leaseagreement.js +226 -226
  60. package/src/models/leasetemplate.js +17 -17
  61. package/src/models/levy.js +206 -206
  62. package/src/models/levy_invoice_settings.js +26 -26
  63. package/src/models/levycontract.js +117 -117
  64. package/src/models/levytype.js +23 -23
  65. package/src/models/maintenance_service_vendor.js +38 -38
  66. package/src/models/maintenance_services.js +17 -17
  67. package/src/models/maintenancerequisition.js +31 -31
  68. package/src/models/master_workplan.js +32 -32
  69. package/src/models/master_workplan_child.js +34 -34
  70. package/src/models/message.js +38 -38
  71. package/src/models/module.js +21 -21
  72. package/src/models/notification.js +44 -44
  73. package/src/models/paymentTermsMarks.js +19 -19
  74. package/src/models/penalty.js +76 -76
  75. package/src/models/pendingCredentials.js +32 -32
  76. package/src/models/powerMeterCustomerAccount.js +78 -78
  77. package/src/models/powerMeterCustomerBand.js +14 -14
  78. package/src/models/powerMeterDailyReading.js +30 -30
  79. package/src/models/powerMeterMonthlyReading.js +34 -34
  80. package/src/models/powerMeterPowerCharges.js +53 -53
  81. package/src/models/powerMeterSettings.js +138 -138
  82. package/src/models/powerMeterSingleDayReading.js +32 -32
  83. package/src/models/powerMeters.js +65 -65
  84. package/src/models/powerMetersManufacturer.js +14 -14
  85. package/src/models/propertyManagerContract.js +556 -556
  86. package/src/models/propertyManagerRevenue.js +195 -195
  87. package/src/models/purchaseOrderInvoice.js +74 -74
  88. package/src/models/purchase_order.js +213 -213
  89. package/src/models/purchase_request.js +110 -110
  90. package/src/models/refresh_token.js +23 -23
  91. package/src/models/reminder.js +197 -197
  92. package/src/models/report.js +13 -13
  93. package/src/models/resident.js +121 -121
  94. package/src/models/rfq_details.js +131 -131
  95. package/src/models/rfq_response.js +153 -153
  96. package/src/models/service_charge_invoice_upload.js +42 -42
  97. package/src/models/service_charge_payments.js +27 -27
  98. package/src/models/servicerequest.js +55 -55
  99. package/src/models/settings.js +62 -62
  100. package/src/models/smart_meter_daily_consumption.js +44 -44
  101. package/src/models/sms_africastalking.js +20 -20
  102. package/src/models/sms_balance_notification.js +26 -26
  103. package/src/models/sms_meliora.js +20 -20
  104. package/src/models/staff.js +36 -36
  105. package/src/models/stocksandspare.js +161 -161
  106. package/src/models/suppliers.js +74 -74
  107. package/src/models/tickets.js +121 -121
  108. package/src/models/unitManagementTemplate.js +44 -44
  109. package/src/models/unitasset.js +25 -25
  110. package/src/models/units.js +117 -117
  111. package/src/models/user.js +186 -186
  112. package/src/models/valueaddedservices.js +79 -79
  113. package/src/models/vas_invoices_upload.js +50 -50
  114. package/src/models/vas_payments.js +24 -24
  115. package/src/models/vasinvoice.js +192 -192
  116. package/src/models/vasvendor.js +57 -57
  117. package/src/models/visitLog.js +86 -86
  118. package/src/models/visitor.js +67 -67
  119. package/src/models/waitlist.js +45 -45
  120. package/src/models/wallet.js +44 -44
  121. package/src/models/wallet_transactions.js +50 -50
  122. package/src/models/water_invoice.js +305 -305
  123. package/src/models/water_meter_Command_Queue.js +33 -33
  124. package/src/models/water_meter_account.js +78 -78
  125. package/src/models/water_meter_billing.js +58 -58
  126. package/src/models/water_meter_communication.js +17 -17
  127. package/src/models/water_meter_communication_logs.js +30 -30
  128. package/src/models/water_meter_concentrator.js +66 -66
  129. package/src/models/water_meter_daily_history.js +32 -32
  130. package/src/models/water_meter_iot_cards.js +34 -34
  131. package/src/models/water_meter_manufacturer.js +35 -35
  132. package/src/models/water_meter_monthly_history.js +36 -36
  133. package/src/models/water_meter_negative_amounts.js +38 -38
  134. package/src/models/water_meter_settings.js +180 -180
  135. package/src/models/water_meter_single_day_history.js +34 -34
  136. package/src/models/water_meter_size.js +15 -15
  137. package/src/models/water_meters.js +134 -134
  138. package/src/models/water_meters_delivery.js +76 -76
  139. package/src/models/water_prepaid_credit.js +47 -47
  140. package/src/models/water_prepaid_debit.js +50 -50
  141. package/src/models/workorder.js +49 -49
@@ -1,152 +1,152 @@
1
- const mongoose = require('mongoose');
2
-
3
- // Define the schema for Booking Invoices
4
- const bookingInvoiceSchema = new mongoose.Schema({
5
- invoiceNumber: {
6
- type: String,
7
- required: true,
8
- unique: true,
9
- },
10
- facilityId: {
11
- type: mongoose.Schema.Types.ObjectId,
12
- ref: 'Facility',
13
- required: true
14
- },
15
- invoiceId: {
16
- type: String,
17
- required: true,
18
- unique: true
19
- },
20
- bookingReservationId: {
21
- type: mongoose.Schema.Types.ObjectId,
22
- ref: 'BookingReservation',
23
- required: true
24
- },
25
- unitId: {
26
- type: mongoose.Schema.Types.ObjectId,
27
- ref: 'Unit',
28
- required: true
29
- },
30
- guestInfo: {
31
- name: {
32
- type: String,
33
- required: true
34
- },
35
- email: {
36
- type: String,
37
- required: true
38
- },
39
- phone: {
40
- type: String,
41
- required: true
42
- },
43
- idNumber: {
44
- type: String
45
- }
46
- },
47
- issueDate: {
48
- type: Date,
49
- default: Date.now,
50
- required: true
51
- },
52
- dueDate: {
53
- type: Date,
54
- required: true
55
- },
56
- checkIn: {
57
- type: Date,
58
- required: true
59
- },
60
- checkOut: {
61
- type: Date,
62
- required: true
63
- },
64
- basePrice: {
65
- type: Number,
66
- required: true
67
- },
68
- totalAmount: {
69
- type: Number,
70
- required: true
71
- },
72
- additionalServices: [{
73
- serviceId: {
74
- type: mongoose.Schema.Types.ObjectId,
75
- ref: 'ValueAddedService'
76
- },
77
- serviceName: {
78
- type: String,
79
- required: true
80
- },
81
- quantity: {
82
- type: Number,
83
- default: 1
84
- },
85
- price: {
86
- type: Number,
87
- required: true
88
- }
89
- }],
90
- discountAmount: {
91
- type: Number,
92
- default: 0
93
- },
94
- taxAmount: {
95
- type: Number,
96
- default: 0
97
- },
98
- paymentMethod: {
99
- type: String,
100
- enum: ['Cash', 'Card', 'Bank Transfer', 'Mobile Money', 'Other'],
101
- required: true
102
- },
103
- paymentStatus: {
104
- type: String,
105
- enum: ['Pending', 'Paid', 'Partially Paid', 'Refunded', 'Cancelled'],
106
- default: 'Pending'
107
- },
108
- paymentHistory: [{
109
- amount: {
110
- type: Number,
111
- required: true
112
- },
113
- paymentMethod: {
114
- type: String,
115
- enum: ['Cash', 'Card', 'Bank Transfer', 'Mobile Money', 'Other'],
116
- required: true
117
- },
118
- transactionId: String,
119
- date: {
120
- type: Date,
121
- default: Date.now
122
- },
123
- notes: String
124
- }],
125
- currencyId: {
126
- type: mongoose.Schema.Types.ObjectId,
127
- ref: 'Currency',
128
- required: true
129
- },
130
- status: {
131
- type: String,
132
- enum: ['active', 'cancelled', 'void'],
133
- default: 'active'
134
- },
135
- notes: {
136
- type: String
137
- },
138
- createdBy: {
139
- type: mongoose.Schema.Types.ObjectId,
140
- ref: 'User'
141
- },
142
- updatedBy: {
143
- type: mongoose.Schema.Types.ObjectId,
144
- ref: 'User'
145
- }
146
- }, {
147
- timestamps: true
148
- });
149
-
150
- const BookingInvoice = mongoose.model('BookingInvoice', bookingInvoiceSchema);
151
-
1
+ const mongoose = require('mongoose');
2
+
3
+ // Define the schema for Booking Invoices
4
+ const bookingInvoiceSchema = new mongoose.Schema({
5
+ invoiceNumber: {
6
+ type: String,
7
+ required: true,
8
+ unique: true,
9
+ },
10
+ facilityId: {
11
+ type: mongoose.Schema.Types.ObjectId,
12
+ ref: 'Facility',
13
+ required: true
14
+ },
15
+ invoiceId: {
16
+ type: String,
17
+ required: true,
18
+ unique: true
19
+ },
20
+ bookingReservationId: {
21
+ type: mongoose.Schema.Types.ObjectId,
22
+ ref: 'BookingReservation',
23
+ required: true
24
+ },
25
+ unitId: {
26
+ type: mongoose.Schema.Types.ObjectId,
27
+ ref: 'Unit',
28
+ required: true
29
+ },
30
+ guestInfo: {
31
+ name: {
32
+ type: String,
33
+ required: true
34
+ },
35
+ email: {
36
+ type: String,
37
+ required: true
38
+ },
39
+ phone: {
40
+ type: String,
41
+ required: true
42
+ },
43
+ idNumber: {
44
+ type: String
45
+ }
46
+ },
47
+ issueDate: {
48
+ type: Date,
49
+ default: Date.now,
50
+ required: true
51
+ },
52
+ dueDate: {
53
+ type: Date,
54
+ required: true
55
+ },
56
+ checkIn: {
57
+ type: Date,
58
+ required: true
59
+ },
60
+ checkOut: {
61
+ type: Date,
62
+ required: true
63
+ },
64
+ basePrice: {
65
+ type: Number,
66
+ required: true
67
+ },
68
+ totalAmount: {
69
+ type: Number,
70
+ required: true
71
+ },
72
+ additionalServices: [{
73
+ serviceId: {
74
+ type: mongoose.Schema.Types.ObjectId,
75
+ ref: 'ValueAddedService'
76
+ },
77
+ serviceName: {
78
+ type: String,
79
+ required: true
80
+ },
81
+ quantity: {
82
+ type: Number,
83
+ default: 1
84
+ },
85
+ price: {
86
+ type: Number,
87
+ required: true
88
+ }
89
+ }],
90
+ discountAmount: {
91
+ type: Number,
92
+ default: 0
93
+ },
94
+ taxAmount: {
95
+ type: Number,
96
+ default: 0
97
+ },
98
+ paymentMethod: {
99
+ type: String,
100
+ enum: ['Cash', 'Card', 'Bank Transfer', 'Mobile Money', 'Other'],
101
+ required: true
102
+ },
103
+ paymentStatus: {
104
+ type: String,
105
+ enum: ['Pending', 'Paid', 'Partially Paid', 'Refunded', 'Cancelled'],
106
+ default: 'Pending'
107
+ },
108
+ paymentHistory: [{
109
+ amount: {
110
+ type: Number,
111
+ required: true
112
+ },
113
+ paymentMethod: {
114
+ type: String,
115
+ enum: ['Cash', 'Card', 'Bank Transfer', 'Mobile Money', 'Other'],
116
+ required: true
117
+ },
118
+ transactionId: String,
119
+ date: {
120
+ type: Date,
121
+ default: Date.now
122
+ },
123
+ notes: String
124
+ }],
125
+ currencyId: {
126
+ type: mongoose.Schema.Types.ObjectId,
127
+ ref: 'Currency',
128
+ required: true
129
+ },
130
+ status: {
131
+ type: String,
132
+ enum: ['active', 'cancelled', 'void'],
133
+ default: 'active'
134
+ },
135
+ notes: {
136
+ type: String
137
+ },
138
+ createdBy: {
139
+ type: mongoose.Schema.Types.ObjectId,
140
+ ref: 'User'
141
+ },
142
+ updatedBy: {
143
+ type: mongoose.Schema.Types.ObjectId,
144
+ ref: 'User'
145
+ }
146
+ }, {
147
+ timestamps: true
148
+ });
149
+
150
+ const BookingInvoice = mongoose.model('BookingInvoice', bookingInvoiceSchema);
151
+
152
152
  module.exports = BookingInvoice;
@@ -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;