コード例 #1
0
        public DadosMemoriaCalculo(ProdutoPedidoBenef ppb)
        {
            BenefConfig      bc  = BenefConfigDAO.Instance.GetElement(ppb.IdBenefConfig);
            ProdutosPedido   pai = ProdutosPedidoDAO.Instance.GetElement(ppb.IdProdPed);
            BenefConfigPreco bcp = BenefConfigPrecoDAO.Instance.GetByIdBenefConfig(null, ppb.IdBenefConfig, pai.IdProd);
            int  tipoEntrega     = PedidoDAO.Instance.ObtemTipoEntrega(pai.IdPedido);
            bool maoDeObra       = PedidoDAO.Instance.IsMaoDeObra(null, pai.IdPedido);

            Codigo        = pai.CodInterno;
            Ambiente      = !maoDeObra ? pai.Ambiente : AmbientePedidoDAO.Instance.ObtemPecaVidroQtd(pai.IdAmbientePedido.Value);
            DescrAmbiente = pai.DescrAmbiente;
            _descricao    = " " + bc.DescricaoCompleta.Trim();
            Redondo       = false;
            Qtde          = ppb.Qtd;
            ValorTabela   = BenefConfigDAO.Instance.GetValorTabela(bcp, (int?)tipoEntrega, PedidoDAO.Instance.ObtemIdCliente(null, pai.IdPedido));
            Custo         = bcp.Custo;
            CustoTotal    = ppb.Custo;
            Valor         = ppb.ValorUnit;
            ValorTotal    = ppb.Valor;

            if (bc.TipoControle == TipoControleBenef.Bisote || bc.TipoControle == TipoControleBenef.Lapidacao)
            {
                _descricao += " " + Utils.MontaDescrLapBis(ppb.BisAlt, ppb.BisLarg, ppb.LapAlt, ppb.LapLarg, ppb.EspBisote, null, null, false);
            }

            if (bc.TipoCalculo == TipoCalculoBenef.Porcentagem)
            {
                ValorTabela = Math.Round((ValorTabela / 100) * pai.ValorVendido, 2);
            }

            TipoCalculo = 0;
        }
コード例 #2
0
        protected void txt_EspessuraComposicao_DataBinding(object sender, EventArgs e)
        {
            TextBox     txt           = (TextBox)sender;
            GridViewRow linhaControle = txt.Parent.Parent as GridViewRow;

            ProdutosPedido prodPed = linhaControle.DataItem as ProdutosPedido;

            txt.Enabled = prodPed.Espessura <= 0;
        }
コード例 #3
0
        public ProdutosPedidoRpt(ProdutosPedido prodPed, bool incluirQtdeAmbiente)
        {
            IdProdPed                   = prodPed.IdProdPed;
            IdPedido                    = prodPed.IdPedido;
            TituloAltLarg1              = prodPed.TituloAltLarg1;
            TituloAltLarg2              = prodPed.TituloAltLarg2;
            IdAmbientePedido            = prodPed.IdAmbientePedido;
            Ambiente                    = prodPed.Ambiente;
            DescrAmbiente               = prodPed.DescrAmbiente;
            ObsProjeto                  = prodPed.ObsProjeto;
            CodInterno                  = prodPed.CodInterno;
            Qtde                        = prodPed.Qtde;
            QtdeDisponivelLiberacao     = prodPed.QtdeDisponivelLiberacao;
            TotalCalc                   = prodPed.TotalCalc;
            AltLarg1                    = prodPed.AltLarg1;
            AltLarg2                    = prodPed.AltLarg2;
            DescrProduto                = prodPed.DescrProduto;
            DescricaoProdutoComBenef    = prodPed.DescricaoProdutoComBenef;
            CodAplicacao                = prodPed.CodAplicacao;
            CodProcesso                 = prodPed.CodProcesso;
            TotM2Calc                   = prodPed.TotM2Calc;
            TotM                        = prodPed.TotM;
            ValorVendido                = prodPed.ValorVendido;
            Total                       = prodPed.Total;
            ValorBenef                  = prodPed.ValorBenef;
            PedidoMaoDeObra             = PedidoDAO.Instance.IsMaoDeObra(null, IdPedido);
            DescrBeneficiamentos        = prodPed.DescrBeneficiamentos;
            IdProdPedProducaoConsulta   = prodPed.IdProdPedProducaoConsulta;
            TipoDescontoAmbiente        = prodPed.TipoDescontoAmbiente;
            DescontoAmbiente            = prodPed.DescontoAmbiente;
            Espessura                   = prodPed.Espessura;
            ValorDescontoQtde           = prodPed.ValorDescontoQtde;
            PedCli                      = prodPed.PedCli;
            IsProdLamComposicao         = prodPed.IsProdLamComposicao;
            IdProdPedParent             = prodPed.IdProdPedParent;
            IsProdLamComposicaoComFilho = prodPed.IsProdLamComposicaoComFilho;
            Peso                        = prodPed.Peso;
            IsVidro                     = GrupoProdDAO.Instance.IsVidro((int)prodPed.IdGrupoProd);
            IsVidroEstoqueQtde          = prodPed.TipoCalc == (int)TipoCalculoGrupoProd.Qtd && prodPed.IsVidroEstoque;
            NomeGrupoProd               = GrupoProdDAO.Instance.GetDescricao((int)prodPed.IdGrupoProd);
            NomeSubGrupoProd            = prodPed.NomeSubGrupoProd;

            var corVidro = ProdutoDAO.Instance.ObtemIdCorVidro((int)prodPed.IdProd);

            if (corVidro > 0)
            {
                CorVidro = CorVidroDAO.Instance.GetNome((uint)corVidro.GetValueOrDefault());
            }

            if (incluirQtdeAmbiente)
            {
                QtdeAmbiente = prodPed.QtdeAmbiente;
            }
        }
コード例 #4
0
        protected void rgvQtde_DataBinding(object sender, EventArgs e)
        {
            RangeValidator r     = (RangeValidator)sender;
            GridViewRow    linha = r.Parent.Parent as GridViewRow;

            if (linha == null)
            {
                return;
            }

            ProdutosPedido pp = linha.DataItem as ProdutosPedido;

            if (pp == null || pp.IdProdPedAnterior == null)
            {
                return;
            }

            r.MaximumValue = ProdutosPedidoDAO.Instance.ObtemQtde(pp.IdProdPedAnterior.Value).ToString();
            r.ErrorMessage = "Valor entre 1 e " + r.MaximumValue;
        }
コード例 #5
0
        public ProdutosCortadosRpt(ProdutosPedido produto)
        {
            IdPedido = produto.IdPedido;

            IdPedidoRevenda = produto.IdPedidoRevenda;

            CodInternoProd = produto.CodInterno;

            DescrProduto = produto.DescrProduto;

            PedCli = produto.PedCli;

            AlturaProd = produto.Altura;

            LarguraProd = produto.Largura;

            TotM2 = produto.TotM;

            Qtde = produto.Qtde;

            Peso = produto.Peso;
        }
コード例 #6
0
        public DadosMemoriaCalculo(ProdutosPedidoEspelho ppe, Pedido pedido, float qtdeAmbienteSoma)
        {
            bool maoDeObra = (pedido as IContainerCalculo).MaoDeObra;
            bool reposicao = (pedido as IContainerCalculo).Reposicao;

            ProdutosPedido pp = ProdutosPedidoDAO.Instance.GetByProdPedEsp(null, ppe.IdProdPed, true);

            Ambiente            = !maoDeObra ? ppe.AmbientePedido : AmbientePedidoEspelhoDAO.Instance.ObtemPecaVidroQtd(ppe.IdAmbientePedido.Value);
            DescrAmbiente       = ppe.DescrAmbientePedido;
            Codigo              = ppe.CodInterno;
            _descricao          = ppe.DescrProduto.Trim();
            Redondo             = ppe.Redondo;
            Qtde                = ppe.Qtde;
            QtdeAmbiente        = maoDeObra ? ppe.QtdeAmbiente : 0;
            QtdeAmbienteSoma    = maoDeObra ? qtdeAmbienteSoma : 0;
            Altura              = ppe.AlturaReal;
            AlturaCalc          = ppe.Altura;
            _largura            = ppe.Largura;
            TotM2               = ppe.TotM;
            TotM2Calc           = ppe.TotM2Calc;
            ValorTabela         = ProdutoDAO.Instance.GetValorTabela((int)ppe.IdProd, pedido.TipoEntrega, pedido.IdCli, false, reposicao, ppe.PercDescontoQtde, (int?)ppe.IdPedido, null, null, Altura);
            Custo               = ppe.CustoCompraProduto;
            Valor               = ppe.ValorVendido;
            ValorTotal          = ppe.Total;// +pp.ValorBenef;
            _valorTabelaCobrado = pp.ValorTabelaPedido;
            TipoCalculo         = pp.TipoCalculoUsadoPedido;
            IsProdLamComposicao = pp.IsProdLamComposicao;

            CalculaValor(pedido, ppe);
            CustoTotal = (ppe as IProdutoCalculo).CustoProd;

            // Exibe o percentual de desconto por qtd concatenado com a descrição
            if (Geral.ConcatenarDescontoPorQuantidadeNaDescricaoDoProduto && ppe.PercDescontoQtde > 0)
            {
                _descricao += "\r\n(Desc. Prod.: " + ppe.PercDescontoQtde + "%)";
            }
        }
コード例 #7
0
        protected void btnConfirmar_Click(object sender, EventArgs e)
        {
            try
            {
                var idPedido = Glass.Conversoes.StrParaUint(Request["idPedido"]);
                var pcp      = !string.IsNullOrEmpty(Request["pcp"]) ? Request["pcp"] == "true" : false;

                // Recupera os dados da mão de obra
                var idProdMaoObra   = Glass.Conversoes.StrParaUint(hdfIdProdMaoObra.Value);
                int qtdeMaoObra     = Glass.Conversoes.StrParaInt(txtQtdeMaoObra.Text);
                var valorMaoObra    = Glass.Conversoes.StrParaDecimal(txtValorUnitMaoObra.Text);
                var tipoCalcMaoObra = Glass.Conversoes.StrParaInt(hdfTipoCalcMaoObra.Value);
                var alturaBenef     = !string.IsNullOrEmpty(drpAltBenef.SelectedValue) ? Glass.Conversoes.StrParaInt(drpAltBenef.SelectedValue) : 0;
                var larguraBenef    = !string.IsNullOrEmpty(drpLargBenef.SelectedValue) ? Glass.Conversoes.StrParaInt(drpLargBenef.SelectedValue) : 0;
                var espBenef        = !string.IsNullOrEmpty(txtEspBenef.Text) ? (int?)Glass.Conversoes.StrParaInt(txtEspBenef.Text) : null;

                for (var i = 1; i <= 10; i++)
                {
                    var idProdAmbiente = (HiddenField)Master.FindControl("pagina").FindControl("hdfAmbIdProd" + i) != null?
                                         Glass.Conversoes.StrParaUint(((HiddenField)Master.FindControl("pagina").FindControl("hdfAmbIdProd" + i)).Value) : 0;

                    if (idProdAmbiente == 0)
                    {
                        continue;
                    }

                    var codAmbiente = (TextBox)Master.FindControl("pagina").FindControl("txtCodAmb" + i) != null ?
                                      ((TextBox)Master.FindControl("pagina").FindControl("txtCodAmb" + i)).Text : "";

                    var descrAmbiente = (HiddenField)Master.FindControl("pagina").FindControl("hdfDescrAmb" + i) != null ?
                                        ((HiddenField)Master.FindControl("pagina").FindControl("hdfDescrAmb" + i)).Value : "";

                    var qtdeAmbiente = (TextBox)Master.FindControl("pagina").FindControl("txtQtde" + i) != null?
                                       Glass.Conversoes.StrParaInt(((TextBox)Master.FindControl("pagina").FindControl("txtQtde" + i)).Text) : 0;

                    var alturaAmbiente = (TextBox)Master.FindControl("pagina").FindControl("txtAltura" + i) != null?
                                         Glass.Conversoes.StrParaInt(((TextBox)Master.FindControl("pagina").FindControl("txtAltura" + i)).Text) : 0;

                    var larguraAmbiente = (TextBox)Master.FindControl("pagina").FindControl("txtLargura" + i) != null?
                                          Glass.Conversoes.StrParaInt(((TextBox)Master.FindControl("pagina").FindControl("txtLargura" + i)).Text) : 0;

                    var idAplicacao = (HiddenField)Master.FindControl("pagina").FindControl("hdfIdAplicacao" + i) != null?
                                      Glass.Conversoes.StrParaUintNullable(((HiddenField)Master.FindControl("pagina").FindControl("hdfIdAplicacao" + i)).Value) : 0;

                    var idProcesso = (HiddenField)Master.FindControl("pagina").FindControl("hdfIdProcesso" + i) != null?
                                     Glass.Conversoes.StrParaUintNullable(((HiddenField)Master.FindControl("pagina").FindControl("hdfIdProcesso" + i)).Value) : 0;

                    var redondoAmbiente = (CheckBox)Master.FindControl("pagina").FindControl("chkRedondo" + i) != null ?
                                          ((CheckBox)Master.FindControl("pagina").FindControl("chkRedondo" + i)).Checked : false;

                    var idAmbiente = new uint();

                    // Insere o ambiente
                    if (!pcp)
                    {
                        var novo = new AmbientePedido();
                        novo.IdPedido    = idPedido;
                        novo.IdProd      = idProdAmbiente;
                        novo.Ambiente    = descrAmbiente;
                        novo.Altura      = alturaAmbiente;
                        novo.Largura     = larguraAmbiente;
                        novo.Qtde        = qtdeAmbiente;
                        novo.IdAplicacao = idAplicacao;
                        novo.IdProcesso  = idProcesso;
                        novo.Redondo     = redondoAmbiente;

                        if (novo.Altura != novo.Largura && redondoAmbiente)
                        {
                            throw new Exception("O beneficiamento Redondo pode ser marcado somente em peças de medidas iguais.");
                        }

                        idAmbiente = AmbientePedidoDAO.Instance.InsertComTransacao(novo);
                    }
                    else
                    {
                        var novo = new AmbientePedidoEspelho();
                        novo.IdPedido = idPedido;
                        novo.IdProd   = idProdAmbiente;
                        novo.Ambiente = descrAmbiente;
                        novo.Altura   = alturaAmbiente;
                        novo.Largura  = larguraAmbiente;
                        novo.Qtde     = qtdeAmbiente;
                        novo.Redondo  = redondoAmbiente;

                        if (novo.Altura != novo.Largura && redondoAmbiente)
                        {
                            throw new Exception("O beneficiamento Redondo pode ser marcado somente em peças de medidas iguais.");
                        }

                        idAmbiente = AmbientePedidoEspelhoDAO.Instance.InsertComTransacao(novo);
                    }

                    if (idAmbiente <= 0)
                    {
                        throw new Exception("Ambiente não cadastrado.");
                    }

                    // Insere a mão de obra no ambiente
                    if (!pcp)
                    {
                        ProdutosPedido prod = new ProdutosPedido();
                        prod.IdPedido         = idPedido;
                        prod.IdAmbientePedido = idAmbiente;
                        prod.IdProd           = idProdMaoObra;
                        prod.Qtde             = qtdeMaoObra;
                        prod.ValorVendido     = valorMaoObra;

                        if (tipoCalcMaoObra == (int)Glass.Data.Model.TipoCalculoGrupoProd.M2 || tipoCalcMaoObra == (int)Glass.Data.Model.TipoCalculoGrupoProd.M2Direto ||
                            tipoCalcMaoObra == (int)Glass.Data.Model.TipoCalculoGrupoProd.Perimetro)
                        {
                            prod.Altura  = alturaAmbiente;
                            prod.Largura = larguraAmbiente;
                        }

                        prod.Espessura      = ProdutoDAO.Instance.ObtemEspessura((int)prod.IdProd);
                        prod.AlturaBenef    = alturaBenef;
                        prod.LarguraBenef   = larguraBenef;
                        prod.EspessuraBenef = espBenef;
                        prod.IdGrupoProd    = (uint)ProdutoDAO.Instance.ObtemIdGrupoProd((int)prod.IdProd);
                        prod.IdSubgrupoProd = (uint)ProdutoDAO.Instance.ObtemIdSubgrupoProd((int)prod.IdProd).GetValueOrDefault(0);

                        ProdutosPedidoDAO.Instance.Insert(prod);
                    }
                    else
                    {
                        ProdutosPedidoEspelho prod = new ProdutosPedidoEspelho();
                        prod.IdPedido         = idPedido;
                        prod.IdAmbientePedido = idAmbiente;
                        prod.IdProd           = idProdMaoObra;
                        prod.Qtde             = qtdeMaoObra * qtdeAmbiente;
                        prod.ValorVendido     = valorMaoObra;

                        if (tipoCalcMaoObra == (int)Glass.Data.Model.TipoCalculoGrupoProd.M2 || tipoCalcMaoObra == (int)Glass.Data.Model.TipoCalculoGrupoProd.M2Direto ||
                            tipoCalcMaoObra == (int)Glass.Data.Model.TipoCalculoGrupoProd.Perimetro)
                        {
                            prod.Altura  = alturaAmbiente;
                            prod.Largura = larguraAmbiente;
                        }

                        prod.Espessura      = ProdutoDAO.Instance.ObtemEspessura((int)prod.IdProd);
                        prod.AlturaBenef    = alturaBenef;
                        prod.LarguraBenef   = larguraBenef;
                        prod.EspessuraBenef = espBenef;
                        prod.IdGrupoProd    = (uint)ProdutoDAO.Instance.ObtemIdGrupoProd((int)prod.IdProd);
                        prod.IdSubgrupoProd = (uint)ProdutoDAO.Instance.ObtemIdSubgrupoProd((int)prod.IdProd).GetValueOrDefault(0);

                        ProdutosPedidoEspelhoDAO.Instance.InsertComTransacao(prod);
                    }
                }

                // Limpa os controles dos ambientes
                for (var i = 1; i <= 10; i++)
                {
                    if ((TextBox)Master.FindControl("pagina").FindControl("txtCodAmb" + i) != null)
                    {
                        ((TextBox)Master.FindControl("pagina").FindControl("txtCodAmb" + i)).Text = "";
                    }

                    if ((HiddenField)Master.FindControl("pagina").FindControl("hdfAmbIdProd" + i) != null)
                    {
                        ((HiddenField)Master.FindControl("pagina").FindControl("hdfAmbIdProd" + i)).Value = "";
                    }

                    if ((Label)Master.FindControl("pagina").FindControl("lblDescrAmb" + i) != null)
                    {
                        ((Label)Master.FindControl("pagina").FindControl("lblDescrAmb" + i)).Text = "";
                    }

                    if ((HiddenField)Master.FindControl("pagina").FindControl("hdfDescrAmb" + i) != null)
                    {
                        ((HiddenField)Master.FindControl("pagina").FindControl("hdfDescrAmb" + i)).Value = "";
                    }

                    if ((TextBox)Master.FindControl("pagina").FindControl("txtQtde" + i) != null)
                    {
                        ((TextBox)Master.FindControl("pagina").FindControl("txtQtde" + i)).Text = "";
                    }

                    if ((TextBox)Master.FindControl("pagina").FindControl("txtAltura" + i) != null)
                    {
                        ((TextBox)Master.FindControl("pagina").FindControl("txtAltura" + i)).Text = "";
                    }

                    if ((TextBox)Master.FindControl("pagina").FindControl("txtLargura" + i) != null)
                    {
                        ((TextBox)Master.FindControl("pagina").FindControl("txtLargura" + i)).Text = "";
                    }

                    if ((TextBox)Master.FindControl("pagina").FindControl("txtProcIns" + i) != null)
                    {
                        ((TextBox)Master.FindControl("pagina").FindControl("txtProcIns" + i)).Text = "";
                    }

                    if ((HiddenField)Master.FindControl("pagina").FindControl("hdfIdProcesso" + i) != null)
                    {
                        ((HiddenField)Master.FindControl("pagina").FindControl("hdfIdProcesso" + i)).Value = "";
                    }

                    if ((TextBox)Master.FindControl("pagina").FindControl("txtAplIns" + i) != null)
                    {
                        ((TextBox)Master.FindControl("pagina").FindControl("txtAplIns" + i)).Text = "";
                    }

                    if ((HiddenField)Master.FindControl("pagina").FindControl("hdfIdAplicacao" + i) != null)
                    {
                        ((HiddenField)Master.FindControl("pagina").FindControl("hdfIdAplicacao" + i)).Value = "";
                    }

                    if ((CheckBox)Master.FindControl("pagina").FindControl("chkRedondo" + i) != null)
                    {
                        ((CheckBox)Master.FindControl("pagina").FindControl("chkRedondo" + i)).Checked = false;
                    }
                }

                // Atualiza a tela do pedido e exibe a mensagem de sucesso na tela
                ClientScript.RegisterClientScriptBlock(GetType(), "atualizar", "window.opener.redirectUrl(window.opener.location.href);\n", true);
                ClientScript.RegisterStartupScript(GetType(), "foco", "FindControl('txtCodAmb1', 'input').focus();\n", true);
                Glass.MensagemAlerta.ShowMsg("Produtos inseridos com sucesso!", Page);
            }
            catch (Exception ex)
            {
                Glass.MensagemAlerta.ErrorMsg("Falha ao inserir produtos no pedido.", ex, Page);
            }
        }
コード例 #8
0
        public static void EntityFrameworkConfigStart()
        {
            using (var ctx = new DropShippingContext())
            {
                var prod1 = new Produto()
                {
                    produtoId = 1, nome = "Smartphone Motorola Moto G7 Play 32GB Dual Chip Android 4G Câmera 13MP", quantComprada = 1, preco = 5000
                };
                var prod2 = new Produto()
                {
                    produtoId = 2, nome = "Celular Samsung Galaxy J6+ 2 Chip", quantComprada = 1, preco = 3000
                };
                var prod3 = new Produto()
                {
                    produtoId = 3, nome = "Celular Samsung Galaxy J2 Prime 16gb", quantComprada = 1, preco = 45000
                };
                var prod4 = new Produto()
                {
                    produtoId = 4, nome = "iPhone 7 32GB Preto Matte Desbloqueado IOS 10 Wi - fi + 4G Câmera 12MP", quantComprada = 1, preco = 55000
                };
                var prod5 = new Produto()
                {
                    produtoId = 5, nome = "iPhone 6 32GB Dourado IOS 8, Câmera 8MP, 4G Processador 1.4 Ghz Dual Core", quantComprada = 1, preco = 4000
                };
                var prod6 = new Produto()
                {
                    produtoId = 6, nome = "Smartphone Asus Zenfone 5 64GB Dual Chip Android 4G Câmera 12MP Prata", quantComprada = 1, preco = 2300
                };

                ctx.Produtos.Add(prod1);
                ctx.Produtos.Add(prod2);
                ctx.Produtos.Add(prod3);
                ctx.Produtos.Add(prod4);
                ctx.Produtos.Add(prod5);
                ctx.Produtos.Add(prod6);

                var pedido1 = new Pedido {
                    pedidoId = 1, clienteId = 10
                };
                var pedido2 = new Pedido {
                    pedidoId = 2, clienteId = 20
                };

                ctx.Pedidos.Add(pedido1);
                ctx.Pedidos.Add(pedido2);

                var prodPedidos1 = new ProdutosPedido {
                    pedidoId = 1, produtoId = 1
                };
                var prodPedidos2 = new ProdutosPedido {
                    pedidoId = 2, produtoId = 2
                };
                var prodPedidos3 = new ProdutosPedido {
                    pedidoId = 2, produtoId = 3
                };

                ctx.ProdutosPedidos.Add(prodPedidos1);
                ctx.ProdutosPedidos.Add(prodPedidos2);
                ctx.ProdutosPedidos.Add(prodPedidos3);

                var statusPedido1 = new StatusPedido {
                    pedidoId = 1, statusId = 1, dataAtualizacao = DateTime.Now.AddDays(-2)
                };
                var statusPedido2 = new StatusPedido {
                    pedidoId = 1, statusId = 2, dataAtualizacao = DateTime.Now.AddDays(-1)
                };
                var statusPedido3 = new StatusPedido {
                    pedidoId = 1, statusId = 3, dataAtualizacao = DateTime.Now
                };


                var statusPedido4 = new StatusPedido {
                    pedidoId = 2, statusId = 1, dataAtualizacao = DateTime.Now.AddDays(-4)
                };
                var statusPedido5 = new StatusPedido {
                    pedidoId = 2, statusId = 2, dataAtualizacao = DateTime.Now.AddDays(-3)
                };
                var statusPedido6 = new StatusPedido {
                    pedidoId = 2, statusId = 3, dataAtualizacao = DateTime.Now.AddDays(-2)
                };
                var statusPedido7 = new StatusPedido {
                    pedidoId = 2, statusId = 4, dataAtualizacao = DateTime.Now.AddDays(-1)
                };
                var statusPedido8 = new StatusPedido {
                    pedidoId = 2, statusId = 5, dataAtualizacao = DateTime.Now.AddHours(-4)
                };
                var statusPedido9 = new StatusPedido {
                    pedidoId = 2, statusId = 6, dataAtualizacao = DateTime.Now
                };

                ctx.StatusPedidos.Add(statusPedido1);
                ctx.StatusPedidos.Add(statusPedido2);
                ctx.StatusPedidos.Add(statusPedido3);
                ctx.StatusPedidos.Add(statusPedido4);
                ctx.StatusPedidos.Add(statusPedido5);
                ctx.StatusPedidos.Add(statusPedido6);
                ctx.StatusPedidos.Add(statusPedido7);
                ctx.StatusPedidos.Add(statusPedido8);
                ctx.StatusPedidos.Add(statusPedido9);

                FornecedorSeguranca fs = new FornecedorSeguranca();
                var fornecedor         = new Fornecedor
                {
                    nome  = "Fornecedor SA",
                    login = "******",
                    senha = fs.CalculateMD5Hash("senha@01"),
                    email = "*****@*****.**"
                };
                ctx.Fornecedores.Add(fornecedor);

                ctx.SaveChanges();
            }
        }
コード例 #9
0
        protected void lnk_InsProdComposicao_Click(object sender, ImageClickEventArgs e)
        {
            if (grdProdutosComposicao.PageCount > 1)
            {
                grdProdutosComposicao.PageIndex = grdProdutosComposicao.PageCount - 1;
            }

            Glass.UI.Web.Controls.ctrlBenef benef = (Glass.UI.Web.Controls.ctrlBenef)grdProdutosComposicao.FooterRow.FindControl("ctrl_BenefInserirComposicao");

            GridViewRow linhaControle = benef.Parent.Parent as GridViewRow;

            Control mainTable = linhaControle.Parent;

            while (mainTable.ID != "mainTable")
            {
                mainTable = mainTable.Parent;
            }

            var dtvPedido     = (DetailsView)mainTable.FindControl("dtvPedido");
            var hdfIdAmbiente = (HiddenField)mainTable.FindControl("hdfIdAmbiente") != null ? ((HiddenField)mainTable.FindControl("hdfIdAmbiente")).Value : string.Empty;

            uint    idPedido         = Request["IdPedido"].StrParaUint();
            int     idProd           = !string.IsNullOrEmpty(hdf_IdProdComposicao.Value) ? hdf_IdProdComposicao.Value.StrParaInt() : 0;
            string  alturaString     = ((TextBox)grdProdutosComposicao.FooterRow.FindControl("txt_AlturaComposicaoIns")).Text;
            string  alturaRealString = ((HiddenField)grdProdutosComposicao.FooterRow.FindControl("hdf_AlturaRealComposicaoIns")).Value;
            string  larguraString    = ((TextBox)grdProdutosComposicao.FooterRow.FindControl("txt_LarguraComposicaoIns")).Text;
            Single  altura           = Glass.Conversoes.StrParaFloat(alturaString);
            Single  alturaReal       = Glass.Conversoes.StrParaFloat(alturaRealString);
            int     largura          = !String.IsNullOrEmpty(larguraString) ? Glass.Conversoes.StrParaInt(larguraString) : 0;
            string  idProcessoStr    = ((HiddenField)grdProdutosComposicao.FooterRow.FindControl("hdf_IdProcessoComposicao")).Value;
            string  idAplicacaoStr   = ((HiddenField)grdProdutosComposicao.FooterRow.FindControl("hdf_IdAplicacaoComposicao")).Value;
            string  espessuraString  = ((TextBox)grdProdutosComposicao.FooterRow.FindControl("txt_EspessuraComposicao")).Text;
            float   espessura        = !String.IsNullOrEmpty(espessuraString) ? Glass.Conversoes.StrParaFloat(espessuraString) : 0;
            bool    redondo          = ((CheckBox)benef.FindControl("Redondo_chkSelecao")) != null ? ((CheckBox)benef.FindControl("Redondo_chkSelecao")).Checked : false;
            float   aliquotaIcms     = Glass.Conversoes.StrParaFloat(((HiddenField)grdProdutosComposicao.FooterRow.FindControl("hdf_AliquotaIcmsProdComposicao")).Value.Replace('.', ','));
            decimal valorIcms        = Glass.Conversoes.StrParaDecimal(((HiddenField)grdProdutosComposicao.FooterRow.FindControl("hdf_ValorIcmsProdComposicao")).Value.Replace('.', ','));

            float espBenef     = 0;
            int?  alturaBenef  = null;
            int?  larguraBenef = null;

            int  tipoEntrega = Glass.Conversoes.StrParaInt(((HiddenField)dtvPedido.FindControl("hdfTipoEntrega")).Value);
            uint idCliente   = Glass.Conversoes.StrParaUint(((HiddenField)dtvPedido.FindControl("hdfIdCliente")).Value);
            bool reposicao   = bool.Parse(((HiddenField)dtvPedido.FindControl("hdfIsReposicao")).Value);

            // Cria uma instância do ProdutosPedido
            ProdutosPedido prodPed = new ProdutosPedido();

            prodPed.IdPedido          = idPedido;
            prodPed.Qtde              = Glass.Conversoes.StrParaFloat(((TextBox)grdProdutosComposicao.FooterRow.FindControl("txt_QtdeComposicaoIns")).Text.Replace('.', ','));
            prodPed.ValorVendido      = Glass.Conversoes.StrParaDecimal(((TextBox)grdProdutosComposicao.FooterRow.FindControl("txt_ValorComposicaoIns")).Text);
            prodPed.PercDescontoQtde  = ((Glass.UI.Web.Controls.ctrlDescontoQtde)grdProdutosComposicao.FooterRow.FindControl("ctrl_DescontoQtdeComposicao")).PercDescontoQtde;
            prodPed.ValorTabelaPedido = ProdutoDAO.Instance.GetValorTabela(idProd, tipoEntrega, idCliente, false, reposicao, prodPed.PercDescontoQtde, (int?)idPedido, null, null);
            prodPed.Altura            = altura;
            prodPed.AlturaReal        = alturaReal;
            prodPed.Largura           = largura;
            prodPed.IdProd            = (uint)idProd;
            prodPed.Espessura         = espessura;
            prodPed.Redondo           = redondo;

            if (!string.IsNullOrEmpty(hdfIdAmbiente))
            {
                prodPed.IdAmbientePedido = Glass.Conversoes.StrParaUint(hdfIdAmbiente);
            }

            if (!String.IsNullOrEmpty(idAplicacaoStr))
            {
                prodPed.IdAplicacao = Glass.Conversoes.StrParaUint(idAplicacaoStr);
            }

            if (!String.IsNullOrEmpty(idProcessoStr))
            {
                prodPed.IdProcesso = Glass.Conversoes.StrParaUint(idProcessoStr);
            }

            prodPed.AliqIcms  = aliquotaIcms;
            prodPed.ValorIcms = valorIcms;

            var idLoja = PedidoDAO.Instance.ObtemIdLoja(null, idPedido);
            var loja   = LojaDAO.Instance.GetElement(idLoja);

            if (loja.CalcularIpiPedido && ClienteDAO.Instance.IsCobrarIpi(null, idCliente))
            {
                prodPed.AliqIpi = ProdutoDAO.Instance.ObtemAliqIpi(prodPed.IdProd);
            }

            prodPed.AlturaBenef     = alturaBenef;
            prodPed.LarguraBenef    = larguraBenef;
            prodPed.EspessuraBenef  = espBenef;
            prodPed.Beneficiamentos = benef.Beneficiamentos;
            prodPed.PedCli          = ((TextBox)grdProdutosComposicao.FooterRow.FindControl("txt_PedCliComposicao")).Text;
            prodPed.IdProdPedParent = (uint?)IdProdPed;

            uint idProdPed = 0;

            try
            {
                // Se o pedido estiver diferente de ativo-ativo/conferência não permite inserir produtos
                var situacao = PedidoDAO.Instance.ObtemSituacao(null, prodPed.IdPedido);
                if (situacao != Glass.Data.Model.Pedido.SituacaoPedido.Ativo && situacao != Glass.Data.Model.Pedido.SituacaoPedido.AtivoConferencia)
                {
                    MensagemAlerta.ShowMsg("Não é possível incluir produtos em pedidos que não estejam ativos.", Page);
                    return;
                }

                // Insere o produto_pedido
                idProdPed = ProdutosPedidoDAO.Instance.InsertEAtualizaDataEntrega(prodPed);

                ((HiddenField)grdProdutosComposicao.FooterRow.FindControl("hdf_AlturaRealComposicaoIns")).Value = "";

                if (Glass.Configuracoes.PedidoConfig.TelaCadastro.ManterCodInternoCampoAoInserirProduto)
                {
                    Page.ClientScript.RegisterClientScriptBlock(typeof(string), "novoProd",
                                                                "ultimoCodProd = '" + ProdutoDAO.Instance.GetCodInterno((int)idProd) + "';", true);
                }

                grdProdutosComposicao.DataBind();

                var grdProdutos = grdProdutosComposicao.Parent;
                while (grdProdutos.ID != "grdProdutos")
                {
                    grdProdutos = grdProdutos.Parent;
                }

                ((DetailsView)dtvPedido).DataBind();
                ((GridView)grdProdutos).DataBind();
            }
            catch (Exception ex)
            {
                Glass.MensagemAlerta.ErrorMsg("Falha ao incluir produto no Pedido.", ex, Page);
                return;
            }
        }
コード例 #10
0
        public uint InsertFromPedido(int idTrocaDev, int idProdPed, decimal qtde)
        {
            using (var transaction = new GDATransaction())
            {
                try
                {
                    transaction.BeginTransaction();

                    ProdutosPedido prodPed = ProdutosPedidoDAO.Instance.GetElementByPrimaryKey(transaction, idProdPed);

                    Pedido ped = PedidoDAO.Instance.GetElementByPrimaryKey(transaction, prodPed.IdPedido);

                    var qtdeOriginal = prodPed.Qtde;
                    List <ProdutoTrocadoBenef> lstProdTrocBenef = new List <ProdutoTrocadoBenef>();

                    // Se a quantidade disponível para ser trocada for diferente da qtd do produto recalcula o total e os beneficiamentos
                    if (prodPed.Qtde != (float)qtde)
                    {
                        // Recalcula o metro quadrado
                        prodPed.TotM      = (prodPed.TotM / prodPed.Qtde) * (float)qtde;
                        prodPed.TotM2Calc = prodPed.TotM2Calc > 0 ? (prodPed.TotM2Calc / prodPed.Qtde) * (float)qtde : prodPed.TotM;

                        prodPed.Qtde = (float)qtde;
                        int tipoCalc = GrupoProdDAO.Instance.TipoCalculo(transaction, (int)prodPed.IdProd);

                        if (tipoCalc == (uint)TipoCalculoGrupoProd.Qtd || tipoCalc == (uint)TipoCalculoGrupoProd.QtdM2 || tipoCalc == (uint)TipoCalculoGrupoProd.QtdDecimal)
                        {
                            prodPed.Total = (decimal)prodPed.Qtde * prodPed.ValorVendido;
                        }
                        /* Chamado 62311. */
                        else if (prodPed.TotM2Calc > 0)
                        {
                            prodPed.Total = (decimal)prodPed.TotM2Calc * prodPed.ValorVendido;
                        }
                        else if (tipoCalc == (int)TipoCalculoGrupoProd.ML)
                        {
                            prodPed.Total = prodPed.ValorVendido * (decimal)(prodPed.Altura * prodPed.Qtde);
                        }
                        else if (prodPed.Altura > 0)
                        {
                            prodPed.Total = (prodPed.ValorVendido * (decimal)(prodPed.Altura * prodPed.Qtde)) / 6;
                        }
                        else
                        {
                            prodPed.Total = prodPed.ValorVendido * (decimal)prodPed.Qtde;
                        }

                        // Recalcula o valor dos beneficiamentos para considerar apenas a quantidade a ser trocada escolhido
                        foreach (ProdutoTrocadoBenef ptb in prodPed.Beneficiamentos.ToProdutosTrocado())
                        {
                            ptb.Valor = (ptb.Valor / (decimal)qtdeOriginal) * qtde;
                            lstProdTrocBenef.Add(ptb);
                        }
                    }
                    else
                    {
                        // Se a quantidade a ser trocada for a mesma quantidade do produto original, insere todos os beneficiamentos sem recalcular
                        lstProdTrocBenef = prodPed.Beneficiamentos;
                    }

                    ProdutoTrocaDevolucao objInsert = new ProdutoTrocaDevolucao();
                    objInsert.IdTrocaDevolucao      = (uint)idTrocaDev;
                    objInsert.IdProdPed             = (uint)idProdPed;
                    objInsert.IdProd                = prodPed.IdProd;
                    objInsert.Qtde                  = (float)qtde;
                    objInsert.Altura                = prodPed.Altura;
                    objInsert.AlturaReal            = prodPed.AlturaReal;
                    objInsert.Beneficiamentos       = lstProdTrocBenef;
                    objInsert.CustoProd             = prodPed.CustoProd;
                    objInsert.Espessura             = prodPed.Espessura;
                    objInsert.IdAplicacao           = prodPed.IdAplicacao;
                    objInsert.IdProcesso            = prodPed.IdProcesso;
                    objInsert.Largura               = prodPed.Largura;
                    objInsert.PedCli                = prodPed.PedCli;
                    objInsert.PercDescontoQtde      = prodPed.PercDescontoQtde;
                    objInsert.Redondo               = prodPed.Redondo;
                    objInsert.Total                 = prodPed.Total;
                    objInsert.TotM                  = prodPed.TotM;
                    objInsert.TotM2Calc             = prodPed.TotM2Calc;
                    objInsert.ValorAcrescimo        = prodPed.ValorAcrescimo;
                    objInsert.ValorAcrescimoProd    = prodPed.ValorAcrescimoProd;
                    objInsert.ValorDesconto         = prodPed.ValorDesconto;
                    objInsert.ValorDescontoProd     = prodPed.ValorDescontoProd;
                    objInsert.ValorDescontoQtde     = prodPed.ValorDescontoQtde;
                    objInsert.ValorVendido          = prodPed.ValorVendido;
                    objInsert.AlterarEstoque        = true;
                    objInsert.ValorDescontoCliente  = prodPed.ValorDescontoCliente;
                    objInsert.ValorAcrescimoCliente = prodPed.ValorAcrescimoCliente;
                    objInsert.ValorUnitarioBruto    = prodPed.ValorUnitarioBruto;
                    objInsert.TotalBruto            = prodPed.TotalBruto;
                    objInsert.ValorBenef            = prodPed.ValorBenef;

                    // Soma o ICMS e IPI ao produto da troca, caso o pedido tenha cobrado
                    if (ped.ValorIcms > 0 || ped.ValorIpi > 0)
                    {
                        if (ped.ValorIcms > 0)
                        {
                            objInsert.Total += prodPed.ValorIcms / (decimal)prodPed.Qtde * (decimal)objInsert.Qtde;
                        }

                        if (ped.ValorIpi > 0)
                        {
                            objInsert.Total += prodPed.ValorIpi / (decimal)prodPed.Qtde * (decimal)objInsert.Qtde;
                        }

                        decimal?valorUnitario = ValorUnitario.Instance.CalcularValor(transaction, ped, objInsert, objInsert.Total);
                        if (valorUnitario.HasValue)
                        {
                            objInsert.ValorVendido = valorUnitario.Value;
                        }
                    }

                    if (objInsert.IdProdPed == null)
                    {
                        return(0);
                    }

                    objInsert.IdPedido = ProdutosPedidoDAO.Instance.ObtemIdPedido(transaction, objInsert.IdProdPed.Value);

                    if (!PedidoConfig.RatearDescontoProdutos && objInsert.IdPedido > 0)
                    {
                        float percDesc = PedidoDAO.Instance.GetPercDesc(transaction, objInsert.IdPedido.Value);

                        if (percDesc > 0)
                        {
                            int tipoCalc = GrupoProdDAO.Instance.TipoCalculo(transaction, (int)objInsert.IdProd);

                            objInsert.Total -= (objInsert.Total + objInsert.ValorBenef) * (decimal)percDesc;

                            if (tipoCalc == (uint)TipoCalculoGrupoProd.Qtd || tipoCalc == (uint)TipoCalculoGrupoProd.QtdM2 || tipoCalc == (uint)TipoCalculoGrupoProd.QtdDecimal)
                            {
                                objInsert.ValorVendido = objInsert.Total / (decimal)objInsert.Qtde;
                            }
                            else if (objInsert.TotM2Calc > 0)
                            {
                                objInsert.ValorVendido = objInsert.Total / (decimal)objInsert.TotM2Calc;
                            }
                            else if (tipoCalc == (int)TipoCalculoGrupoProd.ML)
                            {
                                objInsert.ValorVendido = objInsert.Total / (decimal)(objInsert.Altura * objInsert.Qtde);
                            }
                            else if (objInsert.Altura > 0)
                            {
                                objInsert.ValorVendido = (objInsert.Total * 6) / (decimal)(objInsert.Altura * objInsert.Qtde);
                            }
                            else
                            {
                                objInsert.ValorVendido = objInsert.Total / (decimal)objInsert.Qtde;
                            }
                        }
                    }

                    uint retorno = base.Insert(transaction, objInsert);

                    ProdutoTrocaDevolucaoBenefDAO.Instance.DeleteByProdutoTrocaDev(transaction, retorno);
                    foreach (ProdutoTrocaDevolucaoBenef p in objInsert.Beneficiamentos.ToProdutosTrocaDevolucao(retorno))
                    {
                        ProdutoTrocaDevolucaoBenefDAO.Instance.Insert(transaction, p);
                    }

                    UpdateValorBenef(transaction, retorno);
                    TrocaDevolucaoDAO.Instance.UpdateTotaisTrocaDev(transaction, objInsert.IdTrocaDevolucao);


                    transaction.Commit();
                    transaction.Close();

                    return(retorno);
                }
                catch
                {
                    transaction.Rollback();
                    transaction.Close();
                    throw;
                }
            }
        }
コード例 #11
0
        private void CriaLinhaTabela(Table tblImagens, bool permitirAlterarImagem, string item, PecaItemProjeto peca, ProdutosPedidoEspelho ppe, ProdutosPedido pp, string msgErro)
        {
            TableRow  linha     = new TableRow();
            TableCell cabecalho = new TableCell();
            TableCell logPopup  = new TableCell();
            TableCell botoes    = new TableCell();
            TableCell upload    = new TableCell();

            tblImagens.Rows.Add(linha);
            linha.Cells.AddRange(new TableCell[] { cabecalho, logPopup, botoes });


            if (pp != null)
            {
                var ctrl = (Controls.ctrlImagemPopup)LoadControl("~/Controls/ctrlImagemPopup.ascx");
                ctrl.ImageUrl = pp.ImagemUrl;

                botoes.Controls.Add(ctrl);

                ImageButton exc = new ImageButton();
                exc.OnClientClick = "if (!confirm('Deseja excluir a imagem atribuída à peça?')) return false;";
                exc.ImageUrl      = "~/Images/ExcluirGrid.gif";
                exc.Click        += new ImageClickEventHandler(imgExcluir_Click);
                exc.PreRender    += new EventHandler(imgExcluir_PreRender);

                // Exibe o Log de alteração da Imagem do Produto Pedido
                Controls.ctrlLogPopup logPP = (Controls.ctrlLogPopup)LoadControl("~/Controls/ctrlLogPopup.ascx");
                logPP.Tabela     = LogAlteracao.TabelaAlteracao.ImagemProdPed;
                logPP.IdRegistro = pp.IdProdPed;
                logPopup.Controls.Add(logPP);

                botoes.Controls.Add(exc);

                FileUpload upl = new FileUpload();
                upl.ID = "flu" + (tblImagens.Rows.Count - 1);
                upload.Controls.Add(upl);
                linha.Cells.Add(upload);

                return;
            }


            TipoArquivoMesaCorte?tipoArquivo = null;

            if (peca != null)
            {
                tipoArquivo = PecaProjetoModeloDAO.Instance.ObtemTipoArquivoMesaCorte(peca.IdPecaProjMod);
            }

            // Caso seja permitido alterar a imagem da peça, é necessário verificar ainda se a peça possui fml associado.
            if (permitirAlterarImagem &&
                (tipoArquivo == null ||
                 (tipoArquivo.Value != TipoArquivoMesaCorte.FML &&
                  tipoArquivo != TipoArquivoMesaCorte.DXF)))
            {
                if (peca != null)
                {
                    var flags = FlagArqMesaDAO.Instance.ObtemPorPecaProjMod((int)peca.IdPecaProjMod, true);

                    /* Chamado 24392. */
                    if (flags.Count(f => f.Descricao == TipoArquivoMesaCorte.FML.ToString()) == 0 &&
                        flags.Count(f => f.Descricao == TipoArquivoMesaCorte.DXF.ToString()) == 0)
                    {
                        linha.Cells.Add(upload);
                    }
                }
                else
                {
                    linha.Cells.Add(upload);
                }
            }
            else if (permitirAlterarImagem)
            {
                permitirAlterarImagem = false;

                var geraDXF = PCPConfig.EmpresaGeraArquivoDxf ? "DXF" : string.Empty;
                var geraFML = PCPConfig.EmpresaGeraArquivoDxf ? "FML" : string.Empty;
                var tiposArquivoBloquear = !string.IsNullOrEmpty(geraDXF) && !string.IsNullOrEmpty(geraFML) ? $"{geraDXF} ou {geraFML}" : geraDXF + geraFML;
                msgErro = $@"Não é possível alterar imagens de peças que tenham arquivos de mesa associados {tiposArquivoBloquear}.";
            }

            if (!String.IsNullOrEmpty(item))
            {
                cabecalho.Text = "Item " + item;
            }

            cabecalho.Attributes.Add("item", item);
            cabecalho.Attributes.Add("idPecaItemProj", peca != null ? peca.IdPecaItemProj.ToString() : String.Empty);

            if (peca != null)
            {
                Controls.ctrlLogPopup log = (Controls.ctrlLogPopup)LoadControl("~/Controls/ctrlLogPopup.ascx");
                log.Tabela     = LogAlteracao.TabelaAlteracao.ImagemProducao;
                peca.Item      = item;
                log.IdRegistro = peca.IdLog;
                logPopup.Controls.Add(log);
            }

            // Exibe o Log de alteração da Imagem do Produto Pedido Espelho
            Controls.ctrlLogPopup logPPE = (Controls.ctrlLogPopup)LoadControl("~/Controls/ctrlLogPopup.ascx");
            logPPE.Tabela     = LogAlteracao.TabelaAlteracao.ImagemProdPedEsp;
            logPPE.IdRegistro = ppe.IdProdPed;
            logPopup.Controls.Add(logPPE);

            if (ppe.TemSvgAssociado)
            {
                Controls.ctrlImageCadProject ctrl = (Controls.ctrlImageCadProject)LoadControl("~/Controls/ctrlImageCadProject.ascx");
                ctrl.IdProdPedEsp         = (int)ppe.IdProdPed;
                ctrl.DiminuirMedidasPopUp = true;

                ctrl.Legenda = peca != null ? "Ite" + (peca.Item.IndexOf(" ") > -1 ? "ns" : "m") + ": " + peca.Item : string.Empty;
                if (!string.IsNullOrEmpty(ppe.LegendaImagemPeca))
                {
                    ctrl.Legenda = (peca != null ? "<br />" : string.Empty) + ppe.LegendaImagemPeca;
                }

                botoes.Controls.Add(ctrl);
            }
            else
            {
                Controls.ctrlImagemPopup ctrl = (Controls.ctrlImagemPopup)LoadControl("~/Controls/ctrlImagemPopup.ascx");
                ctrl.ImageUrl = ppe.ImagemUrl;

                ctrl.Legenda = peca != null ? "Ite" + (peca.Item.IndexOf(" ") > -1 ? "ns" : "m") + ": " + peca.Item : String.Empty;
                if (!String.IsNullOrEmpty(ppe.LegendaImagemPeca))
                {
                    ctrl.Legenda = (peca != null ? "<br />" : String.Empty) + ppe.LegendaImagemPeca;
                }

                botoes.Controls.Add(ctrl);
            }

            if (permitirAlterarImagem)
            {
                var pedidoExportado = PedidoExportacaoDAO.Instance.GetSituacaoExportacao(null, pp != null ? pp.IdPedido : ppe != null ? ppe.IdPedido : 0) == PedidoExportacao.SituacaoExportacaoEnum.Exportado;

                if (!pedidoExportado)
                {
                    ImageButton exc = new ImageButton();
                    exc.OnClientClick = "if (!confirm('Deseja excluir a imagem atribuída à peça?')) return false;";
                    exc.ImageUrl      = "~/Images/ExcluirGrid.gif";
                    exc.Click        += new ImageClickEventHandler(this.imgExcluir_Click);
                    exc.PreRender    += new EventHandler(this.imgExcluir_PreRender);

                    botoes.Controls.Add(exc);

                    // Se o processo da peça for fixo, não permite anexar imagem
                    if (ppe.IdProcesso == null || ppe.IdProcesso != ProjetoConfig.Caixilho.ProcessoCaixilho)
                    {
                        FileUpload upl = new FileUpload();
                        upl.ID = "flu" + (tblImagens.Rows.Count - 1);
                        upload.Controls.Add(upl);
                    }
                }
                else
                {
                    Label msg = new Label();
                    msg.Text        = "Não é possível alterar imagens de peças de pedidos exportado.";
                    msg.ForeColor   = System.Drawing.Color.Red;
                    msg.Style.Value = "display: inline-block; text-align: right; position: relative; left: 6px";
                    botoes.Controls.Add(msg);
                }
            }
            else
            {
                if (ppe.IdProcesso == ProjetoConfig.Caixilho.ProcessoCaixilho)
                {
                    msgErro = "Caixilhos não tem imagens associadas";
                }

                Label msg = new Label();
                msg.Text        = msgErro;
                msg.ForeColor   = System.Drawing.Color.Red;
                msg.Style.Value = "display: inline-block; text-align: right; position: relative; left: 6px";

                botoes.Controls.Add(msg);
            }
        }
コード例 #12
0
        public string GerarPedido(string idCli, string tipoPedido, string tipoEntrega, string dataEntrega, string produtos, string espessura)
        {
            Glass.Data.Model.Pedido ped = new Glass.Data.Model.Pedido();
            ProdutosPedido          prodPed;

            uint idPedido = 0;

            try
            {
                LoginUsuario login = UserInfo.GetUserInfo;

                ped.IdCli = Glass.Conversoes.StrParaUint(idCli);

                if (ClienteDAO.Instance.GetSituacao(ped.IdCli) != (int)SituacaoCliente.Ativo)
                {
                    throw new Exception("O cliente não está ativo.");
                }

                ped.IdFunc              = login.CodUser;
                ped.IdLoja              = FuncionarioDAO.Instance.ObtemIdLoja(ped.IdFunc);
                ped.TipoVenda           = (int)Glass.Data.Model.Pedido.TipoVendaPedido.AVista;
                ped.TipoPedido          = Glass.Conversoes.StrParaInt(tipoPedido);
                ped.TipoEntrega         = Glass.Conversoes.StrParaInt(tipoEntrega);
                ped.FromOrcamentoRapido = true;
                ped.DataPedido          = DateTime.Now;
                ped.DataEntregaString   = dataEntrega;
                idPedido = PedidoDAO.Instance.Insert(ped);

                // Cria o ambiente, se a empresa usar
                uint?idAmbientePedido = null;
                if (PedidoConfig.DadosPedido.AmbientePedido)
                {
                    AmbientePedido ambiente = new AmbientePedido();
                    ambiente.IdPedido  = idPedido;
                    ambiente.Ambiente  = ((Glass.Data.Model.Pedido.TipoEntregaPedido)ped.TipoEntrega).ToString();
                    ambiente.Descricao = ambiente.Ambiente;

                    idAmbientePedido = AmbientePedidoDAO.Instance.Insert(ambiente);
                }

                produtos = produtos.Replace("\r\n", "\n");
                string[] vetProds = produtos.TrimEnd('\n').Split('\n');

                // Para cada produto do orçamento rápido
                foreach (string prod in vetProds)
                {
                    // [0]Id do produto [1]Valor produto (sem benef.) [2]Valor total [3]Qtd [4]Altura [5]AlturaCalc [6]Largura [7]Redondo [8]Area total
                    // [9]Descrição [10]Custo, [11]Valor tabela [12]Espessura [13]Perc. Desc. Qtde [14]ServicoInfo [15]Perc. Comissão [16]IdProcesso [17]IdAplicacao
                    string[] dadosProd = prod.Split('\t');

                    prodPed                  = new ProdutosPedido();
                    prodPed.IdPedido         = idPedido;
                    prodPed.IdAmbientePedido = idAmbientePedido;
                    prodPed.IdProd           = Glass.Conversoes.StrParaUint(dadosProd[0]);
                    prodPed.Qtde             = float.Parse(dadosProd[3].Replace('.', ','));

                    prodPed.PercDescontoQtde  = !String.IsNullOrEmpty(dadosProd[13]) ? float.Parse(dadosProd[13].Replace('.', ',')) : 0;
                    prodPed.ValorTabelaPedido = ProdutoDAO.Instance.GetValorTabela((int)prodPed.IdProd, ped.TipoEntrega, ped.IdCli, false, false, prodPed.PercDescontoQtde,
                                                                                   (int?)idPedido, null, null, !String.IsNullOrEmpty(dadosProd[5]) ? float.Parse(dadosProd[5]) : 0f);
                    prodPed.ValorVendido = decimal.Parse(dadosProd[1].Replace('.', ','), System.Globalization.NumberStyles.AllowDecimalPoint);

                    if (ProdutoDAO.Instance.IsPrecoTabela(prodPed.IdProd, prodPed.ValorVendido))
                    {
                        prodPed.ValorVendido = prodPed.ValorTabelaPedido;
                    }

                    prodPed.AlturaReal = !String.IsNullOrEmpty(dadosProd[4]) ? float.Parse(dadosProd[4]) : 0f;
                    prodPed.Altura     = !String.IsNullOrEmpty(dadosProd[5]) ? float.Parse(dadosProd[5]) : 0f;
                    prodPed.Largura    = !String.IsNullOrEmpty(dadosProd[6]) ? Glass.Conversoes.StrParaInt(dadosProd[6]) : 0;
                    prodPed.Redondo    = dadosProd[7] == "true";
                    if (!String.IsNullOrEmpty(dadosProd[8]) && !dadosProd[8].Contains("("))
                    {
                        prodPed.TotM = Single.Parse(dadosProd[8].Replace('.', ','), System.Globalization.NumberStyles.AllowDecimalPoint);
                    }
                    prodPed.Total = decimal.Parse(dadosProd[2].Replace('.', ','), System.Globalization.NumberStyles.AllowDecimalPoint);
                    if (!String.IsNullOrEmpty(espessura))
                    {
                        prodPed.Espessura = Glass.Conversoes.StrParaInt(espessura);
                    }
                    prodPed.CustoProd                 = decimal.Parse(dadosProd[10].Replace('.', ','));
                    prodPed.ValorTabelaOrcamento      = decimal.Parse(dadosProd[11].Replace('.', ','));
                    prodPed.TipoCalculoUsadoOrcamento = Glass.Data.DAL.GrupoProdDAO.Instance.TipoCalculo((int)prodPed.IdProd);
                    prodPed.TipoCalculoUsadoPedido    = prodPed.TipoCalculoUsadoOrcamento;
                    prodPed.Espessura                 = !String.IsNullOrEmpty(dadosProd[12]) ? Glass.Conversoes.StrParaFloat(dadosProd[12]) : 0;
                    prodPed.IdProcesso                = Glass.Conversoes.StrParaUintNullable(dadosProd[16]);
                    prodPed.IdAplicacao               = Glass.Conversoes.StrParaUintNullable(dadosProd[17]);

                    if (!String.IsNullOrEmpty(dadosProd[14]))
                    {
                        GenericBenefCollection benef = new GenericBenefCollection();
                        benef.AddBenefFromServicosInfo(dadosProd[14]);
                        prodPed.Beneficiamentos = benef;
                    }

                    prodPed.ValorComissao = prodPed.Total * (decimal)(Glass.Conversoes.StrParaFloat(dadosProd[15]) / 100);
                    uint idProdPed = ProdutosPedidoDAO.Instance.Insert(prodPed);
                }

                // Atualiza o total do pedido
                PedidoDAO.Instance.UpdateTotalPedido(idPedido);

                return("ok\tPedido Gerado com sucesso.\t" + idPedido);
            }
            catch (Exception ex)
            {
                PedidoDAO.Instance.DeleteByPrimaryKey(idPedido);

                return("Erro\t" + Glass.MensagemAlerta.FormatErrorMsg("Falha ao gerar pedido.", ex));
            }
        }
コード例 #13
0
        public DevDiveReturn SaveResultado(ProdutosPedido produto, IEnumerable <ResultadoAnalise> resultados,
                                           IEnumerable <SerieCertificado> dados)
        {
            _conn.Open();
            var tran = _conn.BeginTransaction();

            try
            {
                foreach (var resultadoAnalise in resultados)
                {
                    if (resultadoAnalise.Id == null)
                    {
                        new SqlCommand($@"INSERT INTO [dbo].[tblcertificadoresultado]
                                                ( [IdPedido] ,
                                                  [IdSerie] ,
                                                  [IdAnalise] ,
                                                  [Resultado]
                                                )
                                        VALUES  ( {resultadoAnalise.IdPedido} ,
                                                  {resultadoAnalise.IdSerie} ,
                                                  {resultadoAnalise.IdAnalise} ,
                                                  '{resultadoAnalise.Resultado}'
                                                )", _conn, tran).ExecuteNonQuery();
                    }
                    else
                    {
                        new SqlCommand($@"UPDATE [dbo].[tblcertificadoresultado]
                                                SET [IdPedido]={resultadoAnalise.IdPedido},
                                                  [IdSerie]={resultadoAnalise.IdSerie} ,
                                                  [IdAnalise]={resultadoAnalise.IdAnalise} ,
                                                  [Resultado]='{resultadoAnalise.Resultado}'
                                               WHERE [tblcertificadoresultado].[Id]={resultadoAnalise.Id} ", _conn,
                                       tran).ExecuteNonQuery();
                    }
                }

                new SqlCommand(
                    $@"DELETE FROM [dbo].[tblseriecertificado] WHERE [tblseriecertificado].[IdSerie]={
                            produto.IdSerie
                        }", _conn, tran).ExecuteNonQuery();

                var query = $@"INSERT INTO [dbo].[tblseriecertificado]
                            ( [IdSerie] ,
                              [Code] ,
                              [Batch] ,
                              [BotanicalSource] ,
                              [Family] ,
                              [Origin] ,
                              [HarvestRegion] ,
                              [UsedPart] ,
                              [Preservative] ,
                              [Colorant] ,
                              [Solvent] ,
                              [Carrier] ,
                              [DryResidue] ,
                              [Ratio] ,
                              [Irradiation] ,
                              [GMO] ,
                              [BSE]
                            )
                    VALUES  (";

                foreach (var dado in dados)
                {
                    switch (dado.Info)
                    {
                    case "Id":
                        continue;

                    case "IdSerie":
                        query += produto.IdSerie.ToString();
                        break;

                    case "Batch":
                        query += "'" + produto.Serie + "'";
                        break;

                    default:
                        query += string.IsNullOrEmpty(dado.Value)? "NULL" : "'" + dado.Value + "'";
                        break;
                    }
                    query += ",";
                }

                query = query.Substring(0, query.Length - 1) + ")";

                new SqlCommand(query, _conn, tran).ExecuteNonQuery();

                tran.Commit();

                return(new DevDiveReturn {
                    Message = "Resultados salvos com sucesso!"
                });
            }
            catch (Exception ex)
            {
                tran.Rollback();

                return(new DevDiveReturn
                {
                    Errors = new List <string> {
                        ex.Message + "\r\n" + ex.InnerException
                    },
                    Message = "Falha ao salvar resultado!"
                });
            }
            finally
            {
                _conn?.Close();
            }
        }
コード例 #14
0
        public uint InsertFromPedido(GDASession session, int idTrocaDev, int idProdPed, decimal qtde, string etiquetas,
                                     bool?alterarEstoque = null, bool comDefeito = false)
        {
            ProdutosPedido prodPed = ProdutosPedidoDAO.Instance.GetElementByPrimaryKey(session, idProdPed);

            Pedido ped = PedidoDAO.Instance.GetElementByPrimaryKey(session, prodPed.IdPedido);

            var qtdeOriginal = prodPed.Qtde;
            List <ProdutoTrocadoBenef> lstProdTrocBenef = new List <ProdutoTrocadoBenef>();

            var qtdProdutoTrocado = ObtemQtdTrocadoDevolvidoFinalizado(session, prodPed.IdProdPed);

            if (prodPed.Qtde != prodPed.QtdSaida + qtdProdutoTrocado)
            {
                throw new Exception(@"Não é possível inserir os produtos selecionados na troca\Devolução, pois os mesmos não foram entregues totalmente.");
            }

            //Verifica se tem quantidade suficiente para troca
            var qtdeDisponivelTroca = ObtemQuantidadeDisponivelParaTroca(session, (uint)idProdPed);

            if (qtde > qtdeDisponivelTroca)
            {
                throw new Exception("Não a quantidade disponível para troca");
            }

            //Valida as etiquetas informadas
            if (!string.IsNullOrWhiteSpace(etiquetas))
            {
                var lstEtq = etiquetas.Trim().Split(',').Select(f => f.Trim());

                if (lstEtq.Count() > qtde)
                {
                    throw new Exception("A quantidade de etiquetas informadas é maior que a quantidade selecionada. Insira o produto novamente.");
                }

                foreach (var etq in lstEtq)
                {
                    var contadorEtiquetasChapa = 0;
                    var contadorEtiquetasBox   = 0;

                    if (etq.ToUpper().Substring(0, 1).Equals("N"))
                    {
                        if (contadorEtiquetasBox > 0)
                        {
                            throw new Exception("Não é possível inserir etiqueta de box junto com etiquetas de chapas");
                        }

                        var idProd        = ProdutosNfDAO.Instance.GetIdProdByEtiqueta(session, etq);
                        var e             = etq.Split(';')[0];
                        var idPedExp      = ProdutoImpressaoDAO.Instance.ObterIdPedidoExpedicaoPelaEtiqueta(session, etq);
                        var chapaDeuSaida = ChapaCortePecaDAO.Instance.ChapaDeuSaidaEmPedidoRevenda(etq);

                        if (!chapaDeuSaida)
                        {
                            throw new Exception("A etiqueta " + e + " ainda não foi entregue. Insira o produto novamente");
                        }

                        if (idPedExp.GetValueOrDefault(0) != prodPed.IdPedido)
                        {
                            throw new Exception("A etiqueta " + e + " não esta vinculada ao pedido da troca/devolução. Insira o produto novamente");
                        }

                        if (idProd != prodPed.IdProd)
                        {
                            throw new Exception("O produto da etiqueta " + e + " é diferente do produto selecionado. Insira o produto novamente");
                        }

                        contadorEtiquetasChapa++;
                    }
                    else
                    {
                        if (contadorEtiquetasChapa > 0)
                        {
                            throw new Exception("Não é possível inserir etiqueta de box junto com etiquetas de chapas");
                        }

                        var idProdPedEtq = ProdutoPedidoProducaoDAO.Instance.ObtemIdProdPed(session, etq);
                        var idProdEtq    = ProdutosPedidoEspelhoDAO.Instance.ObtemIdProd(session, idProdPedEtq);
                        var idPedExp     = ProdutoPedidoProducaoDAO.Instance.ObtemIdPedidoExpedicao(etq);
                        var situacaoEtq  = ProdutoPedidoProducaoDAO.Instance.ObtemSituacaoProducao(session, etq);

                        if (situacaoEtq != SituacaoProdutoProducao.Entregue)
                        {
                            throw new Exception("A etiqueta " + etq + " ainda não foi entregue. Insira o produto novamente");
                        }

                        if (idPedExp.GetValueOrDefault(0) != prodPed.IdPedido)
                        {
                            throw new Exception("A etiqueta " + etq + " não esta vinculada ao pedido da troca/devolução. Insira o produto novamente");
                        }

                        if (idProdEtq != prodPed.IdProd)
                        {
                            throw new Exception("O produto da etiqueta " + etq + " é diferente do produto selecionado. Insira o produto novamente");
                        }

                        contadorEtiquetasBox++;
                    }
                }
            }

            // Se a quantidade disponível para ser trocada for diferente da qtd do produto recalcula o total e os beneficiamentos
            if (prodPed.Qtde != (float)qtde)
            {
                // Recalcula o metro quadrado
                prodPed.TotM      = (prodPed.TotM / prodPed.Qtde) * (float)qtde;
                prodPed.TotM2Calc = prodPed.TotM2Calc > 0 ? (prodPed.TotM2Calc / prodPed.Qtde) * (float)qtde : prodPed.TotM;

                prodPed.Qtde = (float)qtde;
                int tipoCalc = Glass.Data.DAL.GrupoProdDAO.Instance.TipoCalculo(session, (int)prodPed.IdProd);

                if (tipoCalc == (uint)TipoCalculoGrupoProd.Qtd || tipoCalc == (uint)TipoCalculoGrupoProd.QtdM2 || tipoCalc == (uint)TipoCalculoGrupoProd.QtdDecimal)
                {
                    prodPed.Total = (decimal)prodPed.Qtde * prodPed.ValorVendido;
                }
                /* Chamado 62311. */
                else if (prodPed.TotM2Calc > 0)
                {
                    prodPed.Total = (decimal)prodPed.TotM2Calc * prodPed.ValorVendido;
                }
                else if (tipoCalc == (int)Glass.Data.Model.TipoCalculoGrupoProd.ML)
                {
                    prodPed.Total = prodPed.ValorVendido * (decimal)(prodPed.Altura * prodPed.Qtde);
                }
                else if (prodPed.Altura > 0)
                {
                    prodPed.Total = (prodPed.ValorVendido * (decimal)(prodPed.Altura * prodPed.Qtde)) / 6;
                }
                else
                {
                    prodPed.Total = prodPed.ValorVendido * (decimal)prodPed.Qtde;
                }

                // Recalcula o valor dos beneficiamentos para considerar apenas a quantidade a ser trocada escolhido
                foreach (ProdutoTrocadoBenef ptb in prodPed.Beneficiamentos.ToProdutosTrocado())
                {
                    ptb.Valor = (ptb.Valor / (decimal)qtdeOriginal) * (decimal)qtde;
                    lstProdTrocBenef.Add(ptb);
                }
            }
            else
            {
                // Se a quantidade a ser trocada for a mesma quantidade do produto original, insere todos os beneficiamentos sem recalcular
                lstProdTrocBenef = prodPed.Beneficiamentos;
            }

            ProdutoTrocado novo = new ProdutoTrocado();

            novo.IdTrocaDevolucao      = (uint)idTrocaDev;
            novo.IdProdPed             = (uint)idProdPed;
            novo.IdProd                = prodPed.IdProd;
            novo.Qtde                  = (float)qtde;
            novo.Altura                = prodPed.Altura;
            novo.AlturaReal            = prodPed.AlturaReal;
            novo.Beneficiamentos       = lstProdTrocBenef;
            novo.CustoProd             = prodPed.CustoProd;
            novo.Espessura             = prodPed.Espessura;
            novo.IdAplicacao           = prodPed.IdAplicacao;
            novo.IdProcesso            = prodPed.IdProcesso;
            novo.Largura               = prodPed.Largura;
            novo.PedCli                = prodPed.PedCli;
            novo.PercDescontoQtde      = prodPed.PercDescontoQtde;
            novo.Redondo               = prodPed.Redondo;
            novo.Total                 = prodPed.Total;
            novo.TotM                  = prodPed.TotM;
            novo.TotM2Calc             = prodPed.TotM2Calc;
            novo.ValorAcrescimo        = prodPed.ValorAcrescimo;
            novo.ValorAcrescimoProd    = prodPed.ValorAcrescimoProd;
            novo.ValorDesconto         = prodPed.ValorDesconto;
            novo.ValorDescontoProd     = prodPed.ValorDescontoProd;
            novo.ValorVendido          = prodPed.ValorVendido;
            novo.AlterarEstoque        = alterarEstoque.HasValue ? alterarEstoque.Value : true;
            novo.ComDefeito            = comDefeito;
            novo.ValorDescontoCliente  = prodPed.ValorDescontoCliente;
            novo.ValorAcrescimoCliente = prodPed.ValorAcrescimoCliente;
            novo.ValorUnitarioBruto    = prodPed.ValorUnitarioBruto;
            novo.ValorTabelaPedido     = prodPed.ValorTabelaPedido;
            novo.TotalBruto            = prodPed.TotalBruto;
            novo.ValorBenef            = Math.Round((prodPed.ValorBenef / (decimal)qtdeOriginal) * qtde, 2);
            novo.ValorDescontoQtde     = prodPed.ValorDescontoQtde;

            DescontoAcrescimo.Instance.RemoverDescontoQtde(session, ped, novo);

            if (!string.IsNullOrEmpty(etiquetas))
            {
                var lstEtq = etiquetas.Trim().Split(',').Select(f => f.Trim());

                var etqs = new List <string>();

                foreach (var e in lstEtq)
                {
                    if (e.ToUpper().Substring(0, 1).Equals("N"))
                    {
                        etqs.Add(e);
                    }
                    else
                    {
                        var idProdPedProducao  = ProdutoPedidoProducaoDAO.Instance.ObtemIdProdPedProducao(session, e);
                        var leitura            = LeituraProducaoDAO.Instance.ObtemUltimaLeitura(session, idProdPedProducao.GetValueOrDefault(0));
                        var idItemCarregamento = ItemCarregamentoDAO.Instance.ObtemIdItemCarregamento(session, idProdPedProducao.GetValueOrDefault(0));

                        if (leitura != null)
                        {
                            etqs.Add(e + ";" + leitura.IdProdPedProducao + ";" + leitura.IdSetor +
                                     ";" + leitura.IdFuncLeitura + ";" + leitura.DataLeitura + ";" + leitura.IdCavalete + ";" + idItemCarregamento);
                        }
                    }
                }

                novo.Etiquetas = string.Join("|", etqs);
            }

            novo.IdPedido = TrocaDevolucaoDAO.Instance.ObtemValorCampo <uint?>(session, "idPedido",
                                                                               "idTrocaDevolucao=" + novo.IdTrocaDevolucao);

            if (!PedidoConfig.RatearDescontoProdutos && novo.IdPedido > 0)
            {
                float percDesc = PedidoDAO.Instance.GetPercDesc(session, novo.IdPedido.Value);

                if (percDesc > 0)
                {
                    int tipoCalc = Glass.Data.DAL.GrupoProdDAO.Instance.TipoCalculo(session, (int)novo.IdProd);

                    novo.Total -= (novo.Total + novo.ValorBenef) * (decimal)percDesc;

                    if (tipoCalc == (uint)TipoCalculoGrupoProd.Qtd || tipoCalc == (uint)TipoCalculoGrupoProd.QtdM2 || tipoCalc == (uint)TipoCalculoGrupoProd.QtdDecimal)
                    {
                        novo.ValorVendido = novo.Total / (decimal)novo.Qtde;
                    }
                    else if (novo.TotM2Calc > 0)
                    {
                        novo.ValorVendido = novo.Total / (decimal)novo.TotM2Calc;
                    }
                    else if (tipoCalc == (int)Glass.Data.Model.TipoCalculoGrupoProd.ML)
                    {
                        novo.ValorVendido = novo.Total / (decimal)(novo.Altura * novo.Qtde);
                    }
                    else if (novo.Altura > 0)
                    {
                        novo.ValorVendido = (novo.Total * 6) / (decimal)(novo.Altura * novo.Qtde);
                    }
                    else
                    {
                        novo.ValorVendido = novo.Total / (decimal)novo.Qtde;
                    }
                }
            }

            DescontoAcrescimo.Instance.AplicarDescontoQtde(session, ped, novo);

            // Soma o ICMS e IPI ao produto da troca, caso o pedido tenha cobrado
            if (ped.ValorIcms > 0 || ped.ValorIpi > 0)
            {
                if (ped.ValorIcms > 0)
                {
                    novo.Total += prodPed.ValorIcms / (decimal)prodPed.Qtde * (decimal)novo.Qtde;
                }

                if (ped.ValorIpi > 0)
                {
                    novo.Total += prodPed.ValorIpi / (decimal)prodPed.Qtde * (decimal)novo.Qtde;
                }

                decimal?valorUnitario = ValorUnitario.Instance.CalcularValor(session, ped, novo, novo.Total);
                if (valorUnitario.HasValue)
                {
                    novo.ValorVendido = valorUnitario.Value;
                }
            }

            uint retorno = base.Insert(session, novo);

            ProdutoTrocadoBenefDAO.Instance.DeleteByProdutoTrocado(session, retorno);
            foreach (ProdutoTrocadoBenef p in novo.Beneficiamentos.ToProdutosTrocado(retorno))
            {
                ProdutoTrocadoBenefDAO.Instance.Insert(session, p);
            }

            UpdateValorBenef(session, retorno);

            TrocaDevolucaoDAO.Instance.UpdateTotaisTrocaDev(session, novo.IdTrocaDevolucao);

            decimal valor = ObtemValorCampo <decimal>(session, "total+coalesce(valorBenef,0)",
                                                      "idProdTrocado=" + retorno);

            objPersistence.ExecuteCommand(session,
                                          "update troca_devolucao set creditoGerado=creditoGerado+?valor where creditoGeradoMax>0 and idTrocaDevolucao=" +
                                          novo.IdTrocaDevolucao, new GDAParameter("?valor", valor));

            TrocaDevolucaoDAO.Instance.UpdateTotaisTrocaDev(session, novo.IdTrocaDevolucao);

            return(retorno);
        }
コード例 #15
0
 public ProdutosReposicao(ProdutosPedido produto)
 {
     _produto         = produto;
     _beneficiamentos = GDAOperations.GetDAO <ProdutoPedidoBenef, ProdutoPedidoBenefDAO>().GetByProdutoPedido(_produto.IdProdPed);
 }