Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

Вывод оставшегося количества товара в order_info


Moonwalker
 Share

Recommended Posts

День добрый!

 

Может, кто сталкивался или реализовывал ))

Понадобилась одна штука, покопался, не нашел, как реализовать.

 

В админке при просмотре заказа в таблице выводится количество товаров непосредственно в заказе.

Хочу дополнительно в эту же табличку вывести текущее количество каждого товара из заказа (для того, чтобы не прыгать и не смотреть, сколько осталось, чтобы прямо в заказе было видно, последний он был, если, например, осталось 0, или, наоборот, с запасом).

Всякие дополнительные sku, isbn, jan и прочее выводятся без проблем. А вот текущее число что-то туплю и не пойму, как вывести =/

 

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

 

Понимаю, что надо в контроллер order.php (там потенциально три блока, куда надо воткнуть) и потом в order_info.tpl добавить, но что именно - не хватает знаний ))

Может, кто ткнет носом? ))

 

Заранее спасибо.

Link to comment
Share on other sites


как вариант для 2.3

order.php метод info

				$sql = "select quantity from `" . DB_PREFIX . "product` where product_id = '" .(int)$product['product_id'] . "'";
				$query = $this->db->query($sql);
				$stock_balance = $query->row['quantity'];
				$data['products'][] = array(
					'order_product_id' => $product['order_product_id'],
					'product_id'       => $product['product_id'],
					'name'    	 	   => $product['name'],
					'model'    		   => $product['model'],
					'option'   		   => $option_data,
					'quantity'		   => $product['quantity'],
					'stock_balance'            => $stock_balance,
					'price'    		   => $this->currency->format($product['price'] + ($this->config->get('config_tax') ? $product['tax'] : 0), $order_info['currency_code'], $order_info['currency_value']),
					'total'    		   => $this->currency->format($product['total'] + ($this->config->get('config_tax') ? ($product['tax'] * $product['quantity']) : 0), $order_info['currency_code'], $order_info['currency_value']),
					'href'     		   => $this->url->link('catalog/product/edit', 'token=' . $this->session->data['token'] . '&product_id=' . $product['product_id'], true)
				);

в шаблоне

          <tr>
              <td class="text-left"><?php echo $column_product; ?></td>
              <td class="text-left"><?php echo $column_model; ?></td>
              <td class="text-right"><?php echo $column_quantity; ?></td>
	          <td class="text-right">Остаток на складе</td>
              <td class="text-right"><?php echo $column_price; ?></td>
              <td class="text-right"><?php echo $column_total; ?></td>
           </tr>

и

 <td class="text-left"><?php echo $product['model']; ?></td>
 <td class="text-right"><?php echo $product['quantity']; ?></td>
 <td class="text-right"><?php echo $product['stock_balance']; ?></td><!--тута-->
 <td class="text-right"><?php echo $product['price']; ?></td>
 <td class="text-right"><?php echo $product['total']; ?></td>

для простоты, прописал текст  "Остаток на складе"  напрямую в шаблоне.  по фен шую,  нужно заменить на переменную локализации.

  • +1 1
Link to comment
Share on other sites

Блин, оба круты, спасибо ))) Осталось только под 1.5 реализовать, но уже сам покопаюсь, главное, понять, к какому array прицепиться ))

Edited by Moonwalker
Link to comment
Share on other sites


спасибо, для версии 2.1.0.2.1 тоже работает

 

Moonwalker, под версию 1.5 есть в теме, способ рабочий, у самой на старой версии стоял

 

 

  • +1 1
Link to comment
Share on other sites


Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.