Exemple #1
0
        public PessoaJuridicaCommands CadastrarPessoaJuridica(CadastrarPessoaJuridicaViewModel cadastrarPessoaJuridicaVM)
        {
            var pessoaJuridica = PessoaJuridicaAdapter.ToDomainModel(cadastrarPessoaJuridicaVM.DadosDaPessoaJuridica);

            var socio          = PessoaFisicaAdapter.ToDomainModel(cadastrarPessoaJuridicaVM.DadosDaPessoaJuridica.Socio);
            var socioPrincipal = _pessoaFisicaService.Adicionar(socio);

            pessoaJuridica.DefinirSocioPrincipal(socioPrincipal);
            pessoaJuridica.DefinirSocioPrincipal(socioPrincipal.IdPessoa);

            if (cadastrarPessoaJuridicaVM.DadosDeEndereco != null)
            {
                var endereco = EnderecoAdapter.ToDomainModel(cadastrarPessoaJuridicaVM.DadosDeEndereco);
                pessoaJuridica.AdicionarEndereco(endereco);

                _enderecoService.Adicionar(endereco);
            }

            var pessoaJuridicaRetorno = _pessoaJuridicaService.Adicionar(pessoaJuridica);

            if (!string.IsNullOrEmpty(cadastrarPessoaJuridicaVM.Telefone.Valor))
            {
                cadastrarPessoaJuridicaVM.Telefone.PessoaId = pessoaJuridica.IdPessoa;
                var telefone = MeioDeComunicacaoAdapter.ToDomainModel(cadastrarPessoaJuridicaVM.Telefone, _tipoDeMeioDeComunicacaoService.ObterTipoDeMeioPor("TELEFONE"));
                _meioDeComunicacaoService.Adicionar(telefone);
            }

            if (!string.IsNullOrEmpty(cadastrarPessoaJuridicaVM.Celular.Valor))
            {
                cadastrarPessoaJuridicaVM.Celular.PessoaId = pessoaJuridica.IdPessoa;
                var celular = MeioDeComunicacaoAdapter.ToDomainModel(cadastrarPessoaJuridicaVM.Celular, _tipoDeMeioDeComunicacaoService.ObterTipoDeMeioPor("CELULAR"));
                _meioDeComunicacaoService.Adicionar(celular);
            }

            if (!string.IsNullOrEmpty(cadastrarPessoaJuridicaVM.RedeSocial.Valor))
            {
                cadastrarPessoaJuridicaVM.RedeSocial.PessoaId = pessoaJuridica.IdPessoa;
                var redeSocial = MeioDeComunicacaoAdapter.ToDomainModel(cadastrarPessoaJuridicaVM.RedeSocial, _tipoDeMeioDeComunicacaoService.ObterTipoDeMeioPor("REDE SOCIAL"));
                _meioDeComunicacaoService.Adicionar(redeSocial);
            }

            if (!string.IsNullOrEmpty(cadastrarPessoaJuridicaVM.Site.Valor))
            {
                cadastrarPessoaJuridicaVM.Site.PessoaId = pessoaJuridica.IdPessoa;
                var site = MeioDeComunicacaoAdapter.ToDomainModel(cadastrarPessoaJuridicaVM.Site, _tipoDeMeioDeComunicacaoService.ObterTipoDeMeioPor("SITE"));
                _meioDeComunicacaoService.Adicionar(site);
            }

            if (!Commit())
            {
                return(null);
            }

            return(PessoaJuridicaAdapter.ToModelDomain(pessoaJuridicaRetorno));
        }
        public PessoaJuridicaViewModel Adicionar(PessoaJuridicaViewModel cliente)
        {
            cliente.CNPJ = RemoverMascara(cliente.CNPJ);
            var pessoaJuridicaRetorno = Mapper.Map <PessoaJuridicaViewModel>
                                            (_pessoaJuridicaService.Adicionar(Mapper.Map <PessoaJuridica>(cliente)));

            //_enderecoClienteService.Adicionar(Mapper.Map<EnderecoCliente>(cliente.EnderecosCliente.FirstOrDefault()));
            //_contatoClienteService.Adicionar(Mapper.Map<ContatoCliente>(cliente.ContatosCliente.FirstOrDefault()));

            if (pessoaJuridicaRetorno.EhValido())
            {
                Commit();
            }

            return(pessoaJuridicaRetorno);
        }
Exemple #3
0
        public async Task Adicionar(PessoaJuridica pessoaFisica)
        {
            if (_pessoaFisicaService.ObterPorId(pessoaFisica.Id).Result != null)
            {
                Notificar("Já existe cliente com esse id.");
                return;
            }

            var clientePessoaJuridica = new PessoaJuridica(
                pessoaFisica.RazaoSocial,
                pessoaFisica.Cnpj,
                pessoaFisica.Nome,
                pessoaFisica.Email,
                pessoaFisica.Cep,
                pessoaFisica.Classificacao
                );

            foreach (var telefone in pessoaFisica.Telefones)
            {
                clientePessoaJuridica.AdicionarTelefone(telefone);
            }

            await _pessoaFisicaService.Adicionar(clientePessoaJuridica);
        }