Тут показані розбіжності між вибраною ревізією та поточною версією сторінки.
Наступна ревізія | Попередня ревізія | ||
receipts [2022/09/24 14:39] 127.0.0.1 зовнішнє редагування |
receipts [2024/05/31 13:06] (поточний) nightfly |
||
---|---|---|---|
Рядок 1: | Рядок 1: | ||
- | ====== | + | ====== |
- | Начиная с релиза 0.9.8 появилась возможность< | + | Починаючи з релізу 0.9.8 з'явилася можливість< |
- | Включается модуль опцией | + | Вмикається модуль опцією |
- | Выглядит это | + | Виглядає це приблизно так: |
{{ : | {{ : | ||
- | На наш | + | На наш |
- | Начиная с релиза 1.0.9 стало | + | Починаючи з релізу 1.0.9 стало можливим зберігати кожну зі згенерованих квитанцій у БД. Для |
==== Шаблон ==== | ==== Шаблон ==== | ||
---- | ---- | ||
- | Пример | + | Приклад |
**content/ | **content/ | ||
- | Как несложно заметить - это обычный HTML-документ, | + | Нескладно помітити, що це - звичайний HTML-документ, |
- | * **heading** - " | + | * **heading** - " |
- | * **body** - основная и, собственно, " | + | * **body** - основна |
- | * **footer** - то же что и " | + | * **footer** - те саме що й " |
- | Начиная с релиза 1.0.9 стало | + | Починаючи з релізу 1.0.9 стало можливим |
- | ==== Поддерживаемые переменные и макросы ==== | + | ==== Підтримувані змінні та макроси ==== |
---- | ---- | ||
- | **{CURDATE}** - текущая дата \\ | + | **{CURDATE}** - поточна дата \\ |
- | **{CURTIME}** - текущее время | + | **{CURTIME}** - поточний час |
- | **{CURDATENODELIMS}** - текущая дата без разделителей | + | **{CURDATENODELIMS}** - поточна дата без роздільників |
- | **{CURDATETIMENODELIMS}** - текущее время | + | **{CURDATETIMENODELIMS}** - поточний час |
- | **{INVOICE_NUM}** - номер квитанции. Генерируется как следующий ID в таблице //'invoices'//, | + | **{INVOICE_NUM}** - номер квитанції. Генерується як наступний ID у таблиці //' |
- | **{MONTH_COUNT}** - количество месяцев указанных для оплаты \\ | + | **{MONTH_COUNT}** - кількість місяців зазначених для оплати \\ |
- | **{PAYFORPERIODSTR}** - оплата за период(месяцы), например: март | + | **{PAYFORPERIODSTR}** - оплата за період(місяці), наприклад: березень |
- | **{PAYTILLMONTHYEAR}** - будет заменено на текущий год | + | **{PAYTILLMONTHYEAR}** - буде замінено на поточний рік |
- | **{PAYTILLDATE}** - оплатить до указанной даты \\ | + | **{PAYTILLDATE}** - оплатити до зазначеної дати \\ |
- | **{SERVICENAME}** - наименование оплачиваемой услуги \\ | + | **{SERVICENAME}** - найменування оплачуваної послуги \\ |
- | **{CONTRACT}** - номер договора пользователя | + | **{CONTRACT}** - номер договору користувача \\ |
- | **{CONTRACTDATE}** - дата договора пользователя | + | **{CONTRACTDATE}** - дата договору користувача \\ |
- | **{REALNAME}** - ФИО пользователя | + | **{REALNAME}** - ПІБ користувача \\ |
- | **{CITY}** - город | + | **{CITY}** - місто проживання користувача \\ |
- | **{STREET}** - улица проживания пользователя | + | **{STREET}** - вулиця проживання користувача \\ |
- | **{BUILD}** - дом \\ | + | **{BUILD}** - будинок \\ |
**{APT}** - квартира \\ | **{APT}** - квартира \\ | ||
- | **{EXTADDR_POSTALCODE}** - почтовый индекс | + | **{EXTADDR_POSTALCODE}** - поштовий індекс з додаткових полів адреси. Вимагає ввімкненої alter.ini опції ADDRESS_EXTENDED_ENABLED. \\ |
- | **{EXTADDR_TOWNDISTR}** - район/ПГТ/округ/етс | + | **{EXTADDR_TOWNDISTR}** - район/ |
- | **{EXTADDR_ADDREXT}** - дополнительная инфо | + | **{EXTADDR_ADDREXT}** - додаткова інфо |
- | **{PHONE}** - телефон | + | **{PHONE}** - телефон |
- | **{MOBILE}** - мобильный пользователя | + | **{MOBILE}** - мобільний користувача \\ |
- | **{TARIFF}** - тариф | + | **{TARIFF}** - тариф |
- | **{TARIFFPRICE}** - стоимость тарифа пользователя | + | **{TARIFFPRICE}** - вартість тарифу користувача \\ |
- | **{TARIFFPRICECOINS}** - стоимость тарифа пользователя | + | **{TARIFFPRICECOINS}** - вартість тарифу користувача виражена в копійках \\ |
- | **{TARIFFPRICEDECIMALS}** - стоимость тарифа пользователя с двумя знаками после запятой \\ | + | **{TARIFFPRICEDECIMALS}** - вартість тарифу користувача з двома знаками після |
- | **{SUMM}** - сумма к оплате \\ | + | **{SUMM}** - сума |
- | **{SUMMCOINS}** - сумма к оплате выраженная в копейках \\ | + | **{SUMMCOINS}** - сума |
- | **{SUMMDECIMALS}** - сумма к оплате с двумя знаками после запятой \\ | + | **{SUMMDECIMALS}** - сума |
\\ | \\ | ||
- | ==== QR-коды и специальные переменные и макросы ==== | + | ==== QR-коди спеціальні змінні та макроси ==== |
---- | ---- | ||
- | Для генерация QR-кодов предполагается использование JS-библиотеки **jquery.qrcode** | + | Для генерації QR-кодів передбачається використання JS-бібліотеки **jquery.qrcode** |
- | Для корректной генерации и расположения QR-кодов используются | + | Для коректної генерації та розташування QR-кодів використовуються такі |
- | **{QR_CODES_CNT}** - количество QR-кодов, по сути равное количеству абонентов(генерируемых | + | **{QR_CODES_CNT}** - кількість QR-кодів, яка, по суті, дорівнює кількості абонентів (документів, що генеруються). Використовується JS-скриптом для обходу елементів DOM з відповідними |
- | **{QR_CODE_CONTENT}** - данные, которые нужно " | + | **{QR_CODE_CONTENT}** - дані, які потрібно " |
- | **{QR_INDEX}** - индекс | + | **{QR_INDEX}** - індекс |
- | **{QR_EMBED}** - наличие этого макроса указывает, что генерация QR-кодов | + | **{QR_EMBED}** - наявність цього макросу |
<code html> | <code html> | ||
<input id=" | <input id=" | ||
</ | </ | ||
- | со значением //" | + | зі значенням //" |
- | Вкратце, логика процесса генерации QR-кода следующая: | + | Якщо коротко - логіка процесу генерації QR-коду |
- | | + | |
- | " | + | " |
- | Из чего следует, что сами QR-коды нигде не хранятся | + | З чого випливає, що самі QR-коди |
---- | ---- | ||
\\ | \\ | ||
- | Отдельно стоит сказать о специальных макросах, которые | + | Окремо варто сказати про спеціальні макроси, які **повинні** розташовуватися виключно в єдиному екземплярі та виключно в **heading**-секції всередині HTML-коментаря (<!-- -->): |
- | * Блок данных которые нужно " | + | * Блок даних, які потрібно " |
< | < | ||
{QR_EXT_START} | {QR_EXT_START} | ||
Рядок 89: | Рядок 89: | ||
{QR_EXT_END} | {QR_EXT_END} | ||
</ | </ | ||
- | * Формат даты, который мы хотим использовать для наших квитанций. По умолчанию установлен стандартный для наших широт \\ | + | * Формат дати, який ми хочемо використовувати для наших квитанцій. За замовчуванням встановлено стандартний для наших широт \\ |
- | формат: | + | формат: |
< | < | ||
{DATES_FORMAT_START}Y-m-d{DATES_FORMAT_END} | {DATES_FORMAT_START}Y-m-d{DATES_FORMAT_END} | ||
</ | </ | ||
- | * Формат месяц-год(да-да, для макроса {PAYTILLMONTHYEAR}). | + | * Формат місяць-рік |
- | формат: | + | формат: |
< | < | ||
{MONTHYEAR_FORMAT_START}m-Y{MONTHYEAR_FORMAT_END} | {MONTHYEAR_FORMAT_START}m-Y{MONTHYEAR_FORMAT_END} | ||
</ | </ | ||
- | * Номера квитанций будут генерироваться по принципу {CURDATENODELIMS} + {CURDATETIMENODELIMS}, | + | * Номери квитанцій будуть генеруватись за принципом {CURDATENODELIMS} + {CURDATETIMENODELIMS}, |
< | < | ||
{INV_NUM_CURDATETIME} | {INV_NUM_CURDATETIME} | ||
</ | </ |