|
@@ -219,7 +219,7 @@ namespace TEAMModelBI.Controllers.BITest
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
- /// 查询table数据
|
|
|
+ /// 查询table数据 sql
|
|
|
/// </summary>
|
|
|
/// <param name="jsonElement"></param>
|
|
|
/// <returns></returns>
|
|
@@ -1103,72 +1103,6 @@ namespace TEAMModelBI.Controllers.BITest
|
|
|
return Ok(new { state = 200, continuationToken, count = schools.Count, schools });
|
|
|
}
|
|
|
|
|
|
- /// <summary>
|
|
|
- /// 测试
|
|
|
- /// </summary>
|
|
|
- /// <param name="jsonElement"></param>
|
|
|
- /// <returns></returns>
|
|
|
- [HttpPost("get-test")]
|
|
|
- public async Task<IActionResult> GetTest(JsonElement jsonElement)
|
|
|
- {
|
|
|
- List<Test> list1 = new();
|
|
|
- list1.Add(new Test { score = 10, name = "001" });
|
|
|
- list1.Add(new Test { score = 20, name = "002" });
|
|
|
- list1.Add(new Test { score = 30, name = "003" });
|
|
|
- list1.Add(new Test { score = 40, name = "004" });
|
|
|
- list1.Add(new Test { score = 50, name = "005" });
|
|
|
- list1.Add(new Test { score = 60, name = "006" });
|
|
|
-
|
|
|
- List<Test> list2 = new();
|
|
|
- list2.Add(new Test { score = 40, name = "004" });
|
|
|
- list2.Add(new Test { score = 50, name = "005" });
|
|
|
- list2.Add(new Test { score = 60, name = "006" });
|
|
|
- list2.Add(new Test { score = 70, name = "007" });
|
|
|
- list2.Add(new Test { score = 80, name = "008" });
|
|
|
- list2.Add(new Test { score = 90, name = "009" });
|
|
|
- list2.Add(new Test { score = 100, name = "010" });
|
|
|
-
|
|
|
- //list3 return 2
|
|
|
- List<Test> list3 = list1.Where(x => !list2.Any(x2 => x.score == x2.score && x.name == x2.name)).ToList();
|
|
|
- //list4 return 2
|
|
|
- List<Test> list4 = list1.Where(x => list2.All(x2 => x.score != x2.score)).ToList();
|
|
|
-
|
|
|
- List<Test> temp = list1.Where(p => !list2.Select(b => b.score).Contains(p.score)).ToList();
|
|
|
-
|
|
|
- //List<Test> mergedList = new List<Test>(list1);
|
|
|
- //mergedList.AddRange(list2.Except(list1));
|
|
|
- // var mergedList = list1.Union(list2);
|
|
|
-
|
|
|
- var en2 = list1.Concat(list2).Except(list1.Intersect(list2));// 容斥原理
|
|
|
-
|
|
|
- var bingji = list1.Union(list2).ToList();//并(全)集
|
|
|
-
|
|
|
- var cha = bingji.GroupBy(x => x.score).Select(c => c.First()).ToList();
|
|
|
-
|
|
|
- var jiaoji = list1.Intersect(list2).ToList();//交集
|
|
|
- var chaji = list1.Except(list2).ToList();//差集
|
|
|
-
|
|
|
- List<Test> have = list1.Where(a => !list2.Exists(t => a.score == t.score)).ToList();
|
|
|
- have.AddRange(list2.Where(a => !list1.Exists(t => a.score == t.score)).ToList());
|
|
|
-
|
|
|
- var ss = DateTime.Now.AddDays(0 - Convert.ToInt16(DateTime.Now.DayOfWeek) - 7).ToString("yyyy-MM-dd");//上周日
|
|
|
- var sss = DateTime.Now.AddDays(6 - Convert.ToInt16(DateTime.Now.DayOfWeek) - 7).ToString("yyyy-MM-dd");//上周六
|
|
|
-
|
|
|
- var ssss = DateTime.Now.AddDays(1 - Convert.ToInt16(DateTime.Now.DayOfWeek) - 7 + 1).ToString("yyyy-MM-dd");//上周一
|
|
|
- var sssss = DateTime.Now.AddDays(7 - Convert.ToInt16(DateTime.Now.DayOfWeek) - 7 + 1).ToString("yyyy-MM-dd");//上周日
|
|
|
-
|
|
|
- //计算上周
|
|
|
- var date = DateTime.Now;
|
|
|
- var m = (date.DayOfWeek == DayOfWeek.Sunday ? (DayOfWeek)7 : date.DayOfWeek) - DayOfWeek.Monday;
|
|
|
- var s = (date.DayOfWeek == DayOfWeek.Sunday ? (DayOfWeek)7 : date.DayOfWeek) - (DayOfWeek)7;
|
|
|
- var Mon = date.AddDays((-7 - m)).ToString("yyyy-MM-dd");
|
|
|
- var Sun = date.AddDays((-7 - s)).ToString("yyyy-MM-dd");
|
|
|
-
|
|
|
- var (lastWeekStart, lastWeekEnd) = TimeHelper.GetStartOrEnd(DateTimeOffset.UtcNow, "lastweek");
|
|
|
-
|
|
|
- return Ok(new { state = 200, Mon, Sun, ss, sss, ssss, sssss, lastWeekStart, lastWeekEnd, have, en2, bingji, cha, jiaoji, chaji, list3, list4, temp, list1 });
|
|
|
- }
|
|
|
-
|
|
|
/// <summary>
|
|
|
/// table 表分页查询
|
|
|
/// </summary>
|
|
@@ -1190,6 +1124,19 @@ namespace TEAMModelBI.Controllers.BITest
|
|
|
operateLogs.Sort((x, y) => y.time.CompareTo(x.time));
|
|
|
List<BIOptLog> bIOptLogs = operateLogs.Skip((page - 1) * size).Take(size).ToList();
|
|
|
|
|
|
+ int takeCount = 500;
|
|
|
+ var table1 = _azureStorage.GetCloudTableClient();
|
|
|
+ int pagesize = 10;
|
|
|
+ int pageNum = 2;
|
|
|
+
|
|
|
+ var query = (from entity in table.CreateQuery<BIOptLog>()
|
|
|
+ select entity).ToList().Skip(pagesize * (pageNum - 1)).Take(pagesize);
|
|
|
+
|
|
|
+ //var query = (from entity in table.CreateQuery<BIOptLog>()
|
|
|
+ // orderby entity.time descending
|
|
|
+ // select entity).Skip(pagesize * (pageNum - 1)).Take(pagesize);
|
|
|
+ //var ster = AzureStorageTableExtensions.GetTablePage<BIOptLog>(table1, "BIOptLog", 10, 1);
|
|
|
+
|
|
|
return Ok(new { state = 200, allcount = operateLogs.Count, bIOptLogs });
|
|
|
}
|
|
|
|
|
@@ -1228,9 +1175,69 @@ namespace TEAMModelBI.Controllers.BITest
|
|
|
return Ok(new { state = 200 });
|
|
|
}
|
|
|
|
|
|
+ /// <summary>
|
|
|
+ /// lingq 查询
|
|
|
+ /// </summary>
|
|
|
+ /// <returns></returns>
|
|
|
[HttpPost("get-linqcount")]
|
|
|
public async Task<IActionResult> GetLinqCount()
|
|
|
{
|
|
|
+ List<Test> list1 = new();
|
|
|
+ list1.Add(new Test { score = 10, name = "001" });
|
|
|
+ list1.Add(new Test { score = 20, name = "002" });
|
|
|
+ list1.Add(new Test { score = 30, name = "003" });
|
|
|
+ list1.Add(new Test { score = 40, name = "004" });
|
|
|
+ list1.Add(new Test { score = 50, name = "005" });
|
|
|
+ list1.Add(new Test { score = 60, name = "006" });
|
|
|
+
|
|
|
+ List<Test> list2 = new();
|
|
|
+ list2.Add(new Test { score = 40, name = "004" });
|
|
|
+ list2.Add(new Test { score = 50, name = "005" });
|
|
|
+ list2.Add(new Test { score = 60, name = "006" });
|
|
|
+ list2.Add(new Test { score = 70, name = "007" });
|
|
|
+ list2.Add(new Test { score = 80, name = "008" });
|
|
|
+ list2.Add(new Test { score = 90, name = "009" });
|
|
|
+ list2.Add(new Test { score = 100, name = "010" });
|
|
|
+
|
|
|
+ //list3 return 2
|
|
|
+ List<Test> list3 = list1.Where(x => !list2.Any(x2 => x.score == x2.score && x.name == x2.name)).ToList();
|
|
|
+ //list4 return 2
|
|
|
+ List<Test> list4 = list1.Where(x => list2.All(x2 => x.score != x2.score)).ToList();
|
|
|
+
|
|
|
+ List<Test> temp = list1.Where(p => !list2.Select(b => b.score).Contains(p.score)).ToList();
|
|
|
+
|
|
|
+ //List<Test> mergedList = new List<Test>(list1);
|
|
|
+ //mergedList.AddRange(list2.Except(list1));
|
|
|
+ // var mergedList = list1.Union(list2);
|
|
|
+
|
|
|
+ var en2 = list1.Concat(list2).Except(list1.Intersect(list2));// 容斥原理
|
|
|
+
|
|
|
+ var bingji = list1.Union(list2).ToList();//并(全)集
|
|
|
+
|
|
|
+ var cha = bingji.GroupBy(x => x.score).Select(c => c.First()).ToList();
|
|
|
+
|
|
|
+ var jiaoji = list1.Intersect(list2).ToList();//交集
|
|
|
+ var chaji = list1.Except(list2).ToList();//差集
|
|
|
+
|
|
|
+ List<Test> have = list1.Where(a => !list2.Exists(t => a.score == t.score)).ToList();
|
|
|
+ have.AddRange(list2.Where(a => !list1.Exists(t => a.score == t.score)).ToList());
|
|
|
+
|
|
|
+ var ss = DateTime.Now.AddDays(0 - Convert.ToInt16(DateTime.Now.DayOfWeek) - 7).ToString("yyyy-MM-dd");//上周日
|
|
|
+ var sss = DateTime.Now.AddDays(6 - Convert.ToInt16(DateTime.Now.DayOfWeek) - 7).ToString("yyyy-MM-dd");//上周六
|
|
|
+
|
|
|
+ var ssss = DateTime.Now.AddDays(1 - Convert.ToInt16(DateTime.Now.DayOfWeek) - 7 + 1).ToString("yyyy-MM-dd");//上周一
|
|
|
+ var sssss = DateTime.Now.AddDays(7 - Convert.ToInt16(DateTime.Now.DayOfWeek) - 7 + 1).ToString("yyyy-MM-dd");//上周日
|
|
|
+
|
|
|
+ //计算上周
|
|
|
+ var date = DateTime.Now;
|
|
|
+ var m = (date.DayOfWeek == DayOfWeek.Sunday ? (DayOfWeek)7 : date.DayOfWeek) - DayOfWeek.Monday;
|
|
|
+ var s = (date.DayOfWeek == DayOfWeek.Sunday ? (DayOfWeek)7 : date.DayOfWeek) - (DayOfWeek)7;
|
|
|
+ var Mon = date.AddDays((-7 - m)).ToString("yyyy-MM-dd");
|
|
|
+ var Sun = date.AddDays((-7 - s)).ToString("yyyy-MM-dd");
|
|
|
+
|
|
|
+ var (lastWeekStart, lastWeekEnd) = TimeHelper.GetStartOrEnd(DateTimeOffset.UtcNow, "lastweek");
|
|
|
+
|
|
|
+
|
|
|
List<linqTest> linqTests = new();
|
|
|
for (int i = 0; i < 10; i++)
|
|
|
{
|
|
@@ -1244,7 +1251,7 @@ namespace TEAMModelBI.Controllers.BITest
|
|
|
// var coreUser = linqTests.Find(c => c.id.Equals("abc0"));
|
|
|
// }); //.Except(linqTests.Select(y => y.linq1s.Find(n => n.times.Equals("abc0"))));
|
|
|
|
|
|
- return Ok(new { state = 200, linqTests, set });
|
|
|
+ return Ok(new { state = 200, Mon, Sun, ss, sss, ssss, sssss, lastWeekStart, lastWeekEnd, have, en2, bingji, cha, jiaoji, chaji, list3, list4, temp, list1, linqTests, set });
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
@@ -1350,7 +1357,7 @@ namespace TEAMModelBI.Controllers.BITest
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
- ///
|
|
|
+ /// 测试删除过期Blob 文件
|
|
|
/// </summary>
|
|
|
/// <param name="jsonElement"></param>
|
|
|
/// <returns></returns>
|
|
@@ -1465,32 +1472,11 @@ namespace TEAMModelBI.Controllers.BITest
|
|
|
|
|
|
return Ok(new { state = 200 });
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
/// <summary>
|
|
|
- /// 测试研究table 表分页的问题
|
|
|
+ /// 端外通知
|
|
|
/// </summary>
|
|
|
- /// <param name="jsonElement"></param>
|
|
|
/// <returns></returns>
|
|
|
- [HttpPost("get-logrec")]
|
|
|
- public async Task<IActionResult> GetLogRec(JsonElement jsonElement)
|
|
|
- {
|
|
|
- int takeCount = 500;
|
|
|
- var table = _azureStorage.GetCloudTableClient().GetTableReference("BIOptLog");
|
|
|
- var table1 = _azureStorage.GetCloudTableClient();
|
|
|
- int pagesize = 10;
|
|
|
- int pageNum = 2;
|
|
|
-
|
|
|
- var query = (from entity in table.CreateQuery<BIOptLog>()
|
|
|
- select entity).ToList().Skip(pagesize * (pageNum - 1)).Take(pagesize);
|
|
|
-
|
|
|
- //var query = (from entity in table.CreateQuery<BIOptLog>()
|
|
|
- // orderby entity.time descending
|
|
|
- // select entity).Skip(pagesize * (pageNum - 1)).Take(pagesize);
|
|
|
- //var ster = AzureStorageTableExtensions.GetTablePage<BIOptLog>(table1, "BIOptLog", 10, 1);
|
|
|
- return Ok(new { state = 200, query });
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
[HttpPost("get-noticev2")]
|
|
|
public async Task<IActionResult> SetNoticeV2()
|
|
|
{
|
|
@@ -1503,11 +1489,30 @@ namespace TEAMModelBI.Controllers.BITest
|
|
|
return Ok(new { state = RespondCode.Ok });
|
|
|
}
|
|
|
|
|
|
+ /// <summary>
|
|
|
+ /// 复制文件
|
|
|
+ /// </summary>
|
|
|
+ /// <returns></returns>
|
|
|
[HttpPost("set-copyfile")]
|
|
|
public async Task<IActionResult> SetCopyFile()
|
|
|
{
|
|
|
|
|
|
- List<Task<CopyFromUriOperation>> filelist = new List<Task<CopyFromUriOperation>>();
|
|
|
+ ///单个复制文件
|
|
|
+ string blobName = "cswznb";
|
|
|
+ string oldFile = "https://teammodeltest.blob.core.chinacloudapi.cn/cswznb/survey%2Fd011c05b-c009-0a53-428f-b871a58092c7%2Findex.json";//"https://teammodeltest.blob.core.chinacloudapi.cn/1636016499/yxpt%2Fstandard2%2FTEAMModelOS%E6%95%B0%E6%8D%AE%E5%BA%93.doc";
|
|
|
+ string oldId = "survey";
|
|
|
+ string newId = "survey1";
|
|
|
+
|
|
|
+ List<Task<CopyFromUriOperation>> filelist = new(); //可复制256M以上文件
|
|
|
+ var set = await BatchCopyFileService.SingleCopyFile(_azureStorage, blobName, oldFile, oldId, newId);
|
|
|
+
|
|
|
+ //var azureClient = _azureStorage.GetBlobContainerClient($"{blobName}");//获取容器连接地址
|
|
|
+ //string newurl = oldFile.Substring(oldFile.IndexOf($"{blobName}/") + $"{blobName}/".Length).Replace($"{oldId}", $"{newId}");//替换成新的容器路径
|
|
|
+ //string oldFileName = oldFile.Substring(oldFile.IndexOf($"{blobName}/") + $"{blobName}/".Length);
|
|
|
+ //var urlSas = _azureStorage.GetBlobSAS($"{blobName}", $"{HttpUtility.UrlDecode(oldFileName)}", BlobSasPermissions.Read | BlobSasPermissions.List); //获取容器sas和有效期
|
|
|
+ ////var respCopy = azureClient.GetBlobClient(HttpUtility.UrlDecode(newurl)).SyncCopyFromUri(new Uri(urlSas)); //可复制256M以下文件
|
|
|
+ //var respCopy1 = await azureClient.GetBlobClient(HttpUtility.UrlDecode(newurl)).StartCopyFromUriAsync(new Uri(urlSas)); //可复制256M以上文件
|
|
|
+
|
|
|
//var azureClient = _azureStorage.GetBlobContainerClient($"0-public");//获取容器连接地址
|
|
|
|
|
|
////查询目录下所有容器路径
|
|
@@ -1548,30 +1553,47 @@ namespace TEAMModelBI.Controllers.BITest
|
|
|
return Ok(new { state = 200, filelist });
|
|
|
}
|
|
|
|
|
|
- [HttpPost("test-copy-file")]
|
|
|
- public async Task<IActionResult> TestCaopyFile()
|
|
|
+ /// <summary>
|
|
|
+ /// 计算一年每月的数据
|
|
|
+ /// </summary>
|
|
|
+ /// <param name="jsonElement"></param>
|
|
|
+ /// <returns></returns>
|
|
|
+ [HttpPost("get-yearmonsum")]
|
|
|
+ public async Task<IActionResult> GetYearMonthSum(JsonElement jsonElement)
|
|
|
{
|
|
|
- string blobName = "cswznb";
|
|
|
- string oldFile = "https://teammodeltest.blob.core.chinacloudapi.cn/cswznb/survey%2Fd011c05b-c009-0a53-428f-b871a58092c7%2Findex.json";//"https://teammodeltest.blob.core.chinacloudapi.cn/1636016499/yxpt%2Fstandard2%2FTEAMModelOS%E6%95%B0%E6%8D%AE%E5%BA%93.doc";
|
|
|
- string oldId = "survey";
|
|
|
- string newId = "survey1";
|
|
|
+ var cosmosClient = _azureCosmos.GetCosmosClient();
|
|
|
+ //LessonStats lessonStats =await StatsWay.GetLessStats(cosmosClient, "hbcn");
|
|
|
+ //ActivityStats artStats = await StatsWay.GetActStats(cosmosClient, "hbcn");
|
|
|
+ //var tempSc = SchoolStatsWay.GetSingleSc(cosmosClient, "hbcn");
|
|
|
|
|
|
- List<Task<CopyFromUriOperation>> filelist = new(); //可复制256M以上文件
|
|
|
- var set = await BatchCopyFileService.SingleCopyFile(_azureStorage, blobName, oldFile, oldId, newId);
|
|
|
+ //return Ok(new { state = 200, ld= artStats.LastYear.Count, d = artStats.year.Count, artStats });
|
|
|
+ //示例矩阵
|
|
|
|
|
|
- //var azureClient = _azureStorage.GetBlobContainerClient($"{blobName}");//获取容器连接地址
|
|
|
- //string newurl = oldFile.Substring(oldFile.IndexOf($"{blobName}/") + $"{blobName}/".Length).Replace($"{oldId}", $"{newId}");//替换成新的容器路径
|
|
|
- //string oldFileName = oldFile.Substring(oldFile.IndexOf($"{blobName}/") + $"{blobName}/".Length);
|
|
|
- //var urlSas = _azureStorage.GetBlobSAS($"{blobName}", $"{HttpUtility.UrlDecode(oldFileName)}", BlobSasPermissions.Read | BlobSasPermissions.List); //获取容器sas和有效期
|
|
|
- ////var respCopy = azureClient.GetBlobClient(HttpUtility.UrlDecode(newurl)).SyncCopyFromUri(new Uri(urlSas)); //可复制256M以下文件
|
|
|
- //var respCopy1 = await azureClient.GetBlobClient(HttpUtility.UrlDecode(newurl)).StartCopyFromUriAsync(new Uri(urlSas)); //可复制256M以上文件
|
|
|
+ List<List<double>> matrixDou = new() {
|
|
|
+ new List<double>() { 6, 5, 4, 3, 2, 1},
|
|
|
+ new List<double>() { 2, 3, 4, 5, 6, 7 },
|
|
|
+ new List<double>() { 3, 4, 5, 6, 7, 8 },
|
|
|
+ new List<double>() { 4, 5, 6, 7, 8, 9 }
|
|
|
+ };
|
|
|
|
|
|
- return Ok(new { state = 200 });
|
|
|
- }
|
|
|
+ var artYear = DenseMatrix.OfColumns(matrixDou);
|
|
|
+ var rc = artYear.RowCount;
|
|
|
+ var cc = artYear.ColumnCount;
|
|
|
+ List<double> dous1 = new(); ;
|
|
|
|
|
|
- [HttpPost("get-yearmonsum")]
|
|
|
- public async Task<IActionResult> GetYearMonthSum(JsonElement jsonElement)
|
|
|
- {
|
|
|
+ List<double> dous = new(); ;
|
|
|
+ for (int i = 0; i < artYear.RowCount; i++)
|
|
|
+ {
|
|
|
+ Console.WriteLine($"次数:{i} ; 行数:{rc};列数:{cc}");
|
|
|
+ var cl = matrixDou.SelectMany(o => o.Skip(i).Take(1)).ToList();
|
|
|
+ var cl1 = matrixDou.SelectMany(o => o.Skip(i).Take(1)).ToList().Sum();
|
|
|
+ dous1.Add(cl1);
|
|
|
+ var stet = artYear.SubMatrix(i, 1, 0, cc);
|
|
|
+ var stet1 = artYear.SubMatrix(i, 1, 0, cc).ColumnSums().Sum();
|
|
|
+ dous.Add(stet1);
|
|
|
+ //var set = artYear.SubMatrix(0, 4, i, i+1).ColumnSums().Sum();
|
|
|
+ //dous.Add(set);
|
|
|
+ }
|
|
|
|
|
|
var s = DateTimeOffset.UtcNow.Year - 1;
|
|
|
DateTimeOffset date = new(DateTimeOffset.UtcNow.Year - 1, DateTimeOffset.UtcNow.Month, DateTimeOffset.UtcNow.Day, DateTimeOffset.UtcNow.Hour, DateTimeOffset.UtcNow.Minute, DateTimeOffset.UtcNow.Second, TimeSpan.Zero);
|
|
@@ -1586,9 +1608,13 @@ namespace TEAMModelBI.Controllers.BITest
|
|
|
return Ok(new { state = RespondCode.Ok, leverycnt = leveryDay.Count, leveryDay, dayCnt = everyDay.Count, everyDay , monthty });
|
|
|
}
|
|
|
|
|
|
-
|
|
|
- [HttpPost("set-sc-state")]
|
|
|
- public async Task<IActionResult> SetScState(JsonElement jsonElement)
|
|
|
+ /// <summary>
|
|
|
+ /// 测试矩阵
|
|
|
+ /// </summary>
|
|
|
+ /// <param name="jsonElement"></param>
|
|
|
+ /// <returns></returns>
|
|
|
+ [HttpPost("set-matrix")]
|
|
|
+ public async Task<IActionResult> SetMatrix(JsonElement jsonElement)
|
|
|
{
|
|
|
var cosmosClient = _azureCosmos.GetCosmosClient();
|
|
|
//LessonStats lessonStats =await StatsWay.GetLessStats(cosmosClient, "hbcn");
|
|
@@ -1598,7 +1624,6 @@ namespace TEAMModelBI.Controllers.BITest
|
|
|
//return Ok(new { state = 200, ld= artStats.LastYear.Count, d = artStats.year.Count, artStats });
|
|
|
//示例矩阵
|
|
|
|
|
|
-
|
|
|
List<List<double>> doubles = new() {
|
|
|
new List<double>() { 6, 5, 4, 3, 2, 1},
|
|
|
new List<double>() { 2, 3, 4, 5, 6, 7 },
|
|
@@ -1625,8 +1650,6 @@ namespace TEAMModelBI.Controllers.BITest
|
|
|
//dous.Add(set);
|
|
|
}
|
|
|
|
|
|
-
|
|
|
-
|
|
|
// double[][] matrix1 = new double[][]
|
|
|
// {
|
|
|
//new double[] { 1, 2, 3 },
|
|
@@ -1645,94 +1668,21 @@ namespace TEAMModelBI.Controllers.BITest
|
|
|
|
|
|
return Ok(new { state = 200, dous1, dous /*tempSc*/ });
|
|
|
}
|
|
|
- /// <summary>
|
|
|
- /// 打印矩阵
|
|
|
- /// </summary>
|
|
|
- /// <param name="matrix">待打印矩阵</param>
|
|
|
- private static void PrintMatrix(double[][] matrix)
|
|
|
- {
|
|
|
- for (int i = 0; i < matrix.Length; i++)
|
|
|
- {
|
|
|
- for (int j = 0; j < matrix[i].Length; j++)
|
|
|
- {
|
|
|
- Console.Write(matrix[i][j] + "\t");
|
|
|
- //注意不能写为:Console.Write(matrix[i][j] + '\t');
|
|
|
- }
|
|
|
- Console.WriteLine();
|
|
|
- }
|
|
|
- }
|
|
|
- // <summary>
|
|
|
- /// 矩阵加法
|
|
|
- /// </summary>
|
|
|
- /// <param name="matrix1">矩阵1</param>
|
|
|
- /// <param name="matrix2">矩阵2</param>
|
|
|
- /// <returns>和</returns>
|
|
|
- private static double[][] MatrixAdd(double[][] matrix1, double[][] matrix2)
|
|
|
- {
|
|
|
- //矩阵1和矩阵2须为同型矩阵
|
|
|
- if (MatrixCR(matrix1)[0] != MatrixCR(matrix2)[0] ||
|
|
|
- MatrixCR(matrix1)[1] != MatrixCR(matrix2)[1])
|
|
|
- {
|
|
|
- throw new Exception("不同型矩阵无法进行加法运算");
|
|
|
- }
|
|
|
- //生成一个与matrix1同型的空矩阵
|
|
|
- double[][] result = new double[matrix1.Length][];
|
|
|
- for (int i = 0; i < result.Length; i++)
|
|
|
- {
|
|
|
- result[i] = new double[matrix1[i].Length];
|
|
|
- }
|
|
|
- //矩阵加法:把矩阵2各元素值加到矩阵1上,返回矩阵1
|
|
|
- for (int i = 0; i < result.Length; i++)
|
|
|
- {
|
|
|
- for (int j = 0; j < result[i].Length; j++)
|
|
|
- {
|
|
|
- result[i][j] = matrix1[i][j] + matrix2[i][j];
|
|
|
- }
|
|
|
- }
|
|
|
- return result;
|
|
|
- }
|
|
|
- /// <summary>
|
|
|
- /// 计算一个矩阵的行数和列数
|
|
|
- /// </summary>
|
|
|
- /// <param name="matrix">矩阵</param>
|
|
|
- /// <returns>数组:行数、列数</returns>
|
|
|
- private static int[] MatrixCR(double[][] matrix)
|
|
|
- {
|
|
|
- //接收到的参数不是矩阵则报异常
|
|
|
- if (!isMatrix(matrix))
|
|
|
- {
|
|
|
- throw new Exception("接收到的参数不是矩阵");
|
|
|
- }
|
|
|
- //空矩阵行数列数都为0
|
|
|
- if (!isMatrix(matrix) || matrix.Length == 0)
|
|
|
- {
|
|
|
- return new int[2] { 0, 0 };
|
|
|
- }
|
|
|
- return new int[2] { matrix.Length, matrix[0].Length };
|
|
|
- }
|
|
|
|
|
|
- /// <summary>
|
|
|
- /// 判断一个二维数组是否为矩阵
|
|
|
- /// </summary>
|
|
|
- /// <param name="matrix">二维数组</param>
|
|
|
- /// <returns>true:是矩阵 false:不是矩阵</returns>
|
|
|
- private static bool isMatrix(double[][] matrix)
|
|
|
+ public async Task<IActionResult> SetSchoolEdition(JsonElement jsonElement)
|
|
|
{
|
|
|
- //空矩阵是矩阵
|
|
|
- if (matrix.Length < 1) return true;
|
|
|
- //不同行列数如果不相等,则不是矩阵
|
|
|
- int count = matrix[0].Length;
|
|
|
- for (int i = 1; i < matrix.Length; i++)
|
|
|
- {
|
|
|
- if (matrix[i].Length != count)
|
|
|
- {
|
|
|
- return false;
|
|
|
- }
|
|
|
- }
|
|
|
- //各行列数相等,则是矩阵
|
|
|
- return true;
|
|
|
+ if (!jsonElement.TryGetProperty("scId", out JsonElement scId)) return BadRequest();
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ return Ok(new { state = 200 });
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+
|
|
|
public class linqTest
|
|
|
{
|
|
|
public string id { get; set; }
|