/// <summary> /// 生成单个二维码 /// </summary> /// <param name="subProjectId"></param> /// <param name="pixel"></param> /// <returns></returns> public Task <string> SaveQrCode(Guid subProjectId, int pixel = 4) { var generator = new QRCodeGenerator(); var filePath = GetQrCodePath(subProjectId); // 如果存在就不生成 if (File.Exists(filePath)) { return(Task.FromResult(filePath)); } // 生成二维码 // var url = "https://dotnet.holacodes.com/app/home/relational-info?id=" + subProjectId; // 获取租户信息 var tenantId = CurrentUnitOfWork.GetTenantId(); var tenancyName = tenantId.HasValue ? _tenantManager.GetById((int)tenantId).TenancyName : null; // 在url里面填入租户名字 var url = $"https://dotnet.holacodes.com/public;tenancyName={tenancyName}/relational-info?id=" + subProjectId; var qrCode = new QRCode(generator.CreateQrCode(url, QRCodeGenerator.ECCLevel.M, true)); var bitmap = qrCode.GetGraphic(pixel, Color.Black, Color.White, true); bitmap.Save(filePath, ImageFormat.Jpeg); // 释放资源 qrCode.Dispose(); bitmap.Dispose(); generator.Dispose(); return(Task.FromResult(filePath)); }
protected virtual Tenant GetCurrentTenant() { using (CurrentUnitOfWork.SetTenantId(null)) { return(TenantManager.GetById(AbpSession.GetTenantId())); } }
public async Task <IActionResult> IndexAsync(int?id = 0) { var loginTenant = id <= 0 ? null : _tenantManager.GetById((int)id); var viewModel = new ChangeModalViewModel { TenancyName = loginTenant?.TenancyName, TenantId = id }; viewModel.TeneacyItems = _tenantManager.Tenants .Select(p => new ComboboxItemDto(p.Id.ToString(), p.Name) { IsSelected = viewModel.TenancyName == p.TenancyName }) .ToList(); viewModel.TeneacyItems.Add(new ComboboxItemDto("0", "Host管理员") { IsSelected = id == 0 }); viewModel.TeneacyItems.Add(new ComboboxItemDto("-1", "默认菜单") { IsSelected = id == -1 }); ViewBag.LoginInfo = await _sessionAppService.GetCurrentLoginInformations(); return(View(viewModel)); }
private string GetTenancyNameOrNull(string emailAddress) { using (CurrentUnitOfWork.DisableFilter(AbpDataFilters.MayHaveTenant)) { User user = _userManager.FindByEmail(emailAddress); if (user != null) { if (user.TenantId == null) { return(null); } Tenant tenant = _tenantManager.GetById((int)user.TenantId); return(tenant.TenancyName); } } return(_tenantCache.GetOrNull(AbpSession.TenantId.Value)?.TenancyName); }
protected virtual Tenant GetCurrentTenant() { return(TenantManager.GetById(InfrastructureSession.GetTenantId())); }
protected virtual Tenant GetCurrentTenant() { return(TenantManager.GetById(AbpSession.GetTenantId())); }