Редактирование заказа v.2.0 by vsupport.club
#41
Отправлено 21 April 2014 - 09:18 PM
Ну да это мелочи, главное теперь побороть как то проблему если в магазине есть выбор валют.
#42
Отправлено 18 July 2014 - 10:49 PM
#43
Отправлено 18 July 2014 - 10:52 PM
#44
Отправлено 18 August 2014 - 01:22 AM
Попробовал сделать как советует Dbus.
Цена теперь начала меняться да, но... интересная петрушка получается.
Если заказ сделан в другой валюте, в отличной от основной (в которой прописан товар изначально), то после редактирования старая цена умножается на число которое мы устанавливали как новая цена. В итоге получается полный бред.
Ну да это мелочи, главное теперь побороть как то проблему если в магазине есть выбор валют.
Не поборол но на половину выкрутился.
Раз оно обсчитывает в тех же долларах (или в валюте к которой изначально "привязан" магазин) сделал просто, показ и возможность менять цену товара в заказе в валюте к которой изначально "привязан" магазин. В моем случае это $США.
Не удобно - да, но хоть так.
Что сделал:
В файле custord_new_orders.tpl
Вместо строчки:
<input type="text" name="PriceOne[{$orderContent[i].itemID}]" value='{$orderContent[i].PriceOne}' />
Вставил следующее:
Цена за 1ед. {$orderContent[i].PriceOne} <input type="text" name="PriceOne[{$orderContent[i].itemID}]" value='{$orderContent[i].Price}' />
Получилось примерно так:
IMG_18.08.2014-2.24.39.jpg 17.24К 33 Количество загрузок:
Теперь чтобы изменить цену в заказе нужно изменить цену в валюте к которой привязан магазин. А слева, после редактирования заказа, будет отображаться цена в валюте в которой был сделан сам заказ.
Думаю что решить проблему можно и другим путем, но пока на ум пришло только вот такое полурешение.
#45
Отправлено 13 October 2014 - 12:38 PM
Подскажите может уже в кого реализована такая доработка.
Когда при редактировании заказа мы добавляем какой товар к заказу, то ищем данный товар в дополнительном окне в каталоге товаров. Вопрос: как сделать чтобы в этом окошке был и поиск, чтобы быстро икать тот или иной товар.
Спасибо.
#46
Отправлено 16 April 2015 - 04:57 PM
#47
Отправлено 03 December 2015 - 05:05 PM
Штатный просмотр заказа показывает способ доставки плюс (если есть) вариант доставки.
Варианты (из штатных модулей) есть только в модуле доставки "Почта России" - авиа и обычная.
Выбрав при оформлении способ доставки "Почта России" и вариант "Авиа" мы в ШТАТНОМ модуле просмотра заказа увидим "Почта России (Авиа)", т.к. в случае наличия вариантов в скобках будет показан выбранный вариант.
Но! Тут-то у нас модуль с редактированием и сохранением!
И при сохранении получается, что название модуля доставки в этом заказе сменилось на "Почта России (Авиа)", а в редактировании заказа поле будет содержать уже "Почта России (Авиа) (Авиа)", т.к. к названию доставки снова добавился вариант. И так при каждом сохранении будет добавляться еще одно "(Авиа)".
Решение - вынести вариант (зачем нам его редактировать?) за пределы input-а.
В файле custord_new_orders.tpl.html
вместо
<td><input type="text" name="shipping_type" size="40" class="prc" value='{$order.shipping_type}{if $order.shippingServiceInfo} ({$order.shippingServiceInfo}){/if}' /></td>
вставляем
<td><input type="text" name="shipping_type" size="40" class="prc" value='{$order.shipping_type}'/>{if $order.shippingServiceInfo} ({$order.shippingServiceInfo}){/if}</td>
#48
Отправлено 27 May 2016 - 01:38 PM
Суть исправлений:
(1) при изменении характеристики товара в название товара не вставлялся вариант характеристики, если вариант всего один.
(2) при изменении характеристики товара в название товара вставлялся список характеристик, где каждая характеристика в скобках, а не весь список в скобках.
(3) при не заданном дефолтовом варианте характеристики подставлялась характеристика с variantID = 1, а не первый или еще какой-либо из вариантов характеристики этого товара.
(3) при добавлении товара в название товара не вставлялся список дефолтовых (или первых) характеристик.
1. файл custord_new_orders_edit.tpl.html
{* BEGIN исправляем ошибку *}
<input type="hidden" name="option_select_{$orderContent[i].itemID}[{$ExtraParametrs[j].optionID}]" value="{$ExtraParametrs[j].values_to_select[0].price_surplus}:{$ExtraParametrs[j].values_to_select[0].variantID}:{$ExtraParametrs[j].values_to_select[0].option_value}">
{* END исправляем ошибку *}
2. файл custord_new_orders_edit.php
# BEGIN исправляем ошибку
#$new_har .= " (".$extraparametrs_edited_value[$optionID_post][2].") ";
$new_har[] = $extraparametrs_edited_value[$optionID_post][2];
# END исправляем ошибку
...
# BEGIN исправляем ошибку
#$new_name = "[".$name_prod['product_code']."] ".$name_prod['name'].$new_har;
$new_name = "[".$name_prod['product_code']."] ".$name_prod['name'].(isset($new_har)?' ('.implode(',',$new_har).')':'');
# END исправляем ошибку
3. файл wishprod.php
# BEGIN исправляем ошибку
#$options[$key]["variantID"] = 1;
$options[$key]["variantID"] = $product_extra["values_to_select"][0]["variantID"];
# END исправляем ошибку
$options[$key]["price_surplus"] = $product_extra["values_to_select"][0]["price_surplus"];
}
}
}
}
if(count($options) > 0)
{
foreach($options as $option)
# BEGIN исправляем ошибку
{
# END исправляем ошибку
db_query("INSERT INTO `".DB_PRFX."item_options` (itemID, optionID, orderID, variantID, price_surplus)
VALUES ('".$last_itemID."',
'".$option["optionID"]."',
'".$orderID."',
'".$option["variantID"]."',
'".$option["price_surplus"]."')");
# BEGIN исправляем ошибку
$row = db_fetch_assoc(db_query("SELECT option_value FROM ".PRODUCTS_OPTIONS_VALUES_VARIANTS_TABLE." WHERE variantID=".$option["variantID"]." LIMIT 1"));
$var_str[] = $row['option_value'];
}
$product_name .= " (".implode(',',$var_str).")";
# END исправляем ошибку
Делаем добавление товаров так же, как "живой поиск", т.е. набрав в поле ввода часть назавания и выбрав товар из полученного списка.
1.JPG 50.24К 17 Количество загрузок:
1. копируем файлы
jquery.autocomplete.css -> /data/admin/
jquery.autocomplete.pack.js -> /data/admin/
2. в файле custord_new_orders_edit.tpl.html
2.1. после
{* order detailed *}
{else}
вставляем
{* BEGIN "живой поиск" для добавляемых товаров *}
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js" type="text/javascript"></script>
<script type='text/javascript' src='data/admin/jquery.autocomplete.pack.js'></script>
<link rel="stylesheet" type="text/css" href="data/admin/jquery.autocomplete.css">
{literal}
<script type="text/javascript">
function liFormat (row, i, num)
{
return "<table cellpadding='0' cellspacing='0'><tr valign='middle'><td align='center' width='80' rowspan='2'><img border = '0' height= '70' vspace='2' hspace='2' title='"+row[1]+"' src='"+row[3]+"'><\/td><td>"+row[1]+"<\/td><\/tr><tr><td>"+row[2]+"<\/td><\/tr><\/table>";
}
$().ready(function() {
$("#livesearch").autocomplete("order_edit_search.php?cID={/literal}{$smarty.const.CONF_DEFAULT_CURRENCY}{literal}", {
max: 30,
highlight: false,
scroll: true,
scrollHeight: 600,
width:250,
formatItem:liFormat
});
$("#livesearch").result(function () {
var productID = $('#livesearch').val();
$.ajax({
url: {/literal}'{$smarty.const.ADMIN_FILE}?do=wishprod&addprod=yes&livesearch=yes&orderID={$order.orderID}&select_product='+productID{literal},
beforeSend: function () {$('#livesearch').val('')},
success: function (result) {window.location.reload();},
error: function(req, text, error) {alert('AJAX error: ' + text + ' | ' + error)}
});
});
});
</script>
{/literal}
{* END "живой поиск" для добавляемых товаров *}
2.2. после
<td align="left">{$smarty.const.STRING_ORDERING2} #{$order.orderID}</td>
вставляем
{* BEGIN "живой поиск" для добавляемых товаров *}
<td align="left">Добавить товар поиском: <input type="text" id="livesearch" size="50"></td>
{* END "живой поиск" для добавляемых товаров *}
3. в файле wishprod.php
после (фигурная скобка!)
db_query("UPDATE `".DB_PRFX."orders` SET order_amount=".$new_order_amount.", order_discount=".$new_order_discount["discount_percent"]." where orderID=".$orderID);
}
вставляем
# BEGIN "живой поиск" для добавляемых товаров
if (isset($_GET['livesearch'])) exit();
# END "живой поиск" для добавляемых товаров
#49
Отправлено 11 June 2016 - 02:29 PM
Исправляем ошибки.
Суть исправлений:
(1) при изменении характеристики товара в название товара не вставлялся вариант характеристики, если вариант всего один.
(2) при изменении характеристики товара в название товара вставлялся список характеристик, где каждая характеристика в скобках, а не весь список в скобках.
(3) при не заданном дефолтовом варианте характеристики подставлялась характеристика с variantID = 1, а не первый или еще какой-либо из вариантов характеристики этого товара.
(3) при добавлении товара в название товара не вставлялся список дефолтовых (или первых) характеристик.
эти же, кстати, ошибки присутствуют и в Quick_cart модуле
#50
Отправлено 11 June 2016 - 07:33 PM
Если под "Quick_cart модуль" имеется в виду мой модуль "Оформление заказа на одной странице" (других quick_cart.php я не встречал), то в нем в принципе не может быть этих ошибок, т.к. при оформлении корзины (хоть на одной странице, хоть штатном) товары не добавляются и не меняются.эти же, кстати, ошибки присутствуют и в Quick_cart модуле
#51
Отправлено 11 June 2016 - 09:18 PM
#52
Отправлено 12 June 2016 - 12:19 PM
Примеры в студию.при работе модуля быстрая корзина, тоже в имени товаров наблюдаются все эти 4 проблемы
1. строка productComplexName формируется на этапе добавления товара в корзину, а не оформления заказа, т.е. абсолютно одинакова для любого способа оформления заказа. Хоть быстрого, хоть штатного, хоть еще какого.
2. Все четыре вышеперечисленные ошибки - это ошибки в коде модуля namer-а, а не в общих функциях. Клиентской части (корзины и оформления заказа) они не касаются никак.
PS. Может быть, речь о "быстром заказе", а не о "быстрой корзине"? Т.е. quick_order, а не quick_cart?