From 0718f28e5e941c76e2894374e8aee34e85f081d1 Mon Sep 17 00:00:00 2001 From: "DESKTOP-1R2VSQH\\Lenovo ThinkPad E490" Date: Tue, 12 May 2026 13:41:12 +0700 Subject: [PATCH] fix : permission --- src/controllers/PermissionController.ts | 28 ++++++++++++------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/src/controllers/PermissionController.ts b/src/controllers/PermissionController.ts index 8ff3dfb5..27da092f 100644 --- a/src/controllers/PermissionController.ts +++ b/src/controllers/PermissionController.ts @@ -214,13 +214,13 @@ export class PermissionController extends Controller { return { ...baseAttr, parentNode: actingAttr.parentNode, - attrOwnership: actingAttr.attrOwnership, - attrIsCreate: actingAttr.attrIsCreate, - attrIsList: actingAttr.attrIsList, - attrIsGet: actingAttr.attrIsGet, - attrIsUpdate: actingAttr.attrIsUpdate, - attrIsDelete: actingAttr.attrIsDelete, - attrPrivilege: actingAttr.attrPrivilege, + attrOwnership: getHigherOwnership(actingAttr.attrOwnership, baseAttr.attrOwnership), + attrIsCreate: actingAttr.attrIsCreate || baseAttr.attrIsCreate, + attrIsList: actingAttr.attrIsList || baseAttr.attrIsList, + attrIsGet: actingAttr.attrIsGet || baseAttr.attrIsGet, + attrIsUpdate: actingAttr.attrIsUpdate || baseAttr.attrIsUpdate, + attrIsDelete: actingAttr.attrIsDelete || baseAttr.attrIsDelete, + attrPrivilege: getHigherPrivilege(actingAttr.attrPrivilege, baseAttr.attrPrivilege), // เพิ่ม metadata เพื่อระบุว่ามาจาก acting _isActing: true, }; @@ -1017,13 +1017,13 @@ export class PermissionController extends Controller { return { ...baseAttr, parentNode: actingAttr.parentNode, - attrOwnership: actingAttr.attrOwnership, - attrIsCreate: actingAttr.attrIsCreate, - attrIsList: actingAttr.attrIsList, - attrIsGet: actingAttr.attrIsGet, - attrIsUpdate: actingAttr.attrIsUpdate, - attrIsDelete: actingAttr.attrIsDelete, - attrPrivilege: actingAttr.attrPrivilege, + attrOwnership: getHigherOwnership(actingAttr.attrOwnership, baseAttr.attrOwnership), + attrIsCreate: actingAttr.attrIsCreate || baseAttr.attrIsCreate, + attrIsList: actingAttr.attrIsList || baseAttr.attrIsList, + attrIsGet: actingAttr.attrIsGet || baseAttr.attrIsGet, + attrIsUpdate: actingAttr.attrIsUpdate || baseAttr.attrIsUpdate, + attrIsDelete: actingAttr.attrIsDelete || baseAttr.attrIsDelete, + attrPrivilege: getHigherPrivilege(actingAttr.attrPrivilege, baseAttr.attrPrivilege), _isActing: true, }; }