Closed gitauto-ai[bot] closed 1 week ago
[!IMPORTANT]
Review skipped
Bot user detected.
To trigger a single review, invoke the
@coderabbitai review
command.You can disable this status message by setting the
reviews.review_status
tofalse
in the CodeRabbit configuration file.
Failed conditions
C Reliability Rating on New Code (required ≥ A)
See analysis details on SonarQube Cloud
Catch issues before they fail your Quality Gate with our IDE extension SonarQube for IDE
Resolves #141
What is the feature
Implement functionality to fetch taxes and levies data from the Banco Central do Brasil (BCB) for all banks, based on their ISPB codes. This involves retrieving data from the BCB's personal and corporate URLs for each bank and extracting the relevant information into JSON files separate from the banks' data files. Additionally, integrate data from the SFA - Open Finance participants directory into the application.
Why we need the feature
This feature enhances the application by providing up-to-date taxes and levies information for all banks, which is crucial for users requiring accurate financial data. Automating the retrieval and updating process ensures that the information remains current without manual intervention. Integrating data from the SFA - Open Finance participants directory enriches the application's dataset, offering a more comprehensive view of bank participants in the open finance ecosystem.
How to implement and why
Implementation Steps:
Add Required URLs to
Constants.cs
Constants.cs
makes future updates easier and keeps the URLs organized.Add New Enum Item in
Source.cs
BcbTaxes
andSfaOpenFinance
to theSource
enum.Implement Loading Methods in
Reader.cs
LoadBcbTaxes()
LoadSfaOpenFinance()
Parse HTML Content
HtmlAgilityPack
.Add New Fields to
Bank.cs
Bank
class:Implement Merging Logic in
Seeder.cs
MergeBcbTaxes()
Update
AcquireData
inProgram.cs
Update
Writer.cs
SaveCsv()
SaveMarkdown()
SaveSql()
Testing
Documentation
About backward compatibility
Bank
class without altering existing fields.Test these changes locally