2018-12-18 19:26:37 +08:00
|
|
|
|
using Blog.Core.Services.BASE;
|
|
|
|
|
using Blog.Core.Model.Models;
|
|
|
|
|
using Blog.Core.IServices;
|
|
|
|
|
using Blog.Core.IRepository;
|
|
|
|
|
using System.Threading.Tasks;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using Blog.Core.Common;
|
2019-05-05 18:19:47 +08:00
|
|
|
|
using System.Linq;
|
2018-12-18 19:26:37 +08:00
|
|
|
|
|
|
|
|
|
namespace Blog.Core.Services
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// RoleModulePermissionServices 应用服务
|
|
|
|
|
/// </summary>
|
|
|
|
|
public class RoleModulePermissionServices : BaseServices<RoleModulePermission>, IRoleModulePermissionServices
|
|
|
|
|
{
|
2019-03-25 13:32:52 +08:00
|
|
|
|
readonly IRoleModulePermissionRepository _dal;
|
|
|
|
|
readonly IModuleRepository _moduleRepository;
|
|
|
|
|
readonly IRoleRepository _roleRepository;
|
2018-12-18 19:26:37 +08:00
|
|
|
|
|
|
|
|
|
// 将多个仓储接口注入
|
|
|
|
|
public RoleModulePermissionServices(IRoleModulePermissionRepository dal, IModuleRepository moduleRepository, IRoleRepository roleRepository)
|
|
|
|
|
{
|
2019-03-25 13:32:52 +08:00
|
|
|
|
this._dal = dal;
|
|
|
|
|
this._moduleRepository = moduleRepository;
|
|
|
|
|
this._roleRepository = roleRepository;
|
|
|
|
|
base.BaseDal = dal;
|
2018-12-18 19:26:37 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 获取全部 角色接口(按钮)关系数据
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
[Caching(AbsoluteExpiration = 10)]
|
2019-01-02 17:09:20 +08:00
|
|
|
|
public async Task<List<RoleModulePermission>> GetRoleModule()
|
2018-12-18 19:26:37 +08:00
|
|
|
|
{
|
2019-03-25 11:11:17 +08:00
|
|
|
|
var roleModulePermissions = await base.Query(a => a.IsDeleted == false);
|
2019-05-05 18:19:47 +08:00
|
|
|
|
var roles = await _roleRepository.Query(a => a.IsDeleted == false);
|
|
|
|
|
var modules = await _moduleRepository.Query(a => a.IsDeleted == false);
|
|
|
|
|
|
|
|
|
|
//var roleModulePermissionsAsync = base.Query(a => a.IsDeleted == false);
|
|
|
|
|
//var rolesAsync = _roleRepository.Query(a => a.IsDeleted == false);
|
|
|
|
|
//var modulesAsync = _moduleRepository.Query(a => a.IsDeleted == false);
|
|
|
|
|
|
|
|
|
|
//var roleModulePermissions = await roleModulePermissionsAsync;
|
|
|
|
|
//var roles = await rolesAsync;
|
|
|
|
|
//var modules = await modulesAsync;
|
|
|
|
|
|
|
|
|
|
|
2018-12-18 19:26:37 +08:00
|
|
|
|
if (roleModulePermissions.Count > 0)
|
|
|
|
|
{
|
|
|
|
|
foreach (var item in roleModulePermissions)
|
|
|
|
|
{
|
2019-05-05 18:19:47 +08:00
|
|
|
|
item.Role = roles.FirstOrDefault(d => d.Id == item.RoleId);
|
|
|
|
|
item.Module = modules.FirstOrDefault(d => d.Id == item.ModuleId);
|
2018-12-18 19:26:37 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
return roleModulePermissions;
|
|
|
|
|
}
|
|
|
|
|
|
2019-01-22 00:10:51 +08:00
|
|
|
|
public async Task<List<RoleModulePermission>> TestModelWithChildren()
|
|
|
|
|
{
|
2019-03-25 13:32:52 +08:00
|
|
|
|
return await _dal.WithChildrenModel();
|
2019-01-22 00:10:51 +08:00
|
|
|
|
}
|
2019-07-03 23:50:21 +08:00
|
|
|
|
public async Task<List<TestMuchTableResult>> QueryMuchTable()
|
|
|
|
|
{
|
|
|
|
|
return await _dal.QueryMuchTable();
|
|
|
|
|
}
|
2019-12-12 23:02:11 +08:00
|
|
|
|
|
|
|
|
|
public async Task<List<RoleModulePermission>> RoleModuleMaps()
|
|
|
|
|
{
|
|
|
|
|
return await _dal.RoleModuleMaps();
|
|
|
|
|
}
|
2018-12-18 19:26:37 +08:00
|
|
|
|
}
|
|
|
|
|
}
|