private TabelaPrecoB2B SaveItem(TabelaPrecoB2B tabelaPreco, ItemTabelaPrecoB2B item) { // Não foi passado nenhum item... não é necessário persistir if (String.IsNullOrEmpty(item.CodigoItemPreco)) { return(tabelaPreco); } // find no item ItemTabelaPrecoB2B itemAtual = RepositoryService.ItemTabelaPrecoB2B.ObterPor(tabelaPreco.ID, item.CodigoItemPreco); // Novo item if (itemAtual == null) { item.TabelaPreco = new Lookup(tabelaPreco.ID.Value, ""); RepositoryService.ItemTabelaPrecoB2B.Create(item); return(tabelaPreco); } // Atualiza item item.ID = itemAtual.ID; RepositoryService.ItemTabelaPrecoB2B.Update(item); if (item.Status != null && !itemAtual.Status.Equals(item.Status)) { MudarStatusItem(item.ID.Value, item.Status.Value); } return(tabelaPreco); }
public TabelaPrecoB2B Persistir(TabelaPrecoB2B tabelaPreco, ItemTabelaPrecoB2B item) { TabelaPrecoB2B tabelaPrecoAtual = RepositoryService.TabelaPrecoB2B.ObterPor(tabelaPreco.CodigoTabelaPrecoEMS); if (tabelaPrecoAtual == null) { tabelaPreco.ID = RepositoryService.TabelaPrecoB2B.Create(tabelaPreco); return(this.SaveItem(tabelaPreco, item)); } tabelaPreco.ID = tabelaPrecoAtual.ID; RepositoryService.TabelaPrecoB2B.Update(tabelaPreco); if (tabelaPreco.Status != null && !tabelaPrecoAtual.Status.Equals(tabelaPreco.Status)) { MudarStatus(tabelaPreco.ID.Value, tabelaPreco.Status.Value); } return(this.SaveItem(tabelaPreco, item)); }
public ItemTabelaPrecoB2B DefinirPropriedadesItem(Pollux.MSG0195 xml) { // Propriedade do item da tabela var crm = new ItemTabelaPrecoB2B(this.Organizacao, this.IsOffline); #region Propriedades Crm->Xml if (String.IsNullOrEmpty(xml.CodigoProduto)) { return(crm); } if (!String.IsNullOrEmpty(xml.CodigoProduto)) { Product produto = new ProdutoService(this.Organizacao, this.IsOffline).BuscaPorCodigo(xml.CodigoProduto); if (produto == null) { resultadoPersistencia.Sucesso = false; resultadoPersistencia.Mensagem = "(CRM) Não foi possível recuperar o produto informado."; return(crm); } crm.Produto = new Lookup(produto.ID.Value, ""); } if (!String.IsNullOrEmpty(xml.CodigoItemPreco)) { crm.CodigoItemPreco = xml.CodigoItemPreco; } else { crm.AddNullProperty("CodigoItemPreco"); } if (xml.PMA.HasValue) { crm.ValorPMA = xml.PMA; } if (xml.PMD.HasValue) { crm.ValorPMD = xml.PMD; } if (xml.PrecoFOB.HasValue) { crm.PrecoFOB = xml.PrecoFOB; } if (xml.PrecoMinimoCIF.HasValue) { crm.PrecoMinimoCIF = xml.PrecoMinimoCIF; } if (xml.PrecoMinimoFOB.HasValue) { crm.PrecoMinimoFOB = xml.PrecoMinimoFOB; } if (xml.PrecoUnico.HasValue) { crm.PrecoUnico = xml.PrecoUnico; } if (xml.PrecoVenda.HasValue) { crm.PrecoVenda = xml.PrecoVenda; } if (xml.QuantidadeMinima.HasValue) { crm.QuantidadeMinima = xml.QuantidadeMinima; } if (xml.SituacaoItem.HasValue) { crm.Status = xml.SituacaoItem; } #endregion return(crm); }