public RelacionamentoB2B Persistir(RelacionamentoB2B relacionamento)
        {
            RelacionamentoB2B relacionamentoAtual = RepositoryService.RelacionamentoB2B.ObterPor(relacionamento.CodigoRelacionamentoB2B);

            if (relacionamentoAtual == null)
            {
                relacionamento.ID = RepositoryService.RelacionamentoB2B.Create(relacionamento);
                return(relacionamento);
            }

            relacionamento.ID = relacionamentoAtual.ID;

            RepositoryService.RelacionamentoB2B.Update(relacionamento);
            if (relacionamento.Status != null && !relacionamentoAtual.Status.Equals(relacionamento.Status))
            {
                MudarStatus(relacionamento.ID.Value, relacionamento.Status.Value);
            }

            return(relacionamento);
        }
Beispiel #2
0
        public RelacionamentoB2B DefinirPropriedades(Intelbras.Message.Helper.MSG0194 xml)
        {
            var crm = new RelacionamentoB2B(this.Organizacao, this.IsOffline);

            #region Propriedades Crm->Xml

            crm.CodigoRelacionamentoB2B = xml.CodigoRelacionamentoB2B;

            if (!String.IsNullOrEmpty(xml.NomeRelacionamento))
            {
                crm.NomeRelacionamento = xml.NomeRelacionamento;
            }

            if (xml.CodigoGrupoCliente.HasValue)
            {
                crm.CodigoGrupoCliente = xml.CodigoGrupoCliente;
            }

            // Categoria B2B
            CategoriaB2B categoria = new CategoriaB2BService(this.Organizacao, this.IsOffline).ObterPor((int)xml.CodigoCategoriaB2B);
            if (categoria == null)
            {
                resultadoPersistencia.Sucesso  = false;
                resultadoPersistencia.Mensagem = "(CRM) Categoria B2B não encontrada.";
                return(crm);
            }
            crm.CategoriaB2B = new Lookup(new Guid(categoria.ID.ToString()), "");

            // Conta
            Conta conta = new ContaService(this.Organizacao, this.IsOffline).BuscarPorCodigoEmitente(xml.CodigoCliente.ToString());
            if (conta == null)
            {
                resultadoPersistencia.Sucesso  = false;
                resultadoPersistencia.Mensagem = "(CRM) Conta não encontrada para o Código Cliente informado.";
                return(crm);
            }
            crm.Canal = new Lookup(new Guid(conta.ID.ToString()), "account");

            crm.CodigoRepresentante = xml.CodigoRepresentante;

            // Unidade Negócio / Unidade Comercial
            if (!String.IsNullOrEmpty(xml.NomeUnidadeComercial))
            {
                UnidadeNegocio unidade = new UnidadeNegocioService(this.Organizacao, this.IsOffline).BuscaUnidadeNegocioPorNome(xml.NomeUnidadeComercial);
                if (unidade != null)
                {
                    crm.NomeUnidadeNegocio = xml.NomeUnidadeComercial;
                    crm.UnidadeNegocio     = new Lookup(unidade.ID.Value, "");
                }
            }

            if (xml.Sequencia.HasValue)
            {
                crm.Sequencia = xml.Sequencia;
            }

            if (xml.DataInicial.HasValue)
            {
                crm.DataInicial = xml.DataInicial;
            }

            if (xml.DataFinal.HasValue)
            {
                crm.DataFinal = xml.DataFinal;
            }

            if (!String.IsNullOrEmpty(xml.Mensagem))
            {
                crm.Mensagem = xml.Mensagem;
            }

            crm.Status = xml.Situacao;

            #endregion

            return(crm);
        }
Beispiel #3
0
 public string Enviar(RelacionamentoB2B objModel)
 {
     throw new NotImplementedException();
 }