@using Common.Dtos.Exper @using HushianWebApp.Service @inject GroupService groupService; @inject UserService userService; @inject HushianWebApp.Services.ILocalStorageService localStorageService; @if (!Spinnervisible) {
@item.FullName }
@code { private string? ExperName; private bool Spinnervisible = false; [Parameter] public int GroupID { get; set; } public List Expers { get; set; } = new(); public List CoExpers { get; set; } = new(); protected override async Task OnParametersSetAsync() { Spinnervisible = true; Expers = await groupService.GetExpersFromGroupID(GroupID); Spinnervisible = false; await base.OnParametersSetAsync(); } } @functions { private async Task> DataProvider(AutoCompleteDataProviderRequest request) { CoExpers = await userService.GetExpersCompany(); return await Task.FromResult(new AutoCompleteDataProviderResult { Data = CoExpers.Where(w => w.FullName.Contains(request.Filter.Value)), TotalCount = CoExpers.Count() }); } private async Task OnAutoCompleteChanged(Read_ExperDto exper) { Spinnervisible = true; if (exper != null && !Expers.Any(a => a.ID == exper.ID) && await groupService.JoinExperToGroup(GroupID, exper.ID) ) Expers.Add(exper); Spinnervisible = false; } async Task UnJoin(Read_ExperDto exper) { Spinnervisible = true; if (exper != null && await groupService.UnJoinExperToGroup(GroupID, exper.ID)) Expers.Remove(exper); Spinnervisible = false; } }