public async Task <City> CreateDomainCity(string domain, AddressAM address)
        {
            using (var transaction = await TransactionService.BeginTransaction())
            {
                try
                {
                    var domainAddress = await AddressService.CreateDomainAddress(AddressKind.City, address);

                    var domainPricelist = await PricelistService.CreateDomainPricelist();

                    var domainCity = await DomainCityService.Create(domain, domainAddress.Id, domainPricelist.Id);

                    transaction.Commit();
                    return(domainCity);
                }
                catch
                {
                    transaction.Rollback();
                    throw;
                }
            }
        }
 public Task <bool> IsExistByDomain(string domain)
 {
     return(DomainCityService.IsExistByDomain(domain));
 }
        public async Task <City> GetDomainCityByCoordinate(Coordinate coordinate)
        {
            var domainAddress = await AddressService.GetDomainAddressByCoordinate(coordinate);

            return(await DomainCityService.GetByAddress(domainAddress.Id));
        }
 public Task <City> GetDomainCity(int cityId)
 {
     return(DomainCityService.Get(cityId));
 }