|
@@ -2,18 +2,16 @@
|
|
using System;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Linq;
|
|
-using System.Text;
|
|
|
|
using System.Threading.Tasks;
|
|
using System.Threading.Tasks;
|
|
using TEAMModelOS.Models;
|
|
using TEAMModelOS.Models;
|
|
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.CollectionHelper;
|
|
using TEAMModelOS.SDK.Helper.Common.CollectionHelper;
|
|
using TEAMModelOS.SDK.Helper.Common.JsonHelper;
|
|
using TEAMModelOS.SDK.Helper.Common.JsonHelper;
|
|
-using TEAMModelOS.SDK.Helper.Common.LogHelper;
|
|
|
|
using TEAMModelOS.SDK.Helper.Security.ShaHash;
|
|
using TEAMModelOS.SDK.Helper.Security.ShaHash;
|
|
using TEAMModelOS.SDK.Module.AzureCosmosDB.Interfaces;
|
|
using TEAMModelOS.SDK.Module.AzureCosmosDB.Interfaces;
|
|
|
|
+using TEAMModelOS.SDK.Module.AzureCosmosDBV3;
|
|
using TEAMModelOS.SDK.Module.AzureTable.Interfaces;
|
|
using TEAMModelOS.SDK.Module.AzureTable.Interfaces;
|
|
-using TEAMModelOS.Service.Models.Core;
|
|
|
|
using TEAMModelOS.Service.Models.Syllabus;
|
|
using TEAMModelOS.Service.Models.Syllabus;
|
|
|
|
|
|
namespace TEAMModelOS.Controllers.Syllabus
|
|
namespace TEAMModelOS.Controllers.Syllabus
|
|
@@ -24,9 +22,9 @@ namespace TEAMModelOS.Controllers.Syllabus
|
|
public class KnowledgeController : BaseController
|
|
public class KnowledgeController : BaseController
|
|
{
|
|
{
|
|
private IAzureTableDBRepository _table;
|
|
private IAzureTableDBRepository _table;
|
|
- private IAzureCosmosDBRepository _cosmos;
|
|
|
|
|
|
+ private IAzureCosmosDBV3Repository _cosmos;
|
|
|
|
|
|
- public KnowledgeController(IAzureTableDBRepository table, IAzureCosmosDBRepository cosmos)
|
|
|
|
|
|
+ public KnowledgeController(IAzureTableDBRepository table, IAzureCosmosDBV3Repository cosmos)
|
|
{
|
|
{
|
|
_table = table;
|
|
_table = table;
|
|
_cosmos = cosmos;
|
|
_cosmos = cosmos;
|
|
@@ -38,7 +36,7 @@ namespace TEAMModelOS.Controllers.Syllabus
|
|
/// <param name="request"></param>
|
|
/// <param name="request"></param>
|
|
/// <param name="builder"></param>
|
|
/// <param name="builder"></param>
|
|
/// <returns></returns>
|
|
/// <returns></returns>
|
|
- delegate Task<List<T>> DeleteDelegate<T>(JosnRPCRequest<Dictionary<string, object>> request, JsonRPCResponseBuilder builder);
|
|
|
|
|
|
+ delegate Task<List<T>> DeleteDelegate<T>(JosnRPCRequest<Dictionary<string, object>> request, JsonRPCResponseBuilder builder) where T : ID;
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
/// 保存或者更新学校 知识点 或者 知识块 代理
|
|
/// 保存或者更新学校 知识点 或者 知识块 代理
|
|
@@ -295,8 +293,8 @@ namespace TEAMModelOS.Controllers.Syllabus
|
|
List<Knowledge> Knowledges = await deleteDelegate1(request, builder);
|
|
List<Knowledge> Knowledges = await deleteDelegate1(request, builder);
|
|
foreach (Knowledge Knowledge in Knowledges) {
|
|
foreach (Knowledge Knowledge in Knowledges) {
|
|
if (Knowledge.type == 1) {
|
|
if (Knowledge.type == 1) {
|
|
- List<Knowledge> knowledges = await _cosmos.FindSQL<Knowledge>("SELECT value(c) FROM c join a in c.points where Contains(a, '"+ Knowledge.id + "') = true ",true);
|
|
|
|
- List<SyllabusResource> Resources = await _cosmos.FindSQL<SyllabusResource>("SELECT value(c) FROM c join a in c.points where Contains(a, '" + Knowledge.id + "') = true ", true);
|
|
|
|
|
|
+ List<Knowledge> knowledges = await _cosmos.FindSQL<Knowledge>("SELECT value(c) FROM c join a in c.points where Contains(a, '"+ Knowledge.id + "') = true ");
|
|
|
|
+ List<SyllabusResource> Resources = await _cosmos.FindSQL<SyllabusResource>("SELECT value(c) FROM c join a in c.points where Contains(a, '" + Knowledge.id + "') = true ");
|
|
foreach (Knowledge knowledge in knowledges) knowledge.points.Remove(Knowledge.id);
|
|
foreach (Knowledge knowledge in knowledges) knowledge.points.Remove(Knowledge.id);
|
|
foreach (SyllabusResource Resource in Resources) Resource.points.Remove(Knowledge.id);
|
|
foreach (SyllabusResource Resource in Resources) Resource.points.Remove(Knowledge.id);
|
|
await _cosmos.SaveAll(Resources);
|
|
await _cosmos.SaveAll(Resources);
|
|
@@ -313,16 +311,16 @@ namespace TEAMModelOS.Controllers.Syllabus
|
|
{
|
|
{
|
|
JsonRPCResponseBuilder builder = JsonRPCResponseBuilder.custom();
|
|
JsonRPCResponseBuilder builder = JsonRPCResponseBuilder.custom();
|
|
|
|
|
|
- List<Knowledge> knowledges = await _cosmos.FindByDict<Knowledge>(request.@params, true);
|
|
|
|
|
|
+ List<Knowledge> knowledges = await _cosmos.FindByDict<Knowledge>(request.@params);
|
|
|
|
|
|
builder.Data(knowledges);
|
|
builder.Data(knowledges);
|
|
return builder.build();
|
|
return builder.build();
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
- private async Task<List<T>> Delete<T>(JosnRPCRequest<Dictionary<string, object>> request, JsonRPCResponseBuilder builder)
|
|
|
|
|
|
+ private async Task<List<T>> Delete<T>(JosnRPCRequest<Dictionary<string, object>> request, JsonRPCResponseBuilder builder) where T : ID
|
|
{
|
|
{
|
|
- List<T> schoolBlocks = await _cosmos.FindByDict<T>(request.@params,true);
|
|
|
|
|
|
+ List<T> schoolBlocks = await _cosmos.FindByDict<T>(request.@params);
|
|
Type t = typeof(T);
|
|
Type t = typeof(T);
|
|
List<T> list = new List<T>();
|
|
List<T> list = new List<T>();
|
|
if (schoolBlocks.IsNotEmpty())
|
|
if (schoolBlocks.IsNotEmpty())
|