/// <summary> /// 创建 /// </summary> /// <param name="input"></param> /// <returns></returns> public async Task CreateAsync(CreateHouseDto input) { if (!AbpSession.TenantId.HasValue) { throw new InvalidOperationException("不能添加小区!"); } input.TenantId = AbpSession.TenantId.Value; var community = ObjectMapper.Map <House>(input); await _houseReposity.InsertAsync(community); }
private static BBIT.Domain.Entities.House.House ConvertCreateHouseDtoToHouse(CreateHouseDto createHouseDto) { return(new BBIT.Domain.Entities.House.House { Id = createHouseDto.House.Id != null?Guid.Parse(createHouseDto.House.Id) : Guid.Empty, HouseNumber = createHouseDto.House.HouseNumber, StreetName = createHouseDto.House.StreetName, City = createHouseDto.House.City, Country = createHouseDto.House.Country, PostCode = createHouseDto.House.PostCode }); }
public async Task <CreateHouseDto> CreateHouseAsync(CreateHouseDto createHouseDto) { var house = _dbContext.Houses.FirstOrDefault(x => x.Country == createHouseDto.House.Country && x.City == createHouseDto.House.City && x.StreetName == createHouseDto.House.StreetName && x.HouseNumber == createHouseDto.House.HouseNumber); if (house != null) { return new CreateHouseDto { Errors = new[] { $"House with address: '{house.Country}, {house.City}, {house.StreetName}, {house.HouseNumber}' already exist" }, Status = false, ServerError = false } } ; Guid id; do { id = Guid.NewGuid(); } while (_dbContext.Houses.FirstOrDefault(x => x.Id == id) != null); BBIT.Domain.Entities.House.House newHouse = createHouseDto.CreateDtoToHouse(); newHouse.Id = id; await _dbContext.Houses.AddAsync(newHouse); try { await _dbContext.SaveChangesAsync(); var newHouseDtoToReturn = newHouse.HouseToCreateHouseDto(); newHouseDtoToReturn.Status = true; return(newHouseDtoToReturn); } catch (Exception e) { _logger.LogError($"Error on adding new house into database. Exception message: {e.Message};\nInner message: {e.InnerException?.Message}"); return(new CreateHouseDto { Errors = new[] { "Error on adding new house into database." }, ServerError = true, Status = false }); } }
public static BBIT.Domain.Entities.House.House CreateDtoToHouse(this CreateHouseDto createHouseDto) => ConvertCreateHouseDtoToHouse(createHouseDto);