Free Attribute calculate price

14.08.2014 08:49
#1
DemonU
Joomshopping forum user no avatar
Name: Dmitry
09.07.2014
Posts: 13
Quote
Free Attribute calculate price

Решение отличное, но столкнулся с проблемой:

Если делать заказ целым числом (1 м2, 2 м2, 3 м2 и т.д.) то все классно работает.
А если делать заказ дробным числом (1,5 м2, 2,7м2) тогда проблемы с подсчетами.

Вот пример:
Задаю ширину/высоту
0,302/0,302
Так же задаю переменную 11 (11 плиток в 1 м2)

Пишу формулу ($width*$height)*$var1, где (0,302*0,302*11

Получаю результат в карточке товара
количество 1.003244 умножается на цену и получаем то что нужно. Единица товара равна 1, 2, 3 и так далее все коректно, а если 1,5
Тогда получается 1.003244*1,5*цену, а это уже не правильно.
т.е. При размере ширины и высоты 0,302х0,302 площадь одной плитки равна 0,0912
в 1 м2 вмещается 11 плиток, их площадь равна 1.0032
Но в 1,5 м2 входят 17 плиток, а в магазине считает как 16, 5

Вот теперь вопрос есть ли в данном адоне формула округления? или может еще какое решение есть, готов оплатить в разумных пределах.

Еще раз условия, нам известны:
ширина и высота плитки 0,302 х 0,302
Площадь одной плитки 0,0912
Площадь в одной коробке 1,37
Цена 749

Вот так считается на листе бумаге
Предположим покупатель решил купить 5,5 метра
проверяем сколько целых коробок входит в заказ
5,5/1,37=4,046 (то есть 4 коробки ровно)
1,37*4=5,48 (4 коробки - это 5,48 м2)
5,5-5,48=0,02 (это еще одна плитка)
В итоге должно получиться 4 коробки и 1 плитка. или 61 плитка
61*0,0912*749=4166,84

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

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

 
14.08.2014 09:14
#2
webdesigner
(Support Team)
User webdesigner
Name: Admin
05.08.2010
Posts: 19077
Quote
Aw: Free Attribute calculate price

Try use formula

ceil(($width*$height)*$var1)

 
14.08.2014 12:14
#3
DemonU
Joomshopping forum user no avatar
Name: Dmitry
09.07.2014
Posts: 13
Quote
Aw: Free Attribute calculate price

webdesigner - 14.08.2014 09:14
Try use formula

ceil(($width*$height)*$var1)


Спасибо! Работает!

А вот такой вопрос:
Можно сделать так:

ceil(Переменная (вводимая покупателем м2)/$height)*$height
Где $height=0,0912 (площадь одной плитки)

 
14.08.2014 12:47
#4
DemonU
Joomshopping forum user no avatar
Name: Dmitry
09.07.2014
Posts: 13
Quote
Aw: Free Attribute calculate price

DemonU - 14.08.2014 12:14
webdesigner - 14.08.2014 09:14
Try use formula

ceil(($width*$height)*$var1)


Спасибо! Работает!

А вот такой вопрос:
Можно сделать так:

ceil(Переменная (вводимая покупателем м2)/$height)*$height
Где $height=0,0912 (площадь одной плитки)



Хотя не совсем корректною выдает вот такую ошибку:
Warning: Division by zero in /home/intker/public_html/zcc-km.ru/plugins/jshoppingproducts/free_attribute_calcule_price/free_attribute_calcule_price.php(228) : eval()'d code on line 1


Моя формула:
ceil(1/($width*$height))*($width*$height)

где,
$width=0,302
$height=0,302

В формуле считаю сколько плиток вмещает 1 квадратный метр и умножаю на площадь одной квадратной плитки. при целом заказе все нормально, а при дробном заказе придется плитку "пилить"

Подскажите пожалуйста как сделать что бы можно было заказывать дробное количество плитки??? методика расчета выше.

 
14.08.2014 14:01
#5
DemonU
Joomshopping forum user no avatar
Name: Dmitry
09.07.2014
Posts: 13
Quote
Aw: Free Attribute calculate price

Все решено!
Попробовал несколько вариантов формул, все получилось!!!
Отличное приложение, Всем спасибо!
Тема закрыта.

 
16.04.2015 22:37
#6
DemonU
Joomshopping forum user no avatar
Name: Dmitry
09.07.2014
Posts: 13
Quote
Aw: Free Attribute calculate price

[Цитата][б]DemonU - 14.08.2014 14:01[/б] Все решено! Попробовал несколько вариантов формул, все получилось!!! Отличное приложение, Всем спасибо! Тема закрыта.[/Цитата] Снова нужна Ваша помощь!!!


Letzte Änderung: 16.04.2015 22:38
 
16.04.2015 22:38
#7
DemonU
Joomshopping forum user no avatar
Name: Dmitry
09.07.2014
Posts: 13
Quote
Aw: Free Attribute calculate price

Снова нужна Ваша помощь!!!
Можно как то сделать, чтобы не цена рассчитывалась а количество?

http://zcc-km.ru/katalog-assortimenta/agatti/4193-agatti-bezh-40-2kh40-2

Нужно что бы

{Итого м2: 0.972} попадало в количество
{Цена: 643.46 руб.} попадало в сумму
А цена оставалось бы неизменной 662.00 руб. / кв.м

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

 
17.04.2015 20:30
#8
webdesigner
(Support Team)
User webdesigner
Name: Admin
05.08.2010
Posts: 19077
Quote
Aw: Free Attribute calculate price

Для расчета количества
https://www.webdesigner-profi.de/joomla-webdesign/shop/plugins/free-attribute-calculate-as-m3.html?lang=en

 
20.04.2015 21:41
#9
DemonU
Joomshopping forum user no avatar
Name: Dmitry
09.07.2014
Posts: 13
Quote
Aw: Free Attribute calculate price

Купил, установил, но не могу понять как работает.

Как считает? вставляю значения, но в карточке товара ничего не происходит.

 
20.04.2015 23:07
#10
DemonU
Joomshopping forum user no avatar
Name: Dmitry
09.07.2014
Posts: 13
Quote
Aw: Free Attribute calculate price

В этом месте

Width (FreeAttribute ID)
Height (FreeAttribute ID)
Depth (FreeAttribute ID)

вставляем id свободных атрибутов

В формуле + - / * с добавлением чисел все работает...

А можно ли округлять значения?

 
20.04.2015 23:24
#11
DemonU
Joomshopping forum user no avatar
Name: Dmitry
09.07.2014
Posts: 13
Quote
Aw: Free Attribute calculate price

Мне кажется посоветовав мне этот плагин, Вы меня не так поняли.
Суть:

Товар имеет разнообразный размер и количество в упаковке

Задача: Сделать перерасчет соответствующий кратности 1 шт товара в зависимости от площади 1 шт.
Например покупатель вводит 4 м2
А результат получается 4,05 м2 по цене 622 сумма 2 681.10 руб.

Я нашел решение в Free attribute calcule price

Где прописал вот такую формулы
round((((floor((($width*1)/1.05)))*1.62)+((round(((($width*1)-((floor((($width*1)/1.62)))*1.62))/0.162)))*0.162)),3)

В Excele Выглядит так

=ОКРУГЛ((ОКРУГЛ((4-ОКРУГЛВНИЗ(B3667/1,62;0)*1,62)/0,162;0)*0,162)+(ОКРУГЛВНИЗ(4/1,62;0)*1,62);3)

где,

$width*1, оно же 4 - это 4 м2 введенные покупателем
1,62 площадь в одной коробке
0,162 рассчитывается как 1,62/количество шт в коробке (10)

Казалось бы проблема решена, покупатель видит правильную информацию, НО
Данный аддон рассчитывает Цену "prod_price"
И в корзине получается, что покупатель заказывает 1 шт по цене 2 681.10 руб. сумма 2 681.10 руб. и не имеет возможности изменить количество товара.

Мне необходимо, что бы в корзине выводилось

количество 4,05 по цене 622 и сумма 2 681.10 руб.
И если покупатель решает поменять на 5 м2
Соответственно корзина пересчитывает 5,022 м2 цена 622 и тд.

А в этом плагене покупатель должен ввести переменные что бы посчиталось количество. А он ничего не должен вводить кроме количества квадратных метров.

Вот я и спросил, можно ли как нибудь поправить Free Attribute calculate price, так что бы в корзину подтягивались
{Итого м2: 0.972} попадало в количество
{Цена: 643.46 руб.} попадало в сумму
А в цену поподает базовая цена 662.00 руб. / кв.м

Цифры и расчет представленные выше вот тут http://zcc-km.ru/katalog-assortimenta/agatti/4193-agatti-bezh-40-2kh40-2
Я открыл количество на всякий случай.

Прошу помощи в решении...

 
21.04.2015 07:12
#12
DemonU
Joomshopping forum user no avatar
Name: Dmitry
09.07.2014
Posts: 13
Quote
Aw: Free Attribute calculate price

А можно сделать так:
В В В joomshopping JoomShopping free attribute calcule as m3

Вместо свободного id свободного атрибута поставить id характеристик?
а в характеристиках прописываем (текстом)
ID 1 Количество в коробке (значение (текстом) для каждого товара свое)
ID 2 Площадь коробки (значение (текстом) для каждого товара своя)

Формула: Количество=введенное покупателем количество количество / id2 в в, округляем до целого числа в меньшую сторону (получаем количество коробок), получившееся число * id2 в в (получаем площадь получившихся коробок), теперь находим остаток площади не целой коробки (введенное покупателем количество количество - площадь целых коробок)....

Если для реализации нужна целая формула, тогда допишу

По умолчанию количество должно пересчитываться как площадь плиток в 1м2 И соответственно надо сделать что бы введенное покупателем количество пересчитывалось по формуле выше.

Очень нужно такое решение. Готов оплатить дополнительно!


Letzte Änderung: 21.04.2015 07:17
 
21.04.2015 07:20
#13
DemonU
Joomshopping forum user no avatar
Name: Dmitry
09.07.2014
Posts: 13
Quote
Aw: Free Attribute calculate price

Да и еще надо что бы этот расчет действовал в корзине.

 


Copyrights MAXXmarketing GmbH. All Rights Reserved
Durch die Nutzung dieser Website stimme ich zu, dass Cookies zur optimalen Gestaltung der Website sowie zur Analyse der Nutzung der Website verwendet werden. Weiterführende Informationen finden Sie hier. OK, einverstanden.