2424use models \utils \IEntity ;
2525use Exception ;
2626use ModelSerializers \SerializerRegistry ;
27+ use OpenApi \Attributes as OA ;
28+ use Symfony \Component \HttpFoundation \Response ;
2729use utils \Filter ;
2830use utils \FilterElement ;
2931
@@ -67,6 +69,55 @@ public function __construct
6769
6870 use GetEntity;
6971
72+ #[OA \Get(
73+ path: "/api/v1/summit-administrator-permission-groups " ,
74+ summary: "Get all summit administrator permission groups " ,
75+ security: [["bearer_token " => []]],
76+ tags: ["summit-administrator-permission-groups " ],
77+ parameters: [
78+ new OA \Parameter (
79+ name: "page " ,
80+ description: "Page number " ,
81+ in: "query " ,
82+ required: false ,
83+ schema: new OA \Schema (type: "integer " , default: 1 )
84+ ),
85+ new OA \Parameter (
86+ name: "per_page " ,
87+ description: "Items per page " ,
88+ in: "query " ,
89+ required: false ,
90+ schema: new OA \Schema (type: "integer " , default: 10 )
91+ ),
92+ new OA \Parameter (name: "filter " , description: "Filter " , in: "query " , required: false , schema: new OA \Schema (type: "string " )),
93+ new OA \Parameter (name: "order " , description: "Order " , in: "query " , required: false , schema: new OA \Schema (type: "string " )),
94+ ],
95+ responses: [
96+ new OA \Response (
97+ response: Response::HTTP_OK ,
98+ description: "OK " ,
99+ content: new OA \JsonContent (
100+ allOf: [
101+ new OA \Schema (ref: "#/components/schemas/PaginateDataSchemaResponse " ),
102+ new OA \Schema (
103+ type: "object " ,
104+ properties: [
105+ new OA \Property (
106+ property: "data " ,
107+ type: "array " ,
108+ items: new OA \Items (ref: "#/components/schemas/SummitAdministratorPermissionGroup " )
109+ )
110+ ]
111+ )
112+ ]
113+ )
114+ ),
115+ new OA \Response (response: Response::HTTP_BAD_REQUEST , description: "Bad Request " ),
116+ new OA \Response (response: Response::HTTP_UNAUTHORIZED , description: "Unauthorized " ),
117+ new OA \Response (response: Response::HTTP_FORBIDDEN , description: "Forbidden " ),
118+ new OA \Response (response: Response::HTTP_INTERNAL_SERVER_ERROR , description: "Server Error " ),
119+ ]
120+ )]
70121 function getAll ()
71122 {
72123 return $ this ->_getAll (
@@ -163,6 +214,29 @@ protected function updateEntity($id, array $payload): IEntity
163214 return $ this ->service ->update ($ id , $ payload );
164215 }
165216
217+ #[OA \Put(
218+ path: "/api/v1/summit-administrator-permission-groups/{id}/members/{member_id} " ,
219+ summary: "Add member to permission group " ,
220+ security: [["bearer_token " => []]],
221+ tags: ["summit-administrator-permission-groups " ],
222+ parameters: [
223+ new OA \Parameter (name: "id " , description: "Permission Group ID " , in: "path " , required: true , schema: new OA \Schema (type: "integer " )),
224+ new OA \Parameter (name: "member_id " , description: "Member ID " , in: "path " , required: true , schema: new OA \Schema (type: "integer " )),
225+ ],
226+ responses: [
227+ new OA \Response (
228+ response: Response::HTTP_OK ,
229+ description: "OK " ,
230+ content: new OA \JsonContent (ref: "#/components/schemas/SummitAdministratorPermissionGroup " )
231+ ),
232+ new OA \Response (response: Response::HTTP_BAD_REQUEST , description: "Bad Request " ),
233+ new OA \Response (response: Response::HTTP_UNAUTHORIZED , description: "Unauthorized " ),
234+ new OA \Response (response: Response::HTTP_FORBIDDEN , description: "Forbidden " ),
235+ new OA \Response (response: Response::HTTP_NOT_FOUND , description: "not found " ),
236+ new OA \Response (response: Response::HTTP_PRECONDITION_FAILED , description: "Validation Error " ),
237+ new OA \Response (response: Response::HTTP_INTERNAL_SERVER_ERROR , description: "Server Error " ),
238+ ]
239+ )]
166240 public function addMember ($ id , $ member_id )
167241 {
168242 try {
@@ -189,6 +263,29 @@ public function addMember($id, $member_id)
189263 }
190264 }
191265
266+ #[OA \Delete(
267+ path: "/api/v1/summit-administrator-permission-groups/{id}/members/{member_id} " ,
268+ summary: "Remove member from permission group " ,
269+ security: [["bearer_token " => []]],
270+ tags: ["summit-administrator-permission-groups " ],
271+ parameters: [
272+ new OA \Parameter (name: "id " , description: "Permission Group ID " , in: "path " , required: true , schema: new OA \Schema (type: "integer " )),
273+ new OA \Parameter (name: "member_id " , description: "Member ID " , in: "path " , required: true , schema: new OA \Schema (type: "integer " )),
274+ ],
275+ responses: [
276+ new OA \Response (
277+ response: Response::HTTP_OK ,
278+ description: "OK " ,
279+ content: new OA \JsonContent (ref: "#/components/schemas/SummitAdministratorPermissionGroup " )
280+ ),
281+ new OA \Response (response: Response::HTTP_BAD_REQUEST , description: "Bad Request " ),
282+ new OA \Response (response: Response::HTTP_UNAUTHORIZED , description: "Unauthorized " ),
283+ new OA \Response (response: Response::HTTP_FORBIDDEN , description: "Forbidden " ),
284+ new OA \Response (response: Response::HTTP_NOT_FOUND , description: "not found " ),
285+ new OA \Response (response: Response::HTTP_PRECONDITION_FAILED , description: "Validation Error " ),
286+ new OA \Response (response: Response::HTTP_INTERNAL_SERVER_ERROR , description: "Server Error " ),
287+ ]
288+ )]
192289 public function removeMember ($ id , $ member_id )
193290 {
194291 try {
@@ -215,6 +312,29 @@ public function removeMember($id, $member_id)
215312 }
216313 }
217314
315+ #[OA \Put(
316+ path: "/api/v1/summit-administrator-permission-groups/{id}/summits/{summit_id} " ,
317+ summary: "Add summit to permission group " ,
318+ security: [["bearer_token " => []]],
319+ tags: ["summit-administrator-permission-groups " ],
320+ parameters: [
321+ new OA \Parameter (name: "id " , description: "Permission Group ID " , in: "path " , required: true , schema: new OA \Schema (type: "integer " )),
322+ new OA \Parameter (name: "summit_id " , description: "Summit ID " , in: "path " , required: true , schema: new OA \Schema (type: "integer " )),
323+ ],
324+ responses: [
325+ new OA \Response (
326+ response: Response::HTTP_OK ,
327+ description: "OK " ,
328+ content: new OA \JsonContent (ref: "#/components/schemas/SummitAdministratorPermissionGroup " )
329+ ),
330+ new OA \Response (response: Response::HTTP_BAD_REQUEST , description: "Bad Request " ),
331+ new OA \Response (response: Response::HTTP_UNAUTHORIZED , description: "Unauthorized " ),
332+ new OA \Response (response: Response::HTTP_FORBIDDEN , description: "Forbidden " ),
333+ new OA \Response (response: Response::HTTP_NOT_FOUND , description: "not found " ),
334+ new OA \Response (response: Response::HTTP_PRECONDITION_FAILED , description: "Validation Error " ),
335+ new OA \Response (response: Response::HTTP_INTERNAL_SERVER_ERROR , description: "Server Error " ),
336+ ]
337+ )]
218338 public function addSummit ($ id , $ summit_id )
219339 {
220340 try {
@@ -241,6 +361,29 @@ public function addSummit($id, $summit_id)
241361 }
242362 }
243363
364+ #[OA \Delete(
365+ path: "/api/v1/summit-administrator-permission-groups/{id}/summits/{summit_id} " ,
366+ summary: "Remove summit from permission group " ,
367+ security: [["bearer_token " => []]],
368+ tags: ["summit-administrator-permission-groups " ],
369+ parameters: [
370+ new OA \Parameter (name: "id " , description: "Permission Group ID " , in: "path " , required: true , schema: new OA \Schema (type: "integer " )),
371+ new OA \Parameter (name: "summit_id " , description: "Summit ID " , in: "path " , required: true , schema: new OA \Schema (type: "integer " )),
372+ ],
373+ responses: [
374+ new OA \Response (
375+ response: Response::HTTP_OK ,
376+ description: "OK " ,
377+ content: new OA \JsonContent (ref: "#/components/schemas/SummitAdministratorPermissionGroup " )
378+ ),
379+ new OA \Response (response: Response::HTTP_BAD_REQUEST , description: "Bad Request " ),
380+ new OA \Response (response: Response::HTTP_UNAUTHORIZED , description: "Unauthorized " ),
381+ new OA \Response (response: Response::HTTP_FORBIDDEN , description: "Forbidden " ),
382+ new OA \Response (response: Response::HTTP_NOT_FOUND , description: "not found " ),
383+ new OA \Response (response: Response::HTTP_PRECONDITION_FAILED , description: "Validation Error " ),
384+ new OA \Response (response: Response::HTTP_INTERNAL_SERVER_ERROR , description: "Server Error " ),
385+ ]
386+ )]
244387 public function removeSummit ($ id , $ summit_id )
245388 {
246389 try {
0 commit comments