public async Task <Guid> AddBuilding(BuildingDto building)
        {
            try
            {
                var validator        = new BuildingValidator(_unitOfWork.Buildings);
                var validationResult = await validator.ValidateAsync(building);

                if (validationResult.Errors.Count > 0)
                {
                    throw new ValidationException(validationResult);
                }
                var build = _mapper.Map <Building>(building);
                build.Number = await GenerateBuildingNumber();

                build = await _unitOfWork.Buildings.AddAsync(build);

                await _unitOfWork.SaveChangesAsync();

                return(build.Id);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        public async Task UpdateBuilding(BuildingDto buildingDto)
        {
            var building = _mapper.Map <Building>(buildingDto);
            await _unitOfWork.Buildings.UpdateAsync(building);

            StatusClass = "alert-success";
            Message     = "Building updated successfully.";
            Saved       = true;
        }