Exemplo n.º 1
0
        public static Lib_Primavera.Model.RespostaErro DelArtigoCarrinho(Model.TDU_Carrinho carrinho)
        {
            Lib_Primavera.Model.RespostaErro erro = new Model.RespostaErro();
            StdBECamposChave tdu_carrinho         = new StdBECamposChave();

            try
            {
                if (PriEngine.InitializeCompany(ElectroSinf.Properties.Settings.Default.Company.Trim(), ElectroSinf.Properties.Settings.Default.User.Trim(), ElectroSinf.Properties.Settings.Default.Password.Trim()) == true)
                {
                    tdu_carrinho.AddCampoChave("CDU_IdCliente", carrinho.CDU_IdCliente);
                    tdu_carrinho.AddCampoChave("CDU_IdArtigo", carrinho.CDU_IdArtigo);
                    PriEngine.Engine.TabelasUtilizador.Remove("TDU_Carrinho", tdu_carrinho);
                    erro.Erro      = 0;
                    erro.Descricao = "Sucesso";
                    return(erro);
                }
                else
                {
                    erro.Erro      = 1;
                    erro.Descricao = "Erro ao abrir empresa";
                    return(erro);
                }
            }
            catch (Exception ex)
            {
                erro.Erro      = 1;
                erro.Descricao = ex.Message;
                return(erro);
            }
        }
Exemplo n.º 2
0
        //MUDADO PARA RECEBER ARMAZEM

        public static Lib_Primavera.Model.RespostaErro UpdateCarrinhoObj(Model.TDU_Carrinho carrinho)
        {
            Lib_Primavera.Model.RespostaErro erro = new Model.RespostaErro();
            StdBECamposChave tdu_carrinhoChaves   = new StdBECamposChave();

            if (carrinho.CDU_Quantidade < 1)
            {
                erro.Erro      = 1;
                erro.Descricao = "Quantidade errada";
                return(erro);
            }
            try
            {
                if (PriEngine.InitializeCompany(ElectroSinf.Properties.Settings.Default.Company.Trim(), ElectroSinf.Properties.Settings.Default.User.Trim(), ElectroSinf.Properties.Settings.Default.Password.Trim()) == true)
                {
                    tdu_carrinhoChaves.AddCampoChave("CDU_IdCliente", carrinho.CDU_IdCliente);
                    tdu_carrinhoChaves.AddCampoChave("CDU_IdArtigo", carrinho.CDU_IdArtigo);

                    if (PriEngine.Engine.TabelasUtilizador.Existe("TDU_Carrinho", tdu_carrinhoChaves))
                    {
                        PriEngine.Engine.TabelasUtilizador.ActualizaValorAtributo("TDU_Carrinho", tdu_carrinhoChaves, "CDU_Quantidade", carrinho.CDU_Quantidade);
                    }
                    else
                    {
                        erro.Erro      = 1;
                        erro.Descricao = "Artigo não existe no carrinho";
                        return(erro);
                    }
                    erro.Erro      = 0;
                    erro.Descricao = "Sucesso";
                    return(erro);
                }
                else
                {
                    erro.Erro      = 1;
                    erro.Descricao = "Erro ao abrir empresa";
                    return(erro);
                }
            }
            catch (Exception ex)
            {
                erro.Erro      = 1;
                erro.Descricao = ex.Message;
                return(erro);
            }
        }
Exemplo n.º 3
0
        public static Lib_Primavera.Model.RespostaErro login(Model.Cliente cli)
        {
            Lib_Primavera.Model.RespostaErro erro = new Model.RespostaErro();

            try
            {
                if (PriEngine.InitializeCompany(ElectroSinf.Properties.Settings.Default.Company.Trim(), ElectroSinf.Properties.Settings.Default.User.Trim(), ElectroSinf.Properties.Settings.Default.Password.Trim()) == true)
                {
                    StdBELista cliente = PriEngine.Engine.Consulta("SELECT Cliente,CDU_Password from Clientes where CDU_Email='" + cli.Email + "';");
                    if (cliente.Vazia())
                    {
                        erro.Erro      = -1;
                        erro.Descricao = "Email Errado";
                    }
                    else
                    {
                        string inserida = PriEngine.Platform.Criptografia.Encripta(cli.Password, 50);
                        if (inserida == cliente.Valor("CDU_Password"))
                        {
                            erro.Erro      = 0;
                            erro.Descricao = cliente.Valor("Cliente");
                        }
                        else
                        {
                            erro.Erro      = -1;
                            erro.Descricao = "Password Errada";
                        }
                    }
                    return(erro);
                }
                else
                {
                    erro.Erro      = 1;
                    erro.Descricao = "Erro ao abrir empresa";
                    return(erro);
                }
            }
            catch (Exception ex)
            {
                erro.Erro      = 1;
                erro.Descricao = ex.Message;
                return(erro);
            }
        }
Exemplo n.º 4
0
        public static Lib_Primavera.Model.RespostaErro InsereClienteObj(Model.Cliente cli)
        {
            Lib_Primavera.Model.RespostaErro erro = new Model.RespostaErro();
            GcpBECliente myCli = new GcpBECliente();
            StdBELista   objList;

            try
            {
                objList = PriEngine.Engine.Consulta("SELECT * FROM PRIELECSINF.[dbo].[Clientes] where CDU_Email='" + cli.Email + "'");
                if (objList.Vazia())
                {
                    if (PriEngine.InitializeCompany(ElectroSinf.Properties.Settings.Default.Company.Trim(), ElectroSinf.Properties.Settings.Default.User.Trim(), ElectroSinf.Properties.Settings.Default.Password.Trim()) == true)
                    {
                        StdBELista lastClient = new StdBELista();
                        if (PriEngine.Engine.Comercial.Clientes.Existe("C001"))
                        {
                            lastClient = PriEngine.Engine.Consulta("SELECT top 1 Cliente FROM PRIELECSINF.[dbo].[Clientes] WHERE Cliente LIKE 'C%' ORDER BY Cliente DESC;");
                            string b = lastClient.Valor("Cliente");
                            b = b.Replace("C", "0");
                            int x = 0;
                            Int32.TryParse(b, out x);
                            x++;
                            string n          = x.ToString();
                            string codCliente = "C";
                            for (int i = 0; i < (3 - n.Length); i++)
                            {
                                codCliente = string.Concat(codCliente, "0");
                            }
                            cli.CodCliente = string.Concat(codCliente, n);
                        }
                        else
                        {
                            cli.CodCliente = "C001";
                        }
                        StdBECampos cmps  = new StdBECampos();
                        StdBECampo  email = new StdBECampo();
                        StdBECampo  pwd   = new StdBECampo();
                        email.Nome  = "CDU_Email";
                        pwd.Nome    = "CDU_Password";
                        email.Valor = cli.Email;
                        pwd.Valor   = PriEngine.Platform.Criptografia.Encripta(cli.Password, 50);
                        cmps.Insere(email);
                        cmps.Insere(pwd);
                        myCli.set_CamposUtil(cmps);
                        myCli.set_Cliente(cli.CodCliente);
                        myCli.set_Nome(cli.NomeCliente);
                        myCli.set_NomeFiscal(cli.NomeCliente);
                        myCli.set_NumContribuinte(cli.NumContribuinte);
                        myCli.set_Moeda(cli.Moeda);
                        myCli.set_Morada(cli.Morada);
                        myCli.set_Localidade(cli.Localidade);
                        myCli.set_CodigoPostal(cli.CodPostal);
                        myCli.set_Distrito(cli.Distrito);
                        myCli.set_Pais(cli.Pais);
                        myCli.set_Telefone(cli.NumTelefone);
                        myCli.set_LocalidadeCodigoPostal(cli.LocalidadeCodPostal);
                        myCli.set_ModoPag(cli.ModoPagamento);
                        myCli.set_CondPag(cli.CondicaoPagamento);
                        PriEngine.Engine.IniciaTransaccao();
                        PriEngine.Engine.Comercial.Clientes.Actualiza(myCli);
                        PriEngine.Engine.TerminaTransaccao();
                        erro.Erro      = 0;
                        erro.Descricao = "Sucesso";
                        return(erro);
                    }
                    else
                    {
                        erro.Erro      = 1;
                        erro.Descricao = "Erro ao abrir empresa";
                        return(erro);
                    }
                }
                else
                {
                    erro.Erro      = -1;
                    erro.Descricao = "Já existe pessoa com mesmo email";
                    return(erro);
                }
            }

            catch (Exception ex)
            {
                PriEngine.Engine.DesfazTransaccao();
                erro.Erro      = 1;
                erro.Descricao = ex.Message;
                return(erro);
            }
        }
Exemplo n.º 5
0
        public static Lib_Primavera.Model.RespostaErro InsereCarrinhoObj(Model.TDU_Carrinho carrinho)
        {
            Lib_Primavera.Model.RespostaErro erro = new Model.RespostaErro();
            StdBECamposChave tdu_carrinhoChaves   = new StdBECamposChave();
            StdBERegistoUtil tdu_carrinhoNovo     = new StdBERegistoUtil();
            StdBECampos      cmps       = new StdBECampos();
            StdBECampo       idCliente  = new StdBECampo();
            StdBECampo       idArtigo   = new StdBECampo();
            StdBECampo       quantidade = new StdBECampo();
            int quantidadeExistente     = 0;
            //AQUI
            StdBECampo armazem = new StdBECampo();

            if (carrinho.CDU_Quantidade < 1)
            {
                erro.Erro      = 1;
                erro.Descricao = "Quantidade errada";
                return(erro);
            }

            try
            {
                if (PriEngine.InitializeCompany(ElectroSinf.Properties.Settings.Default.Company.Trim(), ElectroSinf.Properties.Settings.Default.User.Trim(), ElectroSinf.Properties.Settings.Default.Password.Trim()) == true)
                {
                    StdBELista objListCab;
                    string     st = "SELECT Armazem From Armazens where Descricao='" + carrinho.CDU_Armazem + "'";
                    objListCab = PriEngine.Engine.Consulta(st);


                    tdu_carrinhoChaves.AddCampoChave("CDU_IdCliente", carrinho.CDU_IdCliente);
                    tdu_carrinhoChaves.AddCampoChave("CDU_IdArtigo", carrinho.CDU_IdArtigo);
                    //AQUI
                    tdu_carrinhoChaves.AddCampoChave("CDU_Armazem", objListCab.Valor("Armazem"));

                    if (PriEngine.Engine.TabelasUtilizador.Existe("TDU_Carrinho", tdu_carrinhoChaves))
                    {
                        quantidadeExistente  = PriEngine.Engine.TabelasUtilizador.DaValorAtributo("TDU_Carrinho", tdu_carrinhoChaves, "CDU_Quantidade");
                        quantidadeExistente += carrinho.CDU_Quantidade;
                        PriEngine.Engine.TabelasUtilizador.ActualizaValorAtributo("TDU_Carrinho", tdu_carrinhoChaves, "CDU_Quantidade", quantidadeExistente);
                    }
                    else
                    {
                        idCliente.Nome   = "CDU_IdCliente";
                        idArtigo.Nome    = "CDU_IdArtigo";
                        quantidade.Nome  = "CDU_Quantidade";
                        idCliente.Valor  = carrinho.CDU_IdCliente;
                        idArtigo.Valor   = carrinho.CDU_IdArtigo;
                        quantidade.Valor = carrinho.CDU_Quantidade + quantidadeExistente;
                        //AQUI
                        armazem.Nome = "CDU_Armazem";



                        armazem.Valor = objListCab.Valor("Armazem");

                        cmps.Insere(idCliente);
                        cmps.Insere(idArtigo);
                        cmps.Insere(quantidade);
                        //AQUI
                        cmps.Insere(armazem);

                        tdu_carrinhoNovo.set_Campos(cmps);
                        PriEngine.Engine.TabelasUtilizador.Actualiza("TDU_Carrinho", tdu_carrinhoNovo);
                    }
                    erro.Erro      = 0;
                    erro.Descricao = "Sucesso";
                    return(erro);
                }
                else
                {
                    erro.Erro      = 1;
                    erro.Descricao = "Erro ao abrir empresa";
                    return(erro);
                }
            }
            catch (Exception ex)
            {
                erro.Erro      = 1;
                erro.Descricao = ex.Message;
                return(erro);
            }
        }
Exemplo n.º 6
0
        public static Model.RespostaErro Encomendas_New(Model.DocVenda dv)
        {
            Lib_Primavera.Model.RespostaErro erro = new Model.RespostaErro();

            GcpBEDocumentoVenda myEnc = new GcpBEDocumentoVenda();

            GcpBELinhaDocumentoVenda myLin = new GcpBELinhaDocumentoVenda();

            GcpBELinhasDocumentoVenda myLinhas = new GcpBELinhasDocumentoVenda();

            PreencheRelacaoVendas      rl       = new PreencheRelacaoVendas();
            List <Model.LinhaDocVenda> lstlindv = new List <Model.LinhaDocVenda>();

            try
            {
                if (PriEngine.InitializeCompany(ElectroSinf.Properties.Settings.Default.Company.Trim(), ElectroSinf.Properties.Settings.Default.User.Trim(), ElectroSinf.Properties.Settings.Default.Password.Trim()) == true)
                {
                    //atributos que por enquanto não são dinamicos:
                    string serie    = "1";
                    double desconto = 0.0;
                    string armazem  = "A1";

                    // Atribui valores ao cabecalho do doc
                    myEnc.set_Entidade(dv.Entidade);
                    myEnc.set_Serie(serie);
                    myEnc.set_Tipodoc(dv.DocType);
                    myEnc.set_TipoEntidade("C");
                    // Linhas do documento para a lista de linhas
                    //lstlindv = dv.LinhasDoc;
                    PriEngine.Engine.Comercial.Vendas.PreencheDadosRelacionados(myEnc, rl);
                    double     pvp1 = 0, quantidade = 0;
                    string     idArtigo = "";
                    int        Stock    = 0;
                    StdBELista carrinho = PriEngine.Engine.Consulta("SELECT * FROM TDU_Carrinho WHERE CDU_IdCliente='" + dv.Entidade + "'");
                    while (!carrinho.NoFim())
                    {
                        idArtigo   = carrinho.Valor("CDU_IdArtigo");
                        quantidade = Convert.ToDouble(carrinho.Valor("CDU_Quantidade"));
                        armazem    = carrinho.Valor("CDU_Armazem");
                        Stock      = (int)PriEngine.Engine.Comercial.ArtigosArmazens.DaStockArtigo(idArtigo);
                        //ARMAZEM
                        if (quantidade > Stock)
                        {
                            erro.Erro      = 1;
                            erro.Descricao = "quantidadeErrada";
                            return(erro);
                        }
                        pvp1 = PriEngine.Engine.Comercial.ArtigosPrecos.DaPrecoArtigoMoeda(idArtigo, "EUR", "UN", "PVP1", false, 0);
                        PriEngine.Engine.Comercial.Vendas.AdicionaLinha(myEnc, idArtigo, quantidade, armazem, "", pvp1, desconto);
                        carrinho.Seguinte();
                    }

                    /*
                     * foreach (Model.LinhaDocVenda lin in lstlindv)
                     * {
                     *  pvp1 = PriEngine.Engine.Comercial.ArtigosPrecos.DaPrecoArtigoMoeda(lin.CodArtigo, "EUR", "UN", "PVP1", false, 0);
                     *  PriEngine.Engine.Comercial.Vendas.AdicionaLinha(myEnc, lin.CodArtigo, lin.Quantidade, armazem, "", pvp1, desconto);
                     * }
                     */
                    PriEngine.Engine.IniciaTransaccao();
                    PriEngine.Engine.Comercial.Vendas.Actualiza(myEnc, "Teste");
                    PriEngine.Engine.TerminaTransaccao();
                    erro.Erro      = 0;
                    erro.Descricao = "Sucesso";
                    carrinho.Inicio();
                    while (!carrinho.NoFim())
                    {
                        idArtigo = carrinho.Valor("CDU_IdArtigo");
                        StdBECamposChave tdu_carrinho = new StdBECamposChave();
                        tdu_carrinho.AddCampoChave("CDU_IdCliente", dv.Entidade);
                        tdu_carrinho.AddCampoChave("CDU_IdArtigo", idArtigo);
                        PriEngine.Engine.TabelasUtilizador.Remove("TDU_Carrinho", tdu_carrinho);
                        carrinho.Seguinte();
                    }
                    return(erro);
                }
                else
                {
                    erro.Erro      = 1;
                    erro.Descricao = "Erro ao abrir empresa";
                    return(erro);
                }
            }
            catch (Exception ex)
            {
                try
                {
                    PriEngine.Engine.DesfazTransaccao();
                }
                catch (Exception)
                {
                }
                erro.Erro      = 1;
                erro.Descricao = ex.Message;
                Console.Write(erro.Descricao);
                return(erro);
            }
        }