Пример #1
0
        /// <summary>
        /// Verificar se existe condicao para conceder desconto e aplica-lo
        /// </summary>
        public static decimal valorComDescontoUnitario(this CarrinhoItemProdutoVW OItem, bool flagAssociadoAdimplente)
        {
            if (!OItem.flagTemDesconto(flagAssociadoAdimplente))
            {
                return(OItem.valorProduto.toDecimal());
            }

            if (OItem.valorDescontoAssociado.toDecimal() > 0)
            {
                decimal valorComDesconto = decimal.Subtract(OItem.valorProduto.toDecimal(), OItem.valorDescontoAssociado.toDecimal());

                return(valorComDesconto);
            }

            if (OItem.percentualDescontoAssociado.toDecimal() > 0)
            {
                decimal valorPercentualDesconto = OItem.valorProduto.toDecimal().valorPercentual(OItem.percentualDescontoAssociado.toDecimal());

                decimal valorComDesconto = decimal.Subtract(OItem.valorProduto.toDecimal(), valorPercentualDesconto);

                return(valorComDesconto);
            }

            return(OItem.valorProduto.toDecimal());
        }
Пример #2
0
        /// <summary>
        /// Verificar se existe condicao para conceder desconto e aplica-lo
        /// </summary>
        public static bool flagTemDesconto(this CarrinhoItemProdutoVW OItem, bool flagAssociadoAdimplente)
        {
            if (OItem.valorDescontoAssociado.toDecimal() == 0 && OItem.percentualDescontoAssociado.toDecimal() == 0)
            {
                return(false);
            }

            if (flagAssociadoAdimplente == false)
            {
                return(false);
            }

            return(true);
        }