diff --git a/src/controllers/OrganizationController.ts b/src/controllers/OrganizationController.ts index be2f06b3..54e68676 100644 --- a/src/controllers/OrganizationController.ts +++ b/src/controllers/OrganizationController.ts @@ -617,15 +617,16 @@ export class OrganizationController extends Controller { if (!orgRevision) { throw new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูล"); } - - if ( - !request.user.role.includes("SUPER_ADMIN") && - orgRevision.orgRevisionIsCurrent == true && - orgRevision.orgRevisionIsDraft == false - ) { - await new permission().PermissionList(request, "SYS_ORG"); + let attrOwnership = null; + if (!request.user.role.includes("SUPER_ADMIN")) { + let _privilege = await new permission().PermissionOrgList(request, "SYS_ORG"); + attrOwnership = _privilege.root == null ? true : false; } - if (orgRevision.orgRevisionIsDraft == true && orgRevision.orgRevisionIsCurrent == false) { + if ( + orgRevision.orgRevisionIsDraft == true && + orgRevision.orgRevisionIsCurrent == false && + attrOwnership == false + ) { const profile = await this.profileRepo.findOne({ where: { keycloak: request.user.sub }, relations: ["permissionProfiles"],