tango-api-schema 2.2.140 → 2.2.141

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/index.js CHANGED
@@ -76,6 +76,7 @@ import planogramModel from "./schema/planogram.model.js";
76
76
  import emailersModel from "./schema/emailers.model.js";
77
77
  import planoMappingModel from './schema/planoMapping.model.js';
78
78
  import planoProductModel from './schema/planoProductDetail.model.js';
79
+ import planoVmModel from './schema/planoVmDetail.model.js';
79
80
  import planoComplianceModel from './schema/planoCompliance.model.js';
80
81
  import storeFixtureModel from './schema/storeFixture.model.js';
81
82
  import fixtureConfigModel from './schema/fixtureConfig.model.js';
@@ -88,6 +89,9 @@ import auditConfigModel from "./schema/auditConfig.model.js";
88
89
  import revopConfigModel from "./schema/revopConfig.model.js";
89
90
  import planoCrestLogModel from './schema/planoCrestLog.model.js';
90
91
  import countryCurrencyModel from './schema/countryCurrency.model.js';
92
+ import fixtureLibraryModel from './schema/fixtureLibrary.model.js';
93
+ import vmTypeModel from "./schema/vmType.model.js";
94
+ import planoProductCategoryModel from './schema/planoProductCategoryDetails.model.js'
91
95
  import streamingModel from './schema/streaming.model.js';
92
96
  import loginAttempt from "./schema/loginAttempt.model.js";
93
97
  import notification from "./schema/notification.model.js";
@@ -184,6 +188,10 @@ export default {
184
188
  revopConfigModel,
185
189
  planoCrestLogModel,
186
190
  countryCurrencyModel,
191
+ fixtureLibraryModel,
192
+ planoVmModel,
193
+ vmTypeModel,
194
+ planoProductCategoryModel,
187
195
  streamingModel,
188
196
  loginAttempt,
189
197
  notification
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tango-api-schema",
3
- "version": "2.2.140",
3
+ "version": "2.2.141",
4
4
  "description": "tangoEye model schema",
5
5
  "main": "index.js",
6
6
  "type": "module",
@@ -13,54 +13,200 @@ const fixtureConfigSchema = new mongoose.Schema(
13
13
  type: String,
14
14
  enum: [ 'wall', 'floor' ],
15
15
  },
16
- fixtureHeight: {
16
+ fixtureName: {
17
+ type: String,
18
+ required: true,
19
+ },
20
+ description: {
21
+ type: String,
22
+ },
23
+ fixtureLength: {
17
24
  value: {
18
25
  type: Number,
26
+ default: 0,
19
27
  },
20
28
  unit: {
21
29
  type: String,
30
+ default: '',
22
31
  },
23
32
  },
24
- fixtureLength: {
33
+ fixtureWidth: {
25
34
  value: {
26
35
  type: Number,
36
+ default: 0,
27
37
  },
28
38
  unit: {
29
39
  type: String,
40
+ default: '',
30
41
  },
31
42
  },
32
- fixtureWidth: {
43
+ fixtureStaticLength: {
33
44
  value: {
34
45
  type: Number,
46
+ default: 0,
35
47
  },
36
48
  unit: {
37
49
  type: String,
50
+ default: '',
38
51
  },
39
52
  },
40
- shelfCount: {
41
- type: Number,
53
+ fixtureStaticWidth: {
54
+ value: {
55
+ type: Number,
56
+ default: 0,
57
+ },
58
+ unit: {
59
+ type: String,
60
+ default: '',
61
+ },
42
62
  },
43
- productPerShelf: {
44
- type: Number,
63
+ detailedFixtureLength: {
64
+ value: {
65
+ type: Number,
66
+ },
67
+ unit: {
68
+ type: String,
69
+ },
45
70
  },
46
- fixtureCapacity: {
47
- type: Number,
71
+ detailedFixtureWidth: {
72
+ value: {
73
+ type: Number,
74
+ },
75
+ unit: {
76
+ type: String,
77
+ },
78
+ },
79
+ shelfConfig: [ {
80
+ shelfNumber: {
81
+ type: Number,
82
+ required: true,
83
+ },
84
+ shelfType: {
85
+ type: String,
86
+ enum: ['shelf', 'tray'],
87
+ required: true,
88
+ },
89
+ productPerShelf: {
90
+ type: Number,
91
+ default: 0,
92
+ },
93
+ trayRows: {
94
+ type: Number,
95
+ default: 0,
96
+ },
97
+ label: {
98
+ type: String,
99
+ default: '',
100
+ },
101
+ productBrandName: {
102
+ type: Array,
48
103
  },
49
- sections:{
104
+ productSubBrandName: {
50
105
  type: Array,
51
106
  },
52
- fixtureCode:{
107
+ productCategory:{
108
+ type:Array
109
+ },
110
+ productSubCategory:{
111
+ type:Array
112
+ },
113
+ zone: {
114
+ type: String,
115
+ },
116
+ } ],
117
+ vmConfig: [
118
+ {
119
+ vmId: {
120
+ type: mongoose.Types.ObjectId,
121
+ },
122
+ startYPosition: {
123
+ type: Number,
124
+ },
125
+ endYPosition: {
126
+ type: Number,
127
+ },
128
+ xZone: {
129
+ type: String,
130
+ },
131
+ yZone: {
132
+ type: String,
133
+ },
134
+ position: {
135
+ type: String,
136
+ },
137
+ },
138
+ ],
139
+ header: {
140
+ height: {
141
+ value: {
142
+ type: Number,
143
+ default: 0,
144
+ },
145
+ unit: {
146
+ type: String,
147
+ default: '',
148
+ },
149
+ },
150
+ label: {
151
+ type: String,
152
+ },
153
+ isEnabled: {
154
+ type: Boolean,
155
+ default: true,
156
+ },
157
+ },
158
+ footer: {
159
+ height: {
160
+ value: {
161
+ type: Number,
162
+ default: 0,
163
+ },
164
+ unit: {
165
+ type: String,
166
+ default: '',
167
+ },
168
+ },
169
+ label: {
170
+ type: String,
171
+ },
172
+ isEnabled: {
173
+ type: Boolean,
174
+ default: true,
175
+ },
176
+ },
177
+ isBodyEnabled: {
178
+ type: Boolean,
179
+ default: true,
180
+ },
181
+ productResolutionLevel: {
53
182
  type: String,
183
+ enum: [ 'L1', 'L2', 'L3', 'L4' ],
54
184
  },
55
- fixtureConfigType: {
56
- type: String
185
+ fixtureLibraryId:{
186
+ type: mongoose.Types.ObjectId,
187
+ required: true,
57
188
  },
58
- shelfConfig:{
59
- type: Array,
189
+ fixtureCapacity: {
190
+ type: Number,
191
+ default: 0,
60
192
  },
61
- vmConfig:{
193
+ productBrandName: {
62
194
  type: Array,
63
195
  },
196
+ productCategory:{
197
+ type:Array
198
+ },
199
+ productSubCategory:{
200
+ type:Array
201
+ },
202
+ status: {
203
+ type: String,
204
+ enum: [ 'draft', 'complete' ],
205
+ default: 'draft',
206
+ },
207
+ crestMapKey: {
208
+ type: String,
209
+ },
64
210
  },
65
211
  {
66
212
  strict: true,
@@ -0,0 +1,181 @@
1
+ import mongoose from 'mongoose';
2
+
3
+ const fixtureLibrarySchema = new mongoose.Schema(
4
+ {
5
+ clientId: {
6
+ type: String,
7
+ required: true,
8
+ },
9
+ fixtureCategory: {
10
+ type: String,
11
+ },
12
+ fixtureType: {
13
+ type: String,
14
+ enum: ['wall', 'floor'],
15
+ },
16
+ fixtureLength: {
17
+ value: {
18
+ type: Number,
19
+ default: 0,
20
+ },
21
+ unit: {
22
+ type: String,
23
+ default: 'ft',
24
+ },
25
+ },
26
+ fixtureWidth: {
27
+ value: {
28
+ type: Number,
29
+ default: 0,
30
+ },
31
+ unit: {
32
+ type: String,
33
+ default: 'ft',
34
+ },
35
+ },
36
+ fixtureStaticLength: {
37
+ value: {
38
+ type: Number,
39
+ default: 0,
40
+ },
41
+ unit: {
42
+ type: String,
43
+ default: '',
44
+ },
45
+ },
46
+ fixtureStaticWidth: {
47
+ value: {
48
+ type: Number,
49
+ default: 0,
50
+ },
51
+ unit: {
52
+ type: String,
53
+ default: '',
54
+ },
55
+ },
56
+ detailedFixtureLength: {
57
+ value: {
58
+ type: Number,
59
+ },
60
+ unit: {
61
+ type: String,
62
+ },
63
+ },
64
+ detailedFixtureWidth: {
65
+ value: {
66
+ type: Number,
67
+ },
68
+ unit: {
69
+ type: String,
70
+ },
71
+ },
72
+ header: {
73
+ isEnabled: {
74
+ type: Boolean,
75
+ default: true,
76
+ },
77
+ height: {
78
+ value: {
79
+ type: Number,
80
+ default: 0,
81
+ },
82
+ unit: {
83
+ type: String,
84
+ default: 'mm',
85
+ },
86
+ }
87
+ },
88
+ footer: {
89
+ isEnabled: {
90
+ type: Boolean,
91
+ default: true,
92
+ },
93
+ height: {
94
+ value: {
95
+ type: Number,
96
+ default: 0,
97
+ },
98
+ unit: {
99
+ type: String,
100
+ default: 'mm',
101
+ },
102
+ }
103
+ },
104
+ isBodyEnabled: {
105
+ type: Boolean,
106
+ default: true,
107
+ },
108
+ fixtureCapacity: {
109
+ type: Number,
110
+ default: 0,
111
+ },
112
+ status: {
113
+ type: String,
114
+ enum: ['draft', 'complete'],
115
+ default: 'draft',
116
+ },
117
+ shelfConfig: [
118
+ {
119
+ shelfNumber: {
120
+ type: Number,
121
+ required: true,
122
+ },
123
+ shelfType: {
124
+ type: String,
125
+ enum: ['shelf', 'tray'],
126
+ },
127
+ zone: {
128
+ type: String,
129
+ },
130
+ productPerShelf: {
131
+ type: Number,
132
+ default: 0,
133
+ },
134
+ trayRows: {
135
+ type: Number,
136
+ default: 0,
137
+ },
138
+ label: {
139
+ type: String,
140
+ default: '',
141
+ },
142
+ },
143
+ ],
144
+ vmConfig: [
145
+ {
146
+ vmNumber: {
147
+ type: Number,
148
+ },
149
+ vmHeightmm: {
150
+ type: Number,
151
+ },
152
+ vmWidthmm: {
153
+ type: Number,
154
+ },
155
+ startShelf: {
156
+ type: Number,
157
+ },
158
+ endShelf: {
159
+ type: Number,
160
+ },
161
+ zone: {
162
+ type: String,
163
+ },
164
+ position: {
165
+ type: String,
166
+ },
167
+ },
168
+ ],
169
+ fixtureLibCode:{
170
+ type:String
171
+ },
172
+ },
173
+ {
174
+ strict: true,
175
+ versionKey: false,
176
+ timestamps: true,
177
+ },
178
+ );
179
+
180
+ export default mongoose.model( 'fixtureLibrary', fixtureLibrarySchema );
181
+
@@ -40,8 +40,14 @@ const fixtureShelfSchema = new mongoose.Schema(
40
40
  type: Number,
41
41
  required: true,
42
42
  },
43
- sectionName:{
44
- type: String
43
+ productBrandName: {
44
+ type: Array,
45
+ },
46
+ productCategory:{
47
+ type:Array
48
+ },
49
+ productSubCategory:{
50
+ type:Array
45
51
  },
46
52
  sectionZone:{
47
53
  type: String
@@ -49,9 +55,18 @@ const fixtureShelfSchema = new mongoose.Schema(
49
55
  rfId:{
50
56
  type:String
51
57
  },
52
- shelfSplitup: {
58
+ shelfType: {
59
+ type: String,
60
+ enum: [ 'shelf', 'tray' ],
61
+ },
62
+ productPerShelf: {
63
+ type: Number,
64
+ default: 0,
65
+ },
66
+ trayRows: {
53
67
  type: Number,
54
- }
68
+ default: 0,
69
+ },
55
70
  },
56
71
  {
57
72
  strict: true,
@@ -0,0 +1,33 @@
1
+ import mongoose from 'mongoose';
2
+
3
+ const planoProductCategorySchema = new mongoose.Schema(
4
+ {
5
+ clientId: {
6
+ type: String,
7
+ required: true,
8
+ },
9
+ brandName:{
10
+ type:String
11
+ },
12
+ brandDetails:[
13
+ {
14
+ subBrandName:{
15
+ type:String
16
+ },
17
+ category:{
18
+ type:Array
19
+ },
20
+ subCategory:{
21
+ type:Array
22
+ }
23
+ }
24
+ ]
25
+ },
26
+ {
27
+ strict: true,
28
+ versionKey: false,
29
+ timestamps: true,
30
+ },
31
+ );
32
+
33
+ export default mongoose.model( 'planoProductCategory', planoProductCategorySchema );
@@ -10,10 +10,6 @@ const planoProductDetailSchema = new mongoose.Schema(
10
10
  type: String,
11
11
  required: true,
12
12
  },
13
- type: {
14
- type: String,
15
- enum: [ 'product', 'vm' ],
16
- },
17
13
  productName: {
18
14
  type: String,
19
15
  },
@@ -55,20 +51,7 @@ const planoProductDetailSchema = new mongoose.Schema(
55
51
  },
56
52
  productImageUrl: {
57
53
  type: String,
58
- },
59
- startYPosition: {
60
- type: String,
61
- },
62
- endYPosition: {
63
- type: String,
64
- },
65
- xZone:{
66
- type: String
67
- },
68
- fixtureConfigId: {
69
- type: mongoose.Types.ObjectId,
70
- },
71
-
54
+ }
72
55
  },
73
56
  {
74
57
  strict: false,
@@ -104,4 +104,4 @@ const planoTaskCompliance = new mongoose.Schema(
104
104
  }
105
105
  );
106
106
 
107
- export default mongoose.model('planotaskcompliance', planoTaskCompliance);
107
+ export default mongoose.model('planotaskcompliance', planoTaskCompliance);
@@ -0,0 +1,63 @@
1
+ import mongoose from 'mongoose';
2
+
3
+ const planoVmDetailSchema = new mongoose.Schema(
4
+ {
5
+ clientId: {
6
+ type: String,
7
+ required: true,
8
+ },
9
+ vmName: {
10
+ type: String,
11
+ },
12
+ vmType: {
13
+ type: String,
14
+ },
15
+ vmHeight: {
16
+ value: {
17
+ type: Number,
18
+ },
19
+ unit: {
20
+ type: String,
21
+ },
22
+ },
23
+ vmWidth: {
24
+ value: {
25
+ type: Number,
26
+ },
27
+ unit: {
28
+ type: String,
29
+ },
30
+ },
31
+ vmImageUrl: {
32
+ type: String,
33
+ },
34
+ isDoubleSided: {
35
+ type: Boolean,
36
+ },
37
+ status: {
38
+ type: String,
39
+ enum: [ 'draft', 'complete' ],
40
+ default: 'draft',
41
+ },
42
+ vmBrand:{
43
+ type:String
44
+ },
45
+ vmSubBrand: {
46
+ type: String,
47
+ },
48
+ vmCategory: {
49
+ type: String,
50
+ },
51
+ crestImageId: {
52
+ type: String,
53
+ },
54
+
55
+ },
56
+ {
57
+ strict: false,
58
+ versionKey: false,
59
+ timestamps: true,
60
+ },
61
+ );
62
+
63
+ export default mongoose.model( 'planoVmDetail', planoVmDetailSchema );
@@ -26,42 +26,64 @@ const storeFixtureSchema = new mongoose.Schema(
26
26
  type: String,
27
27
  required: true,
28
28
  },
29
- fixtureCategory: {
29
+ description: {
30
30
  type: String,
31
31
  },
32
- fixtureBrandCategory: {
32
+ fixtureCategory: {
33
33
  type: String,
34
34
  },
35
- fixtureBrandSubCategory: {
36
- type: String,
35
+ productBrandName: {
36
+ type: Array,
37
+ },
38
+ productCategory:{
39
+ type:Array
40
+ },
41
+ productSubCategory:{
42
+ type:Array
37
43
  },
38
44
  fixtureType: {
39
45
  type: String,
40
46
  enum: [ 'wall', 'floor', 'other' ],
41
47
  required: true,
42
48
  },
43
- fixtureHeight: {
49
+ fixtureLength: {
44
50
  value: {
45
51
  type: Number,
52
+ default: 0,
46
53
  },
47
54
  unit: {
48
55
  type: String,
56
+ default: '',
49
57
  },
50
58
  },
51
- fixtureLength: {
59
+ fixtureWidth: {
52
60
  value: {
53
61
  type: Number,
62
+ default: 0,
54
63
  },
55
64
  unit: {
56
65
  type: String,
66
+ default: '',
57
67
  },
58
68
  },
59
- fixtureWidth: {
69
+ fixtureStaticLength: {
60
70
  value: {
61
71
  type: Number,
72
+ default: 0,
62
73
  },
63
74
  unit: {
64
75
  type: String,
76
+ default: '',
77
+ },
78
+ },
79
+ fixtureStaticWidth: {
80
+ value: {
81
+ type: Number,
82
+ default: 0,
83
+ },
84
+ unit: {
85
+ type: String,
86
+ default: '',
65
87
  },
66
88
  },
67
89
  detailedFixtureLength: {
@@ -80,18 +102,9 @@ const storeFixtureSchema = new mongoose.Schema(
80
102
  type: String,
81
103
  },
82
104
  },
83
- productPerShelf: {
84
- type: Number,
85
- },
86
- mbq: {
87
- type: Number,
88
- },
89
105
  fixtureCapacity: {
90
106
  type: Number,
91
107
  },
92
- shelfcount: {
93
- type: Number,
94
- },
95
108
  associatedElementType: {
96
109
  type: String,
97
110
  enum: [ 'wall', 'facade' ],
@@ -99,9 +112,6 @@ const storeFixtureSchema = new mongoose.Schema(
99
112
  associatedElementNumber: {
100
113
  type: Number,
101
114
  },
102
- fixtureConfigId: {
103
- type: mongoose.Types.ObjectId,
104
- },
105
115
  relativePosition: {
106
116
  x: {
107
117
  type: Number,
@@ -124,37 +134,91 @@ const storeFixtureSchema = new mongoose.Schema(
124
134
  type: String,
125
135
  },
126
136
  },
127
- fixtureOrder: {
128
- type: String,
129
- enum: [ 'TTB', 'BTT' ],
130
- // TTB - Top to Bottom, BTT - Bottom to Top
131
- },
132
137
  fixtureNumber: {
133
138
  type: Number,
134
139
  },
135
140
  productResolutionLevel: {
136
141
  type: String,
137
142
  enum: [ 'L1', 'L2', 'L3', 'L4', 'L5' ],
138
- // L1- floor level, L2- fixture level, L3- fixture-shelf level, L4- fixture-shelf-product level
143
+ // L1- fixture level, L2- shelf level, L3- section level, L4- product level
139
144
  },
140
145
  imageUrl: {
141
146
  type: String,
142
147
  },
143
- vmImageUrl: {
144
- type: String,
145
- },
146
- fixtureCode: {
147
- type: String,
148
- },
149
148
  header: {
150
- type: String,
149
+ height: {
150
+ value: {
151
+ type: Number,
152
+ default: 0,
153
+ },
154
+ unit: {
155
+ type: String,
156
+ default: '',
157
+ },
158
+ },
159
+ label: {
160
+ type: String,
161
+ },
162
+ isEnabled: {
163
+ type: Boolean,
164
+ default: true,
165
+ },
151
166
  },
152
167
  footer: {
153
- type: String,
168
+ height: {
169
+ value: {
170
+ type: Number,
171
+ default: 0,
172
+ },
173
+ unit: {
174
+ type: String,
175
+ default: '',
176
+ },
177
+ },
178
+ label: {
179
+ type: String,
180
+ },
181
+ isEnabled: {
182
+ type: Boolean,
183
+ default: true,
184
+ },
185
+ },
186
+ isBodyEnabled: {
187
+ type: Boolean,
188
+ default: true,
154
189
  },
155
190
  associatedElementFixtureNumber: {
156
191
  type: Number,
157
192
  },
193
+ vmConfig: [
194
+ {
195
+ vmId: {
196
+ type: mongoose.Types.ObjectId,
197
+ },
198
+ startYPosition: {
199
+ type: Number,
200
+ },
201
+ endYPosition: {
202
+ type: Number,
203
+ },
204
+ xZone: {
205
+ type: String,
206
+ },
207
+ yZone: {
208
+ type: String,
209
+ },
210
+ position: {
211
+ type: String,
212
+ },
213
+ },
214
+ ],
215
+ fixtureLibraryId: {
216
+ type: mongoose.Types.ObjectId,
217
+ },
218
+ fixtureConfigId: {
219
+ type: mongoose.Types.ObjectId,
220
+ },
221
+
158
222
  },
159
223
  {
160
224
  strict: true,
@@ -163,4 +227,7 @@ const storeFixtureSchema = new mongoose.Schema(
163
227
  },
164
228
  );
165
229
 
166
- export default mongoose.model( 'storeFixture', storeFixtureSchema );
230
+ export default mongoose.model( 'storeFixture', storeFixtureSchema );
231
+
232
+
233
+
@@ -0,0 +1,24 @@
1
+ import mongoose from 'mongoose';
2
+
3
+ const vmTypeSchema = new mongoose.Schema(
4
+ {
5
+ clientId: {
6
+ type: String,
7
+ required: true,
8
+ },
9
+ vmType:{
10
+ type:String,
11
+ required:true
12
+ },
13
+ imageUrls:{
14
+ type:Array
15
+ }
16
+ },
17
+ {
18
+ strict: true,
19
+ versionKey: false,
20
+ timestamps: true,
21
+ },
22
+ );
23
+
24
+ export default mongoose.model( 'vmType', vmTypeSchema );