Программа бухгалтерского учета
Время реализации 2 месяца
Задача:
Программа производит учет финансовой деятельности, организации. Отчеты формируются в гугл таблицах.
Программа должна распозновать ключевые слова и ориентироваться по ним в таблице.
Способ реализации:
Тз реализовано, клиент доволен работой.
Техническое здание
Вариант захода в бота:
у бота два пользователя сотрудник и администратор (у админа есть команды не досутпные сотруднику)
Эти команды: посмотреть балланс, баланс счета, сводка — доход общий и Итог. доход-расход по категории
Вся история переписки с телеграмм ботом в группе должна сохраняться.
Больше чем год — сохранение переписки неактуально.
Пример:
в группу добавляются сотрудники, сотрудники пишут в группу, а бот должен это перенаправлять в таблицу.
ПОЯСНЕНИЯ ПО ВКЛАДКАМ
0.Категории
0.1. ID -здается автоматически при синхроне
0.2. Вкл — 0- выкл / 1 — вкл (записывается администратором перед синхроном таблицы)
0.3. Отображать в расходах — записывается администратором перед синхроном таблицы, обозначает отношение этой категории к вкладке расходы
0.4. Отображать в доходах — аналогично 0.3. пункту
0.5. Наименование — заполняется админом (для удобства)
0.6. Синонимы — основные ключевые слова по которым бот ориентируется по таблице
- вкладка счета:
настраивается при аналогии с категориями. Проставляется входящий балланс вручную до синхронизации с ботом.
Есть один основной счет — через него идет весь оборот.
По умолчанию деньги по выручке идут на него, если не указано ключевое слово соответствующее другому наименованию счета.
1.1. ай ди — проставляется автоматически при синхроне с таблицей
1.2. столбик наименование существует только для администратора (он его пишет для себя)
1.3. столбик синоним — это ключевые слова по которым бот ориентируется
1.4. начальное значение — заполняется перед синхронизацией пользователем. Обозначает бюджет
1.5. баланс счета — бот увидел что человек делал расход/доходы со счета и вычитает/плюсует к бюджету по текущем счету.
1.6. комиссия с расходов — туда пишется цифра которая вычитается
пример: комиссия доход * на %, либо расход + фикс коммиссия. Вкладка заполняется вручную при настройке перед синхронизацией.
1.7. «Автосписание
комиссии с
расходов» — пишется цифра вычесленная формулой выше.
1.8. «Комиссия с
доходов, %» — то же самое только с доходов
1.9. «Автосписание
комиссии с
доходов» — то же самое
Пример:
я установил своим расчетным счетом счет 1 в столбике основной (ключевое слово точка)
мне поступает на счет 10,000
В бота я пишу: 10.000 выручка яндекс еда.
В итоге: так как основной счет Точка — так как нету других ключевых слов
эта выручка с учетом комиссии установленной согласно пункту 1.8 и 1.9 записывается в строчку баланс счета
Тк-же нужно реализовать:
Функция «перевод» в бота пишется перевод + «ключевое слово относящееся к счету»
Пример: в бота пишется перевод нал тинькофф 15,0000. (наличные и тинькофф — ключевые слова строчек которые пользователь указывает в боте перед синхронизацией)
Что делает бот: со счета наличные в счет тиньков переходит 15 тыс рублей.
2.Вкладка контрагенты:
2.1. Контрагент — название админ пишет сам, ключи по аналогии с
2.2. Отсрочка платежа (в днях)- суть работы в том чтобы делать отсрочку платежа.
Пример: пришла поставка (это расход в категории продукты) мы этому контрагенту платим не сразу а через 14 дней.
Далее я пишу в бота: 10,000 р анис,
И в вкладку расходы попадает эта операция. Там будет : дата(текущее время*), сумма, кто внес (логин пользователя),
комментарий (анис в данном случае), дата оплаты (Дата транзакции+количество дней отсрочки у контрагента. 14 дней)
*Бот ориентируется по этой вкладке с помощью синонимов по аналогии с категориями.
Отсрочка платежа (в днях) — количество дней
3. Вкладка расходы:
3.1. Номер операции — типо ай ди автоматический
3.2. Дата транзакции — если указывается дата в сообщении боту (по умолчанию сегодня)
3.3. Тип операции — расход/перевод/возврат (указывается в сообщении боту)
3.4. Кто добавил — ник в телеге
3.5. Дата добавления — время сообщения в бота
3.6. Сумма — сумма
3.7. Контрагент — связана с вкладкой контрагенты
(если боту сообщаются данные с названием контрагента бот проверяет вкладку контрагаенты и берет данные оттуда по отсрочке платежа)
3.8. Категория — связана с вкладкой категории (она подставляется автоматом по ключевому слову из вкладки категории)
3.9. Примечание — все текстовое сообщение, которое было введено в бота
3.10. Ссылка на документ — фото ссылка
3.11. Дата оплаты с учетом отсрочки платежа — если контрагент есть то пишется дата по формуле 2.2. Если контрагента нет и он не указан — там пишем 0 или пусто
Валюта — только рубли пока
Функция «возврат»
Пример:
привезли товар . в боте указано 15,000 р. Оказалось так что произошла ошибка и заплатили 7000 р.
Мы пишем в бота. Возврат 7000 продукты наличные
Что делает бот:
Он отображает во вкладке расходы: дату, сумму с противоположным знаком тому по которому операция, и категорию согласно ключевому слову и комментарий.
Чтобы бот понимал что это за операция можно реализовать с помощью ответа.
4. Вкладка доходы:
4.1. ID/номер операции — аналогично 3.1.
4.2. Дата транзакции — аналогично 3.2
4.3. Счёт — подтягивается с вкладки счета
(ключевое слово указывается в сообщении боту, если ключевого слова соответствующего счету нет то по умолчанию это «основной счет»)
4.4. Категория — подтягивается из вкладки категории (по ключевому слову 0.6. пункт)
4.5. сумма — сумма которую в бота пишет человек
4.6. Примечание — все текстовое сообщение, которое было введено в бота
4.7. Кто добавил — ник в тг
4.8. аналогично дате * см в примечании ниже
4.9. валюта * см в примечании ниже
Если происходит ошибочное сообщение, допустим неверно указана сумма. Правка происходит следующим образом.
В телеграмм боте делаем ответ на ошибочное сообщение и пишем верное сообщение
/del (синонимы удалить, удали) — удаление последних операций.
Чтобы удалить конкретную операцию нужно на нее ответить и сделать /del
ПРИМЕЧАНИЯ:
*Важно чтобы бот ориентировался по дате. Если в сообщении дат пишут то она подставляется в таблицу,
если дату не пишут, то она должна быть сегодняшняя (по умолчанию)
*Валюта — везде пишем рубли