studio.proto 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. syntax = "proto3";
  2. import "public.proto";
  3. package pcds.studio.v1;
  4. /*
  5. * studio 服务
  6. * 每个用户注册时有一个默认studio。与用户名相同。
  7. * 用户可以建立另外的studio
  8. * 默认studio 不能转让,其他studio可以转让
  9. */
  10. service Studio{
  11. rpc GetStudioListForUser (StudioListRequest) returns (StudioListReply){}
  12. rpc GetStudio (StudioRequest) returns (StudioReply){}
  13. rpc SetStudio (StudioRequest) returns (StudioReply){}
  14. rpc TransferStudio (StudioRequest) returns (StudioReply){} //转让
  15. rpc AddStudio (StudioRequest) returns (StudioReply){}
  16. rpc DelStudio (StudioRequest) returns (StudioReply){}
  17. }
  18. message StudioListRequest{
  19. string Id = 1;
  20. string Search = 3;
  21. EnumAllowingSearch SearchCol = 4;
  22. int32 CurrentPage = 5;
  23. int32 PerPage = 6;
  24. EnumAllowingOrderby OrderBy = 7;
  25. bool Desc = 8;
  26. }
  27. enum EnumAllowingSearch{
  28. EAS_NAME = 0;
  29. }
  30. enum EnumAllowingOrderby{
  31. EAO_CREATE_AT = 0;
  32. EAO_NAME = 1;
  33. }
  34. message StudioRequest{
  35. string Id = 1;
  36. string Name = 2;
  37. string Summary = 3;
  38. string Cover = 4;
  39. string Owner = 5;
  40. string CreatedAt = 6;
  41. string UpdatedAt = 7;
  42. }
  43. message StudioReply{
  44. bool ok = 1;
  45. string message = 2;
  46. StudioRequest data = 3;
  47. }
  48. message StudioListReply{
  49. bool ok = 1;
  50. string message = 2;
  51. message data{
  52. repeated StudioRequest rows = 1;
  53. int32 Count = 2;
  54. int32 CurrentPage = 3;
  55. int32 PerPage = 4;
  56. }
  57. }