|
@@ -561,14 +561,18 @@ class AiResultModifierController extends GetxController {
|
|
|
PromptBox.toast(i18nBook.user.saveFailed.t);
|
|
|
return;
|
|
|
}
|
|
|
- bool hasRemedicalAISelectedInfoCode = measureData
|
|
|
+ //该逻辑是为了判断当前是否是编辑状态
|
|
|
+ //如果AIEditCode为空,说明当前模式为从源Vid里新建单帧Vid进行AI信息的update操作
|
|
|
+ //否则,则是在一个编辑过的Vid上面进行AI信息的update操作
|
|
|
+ bool isAIEditMode = measureData
|
|
|
.measureImageData.remedicalAISelectedInfoCode.isNotNullOrEmpty;
|
|
|
+
|
|
|
final result =
|
|
|
await rpcHelper.rpc.remedical.saveRemedicalAISelectedInfoAsync(
|
|
|
SaveRemedicalAISelectedInfoRequest(
|
|
|
token: rpcHelper.userToken,
|
|
|
- remedicalCode: hasRemedicalAISelectedInfoCode ? null : remedicalCode,
|
|
|
- code: hasRemedicalAISelectedInfoCode
|
|
|
+ remedicalCode: remedicalCode,
|
|
|
+ code: isAIEditMode
|
|
|
? measureData.measureImageData.remedicalAISelectedInfoCode
|
|
|
: null,
|
|
|
frameIndex: currFrameIndex,
|
|
@@ -595,10 +599,13 @@ class AiResultModifierController extends GetxController {
|
|
|
/// 加载AI结果并调用绘制
|
|
|
Future<void> _initAIResult() async {
|
|
|
try {
|
|
|
+ var existAIResult = jsonDecode(measureData.aiResults);
|
|
|
+ //当aiResult==1时,为具有单帧AI结果图像,无论是编辑过的还是原vid的单帧图像
|
|
|
+ //均可用此从measureData里读取,不受影响,因此该处无需区分图像源是AI编辑还是普通VID
|
|
|
if (measureData
|
|
|
- .measureImageData.remedicalAISelectedInfoCode.isNotNullOrEmpty) {
|
|
|
- resultDTO = AIDiagnosisPerImageDTO.fromJson(
|
|
|
- jsonDecode(measureData.aiResults)[0]);
|
|
|
+ .measureImageData.remedicalAISelectedInfoCode.isNotNullOrEmpty &&
|
|
|
+ existAIResult.length == 1) {
|
|
|
+ resultDTO = AIDiagnosisPerImageDTO.fromJson(existAIResult[0]);
|
|
|
} else {
|
|
|
final result =
|
|
|
await rpcHelper.rpc.remedical.getRemedicalDiagnosisDataAsync(
|
|
@@ -608,9 +615,9 @@ class AiResultModifierController extends GetxController {
|
|
|
frameIndex: currFrameIndex,
|
|
|
),
|
|
|
);
|
|
|
+
|
|
|
resultDTO = AIDiagnosisPerImageDTO.fromJson(jsonDecode(result));
|
|
|
}
|
|
|
-
|
|
|
modifiedDataDTO = resultDTO;
|
|
|
contours = resultDTO.diagResultsForEachOrgan![0]
|
|
|
.detectedObjects![currentAiDetectedObjectIndex].contours ??
|