/// <summary> /// Initializes a new instance of the <see cref="TaxCodeIndia"/> class. /// </summary> /// <param name="context">The request context.</param> /// <param name="taxableItem">The taxable line item.</param> /// <param name="taxCodeInterval">The tax code interval.</param> /// <param name="taxContext">Tax context.</param> /// <param name="transaction">Current transaction.</param> public TaxCodeIndia( RequestContext context, TaxableItem taxableItem, TaxCodeIntervalIndia taxCodeInterval, TaxContext taxContext, SalesTransaction transaction) : base(context, taxableItem, taxCodeInterval, taxContext, transaction) { if (context == null) { throw new ArgumentNullException("context"); } if (taxCodeInterval == null) { throw new ArgumentNullException("taxCodeInterval"); } this.TaxType = taxCodeInterval.TaxType; this.AbatementPercent = taxCodeInterval.AbatementPercent; this.taxCodesInFormula = new List <string>(); }
/// <summary> /// Gets the tax code. /// </summary> /// <param name="context">The request context.</param> /// <param name="taxableItem">The taxable item.</param> /// <param name="taxCodeInterval">The tax code interval.</param> /// <param name="transaction">Current transaction.</param> /// <returns>The tax code object.</returns> protected override TaxCode GetTaxCode(RequestContext context, TaxableItem taxableItem, TaxCodeInterval taxCodeInterval, SalesTransaction transaction) { if (context == null) { throw new ArgumentNullException("context"); } TaxCodeIntervalIndia taxCodeIntervalIndia = taxCodeInterval as TaxCodeIntervalIndia; if (taxCodeIntervalIndia.TaxType == TaxTypeIndia.None) { return(base.GetTaxCode(context, taxableItem, taxCodeInterval, transaction)); } else { return(new TaxCodeIndia(context, taxableItem, taxCodeIntervalIndia, this.TaxContext, transaction)); } }