Skip to content

vanzish/ff_train

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 

Repository files navigation

ff_train

Family Friend Train Task

для запуска тестов и апи, необходимо запустить студию от имени администратора, собрать решение \core3.0\Railways\Railways.sln, в Package manager console выбрать Default project: Raiways.Data. выполнить Update-Database.

после запуска Kestrel сервера, по адресу https://localhost:5001 должен возвращаться ответ Healthy, по пути /swagger должен открыться обозреватель API.

для запуска тестового клиента нужно в командной строке \railways-app выполнить npm install(это восстановит модули) и для запуска npm start(клиент будет доступен по адресу http://localhost:3000) клиент настроен на адрес https://localhost:5001

Что сделано

Сделан клиентский модуль: поиск рейса по городам и дате; выдача посадочных мест на данный поезд с учетом купленных билетов; бронирование или покупка билетов, выкуп брони.

При бронировании выдается номер брони и список вокзалов для покупки.

Вывод списка городов и списка мест поезда.

Как сделано Структура API разбита на несколько проектов, каждый из которых выполняет свою функцию и позволяет не мешать код и делать зависимости более понятными и удобными. Для API использовался Asp.Net Core 3.0 c Entity Framework Core с надстройкой для Postgres БД. Первичные данные заполняются в коде с помощью миграций. Создается база данных Railways под пользователем postgres и паролем password. Для тестов использовался NUnit. Клиент написан на React.js

Так же использовался AutoMapper для автоматического переноса полей объектов и для настройки логики создания полей, Scrutor(как вариант) для олегчения разрешения зависимостей сервисов в DI. Swashbuckle.AspNetCore для просмотра ендпоинтов.

About

Family Friend Train Task

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published