Skip to content

Commit b539fbf

Browse files
committed
Support new loyalty program fields
1 parent 8946611 commit b539fbf

13 files changed

Lines changed: 530 additions & 7 deletions

src/Model/Entity/Loyalty/Loyalty.php

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,22 @@ class Loyalty
3030
*/
3131
public $levels;
3232

33+
/**
34+
* @var string
35+
*
36+
* @JMS\Type("string")
37+
* @JMS\SerializedName("expirePeriod")
38+
*/
39+
public $expirePeriod;
40+
41+
/**
42+
* @var \RetailCrm\Api\Model\Entity\Loyalty\LoyaltyBurnSetting[]
43+
*
44+
* @JMS\Type("array<RetailCrm\Api\Model\Entity\Loyalty\LoyaltyBurnSetting>")
45+
* @JMS\SerializedName("burnSettings")
46+
*/
47+
public $burnSettings;
48+
3349
/**
3450
* @var bool
3551
*
@@ -70,6 +86,14 @@ class Loyalty
7086
*/
7187
public $name;
7288

89+
/**
90+
* @var int
91+
*
92+
* @JMS\Type("int")
93+
* @JMS\SerializedName("burnType")
94+
*/
95+
public $burnType;
96+
7397
/**
7498
* @var bool
7599
*
@@ -86,6 +110,30 @@ class Loyalty
86110
*/
87111
public $confirmSmsRegistration;
88112

113+
/**
114+
* @var int
115+
*
116+
* @JMS\Type("int")
117+
* @JMS\SerializedName("maxChargePercent")
118+
*/
119+
public $maxChargePercent;
120+
121+
/**
122+
* @var float
123+
*
124+
* @JMS\Type("float")
125+
* @JMS\SerializedName("minResidualCost")
126+
*/
127+
public $minResidualCost;
128+
129+
/**
130+
* @var \RetailCrm\Api\Model\Entity\Loyalty\LoyaltyEvent[]
131+
*
132+
* @JMS\Type("array<RetailCrm\Api\Model\Entity\Loyalty\LoyaltyEvent>")
133+
* @JMS\SerializedName("events")
134+
*/
135+
public $events;
136+
89137
/**
90138
* @var DateTime
91139
*
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
<?php
2+
3+
/**
4+
* PHP version 7.3
5+
*
6+
* @category LoyaltyBurnSetting
7+
* @package RetailCrm\Api\Model\Entity\Loyalty
8+
*/
9+
10+
namespace RetailCrm\Api\Model\Entity\Loyalty;
11+
12+
use RetailCrm\Api\Component\Serializer\Annotation as JMS;
13+
14+
/**
15+
* Class LoyaltyBurnSetting
16+
*
17+
* @category LoyaltyBurnSetting
18+
* @package RetailCrm\Api\Model\Entity\Loyalty
19+
*/
20+
class LoyaltyBurnSetting
21+
{
22+
/**
23+
* @var int
24+
*
25+
* @JMS\Type("int")
26+
* @JMS\SerializedName("id")
27+
*/
28+
public $id;
29+
30+
/**
31+
* @var string
32+
*
33+
* @JMS\Type("string")
34+
* @JMS\SerializedName("period")
35+
*/
36+
public $period;
37+
38+
/**
39+
* @var int
40+
*
41+
* @JMS\Type("int")
42+
* @JMS\SerializedName("percent")
43+
*/
44+
public $percent;
45+
}
Lines changed: 120 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,120 @@
1+
<?php
2+
3+
/**
4+
* PHP version 7.3
5+
*
6+
* @category LoyaltyEvent
7+
* @package RetailCrm\Api\Model\Entity\Loyalty
8+
*/
9+
10+
namespace RetailCrm\Api\Model\Entity\Loyalty;
11+
12+
use DateTime;
13+
use RetailCrm\Api\Component\Serializer\Annotation as JMS;
14+
15+
/**
16+
* Class LoyaltyEvent
17+
*
18+
* @category LoyaltyEvent
19+
* @package RetailCrm\Api\Model\Entity\Loyalty
20+
*
21+
* @SuppressWarnings(PHPMD.LongVariable)
22+
*/
23+
class LoyaltyEvent
24+
{
25+
/**
26+
* @var int
27+
*
28+
* @JMS\Type("int")
29+
* @JMS\SerializedName("id")
30+
*/
31+
public $id;
32+
33+
/**
34+
* @var string
35+
*
36+
* @JMS\Type("string")
37+
* @JMS\SerializedName("privilegeType")
38+
*/
39+
public $privilegeType;
40+
41+
/**
42+
* @var int
43+
*
44+
* @JMS\Type("int")
45+
* @JMS\SerializedName("privilegeSize")
46+
*/
47+
public $privilegeSize;
48+
49+
/**
50+
* @var int
51+
*
52+
* @JMS\Type("int")
53+
* @JMS\SerializedName("privilegeSizePromo")
54+
*/
55+
public $privilegeSizePromo;
56+
57+
/**
58+
* @var string
59+
*
60+
* @JMS\Type("string")
61+
* @JMS\SerializedName("expirePeriod")
62+
*/
63+
public $expirePeriod;
64+
65+
/**
66+
* @var int
67+
*
68+
* @JMS\Type("int")
69+
* @JMS\SerializedName("activatePeriod")
70+
*/
71+
public $activatePeriod;
72+
73+
/**
74+
* @var bool
75+
*
76+
* @JMS\Type("bool")
77+
* @JMS\SerializedName("discountOneOrderOnly")
78+
*/
79+
public $discountOneOrderOnly;
80+
81+
/**
82+
* @var bool
83+
*
84+
* @JMS\Type("bool")
85+
* @JMS\SerializedName("discountForAllProducts")
86+
*/
87+
public $discountForAllProducts;
88+
89+
/**
90+
* @var DateTime
91+
*
92+
* @JMS\Type("DateTime<'Y-m-d H:i:s'>")
93+
* @JMS\SerializedName("activatedAt")
94+
*/
95+
public $activatedAt;
96+
97+
/**
98+
* @var string
99+
*
100+
* @JMS\Type("string")
101+
* @JMS\SerializedName("type")
102+
*/
103+
public $type;
104+
105+
/**
106+
* @var bool
107+
*
108+
* @JMS\Type("bool")
109+
* @JMS\SerializedName("afterFirstOrder")
110+
*/
111+
public $afterFirstOrder;
112+
113+
/**
114+
* @var string
115+
*
116+
* @JMS\Type("string")
117+
* @JMS\SerializedName("beforePeriod")
118+
*/
119+
public $beforePeriod;
120+
}

src/Model/Entity/Loyalty/LoyaltyEventDiscount.php

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,4 +26,12 @@ class LoyaltyEventDiscount
2626
* @JMS\SerializedName("id")
2727
*/
2828
public $id;
29+
30+
/**
31+
* @var \RetailCrm\Api\Model\Entity\Loyalty\LoyaltyEvent
32+
*
33+
* @JMS\Type("RetailCrm\Api\Model\Entity\Loyalty\LoyaltyEvent")
34+
* @JMS\SerializedName("loyaltyEvent")
35+
*/
36+
public $loyaltyEvent;
2937
}

src/Model/Entity/Loyalty/LoyaltyLevel.php

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,4 +66,12 @@ class LoyaltyLevel
6666
* @JMS\SerializedName("privilegeSizePromo")
6767
*/
6868
public $privilegeSizePromo;
69+
70+
/**
71+
* @var \RetailCrm\Api\Model\Entity\Loyalty\LoyaltyLevelCondition[]
72+
*
73+
* @JMS\Type("array<RetailCrm\Api\Model\Entity\Loyalty\LoyaltyLevelCondition>")
74+
* @JMS\SerializedName("creditConditions")
75+
*/
76+
public $creditConditions;
6977
}
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
<?php
2+
3+
/**
4+
* PHP version 7.3
5+
*
6+
* @category LoyaltyLevelCondition
7+
* @package RetailCrm\Api\Model\Entity\Loyalty
8+
*/
9+
10+
namespace RetailCrm\Api\Model\Entity\Loyalty;
11+
12+
use RetailCrm\Api\Component\Serializer\Annotation as JMS;
13+
14+
/**
15+
* Class LoyaltyLevelCondition
16+
*
17+
* @category LoyaltyLevelCondition
18+
* @package RetailCrm\Api\Model\Entity\Loyalty
19+
*/
20+
class LoyaltyLevelCondition
21+
{
22+
/**
23+
* @var int
24+
*
25+
* @JMS\Type("int")
26+
* @JMS\SerializedName("id")
27+
*/
28+
public $id;
29+
30+
/**
31+
* @var float
32+
*
33+
* @JMS\Type("float")
34+
* @JMS\SerializedName("privilegeSize")
35+
*/
36+
public $privilegeSize;
37+
38+
/**
39+
* @var float
40+
*
41+
* @JMS\Type("float")
42+
* @JMS\SerializedName("privilegeSizePromo")
43+
*/
44+
public $privilegeSizePromo;
45+
46+
/**
47+
* @var \RetailCrm\Api\Model\Entity\Loyalty\LoyaltyLevelConditionItem[]
48+
*
49+
* @JMS\Type("array<RetailCrm\Api\Model\Entity\Loyalty\LoyaltyLevelConditionItem>")
50+
* @JMS\SerializedName("items")
51+
*/
52+
public $items;
53+
}
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
<?php
2+
3+
/**
4+
* PHP version 7.3
5+
*
6+
* @category LoyaltyLevelConditionItem
7+
* @package RetailCrm\Api\Model\Entity\Loyalty
8+
*/
9+
10+
namespace RetailCrm\Api\Model\Entity\Loyalty;
11+
12+
use RetailCrm\Api\Component\Serializer\Annotation as JMS;
13+
14+
/**
15+
* Class LoyaltyLevelConditionItem
16+
*
17+
* @category LoyaltyLevelConditionItem
18+
* @package RetailCrm\Api\Model\Entity\Loyalty
19+
*/
20+
class LoyaltyLevelConditionItem
21+
{
22+
/**
23+
* @var int
24+
*
25+
* @JMS\Type("int")
26+
* @JMS\SerializedName("id")
27+
*/
28+
public $id;
29+
30+
/**
31+
* @var \RetailCrm\Api\Model\Entity\Orders\Items\Offer
32+
*
33+
* @JMS\Type("RetailCrm\Api\Model\Entity\Orders\Items\Offer")
34+
* @JMS\SerializedName("offer")
35+
*/
36+
public $offer;
37+
38+
/**
39+
* @var \RetailCrm\Api\Model\Entity\Store\Product
40+
*
41+
* @JMS\Type("RetailCrm\Api\Model\Entity\Store\Product")
42+
* @JMS\SerializedName("product")
43+
*/
44+
public $product;
45+
46+
/**
47+
* @var \RetailCrm\Api\Model\Entity\Store\ProductGroup
48+
*
49+
* @JMS\Type("RetailCrm\Api\Model\Entity\Store\ProductGroup")
50+
* @JMS\SerializedName("productGroup")
51+
*/
52+
public $productGroup;
53+
54+
/**
55+
* @var string
56+
*
57+
* @JMS\Type("string")
58+
* @JMS\SerializedName("manufacturer")
59+
*/
60+
public $manufacturer;
61+
}

src/Model/Entity/Loyalty/Operation.php

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,4 +82,12 @@ class Operation
8282
* @JMS\SerializedName("loyalty")
8383
*/
8484
public $loyalty;
85+
86+
/**
87+
* @var string
88+
*
89+
* @JMS\Type("string")
90+
* @JMS\SerializedName("comment")
91+
*/
92+
public $comment;
8593
}

0 commit comments

Comments
 (0)