ClassroomController.cs 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  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.Context.Exception;
  8. using TEAMModelOS.SDK.Extension.DataResult.JsonRpcRequest;
  9. using TEAMModelOS.SDK.Extension.DataResult.JsonRpcResponse;
  10. using TEAMModelOS.SDK.Module.AzureCosmosDB.Interfaces;
  11. namespace TEAMModelOS.API.Controllers.Core
  12. {
  13. [Route("api/[controller]")]
  14. [ApiController]
  15. public class ClassroomController:BaseController
  16. {
  17. public readonly IAzureCosmosDBRepository cosmosrepository;
  18. public ClassroomController(IAzureCosmosDBRepository _cosmosrepository) {
  19. cosmosrepository = _cosmosrepository;
  20. }
  21. [HttpPost("SaveOrUpdateAll")]
  22. public async Task<BaseJosnRPCResponse> SaveOrUpdateAll(JosnRPCRequest<Classroom> request)
  23. {
  24. JsonRPCResponseBuilder builder = JsonRPCResponseBuilder.custom();
  25. if (request.@params.id != null)
  26. {
  27. await cosmosrepository.ReplaceObject(request.@params, request.@params.id, request.@params.schoolCode);
  28. }
  29. else
  30. {
  31. request.@params.id = Guid.NewGuid().ToString();
  32. await cosmosrepository.Save<Classroom>(request.@params);
  33. }
  34. return builder.Data(request.@params).build();
  35. }
  36. [HttpPost("FindClassInfo")]
  37. public async Task<BaseJosnRPCResponse> GetSchoolInfo(JosnRPCRequest<Dictionary<string, object>> request)
  38. {
  39. JsonRPCResponseBuilder builder = JsonRPCResponseBuilder.custom();
  40. List<Classroom> sc = await cosmosrepository.FindByParams<Classroom>(request.@params);
  41. //sc.First11
  42. return builder.Data(sc).build();
  43. }
  44. }
  45. }