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); } }
public static Descricoes.TaxaCustodia CastToTaxaCustodiaWhenHasNoDate(string desc, Descricoes.TaxaCustodia estorno) => Descricoes.TaxaCustodia.Cast(desc, estorno);
public static Descricoes.TaxaCustodia CastToTaxaCustodia(string desc, Descricoes.TaxaCustodia estorno = null) => Descricoes.TaxaCustodia.Cast(desc, estorno);