Exemplo n.º 1
0
        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);
            }
        }
Exemplo n.º 2
0
        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);
        }