Skip to content
This repository was archived by the owner on Jun 4, 2024. It is now read-only.
This repository was archived by the owner on Jun 4, 2024. It is now read-only.

Methods naming for non crud actions #144

Open
php-openapi/yii2-openapi
#13
@mtangoo

Description

@mtangoo

I have this OA file (top parts removed). I want Payments to do many things. for example /payments/invoice for paying invoices or payments/cash for non-credit payments. These takes different objects and are obviously non crud. I cannot get the library to generate correct methods for me. For example for the file below it creates PaymentsController/actionCreateinvoice .

Is there a way of setting my own naming and disable treating everything as CRUD?

tags:
  - name: Payments
    description: Pay or receive payments for your products from different channels
    externalDocs:
      description: Find out more
      url: http://developer.adiuta.com/book/payments
paths:
  /payments/invoice/{invoice}:
    post:
      summary: Pay Invoice
      description: Pay for Invoice with given invoice number
      requestBody:
        description: Record new payment for an invoice
        content:
          application/json:
            schema:  
              $ref: '#/components/schemas/Payments'   
        required: true
      responses:
        '200':
          description: Successfully paid the invoice
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Success'   

components:
  schemas:
    Payments:
      required:
        - reference  
        - amount
        - currency
      properties:
        invoice_number:
          type: string
        amount:
          type: integer
          format: int64
        currency:
          type: string  

    Success:
      required:
        - success  
        - message
      properties:
        success:
          type: boolean
        message:
          type: string  

    Error:
      required:
        - code
        - message
      properties:
        code:
          type: integer
          format: int32
        message:
          type: string

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions