tango-api-schema 2.2.167 → 2.2.169

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.
@@ -7,10 +7,322 @@ const planoTaskCompliance = new mongoose.Schema(
7
7
  enum: ['complete', 'incomplete', 'missing'],
8
8
  required: true
9
9
  },
10
- answers: {
11
- type: Array,
12
- default: []
13
- },
10
+ answers: [
11
+ {
12
+ userId: {
13
+ type: mongoose.Types.ObjectId,
14
+ },
15
+ userName: {
16
+ type: String
17
+ },
18
+ role: {
19
+ type: String
20
+ },
21
+ timeStamp: {
22
+ type: Date,
23
+ default: Date.now()
24
+ },
25
+ video: {
26
+ type: String
27
+ },
28
+ image: {
29
+ type: String
30
+ },
31
+ comments: [{
32
+ userId: {
33
+ type: mongoose.Types.ObjectId,
34
+ },
35
+ userName: {
36
+ type: String
37
+ },
38
+ role: {
39
+ type: String
40
+ },
41
+ comment: {
42
+ type: String
43
+ },
44
+ responsetype: {
45
+ type: String,
46
+ default: "comment",
47
+ },
48
+ timeStamp: {
49
+ type: Date,
50
+ default: Date.now()
51
+ }
52
+ }
53
+ ],
54
+ issues: [
55
+ {
56
+ userId: {
57
+ type: mongoose.Types.ObjectId,
58
+ },
59
+ userName: {
60
+ type: String
61
+ },
62
+ role: {
63
+ type: String
64
+ },
65
+ qno: {
66
+ type: Number,
67
+ },
68
+ question: {
69
+ type: String
70
+ },
71
+ timeStamp: {
72
+ type: Date,
73
+ default: Date.now()
74
+ },
75
+ issueType: {
76
+ type: String,
77
+ enum: ["extraFixture", 'fixtureMissing', 'fixtureMismatch', 'categoryWrong', 'sizeWrong', 'shelfWrong', 'brandWrong', 'productcategoryWrong', "extraVm", 'VmMissing', 'VmMismatch', 'VmSizeWrong', 'others']
78
+ },
79
+ image: {
80
+ type: String
81
+ },
82
+ status: {
83
+ type: String,
84
+ default: 'pending',
85
+ enum: ['completed', 'pending']
86
+ },
87
+ comments: [{
88
+ userId: {
89
+ type: mongoose.Types.ObjectId,
90
+ },
91
+ userName: {
92
+ type: String
93
+ },
94
+ role: {
95
+ type: String
96
+ },
97
+ comment: {
98
+ type: String
99
+ },
100
+ responsetype: {
101
+ type: String,
102
+ default: "comment",
103
+ },
104
+ timeStamp: {
105
+ type: Date,
106
+ default: Date.now()
107
+ }
108
+ }
109
+ ],
110
+ Details: [
111
+ {
112
+ comments: [{
113
+ userId: {
114
+ type: mongoose.Types.ObjectId,
115
+ },
116
+ userName: {
117
+ type: String
118
+ },
119
+ role: {
120
+ type: String
121
+ },
122
+ comment: {
123
+ type: String
124
+ },
125
+ responsetype: {
126
+ type: String,
127
+ default: "comment",
128
+ },
129
+ timeStamp: {
130
+ type: Date,
131
+ default: Date.now()
132
+ }
133
+ }
134
+ ],
135
+ missingData: [
136
+ {
137
+ zone: {
138
+ type: String
139
+ },
140
+ brand: [{
141
+ type: String
142
+ }],
143
+ productCategory: [{
144
+ type: String
145
+ }]
146
+ }
147
+ ],
148
+
149
+ image: {
150
+ type: String
151
+ },
152
+ video: {
153
+ type: String
154
+ },
155
+ floorId: {
156
+ type: mongoose.Types.ObjectId,
157
+ },
158
+ fixtureLibraryId: {
159
+ type: mongoose.Types.ObjectId
160
+ },
161
+ fixtureConfigId: {
162
+ type: mongoose.Types.ObjectId
163
+ },
164
+ fixtureId: {
165
+ type: mongoose.Types.ObjectId
166
+ },
167
+ status: {
168
+ type: String,
169
+ default: 'pending',
170
+ enum: ['agree', 'disagree', 'pending']
171
+ },
172
+ image: {
173
+ type: String
174
+ },
175
+ fixtureName: {
176
+ type: String
177
+ },
178
+ fixtureCategory: {
179
+ type: String
180
+ },
181
+ fixtureTemplateName: {
182
+ type: String
183
+ },
184
+ associatedElementFixtureNumber: {
185
+ type: Number
186
+ },
187
+ associatedElementNumber: {
188
+ type: Number
189
+ },
190
+ associatedElementType: {
191
+ type: String
192
+ },
193
+ newassociatedElementFixtureNumber: {
194
+ type: Number
195
+ },
196
+ newassociatedElementNumber: {
197
+ type: Number
198
+ },
199
+ newassociatedElementType: {
200
+ type: String
201
+ },
202
+ fixtureWidth:
203
+ {
204
+ value: {
205
+ type: Number
206
+ },
207
+ unit: {
208
+ type: String
209
+ }
210
+ }
211
+ ,
212
+ header: {
213
+ height: {
214
+ value: {
215
+ type: Number,
216
+ default: 0,
217
+ },
218
+ unit: {
219
+ type: String,
220
+ default: '',
221
+ },
222
+ },
223
+ label: {
224
+ type: String,
225
+ },
226
+ isEnabled: {
227
+ type: Boolean,
228
+ default: true,
229
+ },
230
+ },
231
+ footer: {
232
+ height: {
233
+ value: {
234
+ type: Number,
235
+ default: 0,
236
+ },
237
+ unit: {
238
+ type: String,
239
+ default: '',
240
+ },
241
+ },
242
+ label: {
243
+ type: String,
244
+ },
245
+ isEnabled: {
246
+ type: Boolean,
247
+ default: true,
248
+ },
249
+ },
250
+ shelfConfig: [
251
+ {
252
+ _id: {
253
+ type: mongoose.Types.ObjectId,
254
+ required: true
255
+ },
256
+ shelfNumber: {
257
+ type: Number
258
+ },
259
+ shelfType: {
260
+ type: String
261
+ },
262
+ productPerShelf: {
263
+ type: Number
264
+ },
265
+ trayRows: {
266
+ type: Number
267
+ },
268
+ zone: {
269
+ type: String
270
+ },
271
+ productBrandName: {
272
+ type: [String],
273
+ default: []
274
+ },
275
+ productCategory: {
276
+ type: [String],
277
+ default: []
278
+ }
279
+ }
280
+ ],
281
+ vmConfig: [
282
+ {
283
+ vmName: {
284
+ type: String
285
+ },
286
+ vmId: {
287
+ type: mongoose.Schema.Types.ObjectId,
288
+
289
+ },
290
+ startYPosition: {
291
+ type: Number
292
+ },
293
+ endYPosition: {
294
+ type: Number
295
+ },
296
+ xZone: {
297
+ type: String
298
+ },
299
+ yZone: {
300
+ type: String
301
+ },
302
+ position: {
303
+ type: String
304
+ },
305
+ newstartYPosition: {
306
+ type: Number
307
+ },
308
+ newendYPosition: {
309
+ type: Number
310
+ },
311
+ newxZone: {
312
+ type: String
313
+ },
314
+ newyZone: {
315
+ type: String
316
+ },
317
+ newposition: {
318
+ type: String
319
+ }
320
+ }]
321
+ }
322
+ ]
323
+ }
324
+ ]
325
+ }],
14
326
  planoId: {
15
327
  type: mongoose.Types.ObjectId,
16
328
  required: true
@@ -27,18 +339,30 @@ const planoTaskCompliance = new mongoose.Schema(
27
339
  enum: ['fixture', 'vm', 'product', 'layout'],
28
340
  required: true
29
341
  },
30
- date_string:{
31
- type:String,
32
- required:true
342
+ date_string: {
343
+ type: String,
344
+ required: true
33
345
  },
34
- storeName:{
35
- type:String
346
+ storeName: {
347
+ type: String
36
348
  },
37
- taskId:{
38
- type:mongoose.Types.ObjectId
349
+ storeId: {
350
+ type: String
39
351
  },
40
- date_iso:{
41
- type:Date
352
+ taskId: {
353
+ type: mongoose.Types.ObjectId
354
+ },
355
+ taskType: {
356
+ type: String,
357
+ enum: ['redo', 'initial']
358
+ },
359
+ date_iso: {
360
+ type: Date
361
+ },
362
+ approvalStatus: {
363
+ type: String,
364
+ enum: ['pending', 'approved', 'rejected'],
365
+ default:'pending'
42
366
  }
43
367
  },
44
368
  {
@@ -47,4 +371,4 @@ const planoTaskCompliance = new mongoose.Schema(
47
371
  }
48
372
  );
49
373
 
50
- export default mongoose.model('planotaskcompliance', planoTaskCompliance);
374
+ 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 );
@@ -54,6 +54,10 @@ const planogramSchema = new mongoose.Schema( {
54
54
  },
55
55
  validateShelfSections: {
56
56
  type: Boolean
57
+ },
58
+ planoProgress:{
59
+ type:Number,
60
+ default:25
57
61
  }
58
62
  },
59
63
  {
@@ -26,72 +26,69 @@ 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: {
44
- value: {
45
- type: Number,
46
- },
47
- unit: {
48
- type: String,
49
- },
50
- },
51
49
  fixtureLength: {
52
50
  value: {
53
51
  type: Number,
52
+ default: 0,
54
53
  },
55
54
  unit: {
56
55
  type: String,
56
+ default: '',
57
57
  },
58
58
  },
59
59
  fixtureWidth: {
60
60
  value: {
61
61
  type: Number,
62
+ default: 0,
62
63
  },
63
64
  unit: {
64
65
  type: String,
66
+ default: '',
65
67
  },
66
68
  },
67
- detailedFixtureLength: {
69
+ fixtureStaticLength: {
68
70
  value: {
69
71
  type: Number,
72
+ default: 0,
70
73
  },
71
74
  unit: {
72
75
  type: String,
76
+ default: '',
73
77
  },
74
78
  },
75
- detailedFixtureWidth: {
79
+ fixtureStaticWidth: {
76
80
  value: {
77
81
  type: Number,
82
+ default: 0,
78
83
  },
79
84
  unit: {
80
85
  type: String,
86
+ default: '',
81
87
  },
82
88
  },
83
- productPerShelf: {
84
- type: Number,
85
- },
86
- mbq: {
87
- type: Number,
88
- },
89
89
  fixtureCapacity: {
90
90
  type: Number,
91
91
  },
92
- shelfcount: {
93
- type: Number,
94
- },
95
92
  associatedElementType: {
96
93
  type: String,
97
94
  enum: [ 'wall', 'facade' ],
@@ -99,9 +96,6 @@ const storeFixtureSchema = new mongoose.Schema(
99
96
  associatedElementNumber: {
100
97
  type: Number,
101
98
  },
102
- fixtureConfigId: {
103
- type: mongoose.Types.ObjectId,
104
- },
105
99
  relativePosition: {
106
100
  x: {
107
101
  type: Number,
@@ -113,48 +107,95 @@ const storeFixtureSchema = new mongoose.Schema(
113
107
  type: String,
114
108
  },
115
109
  },
116
- relativeDetailedPosition: {
117
- x: {
118
- type: Number,
119
- },
120
- y: {
121
- type: Number,
122
- },
123
- unit: {
124
- type: String,
125
- },
126
- },
127
- fixtureOrder: {
128
- type: String,
129
- enum: [ 'TTB', 'BTT' ],
130
- // TTB - Top to Bottom, BTT - Bottom to Top
131
- },
132
- fixtureNumber: {
133
- type: Number,
134
- },
135
110
  productResolutionLevel: {
136
111
  type: String,
137
- enum: [ 'L1', 'L2', 'L3', 'L4', 'L5' ],
138
- // L1- floor level, L2- fixture level, L3- fixture-shelf level, L4- fixture-shelf-product level
112
+ enum: [ 'L1', 'L2', 'L3', 'L4' ],
113
+ // L1- fixture level, L2- shelf level, L3- section level, L4- product level
139
114
  },
140
115
  imageUrl: {
141
116
  type: String,
142
117
  },
143
- vmImageUrl: {
144
- type: String,
145
- },
146
- fixtureCode: {
147
- type: String,
148
- },
149
118
  header: {
150
- type: String,
119
+ height: {
120
+ value: {
121
+ type: Number,
122
+ default: 0,
123
+ },
124
+ unit: {
125
+ type: String,
126
+ default: '',
127
+ },
128
+ },
129
+ label: {
130
+ type: String,
131
+ },
132
+ isEnabled: {
133
+ type: Boolean,
134
+ default: true,
135
+ },
151
136
  },
152
137
  footer: {
153
- type: String,
138
+ height: {
139
+ value: {
140
+ type: Number,
141
+ default: 0,
142
+ },
143
+ unit: {
144
+ type: String,
145
+ default: '',
146
+ },
147
+ },
148
+ label: {
149
+ type: String,
150
+ },
151
+ isEnabled: {
152
+ type: Boolean,
153
+ default: true,
154
+ },
155
+ },
156
+ isBodyEnabled: {
157
+ type: Boolean,
158
+ default: true,
154
159
  },
155
160
  associatedElementFixtureNumber: {
156
161
  type: Number,
157
162
  },
163
+ vmConfig: [
164
+ {
165
+ vmId: {
166
+ type: mongoose.Types.ObjectId,
167
+ },
168
+ startYPosition: {
169
+ type: Number,
170
+ },
171
+ endYPosition: {
172
+ type: Number,
173
+ },
174
+ xZone: {
175
+ type: String,
176
+ },
177
+ yZone: {
178
+ type: String,
179
+ },
180
+ position: {
181
+ type: String,
182
+ },
183
+ },
184
+ ],
185
+ fixtureLibraryId: {
186
+ type: mongoose.Types.ObjectId,
187
+ },
188
+ fixtureConfigId: {
189
+ type: mongoose.Types.ObjectId,
190
+ },
191
+ fixtureNumber: {
192
+ type: Number,
193
+ },
194
+ templateIndex: {
195
+ type: Number,
196
+ default: 1,
197
+ },
198
+
158
199
  },
159
200
  {
160
201
  strict: true,
@@ -163,4 +204,7 @@ const storeFixtureSchema = new mongoose.Schema(
163
204
  },
164
205
  );
165
206
 
166
- export default mongoose.model( 'storeFixture', storeFixtureSchema );
207
+ export default mongoose.model( 'storeFixture', storeFixtureSchema );
208
+
209
+
210
+
@@ -237,6 +237,9 @@ const processedTaskSchema = new mongoose.Schema(
237
237
  },
238
238
  checkListFrom: {
239
239
  type: String
240
+ },
241
+ comments:{
242
+ type:Array
240
243
  }
241
244
  },
242
245
  {