Ejemplo n.º 1
0
        public PersonModel Update(PersonModel dto)
        {
            try
            {
                using (var scope = new TransactionScope(TransactionScopeAsyncFlowOption.Enabled))
                {
                    var entity = _mapper.Map <Person>(dto);
                    var person = _peopleAgent.AddOrUpdate(entity);

                    foreach (var client in dto.Clients)
                    {
                        var clientEntity = _mapper.Map <Client>(client);
                        if (clientEntity.PersonId == person.Id)
                        {
                            continue;
                        }

                        clientEntity.Id       = 0;
                        clientEntity.PersonId = person.Id;
                        _clientAgent.AddOrUpdate(clientEntity);
                    }

                    var personDto = _mapper.Map <PersonModel>(person);

                    scope.Complete();
                    return(personDto);
                }
            }
            catch (Exception ex)
            {
            }
            return(null);
        }
Ejemplo n.º 2
0
 public ClientModel AddOrUpdate(ClientModel dto)
 {
     try
     {
         var entity    = _mapper.Map <Client>(dto);
         var client    = _clientAgent.AddOrUpdate(entity);
         var clientDto = _mapper.Map <ClientModel>(client);
         return(clientDto);
     }
     catch (Exception ex)
     {
     }
     return(null);
 }