Помощь Себестоимость в админке

Sudba

Гуру форума
Регистрация
6 Дек 2007
Сообщения
930
Реакции
50
Здравствуйте. Opencart 1.5.6.
Как вывести себестоимость, используя тег EAN при просмотре заказа в админке?
И чтобы в конце считалась сумма себестоимости заказа?
 
Приветствую.
Не нашёл ничего кроме ADD-Product-Cost--Sales-Report---OC1.5.5-PRO-V2.3.6.1
Работает коряво и не совсем то, что нужно, но лучше чем ничего.
 
Здравствуйте. Opencart 1.5.6.
Как вывести себестоимость, используя тег EAN при просмотре заказа в админке?
И чтобы в конце считалась сумма себестоимости заказа?
Заказы -> Просмотр -> Товары - тут вывести у каждого товара поле "EAN", в котором вы будете вписывать себестоимость товара? Вроде не проблема, а потом просто сложить все EAN всех товаров в заказе.
 
Что толку в этом, если EAN будет отображаться только в карточках товаров в админке ?
Нужно чтобы в заказе учитывалась себестоимость и на основании этого можно было бы посчитать прибыль.
 
Заказы -> Просмотр -> Товары - тут вывести у каждого товара поле "EAN", в котором вы будете вписывать себестоимость товара? Вроде не проблема, а потом просто сложить все EAN всех товаров в заказе.
об этом и разговор, что EAN ввести не сложно, хотелось бы чтобы в самом заказе выводились цифры и сумму заказа по себестоимости. То есть сложить все EAN товаров в заказе, как?
 
Внедрите пока предложенный мной модуль.

Он вводит в БД поле себестоимости.

В заказе получается как-то так
upload_2017-7-11_17-38-41.png

Потом считаю вручную себестоимость и вычитаю из общей суммы.
Получаю маржу.

И у него есть ещё система аналитики простенькая.
В ней всё автоматом считает, но нельзя выделить конкретный заказ. Или через задницу с указанием кучи фильтров.
 
об этом и разговор, что EAN ввести не сложно, хотелось бы чтобы в самом заказе выводились цифры и сумму заказа по себестоимости. То есть сложить все EAN товаров в заказе, как?
admin\view\template\sale\order_info.tpl
После:
Код:
<td class="left"><?php echo $column_product; ?></td>
Добавить:
Код:
<td class="left">Себестоимость товара</td>

Перед:
Код:
<td class="left"><?php echo $product['model']; ?></td>
Добавить:
Код:
<td class="left">
              <?php foreach ($product['eantoorder'] as $eantoorder) { ?>
              <div id="load_numAll-shet"><div data-num="<?php echo $eantoorder['ean']; ?>" id="load_numAll" ><?php echo $eantoorder['ean']; ?></div></div>
              <?php } ?></td>
Перед:
Код:
<?php foreach ($totals as $totals) { ?>
Вставить:
Код:
          <tbody>
            <tr>
              <td colspan="5" class="right">Общая себестоимость</td>
              <td class="right"><div id="load_numAll-show"></div></td>
            </tr>
          </tbody>
Перед:
Код:
$('#invoice-generate').live('click', function() {
Вставить:
Код:
var $showBox = document.getElementById('load_numAll-show');
var $numbers = document.querySelectorAll('#load_numAll-shet div');
var sum = 0;

for(var i = 0; i < $numbers.length; i++) {
    sum += Number($numbers[i].dataset.num);
}

$showBox.innerText = sum;

admin\controller\sale\order.php
После:
Код:
$options = $this->model_sale_order->getOrderOptions($this->request->get['order_id'], $product['order_product_id']);
Вставить:
Код:
                $eantoorders = $this->model_sale_order->getProductsEan($product['product_id']);
                $eantoorders_data = array();
                foreach ($eantoorders as $eantoorder) {
                        $eantoorders_data[] = array(
                            'ean'  => $eantoorder['ean']
                        );
                }
admin\model\sale\order.php
Перед:
Код:
public function getOrderOption($order_id, $order_option_id) {
Вставить:
Код:
    public function getProductsEan($product_id) {
        $query = $this->db->query("SELECT ean FROM " . DB_PREFIX . "product WHERE product_id = '" . (int)$product_id . "'");
      
        return $query->rows;
    }
Поле EAN заполняем у товаров.
Получаем на выходе вот такое Для просмотра ссылки Войди или Зарегистрируйся
Если подойдёт, можете отблагодарить ;)
 
admin\view\template\sale\order_info.tpl
После:
Код:
<td class="left"><?php echo $column_product; ?></td>
Добавить:
Код:
<td class="left">Себестоимость товара</td>

Перед:
Код:
<td class="left"><?php echo $product['model']; ?></td>
Добавить:
Код:
<td class="left">
              <?php foreach ($product['eantoorder'] as $eantoorder) { ?>
              <div id="load_numAll-shet"><div data-num="<?php echo $eantoorder['ean']; ?>" id="load_numAll" ><?php echo $eantoorder['ean']; ?></div></div>
              <?php } ?></td>
Перед:
Код:
<?php foreach ($totals as $totals) { ?>
Вставить:
Код:
          <tbody>
            <tr>
              <td colspan="5" class="right">Общая себестоимость</td>
              <td class="right"><div id="load_numAll-show"></div></td>
            </tr>
          </tbody>
Перед:
Код:
$('#invoice-generate').live('click', function() {
Вставить:
Код:
var $showBox = document.getElementById('load_numAll-show');
var $numbers = document.querySelectorAll('#load_numAll-shet div');
var sum = 0;

for(var i = 0; i < $numbers.length; i++) {
    sum += Number($numbers[i].dataset.num);
}

$showBox.innerText = sum;

admin\controller\sale\order.php
После:
Код:
$options = $this->model_sale_order->getOrderOptions($this->request->get['order_id'], $product['order_product_id']);
Вставить:
Код:
                $eantoorders = $this->model_sale_order->getProductsEan($product['product_id']);
                $eantoorders_data = array();
                foreach ($eantoorders as $eantoorder) {
                        $eantoorders_data[] = array(
                            'ean'  => $eantoorder['ean']
                        );
                }
admin\model\sale\order.php
Перед:
Код:
public function getOrderOption($order_id, $order_option_id) {
Вставить:
Код:
    public function getProductsEan($product_id) {
        $query = $this->db->query("SELECT ean FROM " . DB_PREFIX . "product WHERE product_id = '" . (int)$product_id . "'");
     
        return $query->rows;
    }
Поле EAN заполняем у товаров.
Получаем на выходе вот такое Для просмотра ссылки Войди или Зарегистрируйся
Если подойдёт, можете отблагодарить ;)
не получилось, все сделал по инструкции, колонка себестоимости вышла, а цены товаров нет и сумма не считается.
Ошибок в консоли нет
 
Назад
Сверху