コード例 #1
0
ファイル: MSG0075.cs プロジェクト: ertprs/crm_fonte
        public RegiaoAtuacao DefinirPropriedades(Intelbras.Message.Helper.MSG0075 xml)
        {
            var crm = new RegiaoAtuacao(this.Organizacao, this.IsOffline);

            #region Propriedades Crm->Xml

            if (!String.IsNullOrEmpty(xml.CodigoConta))
            {
                Model.Conta conta = new Model.Conta(this.Organizacao, this.IsOffline);
                conta = new Intelbras.CRM2013.Domain.Servicos.ContaService(this.Organizacao, this.IsOffline).BuscaConta(new Guid(xml.CodigoConta));
                if (conta != null)
                {
                    crm.Canal = conta.ID.Value;
                }
            }
            else
            {
                resultadoPersistencia.Sucesso  = false;
                resultadoPersistencia.Mensagem = "Canal não encontrado!";
                return(crm);
            }

            #endregion

            return(crm);
        }
コード例 #2
0
        public List <Endereco> ObterParticipantesPor(Contrato contrato, Model.Conta cliente)
        {
            var      enderecos     = new List <Endereco>();
            Endereco end           = null;
            var      participantes = this.ObterEnderecoClientesParticipantesPor(contrato, cliente);

            foreach (var item in participantes)
            {
                if (item.EnderecoId.HasValue)
                {
                    end = new RepositoryService().Endereco.Retrieve(item.EnderecoId.Value);
                    if (end != null)
                    {
                        if (item.CodigoDaLocalidade.HasValue)
                        {
                            end.CodigoDaLocalidade = item.CodigoDaLocalidade.Value;
                            end.Localidade         = item.Localidade;
                        }
                        enderecos.Add(end);
                    }
                }
            }

            return(enderecos);
        }
コード例 #3
0
        public void AdicionarClienteParticipante(Contrato contrato, Model.Conta cliente)
        {
            var clienteParticipante = new ClienteParticipante();

            clienteParticipante.ClienteId  = cliente.Id;
            clienteParticipante.ContratoId = contrato.Id;
            clienteParticipante.Nome       = cliente.Nome;

            new RepositoryService().Contrato.SalvarClienteParticipante(clienteParticipante);
        }
コード例 #4
0
        public void createConta(String banco, String cc, int agencia)
        {
            Model.Conta c = new Model.Conta();
            c.Banco         = banco;
            c.ContaCorrente = cc;
            c.Agencia       = agencia;

            ctx.Contas.Add(c);
            ctx.SaveChanges();
        }
コード例 #5
0
 public ClienteParticipante ObterParticipante(Contrato contrato, Model.Conta cliente, Endereco endereco, TipoDeVigencia vigencia)
 {
     if (vigencia == TipoDeVigencia.Cliente)
     {
         return(new RepositoryService().Contrato.PesquisarParticipantePor(contrato, cliente));
     }
     else
     {
         return(new RepositoryService().Contrato.PesquisarParticipantePor(contrato, cliente, endereco));
     }
 }
コード例 #6
0
        public bool EstaVigente(Model.Conta cliente, Endereco endereco, DateTime dataInicioVigencia)
        {
            switch (this.TipoVigencia)
            {
            case TipoDeVigencia.Contrato:
                if (!this.InicioVigencia.HasValue || !this.FimRealVigencia.HasValue)
                {
                    return(false);
                }
                if (this.InicioVigencia.Value.Date > dataInicioVigencia.Date)
                {
                    return(false);
                }
                if (dataInicioVigencia.Date > this.FimRealVigencia.Value.Date)
                {
                    return(false);
                }
                break;


            case TipoDeVigencia.Cliente:
            case TipoDeVigencia.Endereco:
                ClienteParticipante participante = this.ObterParticipante(this, cliente, endereco, this.TipoVigencia);
                if (participante != null && this.TemData(participante))
                {
                    if (participante.InicioVigencia.Value.Date > dataInicioVigencia.Date)
                    {
                        return(false);
                    }
                    if (participante.FimVigencia.Value.Date <= dataInicioVigencia.Date)
                    {
                        return(false);
                    }
                }

                break;

            case TipoDeVigencia.Por_Veiculo_Instalacao:
            case TipoDeVigencia.Por_veiculo_Contrato:
                break;

            case TipoDeVigencia.Vazio:
                throw new ArgumentException("Tipo de Vigencia do contrato não pode ser vazio.", "TipoDeVigencia");

            default:
                throw new ArgumentException("Tipo de Vigencia do contrato não cadastrada", "TipoDeVigencia");
            }
            return(true);
        }
コード例 #7
0
        public void AdicionarParticipante(Guid clienteParticipanteId, Model.Conta cliente, List <Endereco> enderecosSelecinados)
        {
            if (null == cliente)
            {
                throw new ArgumentNullException("Participante inválido.");
            }

            foreach (var endereco in enderecosSelecinados)
            {
                if (!new RepositoryService().Contrato.ExisteEndereco(this, cliente.Id, endereco.Id))
                {
                    new RepositoryService().Contrato.SalvarEnderecosParticipantes(clienteParticipanteId, this, cliente, endereco);
                }
            }
        }
コード例 #8
0
        public void DefineVigenciaClienteParticipante(Model.Conta cliente, Endereco endereco, DateTime dataInicioVigencia)
        {
            if (this.TipoVigencia == TipoDeVigencia.Cliente || this.TipoVigencia == TipoDeVigencia.Endereco)

            {
                ClienteParticipante participante = this.ObterParticipante(this, cliente, endereco, this.TipoVigencia);

                if (participante != null)
                {
                    if (!participante.FimVigencia.HasValue)
                    {
                        int duracao = (this.FimRealVigencia.Value - this.InicioVigencia.Value).Days;

                        participante.InicioVigencia = dataInicioVigencia;
                        participante.FimVigencia    = dataInicioVigencia.AddDays(duracao);
                        participante.SalvarDataDeVigencia(participante, this.TipoVigencia);
                    }
                }
            }
        }
コード例 #9
0
        public RegiaoAtuacao DefinirPropriedades(Intelbras.Message.Helper.MSG0076 xml)
        {
            var crm = new RegiaoAtuacao(this.Organizacao, this.IsOffline);

            if (!String.IsNullOrEmpty(xml.CodigoConta))
            {
                Model.Conta conta = new Model.Conta(this.Organizacao, this.IsOffline);
                conta = new Intelbras.CRM2013.Domain.Servicos.ContaService(this.Organizacao, this.IsOffline).BuscaConta(new Guid(xml.CodigoConta));
                if (conta != null)
                {
                    crm.Canal = conta.ID.Value;
                }
            }
            else
            {
                resultadoPersistencia.Sucesso  = false;
                resultadoPersistencia.Mensagem = "Canal não encontrado!";
                return(crm);
            }

            //Municipio
            if (!String.IsNullOrEmpty(xml.ChaveIntegracaoCidade))
            {
                Model.Municipio cidade = new Model.Municipio(this.Organizacao, this.IsOffline);
                cidade = new Intelbras.CRM2013.Domain.Servicos.EnderecoServices(this.Organizacao, this.IsOffline).BuscaMunicipio(xml.ChaveIntegracaoCidade);

                if (cidade != null && cidade.ID.HasValue)
                {
                    crm.MunicipioId = cidade.ID.Value;
                }
                else
                {
                    resultadoPersistencia.Sucesso  = false;
                    resultadoPersistencia.Mensagem = "Cidade não encontrada!";
                    return(crm);
                }
            }

            return(crm);
        }
コード例 #10
0
        public void createMedico(String nome, DateTime nasc, String fone, String cpf, Model.Conta conta, string crm, Model.Especialidade especialidade, String turno)
        {
            Model.Medico m = new Model.Medico();
            m.Nome          = nome;
            m.Nascimento    = nasc;
            m.Telefone      = fone;
            m.CPF           = cpf;
            m.conta         = conta;
            m.CRM           = crm;
            m.Especialidade = especialidade;
            m.Turno         = turno;

            ctx.Medicos.Add(m);
            ctx.SaveChanges();
        }
コード例 #11
0
        public Conta DefinirPropriedades(Intelbras.Message.Helper.MSG0290 xml)
        {
            var crm = new Model.Conta(this.Organizacao, this.IsOffline);

            return(crm);
        }
コード例 #12
0
 public List <ClienteParticipante> ObterEnderecoClientesParticipantesPor(Contrato contrato, Model.Conta cliente)
 {
     return(new RepositoryService().Contrato.ObterEnderecoClientesParticipantesPor(contrato, cliente));
 }
コード例 #13
0
ファイル: ContratoService.cs プロジェクト: ertprs/crm_fonte
 public Endereco ObterEnderecoClienteParticipante(Contrato contrato, Model.Conta cliente)
 {
     return(RepositoryService.Endereco.Retrieve(RepositoryService.Contrato.ObterEnderecoIDPrimeiroClienteParticipante(contrato, cliente)));
 }
コード例 #14
0
ファイル: ContratoService.cs プロジェクト: ertprs/crm_fonte
 public List <ClienteParticipante> ObterClientesParticipantesPor(Contrato contrato, Model.Conta cliente)
 {
     return(RepositoryService.Contrato.ObterClientesParticipantesPor(contrato, cliente));
 }
コード例 #15
0
 public List <HistoricoDePostagem> PesquisarHistoricoDePostagemPor(Model.Conta cliente)
 {
     return(RepositoryService.HistoricoDePostagem.PesquisarHistoricoDePostagemPor(cliente));
 }
コード例 #16
0
 public List <ClienteParticipante> ObterTodosOsEnderecosClienteParticipantePor(Model.Conta cliente)
 {
     return(RepositoryService.ClienteParticipante.ListarPor(cliente));
 }