public static TaxaCustodia Cast(string desc, TaxaCustodia estorno = null)
        {
            if (!(estorno == null && IsNormal(desc)) &&
                !IsEstornoComData(desc) &&
                !(estorno != null && IsEstornoSemData(desc)))
            {
                throw new ArgumentException();
            }

            var periodo = desc.LastWord().Replace("Ref.:", "").GetValueOrNull <DateTime>();

            var month = periodo?.Month;
            var year  = periodo?.Year;

            if (estorno != null)
            {
                month = month ?? estorno.Month;
                year  = year ?? estorno.Year;
            }

            if (!month.HasValue || !year.HasValue)
            {
                throw new ArgumentNullException();
            }

            return(new TaxaCustodia(desc, month.Value, year.Value));
        }
 public static bool TryCast(string desc, out TaxaCustodia txCustodia, TaxaCustodia estorno = null)
 {
     try
     {
         txCustodia = Cast(desc, estorno);
         return(true);
     }
     catch (Exception)
     {
         txCustodia = null;
         return(false);
     }
 }
Ejemplo n.º 3
0
 public static Descricoes.TaxaCustodia CastToTaxaCustodiaWhenHasNoDate(string desc, Descricoes.TaxaCustodia estorno)
 => Descricoes.TaxaCustodia.Cast(desc, estorno);
Ejemplo n.º 4
0
 public static Descricoes.TaxaCustodia CastToTaxaCustodia(string desc, Descricoes.TaxaCustodia estorno = null)
 => Descricoes.TaxaCustodia.Cast(desc, estorno);