mirror of
https://github.com/R0m1k3/LogiFlow.git
synced 2026-10-11 17:27:31 +02:00
Improve access control for reconciliation validation and editing features
Update reconciliation page to use role-based permissions instead of hardcoded admin checks for validation and editing actions. Replit-Commit-Author: Agent Replit-Commit-Session-Id: 28b81ac1-a55f-409c-b6a9-88ad420d8a9a Replit-Commit-Checkpoint-Type: full_checkpoint
This commit is contained in:
1 parent
bc936c285b
commit
26fef5ba29
1 file changed
+5
-5
@@ -539,10 +539,10 @@ export default function BLReconciliation() {
|
||||
};
|
||||
|
||||
const handleDevalidateReconciliation = async (deliveryId: number) => {
|
||||
if (user?.role !== 'admin') {
|
||||
if (!permissions.canEdit('reconciliation') && !permissions.canValidate('reconciliation')) {
|
||||
toast({
|
||||
title: "Accès refusé",
|
||||
description: "Seuls les administrateurs peuvent dévalider les rapprochements",
|
||||
description: "Vous n'avez pas les permissions nécessaires pour dévalider les rapprochements",
|
||||
variant: "destructive",
|
||||
});
|
||||
return;
|
||||
@@ -1019,10 +1019,10 @@ export default function BLReconciliation() {
|
||||
<h4 className="text-sm font-medium text-blue-900">Mode rapprochement automatique</h4>
|
||||
<p className="text-sm text-blue-700 mt-1">
|
||||
Les livraisons de fournisseurs en mode automatique sont validées automatiquement lorsqu'elles ont le statut "delivered" et un numéro de BL.
|
||||
{user?.role === 'admin' ? (
|
||||
{(permissions.canEdit('reconciliation') || permissions.canValidate('reconciliation')) ? (
|
||||
" Vous pouvez dévalider ces rapprochements si nécessaire."
|
||||
) : (
|
||||
" Seuls les administrateurs peuvent dévalider ces rapprochements."
|
||||
" Seuls les utilisateurs autorisés peuvent dévalider ces rapprochements."
|
||||
)}
|
||||
</p>
|
||||
</div>
|
||||
@@ -1129,7 +1129,7 @@ export default function BLReconciliation() {
|
||||
<Upload className="w-4 h-4" />
|
||||
</button>
|
||||
)}
|
||||
{user?.role === 'admin' && (
|
||||
{(permissions.canEdit('reconciliation') || permissions.canValidate('reconciliation')) && (
|
||||
<button
|
||||
onClick={() => handleDevalidateReconciliation(delivery.id)}
|
||||
className="text-gray-600 hover:text-orange-600 transition-colors duration-200 p-1 hover:bg-orange-50 rounded"
|
||||
|
||||
Reference in new issue
Block a user