6
6
7
7
namespace Magento \SalesRule \Setup ;
8
8
9
- use Magento \Backend \App \Area \FrontNameResolver ;
10
- use Magento \Framework \App \State ;
11
- use Magento \Framework \DB \AggregatedFieldDataConverter ;
12
- use Magento \Framework \DB \DataConverter \SerializedToJson ;
13
- use Magento \Framework \DB \FieldToConvert ;
14
- use Magento \Framework \EntityManager \MetadataPool ;
15
- use Magento \Framework \Serialize \Serializer \Json ;
16
- use Magento \Framework \Setup \ModuleContextInterface ;
17
- use Magento \Framework \Setup \ModuleDataSetupInterface ;
18
- use Magento \Framework \Setup \UpgradeDataInterface ;
19
- use Magento \SalesRule \Api \Data \RuleInterface ;
20
- use Magento \SalesRule \Model \Rule as ModelRule ;
21
-
22
9
/**
23
10
* Class \Magento\SalesRule\Setup\UpgradeData
24
11
*/
25
- class UpgradeData implements UpgradeDataInterface
12
+ class UpgradeData implements \ Magento \ Framework \ Setup \ UpgradeDataInterface
26
13
{
27
14
/**
28
- * @var MetadataPool
15
+ * @var \Magento\Framework\EntityManager\ MetadataPool
29
16
*/
30
17
private $ metadataPool ;
31
18
32
19
/**
33
- * @var AggregatedFieldDataConverter
20
+ * @var \Magento\Framework\DB\ AggregatedFieldDataConverter
34
21
*/
35
22
private $ aggregatedFieldConverter ;
36
23
@@ -44,14 +31,14 @@ class UpgradeData implements UpgradeDataInterface
44
31
/**
45
32
* App state.
46
33
*
47
- * @var State
34
+ * @var \Magento\Framework\App\ State
48
35
*/
49
36
private $ state ;
50
37
51
38
/**
52
39
* Serializer.
53
40
*
54
- * @var Json
41
+ * @var \Magento\Framework\Serialize\Serializer\ Json
55
42
*/
56
43
private $ serializer ;
57
44
@@ -63,19 +50,19 @@ class UpgradeData implements UpgradeDataInterface
63
50
private $ ruleColletionFactory ;
64
51
65
52
/**
66
- * @param AggregatedFieldDataConverter $aggregatedFieldConverter
67
- * @param MetadataPool $metadataPool
53
+ * @param \Magento\Framework\DB\ AggregatedFieldDataConverter $aggregatedFieldConverter
54
+ * @param \Magento\Framework\EntityManager\ MetadataPool $metadataPool
68
55
* @param \Magento\SalesRule\Model\ResourceModel\Rule $resourceModelRule
69
- * @param Json $serializer
70
- * @param State $state
56
+ * @param \Magento\Framework\Serialize\Serializer\ Json $serializer
57
+ * @param \Magento\Framework\App\ State $state
71
58
* @param \Magento\SalesRule\Model\ResourceModel\Rule\CollectionFactory $ruleColletionFactory
72
59
*/
73
60
public function __construct (
74
- AggregatedFieldDataConverter $ aggregatedFieldConverter ,
75
- MetadataPool $ metadataPool ,
61
+ \ Magento \ Framework \ DB \ AggregatedFieldDataConverter $ aggregatedFieldConverter ,
62
+ \ Magento \ Framework \ EntityManager \ MetadataPool $ metadataPool ,
76
63
\Magento \SalesRule \Model \ResourceModel \Rule $ resourceModelRule ,
77
- Json $ serializer ,
78
- State $ state ,
64
+ \ Magento \ Framework \ Serialize \ Serializer \ Json $ serializer ,
65
+ \ Magento \ Framework \ App \ State $ state ,
79
66
\Magento \SalesRule \Model \ResourceModel \Rule \CollectionFactory $ ruleColletionFactory
80
67
) {
81
68
$ this ->aggregatedFieldConverter = $ aggregatedFieldConverter ;
@@ -89,15 +76,17 @@ public function __construct(
89
76
/**
90
77
* @inheritdoc
91
78
*/
92
- public function upgrade (ModuleDataSetupInterface $ setup , ModuleContextInterface $ context )
93
- {
79
+ public function upgrade (
80
+ \Magento \Framework \Setup \ModuleDataSetupInterface $ setup ,
81
+ \Magento \Framework \Setup \ModuleContextInterface $ context
82
+ ) {
94
83
$ setup ->startSetup ();
95
84
if (version_compare ($ context ->getVersion (), '2.0.2 ' , '< ' )) {
96
85
$ this ->convertSerializedDataToJson ($ setup );
97
86
}
98
87
if (version_compare ($ context ->getVersion (), '2.0.3 ' , '< ' )) {
99
88
$ this ->state ->emulateAreaCode (
100
- FrontNameResolver::AREA_CODE ,
89
+ \ Magento \ Backend \ App \ Area \ FrontNameResolver::AREA_CODE ,
101
90
[$ this , 'fillSalesRuleProductAttributeTable ' ],
102
91
[$ setup ]
103
92
);
@@ -109,23 +98,22 @@ public function upgrade(ModuleDataSetupInterface $setup, ModuleContextInterface
109
98
/**
110
99
* Convert metadata from serialized to JSON format:
111
100
*
112
- * @param ModuleDataSetupInterface $setup
113
- *
101
+ * @param \Magento\Framework\Setup\ModuleDataSetupInterface $setup *
114
102
* @return void
115
103
*/
116
104
public function convertSerializedDataToJson ($ setup )
117
105
{
118
- $ metadata = $ this ->metadataPool ->getMetadata (RuleInterface::class);
106
+ $ metadata = $ this ->metadataPool ->getMetadata (\ Magento \ SalesRule \ Api \ Data \ RuleInterface::class);
119
107
$ this ->aggregatedFieldConverter ->convert (
120
108
[
121
- new FieldToConvert (
122
- SerializedToJson::class,
109
+ new \ Magento \ Framework \ DB \ FieldToConvert (
110
+ \ Magento \ Framework \ DB \ DataConverter \ SerializedToJson::class,
123
111
$ setup ->getTable ('salesrule ' ),
124
112
$ metadata ->getLinkField (),
125
113
'conditions_serialized '
126
114
),
127
- new FieldToConvert (
128
- SerializedToJson::class,
115
+ new \ Magento \ Framework \ DB \ FieldToConvert (
116
+ \ Magento \ Framework \ DB \ DataConverter \ SerializedToJson::class,
129
117
$ setup ->getTable ('salesrule ' ),
130
118
$ metadata ->getLinkField (),
131
119
'actions_serialized '
@@ -142,9 +130,9 @@ public function convertSerializedDataToJson($setup)
142
130
*/
143
131
public function fillSalesRuleProductAttributeTable ()
144
132
{
145
- /** @var ResourceModelRule \Collection $ruleCollection */
133
+ /** @var \Magento\SalesRule\Model\ResourceModel\Rule \Collection $ruleCollection */
146
134
$ ruleCollection = $ this ->ruleColletionFactory ->create ();
147
- /** @var ModelRule $rule */
135
+ /** @var \Magento\SalesRule\Model\Rule $rule */
148
136
foreach ($ ruleCollection as $ rule ) {
149
137
// Save product attributes used in rule
150
138
$ conditions = $ rule ->getConditions ()->asArray ();
0 commit comments