CrazyIter_Bin 1 год назад
Родитель
Сommit
52c6c17e0d

+ 3 - 1
TEAMModelOS.SDK/Models/Cosmos/Common/Activity.cs

@@ -690,7 +690,7 @@ namespace TEAMModelOS.SDK.Models
         public  string name { get; set; }
         public string picture { get; set; }
         public string tmdname { get; set; }
-
+        public string activityId { get; set; }
         //id  专家id ,
         //code  ActivityExpertTask-活动id
         /// <summary>
@@ -714,6 +714,8 @@ namespace TEAMModelOS.SDK.Models
         /// 第几轮
         /// </summary>
         public int turn { get; set; }
+        public string activityId { get; set; }
+
         public T DeepCopy<T>() where T : ExpertContestTaskDto
         {
             string jsonString = JsonSerializer.Serialize(this);

+ 8 - 3
TEAMModelOS.SDK/Models/Service/Common/ActivityService.cs

@@ -58,7 +58,8 @@ namespace TEAMModelOS.SDK
                         tmdid=z.tmdid,
                         score=z.score,
                         status=z.status,
-                        detailScore=z.detailScore
+                        detailScore=z.detailScore,
+                        activityId=contest.id
                     }));
                 }
                 //处理已经分配完成(taskCount)的作品
@@ -149,7 +150,8 @@ namespace TEAMModelOS.SDK
                             periodSubjectKey = checkResult.periodSubjectKey,
                             period = period?.val,
                             subject = subject?.val,
-                            available = available
+                            available = available,
+                            activityId=contest.id,
                         });
                     }
                     else
@@ -159,6 +161,7 @@ namespace TEAMModelOS.SDK
                         expertContestTask.count = count;
                         expertContestTask.members = members;
                         expertContestTask.periodSubjectKey = checkResult.periodSubjectKey;
+                        expertContestTask.activityId=contest?.id;
                     }
                 }
                 else
@@ -228,7 +231,8 @@ namespace TEAMModelOS.SDK
                             periodSubjectKey = checkResult.periodSubjectKey,
                             period = period?.val,
                             subject = subject?.val,
-                            available = available
+                            available = available,
+                            activityId = contest?.id,
                         });
                     }
                     else
@@ -237,6 +241,7 @@ namespace TEAMModelOS.SDK
                         expertContestTask.name = name;
                         expertContestTask.count = count;
                         expertContestTask.periodSubjectKey = checkResult.periodSubjectKey;
+                        expertContestTask.activityId=contest?.id;
                     }
                 }
             }

+ 34 - 26
TEAMModelOS/Controllers/Common/ActivityController.cs

@@ -2062,6 +2062,7 @@ namespace TEAMModelOS.Controllers
                                             id = contestTask.expertId,
                                             code = $"ActivityExpertTask-{_activityId}",
                                             pk = "ActivityExpertTask",
+                                            activityId=_activityId.GetString(),
                                             picture=contestTask.expertPicture,
                                             name=contestTask.expertName,
                                             tmdname=contestTask.expertTmdname,
@@ -2105,7 +2106,8 @@ namespace TEAMModelOS.Controllers
                                         tmdid=z.tmdid,
                                         score=z.score,
                                         status=z.status,
-                                        detailScore=z.detailScore
+                                        detailScore=z.detailScore,
+                                        activityId=_activityId.GetString()
                                     }));
                                 }
                                 return Ok(new { code = 200, tasksDb = tasksDb });
@@ -2242,6 +2244,7 @@ namespace TEAMModelOS.Controllers
                                                 resultExpTask.list[0].contestTasks.Add(contestTask);
                                             }
                                             expertTask=resultExpTask.list[0];
+                                            expertTask.activityId=_activityId.GetString();
                                         }
                                         else
                                         {
@@ -2252,6 +2255,7 @@ namespace TEAMModelOS.Controllers
                                                 code=$"ActivityExpertTask-{_activityId}",
                                                 pk="ActivityExpertTask",
                                                 ttl=-1,
+                                                activityId=_activityId.GetString(),
                                                 name=expert.iname,
                                                 tmdname=expert.name,
                                                 picture=expert.picture,
@@ -2284,6 +2288,7 @@ namespace TEAMModelOS.Controllers
                                                 resultExpTask.list[0].contestTasks.Add(contestTask);
                                             }
                                             expertTask=resultExpTask.list[0];
+                                            expertTask.activityId=_activityId.GetString();
                                         }
                                         else {
                                             //专家没有任何被分配的作品
@@ -2294,6 +2299,7 @@ namespace TEAMModelOS.Controllers
                                                 code=$"ActivityExpertTask-{_activityId}",
                                                 pk="ActivityExpertTask",
                                                 ttl=-1,
+                                                activityId=_activityId.GetString(),
                                                 name=expert.iname,
                                                 tmdname=expert.name,
                                                 picture=expert.picture,
@@ -2629,40 +2635,42 @@ namespace TEAMModelOS.Controllers
         {
             (string tmdid, string name, string picture, _) = HttpContext.GetAuthTokenInfo();
             if (!request.TryGetProperty("grant_type", out JsonElement grant_type)) return BadRequest();
-            if (!request.TryGetProperty("activityId", out JsonElement _activityId)) return BadRequest();
+
             var client = _azureCosmos.GetCosmosClient();
-            Azure.Response response = await client.GetContainer(Constant.TEAMModelOS, Constant.Common).ReadItemStreamAsync(_activityId.GetString(), new PartitionKey("Activity"));
-            if (response.Status==200)
+
+            switch (true)
             {
-                Activity activity = JsonDocument.Parse(response.Content).RootElement.ToObject<Activity>();
-                if (activity.publish==1)
-                {
-                    switch (true)
+                //获取分配的任务
+                case bool when $"{grant_type}".Equals("list-task", StringComparison.OrdinalIgnoreCase):
                     {
-                        //获取分配的任务
-                        case bool when $"{grant_type}".Equals("list-task", StringComparison.OrdinalIgnoreCase):
-                            {
+                        break;
+                    }
+                ///评分
+                case bool when $"{grant_type}".Equals("decide-score", StringComparison.OrdinalIgnoreCase):
+                    {
+                        if (!request.TryGetProperty("activityId", out JsonElement _activityId)) return BadRequest();
+                        Azure.Response response = await client.GetContainer(Constant.TEAMModelOS, Constant.Common).ReadItemStreamAsync(_activityId.GetString(), new PartitionKey("Activity"));
+                        if (response.Status==200)
+                        {
+                            Activity activity = JsonDocument.Parse(response.Content).RootElement.ToObject<Activity>();
+                            if (activity.publish==1)
+                            { }
+                          
+                        }
+                        break;
+                    }
 
-                                break;
-                            }
-                        ///评分
-                        case bool when $"{grant_type}".Equals("decide-score", StringComparison.OrdinalIgnoreCase):
-                            {
 
-                                break;
-                            }
-                    }
-                }
             }
             return Ok();
         }
 
-        /// <summary>
-        /// 教师在赛课模块的操作
-        /// </summary>
-        /// <param name="request"></param>
-        /// <returns></returns>
-        [ProducesDefaultResponseType]
+            /// <summary>
+            /// 教师在赛课模块的操作
+            /// </summary>
+            /// <param name="request"></param>
+            /// <returns></returns>
+            [ProducesDefaultResponseType]
         [HttpPost("teacher-contest")]
         [AuthToken(Roles = "teacher")]
 #if !DEBUG