https://github.com/validoll/drupal_7_exchange_rate
https://github.com/validoll/drupal_7_exchange_rate
Last synced: about 1 month ago
JSON representation
- Host: GitHub
- URL: https://github.com/validoll/drupal_7_exchange_rate
- Owner: validoll
- Created: 2020-12-21T13:53:46.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2020-12-22T05:17:48.000Z (over 5 years ago)
- Last Synced: 2025-11-27T16:45:20.261Z (7 months ago)
- Language: PHP
- Size: 230 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Exchange rate
## Введение
Проект тестового задания основанный на Docker4Drupal.
## Состав контейнеров
Проект содержит следующие контейнеры:
| Container | Versions | Service name | Image |
| -------------- | ---------------------- | --------------- | ---------------------------------- |
| [Nginx] | 1.19 | `nginx` | [wodby/nginx] | |
| [PHP] | 7.3 | `php` | [wodby/drupal-php] |
| Crond | | `crond` | [wodby/drupal-php] |
| [MariaDB] | 10.5 | `mariadb` | [wodby/mariadb] |
| [Mailhog] | latest | `mailhog` | [mailhog/mailhog] |
| Adminer | 4.6 | `adminer` | [wodby/adminer] |
| Portainer | latest | `portainer` | [portainer/portainer] |
| Traefik | latest | `traefik` | [_/traefik] |
### Системные требования
Проект тестировался в хост-сред Ubuntu 20.04 LTS. Необходимо наличие установленного [`docker-compose`](https://docs.docker.com/compose/install/).
## Текст задания
Предлагаем разработать сервис «Курсы валют».
Требования:
* загрузка и хранение курсов валют с сайта ЦБ Рф (https://www.cbr.ru/development/SXML) в ручном и автоматическом режимах;
* отображение курсов валют в табличной форме с постраничным выводом и возможностью сортировки и фильтрации по валюте и дате курса;
* отображение динамики изменения курса в виде графика за указанный пользователем период времени;
* сохранение отчета за период времени в формате json;
* документирование исходного кода (включая описание требований к среде исполнения, инструкции по развертыванию).
Результат должен быть предоставлен в виде git репозитория и размещен в публичном хостинге исходного кода (например, github.com)
## Documentation
### Развертывание
1. Склонируйте репозиторий
```bash
git clone git@github.com:validoll/drupal_7_exchange_rate.git
```
2. Перейдите в каталог с репозиторием
```bash
cd drupal_7_exchange_rate
```
3. Запустите сборку контейнеров
```bash
make
```
3. Запустите сборку проекта
```bash
make composer install && make composer install
```
4. После запуска всех контейнеров сервис будет доступен по адресу http://exchange.docker.localhost:8000/
### Учетные данные
Логин: `drupal`
Пароль: `drupal`
### Использование
#### Загрузка и хранение курсов валют
Загрузка списка валют и курса на текущую дату реализована через крон.
Ручная загрузка доступна на странице http://exchange.docker.localhost:8000/admin/settings/exchange_rate_currency.
#### Отображение курсов валют в табличной форме
Таблица с курсом валют реализована через [`Views`](https://www.drupal.org/project/views) и выведена на главную страницу. Доступна по адресу http://exchange.docker.localhost:8000/currency-rate/review.
#### Отображение динамики изменения курса в виде графика
Отображение в виде графика реализовано через [`Charts`](https://www.drupal.org/project/charts). Доступна по адресу http://exchange.docker.localhost:8000/currency-rate/chart.
#### Сохранение отчета в формате json
Реализовано через [`Views Data Export - JSON`](https://www.drupal.org/project/views_data_export_json). Доступно на странице таблицы курсов валют внизу страницы в виде ссылки [`JSON`](http://exchange.docker.localhost:8000/currency-rate/export).