SchoolSystemController.cs 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. using Microsoft.AspNetCore.Mvc;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using TEAMModelOS.API.Models.Core;
  7. using TEAMModelOS.SDK.Extension.DataResult.JsonRpcRequest;
  8. using TEAMModelOS.SDK.Extension.DataResult.JsonRpcResponse;
  9. using TEAMModelOS.SDK.Module.AzureCosmosDB.Interfaces;
  10. namespace TEAMModelOS.API.Controllers.Core
  11. {
  12. [Route("api/[controller]")]
  13. [ApiController]
  14. public class SchoolSystemController : Controller
  15. {
  16. public IAzureCosmosDBRepository _cosmosrepository;
  17. public SchoolSystemController(IAzureCosmosDBRepository cosmosDBRepository)
  18. {
  19. _cosmosrepository = cosmosDBRepository;
  20. }
  21. [HttpPost("SaveOrUpdateAll")]
  22. public async Task<BaseJosnRPCResponse> SaveOrUpdateAll(JosnRPCRequest<School> request)
  23. {
  24. JsonRPCResponseBuilder builder = JsonRPCResponseBuilder.custom();
  25. School data = new School();
  26. if (request.@params.id != null)
  27. {
  28. string result = await _cosmosrepository.ReplaceObject(request.@params, request.@params.id, request.@params.code);
  29. }
  30. else
  31. {
  32. request.@params.id = Guid.NewGuid().ToString();
  33. data = await _cosmosrepository.Save(request.@params);
  34. }
  35. return builder.Data(data).build();
  36. }
  37. [HttpPost("FindSchoolSystem")]
  38. public async Task<BaseJosnRPCResponse> GetSchoolInfo(JosnRPCRequest<Dictionary<string, object>> request)
  39. {
  40. JsonRPCResponseBuilder builder = JsonRPCResponseBuilder.custom();
  41. List<School> sc = await _cosmosrepository.FindByParams<School>(request.@params);
  42. //sc.First
  43. return builder.Data(sc).build();
  44. }
  45. }
  46. }