CrazyIter_Bin 3 years ago
parent
commit
8fb1e64974

+ 5 - 4
TEAMModelFunction/MonitorServicesBus.cs

@@ -371,13 +371,14 @@ namespace TEAMModelFunction
         [FunctionName("TeacherTrainChange")]
         [FunctionName("TeacherTrainChange")]
         public async Task TeacherTrainChange([ServiceBusTrigger("%Azure:ServiceBus:ActiveTask%", "teacher-train-change", Connection = "Azure:ServiceBus:ConnectionString")] string msg) {
         public async Task TeacherTrainChange([ServiceBusTrigger("%Azure:ServiceBus:ActiveTask%", "teacher-train-change", Connection = "Azure:ServiceBus:ConnectionString")] string msg) {
             try {
             try {
+                await _dingDing.SendBotMsg($"{msg}", GroupNames.成都开发測試群組);
                 TeacherTrainChange change = msg.ToObject<TeacherTrainChange>();
                 TeacherTrainChange change = msg.ToObject<TeacherTrainChange>();
                 if (change.update == null || change.update.Count <= 0 || change.tmdids.IsEmpty())
                 if (change.update == null || change.update.Count <= 0 || change.tmdids.IsEmpty())
                 {
                 {
                     return;
                     return;
                 }
                 }
                 var client = _azureCosmos.GetCosmosClient();
                 var client = _azureCosmos.GetCosmosClient();
-                string insql = $"where c.id in ({string.Join(",", change.tmdids.Select(x => "'{x}'"))})";
+                string insql = $"where c.id in ({string.Join(",", change.tmdids.Select(x => $"'{x}'"))})";
                 string selsql = $"select value(c) from c {insql} ";
                 string selsql = $"select value(c) from c {insql} ";
                 List<TeacherTrain> teacherTrains = new List<TeacherTrain>();
                 List<TeacherTrain> teacherTrains = new List<TeacherTrain>();
                 await foreach (var item in client.GetContainer(Constant.TEAMModelOS, "Teacher").GetItemQueryIterator<TeacherTrain>(queryText: selsql,
                 await foreach (var item in client.GetContainer(Constant.TEAMModelOS, "Teacher").GetItemQueryIterator<TeacherTrain>(queryText: selsql,
@@ -411,9 +412,9 @@ namespace TEAMModelFunction
                         StatisticsService.TeacherClass, StatisticsService.OfflineRecord }
                         StatisticsService.TeacherClass, StatisticsService.OfflineRecord }
                             };
                             };
                             teacherTrain.update.UnionWith(change.update);
                             teacherTrain.update.UnionWith(change.update);
-                            task.Add(client.GetContainer(Constant.TEAMModelOS, "Teacher").CreateItemAsync<TeacherTrain>(teacherTrain, new PartitionKey($"TeacherTrain-{change.school}")));
+                            task.Add(client.GetContainer(Constant.TEAMModelOS, "Teacher").UpsertItemAsync<TeacherTrain>(teacherTrain, new PartitionKey($"TeacherTrain-{change.school}")));
                         });
                         });
-                        await task.TaskPage(5);
+                        await task.TaskPage(1);
                     }
                     }
                 }
                 }
                 else
                 else
@@ -483,7 +484,7 @@ namespace TEAMModelFunction
                     }
                     }
                 }
                 }
             } catch (Exception ex) {
             } catch (Exception ex) {
-                await _dingDing.SendBotMsg($"{Environment.GetEnvironmentVariable("Option:Location")}-研修数据变更,重新统计-TeacherTrainChange\n{msg}", GroupNames.成都开发測試群組);
+                await _dingDing.SendBotMsg($"{Environment.GetEnvironmentVariable("Option:Location")}-研修数据变更,重新统计-TeacherTrainChange\n{msg}\n{ex.Message}\n{ex.StackTrace}", GroupNames.成都开发測試群組);
             }
             }
         }
         }
 
 

+ 1 - 1
TEAMModelFunction/TriggerExamLite.cs

@@ -92,7 +92,7 @@ namespace TEAMModelFunction
                             {
                             {
                                 list.tmdids = tchList.Select(x => x.id).ToList();
                                 list.tmdids = tchList.Select(x => x.id).ToList();
                                 School school = null;
                                 School school = null;
-                                if (string.IsNullOrEmpty(lite.school))
+                                if (!string.IsNullOrEmpty(lite.school))
                                 {
                                 {
                                     school = await client.GetContainer(Constant.TEAMModelOS, "School").ReadItemAsync<School>(lite.school, new Azure.Cosmos.PartitionKey("Base"));
                                     school = await client.GetContainer(Constant.TEAMModelOS, "School").ReadItemAsync<School>(lite.school, new Azure.Cosmos.PartitionKey("Base"));
                                     list.school = school.id;
                                     list.school = school.id;

+ 1 - 1
TEAMModelFunction/TriggerHomework.cs

@@ -151,7 +151,7 @@ namespace TEAMModelFunction
                             {
                             {
                                 list.tmdids = tchList.Select(x => x.id).ToList();
                                 list.tmdids = tchList.Select(x => x.id).ToList();
                                 School school = null;
                                 School school = null;
-                                if (string.IsNullOrEmpty(work.school))
+                                if (!string.IsNullOrEmpty(work.school))
                                 {
                                 {
                                     school = await client.GetContainer(Constant.TEAMModelOS, "School").ReadItemAsync<School>(work.school, new Azure.Cosmos.PartitionKey("Base"));
                                     school = await client.GetContainer(Constant.TEAMModelOS, "School").ReadItemAsync<School>(work.school, new Azure.Cosmos.PartitionKey("Base"));
                                     list.school = school.id;
                                     list.school = school.id;

+ 72 - 66
TEAMModelFunction/TriggerStudy.cs

@@ -73,81 +73,87 @@ namespace TEAMModelFunction
                             }
                             }
                             break;
                             break;
                         case "going":
                         case "going":
-                            List<(string pId, List<string> gid)> ps = new List<(string pId, List<string> gid)>();
-                            if (study.groupLists.Count > 0)
-                            {
-                                var group = study.groupLists;
-                                foreach (var gp in group) {
-                                    foreach (KeyValuePair<string, List<string>> pp in gp) {
-                                        ps.Add((pp.Key, pp.Value));
+                            try {
+                                List<(string pId, List<string> gid)> ps = new List<(string pId, List<string> gid)>();
+                                if (study.groupLists.Count > 0)
+                                {
+                                    var group = study.groupLists;
+                                    foreach (var gp in group)
+                                    {
+                                        foreach (KeyValuePair<string, List<string>> pp in gp)
+                                        {
+                                            ps.Add((pp.Key, pp.Value));
+                                        }
                                     }
                                     }
                                 }
                                 }
-                            }
-                            (List<RMember> tchList, List<RGroupList> classInfos) = await GroupListService.GetStutmdidListids(client, _dingDing, study.tchLists, study.school,ps);
-                            await _dingDing.SendBotMsg($"{Environment.GetEnvironmentVariable("Option:Location")}研修活动【{tdata.name}-{tdata.id}-ttl={tdata.ttl}】正在操作、list??{tchList.ToJsonString()}=={ps[0].gid.ToJsonString()}", GroupNames.成都开发測試群組);
-                            List<StuActivity> tchActivities = new List<StuActivity>();
-                            (string standard, List<string> tmdids, string school, List<string> update, int statistics) list = (null, null, null, new List<string> { StatisticsService.OfflineRecord }, 0);
-                            if (tchList.IsNotEmpty())
-                            {
-                                list.tmdids = tchList.Select(x => x.id).ToList();
-                                School school = null;
-                                if (string.IsNullOrEmpty(study.school))
+                                (List<RMember> tchList, List<RGroupList> classInfos) = await GroupListService.GetStutmdidListids(client, _dingDing, study.tchLists, study.school, ps);
+                                List<StuActivity> tchActivities = new List<StuActivity>();
+                                (string standard, List<string> tmdids, string school, List<string> update, int statistics) list = (null, null, null, new List<string> { StatisticsService.OfflineRecord }, 0);
+                                if (tchList.IsNotEmpty())
                                 {
                                 {
-                                    school = await client.GetContainer(Constant.TEAMModelOS, "School").ReadItemAsync<School>(study.school, new Azure.Cosmos.PartitionKey("Base"));
-                                    list.school = school.id;
-                                    list.standard = school.standard;
+                                    list.tmdids = tchList.Select(x => x.id).ToList();
+                                    School school = null;
+                                    if (!string.IsNullOrEmpty(study.school))
+                                    {
+                                        school = await client.GetContainer(Constant.TEAMModelOS, "School").ReadItemAsync<School>(study.school, new Azure.Cosmos.PartitionKey("Base"));
+                                        list.school = school.id;
+                                        list.standard = school.standard;
+                                    }
+                                    tchList.ForEach(x =>
+                                    {
+                                        tchActivities.Add(new StuActivity
+                                        {
+                                            pk = "Activity",
+                                            id = study.id,
+                                            code = $"Activity-{x.id}",
+                                            type = "Study",
+                                            name = study.name,
+                                            startTime = study.startTime,
+                                            endTime = study.endTime,
+                                            scode = study.code,
+                                            scope = study.scope,
+                                            school = study.school,
+                                            creatorId = study.creatorId,
+                                            subjects = new List<string> { "" },
+                                            blob = null,
+                                            owner = study.owner,
+                                            createTime = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(),
+                                            taskStatus = -1,
+                                            classIds = study.tchLists
+                                        });
+                                    });
+
                                 }
                                 }
-                                tchList.ForEach(x =>
+
+                                await ActivityService.SaveStuActivity(client, _dingDing, null, null, tchActivities);
+                                await _dingDing.SendBotMsg($"{Environment.GetEnvironmentVariable("Option:Location")}研修活动【{tdata.name}-{tdata.id}-ttl={tdata.ttl}】正在操作\n{tchList.ToJsonString()}\n{ps[0].gid.ToJsonString()}\n{list.tmdids.ToJsonString()}\n{list.update.ToJsonString()}", GroupNames.成都开发測試群組);
+                                await StatisticsService.SendServiceBus(list, _configuration, _serviceBus);
+                                var messageWorkEnd = new ServiceBusMessage(new { id = input.Id, progress = "finish", code = tdata.code }.ToJsonString());
+                                messageWorkEnd.ApplicationProperties.Add("name", "Study");
+                                if (changeRecords.Count > 0)
                                 {
                                 {
-                                    tchActivities.Add(new StuActivity
+                                    long end = await _serviceBus.GetServiceBusClient().SendScheduleMessageAsync(Environment.GetEnvironmentVariable("Azure:ServiceBus:ActiveTask"), messageWorkEnd, DateTimeOffset.FromUnixTimeMilliseconds(tdata.etime));
+                                    await _serviceBus.GetServiceBusClient().cancelMessage(Environment.GetEnvironmentVariable("Azure:ServiceBus:ActiveTask"), changeRecords[0].sequenceNumber);
+                                    changeRecords[0].sequenceNumber = end;
+                                    await _azureStorage.SaveOrUpdate<ChangeRecord>(changeRecords[0]);
+                                }
+                                else
+                                {
+                                    long end = await _serviceBus.GetServiceBusClient().SendScheduleMessageAsync(Environment.GetEnvironmentVariable("Azure:ServiceBus:ActiveTask"), messageWorkEnd, DateTimeOffset.FromUnixTimeMilliseconds(tdata.etime));
+                                    ChangeRecord changeRecord = new ChangeRecord
                                     {
                                     {
-                                        pk = "Activity",
-                                        id = study.id,
-                                        code = $"Activity-{x.id}",
-                                        type = "Study",
-                                        name = study.name,
-                                        startTime = study.startTime,
-                                        endTime = study.endTime,
-                                        scode = study.code,
-                                        scope = study.scope,
-                                        school = study.school,
-                                        creatorId = study.creatorId,
-                                        subjects = new List<string> { "" },
-                                        blob = null,
-                                        owner = study.owner,
-                                        createTime = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(),
-                                        taskStatus = -1,
-                                        classIds = study.tchLists
-                                    });
-                                });
-                              
-                            }
+                                        RowKey = input.Id,
+                                        PartitionKey = PartitionKey,
+                                        sequenceNumber = end,
+                                        msgId = messageWorkEnd.MessageId
+                                    };
+                                    await _azureStorage.Save<ChangeRecord>(changeRecord);
+                                }
 
 
-                            await ActivityService.SaveStuActivity(client, _dingDing, null, null, tchActivities);
-                           
-                            await StatisticsService.SendServiceBus(list, _configuration, _serviceBus);
-                            var messageWorkEnd = new ServiceBusMessage(new { id = input.Id, progress = "finish", code = tdata.code }.ToJsonString());
-                            messageWorkEnd.ApplicationProperties.Add("name", "Study");
-                            if (changeRecords.Count > 0)
-                            {
-                                long end = await _serviceBus.GetServiceBusClient().SendScheduleMessageAsync(Environment.GetEnvironmentVariable("Azure:ServiceBus:ActiveTask"), messageWorkEnd, DateTimeOffset.FromUnixTimeMilliseconds(tdata.etime));
-                                await _serviceBus.GetServiceBusClient().cancelMessage(Environment.GetEnvironmentVariable("Azure:ServiceBus:ActiveTask"), changeRecords[0].sequenceNumber);
-                                changeRecords[0].sequenceNumber = end;
-                                await _azureStorage.SaveOrUpdate<ChangeRecord>(changeRecords[0]);
                             }
                             }
-                            else
-                            {
-                                long end = await _serviceBus.GetServiceBusClient().SendScheduleMessageAsync(Environment.GetEnvironmentVariable("Azure:ServiceBus:ActiveTask"), messageWorkEnd, DateTimeOffset.FromUnixTimeMilliseconds(tdata.etime));
-                                ChangeRecord changeRecord = new ChangeRecord
-                                {
-                                    RowKey = input.Id,
-                                    PartitionKey = PartitionKey,
-                                    sequenceNumber = end,
-                                    msgId = messageWorkEnd.MessageId
-                                };
-                                await _azureStorage.Save<ChangeRecord>(changeRecord);
+                            catch (Exception ex) {
+                                await _dingDing.SendBotMsg($"{Environment.GetEnvironmentVariable("Option:Location")}研修活动异常-going {ex.Message}{ex.StackTrace}{tdata.ToJsonString()}{input}", GroupNames.成都开发測試群組);
                             }
                             }
-                            
                            
                            
                             break;
                             break;
                         case "finish":
                         case "finish":

+ 1 - 1
TEAMModelFunction/TriggerSurvey.cs

@@ -158,7 +158,7 @@ namespace TEAMModelFunction
                             {
                             {
                                 list.tmdids = tchList.Select(x => x.id).ToList();
                                 list.tmdids = tchList.Select(x => x.id).ToList();
                                 School school = null;
                                 School school = null;
-                                if (string.IsNullOrEmpty(survey.school))
+                                if (!string.IsNullOrEmpty(survey.school))
                                 {
                                 {
                                     school = await client.GetContainer(Constant.TEAMModelOS, "School").ReadItemAsync<School>(survey.school, new Azure.Cosmos.PartitionKey("Base"));
                                     school = await client.GetContainer(Constant.TEAMModelOS, "School").ReadItemAsync<School>(survey.school, new Azure.Cosmos.PartitionKey("Base"));
                                     list.school = school.id;
                                     list.school = school.id;

+ 1 - 1
TEAMModelFunction/TriggerVote.cs

@@ -165,7 +165,7 @@ namespace TEAMModelFunction
                             {
                             {
                                 list.tmdids = tchList.Select(x => x.id).ToList();
                                 list.tmdids = tchList.Select(x => x.id).ToList();
                                 School school = null;
                                 School school = null;
-                                if (string.IsNullOrEmpty(vote.school))
+                                if (!string.IsNullOrEmpty(vote.school))
                                 {
                                 {
                                     school = await client.GetContainer(Constant.TEAMModelOS, "School").ReadItemAsync<School>(vote.school, new Azure.Cosmos.PartitionKey("Base"));
                                     school = await client.GetContainer(Constant.TEAMModelOS, "School").ReadItemAsync<School>(vote.school, new Azure.Cosmos.PartitionKey("Base"));
                                     list.school = school.id;
                                     list.school = school.id;

+ 41 - 0
TEAMModelOS.SDK/Models/Service/StatisticsService.cs

@@ -44,7 +44,48 @@ namespace TEAMModelOS.SDK
         /// 教师评测活动
         /// 教师评测活动
         /// </summary>
         /// </summary>
         public const string TeacherExamLite = "TeacherExamLite";
         public const string TeacherExamLite = "TeacherExamLite";
+        public static async Task DoChange(TeacherTrainChange change, AzureCosmosFactory _azureCosmos)
+        {
+            if (change.tmdids.IsNotEmpty() && change.update.Count() > 0  && !string.IsNullOrEmpty(change.school)) {
+
+                var client = _azureCosmos.GetCosmosClient();
+                string insql = $"where c.id in ({string.Join(",", change.tmdids.Select(x => $"'{x}'"))})";
+                string selsql = $"select value(c) from c {insql} ";
+                List<TeacherTrain> teacherTrains = new List<TeacherTrain>();
+                await foreach (var item in client.GetContainer(Constant.TEAMModelOS, "Teacher").GetItemQueryIterator<TeacherTrain>(queryText: selsql,
+                      requestOptions: new QueryRequestOptions() { PartitionKey = new PartitionKey($"TeacherTrain-{change.school}") }))
+                {
+                    teacherTrains.Add(item);
+                }
+                List<Task<ItemResponse<TeacherTrain>>> task = new List<Task<ItemResponse<TeacherTrain>>>();
+                teacherTrains.ForEach(x => {
+                    x.update.UnionWith(change.update);
+                    task.Add(client.GetContainer(Constant.TEAMModelOS, "Teacher").ReplaceItemAsync<TeacherTrain>(x, x.id, new PartitionKey($"TeacherTrain-{change.school}")));
+                });
+                await task.TaskPage(5);
+                var unchange = change.tmdids.Except(teacherTrains.Select(x => x.id));
+                if (unchange != null)
+                {
+                    task.Clear();
+                    unchange.ToList().ForEach(x => {
+                        TeacherTrain teacherTrain = new TeacherTrain
+                        {
+                            pk = "TeacherTrain",
+                            id = x,
+                            code = $"TeacherTrain-{change.school}",
+                            tmdid = x,
+                            school = change.school,
+                            update = new HashSet<string> {  StatisticsService.TeacherAility,
+                        StatisticsService.TeacherClass, StatisticsService.OfflineRecord }
+                        };
+                        teacherTrain.update.UnionWith(change.update);
+                        task.Add(client.GetContainer(Constant.TEAMModelOS, "Teacher").CreateItemAsync<TeacherTrain>(teacherTrain, new PartitionKey($"TeacherTrain-{change.school}")));
+                    });
+                    await task.TaskPage(5);
+                }
+            }
 
 
+        }
         public static async Task SendServiceBus((string standard, List<string> tmdids, string school, List<string> update, int statistics)list, IConfiguration _configuration, AzureServiceBusFactory _serviceBus) {
         public static async Task SendServiceBus((string standard, List<string> tmdids, string school, List<string> update, int statistics)list, IConfiguration _configuration, AzureServiceBusFactory _serviceBus) {
             var ActiveTask = _configuration.GetValue<string>("Azure:ServiceBus:ActiveTask");
             var ActiveTask = _configuration.GetValue<string>("Azure:ServiceBus:ActiveTask");
             if (list.tmdids.IsNotEmpty() && list.update.IsNotEmpty()) {
             if (list.tmdids.IsNotEmpty() && list.update.IsNotEmpty()) {

+ 32 - 2
TEAMModelOS/Controllers/Common/StudyController.cs

@@ -242,20 +242,50 @@ namespace TEAMModelOS.Controllers.Common
         }*/
         }*/
 
 
         [ProducesDefaultResponseType]
         [ProducesDefaultResponseType]
-        //[AuthToken(Roles = "teacher")]
+        [AuthToken(Roles = "teacher,admin")]
         [HttpPost("delete")]
         [HttpPost("delete")]
         public async Task<IActionResult> Delete(JsonElement request)
         public async Task<IActionResult> Delete(JsonElement request)
         {
         {
             try
             try
             {
             {
+                object userScope = null;
+                object _standard = null;
                 if (!request.TryGetProperty("id", out JsonElement id)) return BadRequest();
                 if (!request.TryGetProperty("id", out JsonElement id)) return BadRequest();
                 if (!request.TryGetProperty("code", out JsonElement code)) return BadRequest();
                 if (!request.TryGetProperty("code", out JsonElement code)) return BadRequest();
+                string standard = null;
+                HttpContext?.Items?.TryGetValue("Scope", out userScope);
+                if (userScope != null && $"{userScope}".Equals(Constant.ScopeTeacher))
+                {
+                    HttpContext?.Items?.TryGetValue("Standard", out _standard);
+                    standard = _standard != null && string.IsNullOrEmpty($"{userScope}") ? _standard.ToString() : null;
+                }
                 var client = _azureCosmos.GetCosmosClient();
                 var client = _azureCosmos.GetCosmosClient();
                 var sresponse = await client.GetContainer("TEAMModelOS", "Common").ReadItemStreamAsync(id.ToString(), new PartitionKey($"Study-{code}"));
                 var sresponse = await client.GetContainer("TEAMModelOS", "Common").ReadItemStreamAsync(id.ToString(), new PartitionKey($"Study-{code}"));
                 if (sresponse.Status == 200)
                 if (sresponse.Status == 200)
                 {
                 {
                     using var json = await JsonDocument.ParseAsync(sresponse.ContentStream);
                     using var json = await JsonDocument.ParseAsync(sresponse.ContentStream);
                     Study study = json.ToObject<Study>();
                     Study study = json.ToObject<Study>();
+                    List<(string pId, List<string> gid)> ps = new List<(string pId, List<string> gid)>();
+                    if (study.groupLists.Count > 0)
+                    {
+                        var group = study.groupLists;
+                        foreach (var gp in group)
+                        {
+                            foreach (KeyValuePair<string, List<string>> pp in gp)
+                            {
+                                ps.Add((pp.Key, pp.Value));
+                            }
+                        }
+                    }
+                    try
+                    {
+                        (List<RMember> members, List<RGroupList> groups) = await GroupListService.GetStutmdidListids(client, _dingDing, study.tchLists, study.school, ps);
+                        await StatisticsService.DoChange(new TeacherTrainChange
+                        { standard = standard, tmdids = members.Select(x => x.id)?.ToList(), school = study.school, update = new HashSet<string> { StatisticsService.OfflineRecord }, statistics = 0 }, _azureCosmos);
+                    }
+                    catch (Exception ex ) {
+                        await _dingDing.SendBotMsg($"OS,{_option.Location},study/delete()ex\n{ex.Message},\n{ex.StackTrace}", GroupNames.醍摩豆服務運維群組);
+                    }
                     if (!string.IsNullOrEmpty(study.examId))
                     if (!string.IsNullOrEmpty(study.examId))
                     {
                     {
                         await client.GetContainer("TEAMModelOS", "Common").DeleteItemStreamAsync(study.examId, new PartitionKey($"ExamLite-{code}"));
                         await client.GetContainer("TEAMModelOS", "Common").DeleteItemStreamAsync(study.examId, new PartitionKey($"ExamLite-{code}"));
@@ -275,7 +305,7 @@ namespace TEAMModelOS.Controllers.Common
             }
             }
             catch (Exception e)
             catch (Exception e)
             {
             {
-                await _dingDing.SendBotMsg($"OS,{_option.Location},study/delete()\n{e.Message}", GroupNames.醍摩豆服務運維群組);
+                await _dingDing.SendBotMsg($"OS,{_option.Location},study/delete()\n{e.Message},\n{e.StackTrace}", GroupNames.醍摩豆服務運維群組);
                 return BadRequest();
                 return BadRequest();
             }
             }
         }
         }

+ 3 - 3
TEAMModelOS/TEAMModelOS.csproj

@@ -38,9 +38,9 @@
     <SpaRoot>ClientApp\</SpaRoot>
     <SpaRoot>ClientApp\</SpaRoot>
     <DefaultItemExcludes>$(DefaultItemExcludes);$(SpaRoot)node_modules\**</DefaultItemExcludes>
     <DefaultItemExcludes>$(DefaultItemExcludes);$(SpaRoot)node_modules\**</DefaultItemExcludes>
     <UserSecretsId>078b5d89-7d90-4f6a-88fc-7d96025990a8</UserSecretsId>
     <UserSecretsId>078b5d89-7d90-4f6a-88fc-7d96025990a8</UserSecretsId>
-    <Version>5.2111.31</Version>
-    <AssemblyVersion>5.2111.31.1</AssemblyVersion>
-    <FileVersion>5.2111.31.1</FileVersion>
+    <Version>5.2112.3</Version>
+    <AssemblyVersion>5.2112.3.1</AssemblyVersion>
+    <FileVersion>5.2112.3.1</FileVersion>
     <Description>TEAMModelOS(IES5)</Description>
     <Description>TEAMModelOS(IES5)</Description>
     <PackageReleaseNotes>版本说明</PackageReleaseNotes>
     <PackageReleaseNotes>版本说明</PackageReleaseNotes>
   </PropertyGroup>
   </PropertyGroup>