SWIFTApplicationAPI
Описание на приложението: SWIFTApplicationAPI е приложение, което позволява четене на SWIFT MT799 файлове и запис на данните в база данни. Използвана е стандартната MVC архитектура, съчетана с CQRS архитектура и Mediator патерн за обработка на заявки.
Основни технологии и инструменти: 1.Dapper: ORM пакет за комуникация с базата данни. 2.Serilog: Логиране в конзолата и файл в директорията logs/logs{дата на използване}.txt. Файлът се създава автоматично, ако не съществува. 3.ISwiftMessageRepository: Сървис за комуникация с базата данни и управление на връзката. 4.SWIFTMessagesDataContext: Контекст за създаване на базата данни, ако не съществува, без използване на EF-Core. 5.SWIFT MT799 Парсер: Сървис за парсване на SWIFT MT799 съобщения и разделянето им на блокове в модела MT799Model.cs.
Конфигурация: Аppsettings.json: Съдържа connectionString за комуникация с SQLite база данни: "SwiftDatabaseSqlLiteString": "Data Source=SWIFTLocalDatabase.db"
Контролери и заявки: Контролерът предоставя две HTTP заявки, които комуникират чрез IMediator интерфейса, за по-ефективно управление на зависимостите и улесняване на модификациите и разширенията на компонентите.
1.GetSwiftMessage: -Функция: Чете SWIFT MT799 файл, парсва го и връща модела MT799Model в JSON формат. -Очакван резултат: Блоковете от съобщението са разделени в следните 5 свойства: { "basicHeader": "string" "applicationHeader": "string" "userHeader": "string" "text": "string" "tailers": "string" }
2.SWIFTMessageInserting: -Функция: Чете SWIFT MT799 файл и използва Dapper за изпълнение на insert заявка в базата данни. -Очакван резултат: Връща броя на променените редове в базата данни.
Тестови критерии:
1.GetSwiftMessage: -Тествайте чрез предоставяне на SWIFT MT799 файл и проверете JSON изхода за коректност на разделянето на блоковете.
2.SWIFTMessageInserting: Тествайте чрез предоставяне на SWIFT MT799 файл и проверете дали данните са успешно записани в базата данни, както и броя на променените редове.
Бележки: Уверете се, че всички зависимости и конфигурации са правилно настроени преди тестовете. Прегледайте логовете, съхранени в logs директорията, за информация относно изпълнението и потенциални грешки.