tango-api-schema 1.0.65 → 2.0.1

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 (43) hide show
  1. package/index.js +4 -78
  2. package/package.json +1 -1
  3. package/schema/lead.model.js +76 -0
  4. package/schema/otp.model.js +29 -0
  5. package/schema/activitylog.model.js +0 -42
  6. package/schema/applicationDefault.model.js +0 -24
  7. package/schema/brand.model.js +0 -439
  8. package/schema/camera.model.js +0 -105
  9. package/schema/client.model.js +0 -248
  10. package/schema/dailyAuditFiles.model.js +0 -44
  11. package/schema/dailyAuditStoreFiles.model.js +0 -54
  12. package/schema/dailyWorkLog.model.js +0 -141
  13. package/schema/dlProcessedDaily.model.js +0 -507
  14. package/schema/dlZone.model.js +0 -135
  15. package/schema/edgeappVersion.model.js +0 -23
  16. package/schema/eyeTest.model.js +0 -47
  17. package/schema/eyeTestData.model.js +0 -45
  18. package/schema/finance.model.js +0 -101
  19. package/schema/liveDetectionData.model.js +0 -39
  20. package/schema/liveProcessedData.model.js +0 -360
  21. package/schema/noSourceNormalizedDaily.model.js +0 -569
  22. package/schema/noSourceNormalizedHourly.model.js +0 -185
  23. package/schema/nob.model.js +0 -39
  24. package/schema/nobClient.model.js +0 -26
  25. package/schema/nobHourly.model.js +0 -43
  26. package/schema/normalizedProcessHour.model.js +0 -186
  27. package/schema/normalizedProcessedDaily.model.js +0 -560
  28. package/schema/processedCheckList.model.js +0 -164
  29. package/schema/processedDaily.model.js +0 -569
  30. package/schema/processedDetection.model.js +0 -77
  31. package/schema/processedHourly.model.js +0 -186
  32. package/schema/reportParameter.model.js +0 -13
  33. package/schema/revop.model.js +0 -93
  34. package/schema/source.model.js +0 -9
  35. package/schema/sourceNormalizedDaily.model.js +0 -565
  36. package/schema/sourceNormalizedHourly.model.js +0 -193
  37. package/schema/storeOperation.model.js +0 -66
  38. package/schema/stores.model.js +0 -577
  39. package/schema/ticket.model.js +0 -114
  40. package/schema/token.model.js +0 -32
  41. package/schema/user.model.js +0 -95
  42. package/schema/userRole.model.js +0 -28
  43. package/schema/zone.model.js +0 -209
package/index.js CHANGED
@@ -1,81 +1,7 @@
1
- import brandModel from "./schema/brand.model.js";
2
- import storeModel from "./schema/stores.model.js";
3
- import cameraModel from "./schema/camera.model.js";
4
- import clientModel from "./schema/client.model.js";
5
- import dailyAuditFilesModel from "./schema/dailyAuditFiles.model.js";
6
- import dailyAuditStoreFilesModel from "./schema/dailyAuditStoreFiles.model.js";
7
- import tokenModel from "./schema/token.model.js";
8
- import nobModel from './schema/nob.model.js';
9
- import nobClientModel from './schema/nobClient.model.js';
10
- import applicationDefaultModel from "./schema/applicationDefault.model.js";
11
- import userModel from "./schema/user.model.js";
12
- import userRoleModel from "./schema/userRole.model.js";
13
- import edgeappVersionModel from "./schema/edgeappVersion.model.js";
14
- import nobHourlyModel from "./schema/nobHourly.model.js";
15
- import processedCheckListModel from "./schema/processedCheckList.model.js";
16
- import processedDetectionModel from "./schema/processedDetection.model.js";
17
- import processedDailyModel from "./schema/processedDaily.model.js";
18
- import processedHourlyModel from "./schema/processedHourly.model.js";
19
- import dlProcessedDailyModel from "./schema/dlProcessedDaily.model.js";
20
- import normalizedProcessHourModel from "./schema/normalizedProcessHour.model.js";
21
- import normalizedProcessedDailyModel from "./schema/normalizedProcessedDaily.model.js";
22
- import noSourceNormalizedDailyModel from "./schema/noSourceNormalizedDaily.model.js";
23
- import noSourceNormalizedHourlyModel from "./schema/noSourceNormalizedHourly.model.js";
24
- import sourceNormalizedDailyModel from "./schema/sourceNormalizedDaily.model.js";
25
- import sourceNormalizedHourlyModel from "./schema/sourceNormalizedHourly.model.js";
26
- import sourceModel from "./schema/source.model.js";
27
- import zoneModel from "./schema/zone.model.js";
28
- import revopModel from "./schema/revop.model.js";
29
- import storeOperationModel from "./schema/storeOperation.model.js";
30
- import liveDetectionDataModel from "./schema/liveDetectionData.model.js";
31
- import liveProcessedDataModel from "./schema/liveProcessedData.model.js";
32
- import reportParameterModel from "./schema/reportParameter.model.js";
33
- import dlZoneModel from "./schema/dlZone.model.js";
34
- import eyeTestModel from './schema/eyeTest.model.js';
35
- import ticketModel from "./schema/ticket.model.js";
36
- import activitylogModel from "./schema/activitylog.model.js";
37
- import dailyWorkLogModel from "./schema/dailyWorkLog.model.js";
38
- import financeModel from "./schema/finance.model.js";
39
- import eyeTestDataModel from "./schema/eyeTestData.model.js";
1
+ import leadModel from "./schema/lead.model.js";
2
+ import otpModel from "./schema/otp.model.js";
40
3
 
41
4
  export default {
42
- clientModel,
43
- cameraModel,
44
- storeModel,
45
- brandModel,
46
- dailyAuditFilesModel,
47
- dailyAuditStoreFilesModel,
48
- tokenModel,
49
- nobModel,
50
- nobClientModel,
51
- applicationDefaultModel,
52
- userModel,
53
- userRoleModel,
54
- edgeappVersionModel,
55
- nobHourlyModel,
56
- processedCheckListModel,
57
- processedDetectionModel,
58
- processedDailyModel,
59
- processedHourlyModel,
60
- dlProcessedDailyModel,
61
- normalizedProcessHourModel,
62
- normalizedProcessedDailyModel,
63
- noSourceNormalizedDailyModel,
64
- noSourceNormalizedHourlyModel,
65
- sourceNormalizedDailyModel,
66
- sourceNormalizedHourlyModel,
67
- sourceModel,
68
- zoneModel,
69
- revopModel,
70
- storeOperationModel,
71
- liveDetectionDataModel,
72
- liveProcessedDataModel,
73
- reportParameterModel,
74
- dlZoneModel,
75
- eyeTestModel,
76
- ticketModel,
77
- activitylogModel,
78
- dailyWorkLogModel,
79
- financeModel,
80
- eyeTestDataModel
5
+ leadModel,
6
+ otpModel
81
7
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tango-api-schema",
3
- "version": "1.0.65",
3
+ "version": "2.0.1",
4
4
  "description": "tangoEye model schema",
5
5
  "main": "index.js",
6
6
  "type": "module",
@@ -0,0 +1,76 @@
1
+ import mongoose from 'mongoose';
2
+ import mongooseUniqueValidator from 'mongoose-unique-validator';
3
+
4
+ const lead = new mongoose.Schema(
5
+ {
6
+ clientName: {
7
+ type: String,
8
+ trim: true,
9
+ required: true,
10
+ unique: true,
11
+ },
12
+ firstName: {
13
+ type: String,
14
+ required: true,
15
+ },
16
+ lastName: {
17
+ type: String,
18
+ },
19
+ corporateEmail: {
20
+ type: String,
21
+ required: true,
22
+ unique: true,
23
+ },
24
+ countryCode: {
25
+ type: String,
26
+ required: true,
27
+ },
28
+ mobileNumber: {
29
+ type: Number,
30
+ required: true,
31
+ },
32
+ password: {
33
+ type: String,
34
+ required: true,
35
+ },
36
+ planDetails: {
37
+ totalStores: {
38
+ type: String,
39
+ required: true,
40
+ },
41
+ storeSize: {
42
+ type: String,
43
+ required: true,
44
+ },
45
+ totalCamera: {
46
+ type: Number,
47
+ required: true,
48
+ },
49
+ subscriptionPeriod: {
50
+ type: String,
51
+ enum: [ 'monthly', 'quarterly', 'annual' ],
52
+ },
53
+ subscriptionType: {
54
+ type: String,
55
+ enum: [ 'free', 'premium', 'enterprise' ],
56
+ },
57
+ product: {
58
+ type: Array,
59
+ },
60
+
61
+ },
62
+ status: {
63
+ type: String,
64
+ enum: [ 'pending', 'rejected', 'approved' ],
65
+ default: 'pending',
66
+ },
67
+ },
68
+ {
69
+ strict: true,
70
+ versionKey: false,
71
+ timestamps: true,
72
+ },
73
+ );
74
+
75
+ lead.plugin( mongooseUniqueValidator );
76
+ export default mongoose.model( 'lead', lead );
@@ -0,0 +1,29 @@
1
+ import uniqueValidator from 'mongoose-unique-validator';
2
+ import mongoose from 'mongoose';
3
+
4
+ // schema
5
+ const collection = new mongoose.Schema( {
6
+ email: {
7
+ type: String,
8
+ trim: true,
9
+ unique: true,
10
+ },
11
+ otp: {
12
+ type: Number,
13
+ },
14
+ type: {
15
+ type: String,
16
+ enum: [ 'signup' ],
17
+ },
18
+ },
19
+ {
20
+ timestamps: true,
21
+ strict: true,
22
+ versionKey: false,
23
+ } );
24
+
25
+ collection.plugin( uniqueValidator );
26
+ collection.index( { createdAt: 1 }, { expires: '1d' } );
27
+ collection.index( { type: 1, email: 1 } );
28
+
29
+ export default mongoose.model( 'otp', collection );
@@ -1,42 +0,0 @@
1
- /**
2
- * @name api_activity_logs
3
- */
4
-
5
- // NPM Modules
6
- import { Schema, model } from 'mongoose';
7
-
8
- // Schema
9
- const activityLogs = new Schema(
10
- {
11
- userId: {
12
- type: Schema.Types.ObjectId,
13
- required: true,
14
- },
15
- userName: {
16
- type: String,
17
- },
18
- Date: {
19
- type: Date,
20
- },
21
- logType: {
22
- type: String,
23
- enum: [ 'audit', 'infra', 'queries', 'admin', 'installation', 'report', 'live' ],
24
- },
25
- logSubType: {
26
- type: String,
27
- enum: [ 'auditStart', 'auditDone', 'auditDraft', 'reAuditPush', 'reTrigger', 'infraInit', 'infraClose', 'installInit', 'installClose', 'roleUpdation',
28
- 'roleCreation', 'uploadReport', 'generateReport', 'sendReport', 'pendingFromClient', 'pendingFromTango' ],
29
- },
30
- logData: {
31
- type: Object,
32
- default: {},
33
- },
34
- },
35
- {
36
- timestamps: true,
37
- strict: true,
38
- versionKey: false,
39
- },
40
- );
41
-
42
- export default model( 'activity_logs', activityLogs );
@@ -1,24 +0,0 @@
1
- import mongoose from 'mongoose';
2
-
3
- const collection = new mongoose.Schema(
4
- {
5
- type: {
6
- type: String,
7
- },
8
- subType: {
9
- type: String,
10
- },
11
- data: {
12
- type: Object,
13
- },
14
- active: {
15
- type: Boolean,
16
- },
17
- },
18
- {
19
- timestamps: true,
20
- strict: true,
21
- versionKey: false,
22
- } );
23
-
24
- export default mongoose.model( 'applicationDefault', collection );
@@ -1,439 +0,0 @@
1
- /**
2
- * @name api_brand_models_clientlist
3
- * @description Api brands
4
- */
5
-
6
- // NPM Modules
7
- import mongoose from 'mongoose';
8
- import uniqueValidator from 'mongoose-unique-validator';
9
-
10
- // schema
11
- const brandSchema =
12
- new mongoose.Schema(
13
- {
14
- brandName: {
15
- type: String,
16
- trim: true,
17
- required: true,
18
- unique: true,
19
- },
20
- brandIndex: {
21
- type: Number,
22
- },
23
- client_id: {
24
- type: String,
25
- trim: true,
26
- },
27
- firstName: {
28
- type: String,
29
- trim: true,
30
- },
31
- lastName: {
32
- type: String,
33
- trim: true,
34
- },
35
- phone: {
36
- type: String,
37
- trim: true,
38
- required: true,
39
- unique: true,
40
- },
41
- email: {
42
- type: String,
43
- trim: true,
44
- required: true,
45
- unique: true,
46
- },
47
- active: {
48
- type: Boolean,
49
- default: true,
50
- },
51
- createdAt: {
52
- type: Date,
53
- default: Date.now,
54
- },
55
- updatedAt: {
56
- type: Date,
57
- default: Date.now,
58
- },
59
- userId: {
60
- type: mongoose.Schema.Types.ObjectId,
61
- ref: 'User',
62
- },
63
- dialCode: {
64
- type: String,
65
- trim: true,
66
- },
67
- name: {
68
- type: String,
69
- trim: true,
70
- },
71
- registeredCompanyName: {
72
- type: String,
73
- trim: true,
74
- },
75
- brandLogo: {
76
- type: String,
77
- trim: true,
78
- },
79
- brandConfigs: {
80
- livetickets: { // live needs to create for a day
81
- type: Boolean,
82
- default: false,
83
- },
84
- infratickets: { // infratickets needs to create for a day
85
- type: Boolean,
86
- default: false,
87
- },
88
- liveconfig: { // live one - Every 1 hour, three - every three hour
89
- type: String,
90
- trim: true,
91
- },
92
- ReInstallation: { // number of days installtion ticket reasign to other user if user hold it for ReInstallation Date
93
- type: Number,
94
- default: 0,
95
- },
96
- infraLimit: { // Downtime limit for crating ticket
97
- type: Number,
98
- },
99
- autoGenerateDays: { // if its 2 day downtime is past two days reach the infralimit then will need to create ticket
100
- type: Number,
101
- },
102
- downtimeConsiderCameraCount: { // consider downtime calculation one or All camara
103
- type: String,
104
- },
105
- storeOpenTime: {
106
- type: String,
107
- default: '10:00:00',
108
- },
109
- storeCloseTime: {
110
- type: String,
111
- default: '22:00:00',
112
- },
113
- infraAlert: {
114
- condition: {
115
- type: String,
116
- default: '<',
117
- },
118
- value: {
119
- type: String,
120
- default: '1',
121
- },
122
- },
123
- bouncedConfigTime: {
124
- type: String,
125
- default: '<=1',
126
- },
127
- missedOpportunityStartTime: {
128
- type: String,
129
- default: '>1',
130
- },
131
- missedOpportunityEndTime: {
132
- type: String,
133
- default: '<=5',
134
- },
135
- conversionConfigTime: {
136
- type: String,
137
- default: '>5',
138
- },
139
- missedOpportunityCalculate: {
140
- type: String,
141
- enum: [ 'engagers-conversion', 'group-conversion' ],
142
- default: 'engagers-conversion',
143
- },
144
- conversionCalculate: {
145
- type: String,
146
- enum: [ 'footfall-count', 'engagers-count' ],
147
- default: 'engagers-count',
148
- },
149
- billableCalculate: {
150
- type: String,
151
- enum: [ 'footfall-count', 'engagers-count' ],
152
- default: 'engagers-count',
153
- },
154
- notifications: {
155
- email: {
156
- type: Boolean,
157
- },
158
- application: {
159
- type: Boolean,
160
- },
161
- },
162
-
163
- allowChanges: {
164
- type: Boolean,
165
- },
166
- report_time: {
167
- type: String,
168
- },
169
- normalized_data: {
170
- type: Boolean,
171
- default: true,
172
- },
173
- normalized_downtime: {
174
- type: Number,
175
- default: 300,
176
- },
177
- },
178
- industry: {
179
- type: String,
180
- trim: true,
181
- },
182
- subIndustry: {
183
- type: String,
184
- trim: true,
185
- },
186
- storeType: {
187
- type: String,
188
- trim: true,
189
- },
190
- headQuarters: {
191
- type: String,
192
- trim: true,
193
- },
194
- numberofOutlets: {
195
- type: String,
196
- trim: true,
197
- },
198
- cameraCount: {
199
- type: String,
200
- trim: true,
201
- },
202
- productsavgPrice: {
203
- type: String,
204
- trim: true,
205
- },
206
- CINNumber: {
207
- type: String,
208
- trim: true,
209
- },
210
- registeredAddress: {
211
- type: String,
212
- trim: true,
213
- },
214
- first_user: {
215
- type: Number,
216
- default: 0,
217
- },
218
- payment_status: {
219
- type: Boolean,
220
- default: false,
221
- },
222
- uploadLimit: {
223
- user: {
224
- type: Number,
225
- default: 10,
226
- },
227
- store: {
228
- type: Number,
229
- default: 10,
230
- },
231
- },
232
- DownloadLimit: {
233
- type: Number,
234
- default: 0,
235
- },
236
- website: {
237
- type: String,
238
- },
239
- apiKey: {
240
- type: String,
241
- default: null,
242
- },
243
- allowedIps: {
244
- type: Array,
245
- default: [ '*' ],
246
- },
247
- clientStatus: {
248
- type: String,
249
- enum: [ 'pending', 'live', 'hold', 'suspended', 'deactivated', 'rejected' ],
250
- default: 'pending',
251
- trim: true,
252
- },
253
- client_type: {
254
- type: String,
255
- enum: [ 'free', 'trial', 'paid' ],
256
- trim: true,
257
- default: 'trial',
258
- },
259
- expired_date: {
260
- type: Date,
261
- },
262
- framesRate: {
263
- type: Number,
264
- },
265
- configBannerFlag: {
266
- type: Boolean,
267
- default: true,
268
- },
269
- controlroom: {
270
- type: Boolean,
271
- default: false,
272
- },
273
- trade: {
274
- type: String,
275
- },
276
- country: {
277
- type: String,
278
- },
279
- activeMenu: {
280
- type: Array,
281
- default: [ 'birdsEye', 'tangoTraffic', 'tangoZone', 'controlRoom', 'tangoRevOp', 'tangoStoreOps', 'infraHealth', 'reports', 'Support', 'footFallDirectory', 'permissions' ],
282
- },
283
- isdeletedbrand: {
284
- type: Boolean,
285
- default: false,
286
- },
287
- planType: {
288
- type: String,
289
- enum: [ 'monthly', 'half_yearly', 'annual' ],
290
- default: 'monthly',
291
- },
292
- storeCount: {
293
- type: String,
294
- },
295
- squareFeet: {
296
- type: String,
297
- },
298
- subscription: {
299
- type: String,
300
- enum: [ '', 'free', 'free_trial', 'premium', 'enterprise' ],
301
- default: '',
302
- },
303
- subscription_start_date: {
304
- type: Date,
305
- },
306
- subscription_status: {
307
- type: Boolean,
308
- default: false,
309
- },
310
- store_added_status: { // if it is true after add a store against brand
311
- type: Boolean,
312
- default: false,
313
- },
314
- callBackTime: {
315
- type: String,
316
- },
317
- message: {
318
- type: String,
319
- trim: true,
320
- },
321
- subscribed_features: {
322
- tango_traffic: {
323
- type: Boolean,
324
- default: true,
325
- },
326
- tango_zone: {
327
- type: Boolean,
328
- default: false,
329
- },
330
- tango_revop: {
331
- type: Boolean,
332
- default: false,
333
- },
334
- tango_storeops: {
335
- type: Boolean,
336
- default: false,
337
- },
338
- controlroom: {
339
- type: Boolean,
340
- default: false,
341
- },
342
- live_data: {
343
- type: Boolean,
344
- default: false,
345
- },
346
- normalization_features: {
347
- type: Boolean,
348
- default: false,
349
- },
350
- actual_features: {
351
- type: Boolean,
352
- default: false,
353
- },
354
- },
355
- terms_conditions: {
356
- type: Boolean,
357
- default: false,
358
- },
359
- otp_verified: {
360
- type: Boolean,
361
- default: false,
362
- },
363
- free_paused_date: {
364
- type: Date,
365
- },
366
- price: {
367
- type: Number,
368
- },
369
- currency_type: {
370
- type: String,
371
- },
372
- upgrade_request: {
373
- type: Object,
374
- },
375
- upgrade_request_status: {
376
- type: Boolean,
377
- default: false,
378
- },
379
- trial_status: {
380
- type: Boolean,
381
- default: false,
382
- },
383
- trial_expired: {
384
- type: Boolean,
385
- default: false,
386
- },
387
- trial_extend: {
388
- type: Boolean,
389
- default: false,
390
- },
391
- trial_paused: {
392
- type: Boolean,
393
- default: false,
394
- },
395
- lead_id: {
396
- type: String,
397
- trim: true,
398
- },
399
- reportConfigs: {
400
- type: Object,
401
- },
402
- brandConfigs_updated_date: {
403
- type: Date,
404
- },
405
-
406
- auditConfigs: {
407
- count: {
408
- type: Number,
409
- default: 200,
410
- },
411
- audit: {
412
- type: Boolean,
413
- default: true,
414
- },
415
- default: {
416
- type: Boolean,
417
- default: true,
418
- },
419
- queueName: {
420
- type: String,
421
- default: '',
422
- },
423
- ratio: {
424
- type: mongoose.Schema.Types.Number,
425
- default: 0.75,
426
- },
427
-
428
- },
429
- },
430
- {
431
- strict: true,
432
- versionKey: false,
433
- },
434
- );
435
-
436
- brandSchema.plugin( uniqueValidator );
437
-
438
- export default mongoose.model( 'Brand', brandSchema );
439
-