Ver código fonte

fix(task): recalculate recalculate navigation button availability after deleting selected items from task list and history list

ddx 3 semanas atrás
pai
commit
df52ef01fa
3 arquivos alterados com 32 adições e 0 exclusões
  1. 2 0
      src/layouts/BusinessZone.tsx
  2. 28 0
      src/states/permissionSlice.ts
  3. 2 0
      src/states/store.ts

+ 2 - 0
src/layouts/BusinessZone.tsx

@@ -229,6 +229,8 @@ const BusinessZone: React.FC<BusinessZoneProps> = ({ onMenuClick }) => {
     return originalName;
   };
 
+  useSelector((state: RootState) => state.permission.triggerPermissionCalc);
+
   return (
     // <div
 

+ 28 - 0
src/states/permissionSlice.ts

@@ -0,0 +1,28 @@
+import { createSlice, PayloadAction } from '@reduxjs/toolkit';
+import { deleteWorkThunk } from './patient/worklist/slices/workSlice';
+
+interface PermissionState {
+  triggerPermissionCalc: boolean;
+}
+
+const initialState: PermissionState = {
+  triggerPermissionCalc: false,
+};
+
+const permissionSlice = createSlice({
+  name: 'permission',
+  initialState,
+  reducers: {
+    setTriggerPermissionCalc: (state, action: PayloadAction<boolean>) => {
+      state.triggerPermissionCalc = action.payload;
+    },
+  },
+  extraReducers: (builder) => {
+    builder.addCase(deleteWorkThunk.fulfilled, (state) => {
+      state.triggerPermissionCalc = !state.triggerPermissionCalc;
+    });
+  },
+});
+
+export const { setTriggerPermissionCalc } = permissionSlice.actions;
+export default permissionSlice.reducer;

+ 2 - 0
src/states/store.ts

@@ -53,6 +53,7 @@ import studyFilterReducer from './patient/DiagnosticReport/studyFilterSlice';
 import templateReducer from './patient/DiagnosticReport/templateSlice';
 import imageSelectionReducer from './patient/DiagnosticReport/imageSelectionSlice';
 import diagnosticReportReducer from './patient/DiagnosticReport/slice';
+import permissionReducer from './permissionSlice';
 
 const store = configureStore({
   reducer: {
@@ -98,6 +99,7 @@ const store = configureStore({
     template: templateReducer,
     imageSelection: imageSelectionReducer,
     diagnosticReport: diagnosticReportReducer,
+    permission: permissionReducer,
   },
   middleware: (getDefaultMiddleware) =>
     getDefaultMiddleware().concat(