| | |
| | | using WIDESEA_Core.Caches; |
| | | using SqlSugar; |
| | | using ICacheService = WIDESEA_Core.Caches.ICacheService; |
| | | using HslCommunication.WebSocket; |
| | | using System.Drawing.Drawing2D; |
| | | using System.Linq; |
| | | using MailKit.Search; |
| | | using OrderByType = SqlSugar.OrderByType; |
| | | using System.Drawing.Printing; |
| | | using WIDESEA_Core.HostedService; |
| | | |
| | | namespace WIDESEA_SystemService |
| | | { |
| | |
| | | private readonly IUnitOfWorkManage _unitOfWorkManage; |
| | | private readonly ICacheService _cacheService; |
| | | private readonly ISys_MenuService _menuService; |
| | | private readonly ISys_RoleService _roleService; |
| | | |
| | | public ISys_UserRepository Repository => BaseDal; |
| | | |
| | | public Sys_UserService(ISys_UserRepository repository, IUnitOfWorkManage unitOfWorkManage, ICacheService cacheService, ISys_MenuService menuService) : base(repository) |
| | | public Sys_UserService(ISys_UserRepository repository, IUnitOfWorkManage unitOfWorkManage, ICacheService cacheService, ISys_MenuService menuService, ISys_RoleService roleService) : base(repository) |
| | | { |
| | | _unitOfWorkManage = unitOfWorkManage; |
| | | _cacheService = cacheService; |
| | | _menuService = menuService; |
| | | _roleService = roleService; |
| | | } |
| | | |
| | | public WebResponseContent Login(LoginInfo loginInfo) |
| | |
| | | }); |
| | | |
| | | _cacheService.AddOrUpdate(user.UserId.ToString(), token); |
| | | if (PermissionDataHostService.UserRoles.FirstOrDefault(x => x.UserId == user.UserId) == null) |
| | | PermissionDataHostService.UserRoles.AddRange(PermissionDataHostService.GetUserRoles(Db, user.UserId)); |
| | | |
| | | content = WebResponseContent.Instance.OK(data: new { token, userName = user.UserTrueName, img = user.HeadImageUrl }); |
| | | content = WebResponseContent.Instance.OK(data: new { token, userName = user.UserName, img = user.HeadImageUrl, user.UserTrueName }); |
| | | } |
| | | else |
| | | { |
| | |
| | | return base.UpdateData(saveModel); |
| | | } |
| | | |
| | | public override PageGridData<Sys_User> GetPageData(PageDataOptions options) |
| | | { |
| | | int roleId = -1; |
| | | //æ å½¢èåä¼ æ¥è¯¢è§è²ä¸ææç¨æ· |
| | | if (options.Value != null) |
| | | { |
| | | roleId = options.Value.ObjToInt(); |
| | | } |
| | | |
| | | if (roleId <= 0) |
| | | { |
| | | if (App.User.IsHighestRole) return base.GetPageData(options); |
| | | roleId = App.User.RoleId; |
| | | } |
| | | int totalCount = 0; |
| | | List<int> roleIds = _roleService.GetAllChildrenRoleId(roleId).Where(x => x != roleId).ToList(); |
| | | ISugarQueryable<Sys_User> sugarQueryable = Db.Queryable<Sys_User>(); |
| | | ValidatePageOptions(options, TProperties, ref sugarQueryable); |
| | | |
| | | Dictionary<string, OrderByType> orderbyDic = options.GetPageDataSort(TProperties); |
| | | List<OrderByModel> orderByModels = new List<OrderByModel>(); |
| | | foreach (var item in orderbyDic) |
| | | { |
| | | OrderByModel orderByModel = new OrderByModel() |
| | | { |
| | | FieldName = item.Key, |
| | | OrderByType = item.Value |
| | | }; |
| | | orderByModels.Add(orderByModel); |
| | | } |
| | | List<Sys_User> users = sugarQueryable.Where(x => roleIds.Contains(x.RoleId) || x.UserId == App.User.UserId).OrderBy(orderByModels).ToPageList(options.Page, options.Rows, ref totalCount); |
| | | return new PageGridData<Sys_User> { Rows = users, Total = totalCount }; |
| | | } |
| | | |
| | | public override WebResponseContent AddData(SaveModel saveModel) |
| | | { |
| | | string pwd = "123456"; |
| | |
| | | /// <returns></returns> |
| | | public WebResponseContent GetCurrentUserInfo() |
| | | { |
| | | var data = BaseDal.QueryFirst(x => x.User_Id == App.User.UserId, s => new |
| | | var data = BaseDal.QueryFirst(x => x.UserId == App.User.UserId, s => new |
| | | { |
| | | s.UserName, |
| | | s.UserTrueName, |
| | |
| | | if (newPwd.Length < 6) return WebResponseContent.Instance.Error("å¯ç ä¸è½å°äº6ä½"); |
| | | |
| | | int userId = App.User.UserId; |
| | | string userCurrentPwd = BaseDal.QueryFirst(x => x.User_Id == userId, s => s.UserPwd); |
| | | string userCurrentPwd = BaseDal.QueryFirst(x => x.UserId == userId, s => s.UserPwd); |
| | | |
| | | string _oldPwd = oldPwd.EncryptDES(AppSecret.User); |
| | | if (_oldPwd != userCurrentPwd) return WebResponseContent.Instance.Error("æ§å¯ç 䏿£ç¡®"); |
| | |
| | | |
| | | BaseDal.UpdateData(new Sys_User |
| | | { |
| | | User_Id = userId, |
| | | UserId = userId, |
| | | UserPwd = _newPwd, |
| | | LastModifyPwdDate = DateTime.Now |
| | | }, new List<string> |