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: 16485
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: 16485
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