123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119 |
- using wispro.sp.web.Models;
- using wispro.sp.web.Services;
- using AntDesign.ProLayout;
- using Microsoft.AspNetCore.Components;
- using System.Collections.Generic;
- using System.Linq;
- using System.Threading.Tasks;
- using AntDesign;
- using Microsoft.AspNetCore.Components.Authorization;
- using wispro.sp.web.Auth;
- namespace wispro.sp.web.Components
- {
- public partial class RightContent
- {
- private CurrentUser _currentUser = new CurrentUser();
- private NoticeIconData[] _notifications = { };
- private NoticeIconData[] _messages = { };
- private NoticeIconData[] _events = { };
- private int _count = 0;
- private List<AutoCompleteDataItem<string>> DefaultOptions { get; set; } = new List<AutoCompleteDataItem<string>>
- {
- new AutoCompleteDataItem<string>
- {
- Label = "umi ui",
- Value = "umi ui"
- },
- new AutoCompleteDataItem<string>
- {
- Label = "Pro Table",
- Value = "Pro Table"
- },
- new AutoCompleteDataItem<string>
- {
- Label = "Pro Layout",
- Value = "Pro Layout"
- }
- };
- public AvatarMenuItem[] AvatarMenuItems { get; set; } = new AvatarMenuItem[]
- {
- new() { Key = "center", IconType = "user", Option = "个人中心"},
- new() { Key = "setting", IconType = "setting", Option = "个人设置"},
- new() { IsDivider = true },
- new() { Key = "logout", IconType = "logout", Option = "退出登录"}
- };
- [Inject] protected NavigationManager NavigationManager { get; set; }
- [Inject] protected IUserService UserService { get; set; }
- [Inject] protected IProjectService ProjectService { get; set; }
- [Inject] protected MessageService MessageService { get; set; }
- [Inject] protected IAuthService authorProvider { get; set; }
- protected override async System.Threading.Tasks.Task OnInitializedAsync()
- {
- await base.OnInitializedAsync();
- SetClassMap();
- _currentUser = UserService.CurrentUser;
- var notices = await ProjectService.GetNoticesAsync();
- _notifications = notices.Where(x => x.Type == "notification").Cast<NoticeIconData>().ToArray();
- _messages = notices.Where(x => x.Type == "message").Cast<NoticeIconData>().ToArray();
- _events = notices.Where(x => x.Type == "event").Cast<NoticeIconData>().ToArray();
- _count = notices.Length;
- }
- protected void SetClassMap()
- {
- ClassMapper
- .Clear()
- .Add("right");
- }
- public void HandleSelectUser(MenuItem item)
- {
- switch (item.Key)
- {
- case "center":
- NavigationManager.NavigateTo("/account/center");
- break;
- case "setting":
- NavigationManager.NavigateTo("/account/settings");
- break;
- case "logout":
- authorProvider.LogoutAsync();
- //NavigationManager.NavigateTo("/LoginPages");
- break;
- }
- }
- public void HandleSelectLang(MenuItem item)
- {
- }
- public async System.Threading.Tasks.Task HandleClear(string key)
- {
- switch (key)
- {
- case "notification":
- _notifications = new NoticeIconData[] { };
- break;
- case "message":
- _messages = new NoticeIconData[] { };
- break;
- case "event":
- _events = new NoticeIconData[] { };
- break;
- }
- await MessageService.Success($"清空了{key}");
- }
- public async System.Threading.Tasks.Task HandleViewMore(string key)
- {
- await MessageService.Info("Click on view more");
- }
- }
- }
|