Перейти к содержанию
Форум поддержки пользователей VamShop

Округляет в накладной


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

В файле order.php используется

PRODUCTS_SINGLE_PRICE' => $vamPrice->Format($order_data_values['final_price']/$order_data_values['products_quantity'], true)

В файле  checkout_process.php 

$order->products[$i]['final_price'];  - еще с копейками.

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

кстати вероятней всего это и по умолчанию так

не знаю как в накладной, не могу найти где ее посмотреть не в админке)

а при просмотре заказа печати заказа через account_history цены записаны целые хотя в магазине все выводиться с дробной частью...

нужно смотреть короче)

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

  Цитата

В файле  checkout_process.php 

$order->products[$i]['final_price'];  - еще с копейками.

но записано через запятую - 8,5

Возможно из-за этого и теряются копейки при записи так как разделитель точка.

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

в файле includes/classes/order.php

function getOrderData($oID) {

нужно изменить строку


$order_data[] = array ('PRODUCTS_MODEL' => $order_data_values['products_model'], 'PRODUCTS_NAME' => $order_data_values['products_name'],'PRODUCTS_SHIPPING_TIME' => $order_data_values['products_shipping_time'], 'PRODUCTS_ATTRIBUTES' => $attributes_data, 'PRODUCTS_ATTRIBUTES_MODEL' => $attributes_model, 'PRODUCTS_PRICE' => $vamPrice->Format($order_data_values['final_price'], false),'PRODUCTS_SINGLE_PRICE' => $vamPrice->Format($order_data_values['final_price']/$order_data_values['products_quantity'], false), 'PRODUCTS_QTY' => $order_data_values['products_quantity']);
[/code] на
[code]
$order_data[] = array ('PRODUCTS_MODEL' => $order_data_values['products_model'], 'PRODUCTS_NAME' => $order_data_values['products_name'],'PRODUCTS_SHIPPING_TIME' => $order_data_values['products_shipping_time'], 'PRODUCTS_ATTRIBUTES' => $attributes_data, 'PRODUCTS_ATTRIBUTES_MODEL' => $attributes_model, 'PRODUCTS_PRICE' => $vamPrice->Format($order_data_values['final_price'], true),'PRODUCTS_SINGLE_PRICE' => $vamPrice->Format($order_data_values['final_price']/$order_data_values['products_quantity'], true), 'PRODUCTS_QTY' => $order_data_values['products_quantity']);

в аккоунте это помогло

думаю и там должно заработать

и в базу должно все норм записывать

тут только проблема в выводе

в vamPrice->format просто стояло форматирование false

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

  Цитата

и в базу должно все норм записывать

тут только проблема в выводе

Проверено в базу записывается без копеек.

  Цитата
в vamPrice->format просто стояло форматирование false

у меня записано true.

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

проверено в базу записывает с копейками.... )

если нет значит что то сам правил я на дефолтной версии смотрю..

в таблице orders_products записана текущая цена товара с копейками

и если в vamPrice->format стоит тру и убрать то что писал vam то в накладной так же появились копейки..

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

>Попробуйте в /templates/шаблон/module/admin/print_packingclip.html поменять:

только это в админке а для сайта нужно убрать то же (|number_format ...) только у файле /templates/шаблон/module/packingslip.html

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

вобщем решил проблему путем заметы запятой на точку в файле checkout_process.php

добавил:

$order->products[$i]['final_price'] = str_replace (",", ".", $order->products[$i]['final_price']);

$order->products[$i]['price'] = str_replace (",", ".", $order->products[$i]['price']);

перед

$sql_data_array = array ('orders_id' => $insert_id, 'products_id' => vam_get_prid($order->products[$i]['id']), 'products_model' => $order->products[$i]['model'], 'products_name' => $order->products[$i]['name'],'products_shipping_time'=>$order->products[$i]['shipping_time'], 'products_price' => $order->products[$i]['price'], 'final_price' => $order->products[$i]['final_price'], 'products_tax' => $order->products[$i]['tax'], 'products_discount_made' => $order->products[$i]['discount_allowed'], 'products_quantity' => $order->products[$i]['qty'], 'allow_tax' => $_SESSION['customers_status']['customers_status_show_price_tax']);

Всем спасибо за наводки.

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

Спасибо большое Mosquito и GROL за решение проблемы (добавил вам по +1 в карму;))

Все получилось, все исправилось, за исключением одного НО:

в админке в печати накладной все цены выводит правильно и суммы по строкам, а вот итоговую сумму режит по-старому.

Понимаю, что она тянется с order_total, но поиски глюка не увенчались успехом.

Если кто знает, поделитесь, плиз.

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

все, сделал

добавил по аналогии с тем, что GROL писал:

$order_totals[$i]['value'] = str_replace (",", ".", $order_totals[$i]['value']);

перед

$sql_data_array = array ('orders_id' => $insert_id, 'title' => $order_totals[$i]['title'], 'text' => $order_totals[$i]['text'], 'value' => $order_totals[$i]['value'], 'class' => $order_totals[$i]['code'], 'sort_order' => $order_totals[$i]['sort_order']);

vam_db_perform(TABLE_ORDERS_TOTAL, $sql_data_array);

Всем спасибо.

Vam, может добавишь это в код в новой версии?

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

Ну можно добавить проверку через if в зависимости от того, какой знак в ценах используется для отделения копеек.

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