Перейти к содержимому


Публикации nzema

52 публикаций создано nzema (учитываются публикации только с 17-Июнь 23)



#210065 Численное Буквенное Написание Суммы В Товарном Чеке

Отправлено от nzema в 14 Сентябрь 2015 - 11:37 в Общие вопросы

и еще вопрос не по теме. как мне добавить в товарный чек email покупателя.



#210062 Численное Буквенное Написание Суммы В Товарном Чеке

Отправлено от nzema в 14 Сентябрь 2015 - 10:55 в Общие вопросы

да я изменил название темы



#210058 Численное Буквенное Написание Суммы В Товарном Чеке

Отправлено от nzema в 14 Сентябрь 2015 - 10:37 в Общие вопросы

как мне сделать Буквенное написание суммы в товарном чеке. и как мне указать общее колличество



#210064 Численное Буквенное Написание Суммы В Товарном Чеке

Отправлено от nzema в 14 Сентябрь 2015 - 11:19 в Общие вопросы

а как мне указать общее количество заказов в конце товарного чека



#210066 Численное Буквенное Написание Суммы В Товарном Чеке

Отправлено от nzema в 14 Сентябрь 2015 - 11:53 в Общие вопросы

<?php
class NumToText
{
   var $Mant = array(); // описания мантисс
   // к примеру ('рубль', 'рубля', 'рублей')
   // или ('метр', 'метра', 'метров')
   var $Expon = array(); // описания экспонент
   // к примеру ('копейка', 'копейки', 'копеек')
   function NumToText()
   {
   }
   // установка описания мантисс
   function SetMant($mant)
   {
  $this->Mant = $mant;
   }
   // установка описания экспонент
   function SetExpon($expon)
   {
  $this->Expon = $expon;
   }
   // функция возвращает необходимый индекс описаний разряда
   // ('миллион', 'миллиона', 'миллионов') для числа $ins
   // например для 29 вернется 2 (миллионов)
   // $ins максимум два числа
   function DescrIdx($ins)
   {
  if(intval($ins/10) == 1) // числа 10 - 19: 10 миллионов, 17 миллионов
  return 2;
  else
  {
// для остальных десятков возьмем единицу
$tmp = $ins%10;
if($tmp == 1) // 1: 21 миллион, 1 миллион
return 0;
else if($tmp >= 2 && $tmp <= 4)
return 1; // 2-4: 62 миллиона
else
return 2; // 5-9 48 миллионов
  }
   }
   // IN: $in - число,
   // $raz - разряд числа - 1, 1000, 1000000 и т.д.
   // внутри функции число $in меняется
   // $ar_descr - массив описаний разряда ('миллион', 'миллиона', 'миллионов') и т.д.
   // $fem - признак женского рода разряда числа (true для тысячи)
   function DescrSot(&$in, $raz, $ar_descr, $fem = false)
   {
  $ret = '';
  $conv = intval($in / $raz);
  $in %= $raz;
  $descr = $ar_descr[ $this->DescrIdx($conv%100) ];
  if($conv >= 100)
  {
$Sot = array('сто', 'двести', 'триста', 'четыреста', 'пятьсот',
'шестьсот', 'семьсот', 'восемьсот', 'девятьсот');
$ret = $Sot[intval($conv/100) - 1] . ' ';
$conv %= 100;
  }
  if($conv >= 10)
  {
$i = intval($conv / 10);
if($i == 1)
{
    $DesEd = array('десять', 'одиннадцать', 'двенадцать', 'тринадцать',
    'четырнадцать', 'пятнадцать', 'шестнадцать', 'семнадцать',
    'восемнадцать', 'девятнадцать' );
    $ret .= $DesEd[ $conv - 10 ] . ' ';
    $ret .= $descr;
    // возвращаемся здесь
    return $ret;
}
$Des = array('двадцать', 'тридцать', 'сорок', 'пятьдесят', 'шестьдесят',
'семьдесят', 'восемьдесят', 'девяносто' );
$ret .= $Des[$i - 2] . ' ';
  }
  $i = $conv % 10;
  if($i > 0)
  {
if( $fem && ($i==1 || $i==2) )
{
    // для женского рода (сто одна тысяча)
    $Ed = array('одна', 'две');
    $ret .= $Ed[$i - 1] . ' ';
}
else
{
    $Ed = array('один', 'два', 'три', 'четыре', 'пять',
    'шесть', 'семь', 'восемь', 'девять' );
    $ret .= $Ed[$i - 1] . ' ';
}
  }
  $ret .= $descr;
  return $ret;
   }
   // IN: $sum - число, например 1256.18
   function Convert($sum)
   {
  $ret = '';
  // имена данных перменных остались от предыдущей версии
  // когда скрипт конвертировал только денежные суммы
  $Kop = 0;
  $Rub = 0;
  $sum = trim($sum);
  // удалим пробелы внутри числа
  $sum = str_replace(' ', '', $sum);
  // флаг отрицательного числа
  $sign = false;
  if($sum[0] == '-')
  {
$sum = substr($sum, 1);
$sign = true;
  }
  // заменим запятую на точку, если она есть
  $sum = str_replace(',', '.', $sum);
  $Rub = intval($sum);
  $Kop = $sum*100 - $Rub*100;
  if($Rub)
  {
// значение $Rub изменяется внутри функции DescrSot
// новое значение: $Rub %= 1000000000 для миллиарда
if($Rub >= 1000000000)
$ret .= $this->DescrSot($Rub, 1000000000,
array('миллиард', 'миллиарда', 'миллиардов')) . ' ';
if($Rub >= 1000000)
$ret .= $this->DescrSot($Rub, 1000000,
array('миллион', 'миллиона', 'миллионов') ) . ' ';
if($Rub >= 1000)
$ret .= $this->DescrSot($Rub, 1000,
array('тысяча', 'тысячи', 'тысяч'), true) . ' ';
$ret .= $this->DescrSot($Rub, 1, $this->Mant) . ' ';
// если необходимо поднимем регистр первой буквы
$ret[0] = chr( ord($ret[0]) + ord('A') - ord('a') );
// для корректно локализованных систем можно закрыть верхнюю строку
// и раскомментировать следующую (для легкости сопровождения)
// $ret[0] = strtoupper($ret[0]);
  }
  if($Kop < 10)
  $ret .= '0';
  $ret .= $Kop . ' ' . $this->Expon[ $this->DescrIdx($Kop) ];
  // если число было отрицательным добавим минус
  if($sign)
  $ret = '-' . $ret;
  return $ret;
   }
}
class ManyToText extends NumToText
{
   function ManyToText()
   {
  $this->SetMant( array('рубль', 'рубля', 'рублей') );
  $this->SetExpon( array('копейка', 'копейки', 'копеек') );
   }
}
class MetrToText extends NumToText
{
   function MetrToText()
   {
  $this->SetMant( array('метр', 'метра', 'метров') );
  $this->SetExpon( array('сантиметр', 'сантиметра', 'сантиметров') );
   }
}
?>
вот нашел php код ка мне его вставить в товарный чеки чтоб он работал?



#210070 Численное Буквенное Написание Суммы В Товарном Чеке

Отправлено от nzema в 14 Сентябрь 2015 - 12:59 в Общие вопросы

Спасибо за быстрые ответы.
А как по поводу email покупателяв товарном чеке. как его туда добывить



#210174 Прошу Помощи Опытных Программистов

Отправлено от nzema в 15 Сентябрь 2015 - 08:29 в Шаблон Техника

а если артикул указать НДС 18 то может прокатит?



#210318 Прошу Помощи Опытных Программистов

Отправлено от nzema в 16 Сентябрь 2015 - 15:11 в Шаблон Техника

еще вопрос как теперь мне сложить сумму полученную в {% IF ol.ART_NUMBER= 18 %} {ol.LINE_SUM | multiply("0.18")} {% ELSE %} {ol.LINE_SUM | multiply("0")}{% ENDIF %} этой строчке.
к ol.LINE_SUM чтобы получить общую сумму к каждой клетка товара и отобразить общую сумму в строчке ниже прикрепляю картинку. (сор за рисунок рисовать не умею) и еще как добавить емаил покупателя в поле email/телефон на картинке.

Прикрепленные изображения

  • чек.png



#210178 Прошу Помощи Опытных Программистов

Отправлено от nzema в 15 Сентябрь 2015 - 10:06 в Шаблон Техника

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



#210288 Прошу Помощи Опытных Программистов

Отправлено от nzema в 16 Сентябрь 2015 - 10:43 в Шаблон Техника

Просмотр сообщенияMikDark (15 Сентябрь 2015 - 20:12) писал:

Чтобы умножить переменную, можно использовать: {VARIABLE | multiply("0.18")}
где VARIABLE - название переменной

Уточните, Вы работаете с товарным чеком сейчас?

сделал как вы сказали {{ol.LINE_SUM_TEXT} | multiply({ol.ART_NUMBER})}, но он не хочет умножать выдат
{37 900,00 рублей | multiply()}- там где нет артикула,
{37 900,00 рублей | multiply("0.18")}- там где есть артикул.



#210282 Прошу Помощи Опытных Программистов

Отправлено от nzema в 16 Сентябрь 2015 - 09:27 в Шаблон Техника

да



#210646 Прошу Помощи Опытных Программистов

Отправлено от nzema в 21 Сентябрь 2015 - 10:51 в Шаблон Техника

ау ребята помогите мне пожалуйста.



#210076 Прошу Помощи Опытных Программистов

Отправлено от nzema в 14 Сентябрь 2015 - 14:05 в Шаблон Техника

здравствуйте  нужна помощь.
на сайте есть товары с НДС.
если покупатель выбрал товар с НДС. надо, чтобы этот НДС отображался в корзине и в товарном чеке
примерно так

№  наим.            кол-во         цена         НДС        сум с НДС         всего
1   пирожок         1шт            15руб        18%             17,7                17.7
2    огурец            2шт             20руб                                                    40руб
                                                                   всего           17.7                 34,7    

надеюсь понятно объяснил.



#210084 Прошу Помощи Опытных Программистов

Отправлено от nzema в 14 Сентябрь 2015 - 14:54 в Шаблон Техника

а если копировать таблицу корзины в товарный чек. может так получится

Номер аккаунта:

SL-353327




#210175 Прошу Помощи Опытных Программистов

Отправлено от nzema в 15 Сентябрь 2015 - 08:51 в Шаблон Техника

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



#210095 Прошу Помощи Опытных Программистов

Отправлено от nzema в 14 Сентябрь 2015 - 15:53 в Шаблон Техника

а если я оплачу то когда сможете произвести изменения



#210237 Прошу Помощи Опытных Программистов

Отправлено от nzema в 15 Сентябрь 2015 - 20:07 в Шаблон Техника

я оплатил помогите



#210099 Прошу Помощи Опытных Программистов

Отправлено от nzema в 14 Сентябрь 2015 - 16:27 в Шаблон Техника

а если прописать условие в товарном чеке типа:
<tr>
<td> ндс</td>
</tr>
<tr>
<td если товар взят из каталога из под категории комплектующие с ндс то> 18%</td>
<td если товар взят из каталога из под категории медтехника без ндс то> - </td>
</tr>

это как с доступностью товара.



#210284 Прошу Помощи Опытных Программистов

Отправлено от nzema в 16 Сентябрь 2015 - 09:40 в Шаблон Техника

и еще вопрос как мне дать ссылку на товарный чек пользователю эта http://zavodema.stor...rder_print/1019 ссылка работает если ты авторизован в storeland. а как ее дать пользователю не зарегистрированному в storeland.



#210104 Прошу Помощи Опытных Программистов

Отправлено от nzema в 14 Сентябрь 2015 - 16:55 в Шаблон Техника

а если указать полный путь до названия товара?



#210312 Прошу Помощи Опытных Программистов

Отправлено от nzema в 16 Сентябрь 2015 - 14:35 в Шаблон Техника

Просмотр сообщенияnzema (16 Сентябрь 2015 - 10:43) писал:

сделал как вы сказали {{ol.LINE_SUM_TEXT} | multiply({ol.ART_NUMBER})}, но он не хочет умножать выдат
{37 900,00 рублей | multiply()}- там где нет артикула,
{37 900,00 рублей | multiply("0.18")}- там где есть артикул.

это я сделал



#210106 Прошу Помощи Опытных Программистов

Отправлено от nzema в 14 Сентябрь 2015 - 16:58 в Шаблон Техника

простите если глупые вопросы задаю просто для корректной работы нужно чтобы распечатывался такой товарный чек

верхушку я сделал и низы а вот таблицу не получается форматировать под себя

Прикрепленные изображения

  • Безымянный.png



#210620 Прошу Помощи Опытных Программистов

Отправлено от nzema в 20 Сентябрь 2015 - 18:55 в Шаблон Техника

админы ответьте.



#210173 Прошу Помощи Опытных Программистов

Отправлено от nzema в 15 Сентябрь 2015 - 08:07 в Шаблон Техника

Просмотр сообщенияMikDark (14 Сентябрь 2015 - 16:56) писал:

Можно попробовать привязываться непосредственно к имени товара, но это получится огромная простыня кода, для каждого товара нужно будет писать условие в самом коде и при добавлении/удалении товара нужно будет опять лезть в код.
значит это очень трудоемкий процесс.



#210649 Прошу Помощи Опытных Программистов

Отправлено от nzema в 21 Сентябрь 2015 - 11:34 в Шаблон Техника

{% IF ol.ART_NUMBER= 18 %} {ol.LINE_SUM | multiply("0.18")} {ol.LINE_SUM | plus (ol.LINE_SUM | multiply("0.18"))} {% ELSE %} {ol.LINE_SUM | multiply("0")} {ol.LINE_SUM | plus(ol.LINE_SUM | multiply("0.18"))} {% ENDIF %}

вот что сделал выдает 2 суммы с НДС и без. в одной ячейке как сделать так чтобы они сложились

Прикрепленные изображения

  • сумма.png