|
@@ -77,9 +77,33 @@ class MeasureDataHelper {
|
|
|
remedicalItems.add(RemedicalItemList(
|
|
|
remedicalList: remedicalInfoList,
|
|
|
));
|
|
|
+ } else if (source == VidImageSource.RemoteUS) {
|
|
|
+ // 获取患者的病历记录
|
|
|
+ PageResult<RemedicalListResult> result =
|
|
|
+ PageResult<RemedicalListResult>();
|
|
|
+ result.pageData = [];
|
|
|
+ try {
|
|
|
+ result = await RPCBridge.ins.rpc.remoteUltrasound
|
|
|
+ .vitalGetRemedicalListPagesAsync(
|
|
|
+ GetRecordsPageRequest(
|
|
|
+ token: RPCBridge.ins.userToken,
|
|
|
+ pageIndex: 1,
|
|
|
+ pageSize: 100,
|
|
|
+ patientCode: patientCode,
|
|
|
+ ),
|
|
|
+ );
|
|
|
+ } catch (e) {
|
|
|
+ logger.e('MeasureDataHelper vitalGetRemedicalListPagesAsync ex:$e');
|
|
|
+ }
|
|
|
+ // 遍历病历记录列表,当某条记录的 recordCode 与传入的 recordCode 相同时,将其 remedicalItemList 添加到 remedicalItems 中
|
|
|
+ if (result.pageData!.isNotEmpty) {
|
|
|
+ var recordInfo = result.pageData!.firstWhere(
|
|
|
+ (element) => element.recordCode == recordCode,
|
|
|
+ orElse: () => RemedicalListResult());
|
|
|
+ remedicalItems = recordInfo.remedicalItemList ?? [];
|
|
|
+ }
|
|
|
}
|
|
|
// 当数据来源为其他情况时
|
|
|
-
|
|
|
else {
|
|
|
// 获取患者的病历记录
|
|
|
PageResult<RemedicalListResult> result =
|
|
@@ -104,31 +128,6 @@ class MeasureDataHelper {
|
|
|
orElse: () => RemedicalListResult());
|
|
|
remedicalItems = recordInfo.remedicalItemList ?? [];
|
|
|
}
|
|
|
- if (kDebugMode && result.pageData!.isEmpty) {
|
|
|
- remedicalItems.add(RemedicalItemList(
|
|
|
- application: "乳腺",
|
|
|
- applicationCategory: "SMP",
|
|
|
- patientScanTypeDesc: "SMP-乳腺1",
|
|
|
- remedicalList: [
|
|
|
- RemedicalInfoDTO(
|
|
|
- application: "乳腺",
|
|
|
- applicationCategory: "SMP",
|
|
|
- businessType: BusinessTypeEnum.RemoteDiagnosis,
|
|
|
- deviceCode: '0',
|
|
|
- diagnosisConclusion: DiagnosisConclusionEnum.Malignant,
|
|
|
- terminalImages: TerminalImageDTO(
|
|
|
- previewUrl:
|
|
|
- "http://cdn-bj.fis.plus/9B96E97B621A4E5C93E1706EB4205136.Jpg",
|
|
|
- originImageUrl:
|
|
|
- "http://flyinsono-bj-1300984704.cos.ap-beijing.myqcloud.com/20240201_12_BC967DAEF023A2A0ECE9A7A80C3725E2.dat",
|
|
|
- imageUrl:
|
|
|
- 'http://cdn-bj.fis.plus/20240201_12_BC967DAEF023A2A0ECE9A7A80C3725E2.dat',
|
|
|
- imageSize: 56141,
|
|
|
- recommendedDownloadMode: RecommendedDownloadModeEnum.CDN,
|
|
|
- ),
|
|
|
- ),
|
|
|
- ]));
|
|
|
- }
|
|
|
}
|
|
|
// 返回最终的 remedicalItems 列表
|
|
|
return remedicalItems;
|
|
@@ -201,36 +200,23 @@ class MeasureDataHelper {
|
|
|
),
|
|
|
diagnosisConclusion: DiagnosisConclusionEnum.Benign,
|
|
|
);
|
|
|
+ } else if (source == VidImageSource.RemoteUS) {
|
|
|
+ result = await RPCBridge.ins.rpc.remoteUltrasound
|
|
|
+ .vitalFindRemedicalByCodeAsync(
|
|
|
+ FindRemedicalByCodeRequest(
|
|
|
+ token: RPCBridge.ins.userToken,
|
|
|
+ remedicalCode: remedicalCode,
|
|
|
+ existDiagnosisResult: true,
|
|
|
+ ),
|
|
|
+ );
|
|
|
} else {
|
|
|
- try {
|
|
|
- result = await RPCBridge.ins.rpc.remedical.findRemedicalByCodeAsync(
|
|
|
- FindRemedicalByCodeRequest(
|
|
|
- token: RPCBridge.ins.userToken,
|
|
|
- remedicalCode: remedicalCode,
|
|
|
- existDiagnosisResult: true,
|
|
|
- ),
|
|
|
- );
|
|
|
- } catch (e) {
|
|
|
- logger.e('MeasureDataHelper getImageInfo ex:$e');
|
|
|
- result = RemedicalInfoDTO(
|
|
|
- application: "乳腺",
|
|
|
- applicationCategory: "SMP",
|
|
|
- businessType: BusinessTypeEnum.RemoteDiagnosis,
|
|
|
- deviceCode: '0',
|
|
|
- remedicalCode: '',
|
|
|
- diagnosisConclusion: DiagnosisConclusionEnum.Malignant,
|
|
|
- terminalImages: TerminalImageDTO(
|
|
|
- previewUrl:
|
|
|
- "http://cdn-bj.fis.plus/9B96E97B621A4E5C93E1706EB4205136.Jpg",
|
|
|
- originImageUrl:
|
|
|
- "http://flyinsono-bj-1300984704.cos.ap-beijing.myqcloud.com/20240201_12_BC967DAEF023A2A0ECE9A7A80C3725E2.dat",
|
|
|
- imageUrl:
|
|
|
- 'http://cdn-bj.fis.plus/20240201_12_BC967DAEF023A2A0ECE9A7A80C3725E2.dat',
|
|
|
- imageSize: 56141,
|
|
|
- recommendedDownloadMode: RecommendedDownloadModeEnum.CDN,
|
|
|
- ),
|
|
|
- );
|
|
|
- }
|
|
|
+ result = await RPCBridge.ins.rpc.remedical.findRemedicalByCodeAsync(
|
|
|
+ FindRemedicalByCodeRequest(
|
|
|
+ token: RPCBridge.ins.userToken,
|
|
|
+ remedicalCode: remedicalCode,
|
|
|
+ existDiagnosisResult: true,
|
|
|
+ ),
|
|
|
+ );
|
|
|
}
|
|
|
|
|
|
return result;
|