public static Lib_Primavera.Model.Artigo GetArtigo(string codArtigo) { GcpBEArtigo objArtigo = new GcpBEArtigo(); Model.Artigo myArt = new Model.Artigo(); if (PriEngine.InitializeCompany(FirstREST.Properties.Settings.Default.Company.Trim(), FirstREST.Properties.Settings.Default.User.Trim(), FirstREST.Properties.Settings.Default.Password.Trim()) == true) { if (PriEngine.Engine.Comercial.Artigos.Existe(codArtigo) == false) { return(null); } else { objArtigo = PriEngine.Engine.Comercial.Artigos.Edita(codArtigo); myArt.ID = objArtigo.get_Artigo(); myArt.Nome = objArtigo.get_Descricao(); myArt.Marca = objArtigo.get_Marca(); myArt.Observacoes = objArtigo.get_Observacoes(); myArt.FamiliaNome = objArtigo.get_Familia(); myArt.SubFamiliaNome = objArtigo.get_SubFamilia(); myArt.PrazoEntrega = objArtigo.get_PrazoEntrega(); myArt.UnidadeVenda = objArtigo.get_UnidadeVenda(); myArt.StockAtual = objArtigo.get_StkActual(); myArt.QuantidadeReservada = objArtigo.get_QtReservada(); myArt.IVA = PriEngine.Engine.Comercial.Iva.Edita(objArtigo.get_IVA()).get_Taxa(); myArt.Desconto = objArtigo.get_Desconto(); var objArtigoPreco = PriEngine.Engine.Comercial.ArtigosPrecos.Edita(myArt.ID, "EUR", myArt.UnidadeVenda); myArt.PVP1 = objArtigoPreco.get_PVP1(); myArt.PrecoFinal = myArt.PVP1 * (1 - myArt.Desconto / 100); if (!objArtigoPreco.get_PVP1IvaIncluido()) { myArt.PrecoFinal *= (1 + myArt.IVA / 100); } return(myArt); } } else { return(null); } }
public static Lib_Primavera.Model.Artigo GetArtigo(string codArtigo) { GcpBEArtigo objArtigo = new GcpBEArtigo(); Model.Artigo myArt = new Model.Artigo(); if (PriEngine.InitializeCompany(companyName, FirstREST.Properties.Settings.Default.User.Trim(), FirstREST.Properties.Settings.Default.Password.Trim()) == true) { if (PriEngine.Engine.Comercial.Artigos.Existe(codArtigo) == false) { return null; } else { StdBELista objList = PriEngine.Engine.Consulta("SELECT PVP1 AS preco FROM ArtigoMoeda am, Artigo a WHERE am.Artigo = a.Artigo"); objArtigo = PriEngine.Engine.Comercial.Artigos.Edita(codArtigo); myArt.CodArtigo = objArtigo.get_Artigo(); myArt.DescArtigo = objArtigo.get_Descricao(); myArt.PrecoArtigo = objList.Valor("preco"); myArt.MarcaArtigo = objArtigo.get_Marca(); myArt.FamiliaArtigo = objArtigo.get_Familia(); myArt.SOArtigo = objArtigo.get_Observacoes(); myArt.DescontoArtigo = objArtigo.get_Desconto(); return myArt; } } else { return null; } }
public static RespostaErro AdicionaProduto(OportunidadeDTO dto) { Lib_Primavera.Model.RespostaErro erro = new Model.RespostaErro(); CrmBEPropostaOPV objProp = new CrmBEPropostaOPV(); try { if (PriEngine.InitializeCompany(FirstREST.Properties.Settings.Default.Company.Trim(), FirstREST.Properties.Settings.Default.User.Trim(), FirstREST.Properties.Settings.Default.Password.Trim()) == true) { //oportunidade if (!PriEngine.Engine.CRM.OportunidadesVenda.ExisteID(dto.IdOportunidade)) { erro.Erro = 1; erro.Descricao = "Nao existe oportunidade"; return(erro); } //proposta objProp = PriEngine.Engine.CRM.PropostasOPV.Edita(dto.IdOportunidade, dto.NumProposta, true); objProp.set_EmModoEdicao(true); //vai buscar os artigos desta proposta CrmBELinhasPropostaOPV objLinhas = objProp.get_Linhas(); //nova linha a ser criada CrmBELinhaPropostaOPV objLinha = new CrmBELinhaPropostaOPV(); //artigo que vamos adicionar GcpBEArtigo objArtigo = PriEngine.Engine.Comercial.Artigos.Edita(dto.IdArtigo); objLinha.set_IdOportunidade(dto.IdOportunidade); objLinha.set_NumProposta(dto.NumProposta); objLinha.set_Artigo(dto.IdArtigo); short n = objLinhas.NumItens; n++; objLinha.set_Linha(n); objLinha.set_Descricao(objArtigo.get_Descricao()); objLinha.set_Quantidade(1); objLinha.set_Unidade(objArtigo.get_UnidadeVenda()); objLinha.set_PrecoCusto(objArtigo.get_PCMedio()); objLinha.set_Desconto(objArtigo.get_Desconto()); var objArtigoPreco = PriEngine.Engine.Comercial.ArtigosPrecos.Edita(dto.IdArtigo, "EUR", objArtigo.get_UnidadeVenda()); objLinha.set_PrecoVenda(objArtigoPreco.get_PVP1()); //update proposta objLinhas.Insere(objLinha); objProp.set_Linhas(objLinhas); PriEngine.Engine.CRM.PropostasOPV.Actualiza(objProp); erro.Erro = 0; erro.Descricao = "Success"; 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); } }