diff --git a/App/lib/permissions.ts b/App/lib/permissions.ts index 604a17c..a02b9b3 100644 --- a/App/lib/permissions.ts +++ b/App/lib/permissions.ts @@ -42,7 +42,8 @@ const ROLE_PERMISSIONS: Record = { "manage_vessels_accounts", "manage_products", "manage_sites", - "confirm_receipt" + "confirm_receipt", + "process_payment" ], SUPERUSER: [ "create_po", diff --git a/App/lib/po-state-machine.ts b/App/lib/po-state-machine.ts index ed241a3..0ce7adb 100644 --- a/App/lib/po-state-machine.ts +++ b/App/lib/po-state-machine.ts @@ -100,13 +100,13 @@ const TRANSITIONS: Partial> = { SENT_FOR_PAYMENT: { mark_paid: { to: "PAID_DELIVERED", - allowedRoles: ["ACCOUNTS", "SUPERUSER"], + allowedRoles: ["ACCOUNTS", "SUPERUSER", "MANAGER"], requiresNote: false, sideEffects: ["EMAIL_SUBMITTER", "EMAIL_MANAGER"], }, mark_partial_payment: { to: "PARTIALLY_PAID", - allowedRoles: ["ACCOUNTS", "SUPERUSER"], + allowedRoles: ["ACCOUNTS", "SUPERUSER", "MANAGER"], requiresNote: false, sideEffects: [], }, @@ -114,25 +114,25 @@ const TRANSITIONS: Partial> = { PARTIALLY_PAID: { mark_paid: { to: "PAID_DELIVERED", - allowedRoles: ["ACCOUNTS", "SUPERUSER"], + allowedRoles: ["ACCOUNTS", "SUPERUSER", "MANAGER"], requiresNote: false, sideEffects: [], }, mark_partial_payment: { to: "PARTIALLY_PAID", - allowedRoles: ["ACCOUNTS", "SUPERUSER"], + allowedRoles: ["ACCOUNTS", "SUPERUSER", "MANAGER"], requiresNote: false, sideEffects: [], }, confirm_receipt: { to: "CLOSED", - allowedRoles: ["TECHNICAL", "MANNING", "SUPERUSER"], + allowedRoles: ["TECHNICAL", "MANNING", "SUPERUSER", "MANAGER"], requiresNote: false, sideEffects: [], }, confirm_partial_receipt: { to: "PARTIALLY_PAID", - allowedRoles: ["TECHNICAL", "MANNING", "SUPERUSER"], + allowedRoles: ["TECHNICAL", "MANNING", "SUPERUSER", "MANAGER"], requiresNote: false, sideEffects: [], }, @@ -140,13 +140,13 @@ const TRANSITIONS: Partial> = { PAID_DELIVERED: { confirm_receipt: { to: "CLOSED", - allowedRoles: ["TECHNICAL", "MANNING", "SUPERUSER"], + allowedRoles: ["TECHNICAL", "MANNING", "SUPERUSER", "MANAGER"], requiresNote: false, sideEffects: ["EMAIL_MANAGER", "EMAIL_ACCOUNTS"], }, confirm_partial_receipt: { to: "PARTIALLY_CLOSED", - allowedRoles: ["TECHNICAL", "MANNING", "SUPERUSER"], + allowedRoles: ["TECHNICAL", "MANNING", "SUPERUSER", "MANAGER"], requiresNote: false, sideEffects: [], }, @@ -154,13 +154,13 @@ const TRANSITIONS: Partial> = { PARTIALLY_CLOSED: { confirm_receipt: { to: "CLOSED", - allowedRoles: ["TECHNICAL", "MANNING", "SUPERUSER"], + allowedRoles: ["TECHNICAL", "MANNING", "SUPERUSER", "MANAGER"], requiresNote: false, sideEffects: ["EMAIL_MANAGER", "EMAIL_ACCOUNTS"], }, confirm_partial_receipt: { to: "PARTIALLY_CLOSED", - allowedRoles: ["TECHNICAL", "MANNING", "SUPERUSER"], + allowedRoles: ["TECHNICAL", "MANNING", "SUPERUSER", "MANAGER"], requiresNote: false, sideEffects: [], },