diff --git a/app/Enums/Permission.php b/app/Enums/Permission.php index 3638b6b..12709f3 100644 --- a/app/Enums/Permission.php +++ b/app/Enums/Permission.php @@ -76,6 +76,12 @@ enum Permission: string case CUTTINGS_VERIFY = 'cuttings.verify'; case CUTTINGS_REJECT = 'cuttings.reject'; + case OWNER_VERIFICATIONS_VIEW = 'owner-verifications.view'; + case OWNER_VERIFICATIONS_VERIFY = 'owner-verifications.verify'; + case OWNER_VERIFICATIONS_REJECT = 'owner-verifications.reject'; + + case STOCKS_VIEW = 'stocks.view'; + case CASH_VIEW = 'cash.view'; case CASH_DEPOSIT = 'cash.deposit'; case CASH_WITHDRAW = 'cash.withdraw'; @@ -178,6 +184,12 @@ public function label(): string self::CUTTINGS_VERIFY => 'Verifikasi Cutting', self::CUTTINGS_REJECT => 'Tolak Cutting', + self::OWNER_VERIFICATIONS_VIEW => 'Lihat Verifikasi Owner', + self::OWNER_VERIFICATIONS_VERIFY => 'Setujui Verifikasi Owner', + self::OWNER_VERIFICATIONS_REJECT => 'Tolak Verifikasi Owner', + + self::STOCKS_VIEW => 'Lihat Stok', + self::CASH_VIEW => 'Lihat Kas', self::CASH_DEPOSIT => 'Setor Kas', self::CASH_WITHDRAW => 'Tarik Kas', @@ -239,6 +251,9 @@ public function group(): string self::CUTTINGS_VIEW, self::CUTTINGS_CREATE, self::CUTTINGS_UPDATE, self::CUTTINGS_DELETE, self::CUTTINGS_COMPLETE, self::CUTTINGS_VERIFY, self::CUTTINGS_REJECT => 'Cutting', + self::OWNER_VERIFICATIONS_VIEW, self::OWNER_VERIFICATIONS_VERIFY, + self::OWNER_VERIFICATIONS_REJECT => 'Verifikasi Owner', + self::STOCKS_VIEW => 'Stok', self::CASH_VIEW, self::CASH_DEPOSIT, self::CASH_WITHDRAW, self::CASH_UPDATE, self::CASH_DELETE => 'Kas', self::EXPENSES_VIEW, self::EXPENSES_CREATE, self::EXPENSES_UPDATE, self::EXPENSES_DELETE => 'Pengeluaran', diff --git a/app/Enums/Role.php b/app/Enums/Role.php index 6bdecb5..abdb8fd 100644 --- a/app/Enums/Role.php +++ b/app/Enums/Role.php @@ -50,6 +50,8 @@ public function permissions(): array Permission::EMPLOYEES_VIEW, + Permission::STOCKS_VIEW, + Permission::ATTENDANCES_VIEW, Permission::ATTENDANCES_CREATE, Permission::ATTENDANCES_DELETE, @@ -92,6 +94,8 @@ public function permissions(): array self::ADMIN_TOKO => [ Permission::DASHBOARD_VIEW, + Permission::STOCKS_VIEW, + Permission::CUTTINGS_VERIFY, Permission::ATTENDANCES_VIEW, @@ -193,6 +197,8 @@ public function permissions(): array self::ADMIN_BAHAN_BAKU => [ Permission::DASHBOARD_VIEW, + Permission::STOCKS_VIEW, + Permission::ATTENDANCES_VIEW, Permission::ATTENDANCES_CREATE, @@ -219,6 +225,7 @@ public function permissions(): array Permission::CUTTINGS_UPDATE, Permission::CUTTINGS_DELETE, Permission::CUTTINGS_COMPLETE, + Permission::CUTTINGS_VERIFY, Permission::PURCHASES_VIEW, Permission::PURCHASES_CREATE, diff --git a/app/Http/Middleware/HandleInertiaRequests.php b/app/Http/Middleware/HandleInertiaRequests.php index 7b11aae..655432f 100644 --- a/app/Http/Middleware/HandleInertiaRequests.php +++ b/app/Http/Middleware/HandleInertiaRequests.php @@ -107,7 +107,7 @@ private function pendingCuttings(Request $request): int { $user = $request->user(); - if ($user === null || ! $user->can('cuttings.view')) { + if ($user === null || ! $user->can('stocks.view')) { return 0; } @@ -120,7 +120,7 @@ private function pendingOwnerVerifications(Request $request): int { $user = $request->user(); - if ($user === null || ! $user->can('cuttings.verify')) { + if ($user === null || ! $user->can('owner-verifications.view')) { return 0; } diff --git a/resources/js/components/AppSidebar.vue b/resources/js/components/AppSidebar.vue index bae4892..771f826 100644 --- a/resources/js/components/AppSidebar.vue +++ b/resources/js/components/AppSidebar.vue @@ -54,8 +54,8 @@ const menuGroups: MenuGroup[] = [ items: [ { title: 'Belanja', href: '/admin/manage/purchases', icon: ShoppingBag, permission: 'purchases.view' }, { title: 'Cutting', href: '/admin/manage/cuttings', icon: Scissors, permission: 'cuttings.view' }, - { title: 'Stok', href: '/admin/manage/stocks', icon: Warehouse, permission: 'cuttings.view', badgeKey: 'pendingCuttings' }, - { title: 'Verifikasi Owner', href: '/admin/manage/owner-verifications', icon: CheckCircle, permission: 'cuttings.verify', badgeKey: 'pendingOwnerVerifications' }, + { title: 'Stok', href: '/admin/manage/stocks', icon: Warehouse, permission: 'stocks.view', badgeKey: 'pendingCuttings' }, + { title: 'Verifikasi Owner', href: '/admin/manage/owner-verifications', icon: CheckCircle, permission: 'owner-verifications.view', badgeKey: 'pendingOwnerVerifications' }, { title: 'Pesanan', href: '/admin/manage/orders', icon: ShoppingCart, permission: 'orders.view' }, ], }, diff --git a/resources/js/pages/admin/manage/owner-verifications/table/data-table-actions.vue b/resources/js/pages/admin/manage/owner-verifications/table/data-table-actions.vue index 6f501c3..e07954c 100644 --- a/resources/js/pages/admin/manage/owner-verifications/table/data-table-actions.vue +++ b/resources/js/pages/admin/manage/owner-verifications/table/data-table-actions.vue @@ -76,7 +76,7 @@ function submitReject() {