123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Threading.Tasks;
- using Microsoft.AspNetCore.Http;
- using Microsoft.AspNetCore.Mvc;
- using Org.BouncyCastle.Ocsp;
- using TEAMModelOS.SDK.Context.Exception;
- using TEAMModelOS.SDK.Extension.DataResult.JsonRpcRequest;
- using TEAMModelOS.SDK.Extension.DataResult.JsonRpcResponse;
- using TEAMModelOS.SDK.Helper.Common.CollectionHelper;
- using TEAMModelOS.SDK.Module.AzureCosmosDB.Interfaces;
- using TEAMModelOS.SDK.Module.AzureCosmosDBV3;
- using TEAMModelOS.Service.Models.Courses;
- namespace TEAMModelOS.Controllers.Courses
- {
- [Route("api/[controller]")]
- [ApiController]
- public class CourseController : BaseController
- {
- private IAzureCosmosDBV3Repository _cosmos;
- public CourseController(IAzureCosmosDBV3Repository cosmos)
- {
- _cosmos = cosmos;
- }
- [HttpPost("SaveOrUpdateCourse")]
- public async Task<BaseJosnRPCResponse> SaveOrUpdateCourse(JosnRPCRequest<List<Course>> request)
- {
- JsonRPCResponseBuilder builder = JsonRPCResponseBuilder.custom();
- List<Course> courses = request.@params;
- List<Course> response = await _cosmos.SaveOrUpdateAll<Course>(courses);
- if (response.Count > 0) builder.Data(response).Extend(new Dictionary<string, object> { { "count", response.Count } });
- else {
- throw new BizException("失败", ResponseCode.FAILED);
- };
- return builder.build();
- }
-
- [HttpPost("FindCourse")]
- public async Task<BaseJosnRPCResponse> FindCourseByDict(JosnRPCRequest<Dictionary<string, object>> request)
- {
- JsonRPCResponseBuilder builder = JsonRPCResponseBuilder.custom();
- List<Course> data = new List<Course>();
- if (request.@params.IsNotEmpty())
- {
- data = await _cosmos.FindByDict<Course>(request.@params);
- }
- else
- {
- throw new BizException("参数异常", ResponseCode.PARAMS_ERROR);
- }
- return builder.Data(data).Extend(new Dictionary<string, object> { { "count", data.Count } }).build();
- }
-
- [HttpPost("DeleteCourse")]
- public async Task<BaseJosnRPCResponse> DeleteCourse (JosnRPCRequest<Dictionary<string, object>> request)
- {
- JsonRPCResponseBuilder builder = JsonRPCResponseBuilder.custom();
- if (request.@params.Keys.Count > 0)
- {
- List<Course> Course = await _cosmos.FindByDict<Course>(request.@params);
- await _cosmos.DeleteAll<Course>(Course);
- if (Course.Count > 0)
- {
- builder.Data("删除成功");
- }
- else
- {
- throw new BizException("删除失败", ResponseCode.FAILED);
- }
- }
- else {
- throw new BizException("参数未定义", ResponseCode.FAILED);
- }
- return builder.build();
- }
- }
- }
|