| | |
| | | private readonly ISys_MenuService _menuService; |
| | | private readonly ISys_RoleRepository _RoleRepository; |
| | | private readonly ILoginHistoryRepository _loginHistoryRepository; |
| | | private readonly IPutakeRepository _putakeRepository; |
| | | |
| | | public Sys_UserService(ISys_UserRepository repository, IUnitOfWorkManage unitOfWorkManage, |
| | | ICacheService cacheService, ISys_MenuService menuService , ISys_RoleRepository roleRepository, ILoginHistoryRepository loginHistoryRepository) : base(repository) |
| | | ICacheService cacheService, ISys_MenuService menuService , ISys_RoleRepository roleRepository, ILoginHistoryRepository loginHistoryRepository, IPutakeRepository putakeRepository) : base(repository) |
| | | { |
| | | _unitOfWorkManage = unitOfWorkManage; |
| | | _cacheService = cacheService; |
| | |
| | | _RoleRepository = roleRepository; |
| | | _RoleRepository= roleRepository; |
| | | _loginHistoryRepository = loginHistoryRepository; |
| | | |
| | | _putakeRepository = putakeRepository; |
| | | } |
| | | |
| | | public WebResponseContent Login(LoginInfo loginInfo) |
| | |
| | | _cacheService.AddOrUpdate(user.UserId.ToString(), token); |
| | | _loginHistoryRepository.AddData(loghis); |
| | | |
| | | content = WebResponseContent.Instance.OK(data: new { token, userName = user.UserTrueName, img = user.HeadImageUrl }); |
| | | content = WebResponseContent.Instance.OK(data: new { token, userName = user.UserTrueName, img = user.HeadImageUrl,ID=user.UserId }); |
| | | } |
| | | else |
| | | { |
| | |
| | | return new WebResponseContent { Status = false, Message="失败"+ex }; |
| | | } |
| | | } |
| | | |
| | | |
| | | public WebResponseContent PermissionView(int userId, string group) |
| | | { |
| | | try |
| | | { |
| | | // 1. è·åç¨æ·ä¿¡æ¯ |
| | | var user = BaseDal.QueryData(x => x.User_Id == userId).FirstOrDefault(); |
| | | var allTasks = _putakeRepository.QueryData(); |
| | | |
| | | if (user == null) |
| | | { |
| | | return new WebResponseContent { Status = false, Message = "ç¨æ·ä¸åå¨" }; |
| | | } |
| | | |
| | | string roleName = user.RoleName; |
| | | |
| | | // 2. 夿æ¯å¦æ¯è¶
级管çå |
| | | if (roleName.Contains("è¶
级管çå")) |
| | | { |
| | | // è¶
级管çåä»ç¶è¦çéæå® group |
| | | var adminTasks = allTasks.Where(x => x.Grouptype == group).ToList(); |
| | | return new WebResponseContent { Status = true, Data = adminTasks, Message = "è·åæå" }; |
| | | } |
| | | |
| | | // 3. ç¡®å®æ®éç¨æ·è§è²å¹é
çä»»å¡ç±»å |
| | | List<string> allowedGroups = new List<string>(); |
| | | |
| | | if (roleName.Contains("å°æ²")) allowedGroups.Add("å°æ²");//å¦ææ·»å è¿æ°ç»ä¸ |
| | | if (roleName.Contains("çµæ°")) allowedGroups.Add("çµæ°"); |
| | | if (roleName.Contains("æºæ¢°")) allowedGroups.Add("æºæ¢°"); |
| | | |
| | | if (allowedGroups.Count == 0) |
| | | { |
| | | return new WebResponseContent { Status = false, Message = "æ¨æ æéæ¥çä»»å¡" }; |
| | | } |
| | | |
| | | // 4. æ®éç¨æ·åªè½çèªå·±æéèå´å
çä»»å¡ |
| | | if (!allowedGroups.Contains(group)) |
| | | { |
| | | return new WebResponseContent { Status = false, Message = "æ¨æ æéæ¥ç该任å¡ç±»å«" }; |
| | | } |
| | | |
| | | var tasks = allTasks.Where(t => t.Grouptype == group).ToList(); |
| | | |
| | | return new WebResponseContent { Status = true, Data = tasks, Message = "è·åæå" }; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return new WebResponseContent { Status = false, Message = "é误: " + ex.Message }; |
| | | } |
| | | } |
| | | |
| | | } |
| | | } |