https://github.com/sadimer/socialcode
https://github.com/sadimer/socialcode
Last synced: about 1 year ago
JSON representation
- Host: GitHub
- URL: https://github.com/sadimer/socialcode
- Owner: sadimer
- Created: 2024-05-18T08:23:11.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-05-19T08:55:40.000Z (about 2 years ago)
- Last Synced: 2024-05-20T09:37:02.211Z (about 2 years ago)
- Language: Python
- Size: 355 KB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Socialcode
Socialcode - программа, предоставляющая возможность обработки расчетных выписок с пожертвованиями в [Фонд борьбы с лейкемией](https://leikozu.net). В качестве результата работы программы в фонд отправляетс информация об отправителе денежных средств, сумма пожертвований, дата транзакции, кому предназначена денежная сумма.
### Старт
```bash
git clone https://github.com/sadimer/socialcode.git
```
```bash
cd ./socialcode
```
1. Запуск в Docker-контейнере:
Требование: установленный Docker;
- Сборка Docker-образа:
```bash
docker build -t {{ наименование Docker-образа }} .
```
- Запуск Docker-контейнера:
```bash
docker run -d --name {{ наименование Docker-контейнера }} -v {{ директория на локальном узле с данными }}:{{ директория в Docker-контейнере с данными }} -e PATH_DIR={{директория с данными внутри Docker-контейнера}} -p 8000:8000 {{ наименование Docker-образа }}
```
2. Запуск в стандартном режиме:
```bash
uvicorn main:app --host 0.0.0.0
```
### Добавление данных для обработки
Загрузка данных для обработки (директории с файлами формата .txt) могут передаваться двумя способами:
1. Загрузка данных через переменную окружения PATH_DIR. Здесь в формате строки, через запятую необходимо указать пути до обрабатываемых директорий. Пример:
```bash
"/Users/tanya/Desktop/hack_heart/test_dir/dir_2,/Users/tanya/Desktop/hack_heart/test_dir/dir_1"
```
2. Во втором случае данные можно передать при помощи REST API-запроса. Для этого необходимо:
- В .env файле указать путь до директории - переменная окружения TMP_DIR.
- Запустить приложение
- Перейти http://{{ адрес хоста, где запущено приложение }}:8000/docs
- Выбрать POST-запрос и загрузить туда файл с данными
Также для этого можно использовать curl:
```bash
curl -X 'POST' \
'http://127.0.0.1:8000/upload_payment' \
-H 'accept: application/json' \
-H 'Content-Type: multipart/form-data' \
-F 'file=@data.json;type=application/json'
```
### Запуск крон-джобы в битрикс24
1. Добавить импорт нашего модуля в файл local/php_interface/init.php;
```php
require_once __DIR__ . '/include/hack.php';
```
2. Создать файл local/php_interface/include/hack.php, скопировав содержимое agent/agent.php. Предварительно необходимо указать в переменной $url адрес файлового сервера, на котором запущен FastAPI-сервер парсера из этого репозитория;
3. В поиске админ панели битрикс найти "Агенты";
4. Нажать на кнопку;

5. Заполнить форму создания агента.
