src/EasyFrameWork/Modules/Role/RoleService.cs
(开头部分) 5KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
/* http://www.zkea.net/ Copyright 2016 ZKEASOFT http://www.zkea.net/licenses */
using Easy.Extend;
using Easy.RepositoryPattern;
using System.Linq;
using Microsoft.EntityFrameworkCore;
using System;
using System.Collections.Generic;
using Easy.Constant;
using System.Linq.Expressions;
namespace Easy.Modules.Role
{
public class RoleService : ServiceBase<RoleEntity, EasyDbContext>, IRoleService
{
private readonly IPermissionService _permissionService;
private readonly IUserRoleRelationService _userRoleRelationService;
public RoleService(IPermissionService permissionService,
IUserRoleRelationService userRoleRelationService,
IApplicationContext applicationContext,
EasyDbContext easyDbContext)
: base(applicationContext, easyDbContext)
{
_permissionService = permissionService;
_userRoleRelationService = userRoleRelationService;
}
public override DbSet<RoleEntity> CurrentDbSet
{
get
{
return DbContext.Roles;
}
}
public ServiceResult<RoleEntity> Add(RoleEntity roleEntity, List<PermissionDescriptor> permissionDescriptors)
{
return BeginTransaction(() =>
{
var result = Add(roleEntity);
if (result.HasViolation) return result;
var permissions = new List<Permission>();
permissionDescriptors.Where(m => m.Checked ?? false).Each(m =>
{
permissions.Add(new Permission
{
RoleId = roleEntity.ID,
PermissionKey = m.Key,
Module = m.Module,
Title = m.Title,
ActionType = ActionType.Create
});
});
_permissionService.AddRange(permissions.ToArray());
return result;
});
}
public IList<Permission> GetPermission(int roleId)
{
return _permissionService.Get(m => m.RoleId == roleId);
后面还有 87 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。