Browse Source

update。

CrazyIter_Bin 3 years ago
parent
commit
6dfd78ca89

+ 5 - 5
TEAMModelBI/Controllers/OpenApi/CourseController.cs

@@ -58,7 +58,7 @@ namespace TEAMModelAPI.Controllers
         }
         [ProducesDefaultResponseType]
         [HttpPost("get-course-list")]
-        [ApiToken(Auth = "1301", Name = "获取课程列表信息", RW = "R", Limit = false)]
+        [ApiToken(Auth = "1301", Name = "获取课程列表信息", RWN = "R", Limit = false)]
         public async Task<IActionResult> GetCourseList(JsonElement json)
         {
             var client = _azureCosmos.GetCosmosClient();
@@ -85,7 +85,7 @@ namespace TEAMModelAPI.Controllers
 
         [ProducesDefaultResponseType]
         [HttpPost("get-course-info")]
-        [ApiToken(Auth = "1302", Name = "课程详细信息", RW = "R", Limit = false)]
+        [ApiToken(Auth = "1302", Name = "课程详细信息", RWN = "R", Limit = false)]
         public async Task<IActionResult> GetCourseInfo(JsonElement json)
         {
             var (id, school) = HttpContext.GetApiTokenInfo();
@@ -111,7 +111,7 @@ namespace TEAMModelAPI.Controllers
         /// <returns></returns>
         [ProducesDefaultResponseType]
         [HttpPost("get-period-timetable")]
-        [ApiToken(Auth = "1303", Name = "试卷和评测的条件信息", RW = "R", Limit = false)]
+        [ApiToken(Auth = "1303", Name = "试卷和评测的条件信息", RWN = "R", Limit = false)]
         public async Task<IActionResult> GetPaperExamCondition(JsonElement json)
         {
             json.TryGetProperty("periodId", out JsonElement _periodId);
@@ -132,7 +132,7 @@ namespace TEAMModelAPI.Controllers
 
         [ProducesDefaultResponseType]
         [HttpPost("upsert-course-infos")]
-        [ApiToken(Auth = "1304", Name = "课程详细信息", RW = "W", Limit = false)]
+        [ApiToken(Auth = "1304", Name = "课程详细信息", RWN = "W", Limit = false)]
         public async Task<IActionResult> UpsertCourseInfo(CourseDtoImpt json)
         {
             var (id, school) = HttpContext.GetApiTokenInfo();
@@ -244,7 +244,7 @@ namespace TEAMModelAPI.Controllers
         
         [ProducesDefaultResponseType]
         [HttpPost("upsert-course-schedule")]
-        [ApiToken(Auth = "1305", Name = "更新课程的排课信息", RW = "W", Limit = false)]
+        [ApiToken(Auth = "1305", Name = "更新课程的排课信息", RWN = "W", Limit = false)]
         public async Task<IActionResult> UpsertCourseSchedule(ImportCourseDto json)
         {
             var (id, school) = HttpContext.GetApiTokenInfo();

+ 1 - 1
TEAMModelBI/Controllers/OpenApi/ExamController.cs

@@ -60,7 +60,7 @@ namespace TEAMModelAPI.Controllers
         /// <returns></returns>
         [ProducesDefaultResponseType]
         [HttpPost("get-paper-exam-condition")]
-        [ApiToken(Auth = "1101", Name = "试卷和评测的条件信息", RW = "R", Limit = false)]
+        [ApiToken(Auth = "1101", Name = "试卷和评测的条件信息", RWN = "R", Limit = false)]
         public async Task<IActionResult> GetPaperExamCondition(JsonElement json)
         {
             json.TryGetProperty("periodId", out JsonElement _periodId);

+ 8 - 8
TEAMModelBI/Controllers/OpenApi/GroupListController.cs

@@ -63,7 +63,7 @@ namespace TEAMModelAPI.Controllers
         /// <returns></returns>
         [ProducesDefaultResponseType]
         [HttpPost("get-group-list")]
-        [ApiToken(Auth = "1201", Name = "学校名单列表", RW = "R", Limit = false)]
+        [ApiToken(Auth = "1201", Name = "学校名单列表", RWN = "R", Limit = false)]
         public async Task<IActionResult> GetGroupList(JsonElement json)
         {
             var client = _azureCosmos.GetCosmosClient();
@@ -159,7 +159,7 @@ namespace TEAMModelAPI.Controllers
         }
         [ProducesDefaultResponseType]
         [HttpPost("get-group-members")]
-        [ApiToken(Auth = "1202", Name = "获取名单详细信息和成员信息", RW = "R", Limit = false)]
+        [ApiToken(Auth = "1202", Name = "获取名单详细信息和成员信息", RWN = "R", Limit = false)]
         public async Task<IActionResult> GetGroupMembers(JsonElement json)
         {
             var client = _azureCosmos.GetCosmosClient();
@@ -176,7 +176,7 @@ namespace TEAMModelAPI.Controllers
         /// <returns></returns>
         [ProducesDefaultResponseType]
         [HttpPost("import-class-members")]
-        [ApiToken(Auth = "1203", Name = "导入行政班学生", RW = "W", Limit = false)]
+        [ApiToken(Auth = "1203", Name = "导入行政班学生", RWN = "W", Limit = false)]
         public async Task<IActionResult> ImportClassMembers(JsonElement json)
         {
             var (id, school) = HttpContext.GetApiTokenInfo();
@@ -211,7 +211,7 @@ namespace TEAMModelAPI.Controllers
         /// <returns></returns>
         [ProducesDefaultResponseType]
         [HttpPost("update-class-members")]
-        [ApiToken(Auth = "1204", Name = "更新行政班学生", RW = "W", Limit = false)]
+        [ApiToken(Auth = "1204", Name = "更新行政班学生", RWN = "W", Limit = false)]
         public async Task<IActionResult> UpdateClassMembers(JsonElement json)
         {
             var (id, school) = HttpContext.GetApiTokenInfo();
@@ -248,7 +248,7 @@ namespace TEAMModelAPI.Controllers
         /// <returns></returns>
         [ProducesDefaultResponseType]
         [HttpPost("remove-class-members")]
-        [ApiToken(Auth = "1205", Name = "移除行政班学生", RW = "W", Limit = false)]
+        [ApiToken(Auth = "1205", Name = "移除行政班学生", RWN = "W", Limit = false)]
         public async Task<IActionResult> RemoveClassMembers(JsonElement json)
         {
             var (id, school) = HttpContext.GetApiTokenInfo();
@@ -290,7 +290,7 @@ namespace TEAMModelAPI.Controllers
         /// <returns></returns>
         [ProducesDefaultResponseType]
         [HttpPost("upsert-teach-groups")]
-        [ApiToken(Auth = "1206", Name = "创建或更新教学班", RW = "W", Limit = false)]
+        [ApiToken(Auth = "1206", Name = "创建或更新教学班", RWN = "W", Limit = false)]
         public async Task<IActionResult> UpsertTeachGroups(GroupListDtoImpt json) {
             var (_, school) = HttpContext.GetApiTokenInfo();
             var groupListsDto = json.groupLists;
@@ -378,7 +378,7 @@ namespace TEAMModelAPI.Controllers
         /// <returns></returns>
         [ProducesDefaultResponseType]
         [HttpPost("import-teach-members")]
-        [ApiToken(Auth = "1207", Name = "导入教学班学生", RW = "W", Limit = false)]
+        [ApiToken(Auth = "1207", Name = "导入教学班学生", RWN = "W", Limit = false)]
         public async Task<IActionResult> ImportTeachMembers(MemberImpt json)
         {
             var (id, school) = HttpContext.GetApiTokenInfo();
@@ -447,7 +447,7 @@ namespace TEAMModelAPI.Controllers
         /// <returns></returns>
         [ProducesDefaultResponseType]
         [HttpPost("remove-teach-members")]
-        [ApiToken(Auth = "1208", Name = "移除教学班学生", RW = "W", Limit = false)]
+        [ApiToken(Auth = "1208", Name = "移除教学班学生", RWN = "W", Limit = false)]
         public async Task<IActionResult> RemoveTeachMembers(JsonElement json) {
             var (id, school) = HttpContext.GetApiTokenInfo();
             json.TryGetProperty("stuids", out JsonElement _stuids);

+ 3 - 3
TEAMModelBI/Controllers/OpenApi/RoomController.cs

@@ -57,7 +57,7 @@ namespace TEAMModelAPI.Controllers
         /// <returns></returns>
         [ProducesDefaultResponseType]
         [HttpPost("get-room-list")]
-        [ApiToken(Auth = "1401", Name = "获取物理教室列表", RW = "R", Limit = false)]
+        [ApiToken(Auth = "1401", Name = "获取物理教室列表", RWN = "R", Limit = false)]
         public async Task<IActionResult> GetRoomList(JsonElement json)
         {
             var client = _azureCosmos.GetCosmosClient();
@@ -88,7 +88,7 @@ namespace TEAMModelAPI.Controllers
         /// <returns></returns>
         [ProducesDefaultResponseType]
         [HttpPost("get-room-info")]
-        [ApiToken(Auth = "1402", Name = "获取物理教室详细信息", RW = "R", Limit = false)]
+        [ApiToken(Auth = "1402", Name = "获取物理教室详细信息", RWN = "R", Limit = false)]
         public async Task<IActionResult> GetRoomInfo(JsonElement json)
         {
             var (id, school) = HttpContext.GetApiTokenInfo();
@@ -120,7 +120,7 @@ namespace TEAMModelAPI.Controllers
         /// <returns></returns>
         [ProducesDefaultResponseType]
         [HttpPost("upsert-room-infos")]
-        [ApiToken(Auth = "1403", Name = "创建或更新教学班", RW = "W", Limit = false)]
+        [ApiToken(Auth = "1403", Name = "创建或更新教学班", RWN = "W", Limit = false)]
         public async Task<IActionResult> UpsertRoomInfo(RoomsDto json)
         {
             var (id, school) = HttpContext.GetApiTokenInfo();

+ 2 - 2
TEAMModelBI/Controllers/OpenApi/SchoolController.cs

@@ -59,7 +59,7 @@ namespace TEAMModelAPI.Controllers
         /// <returns></returns>
         [ProducesDefaultResponseType]
         [HttpPost("get-schools")]
-        [ApiToken(Auth = "1000", Name = "合作商获取可访问的学校列表", RW = "R", Limit = false)]
+        [ApiToken(Auth = "1000", Name = "合作商获取可访问的学校列表", RWN = "R", Limit = false)]
         public async Task<IActionResult> GetSchools() {
             var (id, _) = HttpContext.GetApiTokenInfo();
             var table = _azureStorage.GetCloudTableClient().GetTableReference("IESOpenApi");
@@ -73,7 +73,7 @@ namespace TEAMModelAPI.Controllers
         /// <returns></returns>
         [ProducesDefaultResponseType]
         [HttpPost("get-school-info")]
-        [ApiToken(Auth = "1001",Name = "学校基础信息", RW = "R", Limit =false)]
+        [ApiToken(Auth = "1001",Name = "学校基础信息", RWN = "R", Limit =false)]
         public async Task<IActionResult> GetSchoolInfo()
         {
             var (id, school) = HttpContext.GetApiTokenInfo();

+ 3 - 3
TEAMModelBI/Controllers/OpenApi/TeacherController.cs

@@ -63,7 +63,7 @@ namespace TEAMModelAPI.Controllers
         /// <returns></returns>
         [ProducesDefaultResponseType]
         [HttpPost("get-teacher-list")]
-        [ApiToken(Auth = "1501", Name = "学校教师列表", RW = "R", Limit = false)]
+        [ApiToken(Auth = "1501", Name = "学校教师列表", RWN = "R", Limit = false)]
         public async Task<IActionResult> GetTeacherList(JsonElement json)
         {
 
@@ -127,7 +127,7 @@ namespace TEAMModelAPI.Controllers
         /// <returns></returns>
         [ProducesDefaultResponseType]
         [HttpPost("get-teacher-info")]
-        [ApiToken(Auth = "1502", Name = "学校教师信息", RW = "R", Limit = false)]
+        [ApiToken(Auth = "1502", Name = "学校教师信息", RWN = "R", Limit = false)]
         public async Task<IActionResult> GetTeacherInfo(JsonElement json)
         {
             json.TryGetProperty("tmdid", out JsonElement _tmdid);
@@ -166,7 +166,7 @@ namespace TEAMModelAPI.Controllers
         /// <returns></returns>
         [ProducesDefaultResponseType]
         [HttpPost("import-school-teacher")]
-        [ApiToken(Auth = "1503", Name = "学校教师信息", RW = "R", Limit = false)]
+        [ApiToken(Auth = "1503", Name = "学校教师信息", RWN = "R", Limit = false)]
         public async Task<IActionResult> ImportSchoolTeacher(ImportTechDto json)
         {
             //如果需要同时导入学科,则需要填写学段

+ 0 - 1
TEAMModelOS.FunctionV4/HttpTrigger/IESHttpTrigger.cs

@@ -38,7 +38,6 @@ namespace TEAMModelOS.FunctionV4.HttpTrigger
             _azureRedis = azureRedis;
         }
         /// <summary>
-        /// 数据推送接口
         /// </summary>
         /// <param name="req"></param>
         /// <param name="log"></param>

+ 48 - 0
TEAMModelOS.FunctionV4/HttpTrigger/WebhookHttpTrigger.cs

@@ -0,0 +1,48 @@
+using Azure.Cosmos;
+using Azure.Storage.Blobs.Models;
+using HTEXLib.COMM.Helpers;
+using Microsoft.Azure.Cosmos.Table;
+using Microsoft.Azure.Functions.Worker;
+using Microsoft.Azure.Functions.Worker.Http;
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Net;
+using System.Reflection;
+using System.Text;
+using System.Text.Json;
+using System.Threading.Tasks;
+using TEAMModelOS.Filter;
+using TEAMModelOS.SDK;
+using TEAMModelOS.SDK.DI;
+using TEAMModelOS.SDK.Extension;
+using TEAMModelOS.SDK.Models;
+using TEAMModelOS.SDK.Models.Cosmos.Teacher;
+using TEAMModelOS.SDK.Models.Table;
+using static TEAMModelOS.SDK.Models.Teacher;
+
+namespace TEAMModelOS.FunctionV4.HttpTrigger
+{
+    public class WebhookHttpTrigger
+    {
+        private readonly AzureCosmosFactory _azureCosmos;
+        private readonly DingDing _dingDing;
+        private readonly AzureStorageFactory _azureStorage;
+        private readonly AzureRedisFactory _azureRedis;
+        public WebhookHttpTrigger(AzureCosmosFactory azureCosmos, DingDing dingDing, AzureStorageFactory azureStorage  , AzureRedisFactory azureRedis)
+        {
+            _azureCosmos = azureCosmos;
+            _dingDing = dingDing;
+            _azureStorage = azureStorage;
+            _azureRedis = azureRedis;
+        }
+        [Function("group-change")]
+        [ApiToken(Auth = "1302", Name = "课程详细信息", RWN = "N")]
+        public async Task<HttpResponseData> NoticeGroupChange([HttpTrigger(AuthorizationLevel.Anonymous, "post", Route = "webhook/group-change")] HttpRequestData req) {
+            var response = req.CreateResponse(HttpStatusCode.OK);
+
+            return response;
+        }
+    }
+}

+ 2 - 2
TEAMModelOS.SDK/Context/Attributes/Filter/ApiTokenAttribute.cs

@@ -69,9 +69,9 @@ namespace TEAMModelOS.Filter
         /// </summary>
         public string Name { get; set; }
         /// <summary>
-        /// 接口属性
+        /// 接口属性,标记是读R,写W还是通知N类型
         /// </summary>
-        public string RW { get; set; }
+        public string RWN { get; set; }
 
         public IFilterMetadata CreateInstance(IServiceProvider services)
         {

+ 1 - 1
TEAMModelOS.SDK/Helper/Common/ReflectorExtensions/ReflectorExtensions.cs

@@ -100,7 +100,7 @@ namespace TEAMModelOS.SDK.Helper.Common.ReflectorExtensions
                                 auth = int.Parse(apiTokenAttribute.Auth),
                                 method = "POST",
                                 name = apiTokenAttribute.Name,
-                                type= apiTokenAttribute.RW,
+                                type= apiTokenAttribute.RWN,
                                 url =$"/{routeAttr.Template}/{httpPostAttribute.Template}"
                             };
                             openApis.Add(openApi);