Skip to content

Commit ead2e5f

Browse files
committed
update code
1 parent a13835a commit ead2e5f

File tree

3 files changed

+51
-17
lines changed

3 files changed

+51
-17
lines changed

app/code/PDP/Integration/Model/Pdpproduct/PdpGuestDesignRepository.php

Lines changed: 24 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -113,9 +113,9 @@ public function save(\PDP\Integration\Api\Data\PdpDesignItemInterface $pdpDesign
113113
->setMessage(nl2br($e->getMessage()));
114114
return $reponse;
115115
}
116-
$dataGuestDesign = $modelGuestDesign->loadByCustomerId($customerId);
117-
if($dataGuestDesign->getEntityId()) {
118-
$dataItemVal = unserialize($dataGuestDesign->getItemValue());
116+
$dataGuestDesignData = $modelGuestDesign->loadByCustomerId($customerId);
117+
if($dataGuestDesignData->getEntityId()) {
118+
$dataItemVal = unserialize($dataGuestDesignData->getItemValue());
119119
if(isset($_dataItemVal)) {
120120
foreach($_dataItemVal as $_item) {
121121
$dataItemVal[] = $_item;
@@ -131,7 +131,7 @@ public function save(\PDP\Integration\Api\Data\PdpDesignItemInterface $pdpDesign
131131
if(!$update) {
132132
$dataItemVal[] = $itemValue;
133133
}
134-
$dataGuestDesign->setItemValue(serialize($dataItemVal))->save();
134+
$dataGuestDesignData->setItemValue(serialize($dataItemVal))->save();
135135
}
136136
} catch(\Magento\Framework\Exception\LocalizedException $e) {
137137
$reponse->setStatus(false)
@@ -142,9 +142,9 @@ public function save(\PDP\Integration\Api\Data\PdpDesignItemInterface $pdpDesign
142142
} else {
143143
if($customerId) {
144144
try {
145-
$dataGuestDesign = $modelGuestDesign->loadByCustomerId($customerId);
146-
if($dataGuestDesign->getEntityId()) {
147-
$dataItemVal = unserialize($dataGuestDesign->getItemValue());
145+
$dataGuestDesignData = $modelGuestDesign->loadByCustomerId($customerId);
146+
if($dataGuestDesignData->getEntityId()) {
147+
$dataItemVal = unserialize($dataGuestDesignData->getItemValue());
148148
$update = false;
149149
foreach($dataItemVal as $__item) {
150150
if($__item['product_id'] == $itemValue['product_id'] && $__item['pdp_product_id'] == $itemValue['pdp_product_id'] && $__item['design_id'] == $itemValue['design_id']) {
@@ -156,7 +156,20 @@ public function save(\PDP\Integration\Api\Data\PdpDesignItemInterface $pdpDesign
156156
$dataItemVal[] = $itemValue;
157157
}
158158

159-
$dataGuestDesign->setItemValue(serialize($dataItemVal))->save();
159+
$dataGuestDesignData->setItemValue(serialize($dataItemVal))->save();
160+
} else {
161+
try {
162+
$dataGuestDesign['item_value'] = serialize([$itemValue]);
163+
$dataGuestDesign['customer_is_guest'] = 0;
164+
$dataGuestDesign['customer_id'] = $customerId;
165+
$modelGuestDesign->addData($dataGuestDesign)->save();
166+
$pdpGuestDesignId = $modelGuestDesign->getEntityId();
167+
$this->_pdpIntegrationSession->setPdpDesignId($pdpGuestDesignId);
168+
} catch(\Magento\Framework\Exception\LocalizedException $e) {
169+
$reponse->setStatus(false)
170+
->setMessage(nl2br($e->getMessage()));
171+
return $reponse;
172+
}
160173
}
161174
} catch(\Magento\Framework\Exception\LocalizedException $e) {
162175
$reponse->setStatus(false)
@@ -169,8 +182,8 @@ public function save(\PDP\Integration\Api\Data\PdpDesignItemInterface $pdpDesign
169182
if($this->_pdpIntegrationSession->getPdpDesignId()) {
170183
$pdpGuestDesignId = $this->_pdpIntegrationSession->getPdpDesignId();
171184
try {
172-
$dataGuestDesign = $modelGuestDesign->load($pdpGuestDesignId);
173-
$dataItemVal = unserialize($dataGuestDesign->getItemValue());
185+
$dataGuestDesignData = $modelGuestDesign->load($pdpGuestDesignId);
186+
$dataItemVal = unserialize($dataGuestDesignData->getItemValue());
174187
$update = false;
175188
foreach($dataItemVal as $__item) {
176189
if($__item['product_id'] == $itemValue['product_id'] && $__item['pdp_product_id'] == $itemValue['pdp_product_id'] && $__item['design_id'] == $itemValue['design_id']) {
@@ -181,7 +194,7 @@ public function save(\PDP\Integration\Api\Data\PdpDesignItemInterface $pdpDesign
181194
if(!$update) {
182195
$dataItemVal[] = $itemValue;
183196
}
184-
$dataGuestDesign->setItemValue(serialize($dataItemVal))->save();
197+
$dataGuestDesignData->setItemValue(serialize($dataItemVal))->save();
185198
} catch(\Magento\Framework\Exception\LocalizedException $e) {
186199
$reponse->setStatus(false)
187200
->setMessage(nl2br($e->getMessage()));

app/code/PDP/Integration/Observer/Adminhtml/PdpSalesOrder.php

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,9 +44,11 @@ public function execute(\Magento\Framework\Event\Observer $observer) {
4444
$dataOderRela = $pdpOrderRelation->getDataWithOrderId($orderId);
4545
if($dataOderRela) {
4646
foreach($dataOderRela as $vl) {
47-
$pdp_order_id = $vl['pdp_order_id'];
47+
if(isset($vl['pdp_order_id'])) {
48+
$pdp_order_id = $vl['pdp_order_id'];
49+
}
4850
}
49-
if($pdp_order_id) {
51+
if(isset($pdp_order_id) && $pdp_order_id) {
5052
$_data = $pdpOrder->load($pdp_order_id);
5153
if($_data->getOrderId()) {
5254
try {

app/code/PDP/Integration/Observer/PdpQuoteManagement.php

Lines changed: 23 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -255,10 +255,29 @@ protected function __saveInfoOrderPdp(\Magento\Sales\Model\Order $order, $flag,
255255
$customerId = $this->_customerSession->getCustomerId();
256256
if($customerId) {
257257
try{
258-
$this->_pdpGuestDesignFactory->create()
259-
->loadByCustomerId($customerId)
260-
->setIsActive(0)
261-
->save();
258+
$guestDesignModel = $this->_pdpGuestDesignFactory->create();
259+
$dataGuestDesign = $guestDesignModel->loadByCustomerId($customerId);
260+
if($dataGuestDesign->getEntityId()) {
261+
$dataItemValue = unserialize($dataGuestDesign->getItemValue());
262+
$guestDesignId = $dataGuestDesign->getEntityId();
263+
foreach($dataItemValue as $__key => $__itemValue) {
264+
foreach($_dataOrderItem as $__orderItem) {
265+
if($__orderItem['design_id'] == $__itemValue['design_id'] && $__orderItem['product_id'] == $__itemValue['pdp_product_id']) {
266+
unset($dataItemValue[$__key]);
267+
break;
268+
}
269+
}
270+
}
271+
if(count($dataItemValue)) {
272+
$guestDesignModel->load($guestDesignId)
273+
->setItemValue(serialize($dataItemValue))
274+
->save();
275+
} else {
276+
$guestDesignModel->load($guestDesignId)
277+
->setIsActive(0)
278+
->save();
279+
}
280+
}
262281
$this->_pdpIntegrationSession->setPdpDesignId(null);
263282
} catch(\Exception $e) {
264283
$this->messageManager->addException($e, __('Update guest design error'));

0 commit comments

Comments
 (0)