public Postagem Persistir(Model.Postagem objPostagem) { Postagem tmpPostagem = null; if (objPostagem.ID.HasValue) { tmpPostagem = RepositoryService.Postagem.Retrieve(objPostagem.ID.Value); if (tmpPostagem != null) { objPostagem.ID = tmpPostagem.ID; RepositoryService.Postagem.Update(objPostagem); return(objPostagem); } else { return(null); } } else { objPostagem.ID = RepositoryService.Postagem.Create(objPostagem); return(objPostagem); } }
public Postagem DefinirPropriedades(Intelbras.Message.Helper.MSG0270 xml) { var crm = new Model.Postagem(this.Organizacao, this.IsOffline); if (!String.IsNullOrEmpty(xml.NumeroProjeto)) { ClientePotencial cliente = new Servicos.LeadService(this.Organizacao, this.IsOffline).ObterPorNumeroProjeto(xml.NumeroProjeto); if (cliente != null) { Oportunidade oportunidade = new Servicos.RepositoryService().Oportunidade.BuscarPor(cliente); if (xml.ClassificacaoProjeto.HasValue) { if (xml.ClassificacaoProjeto == 993520000) // Cliente Potencial { crm.CriadoEm = xml.DataAtividade; crm.UsuarioAtividade = new Lookup(usuarioIntegracao.Id, ""); Contato contato = new Intelbras.CRM2013.Domain.Servicos.ContatoService(this.Organizacao, this.IsOffline).BuscaContato(new Guid(xml.CodigoContato)); if (contato != null) { crm.Texto = "Mensagem postada por " + contato.Nome + ": " + xml.DescricaoAtividade; } else { resultadoPersistencia.Sucesso = false; resultadoPersistencia.Mensagem = "CodigoExecutivo não encontrado no Crm."; return(crm); } crm.ReferenteA = new SDKore.DomainModel.Lookup(cliente.ID.Value, "lead"); crm.Source = 2; } if (xml.ClassificacaoProjeto == 993520001) // Oportunidade { if (oportunidade != null) { crm.CriadoEm = xml.DataAtividade; crm.UsuarioAtividade = new Lookup(usuarioIntegracao.Id, ""); Contato contato = new Intelbras.CRM2013.Domain.Servicos.ContatoService(this.Organizacao, this.IsOffline).BuscaContato(new Guid(xml.CodigoContato)); if (contato != null) { crm.Texto = "Mensagem postada por " + contato.Nome + ": " + xml.DescricaoAtividade; } else { resultadoPersistencia.Sucesso = false; resultadoPersistencia.Mensagem = "CodigoExecutivo não encontrado no Crm."; return(crm); } crm.ReferenteA = new SDKore.DomainModel.Lookup(oportunidade.ID.Value, "opportunity"); crm.Source = 2; } } } else { resultadoPersistencia.Sucesso = false; resultadoPersistencia.Mensagem = "ClassificacaoProjeto não informado, campo obrigatório."; return(crm); } } else { resultadoPersistencia.Sucesso = false; resultadoPersistencia.Mensagem = "NumeroProjeto informado não existe para ser atualizado."; return(crm); } } else { resultadoPersistencia.Sucesso = false; resultadoPersistencia.Mensagem = "NumeroProjeto não informado, campo obrigatório."; return(crm); } return(crm); }