Jelajahi Sumber

增加yxtain

CrazyIter_Bin 3 tahun lalu
induk
melakukan
4da3e1fbf0

+ 1 - 1
TEAMModelFunction/MonitorServicesBus.cs

@@ -378,7 +378,7 @@ namespace TEAMModelFunction
                 //名单变动修改学生作业活动信息
                 await ActivityService.FixActivity(client, _dingDing, groupChange, "Homework");
 
-                if (groupChange.type == null || !groupChange.type.Equals("research"))
+                if (groupChange.type == null || !groupChange.type.Equals("research") || !groupChange.type.Equals("yxtrain"))
                 {
                     //课程名单变动修改学生课程关联信息
                     await ActivityService.FixStuCourse(client, _dingDing, groupChange);

+ 1 - 1
TEAMModelOS.SDK/Models/Cosmos/Common/GroupList.cs

@@ -55,7 +55,7 @@ namespace TEAMModelOS.SDK.Models
         public string school { get; set; }
         public string creatorId { get; set; }
         /// <summary>
-        ///教学班teach ,行政班(学生搜寻classId动态返回)class ,教研组research,学科组(学科搜寻动态返回)subject,好友friend,管理manage,群组group等
+        ///研修培训名单,yxtrain 教学班teach ,行政班(学生搜寻classId动态返回)class ,教研组research,学科组(学科搜寻动态返回)subject,好友friend,管理manage,群组group等
         /// </summary>
         public string type { get; set; } = "teach";
         public int year { get; set; }

+ 9 - 1
TEAMModelOS.SDK/Models/Cosmos/Research/ClassVideo.cs

@@ -24,7 +24,7 @@ namespace TEAMModelOS.SDK.Models
 
     public class AbilityFile {
         /// <summary>
-        /// 作品总评
+        /// 作品总评 -2因不合格重新提交的, -1 未打分,0 不合格,1 合格,2 优秀。
         /// </summary>
         public int score { get; set; } = -1;
         /// <summary>
@@ -47,6 +47,14 @@ namespace TEAMModelOS.SDK.Models
         /// 文件大小
         /// </summary>
         public long  size{ get; set; }
+        /// <summary>
+        /// 文件的md5值
+        /// </summary>
+        public string hash { get; set; }
+        /// <summary>
+        /// 视频播放时长
+        /// </summary>
+        public long duration { get; set; }
     }
    
 }

+ 13 - 9
TEAMModelOS.SDK/Models/Service/GroupListService.cs

@@ -122,7 +122,7 @@ namespace TEAMModelOS.SDK.Models
             list.scount = list.members.Where(x => x.type == 2).Count();
             await client.GetContainer(Constant.TEAMModelOS, tbname).UpsertItemAsync(list, new PartitionKey(list.code));
             //学生名单,教研组会触发活动中间表刷新
-            if (list.type.Equals("teach") || list.type.Equals("research"))
+            if (list.type.Equals("teach") || list.type.Equals("research") || list.type.Equals("yxtrain"))
             {
                 GroupChange change = new GroupChange()
                 {
@@ -151,7 +151,7 @@ namespace TEAMModelOS.SDK.Models
                     var tmdids = list.members.FindAll(x => x.type == 1);
                     if (tmdids.IsNotEmpty())
                     {
-                        if (list.type.Equals("research"))
+                        if (list.type.Equals("research") || list.type.Equals("yxtrain"))
                         {
                             change.tchjoin.AddRange(tmdids);
                         }
@@ -179,7 +179,7 @@ namespace TEAMModelOS.SDK.Models
                         //旧=》新差集,表示离开
                         var leavetmdid = oldtmdids.Select(x => x.id).Except(tmdids.Select(y => y.id)).ToList();
 
-                        if (list.type.Equals("research"))
+                        if (list.type.Equals("research") || list.type.Equals("yxtrain"))
                         {
                             change.tchjoin.AddRange(tmdids.Where(x => jointmdid.Exists(y => y.Equals(x.id))));
                             change.tchleave.AddRange(oldtmdids.Where(x => leavetmdid.Exists(y => y.Equals(x.id))));
@@ -205,7 +205,7 @@ namespace TEAMModelOS.SDK.Models
                             var tmdids = oldList.members.FindAll(x => x.type == 1);
                             if (tmdids.IsNotEmpty())
                             {
-                                if (list.type.Equals("research"))
+                                if (list.type.Equals("research")|| list.type.Equals("yxtrain"))
                                 {
                                     change.tchleave.AddRange(tmdids);
                                 }
@@ -316,7 +316,7 @@ namespace TEAMModelOS.SDK.Models
                     code = $"GroupList-{school}",
                     school = school,
                     scope = "school",
-                    type = "research",
+                    type = "yxtrain",
                 };
                 groupLists = new List<GroupListDto> { groupList };
             }
@@ -404,6 +404,9 @@ namespace TEAMModelOS.SDK.Models
         {
             List<RMember> members = new List<RMember>();
             List<RGroupList> groupLists = new List<RGroupList>();
+            if (classes.IsEmpty()) {
+                return (members, groupLists);
+            }
             if (classes.Count == 1 && classes.First().Equals("default") && !string.IsNullOrEmpty(school))
             {
                 //默认的教研组
@@ -426,7 +429,7 @@ namespace TEAMModelOS.SDK.Models
                     code = $"GroupList-{school}",
                     school = school,
                     scope = "school",
-                    type = "research",
+                    type = "yxtrain",
                     members = members
                 };
                 groupLists = new List<RGroupList> { groupList };
@@ -439,8 +442,9 @@ namespace TEAMModelOS.SDK.Models
                 if (!string.IsNullOrEmpty(school))
                 {
                     List<RGroupList> schoolList = new List<RGroupList>();
-
-                    await foreach (var item in client.GetContainer(Constant.TEAMModelOS, "School").GetItemQueryIterator<RGroupList>(queryText: $"select value(c) from c where c.id in ({sql})",
+                    string queryText = $"select value(c) from c where c.id in ({sql})";
+                    //await _dingDing.SendBotMsg($"{queryText}",GroupNames.成都开发測試群組);
+                    await foreach (var item in client.GetContainer(Constant.TEAMModelOS, "School").GetItemQueryIterator<RGroupList>(queryText: queryText,
                             requestOptions: new QueryRequestOptions() { PartitionKey = new Azure.Cosmos.PartitionKey($"GroupList-{school}") }))
                     {
                         schoolList.Add(item);
@@ -603,7 +607,7 @@ namespace TEAMModelOS.SDK.Models
                     string memberTbname = "";
                     //可能会出现在两种表中
                     if ($"{type}".Equals("teach") || $"{type}".Equals("research") || $"{type}".Equals("group")
-                        || $"{type}".Equals("friend") || $"{type}".Equals("manage") || $"{type}".Equals("subject"))
+                        || $"{type}".Equals("friend") || $"{type}".Equals("manage") || $"{type}".Equals("subject") || $"{type}".Equals("yxtrain"))
                     {
                         StringBuilder tmdidSql = new StringBuilder($"SELECT distinct c.name,c.id,c.picture FROM c ");
                         string insql = string.Join(",", tmdids.Select(x => $"'{x.id}'"));

+ 1 - 1
TEAMModelOS/Controllers/Client/HiScanController.cs

@@ -287,7 +287,7 @@ namespace TEAMModelOS.Controllers.Core
         {
             List<ExamRcd> examRcds = new List<ExamRcd>();
             int i = 1;
-            StringBuilder sql = new StringBuilder($"SELECT  * FROM c  where   c.progress='going' and c.scope='{scope}' ");
+            StringBuilder sql = new StringBuilder($"SELECT  * FROM c  where  (c.progress='going' or c.progress='finish') and c.scope='{scope}' ");
             if (!string.IsNullOrEmpty(school))
             {
                 sql.Append($"  and c.school='{school}' ");

+ 2 - 2
TEAMModelOS/Controllers/Common/HomeworkController.cs

@@ -442,7 +442,7 @@ namespace TEAMModelOS.Controllers.Learn
            // if (!request.TryGetProperty("teacher", out JsonElement _teacher)) return BadRequest();
             if (!request.TryGetProperty("targetType", out JsonElement _targetType)) return BadRequest();
             string tbname = "Student";
-            if ($"{_targetType}".Equals("research", StringComparison.OrdinalIgnoreCase))
+            if ($"{_targetType}".Equals("research", StringComparison.OrdinalIgnoreCase)|| $"{_targetType}".Equals("yxtrain", StringComparison.OrdinalIgnoreCase))
             {
                 tbname = "Teacher";
 
@@ -469,7 +469,7 @@ namespace TEAMModelOS.Controllers.Learn
                             (List<RMember> tmdinfos, List<RGroupList> classInfo) = await GroupListService.GetStutmdidListids(client, _dingDing, listIds, homework.school);
                             var addStudentsCls = tmdinfos.FindAll(x => x.type == 2);
                             var addTmdidsCls = tmdinfos.FindAll(x => x.type == 1);
-                            if ($"{_targetType}".Equals("research", StringComparison.OrdinalIgnoreCase))
+                            if ($"{_targetType}".Equals("research", StringComparison.OrdinalIgnoreCase) || $"{_targetType}".Equals("yxtrain", StringComparison.OrdinalIgnoreCase))
                             {
                                 
                              

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

@@ -43,7 +43,7 @@ namespace TEAMModelOS.Controllers
         /// <param name="request"></param>
         /// <returns></returns>
         [ProducesDefaultResponseType]
-        [HttpPost("statistics-selfs")]
+        [HttpPost("statistics-self")]
         [AuthToken(Roles = "teacher,admin,area")]
         public async Task<IActionResult> StatisticsSelf(JsonElement request)
         {

+ 5 - 1
TEAMModelOS/Controllers/Research/ClassVideoController.cs

@@ -102,7 +102,9 @@ namespace TEAMModelOS.Controllers.Research
                                             vurl = file.url,
                                             vname = file.name,
                                             vsize = file.size,
-                                            vtime = file.time
+                                            vtime = file.time,
+                                            vhash= file.hash,
+                                            vduration= file.duration,
                                         });
                                     }
                                 }
@@ -238,6 +240,8 @@ namespace TEAMModelOS.Controllers.Research
                                         vd.name = up.name;
                                         vd.time = up.time;
                                         vd.size = up.size;
+                                        vd.duration = up.duration;
+                                        vd.hash = up.hash;
                                     }
                                     else {
                                         classVideo.files.Add(up);

+ 7 - 1
TEAMModelOS/Controllers/School/GroupListController.cs

@@ -686,6 +686,12 @@ namespace TEAMModelOS.Controllers
                         list = await GroupListService.CheckListNo(list, _azureCosmos, _dingDing, _option);
                         list = await GroupListService.UpsertList(list, _azureCosmos, _azureStorage, _configuration, _serviceBus);
                         break;
+                    //社交群组类型(包含学校交流群组,个人交流群组),成员账号类型可以是学校学生账号和醍摩豆ID,,分区键为GroupList-hbcn 
+                    case bool when $"{list.type}".Equals("yxtrain", StringComparison.OrdinalIgnoreCase):
+                        list.type = "yxtrain";
+                        list.scope = "school";
+                        list = await GroupListService.UpsertList(list, _azureCosmos, _azureStorage, _configuration, _serviceBus);
+                        break;
                     default:
                         return Ok(new { error = 400, msg = "参数错误!" });
                 }
@@ -727,7 +733,7 @@ namespace TEAMModelOS.Controllers
                 var tleave = groupList.members.FindAll(x => x.type == 1);
                 if (tleave.IsNotEmpty())
                 {
-                    if (groupList.type.Equals("research"))
+                    if (groupList.type.Equals("research")||groupList.type.Equals("yxtrain"))
                     {
                         change.tchleave.AddRange(tleave);
                     }

+ 3 - 3
TEAMModelOS/TEAMModelOS.csproj

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