task-f
This commit is contained in:
@@ -6,7 +6,10 @@ export const BUSINESS_ROLES = [
|
||||
'infrastructure',
|
||||
'application',
|
||||
'auditor',
|
||||
'viewer'
|
||||
'viewer',
|
||||
'sales_manager',
|
||||
'department_manager',
|
||||
'top_manager'
|
||||
] as const;
|
||||
|
||||
export type SystemRole = (typeof SYSTEM_ROLES)[number];
|
||||
@@ -44,7 +47,12 @@ export const PERMISSIONS = {
|
||||
crmQuotationTopicManage: 'crm.quotation.topic.manage',
|
||||
crmQuotationFollowupManage: 'crm.quotation.followup.manage',
|
||||
crmQuotationAttachmentManage: 'crm.quotation.attachment.manage',
|
||||
crmQuotationRevisionCreate: 'crm.quotation.revision.create'
|
||||
crmQuotationRevisionCreate: 'crm.quotation.revision.create',
|
||||
crmApprovalRead: 'crm.approval.read',
|
||||
crmApprovalSubmit: 'crm.approval.submit',
|
||||
crmApprovalApprove: 'crm.approval.approve',
|
||||
crmApprovalReject: 'crm.approval.reject',
|
||||
crmApprovalReturn: 'crm.approval.return'
|
||||
} as const;
|
||||
|
||||
export type Permission = (typeof PERMISSIONS)[keyof typeof PERMISSIONS];
|
||||
@@ -81,7 +89,12 @@ function getMembershipBasePermissions(role: MembershipRole): Permission[] {
|
||||
PERMISSIONS.crmQuotationTopicManage,
|
||||
PERMISSIONS.crmQuotationFollowupManage,
|
||||
PERMISSIONS.crmQuotationAttachmentManage,
|
||||
PERMISSIONS.crmQuotationRevisionCreate
|
||||
PERMISSIONS.crmQuotationRevisionCreate,
|
||||
PERMISSIONS.crmApprovalRead,
|
||||
PERMISSIONS.crmApprovalSubmit,
|
||||
PERMISSIONS.crmApprovalApprove,
|
||||
PERMISSIONS.crmApprovalReject,
|
||||
PERMISSIONS.crmApprovalReturn
|
||||
];
|
||||
}
|
||||
|
||||
@@ -91,7 +104,8 @@ function getMembershipBasePermissions(role: MembershipRole): Permission[] {
|
||||
PERMISSIONS.crmContactRead,
|
||||
PERMISSIONS.crmEnquiryRead,
|
||||
PERMISSIONS.crmEnquiryFollowupRead,
|
||||
PERMISSIONS.crmQuotationRead
|
||||
PERMISSIONS.crmQuotationRead,
|
||||
PERMISSIONS.crmApprovalRead
|
||||
];
|
||||
}
|
||||
|
||||
@@ -108,6 +122,9 @@ export function getBusinessRolePermissions(role: BusinessRole): Permission[] {
|
||||
case 'auditor':
|
||||
return [PERMISSIONS.reportRead];
|
||||
case 'viewer':
|
||||
case 'sales_manager':
|
||||
case 'department_manager':
|
||||
case 'top_manager':
|
||||
default:
|
||||
return [];
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user