public IDescontoAcrescimoStrategy RecuperaEstrategia(TipoCalculo tipo, TipoAplicacao aplicacao) { IDescontoAcrescimoStrategy estrategia = null; switch (tipo) { case TipoCalculo.Acrescimo: estrategia = RecuperaEstrategiaAcrescimo(aplicacao); break; case TipoCalculo.Desconto: estrategia = RecuperaEstrategiaDesconto(aplicacao); break; case TipoCalculo.Comissao: estrategia = RecuperaEstrategiaComissao(aplicacao); break; } return(estrategia ?? SemAlteracaoStrategy.Instance); }
private bool Remover(GDASession sessao, IDescontoAcrescimoStrategy estrategia, IContainerCalculo container, IEnumerable <IProdutoCalculo> produtos) { return(estrategia.Remover(sessao, container, produtos)); }
private bool Aplicar(GDASession sessao, IDescontoAcrescimoStrategy estrategia, IContainerCalculo container, IEnumerable <IProdutoCalculo> produtos, TipoValor tipoValor, decimal valor) { return(estrategia.Aplicar(sessao, container, produtos, tipoValor, valor)); }