Browse Source

0019864: 【图像】打开URM测量下的保存后的测量单帧图或者视频,点击图像页面左下角的刷新按钮,提示未知错误,查看调试模式有报错

fly 8 months ago
parent
commit
a6f2b3a039
1 changed files with 21 additions and 1 deletions
  1. 21 1
      src/Service/ResearchProjectDBService.cs

+ 21 - 1
src/Service/ResearchProjectDBService.cs

@@ -833,6 +833,27 @@ namespace WingMongoDBModule.Service
         public async Task<List<SampleRemedicalInfoDTO>> GetUrmRemedicalInfosDBAsync(string urmRemedicalCode)
         {
             var sampleRemedicalInfoList = new List<SampleRemedicalInfoDTO>();
+            if (urmRemedicalCode.Length > 32)//视频
+            {
+                var tempCode = urmRemedicalCode.Substring(0, 32);
+                MongoCustomerFilter<MongoTable> remedicalFilter = new();
+                remedicalFilter.AppendEq(("BaseData.Code", tempCode));
+                var remedical = await _remedicalDBRepository.FindOneAsync(remedicalFilter.AndCombine());
+                urmRemedicalCode = remedical.UrmOriginalCode;
+            }
+            MongoCustomerFilter<MongoTable> originalRemedicalFilter1 = new();
+            originalRemedicalFilter1.AppendEq(("BaseData.Code", urmRemedicalCode));
+            var originalRemedical1 = await _remedicalDBRepository.FindOneAsync(originalRemedicalFilter1.AndCombine());
+            if (originalRemedical1 == null || string.IsNullOrWhiteSpace(originalRemedical1.Code))//测量图
+            {
+                MongoCustomerFilter<MongoTable> remedicalCodeMeasuredFilter = new();
+                remedicalCodeMeasuredFilter.AppendEq(("BaseData.Code", urmRemedicalCode));
+                var remedicalMeasure = await _remedicalMeasuredInfoDBRepository.FindOneAsync(remedicalCodeMeasuredFilter.AndCombine());
+                if (remedicalMeasure != null && !string.IsNullOrWhiteSpace(remedicalMeasure.Code))
+                {
+                    urmRemedicalCode = remedicalMeasure.UrmOriginalCode;
+                }
+            }
             if (!string.IsNullOrWhiteSpace(urmRemedicalCode))
             {
                 MongoCustomerFilter<MongoTable> originalRemedicalFilter = new();
@@ -840,7 +861,6 @@ namespace WingMongoDBModule.Service
                 var originalRemedical = await _remedicalDBRepository.FindOneAsync(originalRemedicalFilter.AndCombine());
                 var originalRemedicalData = originalRemedical.MappingTo<RemedicalInfoDTO>();
                 sampleRemedicalInfoList.Add(ConvertToSampleRemedical(originalRemedicalData));//原图
-
                 MongoCustomerFilter<MongoTable> remedicalFilter = new();
                 remedicalFilter.AppendEq(("BaseData.UrmOriginalCode", urmRemedicalCode));
                 var remedicalList = await _remedicalDBRepository.FindAllAsync(remedicalFilter.AndCombine());