Forráskód Böngészése

Merge branch 'develop5.0-tmd' of http://52.130.252.100:10000/TEAMMODEL/TEAMModelOS into develop5.0-tmd

zhouj1203@hotmail.com 3 éve
szülő
commit
e9c2294407

+ 16 - 1
TEAMModelOS/Controllers/Research/AbilityStatisticsController.cs

@@ -47,6 +47,21 @@ namespace TEAMModelOS.Controllers
         [AuthToken(Roles = "teacher,admin,area")]
         public async Task<IActionResult> UpsertSummary(JsonElement request)
         {
+            var client = _azureCosmos.GetCosmosClient();
+            request.TryGetProperty("summary", out JsonElement _summary);
+            var (userid, name, picture, school) = HttpContext.GetAuthTokenInfo();
+            if (!HttpContext.Items.TryGetValue("Standard", out object standard)) return BadRequest();
+            TeacherTrain teacherTrain = null;
+            try
+            {
+                teacherTrain = await client.GetContainer(Constant.TEAMModelOS, "Teacher").ReadItemAsync<TeacherTrain>(userid, new PartitionKey($"TeacherTrain-{school}"));
+                teacherTrain.name = name;
+                teacherTrain.picture = picture;
+                teacherTrain.summary = $"{_summary}";
+            }
+            catch (CosmosException ex ){
+                return Ok(new { error = 1, msg = "暂无统计数据" });
+            }
             return Ok();
 
         }
@@ -130,7 +145,7 @@ namespace TEAMModelOS.Controllers
                         countArea += 1;
                         count += 1;
                     }
-                    schoolInfos.Add(new {schoolId=school.id,schoolName =school.name, teacherCount = count, appraiseCount = appraise });
+                    schoolInfos.Add(new {schoolId=school.id,schoolName =school.name, picture = school.picture, teacherCount = count, appraiseCount = appraise });
                     //增加评审人员总人数,学习总人数。
                     trains.Add(  StatisticsService.StatisticsSchool(school.id, setting, area, client, _dingDing, null));
                 }

+ 49 - 0
TEAMModelOS/Controllers/School/SchoolController.cs

@@ -21,6 +21,7 @@ using System.Linq;
 using StackExchange.Redis;
 using static TEAMModelOS.SDK.Models.Teacher;
 using Microsoft.Extensions.Configuration;
+using TEAMModelOS.Filter;
 
 namespace TEAMModelOS.Controllers
 {
@@ -51,6 +52,54 @@ namespace TEAMModelOS.Controllers
             _configuration = configuration;
         }
         /// <summary>
+        /// 修改教师信息
+        /// </summary>
+        /// <param name="request"></param>
+        /// <returns></returns>
+        [ProducesDefaultResponseType]
+        [HttpPost("set-school-info")]
+        [AuthToken(Roles = "admin", Permissions = "train-appraise")]
+
+        public async Task<IActionResult> SetTeacherInfo(JsonElement request)
+        {
+            var client = _azureCosmos.GetCosmosClient();
+
+            if (!request.TryGetProperty("opt", out JsonElement _opt))
+            {
+                return BadRequest();
+            }
+            var (userid, name, _, school) = HttpContext.GetAuthTokenInfo();
+            try
+            {
+                SchoolTeacher teacher = await client.GetContainer(Constant.TEAMModelOS, "School").ReadItemAsync<SchoolTeacher>(userid, new PartitionKey($"Teacher-{school}"));
+                switch (true)
+                {
+                    //修改互评开关
+                    case bool when $"{_opt}".Equals("modify-hpappraise", StringComparison.OrdinalIgnoreCase) :
+                        int hpappraise =-1;
+                        if (!request.TryGetProperty("hpappraise", out JsonElement _hpappraise)) {
+                            int.TryParse($"{_hpappraise}",out    hpappraise);
+                        }
+                        if (hpappraise != -1) {
+
+                            School schoolData = await client.GetContainer(Constant.TEAMModelOS, "School").ReadItemAsync<School>(school, new PartitionKey("Base"));
+                            schoolData.hpappraise = hpappraise;
+                            await client.GetContainer(Constant.TEAMModelOS, "School").ReplaceItemAsync<School>(schoolData,school, new PartitionKey("Base"));
+                        }
+                        return  Ok(new { status=200});
+                    default:
+                        return Ok(new { error = 1, msg = "参数异常!" });
+
+                }
+            }
+            catch (Exception ex)
+            {
+                await _dingDing.SendBotMsg($"IES5,{_option.Location},Teacher/init/set-teacher-info()\n{ex.Message}{ex.StackTrace}{request.ToJsonString()}", GroupNames.醍摩豆服務運維群組);
+                return Ok(new { error=1,msg="参数异常!"});
+
+            }
+        }
+        /// <summary>
         /// 保存或更新学校
         /// </summary>
         /// <param name="request"></param>