roles.yaml 8.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284
  1. Roles:
  2. get:
  3. operationId: listRoles
  4. summary: 分页查询角色
  5. parameters:
  6. - $ref: '../components/parameters.yaml#/XRequestId'
  7. - name: keyword
  8. in: query
  9. schema:
  10. type: string
  11. - name: status
  12. in: query
  13. schema:
  14. $ref: '../components/schemas.yaml#/EnabledStatus'
  15. - name: page
  16. in: query
  17. schema:
  18. type: integer
  19. minimum: 1
  20. default: 1
  21. - name: pageSize
  22. in: query
  23. schema:
  24. type: integer
  25. minimum: 1
  26. maximum: 100
  27. default: 20
  28. responses:
  29. '200':
  30. description: 角色分页结果
  31. content:
  32. application/json:
  33. schema:
  34. $ref: '../components/schemas.yaml#/RolePageResponse'
  35. '400':
  36. $ref: '../components/responses.yaml#/InvalidArgument'
  37. '401':
  38. $ref: '../components/responses.yaml#/AuthenticationError'
  39. '403':
  40. $ref: '../components/responses.yaml#/Forbidden'
  41. '500':
  42. $ref: '../components/responses.yaml#/InternalError'
  43. post:
  44. operationId: createRole
  45. summary: 创建角色(同时初始化10行权限矩阵)
  46. parameters:
  47. - $ref: '../components/parameters.yaml#/XRequestId'
  48. requestBody:
  49. required: true
  50. content:
  51. application/json:
  52. schema:
  53. $ref: '../components/schemas.yaml#/CreateRoleRequest'
  54. responses:
  55. '201':
  56. description: 创建成功
  57. content:
  58. application/json:
  59. schema:
  60. $ref: '../components/schemas.yaml#/RoleResponse'
  61. '400':
  62. $ref: '../components/responses.yaml#/InvalidArgument'
  63. '401':
  64. $ref: '../components/responses.yaml#/AuthenticationError'
  65. '403':
  66. $ref: '../components/responses.yaml#/Forbidden'
  67. '409':
  68. $ref: '../components/responses.yaml#/Conflict'
  69. '500':
  70. $ref: '../components/responses.yaml#/InternalError'
  71. RolesReorder:
  72. put:
  73. operationId: reorderRoles
  74. summary: 管理员拖动重排角色列表(契约1.27)
  75. description: orderedIds为拖动后的目标顺序,被提交角色按原槽位次序互换(未提交角色相对次序不变),全体角色按步长10重编号sort_no。
  76. parameters:
  77. - $ref: '../components/parameters.yaml#/XRequestId'
  78. requestBody:
  79. required: true
  80. content:
  81. application/json:
  82. schema:
  83. $ref: '../components/schemas.yaml#/ReorderByIdsRequest'
  84. responses:
  85. '200':
  86. description: 重排结果
  87. content:
  88. application/json:
  89. schema:
  90. $ref: '../components/schemas.yaml#/ReorderResultResponse'
  91. '400':
  92. $ref: '../components/responses.yaml#/InvalidArgument'
  93. '401':
  94. $ref: '../components/responses.yaml#/AuthenticationError'
  95. '403':
  96. $ref: '../components/responses.yaml#/Forbidden'
  97. '404':
  98. $ref: '../components/responses.yaml#/NotFound'
  99. '409':
  100. $ref: '../components/responses.yaml#/Conflict'
  101. '500':
  102. $ref: '../components/responses.yaml#/InternalError'
  103. Role:
  104. parameters:
  105. - name: id
  106. in: path
  107. required: true
  108. schema:
  109. $ref: '../components/schemas.yaml#/StringId'
  110. put:
  111. operationId: updateRole
  112. summary: 编辑角色(含默认角色切换)
  113. requestBody:
  114. required: true
  115. content:
  116. application/json:
  117. schema:
  118. $ref: '../components/schemas.yaml#/UpdateRoleRequest'
  119. responses:
  120. '200':
  121. description: 编辑成功
  122. content:
  123. application/json:
  124. schema:
  125. $ref: '../components/schemas.yaml#/RoleResponse'
  126. '400':
  127. $ref: '../components/responses.yaml#/InvalidArgument'
  128. '401':
  129. $ref: '../components/responses.yaml#/AuthenticationError'
  130. '403':
  131. $ref: '../components/responses.yaml#/Forbidden'
  132. '404':
  133. $ref: '../components/responses.yaml#/NotFound'
  134. '409':
  135. $ref: '../components/responses.yaml#/Conflict'
  136. '500':
  137. $ref: '../components/responses.yaml#/InternalError'
  138. delete:
  139. operationId: deleteRole
  140. summary: 逻辑删除角色(有关联用户时拒绝)
  141. parameters:
  142. - name: rowVersion
  143. in: query
  144. required: true
  145. schema: {type: integer, minimum: 0}
  146. responses:
  147. '200':
  148. description: 删除成功
  149. content:
  150. application/json:
  151. schema:
  152. $ref: '../components/schemas.yaml#/DeleteRoleResponse'
  153. '400':
  154. $ref: '../components/responses.yaml#/InvalidArgument'
  155. '401':
  156. $ref: '../components/responses.yaml#/AuthenticationError'
  157. '403':
  158. $ref: '../components/responses.yaml#/Forbidden'
  159. '404':
  160. $ref: '../components/responses.yaml#/NotFound'
  161. '409':
  162. $ref: '../components/responses.yaml#/Conflict'
  163. '500':
  164. $ref: '../components/responses.yaml#/InternalError'
  165. RolePermissions:
  166. parameters:
  167. - name: id
  168. in: path
  169. required: true
  170. schema:
  171. $ref: '../components/schemas.yaml#/StringId'
  172. get:
  173. operationId: listRolePermissions
  174. summary: 查询角色权限矩阵(10行)
  175. parameters:
  176. - $ref: '../components/parameters.yaml#/XRequestId'
  177. responses:
  178. '200':
  179. description: 权限矩阵
  180. content:
  181. application/json:
  182. schema:
  183. $ref: '../components/schemas.yaml#/RoleMatrixListResponse'
  184. '401':
  185. $ref: '../components/responses.yaml#/AuthenticationError'
  186. '403':
  187. $ref: '../components/responses.yaml#/Forbidden'
  188. '404':
  189. $ref: '../components/responses.yaml#/NotFound'
  190. '500':
  191. $ref: '../components/responses.yaml#/InternalError'
  192. put:
  193. operationId: updateRolePermissions
  194. summary: 权限矩阵整存整取
  195. description: 敏感操作,强制二次认证(X-DMS-Reauth-Token,缺失或无效返回403 REAUTH_REQUIRED)。
  196. parameters:
  197. - $ref: '../components/parameters.yaml#/XRequestId'
  198. - $ref: '../components/parameters.yaml#/XDmsReauthToken'
  199. requestBody:
  200. required: true
  201. content:
  202. application/json:
  203. schema:
  204. $ref: '../components/schemas.yaml#/UpdateRolePermissionsRequest'
  205. responses:
  206. '200':
  207. description: 保存成功
  208. content:
  209. application/json:
  210. schema:
  211. $ref: '../components/schemas.yaml#/RolePermissionsResponse'
  212. '400':
  213. $ref: '../components/responses.yaml#/InvalidArgument'
  214. '401':
  215. $ref: '../components/responses.yaml#/AuthenticationError'
  216. '403':
  217. $ref: '../components/responses.yaml#/Forbidden'
  218. '404':
  219. $ref: '../components/responses.yaml#/NotFound'
  220. '409':
  221. $ref: '../components/responses.yaml#/Conflict'
  222. '500':
  223. $ref: '../components/responses.yaml#/InternalError'
  224. RoleUsers:
  225. parameters:
  226. - name: id
  227. in: path
  228. required: true
  229. schema:
  230. $ref: '../components/schemas.yaml#/StringId'
  231. get:
  232. operationId: listRoleUsers
  233. summary: 查询角色关联用户ID列表
  234. parameters:
  235. - $ref: '../components/parameters.yaml#/XRequestId'
  236. responses:
  237. '200':
  238. description: 用户ID列表
  239. content:
  240. application/json:
  241. schema:
  242. $ref: '../components/schemas.yaml#/RoleUsersResponse'
  243. '401':
  244. $ref: '../components/responses.yaml#/AuthenticationError'
  245. '403':
  246. $ref: '../components/responses.yaml#/Forbidden'
  247. '404':
  248. $ref: '../components/responses.yaml#/NotFound'
  249. '500':
  250. $ref: '../components/responses.yaml#/InternalError'
  251. put:
  252. operationId: updateRoleUsers
  253. summary: 整存角色关联用户集合(仅普通用户)
  254. parameters:
  255. - $ref: '../components/parameters.yaml#/XRequestId'
  256. requestBody:
  257. required: true
  258. content:
  259. application/json:
  260. schema:
  261. $ref: '../components/schemas.yaml#/UpdateRoleUsersRequest'
  262. responses:
  263. '200':
  264. description: 保存成功
  265. content:
  266. application/json:
  267. schema:
  268. $ref: '../components/schemas.yaml#/RoleUsersResponse'
  269. '400':
  270. $ref: '../components/responses.yaml#/InvalidArgument'
  271. '401':
  272. $ref: '../components/responses.yaml#/AuthenticationError'
  273. '403':
  274. $ref: '../components/responses.yaml#/Forbidden'
  275. '404':
  276. $ref: '../components/responses.yaml#/NotFound'
  277. '409':
  278. $ref: '../components/responses.yaml#/Conflict'
  279. '500':
  280. $ref: '../components/responses.yaml#/InternalError'