Skip to content

Commit

Permalink
Add CQL to files (#265)
Browse files Browse the repository at this point in the history
  • Loading branch information
guibranco authored Jul 22, 2023
1 parent 53e7422 commit 9727cd7
Show file tree
Hide file tree
Showing 12 changed files with 1,968 additions and 1,891 deletions.
845 changes: 420 additions & 425 deletions BancosBrasileiros.MergeTool/Dto/Bank.cs

Large diffs are not rendered by default.

27 changes: 13 additions & 14 deletions BancosBrasileiros.MergeTool/Dto/Banks.cs
Original file line number Diff line number Diff line change
Expand Up @@ -12,21 +12,20 @@
// <summary></summary>
// ***********************************************************************

namespace BancosBrasileiros.MergeTool.Dto
{
using System.Xml.Serialization;
namespace BancosBrasileiros.MergeTool.Dto;

using System.Xml.Serialization;

/// <summary>
/// Class Banks.
/// </summary>
[XmlRoot("banks")]
public class Banks
{
/// <summary>
/// Class Banks.
/// Gets or sets the bank.
/// </summary>
[XmlRoot("banks")]
public class Banks
{
/// <summary>
/// Gets or sets the bank.
/// </summary>
/// <value>The bank.</value>
[XmlElement("bank")]
public Bank[] Bank { get; set; }
}
/// <value>The bank.</value>
[XmlElement("bank")]
public Bank[] Bank { get; set; }
}
103 changes: 55 additions & 48 deletions BancosBrasileiros.MergeTool/Helpers/Constants.cs
Original file line number Diff line number Diff line change
Expand Up @@ -11,63 +11,70 @@
// </copyright>
// <summary></summary>
// ***********************************************************************
namespace BancosBrasileiros.MergeTool.Helpers

#pragma warning disable S1075
namespace BancosBrasileiros.MergeTool.Helpers;

/// <summary>
/// Class Constants.
/// </summary>
internal static class Constants
{
/// <summary>
/// Class Constants.
/// The change log URL
/// </summary>
internal static class Constants
{
/// <summary>
/// The change log URL
/// </summary>
public const string ChangeLogUrl =
"https://raw.githubusercontent.com/guibranco/BancosBrasileiros/main/CHANGELOG.md";
public const string ChangeLogUrl =
"https://raw.githubusercontent.com/guibranco/BancosBrasileiros/main/CHANGELOG.md";

/// <summary>
/// The base URL
/// </summary>
public const string BaseUrl =
"https://raw.githubusercontent.com/guibranco/BancosBrasileiros/main/data/bancos.json";
/// <summary>
/// The base URL
/// </summary>
public const string BaseUrl =
"https://raw.githubusercontent.com/guibranco/BancosBrasileiros/main/data/bancos.json";

/// <summary>
/// The string URL
/// </summary>
public const string StrUrl =
"http://www.bcb.gov.br/pom/spb/estatistica/port/ParticipantesSTRport.csv";
/// <summary>
/// The string URL
/// </summary>
public const string StrUrl =
"http://www.bcb.gov.br/pom/spb/estatistica/port/ParticipantesSTRport.csv";

/// <summary>
/// The spi URL
/// </summary>
public const string SpiUrl =
"https://www.bcb.gov.br/content/estabilidadefinanceira/spi/participantes-spi-{0:yyyyMMdd}.csv";
/// <summary>
/// The spi URL
/// </summary>
public const string SpiUrl =
"https://www.bcb.gov.br/content/estabilidadefinanceira/spi/participantes-spi-{0:yyyyMMdd}.csv";

/// <summary>
/// The SLC URL
/// </summary>
public const string SlcUrl =
"https://www2.nuclea.com.br/Monitoramento/Participantes_Homologados.pdf";
/// <summary>
/// The SLC URL
/// </summary>
public const string SlcUrl =
"https://www2.nuclea.com.br/Monitoramento/Participantes_Homologados.pdf";

/// <summary>
/// The siloc URL
/// </summary>
public const string SilocUrl = "https://www2.nuclea.com.br/Monitoramento/SILOC.pdf";
/// <summary>
/// The siloc URL
/// </summary>
public const string SilocUrl = "https://www2.nuclea.com.br/Monitoramento/SILOC.pdf";

/// <summary>
/// The sitraf URL
/// </summary>
public const string SitrafUrl =
"https://www2.nuclea.com.br/Monitoramento/Rela%C3%A7%C3%A3o%20de%20Clientes%20SITRAF.pdf";
/// <summary>
/// The sitraf URL
/// </summary>
public const string SitrafUrl =
"https://www2.nuclea.com.br/Monitoramento/Rela%C3%A7%C3%A3o%20de%20Clientes%20SITRAF.pdf";

/// <summary>
/// The CTC URL
/// </summary>
public const string CtcUrl = "https://www2.nuclea.com.br/SAP/CTC.pdf";

/// <summary>
/// The CTC URL
/// </summary>
public const string CtcUrl = "https://www2.nuclea.com.br/SAP/CTC.pdf";
/// <summary>
/// The PCPS URL
/// </summary>
public const string PcpsUrl =
"https://www2.nuclea.com.br/SAP/Rela%C3%A7%C3%A3o%20de%20Participantes%20PCPS.pdf";

/// <summary>
/// The PCPS URL
/// </summary>
public const string PcpsUrl =
"https://www2.nuclea.com.br/SAP/Rela%C3%A7%C3%A3o%20de%20Participantes%20PCPS.pdf";
}
/// <summary>
/// The CQL URL
/// </summary>
public const string CqlUrl =
"https://www2.nuclea.com.br/SAP/Rela%C3%A7%C3%A3o%20de%20Participantes%20CQL.pdf";
}
32 changes: 16 additions & 16 deletions BancosBrasileiros.MergeTool/Helpers/Logger.cs
Original file line number Diff line number Diff line change
Expand Up @@ -11,25 +11,25 @@
// </copyright>
// <summary></summary>
// ***********************************************************************
namespace BancosBrasileiros.MergeTool.Helpers
{
using System;

namespace BancosBrasileiros.MergeTool.Helpers;

using System;

/// <summary>
/// Class Helpers.
/// </summary>
internal static class Logger
{
/// <summary>
/// Class Helpers.
/// Logs the specified message.
/// </summary>
internal static class Logger
/// <param name="message">The message.</param>
/// <param name="color">The color.</param>
public static void Log(string message, ConsoleColor color)
{
/// <summary>
/// Logs the specified message.
/// </summary>
/// <param name="message">The message.</param>
/// <param name="color">The color.</param>
public static void Log(string message, ConsoleColor color)
{
Console.ForegroundColor = color;
Console.WriteLine(message);
Console.ForegroundColor = ConsoleColor.White;
}
Console.ForegroundColor = color;
Console.WriteLine(message);
Console.ForegroundColor = ConsoleColor.White;
}
}
137 changes: 76 additions & 61 deletions BancosBrasileiros.MergeTool/Helpers/Patterns.cs
Original file line number Diff line number Diff line change
Expand Up @@ -11,76 +11,91 @@
// </copyright>
// <summary></summary>
// ***********************************************************************

namespace BancosBrasileiros.MergeTool.Helpers;

using System;
using System.Text.RegularExpressions;

namespace BancosBrasileiros.MergeTool.Helpers
/// <summary>
/// Class Patterns.
/// </summary>
internal static class Patterns
{
/// <summary>
/// Class Patterns.
/// The comma separated values pattern
/// </summary>
internal static class Patterns
{
/// <summary>
/// The comma separated values pattern
/// </summary>
public static readonly Regex CsvPattern =
new(
",(?=(?:[^\"]*\"[^\"]*\")*(?![^\"]*\"))",
RegexOptions.CultureInvariant | RegexOptions.IgnoreCase | RegexOptions.Compiled
);
public static readonly Regex CsvPattern =
new(
",(?=(?:[^\"]*\"[^\"]*\")*(?![^\"]*\"))",
RegexOptions.CultureInvariant | RegexOptions.IgnoreCase | RegexOptions.Compiled,
TimeSpan.FromSeconds(5)
);

/// <summary>
/// The semicolon separated values pattern
/// </summary>
public static readonly Regex SsvPattern =
new(
";(?=(?:[^\"]*\"[^\"]*\")*(?![^\"]*\"))",
RegexOptions.CultureInvariant | RegexOptions.IgnoreCase | RegexOptions.Compiled
);
/// <summary>
/// The semicolon separated values pattern
/// </summary>
public static readonly Regex SsvPattern =
new(
";(?=(?:[^\"]*\"[^\"]*\")*(?![^\"]*\"))",
RegexOptions.CultureInvariant | RegexOptions.IgnoreCase | RegexOptions.Compiled,
TimeSpan.FromSeconds(5)
);

/// <summary>
/// The SLC pattern
/// </summary>
public static readonly Regex SlcPattern =
new(
@"^(?<code>\d{1,3})\s(?<cnpj>\d{1,2}\.\d{3}\.\d{3}(?:.|\/)\d{4}([-|·|\.|\s]{1,2})\d{2})\s(?<nome>.+?)(?:[\s|X]){1,7}$",
RegexOptions.CultureInvariant | RegexOptions.IgnoreCase | RegexOptions.Compiled
);
/// <summary>
/// The SLC pattern
/// </summary>
public static readonly Regex SlcPattern =
new(
@"^(?<code>\d{1,3})\s(?<cnpj>\d{1,2}\.\d{3}\.\d{3}(?:.|\/)\d{4}([-|·|\.|\s]{1,2})\d{2})\s(?<nome>.+?)(?:[\s|X]){1,7}$",
RegexOptions.CultureInvariant | RegexOptions.IgnoreCase | RegexOptions.Compiled,
TimeSpan.FromSeconds(5)
);

/// <summary>
/// The SILOC pattern
/// </summary>
public static readonly Regex SilocPattern =
new(
@"^(?<code>\d{1,3})\s(?<compe>\d{3})\s(?<ispb>\d{8})\s(?<cobranca>sim|não)\s(?<doc>sim|não)\s(?<nome>.+?)$",
RegexOptions.CultureInvariant | RegexOptions.IgnoreCase | RegexOptions.Compiled
);
/// <summary>
/// The SILOC pattern
/// </summary>
public static readonly Regex SilocPattern =
new(
@"^(?<code>\d{1,3})\s(?<compe>\d{3})\s(?<ispb>\d{8})\s(?<cobranca>sim|não)\s(?<doc>sim|não)\s(?<nome>.+?)$",
RegexOptions.CultureInvariant | RegexOptions.IgnoreCase | RegexOptions.Compiled,
TimeSpan.FromSeconds(5)
);

/// <summary>
/// The sitraf pattern
/// </summary>
public static readonly Regex SitrafPattern =
new(
@"^(?<code>\d{1,3})\s(?<compe>\d{3})\s(?<ispb>\d{8})\s(?<nome>.+?)$",
RegexOptions.CultureInvariant | RegexOptions.IgnoreCase | RegexOptions.Compiled
);
/// <summary>
/// The sitraf pattern
/// </summary>
public static readonly Regex SitrafPattern =
new(
@"^(?<code>\d{1,3})\s(?<compe>\d{3})\s(?<ispb>\d{8})\s(?<nome>.+?)$",
RegexOptions.CultureInvariant | RegexOptions.IgnoreCase | RegexOptions.Compiled,
TimeSpan.FromSeconds(5)
);

/// <summary>
/// The ctc pattern
/// </summary>
public static readonly Regex CtcPattern =
new(
@"^(?<code>\d{1,3})\s(?<nome>.+?)\s(?<cnpj>\d{1,2}\.\d{3}\.\d{3}(?:.|\/)\d{4}([-|·|\.|\s]{1,2})\d{2})\s+(?<ispb>\d{8})\s(?<produtos>.+?)$",
RegexOptions.CultureInvariant | RegexOptions.IgnoreCase | RegexOptions.Compiled
);
/// <summary>
/// The ctc pattern
/// </summary>
public static readonly Regex CtcPattern =
new(
@"^(?<code>\d{1,3})\s(?<nome>.+?)\s(?<cnpj>\d{1,2}\.\d{3}\.\d{3}(?:.|\/)\d{4}([-|·|\.|\s]{1,2})\d{2})\s+(?<ispb>\d{8})\s(?<produtos>.+?)$",
RegexOptions.CultureInvariant | RegexOptions.IgnoreCase | RegexOptions.Compiled,
TimeSpan.FromSeconds(5)
);

/// <summary>
/// The PCPS pattern
/// </summary>
public static readonly Regex PcpsPattern =
new(
@"^(?<code>\d{1,3})\s(?<nome>.+?)\s(?<cnpj>\d{1,2}\.\d{3}\.\d{3}(?:.|\/)\d{4}([-|·|\.|\s]{1,3})\d{2})\s+(?<ispb>\d{7,8})\s(?<adesao>.+?)$",
RegexOptions.CultureInvariant | RegexOptions.IgnoreCase | RegexOptions.Compiled,
TimeSpan.FromSeconds(5)
);

/// <summary>
/// The PCPS pattern
/// </summary>
public static readonly Regex PcpsPattern =
new(
@"^(?<code>\d{1,3})\s(?<nome>.+?)\s(?<cnpj>\d{1,2}\.\d{3}\.\d{3}(?:.|\/)\d{4}([-|·|\.|\s]{1,3})\d{2})\s+(?<ispb>\d{7,8})\s(?<adesao>.+?)$",
RegexOptions.CultureInvariant | RegexOptions.IgnoreCase | RegexOptions.Compiled
);
}
public static readonly Regex CqlPattern =
new(
@"^(?<code>\d{1,3})\s(?<nome>.+?)\s(?<ispb>\d{7,8})\s(?<tipo>.+?)$",
RegexOptions.CultureInvariant | RegexOptions.IgnoreCase | RegexOptions.Compiled,
TimeSpan.FromSeconds(5)
);
}
Loading

0 comments on commit 9727cd7

Please sign in to comment.