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

Новый статус склада при изменении значения остатков или статус по умолчанию


Recommended Posts

Как выставить статус по умолчанию? опенкарт 2.3

или 

у меня к примеру 1 товар в наличии
человек покупает у меня, остается ноль, но статус склада так же в наличии, то есть не сменился автоматом.
как мне организовать чтобы всегда товару которому присвоен ноль то выставлялся статус нет в наличии 
но есть одно большое но 
у меня есть товары что так же нет в наличии с нулевым остатком но они под заказ
так вот интересует способ выставления на нет в наличии только тем товарам у которых недавно изменился статус или сразу изменилось количество 
то есть было 10 , человек купил все и сразу автоматом херакс и нет в наличии.
или когда обновляю остатки 
выставил товару ноль, так вот чтоб статус нет в наличии присвоился только ему, так как товары с нулевым так же есть но под заказ

Edited by propmr
Link to post
Share on other sites

нашел дополнение а оно не работает 

<modification>
	<file path="admin/controller/catalog/product.php">
		<operation>
			<search><![CDATA[$data['stock_status_id'] = 0;]]></search>
			<add position="replace"><![CDATA[$data['stock_status_id'] = $this->config->get('config_stock_status_id');]]></add>
		</operation>
	</file>

	<file path="admin/controller/localisation/stock_status.php">
		<operation>
			<search><![CDATA['name'            => $result['name'],]]></search>
			<add position="replace"><![CDATA['name'            => $result['name'] . (($result['stock_status_id'] == $this->config->get('config_stock_status_id')) ? $this->language->get('text_default') : null),]]></add>
		</operation>
	</file>

	<file path="admin/controller/setting/setting.php">
		<operation>
			<search><![CDATA[$data['entry_stock_checkout'] = $this->language->get('entry_stock_checkout');]]></search>
			<add position="after"><![CDATA[		$data['entry_stock_status'] = $this->language->get('entry_stock_status');]]></add>
		</operation>
		<operation>
			<search><![CDATA[$data['help_stock_checkout'] = $this->language->get('help_stock_checkout');]]></search>
			<add position="after"><![CDATA[		$data['help_stock_status'] = $this->language->get('help_stock_status');]]></add>
		</operation>
		<operation>
			<search index="0"><![CDATA[if (isset($this->request->post['config_affiliate_auto'])) {]]></search>
			<add position="before"><![CDATA[		if (isset($this->request->post['config_stock_status_id'])) {
			$data['config_stock_status_id'] = $this->request->post['config_stock_status_id'];
		} else {
			$data['config_stock_status_id'] = $this->config->get('config_stock_status_id');
		}

		$this->load->model('localisation/stock_status');

		$data['stock_statuses'] = $this->model_localisation_stock_status->getStockStatuses();
]]></add>
		</operation>
	</file>

	<file path="admin/language/en-gb/setting/setting.php">
		<operation error = "skip">
			<search><![CDATA[$_['entry_stock_checkout']]]></search>
			<add position="after"><![CDATA[$_['entry_stock_status']           = 'Out Of Stock Status';]]></add>
		</operation>
	</file>

	<file path="admin/language/ru-ru/setting/setting.php">
		<operation error = "skip">
			<search><![CDATA[$_['entry_stock_checkout']]]></search>
			<add position="after"><![CDATA[$_['entry_stock_status']           = 'Статус Нет на складе';]]></add>
		</operation>
	</file>

	<file path="admin/view/template/setting/setting.tpl">
		<operation>
			<search><![CDATA[<legend><?php echo $text_affiliate; ?></legend>]]></search>
			<add position="before" offset="2"><![CDATA[                <div class="form-group">
                  <label class="col-sm-2 control-label" for="input-stock-status"><span data-toggle="tooltip" title="<?php echo $help_stock_status; ?>"><?php echo $entry_stock_status; ?></span></label>
                  <div class="col-sm-10">
                    <select name="config_stock_status_id" id="input-stock-status" class="form-control">
                      <?php foreach ($stock_statuses as $stock_status) { ?>
                      <?php if ($stock_status['stock_status_id'] == $config_stock_status_id) { ?>
                      <option value="<?php echo $stock_status['stock_status_id']; ?>" selected="selected"><?php echo $stock_status['name']; ?></option>
                      <?php } else { ?>
                      <option value="<?php echo $stock_status['stock_status_id']; ?>"><?php echo $stock_status['name']; ?></option>
                      <?php } ?>
                      <?php } ?>
                    </select>
                  </div>
                </div>]]></add>
		</operation>
	</file>

</modification>

есть в админке в настройках теперь статус по умолчанию при нулевом остатке 

но толку с него когда все равно если купить товар то статус остается неизменным

Link to post
Share on other sites

13 часов назад, propmr сказал:

как мне организовать чтобы всегда товару которому присвоен ноль то выставлялся статус нет в наличии 
но есть одно большое но 
у меня есть товары что так же нет в наличии с нулевым остатком но они под заказ

Не понимаю почему нельзя настроить именно штатными средствами. Статус при нулевом остатке можно выставить для каждого товара.

Соответственно можно установить товарам у которых должен быть всегда "Под заказ" соответствующий статус, а остальным "Нет в наличии".

Тогда всё будет работать именно как и требуется.

 

11 часов назад, propmr сказал:

есть в админке в настройках теперь статус по умолчанию при нулевом остатке 

но толку с него когда все равно если купить товар то статус остается неизменным

Должен меняться. Может быть что-то уже намудрили... Попробуйте обработать заказ.

Link to post
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
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • 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.