//using System; //using System.Collections.Generic; //using System.Dynamic; //using System.IO; //using System.Linq; //using System.Net; //using System.Net.Http; //using System.Text.Json; //using System.Threading.Tasks; //using Azure.Cosmos; //using Azure.Storage.Blobs; //using DocumentFormat.OpenXml.Bibliography; //using MathNet.Numerics.LinearAlgebra.Double; //using Microsoft.AspNetCore.Http; //using Microsoft.Azure.Functions.Worker; //using Microsoft.Azure.Functions.Worker.Http; //using Microsoft.Extensions.Configuration; //using NUnit.Framework.Constraints; //using StackExchange.Redis; //using TEAMModelOS.SDK.Context.Constant; //using TEAMModelOS.SDK.DI; //using TEAMModelOS.SDK.Extension; //using TEAMModelOS.SDK.Models; //using TEAMModelOS.SDK.Models.Cosmos.BI; //using TEAMModelOS.SDK.Models.Cosmos.BI.BISchool; //using TEAMModelOS.SDK.Models.Service.BI; //using TEAMModelOS.SDK.Models.Service.BIStatsWay; //namespace TEAMModelOS.FunctionV4 //{ // public class BIHttpTrigger // { // private readonly AzureCosmosFactory _azureCosmos; // private readonly DingDing _dingDing; // private readonly AzureStorageFactory _azureStorage; // private readonly AzureRedisFactory _azureRedis; // private readonly IConfiguration _configuration; // private readonly IHttpClientFactory _httpClient; // public BIHttpTrigger(AzureCosmosFactory azureCosmos, DingDing dingDing, AzureStorageFactory azureStorage, AzureRedisFactory azureRedis, IConfiguration configuration, IHttpClientFactory httpClient) // { // _azureCosmos = azureCosmos; // _dingDing = dingDing; // _azureStorage = azureStorage; // _azureRedis = azureRedis; // _configuration = configuration; // _httpClient = httpClient; // } // /// // /// 学校信息BI中间件更新 // /// // /// // /// // //[Function("set-sc-birelation")] // public async Task upSchoolBIRelation([HttpTrigger(AuthorizationLevel.Function, "post", Route = null)] HttpRequestData req) // { // var response = req.CreateResponse(HttpStatusCode.OK); // dynamic jsondata = new ExpandoObject(); // try // { // var cosmosClient = _azureCosmos.GetCosmosClient(); // var tableClient = _azureStorage.GetCloudTableClient(); // var blobClient = _azureStorage.GetBlobContainerClient(containerName: "0-public"); // string data = await new StreamReader(req.Body).ReadToEndAsync(); // var json = JsonDocument.Parse(data).RootElement; // School school = new(); // jsondata = json; // if (json.TryGetProperty("school", out JsonElement _school)) // { // school = _school.ToObject(); // } // string type = ""; // BIRelation bIRelation = new(); // var resBiRel = await cosmosClient.GetContainer(Constant.TEAMModelOS, "School").ReadItemStreamAsync(school.id, new PartitionKey("BIRel")); // if (resBiRel.Status == 200) // { // using var fileJson = await JsonDocument.ParseAsync(resBiRel.ContentStream); // bIRelation = fileJson.ToObject(); // } // else // bIRelation.id = school.id; // string aName = null; // if (!string.IsNullOrEmpty($"{school.areaId}")) // aName = await CosmosQueryHelper.GetStr(cosmosClient, "Normal", $"select value(c.name) from c where c.id='{school.areaId}'", "Base-Area"); // bIRelation.name = school.name; // bIRelation.picture = school.picture; // bIRelation.region = school.region; // bIRelation.province = school.province; // bIRelation.city = school.city; // bIRelation.dist = school.dist; // bIRelation.address = school.address; // bIRelation.areaId = school.areaId; // bIRelation.size = school.size; // bIRelation.scale = school.scale; // bIRelation.upDate = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(); // bIRelation.areaName = aName; // if (resBiRel.Status == 200) // { // await cosmosClient.GetContainer(Constant.TEAMModelOS, "School").ReplaceItemAsync(bIRelation, bIRelation.id, new PartitionKey("BIRel")); // type = "update"; // } // else // { // await cosmosClient.GetContainer(Constant.TEAMModelOS, "School").CreateItemAsync(bIRelation, new PartitionKey("BIRel")); // type = "add"; // } // //保存操作记录 // await AzureStorageBlobExtensions.SaveBILog(blobClient, tableClient, $"birelation-{type}", $"触发更新学校信息表中间件", _dingDing); // } // catch (Exception ex) // { // await _dingDing.SendBotMsg($"BIFunction, {Environment.GetEnvironmentVariable("Option:Location")}, upSchoolBIRelation(),{ex.Message}\n{ex.StackTrace}\n{jsondata.ToJsonString()}", GroupNames.成都开发測試群組); // } // return response; // } // /// // /// 统计学校的信息 // /// // /// // /// // //[Function("stats-sc-info")] // public async Task StatsSchoolInfo([HttpTrigger(AuthorizationLevel.Function, "post", Route = null)] HttpRequestData req) // { // var response = req.CreateResponse(HttpStatusCode.OK); // dynamic jsondata = new ExpandoObject(); // try // { // string scId = null; // var cosmosClient = _azureCosmos.GetCosmosClient(); // var redisClinet = _azureRedis.GetRedisClient(8); // var tableClient = _azureStorage.GetCloudTableClient(); // var blobClient = _azureStorage.GetBlobContainerClient(containerName: "0-public"); // string data = await new StreamReader(req.Body).ReadToEndAsync(); // var json = JsonDocument.Parse(data).RootElement; // jsondata = json; // if (json.TryGetProperty("schoolId", out JsonElement _schoolId)) // { // scId = $"{_schoolId}"; // } // if (string.IsNullOrEmpty(scId)) // { // return response; // } // bool locKey = await _azureRedis.GetRedisClient(8).KeyExistsAsync($"Train:Statistics:Lock:{scId}"); // if (!locKey) // { // await _azureRedis.GetRedisClient(8).SetAddAsync($"Train:Statistics:Lock:{scId}", new RedisValue(scId)); // DateTime minutes = DateTime.UtcNow.AddMinutes(15); //15分钟 // await _azureRedis.GetRedisClient(8).KeyExpireAsync($"Train:Statistics:Lock:{scId}", minutes); // bool isExist = true; // StatsInfo statsInfo = new(); // var scDataStats = await cosmosClient.GetContainer(Constant.TEAMModelOS, "School").ReadItemStreamAsync($"{scId}", new PartitionKey("Stats")); // if (scDataStats.Status == 200) // { // using var fileJson = await JsonDocument.ParseAsync(scDataStats.ContentStream); // statsInfo = fileJson.ToObject(); // } // else // isExist = false; // statsInfo = await SchoolStatsWay.GetSingleSc(cosmosClient,redisClinet, scId); // statsInfo.witRoom = ((int)await SchoolStatsWay.GetShoolWisdomRoomCount(_azureCosmos, _azureRedis, _configuration, _httpClient,_dingDing, scId)); //智慧教师 // statsInfo.upTime = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(); // if (isExist) // statsInfo = await cosmosClient.GetContainer(Constant.TEAMModelOS, "School").ReplaceItemAsync(statsInfo, statsInfo.id, new PartitionKey("Stats")); // else // statsInfo = await cosmosClient.GetContainer(Constant.TEAMModelOS, "School").CreateItemAsync(statsInfo, new PartitionKey("Stats")); // } // //保存操作记录 // await AzureStorageBlobExtensions.SaveBILog(blobClient, tableClient, "trigger-schoolStats", $"触发更新统计数据库", _dingDing); // } // catch (Exception ex) // { // await _dingDing.SendBotMsg($"BIFunction,{Environment.GetEnvironmentVariable("Option:Location")}, StatsSchoolInfo() \n {ex.Message}\n{ex.StackTrace}\n{jsondata.ToJsonString()}", GroupNames.成都开发測試群組); // } // return response; // } // public async Task SetSchoolStatsInfo([HttpTrigger(AuthorizationLevel.Function, "post", Route = null)] HttpRequestData req) // { // var response = req.CreateResponse(HttpStatusCode.OK); // dynamic jsondata = new ExpandoObject(); // string data = await new StreamReader(req.Body).ReadToEndAsync(); // var json = JsonDocument.Parse(data).RootElement; // jsondata = json; // try // { // School school = null; // if (json.TryGetProperty("school", out JsonElement _school)) // school = _school.ToObject(); // DateTimeOffset dateOff = DateTimeOffset.UtcNow; // var cosmosClient = _azureCosmos.GetCosmosClient(); // if (school != null) // { // StatsInfo statsInfo = new(); // var resStats = await cosmosClient.GetContainer(Constant.TEAMModelOS, "Common").ReadItemStreamAsync($"{dateOff.Year}-{school.id}", new PartitionKey("Statistics")); // if (resStats.Status == 200) // { // using var fileJson = await JsonDocument.ParseAsync(resStats.ContentStream); // statsInfo = fileJson.ToObject(); // } // else // { // double[] tchYear = new double[366]; // tchYear[0] = 1; // statsInfo.id = $"{dateOff.Year}-{school.id}"; // statsInfo.year = dateOff.Year; // statsInfo.stuYear = new double[366].ToList(); // statsInfo.tchYear = tchYear.ToList(); // statsInfo.tch = 1; // statsInfo.weekTch = 1; // statsInfo.monthTch = 1; // statsInfo.tchUpTime = dateOff.ToUnixTimeMilliseconds(); // statsInfo.lesson.year = new double[366].ToList(); // statsInfo.lesson.yearInters = new double[366].ToList(); // statsInfo.activity.year = new double[366].ToList(); // } // statsInfo.schoolId = school.id; // statsInfo.name = school.name; // statsInfo.picture = school.picture; // statsInfo.size = school.size; // statsInfo.scCreateTime = school.createTime; // statsInfo.areaId = school.areaId; // statsInfo.upTime = dateOff.ToUnixTimeMilliseconds(); // if (resStats.Status == 200) // await cosmosClient.GetContainer(Constant.TEAMModelOS, "Common").ReplaceItemAsync(statsInfo, statsInfo.id, new PartitionKey("Statistics")); // else // await cosmosClient.GetContainer(Constant.TEAMModelOS, "Common").CreateItemAsync(statsInfo, new PartitionKey("Statistics")); // } // } // catch (Exception ex) // { // await _dingDing.SendBotMsg($"BIFunction,{Environment.GetEnvironmentVariable("Option:Location")}, SetSchoolStatsInfo() \n{ex.Message}\n{ex.StackTrace}\n{jsondata.ToJsonString()}", GroupNames.成都开发測試群組); // } // return response; // } // /// // /// 处理传过来的信息加入到统计信息中 // /// // /// // /// // //[Function("set-scstats-type")] // public async Task SetSchoolStatsType([HttpTrigger(AuthorizationLevel.Function, "post", Route = null)] HttpRequestData req) // { // var response = req.CreateResponse(HttpStatusCode.OK); // dynamic jsondata = new ExpandoObject(); // try // { // string data = await new StreamReader(req.Body).ReadToEndAsync(); // var json = JsonDocument.Parse(data).RootElement; // jsondata = json; // var cosmosClient = _azureCosmos.GetCosmosClient(); // string scId = null, type = null; // long careDate = 0; // int count = 0; // int interaction = 0; // int lessType = 0; // DateTimeOffset cuurDateOff = DateTimeOffset.UtcNow; // DateTimeOffset dateOff = DateTimeOffset.UtcNow; // if (json.TryGetProperty("scId", out JsonElement _schoolId)) // scId = $"{_schoolId}"; // if (json.TryGetProperty("type", out JsonElement _type)) // type = $"{_type}"; // if (string.IsNullOrEmpty($"{_schoolId}") && string.IsNullOrEmpty($"{_type}")) // { // await _dingDing.SendBotMsg($"set-scstats-type, {json}", GroupNames.成都开发測試群組); // return response; // } // if (json.TryGetProperty("cnt", out JsonElement _cnt)) // count = _cnt.GetInt32(); // if (json.TryGetProperty("interaction", out JsonElement _interaction)) // interaction = _interaction.GetInt32(); // if (json.TryGetProperty("lessType", out JsonElement _lessType)) // lessType = _lessType.GetInt32(); // if (json.TryGetProperty("date", out JsonElement _date)) // careDate = _date.GetInt64(); // else // careDate = dateOff.ToUnixTimeMilliseconds(); // var (lastWeekS, lastWeekE) = TimeHelper.GetStartOrEnd(dateOff, "lastweek"); //计算上周开始/结束时间 // var (weekS, weekE) = TimeHelper.GetStartOrEnd(dateOff, "week"); //计算本周开始/结束时间 // var (lastMonthS, lastMonthE) = TimeHelper.GetStartOrEnd(dateOff, "lastMonth"); //上月开始/结束时间 // var (monthS, monthE) = TimeHelper.GetStartOrEnd(dateOff, "month"); //本月开始/结束时间 // var (lastTermS, lastTermE) = TimeHelper.GetStartOrEnd(dateOff, "lastterm"); //计算上学期开始/结束时间 // var (termS, termE) = TimeHelper.GetStartOrEnd(dateOff, "term"); //计算本学期开始/结束时间 // var (yearS, yearE) = TimeHelper.GetStartOrEnd(cuurDateOff, "year"); //计算本学期开始/结束时间 // var (weekDayS, weekDayE) = TimeHelper.GetLongToTime(weekS, weekE); // var (lWeekDayS, lWeekDayE) = TimeHelper.GetLongToTime(lastWeekS, lastWeekE); // var (lTermDayS, lTermDayE) = TimeHelper.GetLongToTime(lastTermS, lastTermE); // var (termDayS, termDayE) = TimeHelper.GetLongToTime(lastTermS, lastTermE); // var (lMonthS, lMonthE) = TimeHelper.GetLongToTime(lastMonthS, lastMonthE); // var (monthDayS, monthDayE) = TimeHelper.GetLongToTime(monthS, monthE); // var lastDay = dateOff.AddDays(-1); // int lmthDay = TimeHelper.GetDateDay(lMonthE); // StatsInfo statsInfo = new(); // var resStsInfo = await cosmosClient.GetContainer(Constant.TEAMModelOS, "Common").ReadItemStreamAsync($"{dateOff.Year}-{scId}", new PartitionKey("Statistics")); // if (resStsInfo.Status == 200) // { // using var fileJson = await JsonDocument.ParseAsync(resStsInfo.ContentStream); // statsInfo = fileJson.ToObject(); // } // else // { // var resLastStsInfo = await cosmosClient.GetContainer(Constant.TEAMModelOS, "Common").ReadItemStreamAsync($"{dateOff.Year - 1}-{scId}", new PartitionKey("Statistics")); // if (resLastStsInfo.Status == 200) // { // using var fileJson = await JsonDocument.ParseAsync(resStsInfo.ContentStream); // statsInfo = fileJson.ToObject(); // statsInfo.id = $"{dateOff.Year}-{scId}"; // statsInfo.year = dateOff.Year; // statsInfo.stuYear = new double[366].ToList(); // statsInfo.tchYear = new double[366].ToList(); // statsInfo.lesson.year = new double[366].ToList(); // statsInfo.lesson.yearInters = new double[366].ToList(); // statsInfo.activity.year = new double[366].ToList(); // } // else // { // ScBase scBase = await cosmosClient.GetContainer("TEAMModelOS", "Common").ReadItemAsync(scId, new PartitionKey("Base")); // statsInfo.id = $"{dateOff.Year}-{scBase.id}"; // statsInfo.schoolId = scBase.id; // statsInfo.name = scBase.name; // statsInfo.picture = scBase.picture; // statsInfo.size = scBase.size; // statsInfo.scCreateTime = scBase.createTime; // statsInfo.areaId = scBase.areaId; // statsInfo.upTime = careDate; // } // } // switch ($"{type}") // { // case "Exam": // statsInfo.activity.exam += count; // break; // case "Survey": // statsInfo.activity.survey += count; // break; // case "Vote": // statsInfo.activity.vote += count; // break; // case "Homework": // statsInfo.activity.homework += count; // break; // case "Less": // //课例 // statsInfo.lesson.year[dateOff.DayOfYear] += count; // statsInfo.lesson.all += count; // if (lessType == 0) // statsInfo.lesson.open += count; // else // statsInfo.lesson.less += count; // statsInfo.lesson.lastDay = ((int)statsInfo.lesson.year[lastDay.DayOfYear]); // statsInfo.lesson.day = ((int)statsInfo.lesson.year[dateOff.DayOfYear]); // var lessList = DenseMatrix.OfColumns(new List>() { statsInfo.lesson.year }); // statsInfo.lesson.lastWeek = ((int)lessList.SubMatrix(lWeekDayS.DayOfYear, 7, 0, lessList.ColumnCount).ColumnSums().Sum()); // statsInfo.lesson.week = ((int)lessList.SubMatrix(weekDayS.DayOfYear, (dateOff.DayOfYear - weekDayS.DayOfYear), 0, lessList.ColumnCount).ColumnSums().Sum()); // if (lastTermS <= statsInfo.lesson.upTime && statsInfo.lesson.upTime <= lastTermE) // { // if (lTermDayS.Year < dateOff.Year) // { // var lastLessSts = await cosmosClient.GetContainer(Constant.TEAMModelOS, "Common").ReadItemStreamAsync($"{lTermDayS.Year}-{scId}", new PartitionKey("Statistics")); // if (lastLessSts.Status == 200) // { // using var fileJson = await JsonDocument.ParseAsync(lastLessSts.ContentStream); // var tempSts = fileJson.ToObject(); // var actYer = DenseMatrix.OfColumns(new List>() { tempSts.lesson.year, statsInfo.lesson.year }); // statsInfo.lesson.lastTerm = ((int)actYer.SubMatrix(lTermDayS.DayOfYear, lTermDayE.DayOfYear, 0, 1).ColumnSums().Sum()); // } // } // } // if (termS <= statsInfo.lesson.upTime && statsInfo.lesson.upTime <= termE) // { // if (termDayS.Year < dateOff.Year) // { // var lastSts = await cosmosClient.GetContainer(Constant.TEAMModelOS, "Common").ReadItemStreamAsync($"{termDayS.Year}-{scId}", new PartitionKey("Statistics")); // if (lastSts.Status == 200) // { // using var fileJson = await JsonDocument.ParseAsync(lastSts.ContentStream); // var tempSts = fileJson.ToObject(); // var actYer = DenseMatrix.OfColumns(new List>() { tempSts.lesson.year, statsInfo.lesson.year }); // statsInfo.lesson.term = ((int)actYer.SubMatrix(termDayS.DayOfYear, termDayE.DayOfYear, 0, 1).ColumnSums().Sum()); // } // else // statsInfo.lesson.term += count; // } // } // statsInfo.lesson.lastMonth = ((int)lessList.SubMatrix(lMonthS.DayOfYear, lmthDay, 0, lessList.ColumnCount).ColumnSums().Sum()); // statsInfo.lesson.month += ((int)lessList.SubMatrix(monthDayS.DayOfYear, (dateOff.DayOfYear - monthDayS.DayOfYear), 0, lessList.ColumnCount).ColumnSums().Sum()); // //课例互动 // statsInfo.lesson.yearInters[dateOff.DayOfYear] += interaction; // statsInfo.lesson.allInter += interaction; // statsInfo.lesson.lastDayInter = ((int)statsInfo.lesson.yearInters[lastDay.DayOfYear]); // statsInfo.lesson.dayInter = ((int)statsInfo.lesson.yearInters[dateOff.DayOfYear]); // var interList = DenseMatrix.OfColumns(new List>() { statsInfo.lesson.yearInters }); // statsInfo.lesson.lastMonthInter = ((int)interList.SubMatrix(lMonthS.DayOfYear, lmthDay, 0, interList.ColumnCount).ColumnSums().Sum()); // statsInfo.lesson.monthInter += ((int)interList.SubMatrix(monthDayS.DayOfYear, (dateOff.DayOfYear - monthDayS.DayOfYear), 0, interList.ColumnCount).ColumnSums().Sum()); // if (lastTermS <= statsInfo.lesson.upTime && statsInfo.lesson.upTime <= lastTermE) // { // if (lTermDayS.Year < dateOff.Year) // { // var lastSts = await cosmosClient.GetContainer(Constant.TEAMModelOS, "Common").ReadItemStreamAsync($"{lTermDayS.Year}-{scId}", new PartitionKey("Statistics")); // if (lastSts.Status == 200) // { // using var fileJson = await JsonDocument.ParseAsync(lastSts.ContentStream); // var tempSts = fileJson.ToObject(); // statsInfo.lesson.lastYearInter = ((int)tempSts.lesson.yearInters.Sum()); // } // else // statsInfo.lesson.lastYearInter = 0; // } // } // statsInfo.lesson.upTime = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(); // break; // case "Student": // statsInfo.stuYear[dateOff.DayOfYear] += count; // statsInfo.stu += count; // statsInfo.dayStu = ((int)statsInfo.stuYear[dateOff.DayOfYear]); // var stuList = DenseMatrix.OfColumns(new List>() { statsInfo.stuYear }); // statsInfo.weekStu = ((int)stuList.SubMatrix(weekDayS.DayOfYear, (dateOff.DayOfYear - weekDayS.DayOfYear), 0, stuList.ColumnCount).ColumnSums().Sum()); // statsInfo.monthStu = ((int)stuList.SubMatrix(monthDayS.DayOfYear, (dateOff.DayOfYear - monthDayS.DayOfYear), 0, stuList.ColumnCount).ColumnSums().Sum()); // statsInfo.stuUpTime = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(); // break; // case "Teacher": // statsInfo.tchYear[dateOff.DayOfYear] += count; // statsInfo.tch += count; // statsInfo.dayTch = ((int)statsInfo.tchYear[dateOff.DayOfYear]); // var tchList = DenseMatrix.OfColumns(new List>() { statsInfo.tchYear }); // statsInfo.weekTch = ((int)tchList.SubMatrix(weekDayS.DayOfYear, (dateOff.DayOfYear - weekDayS.DayOfYear), 0, tchList.ColumnCount).ColumnSums().Sum()); // statsInfo.monthTch = ((int)tchList.SubMatrix(monthDayS.DayOfYear, (dateOff.DayOfYear - monthDayS.DayOfYear), 0, tchList.ColumnCount).ColumnSums().Sum()); // statsInfo.tchUpTime = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(); // break; // } // if ($"{type}".Equals("Exam") || $"{type}".Equals("Survey") || $"{type}".Equals("Vote") || $"{type}".Equals("Homework")) // { // statsInfo.activity.all += count; // if (careDate >= yearS && careDate <= yearE) // { // if (count > 0) // { // statsInfo.activity.year[dateOff.DayOfYear] += count; // DenseMatrix matris = DenseMatrix.OfColumns(new List>() { statsInfo.activity.year }); // statsInfo.activity.lastDay = ((int)statsInfo.activity.year[lastDay.DayOfYear]); // statsInfo.activity.dayCnt = ((int)statsInfo.activity.year[dateOff.DayOfYear]); // statsInfo.activity.lastWeek = ((int)matris.SubMatrix(lWeekDayS.DayOfYear, 7, 0, matris.ColumnCount).ColumnSums().Sum()); // statsInfo.activity.week = ((int)matris.SubMatrix(weekDayS.DayOfYear, weekDayE.DayOfYear - weekDayS.DayOfYear, 0, matris.ColumnCount).ColumnSums().Sum()); // if (lastTermS <= statsInfo.activity.upTime && statsInfo.activity.upTime <= lastTermE) // { // if (lTermDayS.Year < dateOff.Year) // { // var lastSts = await cosmosClient.GetContainer(Constant.TEAMModelOS, "Common").ReadItemStreamAsync($"{lTermDayS.Year}-{scId}", new PartitionKey("Statistics")); // if (lastSts.Status == 200) // { // using var fileJson = await JsonDocument.ParseAsync(lastSts.ContentStream); // var tempSts = fileJson.ToObject(); // var actYer = DenseMatrix.OfColumns(new List>() { tempSts.activity.year, statsInfo.activity.year }); // statsInfo.activity.lastTerm = ((int)actYer.SubMatrix(lTermDayS.DayOfYear, lTermDayE.DayOfYear, 0, 1).ColumnSums().Sum()); // } // else // statsInfo.activity.lastTerm = 0; // } // } // if (termS <= statsInfo.activity.upTime && statsInfo.activity.upTime <= termE) // { // if (termDayS.Year < dateOff.Year) // { // var lastSts = await cosmosClient.GetContainer(Constant.TEAMModelOS, "Common").ReadItemStreamAsync($"{termDayS.Year}-{scId}", new PartitionKey("Statistics")); // if (lastSts.Status == 200) // { // using var fileJson = await JsonDocument.ParseAsync(lastSts.ContentStream); // var tempSts = fileJson.ToObject(); // var actYer = DenseMatrix.OfColumns(new List>() { tempSts.activity.year, statsInfo.activity.year }); // statsInfo.activity.term = ((int)actYer.SubMatrix(termDayS.DayOfYear, termDayE.DayOfYear, 0, 1).ColumnSums().Sum()); // } // else // statsInfo.activity.term += count; // } // else // { // var actYer = DenseMatrix.OfColumns(new List>() { statsInfo.activity.year }); // statsInfo.activity.term = ((int)actYer.SubMatrix(termDayS.DayOfYear, termDayE.DayOfYear, 0, 1).ColumnSums().Sum()); // } // } // statsInfo.activity.lastMonth = ((int)matris.SubMatrix(lMonthS.DayOfYear, lmthDay, 0, matris.ColumnCount).ColumnSums().Sum()); // statsInfo.activity.month += ((int)matris.SubMatrix(monthDayS.DayOfYear, (dateOff.DayOfYear - monthDayS.DayOfYear), 0, matris.ColumnCount).ColumnSums().Sum()); // statsInfo.activity.upTime = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(); // } // } // } // if (resStsInfo.Status == 200) // statsInfo = await cosmosClient.GetContainer(Constant.TEAMModelOS, "Common").ReplaceItemAsync(statsInfo, scId, new PartitionKey("Statistics")); // else // statsInfo = await cosmosClient.GetContainer(Constant.TEAMModelOS, "Common").CreateItemAsync(statsInfo, new PartitionKey("Statistics")); // } // catch (Exception ex) // { // await _dingDing.SendBotMsg($"BIFunction,{Environment.GetEnvironmentVariable("Option:Location")}, SetSchoolStatsType() \n{ex.Message}\n{ex.StackTrace}\n{jsondata.ToJsonString()}", GroupNames.成都开发測試群組); // } // return response; // } // } //}