コード例 #1
0
ファイル: RoleRepository.cs プロジェクト: ousoft/Oyang
        public void SetPermission(SetPermissionInputDto input)
        {
            var list       = DbContext.Set <RolePermissionEntity>().Where(t => t.RoleId == input.RoleId).ToList();
            var listRemove = list.Where(t => !input.PermissionIds.Contains(t.PermissionId)).ToArray();

            DbContext.RemoveAttachAudit(listRemove);

            var listExisPermissionId = list.Select(t => t.PermissionId).ToList();
            var listAdd = input.PermissionIds.Where(t => !listExisPermissionId.Contains(t))
                          .Select(t => new RolePermissionEntity()
            {
                Id           = Guid.NewGuid(),
                PermissionId = t,
                RoleId       = input.RoleId,
            }).ToArray();

            DbContext.AddAttachAudit(listAdd);
        }
コード例 #2
0
 public void SetPermission(SetPermissionInputDto input)
 {
     _repository.SetPermission(input);
 }