check Issues #1

This commit is contained in:
yubaolee
2016-01-02 23:16:22 +08:00
parent 935f5e5cc1
commit 7cc293c121
3 changed files with 37 additions and 27 deletions

View File

@@ -1,4 +1,4 @@
using OpenAuth.Domain.Interface;
using OpenAuth.Domain.Interface;
using System;
using System.Collections.Generic;
using System.Linq;
@@ -35,7 +35,7 @@ namespace OpenAuth.App
var user = _repository.FindSingle(u => u.Account == userName);
if (user == null)
{
throw new Exception("<EFBFBD>û<EFBFBD><EFBFBD>ʺŲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
throw new Exception("用户帐号不存在");
}
user.CheckPassword(password);
@@ -43,32 +43,32 @@ namespace OpenAuth.App
{
User = user
};
//<EFBFBD>û<EFBFBD><EFBFBD><EFBFBD>ɫ
//用户角色
var userRoleIds =
_relevanceRepository.Find(u => u.FirstId == user.Id && u.Key == "UserRole").Select(u => u.SecondId).ToList();
//<EFBFBD>û<EFBFBD><EFBFBD><EFBFBD>ɫ<EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD>ID
//用户角色与自己分配到的模块ID
var moduleIds =
_relevanceRepository.Find(
u =>
(u.FirstId == user.Id && u.Key == "UserModule") ||
(u.Key == "RoleModule" && userRoleIds.Contains(u.FirstId))).Select(u =>u.SecondId).ToList();
//<EFBFBD>û<EFBFBD><EFBFBD><EFBFBD>ɫ<EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IJ˵<EFBFBD>ID
//用户角色与自己分配到的菜单ID
var elementIds =
_relevanceRepository.Find(
u =>
(u.FirstId == user.Id && u.Key == "UserElement") ||
(u.Key == "RoleElement" && userRoleIds.Contains(u.FirstId))).Select(u => u.SecondId).ToList();
//<EFBFBD>ó<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>ӵ<EFBFBD>е<EFBFBD>ģ<EFBFBD><EFBFBD>
//得出最终用户拥有的模块
loginVM.Modules = _moduleRepository.Find(u => moduleIds.Contains(u.Id)).MapToList<ModuleView>();
//ģ<EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD>Ȩ<EFBFBD><EFBFBD>
//模块菜单权限
foreach (var module in loginVM.Modules)
{
module.Elements = _moduleElementRepository.Find(u => u.ModuleId == module.Id && elementIds.Contains( u.Id)).ToList();
}
//<EFBFBD>û<EFBFBD><EFBFBD><EFBFBD>ɫ<EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԴID
//用户角色与自己分配到的资源ID
var resourceIds = _relevanceRepository.Find(
u =>
(u.FirstId == user.Id && u.Key == "UserResource") ||
@@ -79,7 +79,7 @@ namespace OpenAuth.App
}
/// <summary>
/// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD>½
/// 开发者登陆
/// </summary>
public LoginUserVM LoginByDev()
{
@@ -87,11 +87,11 @@ namespace OpenAuth.App
{
User = new User
{
Name = "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˺<EFBFBD>"
Name = "开发者账号"
}
};
loginUser.Modules = _moduleRepository.Find(null).MapToList<ModuleView>();
//ģ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IJ˵<EFBFBD>
//模块包含的菜单
foreach (var module in loginUser.Modules)
{
module.Elements = _moduleElementRepository.Find(u => u.ModuleId == module.Id).ToList();