Jelajahi Sumber

update .生成文件记录。

CrazyIter_Bin 3 tahun lalu
induk
melakukan
0d87a423bf

+ 9 - 1
TEAMModelOS.FunctionV4/ServiceBus/ActiveTaskTopic.cs

@@ -855,7 +855,15 @@ namespace TEAMModelOS.FunctionV4.ServiceBus
                             continue;
                             continue;
                         }                                                                    
                         }                                                                    
                     }
                     }
-                    await StudyService.GenPdf(id, areaId, cname, sname, gname, stringBuilder.ToString(), _converter, _azureStorage,_dingDing);
+                    string url = await StudyService.GenPdf(id, areaId, cname, sname, gname, stringBuilder.ToString(), _converter, _azureStorage,_dingDing);
+                    Azure.Response teacherTrainRes = await client.GetContainer(Constant.TEAMModelOS, Constant.Teacher).ReadItemStreamAsync(id, new PartitionKey($"TeacherTrain-{code}"));
+                    if (teacherTrainRes.Status == 200) {
+                        TeacherTrain teacherTrain = JsonDocument.Parse(teacherTrainRes.Content).RootElement.Deserialize<TeacherTrain>();
+                        if (string.IsNullOrWhiteSpace(teacherTrain.offlineUrl)) {
+                            teacherTrain.offlineUrl = url;
+                            await client.GetContainer(Constant.TEAMModelOS, Constant.Teacher).ReplaceItemAsync<TeacherTrain>(teacherTrain, id, new PartitionKey($"TeacherTrain-{code}"));
+                        }
+                    }
                 }
                 }
 
 
 
 

+ 2 - 1
TEAMModelOS.SDK/Models/Cosmos/Teacher/Research/TeacherTrain.cs

@@ -45,7 +45,8 @@ namespace TEAMModelOS.SDK.Models
         /// 线下研修学时
         /// 线下研修学时
         /// </summary>
         /// </summary>
         public long offlineTime { get; set; }
         public long offlineTime { get; set; }
-        
+        public string offlineUrl { get; set; }
+
         /// <summary>
         /// <summary>
         /// 课堂实录学时
         /// 课堂实录学时
         /// </summary>
         /// </summary>

+ 5 - 4
TEAMModelOS.SDK/Models/Service/StudyService.cs

@@ -13,7 +13,7 @@ namespace TEAMModelOS.SDK.Models.Service
 {
 {
     public static class StudyService
     public static class StudyService
     {
     {
-        public static async Task GenPdf(string tId,string areaId, string cname,string sname,string gname,string details, IConverter _converter, AzureStorageFactory _azureStorage,DingDing _dingDing)
+        public static async Task<string> GenPdf(string tId,string areaId, string cname,string sname,string gname,string details, IConverter _converter, AzureStorageFactory _azureStorage,DingDing _dingDing)
         {
         {
             //https://article.itxueyuan.com/JAxOnG
             //https://article.itxueyuan.com/JAxOnG
             //http://t.zoukankan.com/hsiang-p-14608694.html
             //http://t.zoukankan.com/hsiang-p-14608694.html
@@ -55,9 +55,9 @@ namespace TEAMModelOS.SDK.Models.Service
                 };
                 };
                 var a = _converter.Convert(htmlToPdfDocument);
                 var a = _converter.Convert(htmlToPdfDocument);
                 MemoryStream m = new(a);
                 MemoryStream m = new(a);
-
-                tasks.Add(_azureStorage.GetBlobContainerClient("teammodelos").UploadFileByContainer( m, $"{areaId}", $"{tId}/offline-report.pdf", false)); 
-                await Task.WhenAll(tasks);
+                await _azureStorage.GetBlobContainerClient("teammodelos").UploadFileByContainer(m, $"{areaId}", $"{tId}/offline-report.pdf", false);
+                string url = $"{areaId}/{tId}/offline-report.pdf";
+                return url;
                 /* FileStream fs = new FileStream("F:\\1111111111111\\SimplePdf1.pdf", FileMode.Create, FileAccess.Write, FileShare.Read);
                 /* FileStream fs = new FileStream("F:\\1111111111111\\SimplePdf1.pdf", FileMode.Create, FileAccess.Write, FileShare.Read);
                  m.WriteTo(fs);
                  m.WriteTo(fs);
                  m.Close();
                  m.Close();
@@ -85,6 +85,7 @@ namespace TEAMModelOS.SDK.Models.Service
             catch (Exception ex)
             catch (Exception ex)
             {
             {
                 await _dingDing.SendBotMsg($"{Environment.GetEnvironmentVariable("Option:Location")}-StudyService,GenPdf()\n{ex.Message}\n{ex.StackTrace}", GroupNames.成都开发測試群組);
                 await _dingDing.SendBotMsg($"{Environment.GetEnvironmentVariable("Option:Location")}-StudyService,GenPdf()\n{ex.Message}\n{ex.StackTrace}", GroupNames.成都开发測試群組);
+                return null ;
             }
             }
         }
         }
     }
     }