diff options
Diffstat (limited to 'Gestor.Infrastructure/Gestor.Infrastructure.Repository.Logic/ClienteEmailRepository.cs')
| -rw-r--r-- | Gestor.Infrastructure/Gestor.Infrastructure.Repository.Logic/ClienteEmailRepository.cs | 248 |
1 files changed, 0 insertions, 248 deletions
diff --git a/Gestor.Infrastructure/Gestor.Infrastructure.Repository.Logic/ClienteEmailRepository.cs b/Gestor.Infrastructure/Gestor.Infrastructure.Repository.Logic/ClienteEmailRepository.cs deleted file mode 100644 index 6d40eff..0000000 --- a/Gestor.Infrastructure/Gestor.Infrastructure.Repository.Logic/ClienteEmailRepository.cs +++ /dev/null @@ -1,248 +0,0 @@ -using AutoMapper;
-using Gestor.Infrastructure.Entities.Generic;
-using Gestor.Infrastructure.Entities.Seguros;
-using Gestor.Infrastructure.Mappers;
-using Gestor.Infrastructure.Repository.Generic;
-using Gestor.Infrastructure.Repository.Interface;
-using Gestor.Infrastructure.UnitOfWork.Generic;
-using Gestor.Model.Domain.Generic;
-using Gestor.Model.Domain.Seguros;
-using NHibernate;
-using NHibernate.Connection;
-using NHibernate.Impl;
-using System;
-using System.Collections.Generic;
-using System.Data;
-using System.Data.Common;
-using System.Data.SqlClient;
-using System.Linq;
-using System.Linq.Expressions;
-using System.Runtime.CompilerServices;
-
-namespace Gestor.Infrastructure.Repository.Logic
-{
- public class ClienteEmailRepository : GenericRepository<ClienteEmailDb>, IClienteEmailRepository, IGenericRepository<ClienteEmailDb>
- {
- private readonly GenericUnitOfWork _unitOfWork;
-
- public ClienteEmailRepository(GenericUnitOfWork unitOfWork) : base(unitOfWork.Session)
- {
- this._unitOfWork = unitOfWork;
- }
-
- public void Delete(long id)
- {
- base.Delete(base.FindEntityById(id));
- }
-
- public List<ClienteEmail> DeleteMail(long clienteId, List<ClienteEmail> emails)
- {
- if (emails == null)
- {
- return null;
- }
- List<ClienteEmailDb> list = (
- from x in base.All()
- where x.Cliente.Id == clienteId
- select x).ToList<ClienteEmailDb>().Where<ClienteEmailDb>((ClienteEmailDb email) => {
- List<ClienteEmail> clienteEmails = emails;
- Func<ClienteEmail, long> u003cu003e9_112 = ClienteEmailRepository.u003cu003ec.u003cu003e9__11_2;
- if (u003cu003e9_112 == null)
- {
- u003cu003e9_112 = (ClienteEmail t) => t.Id;
- ClienteEmailRepository.u003cu003ec.u003cu003e9__11_2 = u003cu003e9_112;
- }
- return !clienteEmails.Select<ClienteEmail, long>(u003cu003e9_112).Contains<long>(email.Id);
- }).ToList<ClienteEmailDb>();
- if (emails.Count == 0 && (list == null || list.Count == 0))
- {
- return null;
- }
- ClienteEmailRepository clienteEmailRepository = this;
- list.ForEach(new Action<ClienteEmailDb>(clienteEmailRepository.Delete));
- return ApplicationMapper.Mapper.Map<List<ClienteEmailDb>, List<ClienteEmail>>(list);
- }
-
- private List<ClienteEmail> FindByCliente(long id)
- {
- return this.Select(string.Format(" AND cm.idcliente = {0}", id));
- }
-
- public List<ClienteEmail> FindByCliente(List<long> ids)
- {
- if (ids.Count == 0)
- {
- return new List<ClienteEmail>();
- }
- string str = string.Concat(" AND cm.idcliente IN (", string.Join<long>(",", ids), ")");
- return this.Select(str);
- }
-
- public List<ClienteEmail> FindByClienteId(long id)
- {
- return this.FindByCliente(id);
- }
-
- public ClienteEmail FindById(long id)
- {
- ClienteEmailDb clienteEmailDb = base.FindEntityById(id);
- return ApplicationMapper.Mapper.Map<ClienteEmailDb, ClienteEmail>(clienteEmailDb);
- }
-
- public List<ClienteEmail> FindEmailCliente(string email, long idempresa = 0L)
- {
- return this.Select((idempresa == 0 ? string.Concat(" AND cm.email LIKE '%", email, "%'") : string.Format(" AND c.idempresa = {0} AND CONTAINS(cm.email, \"%{1}%\")", idempresa, email)));
- }
-
- public List<ClienteEmail> Inserir(List<ClienteEmail> emails, Cliente cliente)
- {
- emails.ForEach((ClienteEmail x) => {
- string str;
- x.Cliente = cliente;
- ClienteEmail clienteEmail = x;
- string observacao = x.Observacao;
- if (observacao != null)
- {
- str = observacao.Trim();
- }
- else
- {
- str = null;
- }
- clienteEmail.Observacao = str;
- });
- List<ClienteEmailDb> clienteEmailDbs = ApplicationMapper.Mapper.Map<List<ClienteEmail>, List<ClienteEmailDb>>(emails);
- base.AddRange(clienteEmailDbs);
- return ApplicationMapper.Mapper.Map<List<ClienteEmailDb>, List<ClienteEmail>>(clienteEmailDbs);
- }
-
- public List<ClienteEmail> Inserir(List<ClienteEmail> emails)
- {
- List<ClienteEmailDb> clienteEmailDbs = ApplicationMapper.Mapper.Map<List<ClienteEmail>, List<ClienteEmailDb>>(emails);
- clienteEmailDbs.ForEach((ClienteEmailDb x) => {
- string str;
- ClienteEmailDb clienteEmailDb = x;
- string observacao = x.Observacao;
- if (observacao != null)
- {
- str = observacao.Trim();
- }
- else
- {
- str = null;
- }
- clienteEmailDb.Observacao = str;
- if (x.Id == 0)
- {
- this.SaveOrUpdate(x);
- return;
- }
- base.Merge(x);
- });
- return ApplicationMapper.Mapper.Map<List<ClienteEmailDb>, List<ClienteEmail>>(clienteEmailDbs);
- }
-
- public ClienteEmail Merge(ClienteEmail clienteEmail)
- {
- string str;
- ClienteEmailDb clienteEmailDb = ApplicationMapper.Mapper.Map<ClienteEmail, ClienteEmailDb>(clienteEmail);
- ClienteEmailDb clienteEmailDb1 = clienteEmailDb;
- string observacao = clienteEmailDb.Observacao;
- if (observacao != null)
- {
- str = observacao.Trim();
- }
- else
- {
- str = null;
- }
- clienteEmailDb1.Observacao = str;
- base.Merge(clienteEmailDb);
- return ApplicationMapper.Mapper.Map<ClienteEmailDb, ClienteEmail>(clienteEmailDb);
- }
-
- public List<ClienteEmail> Merge(List<ClienteEmail> emails, Cliente cliente)
- {
- List<ClienteEmailDb> clienteEmailDbs = ApplicationMapper.Mapper.Map<List<ClienteEmail>, List<ClienteEmailDb>>(emails);
- clienteEmailDbs.ForEach((ClienteEmailDb x) => {
- string str;
- ClienteEmailDb clienteEmailDb = x;
- string observacao = x.Observacao;
- if (observacao != null)
- {
- str = observacao.Trim();
- }
- else
- {
- str = null;
- }
- clienteEmailDb.Observacao = str;
- if (x.Id != 0)
- {
- base.Merge(x);
- return;
- }
- x.Cliente = ApplicationMapper.Mapper.Map<Cliente, ClienteDb>(cliente);
- this.SaveOrUpdate(x);
- });
- return ApplicationMapper.Mapper.Map<List<ClienteEmailDb>, List<ClienteEmail>>(clienteEmailDbs);
- }
-
- public ClienteEmail SaveOrUpdate(ClienteEmail clienteEmail)
- {
- string str;
- ClienteEmailDb clienteEmailDb = ApplicationMapper.Mapper.Map<ClienteEmail, ClienteEmailDb>(clienteEmail);
- ClienteEmailDb clienteEmailDb1 = clienteEmailDb;
- string observacao = clienteEmailDb.Observacao;
- if (observacao != null)
- {
- str = observacao.Trim();
- }
- else
- {
- str = null;
- }
- clienteEmailDb1.Observacao = str;
- this.SaveOrUpdate(clienteEmailDb);
- return ApplicationMapper.Mapper.Map<ClienteEmailDb, ClienteEmail>(clienteEmailDb);
- }
-
- private List<ClienteEmail> Select(string condition)
- {
- object connection;
- DataTable dataTable = new DataTable();
- SessionFactoryImpl sessionFactory = this._unitOfWork.Session.SessionFactory as SessionFactoryImpl;
- if (sessionFactory != null)
- {
- connection = sessionFactory.ConnectionProvider.GetConnection();
- }
- else
- {
- connection = null;
- }
- using (SqlConnection sqlConnection = connection as SqlConnection)
- {
- using (SqlCommand sqlCommand = sqlConnection.CreateCommand())
- {
- sqlCommand.CommandText = string.Concat("SELECT cm.idclimail AS Id, cm.idcliente as IdCliente, cm.email AS Email, cm.obs AS Observacao, cm.ordem AS Ordem, c.nome as NomeCliente FROM climail cm INNER JOIN cliente c ON c.idcliente = cm.idcliente WHERE 1=1 ", condition);
- using (SqlDataAdapter sqlDataAdapter = new SqlDataAdapter())
- {
- sqlDataAdapter.SelectCommand = sqlCommand;
- sqlDataAdapter.Fill(dataTable);
- }
- }
- }
- List<ClienteEmail> clienteEmails = CustomMap.MapEmail(dataTable);
- int? nullable1 = new int?(0);
- clienteEmails.ForEach((ClienteEmail x) => {
- int? ordem = nullable1;
- int? nullable = ordem;
- nullable1 = (nullable.HasValue ? new int?(nullable.GetValueOrDefault() + 1) : null);
- ClienteEmail clienteEmail = x;
- ordem = x.Ordem;
- clienteEmail.Ordem = (ordem.HasValue ? ordem : nullable1);
- });
- return clienteEmails;
- }
- }
-}
\ No newline at end of file |