Beispiel #1
0
 public ClienteLocalizacao(Cliente cliente, double latitude, double longetude)
     : this()
 {
     this.Cliente = cliente;
     this.Latitude = latitude;
     this.Longitude = longetude;
 }
Beispiel #2
0
 public List<DTOLocalizacao> ObterLocalizacao(Cliente cliente)
 {
     var localicacoes = new List<DTOLocalizacao>();
     if (cliente.ClienteLocalizacao != null)
         if (cliente.ClienteLocalizacao.Any())
             localicacoes.AddRange(cliente.ClienteLocalizacao.Select(x => new DTOLocalizacao(x.Id, x.Latitude, x.Longitude)));
     return localicacoes;
 }
Beispiel #3
0
        public bool SalvarCliente(DTOCliente dtoCliente)
        {
            try
            {
                if (dtoCliente.IdCliente != 0) // Edicao
                {
                    var cliente = ObterClientePorId(dtoCliente.IdCliente);
                    cliente.AdicionarNome(dtoCliente.Nome);
                    cliente.AdicionarEmail(dtoCliente.Email.ToLower());
                    cliente.AdicionarDocumento(dtoCliente.Cnpj);
                    cliente.AdicionarDataEntrada(DateTime.Now);
                    cliente.AdicionarContato(dtoCliente.Contato);
                    cliente.AdicionarResponsavel(dtoCliente.Responsavel);
                    cliente.AdicionarSenha(ServicoCriptografia.Encrypt(dtoCliente.Senha));

                    // -- Adiciona Remove e adiciona Localização
                    cliente.RemoverLocalizacao();

                    foreach (var localizacao in dtoCliente.Localizacoes)
                        cliente.AdicionarLocalizacao(new ClienteLocalizacao(cliente,localizacao.Latitude,localizacao.Longitude));

                    _repositorioCliente.Alterar(cliente);
                }
                else // Inclusao
                {
                    var cliente = new Cliente();
                    cliente.AdicionarNome(dtoCliente.Nome);
                    cliente.AdicionarEmail(dtoCliente.Email.ToLower());
                    cliente.AdicionarDocumento(dtoCliente.Cnpj);
                    cliente.AdicionarDataEntrada(DateTime.Now);
                    cliente.AdicionarContato(dtoCliente.Contato);
                    cliente.AdicionarResponsavel(dtoCliente.Responsavel);
                    cliente.AdicionarSenha(ServicoCriptografia.Encrypt(dtoCliente.Senha));

                    // -- Adiciona Remove e adiciona Localização
                    cliente.RemoverLocalizacao();

                    foreach (var localizacao in dtoCliente.Localizacoes)
                        cliente.AdicionarLocalizacao(new ClienteLocalizacao(cliente, localizacao.Latitude, localizacao.Longitude));

                    _repositorioCliente.Adicionar(cliente);
                }
                return true;
            }
            catch (Exception ex)
            {
                ExceptionCustom.Log(ex);
                return false;
            }
        }
Beispiel #4
0
 private DTOCliente ObterDtoCliente(Cliente cliente)
 {
     if (cliente != null)
     {
         return new DTOCliente()
         {
             IdCliente = cliente.Id,
             Cnpj = cliente.Documento,
             Contato = cliente.Contato,
             Email = cliente.Email,
             FotoUrl = "",
             Nome = cliente.Nome,
             Responsavel = cliente.Responsavel,
             Senha = _servicoCriptografia.Decrypt(cliente.Senha),
             Localizacoes = ObterLocalizacao(cliente)
         };
     }
     return new DTOCliente();
 }
Beispiel #5
0
 public ClientePromocao(Cliente cliente, Promocao promocao)
     : this()
 {
     this.Cliente = cliente;
     this.Promocao = promocao;
 }