@francesco_ksh/app-ksh-mgd-schemas 2.3.2 → 2.3.4
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/models/Listing.js +67 -30
- package/package.json +1 -1
package/models/Listing.js
CHANGED
|
@@ -4,15 +4,31 @@ const moment = require('moment');
|
|
|
4
4
|
|
|
5
5
|
const listingSchema = new Schema(
|
|
6
6
|
{
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
7
|
+
// ####################### PRICING #######################
|
|
8
|
+
pricing: {
|
|
9
|
+
firstUploadPrice: {
|
|
10
|
+
type: Number,
|
|
11
|
+
},
|
|
12
|
+
latestUploadPrice: {
|
|
13
|
+
type: Number,
|
|
14
|
+
},
|
|
15
|
+
priceAfterOffsetSetting: {
|
|
16
|
+
type: Number,
|
|
17
|
+
},
|
|
18
|
+
priceAfterOffsetAndAutomatedDiscount: {
|
|
19
|
+
type: Number,
|
|
20
|
+
},
|
|
21
|
+
|
|
22
|
+
pricingChanges: [
|
|
23
|
+
{
|
|
24
|
+
price: {
|
|
25
|
+
type: Number,
|
|
26
|
+
},
|
|
27
|
+
date: {
|
|
28
|
+
type: Date,
|
|
29
|
+
},
|
|
30
|
+
},
|
|
31
|
+
],
|
|
16
32
|
},
|
|
17
33
|
discounts: {
|
|
18
34
|
active: {
|
|
@@ -32,9 +48,8 @@ const listingSchema = new Schema(
|
|
|
32
48
|
},
|
|
33
49
|
],
|
|
34
50
|
},
|
|
35
|
-
|
|
36
|
-
type:
|
|
37
|
-
ref: 'CrossListing',
|
|
51
|
+
discountPercentage: {
|
|
52
|
+
type: Number,
|
|
38
53
|
},
|
|
39
54
|
fixedPrices: {
|
|
40
55
|
shipping: {
|
|
@@ -43,6 +58,46 @@ const listingSchema = new Schema(
|
|
|
43
58
|
packaging: {
|
|
44
59
|
type: Number,
|
|
45
60
|
},
|
|
61
|
+
leadTimeframeInDays: {
|
|
62
|
+
// IN DAYS
|
|
63
|
+
min: {
|
|
64
|
+
type: Number,
|
|
65
|
+
},
|
|
66
|
+
max: {
|
|
67
|
+
type: Number,
|
|
68
|
+
},
|
|
69
|
+
},
|
|
70
|
+
},
|
|
71
|
+
estRetailPrice: {
|
|
72
|
+
type: Number,
|
|
73
|
+
},
|
|
74
|
+
price: {
|
|
75
|
+
type: Number,
|
|
76
|
+
required: true,
|
|
77
|
+
min: 0,
|
|
78
|
+
},
|
|
79
|
+
priceIsFirm: {
|
|
80
|
+
type: Boolean,
|
|
81
|
+
default: false,
|
|
82
|
+
},
|
|
83
|
+
uploadPrice: {
|
|
84
|
+
type: Number,
|
|
85
|
+
},
|
|
86
|
+
// ##############################################
|
|
87
|
+
kashewId: {
|
|
88
|
+
type: String,
|
|
89
|
+
unique: true,
|
|
90
|
+
required: true,
|
|
91
|
+
sparse: true,
|
|
92
|
+
},
|
|
93
|
+
slug: {
|
|
94
|
+
type: String,
|
|
95
|
+
unique: true,
|
|
96
|
+
},
|
|
97
|
+
|
|
98
|
+
crossListing: {
|
|
99
|
+
type: Schema.Types.ObjectId,
|
|
100
|
+
ref: 'CrossListing',
|
|
46
101
|
},
|
|
47
102
|
|
|
48
103
|
postedToPinterest: {
|
|
@@ -171,9 +226,6 @@ const listingSchema = new Schema(
|
|
|
171
226
|
colorNames: {
|
|
172
227
|
type: Array,
|
|
173
228
|
},
|
|
174
|
-
discountPercentage: {
|
|
175
|
-
type: Number,
|
|
176
|
-
},
|
|
177
229
|
delivery: {
|
|
178
230
|
coordinates: {
|
|
179
231
|
type: [Number],
|
|
@@ -243,14 +295,6 @@ const listingSchema = new Schema(
|
|
|
243
295
|
retailLink: {
|
|
244
296
|
type: String,
|
|
245
297
|
},
|
|
246
|
-
estRetailPrice: {
|
|
247
|
-
type: Number,
|
|
248
|
-
},
|
|
249
|
-
price: {
|
|
250
|
-
type: Number,
|
|
251
|
-
required: true,
|
|
252
|
-
min: 0,
|
|
253
|
-
},
|
|
254
298
|
author: {
|
|
255
299
|
type: Schema.Types.ObjectId,
|
|
256
300
|
ref: 'User',
|
|
@@ -324,10 +368,6 @@ const listingSchema = new Schema(
|
|
|
324
368
|
region: {
|
|
325
369
|
type: String,
|
|
326
370
|
},
|
|
327
|
-
priceIsFirm: {
|
|
328
|
-
type: Boolean,
|
|
329
|
-
default: false,
|
|
330
|
-
},
|
|
331
371
|
deletedDate: {
|
|
332
372
|
type: Date,
|
|
333
373
|
},
|
|
@@ -385,9 +425,6 @@ const listingSchema = new Schema(
|
|
|
385
425
|
type: Boolean,
|
|
386
426
|
default: false,
|
|
387
427
|
},
|
|
388
|
-
uploadPrice: {
|
|
389
|
-
type: Number,
|
|
390
|
-
},
|
|
391
428
|
firstDibsLink: {
|
|
392
429
|
type: String,
|
|
393
430
|
},
|