public SignUpAccountDTO getAccountById(int id) { using (var uow = new UnitOfWork()) { var accountRepository = uow.GetRepository <Account>(); var adressRepository = uow.GetRepository <Adress>(); Account account = accountRepository.GetById(id); if (account == null) { return(null); } Adress adress = adressRepository.GetById(account.AdressId); SignUpAccountMapper accountMapper = new SignUpAccountMapper(); SignUpAccountDTO accountVM = accountMapper.MapToDTO(account); return(accountVM); } }
public AccountSimpleDTO addAccount(SignUpAccountDTO accountVM) { using (var uow = new UnitOfWork()) { var accountRepository = uow.GetRepository <Account>(); var adressRepository = uow.GetRepository <Adress>(); AdressService addressService = new AdressService(); SignUpAccountMapper accountMaper = new SignUpAccountMapper(); Account account = accountMaper.MapFromDTO(accountVM); var queryAccounts = accountRepository.FindBy(ac => ac.UserName == accountVM.UserName | ac.Email == accountVM.Email); var existAc = queryAccounts.FirstOrDefault(); if (existAc == null) { var queryAddress = adressRepository.FindBy(ad => ad.latitude == accountVM.Adress.latitude & ad.longitude == accountVM.Adress.longitude); var existAd = queryAddress.FirstOrDefault(); if (existAd != null) { account.Adress = existAd; } } else { return(null); } accountRepository.Add(account); uow.SaveChanges(); AccountSimpleMapper simpleAccountMapper = new AccountSimpleMapper(); return(simpleAccountMapper.MapToDTO(account)); } }