Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/calabonga/facts

Проект "Только факты"
https://github.com/calabonga/facts

asp component-blazor mediatr mvc notification

Last synced: 2 months ago
JSON representation

Проект "Только факты"

Awesome Lists containing this project

README

        

# План реализация проекта "Только факты"

**Внимание!** *Данный план является предварительным, потому что список задач, которые предстоит решить в процессе создания новой версии приложения может подвергнуться существенной переработки. По мере создания функциональности план будет пересмотрен.*

* [x] Регистрация репозитория github.com
* [x] Создание проекта и его подготовка к разработке
* [x] Настройка логирования в log-файл
* [x] Реализация "вход/выход" на сайте
* [x] Настройка добавления учетной записи при создании новой базы (SEED)
* [x] Создание сущностей (классов) и конфигрурирование сущностей через fluent API (EntityTypeConfiguration)
* [x] Fact
* [x] Tag
* [x] Notification
* [x] Создание EF-миграции и базы данных
* [x] Настройка возможности переноса данных из старой БД в новую БД
* [x] Создание ViewModels для сущностей и настройка маппинга (Automapper)
* [x] Изменение шаблонов от Microsoft.AspNetCore.Identity UI
* [x] Шаблоны ASP.NET MVC (_Layout) и управление ими
* [x] Реализация в ApplicationDbContext автоматическое обновление свойств CreatedAt, UpdatedAt, CreatedBy, UpdatedBy (унаследованных от типа Auditable)
* [x] Определить маршруты для MVC
* [x] Mediatr: Инфраструктура для Notification
* [x] Mediatr: NotificationBase
* [x] Mediatr: NotificationHandlerBase
* [x] Mediatr: ErrorNotification
* [x] Mediatr: ErrorNotificationHandler
* [x] Mediatr: FeedbackNotification
* [x] Mediatr: FeedbackNotificationHandler
* [x] Объединение и минификация статических ресурсов в ASP.NET Core
* [x] Создание главной страницы (без разбиение на страницы)
* [x] Метод в контроллере FactsController
* [x] Mediatr: FactGetPagedRequest
* [x] Mediatr: FactGetPagedResponse
* [x] TagHelper: Создание pager: IPagedListTagHelperService, PagerData, PagedListHelper
* [x] Подключение Pager на главную страницу
* [x] Страница детального просмотра выбранного факта
* [x] Настройка и проверка Route для Show.cshtml
* [x] Разметка страницы отображения выбранного факта
* [x] Mediatr: FactGetByIdRequest
* [x] Mediatr: FactGetByIdResponse
* [x] Реалиазиция фильтрации фактов на главной странице
* [x] По метке (tag)
* [x] По слову поиска (search)
* [x] Страница "Обратная связь" (Backend)
* [x] Добавление записей в список уведомлений (Notification)
* [x] Mediatr: FeedbackNotificationRequest
* [x] Mediatr: FeedbackNotificationResponse
* [x] Метод генерирующий картинку (reCapture)
* [x] Добавление проверочной картинки (reCapture) на страницу FeedBack
* [x] Blazor: Подключаем Toastr через component Blazor
* [x] Blazor: Копируем ссылку через component Blazor
* [x] Администратор: Страница "панель управления" (навигатор управления)
* [x] Страница "RSS-канал фактов" для реализации RSS подписки на новые факты
* [x] Страница "Слуйчайный факт". Отображение случайного факта.
* [x] Страница "Облако меток". Отображение меток к фактам.
* [x] Администратор: Страница "добавление факта"
* [х] Blazor: Используем component Blazor для поиска по ключу уже существующих фактов
* [х] Blazor: Используем component Blazor для поиска тегов для нового факта
* [x] Администратор: Страница "редактирования факта"
* [x] Blazor: Используем component Blazor для удаления уже существующий меток, которые есть у факта
* [x] Blazor: Используем component Blazor для поиска по ключу уже существующих фактов
* [x] Blazor: Используем component Blazor для поиска тегов для обновления факта
* [х] Поиск меток для удаления и для создания FindDifference
* [х] Обновление меток для факта ProcessTagsAsync
* [х] Обновление факта и меток FactUpdateRequest, FactUpdateRequestHandler
* [x] Администратор: Реализация постраничного просмотра списка сообщений (Notification)
* [x] Администратор: Страница "отправки почтового сообщения"
* [x] HostedService: Сработка по расписанию (Cron)
* [x] Отправка почты. Создание IEmailService.
* [x] INotificationProvider обработчик Notification, отправка сообщений и обновление статуса отправки
* [x] Реализация BackgroundWorker для отправки почтовых писем из таблицы Notification

# Дополнительно
* [ASP.NET Core MVC "Только факты" (NET5.0)](https://github.com/Calabonga/Facts/wiki)
* [О приложении](https://github.com/Calabonga/Facts/wiki/%D0%9E-%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B8)
* [Цели и задачи проекта](https://github.com/Calabonga/Facts/wiki/%D0%A6%D0%B5%D0%BB%D0%B8-%D0%B8-%D0%B7%D0%B0%D0%B4%D0%B0%D1%87%D0%B8-%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D0%B0)
* [Затронутые аспекты](https://github.com/Calabonga/Facts/wiki/%D0%97%D0%B0%D1%82%D1%80%D0%BE%D0%BD%D1%83%D1%82%D1%8B%D0%B5-%D0%B0%D1%81%D0%BF%D0%B5%D0%BA%D1%82%D1%8B)
* [Основные функциональные возможности](https://github.com/Calabonga/Facts/wiki/%D0%9E%D1%81%D0%BD%D0%BE%D0%B2%D0%BD%D1%8B%D0%B5-%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D0%BE%D0%BD%D0%B0%D0%BB%D1%8C%D0%BD%D1%8B%D0%B5-%D0%B2%D0%BE%D0%B7%D0%BC%D0%BE%D0%B6%D0%BD%D0%BE%D1%81%D1%82%D0%B8)
* [Пользователи сайта могут](https://github.com/Calabonga/Facts/wiki/%D0%92%D0%BE%D0%B7%D0%BC%D0%BE%D0%B6%D0%BD%D0%BE%D1%81%D1%82%D0%B8-%D0%B4%D0%BB%D1%8F-%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8F)
* [Администратор сайта может](https://github.com/Calabonga/Facts/wiki/%D0%92%D0%BE%D0%B7%D0%BC%D0%BE%D0%B6%D0%BD%D0%BE%D1%81%D1%82%D0%B8-%D0%B4%D0%BB%D1%8F-%D0%B0%D0%B4%D0%BC%D0%B8%D0%BD%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%82%D0%BE%D1%80%D0%B0)
* [Видео материалы](https://github.com/Calabonga/Facts/wiki/%D0%92%D0%B8%D0%B4%D0%B5%D0%BE-%D0%BC%D0%B0%D1%82%D0%B5%D1%80%D0%B8%D0%B0%D0%BB%D1%8B)