$orderIds = ArrayHelper::getColumn($sales, 'order_id');
$orderIdsClean = [];
foreach ($orderIds as $orderId) {
- if (is_int($orderId)) {
+ if (intval($orderId) == $orderId) {
$orderIdsClean[] = $orderId;
}
}
->andWhere(['not in', 'phone', ['', null]])
->all();
$phoneByAmoIdMap = ArrayHelper::map($ordersAmo, 'amo_id', 'phone');
+
+ $salesClean = [];
+ foreach ($sales as $sale) {
+ /** @var $sale Sales */
+ if (!empty($phoneByAmoIdMap[$sale->order_id]) &&
+ intval($phoneByAmoIdMap[$sale->order_id]) == $phoneByAmoIdMap[$sale->order_id]) {
+ $salesClean[] = $sale;
+ }
+ }
+
+ $sales = $salesClean;
+
if ($action == 'update') {
foreach ($sales as $sale) {
/** @var $sale Sales */
- if (!empty($phoneByAmoIdMap[$sale->order_id]) && is_int($phoneByAmoIdMap[$sale->order_id])) {
- Sales::updateAll(['phone' => $phoneByAmoIdMap[$sale->order_id]], ['order_id' => $sale->order_id]);
- }
+ Sales::updateAll(['phone' => $phoneByAmoIdMap[$sale->order_id]], ['order_id' => $sale->order_id]);
}
}
}