Перейти к содержанию
Официальный форум поддержки Simpla

Как посчитать количество единиц товаров в цикле foreach


Рекомендуемые сообщения

Всем доброго вечера!

Есть файл обмена 1с exchange в нем есть цикл подбора товаров из заказа foreach. Я хочу посчитать сколько позиций товаров в заказе (с учетом что некоторых позиций может быть по несколько штук).

Считаю через $counter++ но получается что считает только проходы циклов не учитывая $purchase->amount кол-во единиц товаров.

Помогите пожалуйста разобраться с задачей...

$counter = 0; 
			foreach($purchases as $purchase)
			{
				if(!empty($purchase->product_id) && !empty($purchase->variant_id))
				{
					$product = $simpla->products->get_products(["id" => $purchase->product_id]);

					$simpla->db->query('SELECT external_id FROM __products WHERE id=?', $purchase->product_id);
					$id_p = $simpla->db->result('external_id');
					$simpla->db->query('SELECT external_id FROM __variants WHERE id=?', $purchase->variant_id);
					$id_v = $simpla->db->result('external_id');
					
					// Если нет внешнего ключа товара - указываем наш id
					if(!empty($id_p))
					{
						$id = $id_p;
					}
					else
					{
						$simpla->db->query('UPDATE __products SET external_id=id WHERE id=?', $purchase->product_id);
						$id = $purchase->product_id;
					}
					
					// Если нет внешнего ключа варианта - указываем наш id
					if(!empty($id_v))
					{
						$id = $id.'#'.$id_v;
					}
					else
					{
						$simpla->db->query('UPDATE __variants SET external_id=id WHERE id=?', $purchase->variant_id);
						$id = $id.'#'.$purchase->variant_id;
					}
					
					
				..................
			
					$t1_2 = $t1_1->addChild ( "Количество", $purchase->amount ); // Это как раз количество позиций на модель
					
				...................
			
			
			
			$counter++;	
			
			
		
			
				}
			}

			$t1_4 = $t1_3->addChild ( "КоличествоПозицийВЗаказе", $counter);

 

Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...