Bladeren bron

学习活动

CrazyIter 4 jaren geleden
bovenliggende
commit
3b41ce8db6

+ 1 - 1
TEAMModelOS.Service/Models/SchoolInfo/Paper.cs

@@ -66,7 +66,7 @@ namespace TEAMModelOS.Service.Models
         /// <summary>
         /// <summary>
         /// 多选 0不允许自动阅卷,1多选漏选不得分,2多选漏选得一半的分数(默认),3多选漏选按选择个数得分,4多选漏选指定分数
         /// 多选 0不允许自动阅卷,1多选漏选不得分,2多选漏选得一半的分数(默认),3多选漏选按选择个数得分,4多选漏选指定分数
         /// </summary>
         /// </summary>
-        public int type { get; set; } = 2;
+        public int type { get; set; } = 3;
         /// <summary>
         /// <summary>
         /// 多选漏选指定得分
         /// 多选漏选指定得分
         /// </summary>
         /// </summary>

+ 0 - 10
TEAMModelOS.Service/Models/StudentInfo/HomeworkRecord.cs

@@ -37,16 +37,6 @@ namespace TEAMModelOS.Service.Models
         [ProtoMember(1)]
         [ProtoMember(1)]
         public string id { get; set; }
         public string id { get; set; }
 
 
-
-
-        /// <summary>
-        /// 姓名
-        /// </summary>
-        [ProtoMember(3)]
-        public string name { get; set; }
-
-
-
         /// <summary>
         /// <summary>
         /// 上课班级
         /// 上课班级
         /// </summary>
         /// </summary>

+ 2 - 2
TEAMModelOS.Service/Models/StudentInfo/LeanRecord.cs

@@ -10,7 +10,7 @@ namespace TEAMModelOS.Service.Models
      ///  编序式和学习单元 作答记录
      ///  编序式和学习单元 作答记录
      /// </summary>
      /// </summary>
     [CosmosDB(RU = 400, Name = "Student")]
     [CosmosDB(RU = 400, Name = "Student")]
-    public class LeanRecord : ID
+    public class LearnRecord : ID
     {
     {
         /// <summary>
         /// <summary>
         /// 学生id
         /// 学生id
@@ -20,7 +20,7 @@ namespace TEAMModelOS.Service.Models
         public string code { get; set; }
         public string code { get; set; }
         public string pk { get; set; }
         public string pk { get; set; }
         public int? ttl { get; set; } 
         public int? ttl { get; set; } 
-        public LeanRecord() {
+        public LearnRecord() {
             steps = new List<RecordStep>();
             steps = new List<RecordStep>();
         }
         }
         /// <summary>
         /// <summary>

+ 2 - 13
TEAMModelOS.Service/Models/TeacherInfo/LeanProcess.cs

@@ -12,7 +12,7 @@ namespace TEAMModelOS.Service.Models
     /// 编序学习
     /// 编序学习
     /// </summary>
     /// </summary>
     [CosmosDB(RU = 400, Name = "Teacher")]
     [CosmosDB(RU = 400, Name = "Teacher")]
-    public class LeanProcess : ID
+    public class LearnProcess : ID
     {
     {
         [Required(ErrorMessage = "{0} 必须填写")]
         [Required(ErrorMessage = "{0} 必须填写")]
         [PartitionKey]
         [PartitionKey]
@@ -20,7 +20,7 @@ namespace TEAMModelOS.Service.Models
         //   [PartitionKey(name = "LeanProcess")]
         //   [PartitionKey(name = "LeanProcess")]
         public string pk { get; set; }
         public string pk { get; set; }
         public int? ttl { get; set; } 
         public int? ttl { get; set; } 
-        public LeanProcess() {
+        public LearnProcess() {
             steps = new List<LearnUnit>();
             steps = new List<LearnUnit>();
         }
         }
         
         
@@ -57,18 +57,7 @@ namespace TEAMModelOS.Service.Models
 
 
 
 
 
 
-        /// <summary>
-        /// 创建者
-        /// </summary>
-        [Required(ErrorMessage = "{0} 必须填写")]
-        public string creator { get; set; }
         
         
-        public class Target
-        {
-            public string classroomCode { get; set; }
-
-            public string code { get; set; }
-        }
     }
     }
 
 
 
 

+ 50 - 0
TEAMModelOS.Service/Models/TeacherInfo/LearnTask.cs

@@ -0,0 +1,50 @@
+using ProtoBuf;
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
+using System.Text;
+using TEAMModelOS.SDK.Context.Attributes.Azure;
+using TEAMModelOS.SDK.Module.AzureCosmosDBV3;
+
+namespace TEAMModelOS.Service.Models
+{ 
+    /// <summary>
+    /// 学习任务
+    /// </summary>
+    [ProtoContract]
+    [CosmosDB(RU = 400, Name = "Teacher")]
+    public class LearnTask :ID
+    {
+        public int? ttl { get ; set ; }
+        public string pk { get ; set ; }
+        /// <summary>
+        /// 编序式学习或学习单元ID
+        /// </summary>
+        [Required(ErrorMessage = "{0} 必须填写")]
+        public string id { get ; set ; }
+        /// <summary>
+        ///班级编码
+        /// </summary>
+        [PartitionKey]
+        [Required(ErrorMessage = "{0} 必须填写")]
+        public string code { get ; set ; }
+        /// <summary>
+        /// 结束时间
+        /// </summary>
+        [ProtoMember(7)]
+        public long endTime { get; set; }
+        /// <summary>
+        ///有效状态
+        /// </summary>
+        [ProtoMember(10)]
+        public int status { get; set; } = 1;
+        /// <summary>
+        /// 自主学习1,课前预习2
+        /// </summary>
+        [ProtoMember(10)]
+        public int type { get; set; }
+        //创建时间 
+        [ProtoMember(12)]
+        public long createTime { get; set; }
+    }
+}

+ 0 - 10
TEAMModelOS.Service/TEAMModelOS.Model.xml

@@ -1020,16 +1020,6 @@
             课程时间安排
             课程时间安排
             </summary>
             </summary>
         </member>
         </member>
-        <member name="P:TEAMModelOS.Service.Models.CoursePlan.semesterCode">
-            <summary>
-            学期代码
-            </summary>
-        </member>
-        <member name="P:TEAMModelOS.Service.Models.CoursePlan.semesterCode">
-            <summary>
-            学期代码
-            </summary>
-        </member>
         <member name="P:TEAMModelOS.Service.Models.Assistant.TEAMModelId">
         <member name="P:TEAMModelOS.Service.Models.Assistant.TEAMModelId">
             <summary>
             <summary>
             助教 醍摩豆id
             助教 醍摩豆id

+ 1 - 1
TEAMModelOS/Controllers/Task/HomeworkController.cs

@@ -176,7 +176,7 @@ namespace TEAMModelOS.Controllers.Learn
                         List<Student> student = await _cosmos.FindById<Student>(homeWorkStudents1.code);//FindByDict<Student>(new Dictionary<string, object> { { "id", homeWorkStudents1.studentId } });
                         List<Student> student = await _cosmos.FindById<Student>(homeWorkStudents1.code);//FindByDict<Student>(new Dictionary<string, object> { { "id", homeWorkStudents1.studentId } });
                         if (student.IsNotEmpty())
                         if (student.IsNotEmpty())
                         {
                         {
-                            homeWorkStudents1.name = student[0].name;
+                          
                             homeWorkStudents1.code = student[0].studentId;
                             homeWorkStudents1.code = student[0].studentId;
                           //  homeWorkStudents1.nativeroom.code = student[0].classroomCode;
                           //  homeWorkStudents1.nativeroom.code = student[0].classroomCode;
                         }
                         }

+ 57 - 10
TEAMModelOS/Controllers/Task/LearnController.cs

@@ -3,6 +3,7 @@ using System;
 using System.Collections.Generic;
 using System.Collections.Generic;
 using System.Linq;
 using System.Linq;
 using System.Threading.Tasks;
 using System.Threading.Tasks;
+using TEAMModelOS.SDK.Context.Exception;
 using TEAMModelOS.SDK.Extension.DataResult.JsonRpcRequest;
 using TEAMModelOS.SDK.Extension.DataResult.JsonRpcRequest;
 using TEAMModelOS.SDK.Extension.DataResult.JsonRpcResponse;
 using TEAMModelOS.SDK.Extension.DataResult.JsonRpcResponse;
 using TEAMModelOS.SDK.Helper.Common.DateTimeHelper;
 using TEAMModelOS.SDK.Helper.Common.DateTimeHelper;
@@ -25,6 +26,53 @@ namespace TEAMModelOS.Controllers.Learn
             cosmosDBV3Repository = _cosmosDBV3Repository;
             cosmosDBV3Repository = _cosmosDBV3Repository;
         }
         }
 
 
+        /// <summary>
+        /// 保存或更新学习任务
+        /// </summary>
+        /// <param name="request"></param>
+        /// <returns></returns>
+        [HttpPost("upsertTask")]
+        public async Task<BaseJosnRPCResponse> UpsertTask(JosnRPCRequest<LearnTask> request)
+        {
+            JsonRPCResponseBuilder builder = JsonRPCResponseBuilder.custom();
+            if (request.@params.createTime <= 0) {
+                request.@params.createTime = new DateTimeOffset(DateTime.UtcNow).ToUnixTimeMilliseconds();
+            }
+            await cosmosDBV3Repository.Save(request.@params);
+            return builder.Data(request.@params).build();
+        }
+
+        /// <summary>
+        /// 查询学习任务
+        /// </summary>
+        /// <param name="request"></param>
+        /// <returns></returns>
+        [HttpPost("findTask")]
+        public async Task<BaseJosnRPCResponse> FindTask(JosnRPCRequest<Dictionary<string,object>> request)
+        {
+            JsonRPCResponseBuilder builder = JsonRPCResponseBuilder.custom();
+            if (request.@params.ContainsKey("id") || request.@params.ContainsKey("code"))
+            {
+                List<LearnTask> tasks = await cosmosDBV3Repository.FindByDict<LearnTask>(request.@params);
+                return builder.Data(tasks).build();
+            }
+            else {
+                throw new BizException("参数错误!",ResponseCode.PARAMS_ERROR);
+            }
+            
+        }
+        /// <summary>
+        /// 删除学习任务
+        /// </summary>
+        /// <param name="request"></param>
+        /// <returns></returns>
+        [HttpPost("deleteTask")]
+        public async Task<BaseJosnRPCResponse> DeleteTask(JosnRPCRequest<IdPk> request)
+        {
+            JsonRPCResponseBuilder builder = JsonRPCResponseBuilder.custom();
+            return builder.Data(await cosmosDBV3Repository.DeleteAsync<LearnTask>(request.@params)).build();
+        }
+
         /// <summary>
         /// <summary>
         /// 保存或更新学习单元单元
         /// 保存或更新学习单元单元
         /// </summary>
         /// </summary>
@@ -34,7 +82,6 @@ namespace TEAMModelOS.Controllers.Learn
         public async Task<BaseJosnRPCResponse> UpsertUnit(JosnRPCRequest<LearnUnit> request)
         public async Task<BaseJosnRPCResponse> UpsertUnit(JosnRPCRequest<LearnUnit> request)
         {
         {
             JsonRPCResponseBuilder builder = JsonRPCResponseBuilder.custom();
             JsonRPCResponseBuilder builder = JsonRPCResponseBuilder.custom();
-
             if (string.IsNullOrEmpty(request.@params.id))
             if (string.IsNullOrEmpty(request.@params.id))
             {
             {
                 request.@params.id = Guid.NewGuid().ToString();
                 request.@params.id = Guid.NewGuid().ToString();
@@ -86,17 +133,17 @@ namespace TEAMModelOS.Controllers.Learn
         /// <param name="request"></param>
         /// <param name="request"></param>
         /// <returns></returns>
         /// <returns></returns>
         [HttpPost("upsertProcess")]
         [HttpPost("upsertProcess")]
-        public async Task<BaseJosnRPCResponse> UpsertProcess(JosnRPCRequest<LeanProcess> request) {
+        public async Task<BaseJosnRPCResponse> UpsertProcess(JosnRPCRequest<LearnProcess> request) {
             JsonRPCResponseBuilder builder = JsonRPCResponseBuilder.custom();
             JsonRPCResponseBuilder builder = JsonRPCResponseBuilder.custom();
 
 
             if (string.IsNullOrEmpty(request.@params.id))
             if (string.IsNullOrEmpty(request.@params.id))
             {
             {
                 request.@params.id = Guid.NewGuid().ToString();
                 request.@params.id = Guid.NewGuid().ToString();
                 request.@params.createTime = new DateTimeOffset(DateTime.UtcNow).ToUnixTimeMilliseconds();
                 request.@params.createTime = new DateTimeOffset(DateTime.UtcNow).ToUnixTimeMilliseconds();
-                await cosmosDBV3Repository.Save<LeanProcess>(request.@params);
+                await cosmosDBV3Repository.Save<LearnProcess>(request.@params);
             }
             }
             else {
             else {
-                await cosmosDBV3Repository.Update<LeanProcess>(request.@params);
+                await cosmosDBV3Repository.Update<LearnProcess>(request.@params);
             }
             }
            
            
             return builder.Data(request.@params).build();
             return builder.Data(request.@params).build();
@@ -113,7 +160,7 @@ namespace TEAMModelOS.Controllers.Learn
             JsonRPCResponseBuilder builder = JsonRPCResponseBuilder.custom();
             JsonRPCResponseBuilder builder = JsonRPCResponseBuilder.custom();
             if (request.@params.Keys.Count>0) {
             if (request.@params.Keys.Count>0) {
 
 
-                builder.Data(await cosmosDBV3Repository.FindByDict<LeanProcess>(request.@params));
+                builder.Data(await cosmosDBV3Repository.FindByDict<LearnProcess>(request.@params));
             }
             }
 
 
             return builder.build();
             return builder.build();
@@ -130,7 +177,7 @@ namespace TEAMModelOS.Controllers.Learn
             JsonRPCResponseBuilder builder = JsonRPCResponseBuilder.custom();
             JsonRPCResponseBuilder builder = JsonRPCResponseBuilder.custom();
             if (request.@params != null)
             if (request.@params != null)
             {
             {
-                builder.Data(await cosmosDBV3Repository.DeleteAsync<LeanProcess>(request.@params));
+                builder.Data(await cosmosDBV3Repository.DeleteAsync<LearnProcess>(request.@params));
             }
             }
             return builder.build();
             return builder.build();
         }
         }
@@ -141,7 +188,7 @@ namespace TEAMModelOS.Controllers.Learn
         /// <param name="request"></param>
         /// <param name="request"></param>
         /// <returns></returns>
         /// <returns></returns>
         [HttpPost("upsertRecord")]
         [HttpPost("upsertRecord")]
-        public async Task<BaseJosnRPCResponse> UpsertRecord(JosnRPCRequest<List<LeanRecord>> request)
+        public async Task<BaseJosnRPCResponse> UpsertRecord(JosnRPCRequest<List<LearnRecord>> request)
         {
         {
             JsonRPCResponseBuilder builder = JsonRPCResponseBuilder.custom();
             JsonRPCResponseBuilder builder = JsonRPCResponseBuilder.custom();
             if (ValidateHelper.IsValid(request.@params))
             if (ValidateHelper.IsValid(request.@params))
@@ -153,7 +200,7 @@ namespace TEAMModelOS.Controllers.Learn
                         x.id = new Guid().ToString();
                         x.id = new Guid().ToString();
                     }
                     }
                 });
                 });
-                List<LeanRecord> leanProcesses = await cosmosDBV3Repository.SaveOrUpdateAll<LeanRecord>(request.@params);
+                List<LearnRecord> leanProcesses = await cosmosDBV3Repository.SaveOrUpdateAll<LearnRecord>(request.@params);
                 builder.Data(leanProcesses);
                 builder.Data(leanProcesses);
             }
             }
             return builder.build();
             return builder.build();
@@ -170,7 +217,7 @@ namespace TEAMModelOS.Controllers.Learn
             JsonRPCResponseBuilder builder = JsonRPCResponseBuilder.custom();
             JsonRPCResponseBuilder builder = JsonRPCResponseBuilder.custom();
             if (request.@params.Keys.Count > 0)
             if (request.@params.Keys.Count > 0)
             {
             {
-                builder.Data(await cosmosDBV3Repository.FindByDict<LeanRecord>(request.@params));
+                builder.Data(await cosmosDBV3Repository.FindByDict<LearnRecord>(request.@params));
             }
             }
             return builder.build();
             return builder.build();
         }
         }
@@ -187,7 +234,7 @@ namespace TEAMModelOS.Controllers.Learn
             JsonRPCResponseBuilder builder = JsonRPCResponseBuilder.custom();
             JsonRPCResponseBuilder builder = JsonRPCResponseBuilder.custom();
             if (request.@params != null)
             if (request.@params != null)
             {
             {
-                builder.Data(await cosmosDBV3Repository.DeleteAsync<LeanRecord>(request.@params));
+                builder.Data(await cosmosDBV3Repository.DeleteAsync<LearnRecord>(request.@params));
             }
             }
             return builder.build();
             return builder.build();
         }
         }

+ 6 - 0
TEAMModelOS/appsettings.Development.json

@@ -7,6 +7,12 @@
     }
     }
   },
   },
   "AllowedHosts": "*",
   "AllowedHosts": "*",
+  "Option": {
+    "Location": "China",
+    "LocationNum": "1",
+    "HostName": "localhost:5001",
+    "AllowedHosts": [ "localhost", "*.teammodel.cn", "*.teammodel.net", "*.habookaclass.biz", "test" ]
+  },
   "Azure": {
   "Azure": {
     "Table": {
     "Table": {
       "ConnectionString": "DefaultEndpointsProtocol=https;AccountName=teammodelstorage;AccountKey=Yq7D4dE6cFuer2d2UZIccTA/i0c3sJ/6ITc8tNOyW+K5f+/lWw9GCos3Mxhj47PyWQgDL8YbVD63B9XcGtrMxQ==;EndpointSuffix=core.chinacloudapi.cn"
       "ConnectionString": "DefaultEndpointsProtocol=https;AccountName=teammodelstorage;AccountKey=Yq7D4dE6cFuer2d2UZIccTA/i0c3sJ/6ITc8tNOyW+K5f+/lWw9GCos3Mxhj47PyWQgDL8YbVD63B9XcGtrMxQ==;EndpointSuffix=core.chinacloudapi.cn"

+ 6 - 0
TEAMModelOS/appsettings.json

@@ -7,6 +7,12 @@
     }
     }
   },
   },
   "AllowedHosts": "*",
   "AllowedHosts": "*",
+  "Option": {
+    "Location": "China",
+    "LocationNum": "1",
+    "HostName": "localhost:5001",
+    "AllowedHosts": [ "localhost", "*.teammodel.cn", "*.teammodel.net", "*.habookaclass.biz", "test" ]
+  },
   "Azure": {
   "Azure": {
     "Table": {
     "Table": {
       "ConnectionString": "DefaultEndpointsProtocol=https;AccountName=teammodelstorage;AccountKey=Yq7D4dE6cFuer2d2UZIccTA/i0c3sJ/6ITc8tNOyW+K5f+/lWw9GCos3Mxhj47PyWQgDL8YbVD63B9XcGtrMxQ==;EndpointSuffix=core.chinacloudapi.cn"
       "ConnectionString": "DefaultEndpointsProtocol=https;AccountName=teammodelstorage;AccountKey=Yq7D4dE6cFuer2d2UZIccTA/i0c3sJ/6ITc8tNOyW+K5f+/lWw9GCos3Mxhj47PyWQgDL8YbVD63B9XcGtrMxQ==;EndpointSuffix=core.chinacloudapi.cn"