Exemple #1
0
        public static decimal CalcularTotal(GDASession sessao, int idCliente, int idProduto, double altura,
                                            int largura, double quantidade, int?quantidadeAmbiente, double areaM2, double areaCalculadaM2,
                                            decimal valorUnitario, double percentualDescontoPorQuantidade, bool calcularMultiploDe5,
                                            int numeroBeneficiamentos)
        {
            var container = new ContainerCalculoDTO
            {
                Cliente = new ClienteDTO(() => (uint)idCliente),
            };

            var produto = new ProdutoCalculoDTO
            {
                Altura           = (float)altura,
                Largura          = largura,
                Qtde             = (float)quantidade,
                QtdeAmbiente     = quantidadeAmbiente ?? 0,
                IdProduto        = (uint)idProduto,
                TotM             = (float)areaM2,
                TotM2Calc        = (float)areaCalculadaM2,
                ValorUnit        = valorUnitario,
                PercDescontoQtde = (float)percentualDescontoPorQuantidade,
            };

            ValorTotal.Instance.Calcular(
                sessao,
                container,
                produto,
                Data.Helper.Calculos.Estrategia.ValorTotal.Enum.ArredondarAluminio.ArredondarApenasCalculo,
                calcularMultiploDe5,
                numeroBeneficiamentos);

            return(produto.Total);
        }
Exemple #2
0
        /// <summary>
        /// Cálculo de arredondamento de m2 utilizando 2 casas decimais
        /// </summary>
        /// <param name="largura"></param>
        /// <param name="altura"></param>
        /// <param name="qtd"></param>
        /// <returns></returns>
        public static float ArredondaM2(GDASession sessao, int largura, int altura, float qtd, int idProd,
                                        bool redondo, float espessura, bool calcMult5)
        {
            var container = new ContainerCalculoDTO();

            var produto = new ProdutoCalculoDTO()
            {
                IdProduto = (uint)idProd,
                Largura   = largura,
                Altura    = altura,
                Qtde      = qtd,
                Redondo   = redondo,
                Espessura = espessura
            };

            return(CalculoM2.Instance.Calcular(sessao, container, produto, calcMult5));
        }
Exemple #3
0
        /// <summary>
        /// Cálculo de M2.
        /// </summary>
        /// <param name="sessao"></param>
        /// <param name="idCliente"></param>
        /// <param name="altura"></param>
        /// <param name="largura"></param>
        /// <param name="qtde"></param>
        /// <param name="idProduto"></param>
        /// <param name="redondo"></param>
        /// <param name="numBenef"></param>
        /// <param name="areaMinima"></param>
        /// <param name="usarChapa"></param>
        /// <param name="espessura"></param>
        /// <param name="calcMult5"></param>
        /// <returns></returns>
        public static float CalcM2Calculo(GDASession sessao, uint idCliente, int altura, int largura, float qtde, int idProduto, bool redondo, int numBenef,
                                          float areaMinima, bool usarChapa, float espessura, bool calcMult5)
        {
            var container = new ContainerCalculoDTO()
            {
                Cliente = new ClienteDTO(() => idCliente)
            };

            var produto = new ProdutoCalculoDTO()
            {
                IdProduto = (uint)idProduto,
                Altura    = altura,
                Largura   = largura,
                Qtde      = qtde,
                Redondo   = redondo,
                Espessura = espessura
            };

            return(CalculoM2.Instance.CalcularM2Calculo(sessao, container, produto, usarChapa, calcMult5, numBenef));
        }