|
@@ -1,6 +1,6 @@
|
|
|
/* eslint-disable */
|
|
|
import { createSlice, PayloadAction, Middleware, createAsyncThunk } from '@reduxjs/toolkit';
|
|
|
-import { AprConfig, getAprExposureParams, getAprByThickness, SetAPR } from '../../API/exam/APRActions';
|
|
|
+import { AprConfig, getAprExposureParams, getAprByThickness, SetAPR, updateAprParams, AprParamsUpdateRequest, AprUpdateResponse } from '../../API/exam/APRActions';
|
|
|
import { workstationIdFromWorkstation, WorkstationType } from '../workstation';
|
|
|
import { ExtendedBodyPosition, setSelectedBodyPosition } from '../exam/bodyPositionListSlice';
|
|
|
import { initializeProductState } from '../productSlice';
|
|
@@ -241,6 +241,18 @@ const aprSlice = createSlice({
|
|
|
state.workstation = WorkstationType.Free;
|
|
|
console.log('自动设置 workstation 为 Free (VETDROS 环境)');
|
|
|
}
|
|
|
+ })
|
|
|
+ .addCase(updateAprParamsThunk.pending, (state) => {
|
|
|
+ console.log('Updating APR parameters...');
|
|
|
+ state.isPending = true;
|
|
|
+ })
|
|
|
+ .addCase(updateAprParamsThunk.fulfilled, (state, action) => {
|
|
|
+ console.log('APR parameters updated successfully:', action.payload);
|
|
|
+ state.isPending = false;
|
|
|
+ })
|
|
|
+ .addCase(updateAprParamsThunk.rejected, (state, action) => {
|
|
|
+ console.error('Failed to update APR parameters', action.error);
|
|
|
+ state.isPending = false;
|
|
|
});
|
|
|
},
|
|
|
});
|
|
@@ -430,10 +442,24 @@ export const decThickness = createAsyncThunk<number, number>('apr/decThickness',
|
|
|
return amount;
|
|
|
});
|
|
|
|
|
|
+// 定义 updateAprParamsThunk 的 payload 类型
|
|
|
+interface UpdateAprParamsPayload {
|
|
|
+ id: string;
|
|
|
+ request: AprParamsUpdateRequest;
|
|
|
+}
|
|
|
+
|
|
|
export const setExposureModeThunk = createAsyncThunk<string, string>('apr/setExposureMode', async (mode: string) => {
|
|
|
return mode;
|
|
|
});
|
|
|
|
|
|
+// 创建新的 thunk 用于更新 APR 参数
|
|
|
+export const updateAprParamsThunk = createAsyncThunk<AprUpdateResponse, UpdateAprParamsPayload>(
|
|
|
+ 'apr/updateAprParams',
|
|
|
+ async ({ id, request }) => {
|
|
|
+ return await updateAprParams(id, request);
|
|
|
+ }
|
|
|
+);
|
|
|
+
|
|
|
export const {
|
|
|
setAprConfig,
|
|
|
setBodysize,
|