/report/{storeid}/tip:
  get:
    tags:
    - report
    description: Return the tip report
    operationId: getTipReport
    security:
    - bearerAuth: []
    parameters:
    - $ref#storeid: './parameters/storeid.yaml'
    - name: from_date
      in: query
      description: The date range of the tip report
      schema:
        type: string
    - name: to_date
      in: query
      description: The date range of the tip report
      schema:
        type: string
    - name: employee
      in: query
      description: The ID of specific employee for the tip report
      schema:
        type: string
    responses:
      $ref#4xx: './responses/4xx.yaml'
      200:
        description: Tip report by employee data
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TipReportQueryResult'
/report/{storeid}/daily:
  get:
    tags:
    - report
    description: Return the daily report
    operationId: getDailyReport
    security:
    - bearerAuth: []
    parameters:
    - $ref#storeid: './parameters/storeid.yaml'
    - name: from_date
      in: query
      description: The date range of the daily report
      schema:
        type: string
    - name: to_date
      in: query
      description: The date range of the daily report
      schema:
        type: string
    responses:
      $ref#4xx: './responses/4xx.yaml'
      200:
        description: daily report by storeid data
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DailyReportQueryResult'
/report-pdf/{storeid}/daily/{token}:
  get:
    tags:
      - report
    description: return daily report pdf
    operationId: getDailyReportPdf
    security:
    - bearerAuth: []
    parameters:
    - $ref#storeid: './parameters/storeid.yaml'
    - name: token
      in: path
      required: true
      description: authorization token
      schema:
        type: string
    - name: from_date
      in: query
      description: The date range of the daily report
      schema:
        type: string
    - name: to_date
      in: query
      description: The date range of the daily report
      schema:
        type: string
    responses:
      $ref#4xx: "./responses/4xx.yaml"
      200:
        description: report as pdf
        content:
          application/pdf:
            schema:
              type: string
              format: binary
/report/{storeid}/server:
  get:
    tags:
    - report
    description: Return the server report
    operationId: getServerReport
    security:
    - bearerAuth: []
    parameters:
    - $ref#storeid: './parameters/storeid.yaml'
    - name: from_date
      in: query
      description: The date range of the server report
      schema:
        type: string
    - name: to_date
      in: query
      description: The date range of the server report
      schema:
        type: string
    - name: shift
      in: query
      description: The ID of specific shift for the server report
      schema:
        type: string
    - name: employee
      in: query
      description: The ID of specific employee for the server report
      schema:
        type: string
    responses:
      $ref#4xx: './responses/4xx.yaml'
      200:
        description: server report by storeid data
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServerReportQueryResult'
/report-pdf/{storeid}/server/{token}:
  get:
    tags:
      - report
    description: return server report pdf
    operationId: getServerReportPdf
    security:
    - bearerAuth: []
    parameters:
    - $ref#storeid: './parameters/storeid.yaml'
    - name: token
      in: path
      required: true
      description: authorization token
      schema:
        type: string
    - name: from_date
      in: query
      description: The date range of the daily report
      schema:
        type: string
    - name: to_date
      in: query
      description: The date range of the daily report
      schema:
        type: string
    - name: shift
      in: query
      description: The ID of specific shift for the server report
      schema:
        type: string
    - name: employee
      in: query
      description: The ID of specific employee for the server report
      schema:
        type: string
    responses:
      $ref#4xx: "./responses/4xx.yaml"
      200:
        description: report as pdf
        content:
          application/pdf:
            schema:
              type: string
              format: binary
/report/{storeid}/total:
  get:
    tags:
    - report
    description: Return the total report
    operationId: getTotalReport
    security:
    - bearerAuth: []
    parameters:
    - $ref#storeid: './parameters/storeid.yaml'
    - name: totalType
      in: query
      description: The ID of specific total type for the total report
      schema:
        type: string
    - name: from_date
      in: query
      description: The date range of the total report
      schema:
        type: string
    - name: to_date
      in: query
      description: The date range of the total report
      schema:
        type: string
    - name: shift
      in: query
      description: The ID of specific shift for the total report
      schema:
        type: string
    - name: category
      in: query
      description: The ID of specific category for the total report
      schema:
        type: string
    - name: showItem
      in: query
      description: The ID of specific category for the total report
      schema:
        type: boolean
    - name: count
      in: query
      description: Total report per page
      schema:
        type: number
    - name: page
      in: query
      description: Page number
      schema:
        type: number
    responses:
      $ref#4xx: './responses/4xx.yaml'
      200:
        description: server report by storeid data
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TotalReportQueryResult'
/report-pdf/{storeid}/total/{token}:
  get:
    tags:
    - report
    description: Return the total report
    operationId: getTotalReportPdf
    security:
    - bearerAuth: []
    parameters:
    - $ref#storeid: './parameters/storeid.yaml'
    - name: token
      in: path
      required: true
      description: authorization token
      schema:
        type: string
    - name: totalType
      in: query
      description: The ID of specific total type for the total report
      schema:
        type: string
    - name: from_date
      in: query
      description: The date range of the total report
      schema:
        type: string
    - name: to_date
      in: query
      description: The date range of the total report
      schema:
        type: string
    - name: shift
      in: query
      description: The ID of specific shift for the total report
      schema:
        type: string
    - name: category
      in: query
      description: The ID of specific category for the total report
      schema:
        type: string
    - name: showItem
      in: query
      description: The ID of specific category for the total report
      schema:
        type: boolean
    responses:
      $ref#4xx: "./responses/4xx.yaml"
      200:
        description: report as pdf
        content:
          application/pdf:
            schema:
              type: string
              format: binary
/report/{storeid}/payment-type:
  get:
    tags:
    - report
    description: Return the detail report
    operationId: getDetailReport
    security:
    - bearerAuth: []
    parameters:
    - $ref#storeid: './parameters/storeid.yaml'
    - name: from_date
      in: query
      description: The date range of the detail report
      schema:
        type: string
    - name: to_date
      in: query
      description: The date range of the detail report
      schema:
        type: string
    - name: shift
      in: query
      description: The ID of specific shift for the detail report
      schema:
        type: string
    - name: area
      in: query
      description: The ID of specific area for the detail report
      schema:
        type: string
    - name: employee
      in: query
      description: The ID of specific employee for the detail report
      schema:
        type: string
    - name: count
      in: query
      description: Total report per page
      schema:
        type: number
    - name: page
      in: query
      description: Page number
      schema:
        type: number
    responses:
      $ref#4xx: './responses/4xx.yaml'
      200:
        description: server report by storeid data
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DetailReportQueryResult'
/report-pdf/{storeid}/payment-type/{token}:
  get:
    tags:
    - report
    description: Return the detail report
    operationId: getDetailReportPdf
    security:
    - bearerAuth: []
    parameters:
    - $ref#storeid: './parameters/storeid.yaml'
    - name: token
      in: path
      required: true
      description: authorization token
      schema:
        type: string
    - name: from_date
      in: query
      description: The date range of the detail report
      schema:
        type: string
    - name: to_date
      in: query
      description: The date range of the detail report
      schema:
        type: string
    - name: shift
      in: query
      description: The ID of specific shift for the detail report
      schema:
        type: string
    - name: area
      in: query
      description: The ID of specific area for the detail report
      schema:
        type: string
    - name: employee
      in: query
      description: The ID of specific employee for the detail report
      schema:
        type: string
    responses:
      $ref#4xx: "./responses/4xx.yaml"
      200:
        description: report as pdf
        content:
          application/pdf:
            schema:
              type: string
              format: binary
/report-csv/{storeid}/payment-type/{token}:
  get:
    tags:
    - report
    description: Return the detail report
    operationId: getDetailReportCsv
    security:
    - bearerAuth: []
    parameters:
    - $ref#storeid: './parameters/storeid.yaml'
    - name: token
      in: path
      required: true
      description: authorization token
      schema:
        type: string
    - name: from_date
      in: query
      description: The date range of the detail report
      schema:
        type: string
    - name: to_date
      in: query
      description: The date range of the detail report
      schema:
        type: string
    - name: shift
      in: query
      description: The ID of specific shift for the detail report
      schema:
        type: string
    - name: area
      in: query
      description: The ID of specific area for the detail report
      schema:
        type: string
    - name: employee
      in: query
      description: The ID of specific employee for the detail report
      schema:
        type: string
    responses:
      $ref#4xx: "./responses/4xx.yaml"
      200:
        description: report as csv
        content:
          application/pdf:
            schema:
              type: string
              format: binary
/order/transaction/{storeid}/{id}:
  get:
    tags:
    - report
    description: Return the detail report
    operationId: getTransactionDetailReport
    security:
    - bearerAuth: []
    parameters:
    - $ref#storeid: './parameters/storeid.yaml'
    - $ref#id: './parameters/objectid.yaml'
    responses:
      $ref#4xx: './responses/4xx.yaml'
      200:
        description: server report by storeid data
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TransactionDetail'
  post:
    tags:
    - report
    description: Return the detail report
    operationId: editTransactionReport
    security:
    - bearerAuth: []
    parameters:
    - $ref#storeid: './parameters/storeid.yaml'
    - $ref#id: './parameters/objectid.yaml'
    requestBody:
      required: true
      content:
        application/json: 
          schema: 
            $ref: '#/components/schemas/TransactionDetail'
    responses:
      $ref#4xx: './responses/4xx.yaml'
      $ref#upsert: './responses/20x-upsert.yaml'
/report/{storeid}/inventory:
  get:
    tags:
    - report
    description: Return the inventory report
    operationId: getInventoryReport
    security:
    - bearerAuth: []
    parameters:
    - $ref#storeid: './parameters/storeid.yaml'
    - name: count
      in: query
      description: The count of the inventory report
      schema:
        type: string
    - name: page
      in: query
      description: The page of the inventory report
      schema:
        type: string
    - name: category
      in: query
      description: The category of the inventory report
      schema:
        type: string
    responses:
      $ref#4xx: './responses/4xx.yaml'
      200:
        description: server report by storeid data
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InventoryReportQueryResult'