{
  "openapi": "3.0.0",
  "info": {
    "title": "coffee-shop-api",
    "version": "0.0.1",
    "description": "coffee shop API",
    "contact": {
      "name": "Bismarck Berrios",
      "email": "bisanbl94@gmail.com"
    }
  },
  "paths": {
    "/account-lists/count": {
      "get": {
        "x-controller-name": "AccountListController",
        "x-operation-name": "count",
        "tags": [
          "AccountListController"
        ],
        "responses": {
          "200": {
            "description": "AccountList model count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "AccountList.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<AccountList>"
                }
              }
            }
          }
        ],
        "operationId": "AccountListController.count"
      }
    },
    "/account-lists/{id}/pay-lists": {
      "post": {
        "x-controller-name": "AccountListPayListController",
        "x-operation-name": "create",
        "tags": [
          "AccountListPayListController"
        ],
        "responses": {
          "200": {
            "description": "AccountList model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PayList"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewPayListInAccountList"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "AccountListPayListController.create"
      },
      "patch": {
        "x-controller-name": "AccountListPayListController",
        "x-operation-name": "patch",
        "tags": [
          "AccountListPayListController"
        ],
        "responses": {
          "200": {
            "description": "AccountList.PayList PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "PayList.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<PayList>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PayListPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "AccountListPayListController.patch"
      },
      "get": {
        "x-controller-name": "AccountListPayListController",
        "x-operation-name": "find",
        "tags": [
          "AccountListPayListController"
        ],
        "responses": {
          "200": {
            "description": "Array of AccountList has many PayList",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PayList"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          }
        ],
        "operationId": "AccountListPayListController.find"
      },
      "delete": {
        "x-controller-name": "AccountListPayListController",
        "x-operation-name": "delete",
        "tags": [
          "AccountListPayListController"
        ],
        "responses": {
          "200": {
            "description": "AccountList.PayList DELETE success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "PayList.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<PayList>"
                }
              }
            }
          }
        ],
        "operationId": "AccountListPayListController.delete"
      }
    },
    "/account-lists/{id}": {
      "put": {
        "x-controller-name": "AccountListController",
        "x-operation-name": "replaceById",
        "tags": [
          "AccountListController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "AccountList PUT success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AccountList"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "AccountListController.replaceById"
      },
      "patch": {
        "x-controller-name": "AccountListController",
        "x-operation-name": "updateById",
        "tags": [
          "AccountListController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "AccountList PATCH success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AccountListPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "AccountListController.updateById"
      },
      "get": {
        "x-controller-name": "AccountListController",
        "x-operation-name": "findById",
        "tags": [
          "AccountListController"
        ],
        "responses": {
          "200": {
            "description": "AccountList model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AccountListWithRelations"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AccountList.Filter"
                }
              }
            }
          }
        ],
        "operationId": "AccountListController.findById"
      },
      "delete": {
        "x-controller-name": "AccountListController",
        "x-operation-name": "deleteById",
        "tags": [
          "AccountListController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "AccountList DELETE success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "AccountListController.deleteById"
      }
    },
    "/account-lists": {
      "post": {
        "x-controller-name": "AccountListController",
        "x-operation-name": "create",
        "tags": [
          "AccountListController"
        ],
        "responses": {
          "200": {
            "description": "AccountList model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AccountList"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewAccountList"
              }
            }
          }
        },
        "operationId": "AccountListController.create"
      },
      "patch": {
        "x-controller-name": "AccountListController",
        "x-operation-name": "updateAll",
        "tags": [
          "AccountListController"
        ],
        "responses": {
          "200": {
            "description": "AccountList PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "AccountList.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<AccountList>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AccountListPartial"
              }
            }
          }
        },
        "operationId": "AccountListController.updateAll"
      },
      "get": {
        "x-controller-name": "AccountListController",
        "x-operation-name": "find",
        "tags": [
          "AccountListController"
        ],
        "responses": {
          "200": {
            "description": "Array of AccountList model instances",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/AccountListWithRelations"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AccountList.Filter1"
                }
              }
            }
          }
        ],
        "operationId": "AccountListController.find"
      }
    },
    "/admin/access": {
      "patch": {
        "x-controller-name": "AdminUserController",
        "x-operation-name": "updateAccess",
        "tags": [
          "AdminUserController"
        ],
        "responses": {
          "200": {
            "description": "Return value of AdminUserController.updateAccess"
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object"
              }
            }
          }
        },
        "operationId": "AdminUserController.updateAccess"
      },
      "get": {
        "x-controller-name": "AdminUserController",
        "x-operation-name": "access",
        "tags": [
          "AdminUserController"
        ],
        "responses": {
          "200": {
            "description": "Return value of AdminUserController.access"
          }
        },
        "operationId": "AdminUserController.access"
      }
    },
    "/admin/families/consolidate": {
      "post": {
        "x-controller-name": "AdminUserController",
        "x-operation-name": "consolidate",
        "tags": [
          "AdminUserController"
        ],
        "responses": {
          "200": {
            "description": "Return value of AdminUserController.consolidate"
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object"
              }
            }
          }
        },
        "operationId": "AdminUserController.consolidate"
      }
    },
    "/admin/families/{id}/state": {
      "post": {
        "x-controller-name": "AdminUserController",
        "x-operation-name": "familyState",
        "tags": [
          "AdminUserController"
        ],
        "responses": {
          "200": {
            "description": "Return value of AdminUserController.familyState"
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "AdminUserController.familyState"
      }
    },
    "/admin/families/{id}": {
      "patch": {
        "x-controller-name": "AdminUserController",
        "x-operation-name": "updateFamily",
        "tags": [
          "AdminUserController"
        ],
        "responses": {
          "200": {
            "description": "Return value of AdminUserController.updateFamily"
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "AdminUserController.updateFamily"
      }
    },
    "/admin/families": {
      "post": {
        "x-controller-name": "AdminUserController",
        "x-operation-name": "createFamilyForUser",
        "tags": [
          "AdminUserController"
        ],
        "responses": {
          "200": {
            "description": "Return value of AdminUserController.createFamilyForUser"
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object"
              }
            }
          }
        },
        "operationId": "AdminUserController.createFamilyForUser"
      },
      "get": {
        "x-controller-name": "AdminUserController",
        "x-operation-name": "listFamilies",
        "tags": [
          "AdminUserController"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "description": "Paginated families for administration"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "search",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "name",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "lastName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "userId",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "state",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "active",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "orderDirection",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "operationId": "AdminUserController.listFamilies"
      }
    },
    "/admin/permissions": {
      "get": {
        "x-controller-name": "AdminUserController",
        "x-operation-name": "permissions",
        "tags": [
          "AdminUserController"
        ],
        "responses": {
          "200": {
            "description": "Return value of AdminUserController.permissions"
          }
        },
        "operationId": "AdminUserController.permissions"
      }
    },
    "/admin/profiles/{id}/permissions": {
      "patch": {
        "x-controller-name": "AdminProfileController",
        "x-operation-name": "updatePermissions",
        "tags": [
          "AdminProfileController"
        ],
        "responses": {
          "200": {
            "description": "Return value of AdminProfileController.updatePermissions"
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "AdminProfileController.updatePermissions"
      },
      "get": {
        "x-controller-name": "AdminProfileController",
        "x-operation-name": "permissions",
        "tags": [
          "AdminProfileController"
        ],
        "responses": {
          "200": {
            "description": "Return value of AdminProfileController.permissions"
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "AdminProfileController.permissions"
      }
    },
    "/admin/profiles/{id}": {
      "patch": {
        "x-controller-name": "AdminProfileController",
        "x-operation-name": "update",
        "tags": [
          "AdminProfileController"
        ],
        "responses": {
          "200": {
            "description": "Return value of AdminProfileController.update"
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "AdminProfileController.update"
      },
      "get": {
        "x-controller-name": "AdminProfileController",
        "x-operation-name": "detail",
        "tags": [
          "AdminProfileController"
        ],
        "responses": {
          "200": {
            "description": "Return value of AdminProfileController.detail"
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "AdminProfileController.detail"
      },
      "delete": {
        "x-controller-name": "AdminProfileController",
        "x-operation-name": "delete",
        "tags": [
          "AdminProfileController"
        ],
        "responses": {
          "200": {
            "description": "Return value of AdminProfileController.delete"
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "AdminProfileController.delete"
      }
    },
    "/admin/profiles": {
      "post": {
        "x-controller-name": "AdminProfileController",
        "x-operation-name": "create",
        "tags": [
          "AdminProfileController"
        ],
        "responses": {
          "200": {
            "description": "Return value of AdminProfileController.create"
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object"
              }
            }
          }
        },
        "operationId": "AdminProfileController.create"
      },
      "get": {
        "x-controller-name": "AdminProfileController",
        "x-operation-name": "list",
        "tags": [
          "AdminProfileController"
        ],
        "responses": {
          "200": {
            "description": "Return value of AdminProfileController.list"
          }
        },
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "search",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "state",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "active",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "orderDirection",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "operationId": "AdminProfileController.list"
      }
    },
    "/admin/users/{id}/dashboard": {
      "get": {
        "x-controller-name": "AdminUserController",
        "x-operation-name": "dashboard",
        "tags": [
          "AdminUserController"
        ],
        "responses": {
          "200": {
            "description": "Return value of AdminUserController.dashboard"
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "AdminUserController.dashboard"
      }
    },
    "/admin/users/{id}/families": {
      "post": {
        "x-controller-name": "AdminUserController",
        "x-operation-name": "createFamily",
        "tags": [
          "AdminUserController"
        ],
        "responses": {
          "200": {
            "description": "Return value of AdminUserController.createFamily"
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "AdminUserController.createFamily"
      },
      "get": {
        "x-controller-name": "AdminUserController",
        "x-operation-name": "families",
        "tags": [
          "AdminUserController"
        ],
        "responses": {
          "200": {
            "description": "Return value of AdminUserController.families"
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "AdminUserController.families"
      }
    },
    "/admin/users/{id}/family-balance-transfers": {
      "post": {
        "x-controller-name": "AdminUserController",
        "x-operation-name": "transferFamilyBalance",
        "tags": [
          "AdminUserController"
        ],
        "responses": {
          "200": {
            "description": "Return value of AdminUserController.transferFamilyBalance"
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "AdminUserController.transferFamilyBalance"
      },
      "get": {
        "x-controller-name": "AdminUserController",
        "x-operation-name": "listFamilyBalanceTransfers",
        "tags": [
          "AdminUserController"
        ],
        "responses": {
          "200": {
            "description": "Return value of AdminUserController.listFamilyBalanceTransfers"
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "number"
            }
          }
        ],
        "operationId": "AdminUserController.listFamilyBalanceTransfers"
      }
    },
    "/admin/users/{id}/recovery-code": {
      "get": {
        "x-controller-name": "AdminUserController",
        "x-operation-name": "recoveryCode",
        "tags": [
          "AdminUserController"
        ],
        "responses": {
          "200": {
            "description": "Return value of AdminUserController.recoveryCode"
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "AdminUserController.recoveryCode"
      }
    },
    "/admin/users/{id}/state": {
      "post": {
        "x-controller-name": "AdminUserController",
        "x-operation-name": "setState",
        "tags": [
          "AdminUserController"
        ],
        "responses": {
          "200": {
            "description": "Return value of AdminUserController.setState"
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "AdminUserController.setState"
      }
    },
    "/admin/users/{id}": {
      "patch": {
        "x-controller-name": "AdminUserController",
        "x-operation-name": "update",
        "tags": [
          "AdminUserController"
        ],
        "responses": {
          "200": {
            "description": "Return value of AdminUserController.update"
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "AdminUserController.update"
      },
      "get": {
        "x-controller-name": "AdminUserController",
        "x-operation-name": "detail",
        "tags": [
          "AdminUserController"
        ],
        "responses": {
          "200": {
            "description": "Return value of AdminUserController.detail"
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "AdminUserController.detail"
      }
    },
    "/admin/users": {
      "post": {
        "x-controller-name": "AdminUserController",
        "x-operation-name": "create",
        "tags": [
          "AdminUserController"
        ],
        "responses": {
          "200": {
            "description": "Return value of AdminUserController.create"
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object"
              }
            }
          }
        },
        "operationId": "AdminUserController.create"
      },
      "get": {
        "x-controller-name": "AdminUserController",
        "x-operation-name": "list",
        "tags": [
          "AdminUserController"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "description": "Paginated administrative users"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "search",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "name",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "lastName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "email",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "userType",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "profileId",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "state",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "orderDirection",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "operationId": "AdminUserController.list"
      }
    },
    "/checkout-details/count": {
      "get": {
        "x-controller-name": "CheckOutDetailsController",
        "x-operation-name": "count",
        "tags": [
          "CheckOutDetailsController"
        ],
        "responses": {
          "200": {
            "description": "CheckoutDetails model count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "CheckoutDetails.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<CheckoutDetails>"
                }
              }
            }
          }
        ],
        "operationId": "CheckOutDetailsController.count"
      }
    },
    "/checkout-details/{id}/pay-list": {
      "get": {
        "x-controller-name": "CheckoutDetailsPayListController",
        "x-operation-name": "getPayList",
        "tags": [
          "CheckoutDetailsPayListController"
        ],
        "responses": {
          "200": {
            "description": "PayList belonging to CheckoutDetails",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PayList"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "CheckoutDetailsPayListController.getPayList"
      }
    },
    "/checkout-details/{id}/sales": {
      "post": {
        "x-controller-name": "CheckoutDetailsSaleController",
        "x-operation-name": "create",
        "tags": [
          "CheckoutDetailsSaleController"
        ],
        "responses": {
          "200": {
            "description": "CheckoutDetails model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Sale"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewSaleInCheckoutDetails"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "CheckoutDetailsSaleController.create"
      },
      "patch": {
        "x-controller-name": "CheckoutDetailsSaleController",
        "x-operation-name": "patch",
        "tags": [
          "CheckoutDetailsSaleController"
        ],
        "responses": {
          "200": {
            "description": "CheckoutDetails.Sale PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Sale.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Sale>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SalePartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "CheckoutDetailsSaleController.patch"
      },
      "get": {
        "x-controller-name": "CheckoutDetailsSaleController",
        "x-operation-name": "find",
        "tags": [
          "CheckoutDetailsSaleController"
        ],
        "responses": {
          "200": {
            "description": "Array of CheckoutDetails has many Sale",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Sale"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          }
        ],
        "operationId": "CheckoutDetailsSaleController.find"
      },
      "delete": {
        "x-controller-name": "CheckoutDetailsSaleController",
        "x-operation-name": "delete",
        "tags": [
          "CheckoutDetailsSaleController"
        ],
        "responses": {
          "200": {
            "description": "CheckoutDetails.Sale DELETE success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Sale.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Sale>"
                }
              }
            }
          }
        ],
        "operationId": "CheckoutDetailsSaleController.delete"
      }
    },
    "/checkout-details/{id}": {
      "put": {
        "x-controller-name": "CheckOutDetailsController",
        "x-operation-name": "replaceById",
        "tags": [
          "CheckOutDetailsController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "CheckoutDetails PUT success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CheckoutDetails"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "CheckOutDetailsController.replaceById"
      },
      "patch": {
        "x-controller-name": "CheckOutDetailsController",
        "x-operation-name": "updateById",
        "tags": [
          "CheckOutDetailsController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "CheckoutDetails PATCH success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CheckoutDetailsPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "CheckOutDetailsController.updateById"
      },
      "get": {
        "x-controller-name": "CheckOutDetailsController",
        "x-operation-name": "findById",
        "tags": [
          "CheckOutDetailsController"
        ],
        "responses": {
          "200": {
            "description": "CheckoutDetails model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CheckoutDetailsWithRelations"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CheckoutDetails.Filter"
                }
              }
            }
          }
        ],
        "operationId": "CheckOutDetailsController.findById"
      },
      "delete": {
        "x-controller-name": "CheckOutDetailsController",
        "x-operation-name": "deleteById",
        "tags": [
          "CheckOutDetailsController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "CheckoutDetails DELETE success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "CheckOutDetailsController.deleteById"
      }
    },
    "/checkout-details": {
      "post": {
        "x-controller-name": "CheckOutDetailsController",
        "x-operation-name": "create",
        "tags": [
          "CheckOutDetailsController"
        ],
        "responses": {
          "200": {
            "description": "CheckoutDetails model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CheckoutDetails"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewCheckoutDetails"
              }
            }
          }
        },
        "operationId": "CheckOutDetailsController.create"
      },
      "patch": {
        "x-controller-name": "CheckOutDetailsController",
        "x-operation-name": "updateAll",
        "tags": [
          "CheckOutDetailsController"
        ],
        "responses": {
          "200": {
            "description": "CheckoutDetails PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "CheckoutDetails.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<CheckoutDetails>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CheckoutDetailsPartial"
              }
            }
          }
        },
        "operationId": "CheckOutDetailsController.updateAll"
      },
      "get": {
        "x-controller-name": "CheckOutDetailsController",
        "x-operation-name": "find",
        "tags": [
          "CheckOutDetailsController"
        ],
        "responses": {
          "200": {
            "description": "Array of CheckoutDetails model instances",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/CheckoutDetailsWithRelations"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CheckoutDetails.Filter1"
                }
              }
            }
          }
        ],
        "operationId": "CheckOutDetailsController.find"
      }
    },
    "/checkouts/check/{userid}": {
      "get": {
        "x-controller-name": "CheckOutController",
        "x-operation-name": "findByUserId",
        "tags": [
          "CheckOutController"
        ],
        "responses": {
          "200": {
            "description": "Checkout model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CheckoutWithRelations"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "userid",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "CheckOutController.findByUserId"
      }
    },
    "/checkouts/count": {
      "get": {
        "x-controller-name": "CheckOutController",
        "x-operation-name": "count",
        "tags": [
          "CheckOutController"
        ],
        "responses": {
          "200": {
            "description": "Checkout model count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Checkout.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Checkout>"
                }
              }
            }
          }
        ],
        "operationId": "CheckOutController.count"
      }
    },
    "/checkouts/{id}/checkout-details": {
      "post": {
        "x-controller-name": "CheckoutCheckoutDetailsController",
        "x-operation-name": "create",
        "tags": [
          "CheckoutCheckoutDetailsController"
        ],
        "responses": {
          "200": {
            "description": "Checkout model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CheckoutDetails"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewCheckoutDetailsInCheckout"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "CheckoutCheckoutDetailsController.create"
      },
      "patch": {
        "x-controller-name": "CheckoutCheckoutDetailsController",
        "x-operation-name": "patch",
        "tags": [
          "CheckoutCheckoutDetailsController"
        ],
        "responses": {
          "200": {
            "description": "Checkout.CheckoutDetails PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "CheckoutDetails.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<CheckoutDetails>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CheckoutDetailsPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "CheckoutCheckoutDetailsController.patch"
      },
      "get": {
        "x-controller-name": "CheckoutCheckoutDetailsController",
        "x-operation-name": "find",
        "tags": [
          "CheckoutCheckoutDetailsController"
        ],
        "responses": {
          "200": {
            "description": "Array of Checkout has many CheckoutDetails",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/CheckoutDetails"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          }
        ],
        "operationId": "CheckoutCheckoutDetailsController.find"
      },
      "delete": {
        "x-controller-name": "CheckoutCheckoutDetailsController",
        "x-operation-name": "delete",
        "tags": [
          "CheckoutCheckoutDetailsController"
        ],
        "responses": {
          "200": {
            "description": "Checkout.CheckoutDetails DELETE success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "CheckoutDetails.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<CheckoutDetails>"
                }
              }
            }
          }
        ],
        "operationId": "CheckoutCheckoutDetailsController.delete"
      }
    },
    "/checkouts/{id}": {
      "put": {
        "x-controller-name": "CheckOutController",
        "x-operation-name": "replaceById",
        "tags": [
          "CheckOutController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "Checkout PUT success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkout"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "CheckOutController.replaceById"
      },
      "patch": {
        "x-controller-name": "CheckOutController",
        "x-operation-name": "closedById",
        "tags": [
          "CheckOutController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "Checkout PATCH success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CheckOutInputPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "CheckOutController.closedById"
      },
      "get": {
        "x-controller-name": "CheckOutController",
        "x-operation-name": "findById",
        "tags": [
          "CheckOutController"
        ],
        "responses": {
          "200": {
            "description": "Checkout model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CheckoutWithRelations"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Checkout.Filter"
                }
              }
            }
          }
        ],
        "operationId": "CheckOutController.findById"
      },
      "delete": {
        "x-controller-name": "CheckOutController",
        "x-operation-name": "deleteById",
        "tags": [
          "CheckOutController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "Checkout DELETE success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "CheckOutController.deleteById"
      }
    },
    "/checkouts": {
      "post": {
        "x-controller-name": "CheckOutController",
        "x-operation-name": "create",
        "tags": [
          "CheckOutController"
        ],
        "responses": {
          "200": {
            "description": "Checkout model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CheckOutInput"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewCheckout"
              }
            }
          }
        },
        "operationId": "CheckOutController.create"
      },
      "patch": {
        "x-controller-name": "CheckOutController",
        "x-operation-name": "updateAll",
        "tags": [
          "CheckOutController"
        ],
        "responses": {
          "200": {
            "description": "Checkout PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Checkout.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Checkout>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CheckoutPartial"
              }
            }
          }
        },
        "operationId": "CheckOutController.updateAll"
      },
      "get": {
        "x-controller-name": "CheckOutController",
        "x-operation-name": "find",
        "tags": [
          "CheckOutController"
        ],
        "responses": {
          "200": {
            "description": "Array of Checkout model instances",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/CheckoutWithRelations"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Checkout.Filter1"
                }
              }
            }
          }
        ],
        "operationId": "CheckOutController.find"
      }
    },
    "/days-of-weeks/count": {
      "get": {
        "x-controller-name": "DaysController",
        "x-operation-name": "count",
        "tags": [
          "DaysController"
        ],
        "responses": {
          "200": {
            "description": "DaysOfWeek model count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "DaysOfWeek.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<DaysOfWeek>"
                }
              }
            }
          }
        ],
        "operationId": "DaysController.count"
      }
    },
    "/days-of-weeks/products": {
      "get": {
        "x-controller-name": "DaysOfWeekProductsController",
        "x-operation-name": "findToday",
        "tags": [
          "DaysOfWeekProductsController"
        ],
        "responses": {
          "200": {
            "description": "Array of Products of today",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Products"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          }
        ],
        "operationId": "DaysOfWeekProductsController.findToday"
      }
    },
    "/days-of-weeks/{id}/products": {
      "post": {
        "x-controller-name": "DaysOfWeekProductsController",
        "x-operation-name": "create",
        "tags": [
          "DaysOfWeekProductsController"
        ],
        "responses": {
          "200": {
            "description": "create a Products model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Products"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewProductsInDaysOfWeek"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "DaysOfWeekProductsController.create"
      },
      "patch": {
        "x-controller-name": "DaysOfWeekProductsController",
        "x-operation-name": "patch",
        "tags": [
          "DaysOfWeekProductsController"
        ],
        "responses": {
          "200": {
            "description": "DaysOfWeek.Products PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Products.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Products>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ProductsPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "DaysOfWeekProductsController.patch"
      },
      "get": {
        "x-controller-name": "DaysOfWeekProductsController",
        "x-operation-name": "find",
        "tags": [
          "DaysOfWeekProductsController"
        ],
        "responses": {
          "200": {
            "description": "Array of DaysOfWeek has many Products through ProductsOfDays",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Products"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          }
        ],
        "operationId": "DaysOfWeekProductsController.find"
      },
      "delete": {
        "x-controller-name": "DaysOfWeekProductsController",
        "x-operation-name": "delete",
        "tags": [
          "DaysOfWeekProductsController"
        ],
        "responses": {
          "200": {
            "description": "DaysOfWeek.Products DELETE success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Products.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Products>"
                }
              }
            }
          }
        ],
        "operationId": "DaysOfWeekProductsController.delete"
      }
    },
    "/days-of-weeks/{id}": {
      "put": {
        "x-controller-name": "DaysController",
        "x-operation-name": "replaceById",
        "tags": [
          "DaysController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "DaysOfWeek PUT success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DaysOfWeek"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "DaysController.replaceById"
      },
      "patch": {
        "x-controller-name": "DaysController",
        "x-operation-name": "updateById",
        "tags": [
          "DaysController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "DaysOfWeek PATCH success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DaysOfWeekPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "DaysController.updateById"
      },
      "get": {
        "x-controller-name": "DaysController",
        "x-operation-name": "findById",
        "tags": [
          "DaysController"
        ],
        "responses": {
          "200": {
            "description": "DaysOfWeek model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DaysOfWeekWithRelations"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DaysOfWeek.Filter"
                }
              }
            }
          }
        ],
        "operationId": "DaysController.findById"
      },
      "delete": {
        "x-controller-name": "DaysController",
        "x-operation-name": "deleteById",
        "tags": [
          "DaysController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "DaysOfWeek DELETE success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "DaysController.deleteById"
      }
    },
    "/days-of-weeks": {
      "post": {
        "x-controller-name": "DaysController",
        "x-operation-name": "create",
        "tags": [
          "DaysController"
        ],
        "responses": {
          "200": {
            "description": "DaysOfWeek model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DaysOfWeek"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewDaysOfWeek"
              }
            }
          }
        },
        "operationId": "DaysController.create"
      },
      "patch": {
        "x-controller-name": "DaysController",
        "x-operation-name": "updateAll",
        "tags": [
          "DaysController"
        ],
        "responses": {
          "200": {
            "description": "DaysOfWeek PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "DaysOfWeek.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<DaysOfWeek>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DaysOfWeekPartial"
              }
            }
          }
        },
        "operationId": "DaysController.updateAll"
      },
      "get": {
        "x-controller-name": "DaysController",
        "x-operation-name": "find",
        "tags": [
          "DaysController"
        ],
        "responses": {
          "200": {
            "description": "Array of DaysOfWeek model instances",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/DaysOfWeekWithRelations"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DaysOfWeek.Filter1"
                }
              }
            }
          }
        ],
        "operationId": "DaysController.find"
      }
    },
    "/degrees/count": {
      "get": {
        "x-controller-name": "DegreeController",
        "x-operation-name": "count",
        "tags": [
          "DegreeController"
        ],
        "responses": {
          "200": {
            "description": "Degree model count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Degree.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Degree>"
                }
              }
            }
          }
        ],
        "operationId": "DegreeController.count"
      }
    },
    "/degrees/{id}/families": {
      "post": {
        "x-controller-name": "DegreeFamilyController",
        "x-operation-name": "create",
        "tags": [
          "DegreeFamilyController"
        ],
        "responses": {
          "200": {
            "description": "Degree model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Family"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewFamilyInDegree"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "DegreeFamilyController.create"
      },
      "patch": {
        "x-controller-name": "DegreeFamilyController",
        "x-operation-name": "patch",
        "tags": [
          "DegreeFamilyController"
        ],
        "responses": {
          "200": {
            "description": "Degree.Family PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Family.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Family>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/FamilyPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "DegreeFamilyController.patch"
      },
      "get": {
        "x-controller-name": "DegreeFamilyController",
        "x-operation-name": "find",
        "tags": [
          "DegreeFamilyController"
        ],
        "responses": {
          "200": {
            "description": "Array of Degree has many Family",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Family"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          }
        ],
        "operationId": "DegreeFamilyController.find"
      },
      "delete": {
        "x-controller-name": "DegreeFamilyController",
        "x-operation-name": "delete",
        "tags": [
          "DegreeFamilyController"
        ],
        "responses": {
          "200": {
            "description": "Degree.Family DELETE success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Family.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Family>"
                }
              }
            }
          }
        ],
        "operationId": "DegreeFamilyController.delete"
      }
    },
    "/degrees/{id}": {
      "put": {
        "x-controller-name": "DegreeController",
        "x-operation-name": "replaceById",
        "tags": [
          "DegreeController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "Degree PUT success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Degree"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "DegreeController.replaceById"
      },
      "patch": {
        "x-controller-name": "DegreeController",
        "x-operation-name": "updateById",
        "tags": [
          "DegreeController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "Degree PATCH success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DegreePartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "DegreeController.updateById"
      },
      "get": {
        "x-controller-name": "DegreeController",
        "x-operation-name": "findById",
        "tags": [
          "DegreeController"
        ],
        "responses": {
          "200": {
            "description": "Degree model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DegreeWithRelations"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Degree.Filter"
                }
              }
            }
          }
        ],
        "operationId": "DegreeController.findById"
      },
      "delete": {
        "x-controller-name": "DegreeController",
        "x-operation-name": "deleteById",
        "tags": [
          "DegreeController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "Degree DELETE success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "DegreeController.deleteById"
      }
    },
    "/degrees": {
      "post": {
        "x-controller-name": "DegreeController",
        "x-operation-name": "create",
        "tags": [
          "DegreeController"
        ],
        "responses": {
          "200": {
            "description": "Degree model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Degree"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewDegree"
              }
            }
          }
        },
        "operationId": "DegreeController.create"
      },
      "patch": {
        "x-controller-name": "DegreeController",
        "x-operation-name": "updateAll",
        "tags": [
          "DegreeController"
        ],
        "responses": {
          "200": {
            "description": "Degree PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Degree.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Degree>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DegreePartial"
              }
            }
          }
        },
        "operationId": "DegreeController.updateAll"
      },
      "get": {
        "x-controller-name": "DegreeController",
        "x-operation-name": "find",
        "tags": [
          "DegreeController"
        ],
        "responses": {
          "200": {
            "description": "Array of Degree model instances",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/DegreeWithRelations"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Degree.Filter1"
                }
              }
            }
          }
        ],
        "operationId": "DegreeController.find"
      }
    },
    "/dispatches/count": {
      "get": {
        "x-controller-name": "DispatchController",
        "x-operation-name": "count",
        "tags": [
          "DispatchController"
        ],
        "responses": {
          "200": {
            "description": "Dispatch model count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Dispatch.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Dispatch>"
                }
              }
            }
          }
        ],
        "operationId": "DispatchController.count"
      }
    },
    "/dispatches/{id}/checkouts": {
      "post": {
        "x-controller-name": "DispatchCheckoutController",
        "x-operation-name": "create",
        "tags": [
          "DispatchCheckoutController"
        ],
        "responses": {
          "200": {
            "description": "Dispatch model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Checkout"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewCheckoutInDispatch"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "DispatchCheckoutController.create"
      },
      "patch": {
        "x-controller-name": "DispatchCheckoutController",
        "x-operation-name": "patch",
        "tags": [
          "DispatchCheckoutController"
        ],
        "responses": {
          "200": {
            "description": "Dispatch.Checkout PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Checkout.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Checkout>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CheckoutPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "DispatchCheckoutController.patch"
      },
      "get": {
        "x-controller-name": "DispatchCheckoutController",
        "x-operation-name": "find",
        "tags": [
          "DispatchCheckoutController"
        ],
        "responses": {
          "200": {
            "description": "Array of Dispatch has many Checkout",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Checkout"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          }
        ],
        "operationId": "DispatchCheckoutController.find"
      },
      "delete": {
        "x-controller-name": "DispatchCheckoutController",
        "x-operation-name": "delete",
        "tags": [
          "DispatchCheckoutController"
        ],
        "responses": {
          "200": {
            "description": "Dispatch.Checkout DELETE success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Checkout.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Checkout>"
                }
              }
            }
          }
        ],
        "operationId": "DispatchCheckoutController.delete"
      }
    },
    "/dispatches/{id}/sales": {
      "post": {
        "x-controller-name": "DispatchSaleController",
        "x-operation-name": "create",
        "tags": [
          "DispatchSaleController"
        ],
        "responses": {
          "200": {
            "description": "Dispatch model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Sale"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewSaleInDispatch"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "DispatchSaleController.create"
      },
      "patch": {
        "x-controller-name": "DispatchSaleController",
        "x-operation-name": "patch",
        "tags": [
          "DispatchSaleController"
        ],
        "responses": {
          "200": {
            "description": "Dispatch.Sale PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Sale.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Sale>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SalePartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "DispatchSaleController.patch"
      },
      "get": {
        "x-controller-name": "DispatchSaleController",
        "x-operation-name": "find",
        "tags": [
          "DispatchSaleController"
        ],
        "responses": {
          "200": {
            "description": "Array of Dispatch has many Sale",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Sale"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          }
        ],
        "operationId": "DispatchSaleController.find"
      },
      "delete": {
        "x-controller-name": "DispatchSaleController",
        "x-operation-name": "delete",
        "tags": [
          "DispatchSaleController"
        ],
        "responses": {
          "200": {
            "description": "Dispatch.Sale DELETE success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Sale.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Sale>"
                }
              }
            }
          }
        ],
        "operationId": "DispatchSaleController.delete"
      }
    },
    "/dispatches/{id}": {
      "put": {
        "x-controller-name": "DispatchController",
        "x-operation-name": "replaceById",
        "tags": [
          "DispatchController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "Dispatch PUT success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Dispatch"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "DispatchController.replaceById"
      },
      "patch": {
        "x-controller-name": "DispatchController",
        "x-operation-name": "updateById",
        "tags": [
          "DispatchController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "Dispatch PATCH success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DispatchPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "DispatchController.updateById"
      },
      "get": {
        "x-controller-name": "DispatchController",
        "x-operation-name": "findById",
        "tags": [
          "DispatchController"
        ],
        "responses": {
          "200": {
            "description": "Dispatch model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DispatchWithRelations"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Dispatch.Filter"
                }
              }
            }
          }
        ],
        "operationId": "DispatchController.findById"
      },
      "delete": {
        "x-controller-name": "DispatchController",
        "x-operation-name": "deleteById",
        "tags": [
          "DispatchController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "Dispatch DELETE success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "DispatchController.deleteById"
      }
    },
    "/dispatches": {
      "post": {
        "x-controller-name": "DispatchController",
        "x-operation-name": "create",
        "tags": [
          "DispatchController"
        ],
        "responses": {
          "200": {
            "description": "Dispatch model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Dispatch"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewDispatch"
              }
            }
          }
        },
        "operationId": "DispatchController.create"
      },
      "patch": {
        "x-controller-name": "DispatchController",
        "x-operation-name": "updateAll",
        "tags": [
          "DispatchController"
        ],
        "responses": {
          "200": {
            "description": "Dispatch PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Dispatch.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Dispatch>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DispatchPartial"
              }
            }
          }
        },
        "operationId": "DispatchController.updateAll"
      },
      "get": {
        "x-controller-name": "DispatchController",
        "x-operation-name": "find",
        "tags": [
          "DispatchController"
        ],
        "responses": {
          "200": {
            "description": "Array of Dispatch model instances",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/DispatchWithRelations"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Dispatch.Filter1"
                }
              }
            }
          }
        ],
        "operationId": "DispatchController.find"
      }
    },
    "/document-reports/checkouts": {
      "post": {
        "x-controller-name": "DocumentReportController",
        "x-operation-name": "createCheckoutDocumentReport",
        "tags": [
          "DocumentReportController"
        ],
        "responses": {
          "200": {
            "description": "Documento de reporte encolado",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "number"
                    },
                    "status": {
                      "type": "string"
                    },
                    "message": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "type",
                  "fromDate",
                  "toDate"
                ],
                "properties": {
                  "type": {
                    "type": "string"
                  },
                  "name": {
                    "type": "string"
                  },
                  "fromDate": {
                    "type": "string"
                  },
                  "toDate": {
                    "type": "string"
                  },
                  "state": {
                    "type": "number"
                  },
                  "userId": {
                    "type": "number"
                  },
                  "filter": {
                    "type": "object"
                  }
                }
              }
            }
          }
        },
        "operationId": "DocumentReportController.createCheckoutDocumentReport"
      }
    },
    "/document-reports/count": {
      "get": {
        "x-controller-name": "DocumentReportController",
        "x-operation-name": "count",
        "tags": [
          "DocumentReportController"
        ],
        "responses": {
          "200": {
            "description": "Cantidad de documentos de reporte",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "status",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "type",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "module",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "name",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "createdBy",
            "in": "query",
            "schema": {
              "type": "number"
            }
          }
        ],
        "operationId": "DocumentReportController.count"
      }
    },
    "/document-reports/customer-statement": {
      "post": {
        "x-controller-name": "DocumentReportController",
        "x-operation-name": "createCustomerStatementDocumentReport",
        "tags": [
          "DocumentReportController"
        ],
        "responses": {
          "200": {
            "description": "Documento de estado de cuenta de cliente encolado",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "number"
                    },
                    "status": {
                      "type": "string"
                    },
                    "message": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "type",
                  "fromDate",
                  "toDate",
                  "familyId",
                  "variant"
                ],
                "properties": {
                  "type": {
                    "type": "string"
                  },
                  "name": {
                    "type": "string"
                  },
                  "fromDate": {
                    "type": "string"
                  },
                  "toDate": {
                    "type": "string"
                  },
                  "familyId": {
                    "type": "number"
                  },
                  "variant": {
                    "type": "string"
                  },
                  "filter": {
                    "type": "object"
                  }
                }
              }
            }
          }
        },
        "operationId": "DocumentReportController.createCustomerStatementDocumentReport"
      }
    },
    "/document-reports/product-sales": {
      "post": {
        "x-controller-name": "DocumentReportController",
        "x-operation-name": "createProductSalesDocumentReport",
        "tags": [
          "DocumentReportController"
        ],
        "responses": {
          "200": {
            "description": "Documento de ventas por producto encolado",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "number"
                    },
                    "status": {
                      "type": "string"
                    },
                    "message": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "type",
                  "fromDate",
                  "toDate",
                  "productId",
                  "productName"
                ],
                "properties": {
                  "type": {
                    "type": "string"
                  },
                  "name": {
                    "type": "string"
                  },
                  "fromDate": {
                    "type": "string"
                  },
                  "toDate": {
                    "type": "string"
                  },
                  "productId": {
                    "type": "number"
                  },
                  "productName": {
                    "type": "string"
                  },
                  "filter": {
                    "type": "object"
                  }
                }
              }
            }
          }
        },
        "operationId": "DocumentReportController.createProductSalesDocumentReport"
      }
    },
    "/document-reports/reloads": {
      "post": {
        "x-controller-name": "DocumentReportController",
        "x-operation-name": "createReloadDocumentReport",
        "tags": [
          "DocumentReportController"
        ],
        "responses": {
          "200": {
            "description": "Documento de recargas encolado",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "number"
                    },
                    "status": {
                      "type": "string"
                    },
                    "message": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "type",
                  "fromDate",
                  "toDate"
                ],
                "properties": {
                  "type": {
                    "type": "string"
                  },
                  "name": {
                    "type": "string"
                  },
                  "fromDate": {
                    "type": "string"
                  },
                  "toDate": {
                    "type": "string"
                  },
                  "email": {
                    "type": "string"
                  },
                  "payListId": {
                    "type": "number"
                  },
                  "filter": {
                    "type": "object"
                  }
                }
              }
            }
          }
        },
        "operationId": "DocumentReportController.createReloadDocumentReport"
      }
    },
    "/document-reports/sales": {
      "post": {
        "x-controller-name": "DocumentReportController",
        "x-operation-name": "createSalesDocumentReport",
        "tags": [
          "DocumentReportController"
        ],
        "responses": {
          "200": {
            "description": "Documento de ventas encolado",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "number"
                    },
                    "status": {
                      "type": "string"
                    },
                    "message": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "type",
                  "fromDate",
                  "toDate"
                ],
                "properties": {
                  "type": {
                    "type": "string"
                  },
                  "name": {
                    "type": "string"
                  },
                  "fromDate": {
                    "type": "string"
                  },
                  "toDate": {
                    "type": "string"
                  },
                  "userId": {
                    "type": "number"
                  },
                  "filter": {
                    "type": "object"
                  }
                }
              }
            }
          }
        },
        "operationId": "DocumentReportController.createSalesDocumentReport"
      }
    },
    "/document-reports/{id}/download": {
      "get": {
        "x-controller-name": "DocumentReportController",
        "x-operation-name": "getDownloadUrl",
        "tags": [
          "DocumentReportController"
        ],
        "responses": {
          "200": {
            "description": "URL firmada de descarga",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "url": {
                      "type": "string"
                    },
                    "expiresIn": {
                      "type": "number"
                    }
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "DocumentReportController.getDownloadUrl"
      }
    },
    "/document-reports/{id}": {
      "get": {
        "x-controller-name": "DocumentReportController",
        "x-operation-name": "findById",
        "tags": [
          "DocumentReportController"
        ],
        "responses": {
          "200": {
            "description": "Documento de reporte",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DocumentReport"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "DocumentReportController.findById"
      }
    },
    "/document-reports": {
      "get": {
        "x-controller-name": "DocumentReportController",
        "x-operation-name": "find",
        "tags": [
          "DocumentReportController"
        ],
        "responses": {
          "200": {
            "description": "Lista de documentos de reporte",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/DocumentReport"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "status",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "type",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "module",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "name",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "createdBy",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "skip",
            "in": "query",
            "schema": {
              "type": "number"
            }
          }
        ],
        "operationId": "DocumentReportController.find"
      }
    },
    "/families/count": {
      "get": {
        "x-controller-name": "FamilyController",
        "x-operation-name": "count",
        "tags": [
          "FamilyController"
        ],
        "responses": {
          "200": {
            "description": "Family model count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Family.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Family>"
                }
              }
            }
          }
        ],
        "operationId": "FamilyController.count"
      }
    },
    "/families/{id}/reload-details": {
      "post": {
        "x-controller-name": "FamilyReloadDetailController",
        "x-operation-name": "create",
        "tags": [
          "FamilyReloadDetailController"
        ],
        "responses": {
          "200": {
            "description": "Family model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ReloadDetail"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewReloadDetailInFamily"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "FamilyReloadDetailController.create"
      },
      "patch": {
        "x-controller-name": "FamilyReloadDetailController",
        "x-operation-name": "patch",
        "tags": [
          "FamilyReloadDetailController"
        ],
        "responses": {
          "200": {
            "description": "Family.ReloadDetail PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "ReloadDetail.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<ReloadDetail>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ReloadDetailPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "FamilyReloadDetailController.patch"
      },
      "get": {
        "x-controller-name": "FamilyReloadDetailController",
        "x-operation-name": "find",
        "tags": [
          "FamilyReloadDetailController"
        ],
        "responses": {
          "200": {
            "description": "Array of Family has many ReloadDetail",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ReloadDetail"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          }
        ],
        "operationId": "FamilyReloadDetailController.find"
      },
      "delete": {
        "x-controller-name": "FamilyReloadDetailController",
        "x-operation-name": "delete",
        "tags": [
          "FamilyReloadDetailController"
        ],
        "responses": {
          "200": {
            "description": "Family.ReloadDetail DELETE success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "ReloadDetail.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<ReloadDetail>"
                }
              }
            }
          }
        ],
        "operationId": "FamilyReloadDetailController.delete"
      }
    },
    "/families/{id}/sales": {
      "post": {
        "x-controller-name": "FamilySaleController",
        "x-operation-name": "create",
        "tags": [
          "FamilySaleController"
        ],
        "responses": {
          "200": {
            "description": "Family model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Sale"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewSaleInFamily"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "FamilySaleController.create"
      },
      "patch": {
        "x-controller-name": "FamilySaleController",
        "x-operation-name": "patch",
        "tags": [
          "FamilySaleController"
        ],
        "responses": {
          "200": {
            "description": "Family.Sale PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Sale.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Sale>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SalePartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "FamilySaleController.patch"
      },
      "get": {
        "x-controller-name": "FamilySaleController",
        "x-operation-name": "find",
        "tags": [
          "FamilySaleController"
        ],
        "responses": {
          "200": {
            "description": "Array of Family has many Sale",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Sale"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          }
        ],
        "operationId": "FamilySaleController.find"
      },
      "delete": {
        "x-controller-name": "FamilySaleController",
        "x-operation-name": "delete",
        "tags": [
          "FamilySaleController"
        ],
        "responses": {
          "200": {
            "description": "Family.Sale DELETE success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Sale.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Sale>"
                }
              }
            }
          }
        ],
        "operationId": "FamilySaleController.delete"
      }
    },
    "/families/{id}": {
      "put": {
        "x-controller-name": "FamilyController",
        "x-operation-name": "replaceById",
        "tags": [
          "FamilyController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "Family PUT success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Family"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "FamilyController.replaceById"
      },
      "patch": {
        "x-controller-name": "FamilyController",
        "x-operation-name": "updateById",
        "tags": [
          "FamilyController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "Family PATCH success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/FamilyPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "FamilyController.updateById"
      },
      "get": {
        "x-controller-name": "FamilyController",
        "x-operation-name": "findById",
        "tags": [
          "FamilyController"
        ],
        "responses": {
          "200": {
            "description": "Family model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FamilyWithRelations"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Family.Filter"
                }
              }
            }
          }
        ],
        "operationId": "FamilyController.findById"
      },
      "delete": {
        "x-controller-name": "FamilyController",
        "x-operation-name": "deleteById",
        "tags": [
          "FamilyController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "Family DELETE success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "FamilyController.deleteById"
      }
    },
    "/families": {
      "post": {
        "x-controller-name": "FamilyController",
        "x-operation-name": "create",
        "tags": [
          "FamilyController"
        ],
        "responses": {
          "200": {
            "description": "Family model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Family"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewFamily"
              }
            }
          }
        },
        "operationId": "FamilyController.create"
      },
      "patch": {
        "x-controller-name": "FamilyController",
        "x-operation-name": "updateAll",
        "tags": [
          "FamilyController"
        ],
        "responses": {
          "200": {
            "description": "Family PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Family.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Family>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/FamilyPartial"
              }
            }
          }
        },
        "operationId": "FamilyController.updateAll"
      },
      "get": {
        "x-controller-name": "FamilyController",
        "x-operation-name": "find",
        "tags": [
          "FamilyController"
        ],
        "responses": {
          "200": {
            "description": "Array of Family model instances",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/FamilyWithRelations"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FamilySearch.Filter"
                }
              }
            }
          }
        ],
        "operationId": "FamilyController.find"
      }
    },
    "/family-profile-picture/{id}": {
      "patch": {
        "x-controller-name": "FamilyController",
        "x-operation-name": "updateUserPictureById",
        "tags": [
          "FamilyController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "User profile picture PATCH success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "x-parser": "stream",
              "schema": {
                "type": "object"
              }
            }
          },
          "description": "multipart/form-data value.",
          "required": true,
          "x-parameter-index": 1
        },
        "operationId": "FamilyController.updateUserPictureById"
      }
    },
    "/history-actions/filter": {
      "get": {
        "x-controller-name": "HistoryActionController",
        "x-operation-name": "getHistoryActionsWithFilter",
        "tags": [
          "HistoryActionController"
        ],
        "responses": {
          "200": {
            "description": "Array of history actions with pagination and filters",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "items": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/HistoryActionWithRelations"
                      }
                    },
                    "total": {
                      "type": "number"
                    },
                    "page": {
                      "type": "number"
                    },
                    "limit": {
                      "type": "number"
                    }
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "userId",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "userEmail",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "action",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "description",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDate",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "operationId": "HistoryActionController.getHistoryActionsWithFilter"
      }
    },
    "/history-actions": {
      "post": {
        "x-controller-name": "HistoryActionController",
        "x-operation-name": "create",
        "tags": [
          "HistoryActionController"
        ],
        "responses": {
          "200": {
            "description": "HistoryAction model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HistoryAction"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewHistoryAction"
              }
            }
          }
        },
        "operationId": "HistoryActionController.create"
      }
    },
    "/inventory/adjustments": {
      "post": {
        "x-controller-name": "InventoryController",
        "x-operation-name": "adjustment",
        "tags": [
          "InventoryController"
        ],
        "responses": {
          "200": {
            "description": "Inventory adjustment",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InventoryMovement"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/InventoryOperationInput"
              }
            }
          }
        },
        "operationId": "InventoryController.adjustment"
      }
    },
    "/inventory/availability": {
      "get": {
        "x-controller-name": "InventoryController",
        "x-operation-name": "availability",
        "tags": [
          "InventoryController"
        ],
        "responses": {
          "200": {
            "description": "Sellable inventory availability for the current dispatch",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "dispatchId",
            "in": "query",
            "schema": {
              "type": "number"
            }
          }
        ],
        "operationId": "InventoryController.availability"
      }
    },
    "/inventory/balances/page": {
      "get": {
        "x-controller-name": "InventoryController",
        "x-operation-name": "balancesPage",
        "tags": [
          "InventoryController"
        ],
        "responses": {
          "200": {
            "description": "Paginated inventory balances with product and location data",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "search",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "productSearch",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "categorySearch",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "locationSearch",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "locationId",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "categoryId",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "status",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "orderDirection",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "operationId": "InventoryController.balancesPage"
      }
    },
    "/inventory/balances": {
      "get": {
        "x-controller-name": "InventoryController",
        "x-operation-name": "balances",
        "tags": [
          "InventoryController"
        ],
        "responses": {
          "200": {
            "description": "Inventory balances with product data",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array"
                }
              }
            }
          }
        },
        "operationId": "InventoryController.balances"
      }
    },
    "/inventory/entries": {
      "post": {
        "x-controller-name": "InventoryController",
        "x-operation-name": "entry",
        "tags": [
          "InventoryController"
        ],
        "responses": {
          "200": {
            "description": "Inventory entry",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InventoryMovement"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/InventoryOperationInput"
              }
            }
          }
        },
        "operationId": "InventoryController.entry"
      }
    },
    "/inventory/initial-count": {
      "post": {
        "x-controller-name": "InventoryController",
        "x-operation-name": "initialCount",
        "tags": [
          "InventoryController"
        ],
        "responses": {
          "200": {
            "description": "Initial inventory count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InventoryMovement"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/InventoryOperationInput"
              }
            }
          }
        },
        "operationId": "InventoryController.initialCount"
      }
    },
    "/inventory/locations/page": {
      "get": {
        "x-controller-name": "InventoryLocationController",
        "x-operation-name": "page",
        "tags": [
          "InventoryLocationController"
        ],
        "responses": {
          "200": {
            "description": "Paginated inventory locations",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "search",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "name",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "code",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "type",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "active",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "orderDirection",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "operationId": "InventoryLocationController.page"
      }
    },
    "/inventory/locations/{id}": {
      "patch": {
        "x-controller-name": "InventoryLocationController",
        "x-operation-name": "update",
        "tags": [
          "InventoryLocationController"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InventoryLocation"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/InventoryLocationPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "InventoryLocationController.update"
      },
      "delete": {
        "x-controller-name": "InventoryLocationController",
        "x-operation-name": "delete",
        "tags": [
          "InventoryLocationController"
        ],
        "responses": {
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "description": "Locations are deactivated instead of deleted"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "InventoryLocationController.delete"
      }
    },
    "/inventory/locations": {
      "post": {
        "x-controller-name": "InventoryLocationController",
        "x-operation-name": "create",
        "tags": [
          "InventoryLocationController"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InventoryLocation"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/InventoryLocationExcluding_ID_"
              }
            }
          }
        },
        "operationId": "InventoryLocationController.create"
      },
      "get": {
        "x-controller-name": "InventoryLocationController",
        "x-operation-name": "find",
        "tags": [
          "InventoryLocationController"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/InventoryLocation"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InventoryLocation.Filter"
                }
              }
            }
          }
        ],
        "operationId": "InventoryLocationController.find"
      }
    },
    "/inventory/movements": {
      "get": {
        "x-controller-name": "InventoryController",
        "x-operation-name": "movements",
        "tags": [
          "InventoryController"
        ],
        "responses": {
          "200": {
            "description": "Inventory movements",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/InventoryMovement"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InventoryMovement.Filter"
                }
              }
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "search",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "productSearch",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "locationSearch",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "type",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "reason",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "userEmail",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "orderDirection",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "operationId": "InventoryController.movements"
      }
    },
    "/inventory/products/{productId}": {
      "get": {
        "x-controller-name": "InventoryController",
        "x-operation-name": "productDetail",
        "tags": [
          "InventoryController"
        ],
        "responses": {
          "200": {
            "description": "Product inventory detail",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "productId",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "InventoryController.productDetail"
      }
    },
    "/inventory/transfer-products": {
      "get": {
        "x-controller-name": "InventoryController",
        "x-operation-name": "transferProducts",
        "tags": [
          "InventoryController"
        ],
        "responses": {
          "200": {
            "description": "Paginated products with stock at a source location",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "locationId",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "search",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "orderDirection",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "operationId": "InventoryController.transferProducts"
      }
    },
    "/inventory/transfers/{id}": {
      "get": {
        "x-controller-name": "InventoryController",
        "x-operation-name": "transferDetail",
        "tags": [
          "InventoryController"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "InventoryController.transferDetail"
      }
    },
    "/inventory/transfers": {
      "post": {
        "x-controller-name": "InventoryController",
        "x-operation-name": "transfer",
        "tags": [
          "InventoryController"
        ],
        "responses": {
          "200": {
            "description": "Inventory transfer",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InventoryTransfer"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/InventoryTransferInput"
              }
            }
          }
        },
        "operationId": "InventoryController.transfer"
      },
      "get": {
        "x-controller-name": "InventoryController",
        "x-operation-name": "transfers",
        "tags": [
          "InventoryController"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "search",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "reason",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "userEmail",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "fromLocationId",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "toLocationId",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "orderDirection",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "operationId": "InventoryController.transfers"
      }
    },
    "/list-products/count": {
      "get": {
        "x-controller-name": "ListProductController",
        "x-operation-name": "count",
        "tags": [
          "ListProductController"
        ],
        "responses": {
          "200": {
            "description": "ListProduct model count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "ListProduct.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<ListProduct>"
                }
              }
            }
          }
        ],
        "operationId": "ListProductController.count"
      }
    },
    "/list-products/{id}": {
      "put": {
        "x-controller-name": "ListProductController",
        "x-operation-name": "replaceById",
        "tags": [
          "ListProductController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "ListProduct PUT success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ListProduct"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "ListProductController.replaceById"
      },
      "patch": {
        "x-controller-name": "ListProductController",
        "x-operation-name": "updateById",
        "tags": [
          "ListProductController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "ListProduct PATCH success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ListProductPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "ListProductController.updateById"
      },
      "get": {
        "x-controller-name": "ListProductController",
        "x-operation-name": "findById",
        "tags": [
          "ListProductController"
        ],
        "responses": {
          "200": {
            "description": "ListProduct model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListProductWithRelations"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListProduct.Filter"
                }
              }
            }
          }
        ],
        "operationId": "ListProductController.findById"
      },
      "delete": {
        "x-controller-name": "ListProductController",
        "x-operation-name": "deleteById",
        "tags": [
          "ListProductController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "ListProduct DELETE success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "ListProductController.deleteById"
      }
    },
    "/list-products": {
      "post": {
        "x-controller-name": "ListProductController",
        "x-operation-name": "create",
        "tags": [
          "ListProductController"
        ],
        "responses": {
          "200": {
            "description": "ListProduct model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListProduct"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewListProduct"
              }
            }
          }
        },
        "operationId": "ListProductController.create"
      },
      "patch": {
        "x-controller-name": "ListProductController",
        "x-operation-name": "updateAll",
        "tags": [
          "ListProductController"
        ],
        "responses": {
          "200": {
            "description": "ListProduct PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "ListProduct.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<ListProduct>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ListProductPartial"
              }
            }
          }
        },
        "operationId": "ListProductController.updateAll"
      },
      "get": {
        "x-controller-name": "ListProductController",
        "x-operation-name": "find",
        "tags": [
          "ListProductController"
        ],
        "responses": {
          "200": {
            "description": "Array of ListProduct model instances",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ListProductWithRelations"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListProduct.Filter1"
                }
              }
            }
          }
        ],
        "operationId": "ListProductController.find"
      }
    },
    "/pay-lists/count": {
      "get": {
        "x-controller-name": "PayListController",
        "x-operation-name": "count",
        "tags": [
          "PayListController"
        ],
        "responses": {
          "200": {
            "description": "PayList model count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "PayList.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<PayList>"
                }
              }
            }
          }
        ],
        "operationId": "PayListController.count"
      }
    },
    "/pay-lists/{id}/account-list": {
      "get": {
        "x-controller-name": "PayListAccountListController",
        "x-operation-name": "getAccountList",
        "tags": [
          "PayListAccountListController"
        ],
        "responses": {
          "200": {
            "description": "AccountList belonging to PayList",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AccountList"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "PayListAccountListController.getAccountList"
      }
    },
    "/pay-lists/{id}/checkout-details": {
      "post": {
        "x-controller-name": "PayListCheckoutDetailsController",
        "x-operation-name": "create",
        "tags": [
          "PayListCheckoutDetailsController"
        ],
        "responses": {
          "200": {
            "description": "PayList model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CheckoutDetails"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewCheckoutDetailsInPayList"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "PayListCheckoutDetailsController.create"
      },
      "patch": {
        "x-controller-name": "PayListCheckoutDetailsController",
        "x-operation-name": "patch",
        "tags": [
          "PayListCheckoutDetailsController"
        ],
        "responses": {
          "200": {
            "description": "PayList.CheckoutDetails PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "CheckoutDetails.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<CheckoutDetails>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CheckoutDetailsPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "PayListCheckoutDetailsController.patch"
      },
      "get": {
        "x-controller-name": "PayListCheckoutDetailsController",
        "x-operation-name": "find",
        "tags": [
          "PayListCheckoutDetailsController"
        ],
        "responses": {
          "200": {
            "description": "Array of PayList has many CheckoutDetails",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/CheckoutDetails"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          }
        ],
        "operationId": "PayListCheckoutDetailsController.find"
      },
      "delete": {
        "x-controller-name": "PayListCheckoutDetailsController",
        "x-operation-name": "delete",
        "tags": [
          "PayListCheckoutDetailsController"
        ],
        "responses": {
          "200": {
            "description": "PayList.CheckoutDetails DELETE success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "CheckoutDetails.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<CheckoutDetails>"
                }
              }
            }
          }
        ],
        "operationId": "PayListCheckoutDetailsController.delete"
      }
    },
    "/pay-lists/{id}/pay-type": {
      "get": {
        "x-controller-name": "PayListPayTypeController",
        "x-operation-name": "getPayType",
        "tags": [
          "PayListPayTypeController"
        ],
        "responses": {
          "200": {
            "description": "PayType belonging to PayList",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PayType"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "PayListPayTypeController.getPayType"
      }
    },
    "/pay-lists/{id}/reloads": {
      "post": {
        "x-controller-name": "PayListReloadController",
        "x-operation-name": "create",
        "tags": [
          "PayListReloadController"
        ],
        "responses": {
          "200": {
            "description": "PayList model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Reload"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewReloadInPayList"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "PayListReloadController.create"
      },
      "patch": {
        "x-controller-name": "PayListReloadController",
        "x-operation-name": "patch",
        "tags": [
          "PayListReloadController"
        ],
        "responses": {
          "200": {
            "description": "PayList.Reload PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Reload.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Reload>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ReloadPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "PayListReloadController.patch"
      },
      "get": {
        "x-controller-name": "PayListReloadController",
        "x-operation-name": "find",
        "tags": [
          "PayListReloadController"
        ],
        "responses": {
          "200": {
            "description": "Array of PayList has many Reload",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Reload"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          }
        ],
        "operationId": "PayListReloadController.find"
      },
      "delete": {
        "x-controller-name": "PayListReloadController",
        "x-operation-name": "delete",
        "tags": [
          "PayListReloadController"
        ],
        "responses": {
          "200": {
            "description": "PayList.Reload DELETE success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Reload.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Reload>"
                }
              }
            }
          }
        ],
        "operationId": "PayListReloadController.delete"
      }
    },
    "/pay-lists/{id}/sales": {
      "post": {
        "x-controller-name": "PayListSaleController",
        "x-operation-name": "create",
        "tags": [
          "PayListSaleController"
        ],
        "responses": {
          "200": {
            "description": "PayList model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Sale"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewSaleInPayList"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "PayListSaleController.create"
      },
      "patch": {
        "x-controller-name": "PayListSaleController",
        "x-operation-name": "patch",
        "tags": [
          "PayListSaleController"
        ],
        "responses": {
          "200": {
            "description": "PayList.Sale PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Sale.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Sale>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SalePartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "PayListSaleController.patch"
      },
      "get": {
        "x-controller-name": "PayListSaleController",
        "x-operation-name": "find",
        "tags": [
          "PayListSaleController"
        ],
        "responses": {
          "200": {
            "description": "Array of PayList has many Sale",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Sale"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          }
        ],
        "operationId": "PayListSaleController.find"
      },
      "delete": {
        "x-controller-name": "PayListSaleController",
        "x-operation-name": "delete",
        "tags": [
          "PayListSaleController"
        ],
        "responses": {
          "200": {
            "description": "PayList.Sale DELETE success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Sale.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Sale>"
                }
              }
            }
          }
        ],
        "operationId": "PayListSaleController.delete"
      }
    },
    "/pay-lists/{id}": {
      "put": {
        "x-controller-name": "PayListController",
        "x-operation-name": "replaceById",
        "tags": [
          "PayListController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "PayList PUT success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PayList"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "PayListController.replaceById"
      },
      "patch": {
        "x-controller-name": "PayListController",
        "x-operation-name": "updateById",
        "tags": [
          "PayListController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "PayList PATCH success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PayListPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "PayListController.updateById"
      },
      "get": {
        "x-controller-name": "PayListController",
        "x-operation-name": "findById",
        "tags": [
          "PayListController"
        ],
        "responses": {
          "200": {
            "description": "PayList model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PayListWithRelations"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PayList.Filter"
                }
              }
            }
          }
        ],
        "operationId": "PayListController.findById"
      },
      "delete": {
        "x-controller-name": "PayListController",
        "x-operation-name": "deleteById",
        "tags": [
          "PayListController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "PayList DELETE success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "PayListController.deleteById"
      }
    },
    "/pay-lists": {
      "post": {
        "x-controller-name": "PayListController",
        "x-operation-name": "create",
        "tags": [
          "PayListController"
        ],
        "responses": {
          "200": {
            "description": "PayList model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PayList"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewPayList"
              }
            }
          }
        },
        "operationId": "PayListController.create"
      },
      "patch": {
        "x-controller-name": "PayListController",
        "x-operation-name": "updateAll",
        "tags": [
          "PayListController"
        ],
        "responses": {
          "200": {
            "description": "PayList PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "PayList.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<PayList>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PayListPartial"
              }
            }
          }
        },
        "operationId": "PayListController.updateAll"
      },
      "get": {
        "x-controller-name": "PayListController",
        "x-operation-name": "find",
        "tags": [
          "PayListController"
        ],
        "responses": {
          "200": {
            "description": "Array of PayList model instances",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PayListWithRelations"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PayList.Filter1"
                }
              }
            }
          }
        ],
        "operationId": "PayListController.find"
      }
    },
    "/pay-types/count": {
      "get": {
        "x-controller-name": "PayTypeController",
        "x-operation-name": "count",
        "tags": [
          "PayTypeController"
        ],
        "responses": {
          "200": {
            "description": "PayType model count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "PayType.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<PayType>"
                }
              }
            }
          }
        ],
        "operationId": "PayTypeController.count"
      }
    },
    "/pay-types/{id}/pay-lists": {
      "post": {
        "x-controller-name": "PayTypePayListController",
        "x-operation-name": "create",
        "tags": [
          "PayTypePayListController"
        ],
        "responses": {
          "200": {
            "description": "PayType model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PayList"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewPayListInPayType"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "PayTypePayListController.create"
      },
      "patch": {
        "x-controller-name": "PayTypePayListController",
        "x-operation-name": "patch",
        "tags": [
          "PayTypePayListController"
        ],
        "responses": {
          "200": {
            "description": "PayType.PayList PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "PayList.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<PayList>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PayListPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "PayTypePayListController.patch"
      },
      "get": {
        "x-controller-name": "PayTypePayListController",
        "x-operation-name": "find",
        "tags": [
          "PayTypePayListController"
        ],
        "responses": {
          "200": {
            "description": "Array of PayType has many PayList",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PayList"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          }
        ],
        "operationId": "PayTypePayListController.find"
      },
      "delete": {
        "x-controller-name": "PayTypePayListController",
        "x-operation-name": "delete",
        "tags": [
          "PayTypePayListController"
        ],
        "responses": {
          "200": {
            "description": "PayType.PayList DELETE success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "PayList.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<PayList>"
                }
              }
            }
          }
        ],
        "operationId": "PayTypePayListController.delete"
      }
    },
    "/pay-types/{id}": {
      "put": {
        "x-controller-name": "PayTypeController",
        "x-operation-name": "replaceById",
        "tags": [
          "PayTypeController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "PayType PUT success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PayType"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "PayTypeController.replaceById"
      },
      "patch": {
        "x-controller-name": "PayTypeController",
        "x-operation-name": "updateById",
        "tags": [
          "PayTypeController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "PayType PATCH success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PayTypePartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "PayTypeController.updateById"
      },
      "get": {
        "x-controller-name": "PayTypeController",
        "x-operation-name": "findById",
        "tags": [
          "PayTypeController"
        ],
        "responses": {
          "200": {
            "description": "PayType model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PayTypeWithRelations"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PayType.Filter"
                }
              }
            }
          }
        ],
        "operationId": "PayTypeController.findById"
      },
      "delete": {
        "x-controller-name": "PayTypeController",
        "x-operation-name": "deleteById",
        "tags": [
          "PayTypeController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "PayType DELETE success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "PayTypeController.deleteById"
      }
    },
    "/pay-types": {
      "post": {
        "x-controller-name": "PayTypeController",
        "x-operation-name": "create",
        "tags": [
          "PayTypeController"
        ],
        "responses": {
          "200": {
            "description": "PayType model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PayType"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewPayType"
              }
            }
          }
        },
        "operationId": "PayTypeController.create"
      },
      "patch": {
        "x-controller-name": "PayTypeController",
        "x-operation-name": "updateAll",
        "tags": [
          "PayTypeController"
        ],
        "responses": {
          "200": {
            "description": "PayType PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "PayType.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<PayType>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PayTypePartial"
              }
            }
          }
        },
        "operationId": "PayTypeController.updateAll"
      },
      "get": {
        "x-controller-name": "PayTypeController",
        "x-operation-name": "find",
        "tags": [
          "PayTypeController"
        ],
        "responses": {
          "200": {
            "description": "Array of PayType model instances",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PayTypeWithRelations"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PayType.Filter1"
                }
              }
            }
          }
        ],
        "operationId": "PayTypeController.find"
      }
    },
    "/ping": {
      "get": {
        "x-controller-name": "PingController",
        "x-operation-name": "ping",
        "tags": [
          "PingController"
        ],
        "responses": {
          "200": {
            "description": "Ping Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PingResponse"
                }
              }
            }
          }
        },
        "operationId": "PingController.ping"
      }
    },
    "/product-categories/count": {
      "get": {
        "x-controller-name": "ProductsCategoryController",
        "x-operation-name": "count",
        "tags": [
          "ProductsCategoryController"
        ],
        "responses": {
          "200": {
            "description": "ProductCategory model count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "ProductCategory.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<ProductCategory>"
                }
              }
            }
          }
        ],
        "operationId": "ProductsCategoryController.count"
      }
    },
    "/product-categories/{id}/product-sub-categories": {
      "post": {
        "x-controller-name": "ProductCategoryProductSubCategoryController",
        "x-operation-name": "create",
        "tags": [
          "ProductCategoryProductSubCategoryController"
        ],
        "responses": {
          "200": {
            "description": "ProductCategory model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProductSubCategory"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewProductSubCategoryInProductCategory"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "ProductCategoryProductSubCategoryController.create"
      },
      "patch": {
        "x-controller-name": "ProductCategoryProductSubCategoryController",
        "x-operation-name": "patch",
        "tags": [
          "ProductCategoryProductSubCategoryController"
        ],
        "responses": {
          "200": {
            "description": "ProductCategory.ProductSubCategory PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "ProductSubCategory.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<ProductSubCategory>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ProductSubCategoryPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "ProductCategoryProductSubCategoryController.patch"
      },
      "get": {
        "x-controller-name": "ProductCategoryProductSubCategoryController",
        "x-operation-name": "find",
        "tags": [
          "ProductCategoryProductSubCategoryController"
        ],
        "responses": {
          "200": {
            "description": "Array of ProductCategory has many ProductSubCategory",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ProductSubCategory"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          }
        ],
        "operationId": "ProductCategoryProductSubCategoryController.find"
      },
      "delete": {
        "x-controller-name": "ProductCategoryProductSubCategoryController",
        "x-operation-name": "delete",
        "tags": [
          "ProductCategoryProductSubCategoryController"
        ],
        "responses": {
          "200": {
            "description": "ProductCategory.ProductSubCategory DELETE success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "ProductSubCategory.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<ProductSubCategory>"
                }
              }
            }
          }
        ],
        "operationId": "ProductCategoryProductSubCategoryController.delete"
      }
    },
    "/product-categories/{id}": {
      "put": {
        "x-controller-name": "ProductsCategoryController",
        "x-operation-name": "replaceById",
        "tags": [
          "ProductsCategoryController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "ProductCategory PUT success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ProductCategory"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "ProductsCategoryController.replaceById"
      },
      "patch": {
        "x-controller-name": "ProductsCategoryController",
        "x-operation-name": "updateById",
        "tags": [
          "ProductsCategoryController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "ProductCategory PATCH success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ProductCategoryPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "ProductsCategoryController.updateById"
      },
      "get": {
        "x-controller-name": "ProductsCategoryController",
        "x-operation-name": "findById",
        "tags": [
          "ProductsCategoryController"
        ],
        "responses": {
          "200": {
            "description": "ProductCategory model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProductCategoryWithRelations"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProductCategory.Filter"
                }
              }
            }
          }
        ],
        "operationId": "ProductsCategoryController.findById"
      },
      "delete": {
        "x-controller-name": "ProductsCategoryController",
        "x-operation-name": "deleteById",
        "tags": [
          "ProductsCategoryController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "ProductCategory DELETE success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "ProductsCategoryController.deleteById"
      }
    },
    "/product-categories": {
      "post": {
        "x-controller-name": "ProductsCategoryController",
        "x-operation-name": "create",
        "tags": [
          "ProductsCategoryController"
        ],
        "responses": {
          "200": {
            "description": "ProductCategory model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProductCategory"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewProductCategory"
              }
            }
          }
        },
        "operationId": "ProductsCategoryController.create"
      },
      "patch": {
        "x-controller-name": "ProductsCategoryController",
        "x-operation-name": "updateAll",
        "tags": [
          "ProductsCategoryController"
        ],
        "responses": {
          "200": {
            "description": "ProductCategory PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "ProductCategory.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<ProductCategory>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ProductCategoryPartial"
              }
            }
          }
        },
        "operationId": "ProductsCategoryController.updateAll"
      },
      "get": {
        "x-controller-name": "ProductsCategoryController",
        "x-operation-name": "find",
        "tags": [
          "ProductsCategoryController"
        ],
        "responses": {
          "200": {
            "description": "Array of ProductCategory model instances",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ProductCategoryWithRelations"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProductCategory.Filter1"
                }
              }
            }
          }
        ],
        "operationId": "ProductsCategoryController.find"
      }
    },
    "/product-sub-categories/count": {
      "get": {
        "x-controller-name": "ProductSubCategorysController",
        "x-operation-name": "count",
        "tags": [
          "ProductSubCategorysController"
        ],
        "responses": {
          "200": {
            "description": "ProductSubCategory model count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "ProductSubCategory.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<ProductSubCategory>"
                }
              }
            }
          }
        ],
        "operationId": "ProductSubCategorysController.count"
      }
    },
    "/product-sub-categories/{id}/products": {
      "post": {
        "x-controller-name": "ProductSubCategoryProductsController",
        "x-operation-name": "create",
        "tags": [
          "ProductSubCategoryProductsController"
        ],
        "responses": {
          "200": {
            "description": "ProductSubCategory model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Products"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewProductsInProductSubCategory"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "ProductSubCategoryProductsController.create"
      },
      "patch": {
        "x-controller-name": "ProductSubCategoryProductsController",
        "x-operation-name": "patch",
        "tags": [
          "ProductSubCategoryProductsController"
        ],
        "responses": {
          "200": {
            "description": "ProductSubCategory.Products PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Products.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Products>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ProductsPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "ProductSubCategoryProductsController.patch"
      },
      "get": {
        "x-controller-name": "ProductSubCategoryProductsController",
        "x-operation-name": "find",
        "tags": [
          "ProductSubCategoryProductsController"
        ],
        "responses": {
          "200": {
            "description": "Array of ProductSubCategory has many Products",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Products"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          }
        ],
        "operationId": "ProductSubCategoryProductsController.find"
      },
      "delete": {
        "x-controller-name": "ProductSubCategoryProductsController",
        "x-operation-name": "delete",
        "tags": [
          "ProductSubCategoryProductsController"
        ],
        "responses": {
          "200": {
            "description": "ProductSubCategory.Products DELETE success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Products.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Products>"
                }
              }
            }
          }
        ],
        "operationId": "ProductSubCategoryProductsController.delete"
      }
    },
    "/product-sub-categories/{id}": {
      "put": {
        "x-controller-name": "ProductSubCategorysController",
        "x-operation-name": "replaceById",
        "tags": [
          "ProductSubCategorysController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "ProductSubCategory PUT success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ProductSubCategory"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "ProductSubCategorysController.replaceById"
      },
      "patch": {
        "x-controller-name": "ProductSubCategorysController",
        "x-operation-name": "updateById",
        "tags": [
          "ProductSubCategorysController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "ProductSubCategory PATCH success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ProductSubCategoryPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "ProductSubCategorysController.updateById"
      },
      "get": {
        "x-controller-name": "ProductSubCategorysController",
        "x-operation-name": "findById",
        "tags": [
          "ProductSubCategorysController"
        ],
        "responses": {
          "200": {
            "description": "ProductSubCategory model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProductSubCategoryWithRelations"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProductSubCategory.Filter"
                }
              }
            }
          }
        ],
        "operationId": "ProductSubCategorysController.findById"
      },
      "delete": {
        "x-controller-name": "ProductSubCategorysController",
        "x-operation-name": "deleteById",
        "tags": [
          "ProductSubCategorysController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "ProductSubCategory DELETE success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "ProductSubCategorysController.deleteById"
      }
    },
    "/product-sub-categories": {
      "post": {
        "x-controller-name": "ProductSubCategorysController",
        "x-operation-name": "create",
        "tags": [
          "ProductSubCategorysController"
        ],
        "responses": {
          "200": {
            "description": "ProductSubCategory model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProductSubCategory"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewProductSubCategory"
              }
            }
          }
        },
        "operationId": "ProductSubCategorysController.create"
      },
      "patch": {
        "x-controller-name": "ProductSubCategorysController",
        "x-operation-name": "updateAll",
        "tags": [
          "ProductSubCategorysController"
        ],
        "responses": {
          "200": {
            "description": "ProductSubCategory PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "ProductSubCategory.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<ProductSubCategory>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ProductSubCategoryPartial"
              }
            }
          }
        },
        "operationId": "ProductSubCategorysController.updateAll"
      },
      "get": {
        "x-controller-name": "ProductSubCategorysController",
        "x-operation-name": "find",
        "tags": [
          "ProductSubCategorysController"
        ],
        "responses": {
          "200": {
            "description": "Array of ProductSubCategory model instances",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ProductSubCategoryWithRelations"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProductSubCategory.Filter1"
                }
              }
            }
          }
        ],
        "operationId": "ProductSubCategorysController.find"
      }
    },
    "/products/count": {
      "get": {
        "x-controller-name": "ProductsController",
        "x-operation-name": "count",
        "tags": [
          "ProductsController"
        ],
        "responses": {
          "200": {
            "description": "Products model count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Products.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Products>"
                }
              }
            }
          }
        ],
        "operationId": "ProductsController.count"
      }
    },
    "/products/{id}/product-costs": {
      "post": {
        "x-controller-name": "ProductsProductCostController",
        "x-operation-name": "create",
        "tags": [
          "ProductsProductCostController"
        ],
        "responses": {
          "200": {
            "description": "Products model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProductCost"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewProductCostInProducts"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "ProductsProductCostController.create"
      },
      "patch": {
        "x-controller-name": "ProductsProductCostController",
        "x-operation-name": "patch",
        "tags": [
          "ProductsProductCostController"
        ],
        "responses": {
          "200": {
            "description": "Products.ProductCost PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "ProductCost.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<ProductCost>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ProductCostPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "ProductsProductCostController.patch"
      },
      "get": {
        "x-controller-name": "ProductsProductCostController",
        "x-operation-name": "find",
        "tags": [
          "ProductsProductCostController"
        ],
        "responses": {
          "200": {
            "description": "Array of Products has many ProductCost",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ProductCost"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          }
        ],
        "operationId": "ProductsProductCostController.find"
      },
      "delete": {
        "x-controller-name": "ProductsProductCostController",
        "x-operation-name": "delete",
        "tags": [
          "ProductsProductCostController"
        ],
        "responses": {
          "200": {
            "description": "Products.ProductCost DELETE success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "ProductCost.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<ProductCost>"
                }
              }
            }
          }
        ],
        "operationId": "ProductsProductCostController.delete"
      }
    },
    "/products/{id}": {
      "put": {
        "x-controller-name": "ProductsController",
        "x-operation-name": "replaceById",
        "tags": [
          "ProductsController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "Products PUT success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Products"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "ProductsController.replaceById"
      },
      "patch": {
        "x-controller-name": "ProductsController",
        "x-operation-name": "updateById",
        "tags": [
          "ProductsController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "Products PATCH success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ProductInputPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "ProductsController.updateById"
      },
      "get": {
        "x-controller-name": "ProductsController",
        "x-operation-name": "findById",
        "tags": [
          "ProductsController"
        ],
        "responses": {
          "200": {
            "description": "Products model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProductsWithRelations"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Products.Filter"
                }
              }
            }
          }
        ],
        "operationId": "ProductsController.findById"
      },
      "delete": {
        "x-controller-name": "ProductsController",
        "x-operation-name": "deleteById",
        "tags": [
          "ProductsController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "Products DELETE success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "ProductsController.deleteById"
      }
    },
    "/products": {
      "post": {
        "x-controller-name": "ProductsController",
        "x-operation-name": "create",
        "tags": [
          "ProductsController"
        ],
        "responses": {
          "200": {
            "description": "Products model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProductInput"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewProducts"
              }
            }
          }
        },
        "operationId": "ProductsController.create"
      },
      "patch": {
        "x-controller-name": "ProductsController",
        "x-operation-name": "updateAll",
        "tags": [
          "ProductsController"
        ],
        "responses": {
          "200": {
            "description": "Products PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Products.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Products>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ProductsPartial"
              }
            }
          }
        },
        "operationId": "ProductsController.updateAll"
      },
      "get": {
        "x-controller-name": "ProductsController",
        "x-operation-name": "find",
        "tags": [
          "ProductsController"
        ],
        "responses": {
          "200": {
            "description": "Array of Products model instances",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ProductsWithRelations"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Products.Filter1"
                }
              }
            }
          }
        ],
        "operationId": "ProductsController.find"
      }
    },
    "/reloads/count": {
      "get": {
        "x-controller-name": "ReloadController",
        "x-operation-name": "count",
        "tags": [
          "ReloadController"
        ],
        "responses": {
          "200": {
            "description": "Reload model count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Reload.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Reload>"
                }
              }
            }
          }
        ],
        "operationId": "ReloadController.count"
      }
    },
    "/reloads/email": {
      "post": {
        "x-controller-name": "ReloadController",
        "x-operation-name": "resendEmail",
        "tags": [
          "ReloadController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "Reload PUT success"
                }
              }
            }
          }
        },
        "operationId": "ReloadController.resendEmail"
      }
    },
    "/reloads/{id}/reload-details": {
      "post": {
        "x-controller-name": "ReloadReloadDetailController",
        "x-operation-name": "create",
        "tags": [
          "ReloadReloadDetailController"
        ],
        "responses": {
          "200": {
            "description": "Reload model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ReloadDetail"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewReloadDetailInReload"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "ReloadReloadDetailController.create"
      },
      "patch": {
        "x-controller-name": "ReloadReloadDetailController",
        "x-operation-name": "patch",
        "tags": [
          "ReloadReloadDetailController"
        ],
        "responses": {
          "200": {
            "description": "Reload.ReloadDetail PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "ReloadDetail.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<ReloadDetail>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ReloadDetailPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "ReloadReloadDetailController.patch"
      },
      "get": {
        "x-controller-name": "ReloadReloadDetailController",
        "x-operation-name": "find",
        "tags": [
          "ReloadReloadDetailController"
        ],
        "responses": {
          "200": {
            "description": "Array of Reload has many ReloadDetail",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ReloadDetail"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          }
        ],
        "operationId": "ReloadReloadDetailController.find"
      },
      "delete": {
        "x-controller-name": "ReloadReloadDetailController",
        "x-operation-name": "delete",
        "tags": [
          "ReloadReloadDetailController"
        ],
        "responses": {
          "200": {
            "description": "Reload.ReloadDetail DELETE success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "ReloadDetail.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<ReloadDetail>"
                }
              }
            }
          }
        ],
        "operationId": "ReloadReloadDetailController.delete"
      }
    },
    "/reloads/{id}": {
      "put": {
        "x-controller-name": "ReloadController",
        "x-operation-name": "replaceById",
        "tags": [
          "ReloadController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "Reload PUT success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Reload"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "ReloadController.replaceById"
      },
      "patch": {
        "x-controller-name": "ReloadController",
        "x-operation-name": "updateById",
        "tags": [
          "ReloadController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "Reload PATCH success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "string"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "ReloadController.updateById"
      },
      "get": {
        "x-controller-name": "ReloadController",
        "x-operation-name": "findById",
        "tags": [
          "ReloadController"
        ],
        "responses": {
          "200": {
            "description": "Reload model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ReloadWithRelations"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Reload.Filter"
                }
              }
            }
          }
        ],
        "operationId": "ReloadController.findById"
      },
      "delete": {
        "x-controller-name": "ReloadController",
        "x-operation-name": "deleteById",
        "tags": [
          "ReloadController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "Reload DELETE success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "ReloadController.deleteById"
      }
    },
    "/reloads": {
      "post": {
        "x-controller-name": "ReloadController",
        "x-operation-name": "create",
        "tags": [
          "ReloadController"
        ],
        "responses": {
          "200": {
            "description": "Reload model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Reload"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewReload"
              }
            }
          }
        },
        "operationId": "ReloadController.create"
      },
      "patch": {
        "x-controller-name": "ReloadController",
        "x-operation-name": "updateAll",
        "tags": [
          "ReloadController"
        ],
        "responses": {
          "200": {
            "description": "Reload PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Reload.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Reload>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ReloadPartial"
              }
            }
          }
        },
        "operationId": "ReloadController.updateAll"
      },
      "get": {
        "x-controller-name": "ReloadController",
        "x-operation-name": "find",
        "tags": [
          "ReloadController"
        ],
        "responses": {
          "200": {
            "description": "Array of Reload model instances",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ReloadWithRelations"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Reload.Filter1"
                }
              }
            }
          }
        ],
        "operationId": "ReloadController.find"
      }
    },
    "/reloadsDirect": {
      "post": {
        "x-controller-name": "ReloadController",
        "x-operation-name": "createDirectReload",
        "tags": [
          "ReloadController"
        ],
        "responses": {
          "200": {
            "description": "Reload model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Reload"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewReloadDirect"
              }
            }
          }
        },
        "operationId": "ReloadController.createDirectReload"
      }
    },
    "/reloadsfilter/csv": {
      "get": {
        "x-controller-name": "CheckOutController",
        "x-operation-name": "exportReloadsCsv",
        "tags": [
          "CheckOutController"
        ],
        "responses": {
          "200": {
            "description": "CSV export of Reloads with filters applied",
            "content": {
              "text/csv": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "email",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDate",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "payListId",
            "in": "query",
            "schema": {
              "type": "number"
            }
          }
        ],
        "operationId": "CheckOutController.exportReloadsCsv"
      }
    },
    "/reloadsfilter/report": {
      "post": {
        "x-controller-name": "CheckOutController",
        "x-operation-name": "exportReloadsReport",
        "tags": [
          "CheckOutController"
        ],
        "responses": {
          "200": {
            "description": "PDF report (base64) for reloads filter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "email": {
                    "type": "string"
                  },
                  "startDate": {
                    "type": "string"
                  },
                  "endDate": {
                    "type": "string"
                  },
                  "payListId": {
                    "type": "number"
                  }
                }
              }
            }
          },
          "required": false
        },
        "operationId": "CheckOutController.exportReloadsReport"
      }
    },
    "/reloadsfilter": {
      "get": {
        "x-controller-name": "CheckOutController",
        "x-operation-name": "getReloadsWithFilter",
        "tags": [
          "CheckOutController"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "description": "Array of Reload model instances with pagination and email filter"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "email",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDate",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDate",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "payListId",
            "in": "query",
            "schema": {
              "type": "number"
            }
          }
        ],
        "operationId": "CheckOutController.getReloadsWithFilter"
      }
    },
    "/sale-states/count": {
      "get": {
        "x-controller-name": "SaleStatusController",
        "x-operation-name": "count",
        "tags": [
          "SaleStatusController"
        ],
        "responses": {
          "200": {
            "description": "SaleState model count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "SaleState.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<SaleState>"
                }
              }
            }
          }
        ],
        "operationId": "SaleStatusController.count"
      }
    },
    "/sale-states/{id}/sales": {
      "post": {
        "x-controller-name": "SaleStateSaleController",
        "x-operation-name": "create",
        "tags": [
          "SaleStateSaleController"
        ],
        "responses": {
          "200": {
            "description": "SaleState model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Sale"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewSaleInSaleState"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "SaleStateSaleController.create"
      },
      "patch": {
        "x-controller-name": "SaleStateSaleController",
        "x-operation-name": "patch",
        "tags": [
          "SaleStateSaleController"
        ],
        "responses": {
          "200": {
            "description": "SaleState.Sale PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Sale.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Sale>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SalePartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "SaleStateSaleController.patch"
      },
      "get": {
        "x-controller-name": "SaleStateSaleController",
        "x-operation-name": "find",
        "tags": [
          "SaleStateSaleController"
        ],
        "responses": {
          "200": {
            "description": "Array of SaleState has many Sale",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Sale"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          }
        ],
        "operationId": "SaleStateSaleController.find"
      },
      "delete": {
        "x-controller-name": "SaleStateSaleController",
        "x-operation-name": "delete",
        "tags": [
          "SaleStateSaleController"
        ],
        "responses": {
          "200": {
            "description": "SaleState.Sale DELETE success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Sale.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Sale>"
                }
              }
            }
          }
        ],
        "operationId": "SaleStateSaleController.delete"
      }
    },
    "/sale-states/{id}": {
      "put": {
        "x-controller-name": "SaleStatusController",
        "x-operation-name": "replaceById",
        "tags": [
          "SaleStatusController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "SaleState PUT success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SaleState"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "SaleStatusController.replaceById"
      },
      "patch": {
        "x-controller-name": "SaleStatusController",
        "x-operation-name": "updateById",
        "tags": [
          "SaleStatusController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "SaleState PATCH success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SaleStatePartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "SaleStatusController.updateById"
      },
      "get": {
        "x-controller-name": "SaleStatusController",
        "x-operation-name": "findById",
        "tags": [
          "SaleStatusController"
        ],
        "responses": {
          "200": {
            "description": "SaleState model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaleStateWithRelations"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaleState.Filter"
                }
              }
            }
          }
        ],
        "operationId": "SaleStatusController.findById"
      },
      "delete": {
        "x-controller-name": "SaleStatusController",
        "x-operation-name": "deleteById",
        "tags": [
          "SaleStatusController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "SaleState DELETE success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "SaleStatusController.deleteById"
      }
    },
    "/sale-states": {
      "post": {
        "x-controller-name": "SaleStatusController",
        "x-operation-name": "create",
        "tags": [
          "SaleStatusController"
        ],
        "responses": {
          "200": {
            "description": "SaleState model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaleState"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewSaleState"
              }
            }
          }
        },
        "operationId": "SaleStatusController.create"
      },
      "patch": {
        "x-controller-name": "SaleStatusController",
        "x-operation-name": "updateAll",
        "tags": [
          "SaleStatusController"
        ],
        "responses": {
          "200": {
            "description": "SaleState PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "SaleState.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<SaleState>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SaleStatePartial"
              }
            }
          }
        },
        "operationId": "SaleStatusController.updateAll"
      },
      "get": {
        "x-controller-name": "SaleStatusController",
        "x-operation-name": "find",
        "tags": [
          "SaleStatusController"
        ],
        "responses": {
          "200": {
            "description": "Array of SaleState model instances",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SaleStateWithRelations"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaleState.Filter1"
                }
              }
            }
          }
        ],
        "operationId": "SaleStatusController.find"
      }
    },
    "/sales/count": {
      "get": {
        "x-controller-name": "SaleController",
        "x-operation-name": "count",
        "tags": [
          "SaleController"
        ],
        "responses": {
          "200": {
            "description": "Sale model count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Sale.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Sale>"
                }
              }
            }
          }
        ],
        "operationId": "SaleController.count"
      }
    },
    "/sales/{id}/checkout-details": {
      "get": {
        "x-controller-name": "SaleCheckoutDetailsController",
        "x-operation-name": "getCheckoutDetails",
        "tags": [
          "SaleCheckoutDetailsController"
        ],
        "responses": {
          "200": {
            "description": "CheckoutDetails belonging to Sale",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CheckoutDetails"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "SaleCheckoutDetailsController.getCheckoutDetails"
      }
    },
    "/sales/{id}/dispatch": {
      "patch": {
        "x-controller-name": "SaleController",
        "x-operation-name": "dispatchById",
        "tags": [
          "SaleController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "Sale PATCH success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "SaleController.dispatchById"
      }
    },
    "/sales/{id}/list-products": {
      "post": {
        "x-controller-name": "SaleListProductController",
        "x-operation-name": "create",
        "tags": [
          "SaleListProductController"
        ],
        "responses": {
          "200": {
            "description": "Sale model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListProduct"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewListProductInSale"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "SaleListProductController.create"
      },
      "patch": {
        "x-controller-name": "SaleListProductController",
        "x-operation-name": "patch",
        "tags": [
          "SaleListProductController"
        ],
        "responses": {
          "200": {
            "description": "Sale.ListProduct PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "ListProduct.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<ListProduct>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ListProductPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "SaleListProductController.patch"
      },
      "get": {
        "x-controller-name": "SaleListProductController",
        "x-operation-name": "find",
        "tags": [
          "SaleListProductController"
        ],
        "responses": {
          "200": {
            "description": "Array of Sale has many ListProduct",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ListProduct"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          }
        ],
        "operationId": "SaleListProductController.find"
      },
      "delete": {
        "x-controller-name": "SaleListProductController",
        "x-operation-name": "delete",
        "tags": [
          "SaleListProductController"
        ],
        "responses": {
          "200": {
            "description": "Sale.ListProduct DELETE success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "ListProduct.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<ListProduct>"
                }
              }
            }
          }
        ],
        "operationId": "SaleListProductController.delete"
      }
    },
    "/sales/{id}": {
      "put": {
        "x-controller-name": "SaleController",
        "x-operation-name": "replaceById",
        "tags": [
          "SaleController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "Sale PUT success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Sale"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "SaleController.replaceById"
      },
      "patch": {
        "x-controller-name": "SaleController",
        "x-operation-name": "updateById",
        "tags": [
          "SaleController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "Sale PATCH success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SaleInputPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "SaleController.updateById"
      },
      "get": {
        "x-controller-name": "SaleController",
        "x-operation-name": "findById",
        "tags": [
          "SaleController"
        ],
        "responses": {
          "200": {
            "description": "Sale model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaleWithRelations"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Sale.Filter"
                }
              }
            }
          }
        ],
        "operationId": "SaleController.findById"
      },
      "delete": {
        "x-controller-name": "SaleController",
        "x-operation-name": "deleteById",
        "tags": [
          "SaleController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "Sale DELETE success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "SaleController.deleteById"
      }
    },
    "/sales": {
      "post": {
        "x-controller-name": "SaleController",
        "x-operation-name": "create",
        "tags": [
          "SaleController"
        ],
        "responses": {
          "200": {
            "description": "Sale model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaleInput"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewSale"
              }
            }
          }
        },
        "operationId": "SaleController.create"
      },
      "patch": {
        "x-controller-name": "SaleController",
        "x-operation-name": "updateAll",
        "tags": [
          "SaleController"
        ],
        "responses": {
          "200": {
            "description": "Sale PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Sale.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Sale>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SalePartial"
              }
            }
          }
        },
        "operationId": "SaleController.updateAll"
      },
      "get": {
        "x-controller-name": "SaleController",
        "x-operation-name": "find",
        "tags": [
          "SaleController"
        ],
        "responses": {
          "200": {
            "description": "Array of Sale model instances",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SaleWithRelations"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Sale.Filter1"
                }
              }
            }
          }
        ],
        "operationId": "SaleController.find"
      }
    },
    "/salesEmailResend": {
      "post": {
        "x-controller-name": "SaleController",
        "x-operation-name": "resendEmail",
        "tags": [
          "SaleController"
        ],
        "responses": {
          "200": {
            "description": "Array of Sale model instances",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ReportWithRelations"
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewReportPDF"
              }
            }
          }
        },
        "operationId": "SaleController.resendEmail"
      }
    },
    "/salesReport/{userId}": {
      "post": {
        "x-controller-name": "SaleController",
        "x-operation-name": "saleReport",
        "tags": [
          "SaleController"
        ],
        "responses": {
          "200": {
            "description": "Sale Report",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaleInput"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "SaleController.saleReport"
      }
    },
    "/salesReportFamily/detail": {
      "post": {
        "x-controller-name": "SaleController",
        "x-operation-name": "createReportDetail",
        "tags": [
          "SaleController"
        ],
        "responses": {
          "200": {
            "description": "Detalle de movimientos de saldo familiar en PDF (base64)",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewReportFamilyDetailPDF"
              }
            }
          }
        },
        "operationId": "SaleController.createReportDetail"
      }
    },
    "/salesReportFamily": {
      "post": {
        "x-controller-name": "SaleController",
        "x-operation-name": "createReport",
        "tags": [
          "SaleController"
        ],
        "responses": {
          "200": {
            "description": "Array of Sale model instances",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ReportWithRelations"
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewReportPDF"
              }
            }
          }
        },
        "operationId": "SaleController.createReport"
      }
    },
    "/salesresumen/report": {
      "post": {
        "x-controller-name": "SaleController",
        "x-operation-name": "findResumenReport",
        "tags": [
          "SaleController"
        ],
        "responses": {
          "200": {
            "description": "Reporte PDF de ventas por rango para administracion (base64)",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "userID"
                ],
                "properties": {
                  "filter": {
                    "type": "object"
                  },
                  "familyID": {
                    "type": "number"
                  },
                  "userID": {
                    "type": "number"
                  },
                  "startDate": {
                    "type": "string"
                  },
                  "endDate": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "required": true
        },
        "operationId": "SaleController.findResumenReport"
      }
    },
    "/salesresumen": {
      "get": {
        "x-controller-name": "SaleController",
        "x-operation-name": "findResumen",
        "tags": [
          "SaleController"
        ],
        "responses": {
          "200": {
            "description": "Array of Sale model instances",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SaleWithRelations"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Sale.Filter1"
                }
              }
            }
          }
        ],
        "operationId": "SaleController.findResumen"
      }
    },
    "/user/generate-code/{email}": {
      "get": {
        "x-controller-name": "UserController",
        "x-operation-name": "newPassword",
        "tags": [
          "UserController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "User CODE Email send success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "email",
            "in": "path",
            "schema": {
              "type": "string"
            },
            "required": true
          }
        ],
        "operationId": "UserController.newPassword"
      }
    },
    "/user/validate-code/{code}": {
      "patch": {
        "x-controller-name": "UserController",
        "x-operation-name": "validateCode",
        "tags": [
          "UserController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "User Code Validate success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "code",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "password"
                ],
                "properties": {
                  "password": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "description": "Required input for login",
          "required": true,
          "x-parameter-index": 1
        },
        "operationId": "UserController.validateCode"
      }
    },
    "/users/count": {
      "get": {
        "x-controller-name": "UserController",
        "x-operation-name": "count",
        "tags": [
          "UserController"
        ],
        "responses": {
          "200": {
            "description": "User model count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "User.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<User>"
                }
              }
            }
          }
        ],
        "operationId": "UserController.count"
      }
    },
    "/users/login": {
      "post": {
        "x-controller-name": "LoginController",
        "x-operation-name": "login",
        "tags": [
          "LoginController"
        ],
        "responses": {
          "200": {
            "description": "Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "token": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "Email",
                  "Password"
                ],
                "properties": {
                  "Email": {
                    "type": "string",
                    "format": "email"
                  },
                  "Password": {
                    "type": "string",
                    "minLength": 8
                  }
                }
              }
            }
          },
          "description": "The input of login function",
          "required": true
        },
        "operationId": "LoginController.login"
      }
    },
    "/users/{id}/checkouts": {
      "post": {
        "x-controller-name": "UserCheckoutController",
        "x-operation-name": "create",
        "tags": [
          "UserCheckoutController"
        ],
        "responses": {
          "200": {
            "description": "User model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Checkout"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewCheckoutInUser"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "UserCheckoutController.create"
      },
      "patch": {
        "x-controller-name": "UserCheckoutController",
        "x-operation-name": "patch",
        "tags": [
          "UserCheckoutController"
        ],
        "responses": {
          "200": {
            "description": "User.Checkout PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Checkout.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Checkout>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CheckoutPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "UserCheckoutController.patch"
      },
      "get": {
        "x-controller-name": "UserCheckoutController",
        "x-operation-name": "find",
        "tags": [
          "UserCheckoutController"
        ],
        "responses": {
          "200": {
            "description": "Array of User has many Checkout",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Checkout"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          }
        ],
        "operationId": "UserCheckoutController.find"
      },
      "delete": {
        "x-controller-name": "UserCheckoutController",
        "x-operation-name": "delete",
        "tags": [
          "UserCheckoutController"
        ],
        "responses": {
          "200": {
            "description": "User.Checkout DELETE success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Checkout.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Checkout>"
                }
              }
            }
          }
        ],
        "operationId": "UserCheckoutController.delete"
      }
    },
    "/users/{id}/families": {
      "post": {
        "x-controller-name": "UserFamilyController",
        "x-operation-name": "create",
        "tags": [
          "UserFamilyController"
        ],
        "responses": {
          "200": {
            "description": "User model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Family"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewFamilyInUser"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "UserFamilyController.create"
      },
      "patch": {
        "x-controller-name": "UserFamilyController",
        "x-operation-name": "patch",
        "tags": [
          "UserFamilyController"
        ],
        "responses": {
          "200": {
            "description": "User.Family PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Family.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Family>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/FamilyPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "UserFamilyController.patch"
      },
      "get": {
        "x-controller-name": "UserFamilyController",
        "x-operation-name": "find",
        "tags": [
          "UserFamilyController"
        ],
        "responses": {
          "200": {
            "description": "Array of User has many Family",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Family"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          },
          {
            "name": "includeInactive",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "operationId": "UserFamilyController.find"
      },
      "delete": {
        "x-controller-name": "UserFamilyController",
        "x-operation-name": "delete",
        "tags": [
          "UserFamilyController"
        ],
        "responses": {
          "200": {
            "description": "User.Family DELETE success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Family.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Family>"
                }
              }
            }
          }
        ],
        "operationId": "UserFamilyController.delete"
      }
    },
    "/users/{id}/reloads": {
      "post": {
        "x-controller-name": "UserReloadController",
        "x-operation-name": "create",
        "tags": [
          "UserReloadController"
        ],
        "responses": {
          "200": {
            "description": "User model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Reload"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewReloadInUser"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "UserReloadController.create"
      },
      "patch": {
        "x-controller-name": "UserReloadController",
        "x-operation-name": "patch",
        "tags": [
          "UserReloadController"
        ],
        "responses": {
          "200": {
            "description": "User.Reload PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Reload.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Reload>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ReloadPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "UserReloadController.patch"
      },
      "get": {
        "x-controller-name": "UserReloadController",
        "x-operation-name": "find",
        "tags": [
          "UserReloadController"
        ],
        "responses": {
          "200": {
            "description": "Array of User has many Reload",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Reload"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          }
        ],
        "operationId": "UserReloadController.find"
      },
      "delete": {
        "x-controller-name": "UserReloadController",
        "x-operation-name": "delete",
        "tags": [
          "UserReloadController"
        ],
        "responses": {
          "200": {
            "description": "User.Reload DELETE success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Reload.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Reload>"
                }
              }
            }
          }
        ],
        "operationId": "UserReloadController.delete"
      }
    },
    "/users/{id}/sales": {
      "post": {
        "x-controller-name": "UserSaleController",
        "x-operation-name": "create",
        "tags": [
          "UserSaleController"
        ],
        "responses": {
          "200": {
            "description": "User model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Sale"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewSaleInUser"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "UserSaleController.create"
      },
      "patch": {
        "x-controller-name": "UserSaleController",
        "x-operation-name": "patch",
        "tags": [
          "UserSaleController"
        ],
        "responses": {
          "200": {
            "description": "User.Sale PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Sale.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Sale>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SalePartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "UserSaleController.patch"
      },
      "get": {
        "x-controller-name": "UserSaleController",
        "x-operation-name": "find",
        "tags": [
          "UserSaleController"
        ],
        "responses": {
          "200": {
            "description": "Array of User has many Sale",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Sale"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          }
        ],
        "operationId": "UserSaleController.find"
      },
      "delete": {
        "x-controller-name": "UserSaleController",
        "x-operation-name": "delete",
        "tags": [
          "UserSaleController"
        ],
        "responses": {
          "200": {
            "description": "User.Sale DELETE success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Sale.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<Sale>"
                }
              }
            }
          }
        ],
        "operationId": "UserSaleController.delete"
      }
    },
    "/users/{id}": {
      "put": {
        "x-controller-name": "UserController",
        "x-operation-name": "replaceById",
        "tags": [
          "UserController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "User PUT success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/User"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "UserController.replaceById"
      },
      "patch": {
        "x-controller-name": "UserController",
        "x-operation-name": "updateById",
        "tags": [
          "UserController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "User PATCH success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UserPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "UserController.updateById"
      },
      "get": {
        "x-controller-name": "UserController",
        "x-operation-name": "findById",
        "tags": [
          "UserController"
        ],
        "responses": {
          "200": {
            "description": "User model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserWithRelations"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User.Filter"
                }
              }
            }
          }
        ],
        "operationId": "UserController.findById"
      },
      "delete": {
        "x-controller-name": "UserController",
        "x-operation-name": "deleteById",
        "tags": [
          "UserController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "User DELETE success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "UserController.deleteById"
      }
    },
    "/users": {
      "post": {
        "x-controller-name": "UserController",
        "x-operation-name": "create",
        "tags": [
          "UserController"
        ],
        "responses": {
          "200": {
            "description": "User model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewUser"
              }
            }
          }
        },
        "operationId": "UserController.create"
      },
      "patch": {
        "x-controller-name": "UserController",
        "x-operation-name": "updateAll",
        "tags": [
          "UserController"
        ],
        "responses": {
          "200": {
            "description": "User PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "User.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<User>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UserPartial"
              }
            }
          }
        },
        "operationId": "UserController.updateAll"
      },
      "get": {
        "x-controller-name": "UserController",
        "x-operation-name": "find",
        "tags": [
          "UserController"
        ],
        "responses": {
          "200": {
            "description": "Array of User model instances",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/UserWithRelations"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User.Filter1"
                }
              }
            }
          }
        ],
        "operationId": "UserController.find"
      }
    },
    "/users-profile-picture/{id}": {
      "patch": {
        "x-controller-name": "UserController",
        "x-operation-name": "updateUserPictureById",
        "tags": [
          "UserController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "User profile picture PATCH success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "x-parser": "stream",
              "schema": {
                "type": "object"
              }
            }
          },
          "description": "multipart/form-data value.",
          "required": true,
          "x-parameter-index": 1
        },
        "operationId": "UserController.updateUserPictureById"
      }
    },
    "/weekly-menus/count": {
      "get": {
        "x-controller-name": "WeeklyMenuController",
        "x-operation-name": "count",
        "tags": [
          "WeeklyMenuController"
        ],
        "responses": {
          "200": {
            "description": "WeeklyMenu model count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "WeeklyMenu.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<WeeklyMenu>"
                }
              }
            }
          }
        ],
        "operationId": "WeeklyMenuController.count"
      }
    },
    "/weekly-menus/last-week": {
      "get": {
        "x-controller-name": "WeeklyMenuController",
        "x-operation-name": "lastWeek",
        "tags": [
          "WeeklyMenuController"
        ],
        "responses": {
          "200": {
            "description": "WeeklyMenu model count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "WeeklyMenu.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<WeeklyMenu>"
                }
              }
            }
          }
        ],
        "operationId": "WeeklyMenuController.lastWeek"
      }
    },
    "/weekly-menus/today": {
      "get": {
        "x-controller-name": "WeeklyMenuController",
        "x-operation-name": "today",
        "tags": [
          "WeeklyMenuController"
        ],
        "responses": {
          "200": {
            "description": "WeeklyMenu model count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "WeeklyMenu.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<WeeklyMenu>"
                }
              }
            }
          }
        ],
        "operationId": "WeeklyMenuController.today"
      }
    },
    "/weekly-menus/weekly-of-year": {
      "get": {
        "x-controller-name": "WeeklyMenuController",
        "x-operation-name": "getAllWeekOfYear",
        "tags": [
          "WeeklyMenuController"
        ],
        "responses": {
          "200": {
            "description": "WeeklyMenu model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WeeklyMenuWithRelations"
                }
              }
            }
          }
        },
        "operationId": "WeeklyMenuController.getAllWeekOfYear"
      }
    },
    "/weekly-menus/{id}/weekly-urls": {
      "post": {
        "x-controller-name": "WeeklyMenuWeeklyUrlController",
        "x-operation-name": "create",
        "tags": [
          "WeeklyMenuWeeklyUrlController"
        ],
        "responses": {
          "200": {
            "description": "WeeklyMenu model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WeeklyUrl"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewWeeklyUrlInWeeklyMenu"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "WeeklyMenuWeeklyUrlController.create"
      },
      "patch": {
        "x-controller-name": "WeeklyMenuWeeklyUrlController",
        "x-operation-name": "patch",
        "tags": [
          "WeeklyMenuWeeklyUrlController"
        ],
        "responses": {
          "200": {
            "description": "WeeklyMenu.WeeklyUrl PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "WeeklyUrl.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<WeeklyUrl>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WeeklyUrlPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "WeeklyMenuWeeklyUrlController.patch"
      },
      "get": {
        "x-controller-name": "WeeklyMenuWeeklyUrlController",
        "x-operation-name": "find",
        "tags": [
          "WeeklyMenuWeeklyUrlController"
        ],
        "responses": {
          "200": {
            "description": "Array of WeeklyMenu has many WeeklyUrl",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/WeeklyUrl"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          }
        ],
        "operationId": "WeeklyMenuWeeklyUrlController.find"
      },
      "delete": {
        "x-controller-name": "WeeklyMenuWeeklyUrlController",
        "x-operation-name": "delete",
        "tags": [
          "WeeklyMenuWeeklyUrlController"
        ],
        "responses": {
          "200": {
            "description": "WeeklyMenu.WeeklyUrl DELETE success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "WeeklyUrl.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<WeeklyUrl>"
                }
              }
            }
          }
        ],
        "operationId": "WeeklyMenuWeeklyUrlController.delete"
      }
    },
    "/weekly-menus/{weekly}/{title}": {
      "post": {
        "x-controller-name": "WeeklyMenuController",
        "x-operation-name": "create",
        "tags": [
          "WeeklyMenuController"
        ],
        "responses": {
          "200": {
            "description": "WeeklyMenu model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WeeklyMenu"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "weekly",
            "in": "path",
            "schema": {
              "type": "string"
            },
            "required": true
          },
          {
            "name": "title",
            "in": "path",
            "schema": {
              "type": "string"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "x-parser": "stream",
              "schema": {
                "type": "object"
              }
            }
          },
          "description": "multipart/form-data value.",
          "required": true,
          "x-parameter-index": 2
        },
        "operationId": "WeeklyMenuController.create"
      }
    },
    "/weekly-menus/{id}": {
      "put": {
        "x-controller-name": "WeeklyMenuController",
        "x-operation-name": "replaceById",
        "tags": [
          "WeeklyMenuController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "WeeklyMenu PUT success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WeeklyMenu"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "WeeklyMenuController.replaceById"
      },
      "patch": {
        "x-controller-name": "WeeklyMenuController",
        "x-operation-name": "updateById",
        "tags": [
          "WeeklyMenuController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "WeeklyMenu PATCH success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WeeklyMenuPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "WeeklyMenuController.updateById"
      },
      "get": {
        "x-controller-name": "WeeklyMenuController",
        "x-operation-name": "findById",
        "tags": [
          "WeeklyMenuController"
        ],
        "responses": {
          "200": {
            "description": "WeeklyMenu model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WeeklyMenuWithRelations"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WeeklyMenu.Filter"
                }
              }
            }
          }
        ],
        "operationId": "WeeklyMenuController.findById"
      },
      "delete": {
        "x-controller-name": "WeeklyMenuController",
        "x-operation-name": "deleteById",
        "tags": [
          "WeeklyMenuController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "WeeklyMenu DELETE success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "WeeklyMenuController.deleteById"
      }
    },
    "/weekly-menus": {
      "patch": {
        "x-controller-name": "WeeklyMenuController",
        "x-operation-name": "updateAll",
        "tags": [
          "WeeklyMenuController"
        ],
        "responses": {
          "200": {
            "description": "WeeklyMenu PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "WeeklyMenu.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<WeeklyMenu>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WeeklyMenuPartial"
              }
            }
          }
        },
        "operationId": "WeeklyMenuController.updateAll"
      },
      "get": {
        "x-controller-name": "WeeklyMenuController",
        "x-operation-name": "find",
        "tags": [
          "WeeklyMenuController"
        ],
        "responses": {
          "200": {
            "description": "Array of WeeklyMenu model instances",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/WeeklyMenuWithRelations"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WeeklyMenu.Filter1"
                }
              }
            }
          }
        ],
        "operationId": "WeeklyMenuController.find"
      }
    },
    "/weekly-urls/count": {
      "get": {
        "x-controller-name": "WeeklyUrlController",
        "x-operation-name": "count",
        "tags": [
          "WeeklyUrlController"
        ],
        "responses": {
          "200": {
            "description": "WeeklyUrl model count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "WeeklyUrl.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<WeeklyUrl>"
                }
              }
            }
          }
        ],
        "operationId": "WeeklyUrlController.count"
      }
    },
    "/weekly-urls/{id}": {
      "put": {
        "x-controller-name": "WeeklyUrlController",
        "x-operation-name": "replaceById",
        "tags": [
          "WeeklyUrlController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "WeeklyUrl PUT success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WeeklyUrl"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "WeeklyUrlController.replaceById"
      },
      "patch": {
        "x-controller-name": "WeeklyUrlController",
        "x-operation-name": "updateById",
        "tags": [
          "WeeklyUrlController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "WeeklyUrl PATCH success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "x-parser": "stream",
              "schema": {
                "type": "object"
              }
            }
          },
          "description": "multipart/form-data value.",
          "required": true,
          "x-parameter-index": 1
        },
        "operationId": "WeeklyUrlController.updateById"
      },
      "get": {
        "x-controller-name": "WeeklyUrlController",
        "x-operation-name": "findById",
        "tags": [
          "WeeklyUrlController"
        ],
        "responses": {
          "200": {
            "description": "WeeklyUrl model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WeeklyUrlWithRelations"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WeeklyUrl.Filter"
                }
              }
            }
          }
        ],
        "operationId": "WeeklyUrlController.findById"
      },
      "delete": {
        "x-controller-name": "WeeklyUrlController",
        "x-operation-name": "deleteById",
        "tags": [
          "WeeklyUrlController"
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "description": "WeeklyUrl DELETE success"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "number"
            },
            "required": true
          }
        ],
        "operationId": "WeeklyUrlController.deleteById"
      }
    },
    "/weekly-urls": {
      "post": {
        "x-controller-name": "WeeklyUrlController",
        "x-operation-name": "create",
        "tags": [
          "WeeklyUrlController"
        ],
        "responses": {
          "200": {
            "description": "WeeklyUrl model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WeeklyUrl"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewWeeklyUrl"
              }
            }
          }
        },
        "operationId": "WeeklyUrlController.create"
      },
      "patch": {
        "x-controller-name": "WeeklyUrlController",
        "x-operation-name": "updateAll",
        "tags": [
          "WeeklyUrlController"
        ],
        "responses": {
          "200": {
            "description": "WeeklyUrl PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/loopback.Count"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "WeeklyUrl.WhereFilter",
                  "additionalProperties": true,
                  "x-typescript-type": "@loopback/repository#Where<WeeklyUrl>"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WeeklyUrlPartial"
              }
            }
          }
        },
        "operationId": "WeeklyUrlController.updateAll"
      },
      "get": {
        "x-controller-name": "WeeklyUrlController",
        "x-operation-name": "find",
        "tags": [
          "WeeklyUrlController"
        ],
        "responses": {
          "200": {
            "description": "Array of WeeklyUrl model instances",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/WeeklyUrlWithRelations"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WeeklyUrl.Filter1"
                }
              }
            }
          }
        ],
        "operationId": "WeeklyUrlController.find"
      }
    }
  },
  "servers": [
    {
      "url": "https://systemapi.theloganscafe.com"
    }
  ],
  "components": {
    "schemas": {
      "WeeklyUrl": {
        "title": "WeeklyUrl",
        "type": "object",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Url": {
            "type": "string"
          },
          "eTag": {
            "type": "string"
          },
          "weeklyMenuId": {
            "type": "number"
          }
        },
        "required": [
          "Url",
          "eTag"
        ],
        "additionalProperties": false
      },
      "NewWeeklyUrl": {
        "title": "NewWeeklyUrl",
        "type": "object",
        "description": "(tsType: Omit<WeeklyUrl, 'ID'>, schemaOptions: { title: 'NewWeeklyUrl', exclude: [ 'ID' ] })",
        "properties": {
          "Url": {
            "type": "string"
          },
          "eTag": {
            "type": "string"
          },
          "weeklyMenuId": {
            "type": "number"
          }
        },
        "required": [
          "Url",
          "eTag"
        ],
        "additionalProperties": false,
        "x-typescript-type": "Omit<WeeklyUrl, 'ID'>"
      },
      "WeeklyUrlWithRelations": {
        "title": "WeeklyUrlWithRelations",
        "type": "object",
        "description": "(tsType: WeeklyUrlWithRelations, schemaOptions: { includeRelations: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Url": {
            "type": "string"
          },
          "eTag": {
            "type": "string"
          },
          "weeklyMenuId": {
            "type": "number"
          }
        },
        "required": [
          "Url",
          "eTag"
        ],
        "additionalProperties": false,
        "x-typescript-type": "WeeklyUrlWithRelations"
      },
      "WeeklyUrlPartial": {
        "title": "WeeklyUrlPartial",
        "type": "object",
        "description": "(tsType: Partial<WeeklyUrl>, schemaOptions: { partial: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Url": {
            "type": "string"
          },
          "eTag": {
            "type": "string"
          },
          "weeklyMenuId": {
            "type": "number"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "Partial<WeeklyUrl>"
      },
      "WeeklyMenu": {
        "title": "WeeklyMenu",
        "type": "object",
        "properties": {
          "ID": {
            "type": "number"
          },
          "week": {
            "type": "number"
          },
          "title": {
            "type": "string"
          },
          "year": {
            "type": "number"
          }
        },
        "required": [
          "week",
          "title",
          "year"
        ],
        "additionalProperties": false
      },
      "WeeklyMenuWithRelations": {
        "title": "WeeklyMenuWithRelations",
        "type": "object",
        "description": "(tsType: WeeklyMenuWithRelations, schemaOptions: { includeRelations: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "week": {
            "type": "number"
          },
          "title": {
            "type": "string"
          },
          "year": {
            "type": "number"
          },
          "weeklyUrls": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/WeeklyUrlWithRelations"
            }
          }
        },
        "required": [
          "week",
          "title",
          "year"
        ],
        "additionalProperties": false,
        "x-typescript-type": "WeeklyMenuWithRelations"
      },
      "WeeklyMenuPartial": {
        "title": "WeeklyMenuPartial",
        "type": "object",
        "description": "(tsType: Partial<WeeklyMenu>, schemaOptions: { partial: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "week": {
            "type": "number"
          },
          "title": {
            "type": "string"
          },
          "year": {
            "type": "number"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "Partial<WeeklyMenu>"
      },
      "NewWeeklyUrlInWeeklyMenu": {
        "title": "NewWeeklyUrlInWeeklyMenu",
        "type": "object",
        "description": "(tsType: @loopback/repository-json-schema#Optional<Omit<WeeklyUrl, 'ID'>, 'weeklyMenuId'>, schemaOptions: { title: 'NewWeeklyUrlInWeeklyMenu', exclude: [ 'ID' ], optional: [ 'weeklyMenuId' ] })",
        "properties": {
          "Url": {
            "type": "string"
          },
          "eTag": {
            "type": "string"
          },
          "weeklyMenuId": {
            "type": "number"
          }
        },
        "required": [
          "Url",
          "eTag"
        ],
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository-json-schema#Optional<Omit<WeeklyUrl, 'ID'>, 'weeklyMenuId'>"
      },
      "User": {
        "title": "User",
        "type": "object",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "LastName": {
            "type": "string"
          },
          "PhoneNumber": {
            "type": "string"
          },
          "Address": {
            "type": "string"
          },
          "Email": {
            "type": "string"
          },
          "Password": {
            "type": "string",
            "maxLength": 32,
            "minLength": 8
          },
          "UserType": {
            "type": "number"
          },
          "ProfileID": {
            "type": "number"
          },
          "RecuperationCode": {
            "type": "number"
          },
          "RecuperationCodeExpiresAt": {
            "type": "string",
            "format": "date-time"
          },
          "RecuperationAttempts": {
            "type": "number"
          },
          "State": {
            "type": "boolean"
          },
          "Settings": {
            "type": "string"
          },
          "Url": {
            "type": "string"
          }
        },
        "required": [
          "Name",
          "LastName",
          "PhoneNumber",
          "Email",
          "Password"
        ],
        "additionalProperties": false
      },
      "NewUser": {
        "title": "NewUser",
        "type": "object",
        "description": "(tsType: Omit<User, 'ID' | 'UserType' | 'ProfileID' | 'State' | 'RecuperationCode' | 'RecuperationCodeExpiresAt' | 'RecuperationAttempts'>, schemaOptions: { title: 'NewUser', exclude: [ 'ID', 'UserType', 'ProfileID', 'State', 'RecuperationCode', 'RecuperationCodeExpiresAt', 'RecuperationAttempts' ] })",
        "properties": {
          "Name": {
            "type": "string"
          },
          "LastName": {
            "type": "string"
          },
          "PhoneNumber": {
            "type": "string"
          },
          "Address": {
            "type": "string"
          },
          "Email": {
            "type": "string"
          },
          "Password": {
            "type": "string",
            "maxLength": 32,
            "minLength": 8
          },
          "Settings": {
            "type": "string"
          },
          "Url": {
            "type": "string"
          }
        },
        "required": [
          "Name",
          "LastName",
          "PhoneNumber",
          "Email",
          "Password"
        ],
        "additionalProperties": false,
        "x-typescript-type": "Omit<User, 'ID' | 'UserType' | 'ProfileID' | 'State' | 'RecuperationCode' | 'RecuperationCodeExpiresAt' | 'RecuperationAttempts'>"
      },
      "RolePermissionWithRelations": {
        "title": "RolePermissionWithRelations",
        "type": "object",
        "description": "(tsType: RolePermissionWithRelations, schemaOptions: { includeRelations: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "ProfileID": {
            "type": "number"
          },
          "UserType": {
            "type": "number"
          },
          "Permission": {
            "type": "string"
          },
          "Enabled": {
            "type": "boolean"
          },
          "profile": {
            "$ref": "#/components/schemas/ProfileWithRelations"
          },
          "foreignKey": {}
        },
        "required": [
          "Permission",
          "Enabled"
        ],
        "additionalProperties": false,
        "x-typescript-type": "RolePermissionWithRelations"
      },
      "ProfileWithRelations": {
        "title": "ProfileWithRelations",
        "type": "object",
        "description": "(tsType: ProfileWithRelations, schemaOptions: { includeRelations: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          },
          "State": {
            "type": "boolean"
          },
          "LegacyUserType": {
            "type": "number"
          },
          "users": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UserWithRelations"
            }
          },
          "permissions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RolePermissionWithRelations"
            }
          }
        },
        "required": [
          "Name"
        ],
        "additionalProperties": false,
        "x-typescript-type": "ProfileWithRelations"
      },
      "ReloadDetailWithRelations": {
        "title": "ReloadDetailWithRelations",
        "type": "object",
        "description": "(tsType: ReloadDetailWithRelations, schemaOptions: { includeRelations: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Amount": {
            "type": "number"
          },
          "reloadID": {
            "type": "number"
          },
          "familyID": {
            "type": "number"
          }
        },
        "required": [
          "Amount"
        ],
        "additionalProperties": false,
        "x-typescript-type": "ReloadDetailWithRelations"
      },
      "ReloadWithRelations": {
        "title": "ReloadWithRelations",
        "type": "object",
        "description": "(tsType: ReloadWithRelations, schemaOptions: { includeRelations: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "DateTime": {
            "type": "string",
            "format": "date-time"
          },
          "Amount": {
            "type": "number"
          },
          "transaction": {
            "type": "string"
          },
          "userID": {
            "type": "number"
          },
          "Charged": {
            "type": "number"
          },
          "result": {
            "type": "string"
          },
          "response": {
            "type": "string"
          },
          "payListId": {
            "type": "number"
          },
          "reloadDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ReloadDetailWithRelations"
            }
          }
        },
        "required": [
          "Amount"
        ],
        "additionalProperties": false,
        "x-typescript-type": "ReloadWithRelations"
      },
      "ListProductWithRelations": {
        "title": "ListProductWithRelations",
        "type": "object",
        "description": "(tsType: ListProductWithRelations, schemaOptions: { includeRelations: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "productId": {
            "type": "number"
          },
          "Quantity": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          },
          "Price": {
            "type": "number"
          },
          "Cost": {
            "type": "number"
          },
          "saleID": {
            "type": "number"
          }
        },
        "required": [
          "Name",
          "Price"
        ],
        "additionalProperties": false,
        "x-typescript-type": "ListProductWithRelations"
      },
      "AccountListWithRelations": {
        "title": "AccountListWithRelations",
        "type": "object",
        "description": "(tsType: AccountListWithRelations, schemaOptions: { includeRelations: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "AccountNumber": {
            "type": "string"
          },
          "Holder": {
            "type": "string"
          },
          "Type": {
            "type": "string"
          },
          "payLists": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PayListWithRelations"
            }
          }
        },
        "required": [
          "Name"
        ],
        "additionalProperties": false,
        "x-typescript-type": "AccountListWithRelations"
      },
      "PayTypeWithRelations": {
        "title": "PayTypeWithRelations",
        "type": "object",
        "description": "(tsType: PayTypeWithRelations, schemaOptions: { includeRelations: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "payLists": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PayListWithRelations"
            }
          }
        },
        "required": [
          "Name"
        ],
        "additionalProperties": false,
        "x-typescript-type": "PayTypeWithRelations"
      },
      "PayListWithRelations": {
        "title": "PayListWithRelations",
        "type": "object",
        "description": "(tsType: PayListWithRelations, schemaOptions: { includeRelations: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "accountListId": {
            "type": "number"
          },
          "payTypeId": {
            "type": "number"
          },
          "reloads": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ReloadWithRelations"
            }
          },
          "sales": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SaleWithRelations"
            }
          },
          "checkoutDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CheckoutDetailsWithRelations"
            }
          },
          "accountList": {
            "$ref": "#/components/schemas/AccountListWithRelations"
          },
          "foreignKey": {},
          "payType": {
            "$ref": "#/components/schemas/PayTypeWithRelations"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "PayListWithRelations"
      },
      "CheckoutDetailsWithRelations": {
        "title": "CheckoutDetailsWithRelations",
        "type": "object",
        "description": "(tsType: CheckoutDetailsWithRelations, schemaOptions: { includeRelations: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Amount": {
            "type": "number"
          },
          "checkoutId": {
            "type": "number"
          },
          "payListId": {
            "type": "number"
          },
          "payList": {
            "$ref": "#/components/schemas/PayListWithRelations"
          },
          "foreignKey": {},
          "sales": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SaleWithRelations"
            }
          }
        },
        "required": [
          "Amount"
        ],
        "additionalProperties": false,
        "x-typescript-type": "CheckoutDetailsWithRelations"
      },
      "SaleWithRelations": {
        "title": "SaleWithRelations",
        "type": "object",
        "description": "(tsType: SaleWithRelations, schemaOptions: { includeRelations: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Total": {
            "type": "number"
          },
          "TotalPay": {
            "type": "number"
          },
          "transaction": {
            "type": "string"
          },
          "DateTime": {
            "type": "string",
            "format": "date-time"
          },
          "userID": {
            "type": "number"
          },
          "DispatchStatus": {
            "type": "number"
          },
          "familyID": {
            "type": "number"
          },
          "saleStateId": {
            "type": "number"
          },
          "payListId": {
            "type": "number"
          },
          "checkoutDetailsId": {
            "type": "number"
          },
          "dispatchId": {
            "type": "number"
          },
          "listProducts": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ListProductWithRelations"
            }
          },
          "checkoutDetails": {
            "$ref": "#/components/schemas/CheckoutDetailsWithRelations"
          },
          "foreignKey": {}
        },
        "required": [
          "Total"
        ],
        "additionalProperties": false,
        "x-typescript-type": "SaleWithRelations"
      },
      "FamilyWithRelations": {
        "title": "FamilyWithRelations",
        "type": "object",
        "description": "(tsType: FamilyWithRelations, schemaOptions: { includeRelations: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "LastName": {
            "type": "string"
          },
          "Section": {
            "type": "string"
          },
          "Birthdate": {
            "type": "string",
            "format": "date-time"
          },
          "IDNumber": {
            "type": "string"
          },
          "Email": {
            "type": "string"
          },
          "PhoneNumber": {
            "type": "string"
          },
          "Balance": {
            "type": "number"
          },
          "Comment": {
            "type": "string"
          },
          "Position": {
            "type": "string"
          },
          "Department": {
            "type": "string"
          },
          "CutDate": {
            "type": "string",
            "format": "date-time"
          },
          "DebitState": {
            "type": "number"
          },
          "userID": {
            "type": "number"
          },
          "degreeID": {
            "type": "number"
          },
          "Url": {
            "type": "string"
          },
          "State": {
            "type": "boolean"
          },
          "NegativeSales": {
            "type": "boolean"
          },
          "sales": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SaleWithRelations"
            }
          },
          "reloadDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ReloadDetailWithRelations"
            }
          }
        },
        "required": [
          "Name",
          "LastName",
          "Balance"
        ],
        "additionalProperties": false,
        "x-typescript-type": "FamilyWithRelations"
      },
      "CheckoutWithRelations": {
        "title": "CheckoutWithRelations",
        "type": "object",
        "description": "(tsType: CheckoutWithRelations, schemaOptions: { includeRelations: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "startDate": {
            "type": "string",
            "format": "date-time"
          },
          "endDate": {
            "type": "string",
            "format": "date-time"
          },
          "userId": {
            "type": "number"
          },
          "state": {
            "type": "number"
          },
          "dispatchId": {
            "type": "number"
          },
          "checkoutDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CheckoutDetailsWithRelations"
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "CheckoutWithRelations"
      },
      "UserWithRelations": {
        "title": "UserWithRelations",
        "type": "object",
        "description": "(tsType: UserWithRelations, schemaOptions: { includeRelations: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "LastName": {
            "type": "string"
          },
          "PhoneNumber": {
            "type": "string"
          },
          "Address": {
            "type": "string"
          },
          "Email": {
            "type": "string"
          },
          "Password": {
            "type": "string",
            "maxLength": 32,
            "minLength": 8
          },
          "UserType": {
            "type": "number"
          },
          "ProfileID": {
            "type": "number"
          },
          "RecuperationCode": {
            "type": "number"
          },
          "RecuperationCodeExpiresAt": {
            "type": "string",
            "format": "date-time"
          },
          "RecuperationAttempts": {
            "type": "number"
          },
          "State": {
            "type": "boolean"
          },
          "Settings": {
            "type": "string"
          },
          "Url": {
            "type": "string"
          },
          "profile": {
            "$ref": "#/components/schemas/ProfileWithRelations"
          },
          "foreignKey": {},
          "families": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FamilyWithRelations"
            }
          },
          "reloads": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ReloadWithRelations"
            }
          },
          "sales": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SaleWithRelations"
            }
          },
          "checkouts": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CheckoutWithRelations"
            }
          }
        },
        "required": [
          "Name",
          "LastName",
          "PhoneNumber",
          "Email",
          "Password"
        ],
        "additionalProperties": false,
        "x-typescript-type": "UserWithRelations"
      },
      "UserPartial": {
        "title": "UserPartial",
        "type": "object",
        "description": "(tsType: Partial<User>, schemaOptions: { partial: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "LastName": {
            "type": "string"
          },
          "PhoneNumber": {
            "type": "string"
          },
          "Address": {
            "type": "string"
          },
          "Email": {
            "type": "string"
          },
          "Password": {
            "type": "string",
            "maxLength": 32,
            "minLength": 8
          },
          "UserType": {
            "type": "number"
          },
          "ProfileID": {
            "type": "number"
          },
          "RecuperationCode": {
            "type": "number"
          },
          "RecuperationCodeExpiresAt": {
            "type": "string",
            "format": "date-time"
          },
          "RecuperationAttempts": {
            "type": "number"
          },
          "State": {
            "type": "boolean"
          },
          "Settings": {
            "type": "string"
          },
          "Url": {
            "type": "string"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "Partial<User>"
      },
      "Sale": {
        "title": "Sale",
        "type": "object",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Total": {
            "type": "number"
          },
          "TotalPay": {
            "type": "number"
          },
          "transaction": {
            "type": "string"
          },
          "DateTime": {
            "type": "string",
            "format": "date-time"
          },
          "userID": {
            "type": "number"
          },
          "DispatchStatus": {
            "type": "number"
          },
          "familyID": {
            "type": "number"
          },
          "saleStateId": {
            "type": "number"
          },
          "payListId": {
            "type": "number"
          },
          "checkoutDetailsId": {
            "type": "number"
          },
          "dispatchId": {
            "type": "number"
          }
        },
        "required": [
          "Total"
        ],
        "additionalProperties": false
      },
      "NewSaleInUser": {
        "title": "NewSaleInUser",
        "type": "object",
        "description": "(tsType: @loopback/repository-json-schema#Optional<Omit<Sale, 'ID'>, 'userID'>, schemaOptions: { title: 'NewSaleInUser', exclude: [ 'ID' ], optional: [ 'userID' ] })",
        "properties": {
          "Total": {
            "type": "number"
          },
          "TotalPay": {
            "type": "number"
          },
          "transaction": {
            "type": "string"
          },
          "DateTime": {
            "type": "string",
            "format": "date-time"
          },
          "userID": {
            "type": "number"
          },
          "DispatchStatus": {
            "type": "number"
          },
          "familyID": {
            "type": "number"
          },
          "saleStateId": {
            "type": "number"
          },
          "payListId": {
            "type": "number"
          },
          "checkoutDetailsId": {
            "type": "number"
          },
          "dispatchId": {
            "type": "number"
          }
        },
        "required": [
          "Total"
        ],
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository-json-schema#Optional<Omit<Sale, 'ID'>, 'userID'>"
      },
      "SalePartial": {
        "title": "SalePartial",
        "type": "object",
        "description": "(tsType: Partial<Sale>, schemaOptions: { partial: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Total": {
            "type": "number"
          },
          "TotalPay": {
            "type": "number"
          },
          "transaction": {
            "type": "string"
          },
          "DateTime": {
            "type": "string",
            "format": "date-time"
          },
          "userID": {
            "type": "number"
          },
          "DispatchStatus": {
            "type": "number"
          },
          "familyID": {
            "type": "number"
          },
          "saleStateId": {
            "type": "number"
          },
          "payListId": {
            "type": "number"
          },
          "checkoutDetailsId": {
            "type": "number"
          },
          "dispatchId": {
            "type": "number"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "Partial<Sale>"
      },
      "Reload": {
        "title": "Reload",
        "type": "object",
        "properties": {
          "ID": {
            "type": "number"
          },
          "DateTime": {
            "type": "string",
            "format": "date-time"
          },
          "Amount": {
            "type": "number"
          },
          "transaction": {
            "type": "string"
          },
          "userID": {
            "type": "number"
          },
          "Charged": {
            "type": "number"
          },
          "result": {
            "type": "string"
          },
          "response": {
            "type": "string"
          },
          "payListId": {
            "type": "number"
          }
        },
        "required": [
          "Amount"
        ],
        "additionalProperties": false
      },
      "NewReloadInUser": {
        "title": "NewReloadInUser",
        "type": "object",
        "description": "(tsType: @loopback/repository-json-schema#Optional<Omit<Reload, 'ID'>, 'userID'>, schemaOptions: { title: 'NewReloadInUser', exclude: [ 'ID' ], optional: [ 'userID' ] })",
        "properties": {
          "DateTime": {
            "type": "string",
            "format": "date-time"
          },
          "Amount": {
            "type": "number"
          },
          "transaction": {
            "type": "string"
          },
          "userID": {
            "type": "number"
          },
          "Charged": {
            "type": "number"
          },
          "result": {
            "type": "string"
          },
          "response": {
            "type": "string"
          },
          "payListId": {
            "type": "number"
          }
        },
        "required": [
          "Amount"
        ],
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository-json-schema#Optional<Omit<Reload, 'ID'>, 'userID'>"
      },
      "ReloadPartial": {
        "title": "ReloadPartial",
        "type": "object",
        "description": "(tsType: Partial<Reload>, schemaOptions: { partial: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "DateTime": {
            "type": "string",
            "format": "date-time"
          },
          "Amount": {
            "type": "number"
          },
          "transaction": {
            "type": "string"
          },
          "userID": {
            "type": "number"
          },
          "Charged": {
            "type": "number"
          },
          "result": {
            "type": "string"
          },
          "response": {
            "type": "string"
          },
          "payListId": {
            "type": "number"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "Partial<Reload>"
      },
      "Family": {
        "title": "Family",
        "type": "object",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "LastName": {
            "type": "string"
          },
          "Section": {
            "type": "string"
          },
          "Birthdate": {
            "type": "string",
            "format": "date-time"
          },
          "IDNumber": {
            "type": "string"
          },
          "Email": {
            "type": "string"
          },
          "PhoneNumber": {
            "type": "string"
          },
          "Balance": {
            "type": "number"
          },
          "Comment": {
            "type": "string"
          },
          "Position": {
            "type": "string"
          },
          "Department": {
            "type": "string"
          },
          "CutDate": {
            "type": "string",
            "format": "date-time"
          },
          "DebitState": {
            "type": "number"
          },
          "userID": {
            "type": "number"
          },
          "degreeID": {
            "type": "number"
          },
          "Url": {
            "type": "string"
          },
          "State": {
            "type": "boolean"
          },
          "NegativeSales": {
            "type": "boolean"
          }
        },
        "required": [
          "Name",
          "LastName",
          "Balance"
        ],
        "additionalProperties": false
      },
      "NewFamilyInUser": {
        "title": "NewFamilyInUser",
        "type": "object",
        "description": "(tsType: @loopback/repository-json-schema#Optional<Omit<Family, 'ID'>, 'userID'>, schemaOptions: { title: 'NewFamilyInUser', exclude: [ 'ID' ], optional: [ 'userID' ] })",
        "properties": {
          "Name": {
            "type": "string"
          },
          "LastName": {
            "type": "string"
          },
          "Section": {
            "type": "string"
          },
          "Birthdate": {
            "type": "string",
            "format": "date-time"
          },
          "IDNumber": {
            "type": "string"
          },
          "Email": {
            "type": "string"
          },
          "PhoneNumber": {
            "type": "string"
          },
          "Balance": {
            "type": "number"
          },
          "Comment": {
            "type": "string"
          },
          "Position": {
            "type": "string"
          },
          "Department": {
            "type": "string"
          },
          "CutDate": {
            "type": "string",
            "format": "date-time"
          },
          "DebitState": {
            "type": "number"
          },
          "userID": {
            "type": "number"
          },
          "degreeID": {
            "type": "number"
          },
          "Url": {
            "type": "string"
          },
          "State": {
            "type": "boolean"
          },
          "NegativeSales": {
            "type": "boolean"
          }
        },
        "required": [
          "Name",
          "LastName",
          "Balance"
        ],
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository-json-schema#Optional<Omit<Family, 'ID'>, 'userID'>"
      },
      "FamilyPartial": {
        "title": "FamilyPartial",
        "type": "object",
        "description": "(tsType: Partial<Family>, schemaOptions: { partial: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "LastName": {
            "type": "string"
          },
          "Section": {
            "type": "string"
          },
          "Birthdate": {
            "type": "string",
            "format": "date-time"
          },
          "IDNumber": {
            "type": "string"
          },
          "Email": {
            "type": "string"
          },
          "PhoneNumber": {
            "type": "string"
          },
          "Balance": {
            "type": "number"
          },
          "Comment": {
            "type": "string"
          },
          "Position": {
            "type": "string"
          },
          "Department": {
            "type": "string"
          },
          "CutDate": {
            "type": "string",
            "format": "date-time"
          },
          "DebitState": {
            "type": "number"
          },
          "userID": {
            "type": "number"
          },
          "degreeID": {
            "type": "number"
          },
          "Url": {
            "type": "string"
          },
          "State": {
            "type": "boolean"
          },
          "NegativeSales": {
            "type": "boolean"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "Partial<Family>"
      },
      "Checkout": {
        "title": "Checkout",
        "type": "object",
        "properties": {
          "ID": {
            "type": "number"
          },
          "startDate": {
            "type": "string",
            "format": "date-time"
          },
          "endDate": {
            "type": "string",
            "format": "date-time"
          },
          "userId": {
            "type": "number"
          },
          "state": {
            "type": "number"
          },
          "dispatchId": {
            "type": "number"
          }
        },
        "additionalProperties": false
      },
      "NewCheckoutInUser": {
        "title": "NewCheckoutInUser",
        "type": "object",
        "description": "(tsType: @loopback/repository-json-schema#Optional<Omit<Checkout, 'ID'>, 'userId'>, schemaOptions: { title: 'NewCheckoutInUser', exclude: [ 'ID' ], optional: [ 'userId' ] })",
        "properties": {
          "startDate": {
            "type": "string",
            "format": "date-time"
          },
          "endDate": {
            "type": "string",
            "format": "date-time"
          },
          "userId": {
            "type": "number"
          },
          "state": {
            "type": "number"
          },
          "dispatchId": {
            "type": "number"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository-json-schema#Optional<Omit<Checkout, 'ID'>, 'userId'>"
      },
      "CheckoutPartial": {
        "title": "CheckoutPartial",
        "type": "object",
        "description": "(tsType: Partial<Checkout>, schemaOptions: { partial: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "startDate": {
            "type": "string",
            "format": "date-time"
          },
          "endDate": {
            "type": "string",
            "format": "date-time"
          },
          "userId": {
            "type": "number"
          },
          "state": {
            "type": "number"
          },
          "dispatchId": {
            "type": "number"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "Partial<Checkout>"
      },
      "ListProductInput": {
        "title": "ListProductInput",
        "type": "object",
        "properties": {
          "productId": {
            "type": "number"
          },
          "quantity": {
            "type": "number"
          }
        },
        "required": [
          "productId",
          "quantity"
        ],
        "additionalProperties": true
      },
      "SaleInput": {
        "title": "SaleInput",
        "type": "object",
        "properties": {
          "familyID": {
            "type": "number"
          },
          "transaction": {
            "type": "string"
          },
          "payListId": {
            "type": "number"
          },
          "listProducts": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ListProductInput"
            }
          }
        },
        "required": [
          "payListId",
          "listProducts"
        ],
        "additionalProperties": true
      },
      "NewSale": {
        "title": "NewSale",
        "type": "object",
        "description": "(tsType: SaleInput, schemaOptions: { title: 'NewSale' })",
        "properties": {
          "familyID": {
            "type": "number"
          },
          "transaction": {
            "type": "string"
          },
          "payListId": {
            "type": "number"
          },
          "listProducts": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ListProductInput"
            }
          }
        },
        "required": [
          "payListId",
          "listProducts"
        ],
        "additionalProperties": true,
        "x-typescript-type": "SaleInput"
      },
      "ReportWithRelations": {
        "title": "ReportWithRelations",
        "type": "object",
        "description": "(tsType: ReportWithRelations, schemaOptions: { includeRelations: true })",
        "properties": {
          "familyID": {
            "type": "number"
          },
          "startDate": {
            "type": "string"
          },
          "endDate": {
            "type": "string"
          }
        },
        "required": [
          "familyID",
          "startDate",
          "endDate"
        ],
        "additionalProperties": true,
        "x-typescript-type": "ReportWithRelations"
      },
      "NewReportPDF": {
        "title": "NewReportPDF",
        "type": "object",
        "description": "(tsType: Report, schemaOptions: { title: 'NewReportPDF' })",
        "properties": {
          "familyID": {
            "type": "number"
          },
          "startDate": {
            "type": "string"
          },
          "endDate": {
            "type": "string"
          }
        },
        "required": [
          "familyID",
          "startDate",
          "endDate"
        ],
        "additionalProperties": true,
        "x-typescript-type": "Report"
      },
      "Report": {
        "title": "Report",
        "type": "object",
        "properties": {
          "familyID": {
            "type": "number"
          },
          "startDate": {
            "type": "string"
          },
          "endDate": {
            "type": "string"
          }
        },
        "required": [
          "familyID",
          "startDate",
          "endDate"
        ],
        "additionalProperties": true
      },
      "NewReportFamilyDetailPDF": {
        "title": "NewReportFamilyDetailPDF",
        "type": "object",
        "description": "(tsType: Report, schemaOptions: { title: 'NewReportFamilyDetailPDF' })",
        "properties": {
          "familyID": {
            "type": "number"
          },
          "startDate": {
            "type": "string"
          },
          "endDate": {
            "type": "string"
          }
        },
        "required": [
          "familyID",
          "startDate",
          "endDate"
        ],
        "additionalProperties": true,
        "x-typescript-type": "Report"
      },
      "SaleInputPartial": {
        "title": "SaleInputPartial",
        "type": "object",
        "description": "(tsType: Partial<SaleInput>, schemaOptions: { partial: true })",
        "properties": {
          "familyID": {
            "type": "number"
          },
          "transaction": {
            "type": "string"
          },
          "payListId": {
            "type": "number"
          },
          "listProducts": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ListProductInput"
            }
          }
        },
        "additionalProperties": true,
        "x-typescript-type": "Partial<SaleInput>"
      },
      "SaleState": {
        "title": "SaleState",
        "type": "object",
        "properties": {
          "ID": {
            "type": "number"
          },
          "name": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          }
        },
        "required": [
          "name"
        ],
        "additionalProperties": false
      },
      "NewSaleState": {
        "title": "NewSaleState",
        "type": "object",
        "description": "(tsType: Omit<SaleState, 'ID'>, schemaOptions: { title: 'NewSaleState', exclude: [ 'ID' ] })",
        "properties": {
          "name": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          }
        },
        "required": [
          "name"
        ],
        "additionalProperties": false,
        "x-typescript-type": "Omit<SaleState, 'ID'>"
      },
      "SaleStateWithRelations": {
        "title": "SaleStateWithRelations",
        "type": "object",
        "description": "(tsType: SaleStateWithRelations, schemaOptions: { includeRelations: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "name": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          },
          "sales": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SaleWithRelations"
            }
          }
        },
        "required": [
          "name"
        ],
        "additionalProperties": false,
        "x-typescript-type": "SaleStateWithRelations"
      },
      "SaleStatePartial": {
        "title": "SaleStatePartial",
        "type": "object",
        "description": "(tsType: Partial<SaleState>, schemaOptions: { partial: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "name": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "Partial<SaleState>"
      },
      "NewSaleInSaleState": {
        "title": "NewSaleInSaleState",
        "type": "object",
        "description": "(tsType: @loopback/repository-json-schema#Optional<Omit<Sale, 'ID'>, 'saleStateId'>, schemaOptions: { title: 'NewSaleInSaleState', exclude: [ 'ID' ], optional: [ 'saleStateId' ] })",
        "properties": {
          "Total": {
            "type": "number"
          },
          "TotalPay": {
            "type": "number"
          },
          "transaction": {
            "type": "string"
          },
          "DateTime": {
            "type": "string",
            "format": "date-time"
          },
          "userID": {
            "type": "number"
          },
          "DispatchStatus": {
            "type": "number"
          },
          "familyID": {
            "type": "number"
          },
          "saleStateId": {
            "type": "number"
          },
          "payListId": {
            "type": "number"
          },
          "checkoutDetailsId": {
            "type": "number"
          },
          "dispatchId": {
            "type": "number"
          }
        },
        "required": [
          "Total"
        ],
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository-json-schema#Optional<Omit<Sale, 'ID'>, 'saleStateId'>"
      },
      "ListProduct": {
        "title": "ListProduct",
        "type": "object",
        "properties": {
          "ID": {
            "type": "number"
          },
          "productId": {
            "type": "number"
          },
          "Quantity": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          },
          "Price": {
            "type": "number"
          },
          "Cost": {
            "type": "number"
          },
          "saleID": {
            "type": "number"
          }
        },
        "required": [
          "Name",
          "Price"
        ],
        "additionalProperties": false
      },
      "NewListProductInSale": {
        "title": "NewListProductInSale",
        "type": "object",
        "description": "(tsType: @loopback/repository-json-schema#Optional<Omit<ListProduct, 'ID'>, 'saleID'>, schemaOptions: { title: 'NewListProductInSale', exclude: [ 'ID' ], optional: [ 'saleID' ] })",
        "properties": {
          "productId": {
            "type": "number"
          },
          "Quantity": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          },
          "Price": {
            "type": "number"
          },
          "Cost": {
            "type": "number"
          },
          "saleID": {
            "type": "number"
          }
        },
        "required": [
          "Name",
          "Price"
        ],
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository-json-schema#Optional<Omit<ListProduct, 'ID'>, 'saleID'>"
      },
      "ListProductPartial": {
        "title": "ListProductPartial",
        "type": "object",
        "description": "(tsType: Partial<ListProduct>, schemaOptions: { partial: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "productId": {
            "type": "number"
          },
          "Quantity": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          },
          "Price": {
            "type": "number"
          },
          "Cost": {
            "type": "number"
          },
          "saleID": {
            "type": "number"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "Partial<ListProduct>"
      },
      "CheckoutDetails": {
        "title": "CheckoutDetails",
        "type": "object",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Amount": {
            "type": "number"
          },
          "checkoutId": {
            "type": "number"
          },
          "payListId": {
            "type": "number"
          }
        },
        "required": [
          "Amount"
        ],
        "additionalProperties": false
      },
      "BillTo": {
        "title": "BillTo",
        "type": "object",
        "properties": {
          "Name": {
            "type": "string"
          },
          "LastName": {
            "type": "string"
          },
          "address1": {
            "type": "string"
          },
          "address2": {
            "type": "string"
          },
          "locality": {
            "type": "string"
          },
          "AdministrativeArea": {
            "type": "string"
          },
          "postalCode": {
            "type": "string"
          },
          "country": {
            "type": "string"
          },
          "email": {
            "type": "string"
          },
          "phoneNumber": {
            "type": "string"
          }
        },
        "required": [
          "Name",
          "LastName",
          "address1",
          "AdministrativeArea",
          "postalCode",
          "country",
          "email"
        ],
        "additionalProperties": true
      },
      "CardInformation": {
        "title": "CardInformation",
        "type": "object",
        "properties": {
          "Number": {
            "type": "number"
          },
          "expirationMonth": {
            "type": "number",
            "maximum": 12,
            "minimum": 1
          },
          "expirationYear": {
            "type": "number"
          },
          "securityCode": {
            "type": "string"
          },
          "type": {
            "type": "string"
          }
        },
        "required": [
          "Number",
          "expirationMonth",
          "expirationYear",
          "securityCode"
        ],
        "additionalProperties": true
      },
      "ReloadDetail": {
        "title": "ReloadDetail",
        "type": "object",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Amount": {
            "type": "number"
          },
          "reloadID": {
            "type": "number"
          },
          "familyID": {
            "type": "number"
          }
        },
        "required": [
          "Amount"
        ],
        "additionalProperties": false
      },
      "NewReload": {
        "title": "NewReload",
        "type": "object",
        "description": "(tsType: ReloadInput, schemaOptions: { title: 'NewReload' })",
        "properties": {
          "idempotencyKey": {
            "type": "string"
          },
          "userID": {
            "type": "number"
          },
          "BillTo": {
            "$ref": "#/components/schemas/BillTo"
          },
          "CardInfo": {
            "$ref": "#/components/schemas/CardInformation"
          },
          "ReloadDetail": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ReloadDetail"
            }
          }
        },
        "additionalProperties": true,
        "x-typescript-type": "ReloadInput"
      },
      "ReloadInput": {
        "title": "ReloadInput",
        "type": "object",
        "properties": {
          "idempotencyKey": {
            "type": "string"
          },
          "userID": {
            "type": "number"
          },
          "BillTo": {
            "$ref": "#/components/schemas/BillTo"
          },
          "CardInfo": {
            "$ref": "#/components/schemas/CardInformation"
          },
          "ReloadDetail": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ReloadDetail"
            }
          }
        },
        "additionalProperties": true
      },
      "NewReloadDirect": {
        "title": "NewReloadDirect",
        "type": "object",
        "description": "(tsType: ReloadDirectInput, schemaOptions: { title: 'NewReloadDirect' })",
        "properties": {
          "userID": {
            "type": "number"
          },
          "Amount": {
            "type": "number"
          },
          "familyID": {
            "type": "number"
          },
          "transaction": {
            "type": "string"
          },
          "payTypeID": {
            "type": "number"
          },
          "accountListID": {
            "type": "number"
          }
        },
        "additionalProperties": true,
        "x-typescript-type": "ReloadDirectInput"
      },
      "ReloadDirectInput": {
        "title": "ReloadDirectInput",
        "type": "object",
        "properties": {
          "userID": {
            "type": "number"
          },
          "Amount": {
            "type": "number"
          },
          "familyID": {
            "type": "number"
          },
          "transaction": {
            "type": "string"
          },
          "payTypeID": {
            "type": "number"
          },
          "accountListID": {
            "type": "number"
          }
        },
        "additionalProperties": true
      },
      "NewReloadDetailInReload": {
        "title": "NewReloadDetailInReload",
        "type": "object",
        "description": "(tsType: @loopback/repository-json-schema#Optional<Omit<ReloadDetail, 'ID'>, 'reloadID'>, schemaOptions: { title: 'NewReloadDetailInReload', exclude: [ 'ID' ], optional: [ 'reloadID' ] })",
        "properties": {
          "Amount": {
            "type": "number"
          },
          "reloadID": {
            "type": "number"
          },
          "familyID": {
            "type": "number"
          }
        },
        "required": [
          "Amount"
        ],
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository-json-schema#Optional<Omit<ReloadDetail, 'ID'>, 'reloadID'>"
      },
      "ReloadDetailPartial": {
        "title": "ReloadDetailPartial",
        "type": "object",
        "description": "(tsType: Partial<ReloadDetail>, schemaOptions: { partial: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Amount": {
            "type": "number"
          },
          "reloadID": {
            "type": "number"
          },
          "familyID": {
            "type": "number"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "Partial<ReloadDetail>"
      },
      "ProductInput": {
        "title": "ProductInput",
        "type": "object",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          },
          "Price": {
            "type": "number"
          },
          "Favorite": {
            "type": "boolean"
          },
          "productSubCategoryId": {
            "type": "number"
          },
          "productsCost": {
            "type": "number"
          },
          "productsDays": {
            "type": "array",
            "items": {
              "type": "number"
            }
          },
          "TrackInventory": {
            "type": "boolean"
          },
          "MinimumStock": {
            "type": "number"
          }
        },
        "required": [
          "Name",
          "Price"
        ],
        "additionalProperties": true
      },
      "NewProducts": {
        "title": "NewProducts",
        "type": "object",
        "description": "(tsType: Omit<ProductInput, 'ID'>, schemaOptions: { title: 'NewProducts', exclude: [ 'ID' ] })",
        "properties": {
          "Name": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          },
          "Price": {
            "type": "number"
          },
          "Favorite": {
            "type": "boolean"
          },
          "productSubCategoryId": {
            "type": "number"
          },
          "productsCost": {
            "type": "number"
          },
          "productsDays": {
            "type": "array",
            "items": {
              "type": "number"
            }
          },
          "TrackInventory": {
            "type": "boolean"
          },
          "MinimumStock": {
            "type": "number"
          }
        },
        "required": [
          "Name",
          "Price"
        ],
        "additionalProperties": true,
        "x-typescript-type": "Omit<ProductInput, 'ID'>"
      },
      "ProductSubCategoryWithRelations": {
        "title": "ProductSubCategoryWithRelations",
        "type": "object",
        "description": "(tsType: ProductSubCategoryWithRelations, schemaOptions: { includeRelations: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          },
          "productCategoryId": {
            "type": "number"
          },
          "products": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProductsWithRelations"
            }
          }
        },
        "required": [
          "Name",
          "Description"
        ],
        "additionalProperties": false,
        "x-typescript-type": "ProductSubCategoryWithRelations"
      },
      "ProductCostWithRelations": {
        "title": "ProductCostWithRelations",
        "type": "object",
        "description": "(tsType: ProductCostWithRelations, schemaOptions: { includeRelations: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Cost": {
            "type": "number"
          },
          "State": {
            "type": "boolean"
          },
          "productsId": {
            "type": "number"
          },
          "DateTime": {
            "type": "string",
            "format": "date-time"
          }
        },
        "required": [
          "Cost"
        ],
        "additionalProperties": false,
        "x-typescript-type": "ProductCostWithRelations"
      },
      "ProductsWithRelations": {
        "title": "ProductsWithRelations",
        "type": "object",
        "description": "(tsType: ProductsWithRelations, schemaOptions: { includeRelations: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          },
          "Price": {
            "type": "number"
          },
          "Favorite": {
            "type": "boolean"
          },
          "Essential": {
            "type": "boolean"
          },
          "TrackInventory": {
            "type": "boolean"
          },
          "MinimumStock": {
            "type": "number"
          },
          "productSubCategoryId": {
            "type": "number"
          },
          "productSubCategory": {
            "$ref": "#/components/schemas/ProductSubCategoryWithRelations"
          },
          "foreignKey": {},
          "productCosts": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProductCostWithRelations"
            }
          }
        },
        "required": [
          "Name",
          "Price"
        ],
        "additionalProperties": false,
        "x-typescript-type": "ProductsWithRelations"
      },
      "ProductsPartial": {
        "title": "ProductsPartial",
        "type": "object",
        "description": "(tsType: Partial<Products>, schemaOptions: { partial: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          },
          "Price": {
            "type": "number"
          },
          "Favorite": {
            "type": "boolean"
          },
          "Essential": {
            "type": "boolean"
          },
          "TrackInventory": {
            "type": "boolean"
          },
          "MinimumStock": {
            "type": "number"
          },
          "productSubCategoryId": {
            "type": "number"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "Partial<Products>"
      },
      "Products": {
        "title": "Products",
        "type": "object",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          },
          "Price": {
            "type": "number"
          },
          "Favorite": {
            "type": "boolean"
          },
          "Essential": {
            "type": "boolean"
          },
          "TrackInventory": {
            "type": "boolean"
          },
          "MinimumStock": {
            "type": "number"
          },
          "productSubCategoryId": {
            "type": "number"
          }
        },
        "required": [
          "Name",
          "Price"
        ],
        "additionalProperties": false
      },
      "ProductInputPartial": {
        "title": "ProductInputPartial",
        "type": "object",
        "description": "(tsType: Partial<ProductInput>, schemaOptions: { partial: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          },
          "Price": {
            "type": "number"
          },
          "Favorite": {
            "type": "boolean"
          },
          "productSubCategoryId": {
            "type": "number"
          },
          "productsCost": {
            "type": "number"
          },
          "productsDays": {
            "type": "array",
            "items": {
              "type": "number"
            }
          },
          "TrackInventory": {
            "type": "boolean"
          },
          "MinimumStock": {
            "type": "number"
          }
        },
        "additionalProperties": true,
        "x-typescript-type": "Partial<ProductInput>"
      },
      "ProductCost": {
        "title": "ProductCost",
        "type": "object",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Cost": {
            "type": "number"
          },
          "State": {
            "type": "boolean"
          },
          "productsId": {
            "type": "number"
          },
          "DateTime": {
            "type": "string",
            "format": "date-time"
          }
        },
        "required": [
          "Cost"
        ],
        "additionalProperties": false
      },
      "NewProductCostInProducts": {
        "title": "NewProductCostInProducts",
        "type": "object",
        "description": "(tsType: @loopback/repository-json-schema#Optional<Omit<ProductCost, 'ID'>, 'productsId'>, schemaOptions: { title: 'NewProductCostInProducts', exclude: [ 'ID' ], optional: [ 'productsId' ] })",
        "properties": {
          "Cost": {
            "type": "number"
          },
          "State": {
            "type": "boolean"
          },
          "productsId": {
            "type": "number"
          },
          "DateTime": {
            "type": "string",
            "format": "date-time"
          }
        },
        "required": [
          "Cost"
        ],
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository-json-schema#Optional<Omit<ProductCost, 'ID'>, 'productsId'>"
      },
      "ProductCostPartial": {
        "title": "ProductCostPartial",
        "type": "object",
        "description": "(tsType: Partial<ProductCost>, schemaOptions: { partial: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Cost": {
            "type": "number"
          },
          "State": {
            "type": "boolean"
          },
          "productsId": {
            "type": "number"
          },
          "DateTime": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "Partial<ProductCost>"
      },
      "ProductCategory": {
        "title": "ProductCategory",
        "type": "object",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          },
          "iconName": {
            "type": "string"
          }
        },
        "required": [
          "Name"
        ],
        "additionalProperties": false
      },
      "NewProductCategory": {
        "title": "NewProductCategory",
        "type": "object",
        "description": "(tsType: Omit<ProductCategory, 'ID'>, schemaOptions: { title: 'NewProductCategory', exclude: [ 'ID' ] })",
        "properties": {
          "Name": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          },
          "iconName": {
            "type": "string"
          }
        },
        "required": [
          "Name"
        ],
        "additionalProperties": false,
        "x-typescript-type": "Omit<ProductCategory, 'ID'>"
      },
      "ProductCategoryWithRelations": {
        "title": "ProductCategoryWithRelations",
        "type": "object",
        "description": "(tsType: ProductCategoryWithRelations, schemaOptions: { includeRelations: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          },
          "iconName": {
            "type": "string"
          },
          "productSubCategories": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProductSubCategoryWithRelations"
            }
          }
        },
        "required": [
          "Name"
        ],
        "additionalProperties": false,
        "x-typescript-type": "ProductCategoryWithRelations"
      },
      "ProductCategoryPartial": {
        "title": "ProductCategoryPartial",
        "type": "object",
        "description": "(tsType: Partial<ProductCategory>, schemaOptions: { partial: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          },
          "iconName": {
            "type": "string"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "Partial<ProductCategory>"
      },
      "ProductSubCategory": {
        "title": "ProductSubCategory",
        "type": "object",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          },
          "productCategoryId": {
            "type": "number"
          }
        },
        "required": [
          "Name",
          "Description"
        ],
        "additionalProperties": false
      },
      "NewProductSubCategory": {
        "title": "NewProductSubCategory",
        "type": "object",
        "description": "(tsType: Omit<ProductSubCategory, 'ID'>, schemaOptions: { title: 'NewProductSubCategory', exclude: [ 'ID' ] })",
        "properties": {
          "Name": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          },
          "productCategoryId": {
            "type": "number"
          }
        },
        "required": [
          "Name",
          "Description"
        ],
        "additionalProperties": false,
        "x-typescript-type": "Omit<ProductSubCategory, 'ID'>"
      },
      "ProductSubCategoryPartial": {
        "title": "ProductSubCategoryPartial",
        "type": "object",
        "description": "(tsType: Partial<ProductSubCategory>, schemaOptions: { partial: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          },
          "productCategoryId": {
            "type": "number"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "Partial<ProductSubCategory>"
      },
      "NewProductsInProductSubCategory": {
        "title": "NewProductsInProductSubCategory",
        "type": "object",
        "description": "(tsType: @loopback/repository-json-schema#Optional<Omit<Products, 'ID'>, 'productSubCategoryId'>, schemaOptions: { title: 'NewProductsInProductSubCategory', exclude: [ 'ID' ], optional: [ 'productSubCategoryId' ] })",
        "properties": {
          "Name": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          },
          "Price": {
            "type": "number"
          },
          "Favorite": {
            "type": "boolean"
          },
          "Essential": {
            "type": "boolean"
          },
          "TrackInventory": {
            "type": "boolean"
          },
          "MinimumStock": {
            "type": "number"
          },
          "productSubCategoryId": {
            "type": "number"
          }
        },
        "required": [
          "Name",
          "Price"
        ],
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository-json-schema#Optional<Omit<Products, 'ID'>, 'productSubCategoryId'>"
      },
      "NewProductSubCategoryInProductCategory": {
        "title": "NewProductSubCategoryInProductCategory",
        "type": "object",
        "description": "(tsType: @loopback/repository-json-schema#Optional<Omit<ProductSubCategory, 'ID'>, 'productCategoryId'>, schemaOptions: { title: 'NewProductSubCategoryInProductCategory', exclude: [ 'ID' ], optional: [ 'productCategoryId' ] })",
        "properties": {
          "Name": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          },
          "productCategoryId": {
            "type": "number"
          }
        },
        "required": [
          "Name",
          "Description"
        ],
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository-json-schema#Optional<Omit<ProductSubCategory, 'ID'>, 'productCategoryId'>"
      },
      "PayType": {
        "title": "PayType",
        "type": "object",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          }
        },
        "required": [
          "Name"
        ],
        "additionalProperties": false
      },
      "NewPayType": {
        "title": "NewPayType",
        "type": "object",
        "description": "(tsType: Omit<PayType, 'ID'>, schemaOptions: { title: 'NewPayType', exclude: [ 'ID' ] })",
        "properties": {
          "Name": {
            "type": "string"
          }
        },
        "required": [
          "Name"
        ],
        "additionalProperties": false,
        "x-typescript-type": "Omit<PayType, 'ID'>"
      },
      "PayTypePartial": {
        "title": "PayTypePartial",
        "type": "object",
        "description": "(tsType: Partial<PayType>, schemaOptions: { partial: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "Partial<PayType>"
      },
      "PayList": {
        "title": "PayList",
        "type": "object",
        "properties": {
          "ID": {
            "type": "number"
          },
          "accountListId": {
            "type": "number"
          },
          "payTypeId": {
            "type": "number"
          }
        },
        "additionalProperties": false
      },
      "NewPayListInPayType": {
        "title": "NewPayListInPayType",
        "type": "object",
        "description": "(tsType: @loopback/repository-json-schema#Optional<Omit<PayList, 'ID'>, 'payTypeId'>, schemaOptions: { title: 'NewPayListInPayType', exclude: [ 'ID' ], optional: [ 'payTypeId' ] })",
        "properties": {
          "accountListId": {
            "type": "number"
          },
          "payTypeId": {
            "type": "number"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository-json-schema#Optional<Omit<PayList, 'ID'>, 'payTypeId'>"
      },
      "PayListPartial": {
        "title": "PayListPartial",
        "type": "object",
        "description": "(tsType: Partial<PayList>, schemaOptions: { partial: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "accountListId": {
            "type": "number"
          },
          "payTypeId": {
            "type": "number"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "Partial<PayList>"
      },
      "NewPayList": {
        "title": "NewPayList",
        "type": "object",
        "description": "(tsType: Omit<PayList, 'ID'>, schemaOptions: { title: 'NewPayList', exclude: [ 'ID' ] })",
        "properties": {
          "accountListId": {
            "type": "number"
          },
          "payTypeId": {
            "type": "number"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "Omit<PayList, 'ID'>"
      },
      "NewSaleInPayList": {
        "title": "NewSaleInPayList",
        "type": "object",
        "description": "(tsType: @loopback/repository-json-schema#Optional<Omit<Sale, 'ID'>, 'payListId'>, schemaOptions: { title: 'NewSaleInPayList', exclude: [ 'ID' ], optional: [ 'payListId' ] })",
        "properties": {
          "Total": {
            "type": "number"
          },
          "TotalPay": {
            "type": "number"
          },
          "transaction": {
            "type": "string"
          },
          "DateTime": {
            "type": "string",
            "format": "date-time"
          },
          "userID": {
            "type": "number"
          },
          "DispatchStatus": {
            "type": "number"
          },
          "familyID": {
            "type": "number"
          },
          "saleStateId": {
            "type": "number"
          },
          "payListId": {
            "type": "number"
          },
          "checkoutDetailsId": {
            "type": "number"
          },
          "dispatchId": {
            "type": "number"
          }
        },
        "required": [
          "Total"
        ],
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository-json-schema#Optional<Omit<Sale, 'ID'>, 'payListId'>"
      },
      "NewReloadInPayList": {
        "title": "NewReloadInPayList",
        "type": "object",
        "description": "(tsType: @loopback/repository-json-schema#Optional<Omit<Reload, 'ID'>, 'payListId'>, schemaOptions: { title: 'NewReloadInPayList', exclude: [ 'ID' ], optional: [ 'payListId' ] })",
        "properties": {
          "DateTime": {
            "type": "string",
            "format": "date-time"
          },
          "Amount": {
            "type": "number"
          },
          "transaction": {
            "type": "string"
          },
          "userID": {
            "type": "number"
          },
          "Charged": {
            "type": "number"
          },
          "result": {
            "type": "string"
          },
          "response": {
            "type": "string"
          },
          "payListId": {
            "type": "number"
          }
        },
        "required": [
          "Amount"
        ],
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository-json-schema#Optional<Omit<Reload, 'ID'>, 'payListId'>"
      },
      "NewCheckoutDetailsInPayList": {
        "title": "NewCheckoutDetailsInPayList",
        "type": "object",
        "description": "(tsType: @loopback/repository-json-schema#Optional<Omit<CheckoutDetails, 'ID'>, 'payListId'>, schemaOptions: { title: 'NewCheckoutDetailsInPayList', exclude: [ 'ID' ], optional: [ 'payListId' ] })",
        "properties": {
          "Amount": {
            "type": "number"
          },
          "checkoutId": {
            "type": "number"
          },
          "payListId": {
            "type": "number"
          }
        },
        "required": [
          "Amount"
        ],
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository-json-schema#Optional<Omit<CheckoutDetails, 'ID'>, 'payListId'>"
      },
      "CheckoutDetailsPartial": {
        "title": "CheckoutDetailsPartial",
        "type": "object",
        "description": "(tsType: Partial<CheckoutDetails>, schemaOptions: { partial: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Amount": {
            "type": "number"
          },
          "checkoutId": {
            "type": "number"
          },
          "payListId": {
            "type": "number"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "Partial<CheckoutDetails>"
      },
      "AccountList": {
        "title": "AccountList",
        "type": "object",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "AccountNumber": {
            "type": "string"
          },
          "Holder": {
            "type": "string"
          },
          "Type": {
            "type": "string"
          }
        },
        "required": [
          "Name"
        ],
        "additionalProperties": false
      },
      "NewListProduct": {
        "title": "NewListProduct",
        "type": "object",
        "description": "(tsType: Omit<ListProduct, 'ID'>, schemaOptions: { title: 'NewListProduct', exclude: [ 'ID' ] })",
        "properties": {
          "productId": {
            "type": "number"
          },
          "Quantity": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          },
          "Price": {
            "type": "number"
          },
          "Cost": {
            "type": "number"
          },
          "saleID": {
            "type": "number"
          }
        },
        "required": [
          "Name",
          "Price"
        ],
        "additionalProperties": false,
        "x-typescript-type": "Omit<ListProduct, 'ID'>"
      },
      "InventoryMovement": {
        "title": "InventoryMovement",
        "type": "object",
        "properties": {
          "ID": {
            "type": "number"
          },
          "productId": {
            "type": "number"
          },
          "dispatchId": {
            "type": "number"
          },
          "locationId": {
            "type": "number"
          },
          "Type": {
            "type": "string"
          },
          "QuantityChange": {
            "type": "number"
          },
          "BalanceAfter": {
            "type": "number"
          },
          "Reason": {
            "type": "string"
          },
          "Notes": {
            "type": "string"
          },
          "saleId": {
            "type": "number"
          },
          "transferId": {
            "type": "number"
          },
          "RequestedQuantity": {
            "type": "number"
          },
          "Shortfall": {
            "type": "number"
          },
          "userId": {
            "type": "number"
          },
          "IdempotencyKey": {
            "type": "string"
          },
          "CreatedAt": {
            "type": "string",
            "format": "date-time"
          }
        },
        "required": [
          "productId",
          "Type",
          "QuantityChange",
          "BalanceAfter",
          "userId"
        ],
        "additionalProperties": false
      },
      "InventoryOperationInput": {
        "title": "InventoryOperationInput",
        "type": "object",
        "properties": {
          "productId": {
            "type": "number"
          },
          "dispatchId": {
            "type": "number"
          },
          "locationId": {
            "type": "number"
          },
          "quantity": {
            "type": "number"
          },
          "reason": {
            "type": "string"
          },
          "notes": {
            "type": "string"
          },
          "idempotencyKey": {
            "type": "string"
          }
        },
        "required": [
          "productId",
          "quantity"
        ],
        "additionalProperties": false
      },
      "InventoryTransfer": {
        "title": "InventoryTransfer",
        "type": "object",
        "properties": {
          "ID": {
            "type": "number"
          },
          "fromLocationId": {
            "type": "number"
          },
          "toLocationId": {
            "type": "number"
          },
          "Status": {
            "type": "string"
          },
          "Reason": {
            "type": "string"
          },
          "Notes": {
            "type": "string"
          },
          "userId": {
            "type": "number"
          },
          "CreatedAt": {
            "type": "string",
            "format": "date-time"
          }
        },
        "required": [
          "fromLocationId",
          "toLocationId",
          "Status",
          "Reason",
          "userId"
        ],
        "additionalProperties": false
      },
      "InventoryTransferInput": {
        "title": "InventoryTransferInput",
        "type": "object",
        "properties": {
          "fromLocationId": {
            "type": "number"
          },
          "toLocationId": {
            "type": "number"
          },
          "reason": {
            "type": "string"
          },
          "notes": {
            "type": "string"
          },
          "items": {
            "type": "array",
            "items": {
              "type": "object"
            }
          }
        },
        "required": [
          "fromLocationId",
          "toLocationId",
          "reason",
          "items"
        ],
        "additionalProperties": false
      },
      "InventoryLocation": {
        "title": "InventoryLocation",
        "type": "object",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "Code": {
            "type": "string"
          },
          "Type": {
            "type": "string"
          },
          "dispatchId": {
            "type": "number"
          },
          "Active": {
            "type": "boolean"
          },
          "createdBy": {
            "type": "number"
          },
          "CreatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "UpdatedAt": {
            "type": "string",
            "format": "date-time"
          }
        },
        "required": [
          "Name",
          "Type",
          "Active"
        ],
        "additionalProperties": false
      },
      "InventoryLocationExcluding_ID_": {
        "title": "InventoryLocationExcluding_ID_",
        "type": "object",
        "description": "(tsType: Omit<InventoryLocation, 'ID'>, schemaOptions: { exclude: [ 'ID' ] })",
        "properties": {
          "Name": {
            "type": "string"
          },
          "Code": {
            "type": "string"
          },
          "Type": {
            "type": "string"
          },
          "dispatchId": {
            "type": "number"
          },
          "Active": {
            "type": "boolean"
          },
          "createdBy": {
            "type": "number"
          },
          "CreatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "UpdatedAt": {
            "type": "string",
            "format": "date-time"
          }
        },
        "required": [
          "Name",
          "Type",
          "Active"
        ],
        "additionalProperties": false,
        "x-typescript-type": "Omit<InventoryLocation, 'ID'>"
      },
      "InventoryLocationPartial": {
        "title": "InventoryLocationPartial",
        "type": "object",
        "description": "(tsType: Partial<InventoryLocation>, schemaOptions: { partial: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "Code": {
            "type": "string"
          },
          "Type": {
            "type": "string"
          },
          "dispatchId": {
            "type": "number"
          },
          "Active": {
            "type": "boolean"
          },
          "createdBy": {
            "type": "number"
          },
          "CreatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "UpdatedAt": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "Partial<InventoryLocation>"
      },
      "HistoryAction": {
        "title": "HistoryAction",
        "type": "object",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Module": {
            "type": "string"
          },
          "Action": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          },
          "Entity": {
            "type": "string"
          },
          "EntityID": {
            "type": "number"
          },
          "UserName": {
            "type": "string"
          },
          "UserEmail": {
            "type": "string"
          },
          "userID": {
            "type": "number"
          },
          "DateTime": {
            "type": "string",
            "format": "date-time"
          }
        },
        "required": [
          "Module",
          "Action",
          "Description"
        ],
        "additionalProperties": false
      },
      "NewHistoryAction": {
        "title": "NewHistoryAction",
        "type": "object",
        "description": "(tsType: Omit<HistoryAction, 'ID'>, schemaOptions: { title: 'NewHistoryAction', exclude: [ 'ID' ] })",
        "properties": {
          "Module": {
            "type": "string"
          },
          "Action": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          },
          "Entity": {
            "type": "string"
          },
          "EntityID": {
            "type": "number"
          },
          "UserName": {
            "type": "string"
          },
          "UserEmail": {
            "type": "string"
          },
          "userID": {
            "type": "number"
          },
          "DateTime": {
            "type": "string",
            "format": "date-time"
          }
        },
        "required": [
          "Module",
          "Action",
          "Description"
        ],
        "additionalProperties": false,
        "x-typescript-type": "Omit<HistoryAction, 'ID'>"
      },
      "HistoryActionWithRelations": {
        "title": "HistoryActionWithRelations",
        "type": "object",
        "description": "(tsType: HistoryActionWithRelations, schemaOptions: { includeRelations: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Module": {
            "type": "string"
          },
          "Action": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          },
          "Entity": {
            "type": "string"
          },
          "EntityID": {
            "type": "number"
          },
          "UserName": {
            "type": "string"
          },
          "UserEmail": {
            "type": "string"
          },
          "userID": {
            "type": "number"
          },
          "DateTime": {
            "type": "string",
            "format": "date-time"
          },
          "user": {
            "$ref": "#/components/schemas/UserWithRelations"
          },
          "foreignKey": {}
        },
        "required": [
          "Module",
          "Action",
          "Description"
        ],
        "additionalProperties": false,
        "x-typescript-type": "HistoryActionWithRelations"
      },
      "NewFamily": {
        "title": "NewFamily",
        "type": "object",
        "description": "(tsType: Omit<Family, 'ID' | 'Balance'>, schemaOptions: { title: 'NewFamily', exclude: [ 'ID', 'Balance' ] })",
        "properties": {
          "Name": {
            "type": "string"
          },
          "LastName": {
            "type": "string"
          },
          "Section": {
            "type": "string"
          },
          "Birthdate": {
            "type": "string",
            "format": "date-time"
          },
          "IDNumber": {
            "type": "string"
          },
          "Email": {
            "type": "string"
          },
          "PhoneNumber": {
            "type": "string"
          },
          "Comment": {
            "type": "string"
          },
          "Position": {
            "type": "string"
          },
          "Department": {
            "type": "string"
          },
          "CutDate": {
            "type": "string",
            "format": "date-time"
          },
          "DebitState": {
            "type": "number"
          },
          "userID": {
            "type": "number"
          },
          "degreeID": {
            "type": "number"
          },
          "Url": {
            "type": "string"
          },
          "State": {
            "type": "boolean"
          },
          "NegativeSales": {
            "type": "boolean"
          }
        },
        "required": [
          "Name",
          "LastName"
        ],
        "additionalProperties": false,
        "x-typescript-type": "Omit<Family, 'ID' | 'Balance'>"
      },
      "NewSaleInFamily": {
        "title": "NewSaleInFamily",
        "type": "object",
        "description": "(tsType: @loopback/repository-json-schema#Optional<Omit<Sale, 'ID'>, 'familyID'>, schemaOptions: { title: 'NewSaleInFamily', exclude: [ 'ID' ], optional: [ 'familyID' ] })",
        "properties": {
          "Total": {
            "type": "number"
          },
          "TotalPay": {
            "type": "number"
          },
          "transaction": {
            "type": "string"
          },
          "DateTime": {
            "type": "string",
            "format": "date-time"
          },
          "userID": {
            "type": "number"
          },
          "DispatchStatus": {
            "type": "number"
          },
          "familyID": {
            "type": "number"
          },
          "saleStateId": {
            "type": "number"
          },
          "payListId": {
            "type": "number"
          },
          "checkoutDetailsId": {
            "type": "number"
          },
          "dispatchId": {
            "type": "number"
          }
        },
        "required": [
          "Total"
        ],
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository-json-schema#Optional<Omit<Sale, 'ID'>, 'familyID'>"
      },
      "NewReloadDetailInFamily": {
        "title": "NewReloadDetailInFamily",
        "type": "object",
        "description": "(tsType: @loopback/repository-json-schema#Optional<Omit<ReloadDetail, 'ID'>, 'familyID'>, schemaOptions: { title: 'NewReloadDetailInFamily', exclude: [ 'ID' ], optional: [ 'familyID' ] })",
        "properties": {
          "Amount": {
            "type": "number"
          },
          "reloadID": {
            "type": "number"
          },
          "familyID": {
            "type": "number"
          }
        },
        "required": [
          "Amount"
        ],
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository-json-schema#Optional<Omit<ReloadDetail, 'ID'>, 'familyID'>"
      },
      "DocumentReport": {
        "title": "DocumentReport",
        "type": "object",
        "properties": {
          "ID": {
            "type": "number"
          },
          "name": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "pdf",
              "excel"
            ]
          },
          "module": {
            "type": "string"
          },
          "status": {
            "type": "string",
            "enum": [
              "queued",
              "processing",
              "ready",
              "failed",
              "expired"
            ]
          },
          "fromDate": {
            "type": "string"
          },
          "toDate": {
            "type": "string"
          },
          "state": {
            "type": "number"
          },
          "userId": {
            "type": "number"
          },
          "sourceFilter": {
            "type": "string"
          },
          "fileKey": {
            "type": "string"
          },
          "bucketName": {
            "type": "string"
          },
          "errorMessage": {
            "type": "string"
          },
          "createdBy": {
            "type": "number"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "finishedAt": {
            "type": "string",
            "format": "date-time"
          },
          "expiresAt": {
            "type": "string",
            "format": "date-time"
          },
          "expiredAt": {
            "type": "string",
            "format": "date-time"
          }
        },
        "required": [
          "name",
          "type",
          "module",
          "status",
          "fromDate",
          "toDate",
          "createdBy",
          "createdAt",
          "updatedAt"
        ],
        "additionalProperties": false
      },
      "Dispatch": {
        "title": "Dispatch",
        "type": "object",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          }
        },
        "required": [
          "Name"
        ],
        "additionalProperties": false
      },
      "NewDispatch": {
        "title": "NewDispatch",
        "type": "object",
        "description": "(tsType: Omit<Dispatch, 'ID'>, schemaOptions: { title: 'NewDispatch', exclude: [ 'ID' ] })",
        "properties": {
          "Name": {
            "type": "string"
          }
        },
        "required": [
          "Name"
        ],
        "additionalProperties": false,
        "x-typescript-type": "Omit<Dispatch, 'ID'>"
      },
      "DispatchWithRelations": {
        "title": "DispatchWithRelations",
        "type": "object",
        "description": "(tsType: DispatchWithRelations, schemaOptions: { includeRelations: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "checkouts": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CheckoutWithRelations"
            }
          },
          "sales": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SaleWithRelations"
            }
          }
        },
        "required": [
          "Name"
        ],
        "additionalProperties": false,
        "x-typescript-type": "DispatchWithRelations"
      },
      "DispatchPartial": {
        "title": "DispatchPartial",
        "type": "object",
        "description": "(tsType: Partial<Dispatch>, schemaOptions: { partial: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "Partial<Dispatch>"
      },
      "NewSaleInDispatch": {
        "title": "NewSaleInDispatch",
        "type": "object",
        "description": "(tsType: @loopback/repository-json-schema#Optional<Omit<Sale, 'ID'>, 'dispatchId'>, schemaOptions: { title: 'NewSaleInDispatch', exclude: [ 'ID' ], optional: [ 'dispatchId' ] })",
        "properties": {
          "Total": {
            "type": "number"
          },
          "TotalPay": {
            "type": "number"
          },
          "transaction": {
            "type": "string"
          },
          "DateTime": {
            "type": "string",
            "format": "date-time"
          },
          "userID": {
            "type": "number"
          },
          "DispatchStatus": {
            "type": "number"
          },
          "familyID": {
            "type": "number"
          },
          "saleStateId": {
            "type": "number"
          },
          "payListId": {
            "type": "number"
          },
          "checkoutDetailsId": {
            "type": "number"
          },
          "dispatchId": {
            "type": "number"
          }
        },
        "required": [
          "Total"
        ],
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository-json-schema#Optional<Omit<Sale, 'ID'>, 'dispatchId'>"
      },
      "NewCheckoutInDispatch": {
        "title": "NewCheckoutInDispatch",
        "type": "object",
        "description": "(tsType: @loopback/repository-json-schema#Optional<Omit<Checkout, 'ID'>, 'dispatchId'>, schemaOptions: { title: 'NewCheckoutInDispatch', exclude: [ 'ID' ], optional: [ 'dispatchId' ] })",
        "properties": {
          "startDate": {
            "type": "string",
            "format": "date-time"
          },
          "endDate": {
            "type": "string",
            "format": "date-time"
          },
          "userId": {
            "type": "number"
          },
          "state": {
            "type": "number"
          },
          "dispatchId": {
            "type": "number"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository-json-schema#Optional<Omit<Checkout, 'ID'>, 'dispatchId'>"
      },
      "Degree": {
        "title": "Degree",
        "type": "object",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          }
        },
        "required": [
          "Name"
        ],
        "additionalProperties": false
      },
      "NewDegree": {
        "title": "NewDegree",
        "type": "object",
        "description": "(tsType: Omit<Degree, 'ID'>, schemaOptions: { title: 'NewDegree', exclude: [ 'ID' ] })",
        "properties": {
          "Name": {
            "type": "string"
          }
        },
        "required": [
          "Name"
        ],
        "additionalProperties": false,
        "x-typescript-type": "Omit<Degree, 'ID'>"
      },
      "DegreeWithRelations": {
        "title": "DegreeWithRelations",
        "type": "object",
        "description": "(tsType: DegreeWithRelations, schemaOptions: { includeRelations: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "families": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FamilyWithRelations"
            }
          }
        },
        "required": [
          "Name"
        ],
        "additionalProperties": false,
        "x-typescript-type": "DegreeWithRelations"
      },
      "DegreePartial": {
        "title": "DegreePartial",
        "type": "object",
        "description": "(tsType: Partial<Degree>, schemaOptions: { partial: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "Partial<Degree>"
      },
      "NewFamilyInDegree": {
        "title": "NewFamilyInDegree",
        "type": "object",
        "description": "(tsType: @loopback/repository-json-schema#Optional<Omit<Family, 'ID'>, 'degreeID'>, schemaOptions: { title: 'NewFamilyInDegree', exclude: [ 'ID' ], optional: [ 'degreeID' ] })",
        "properties": {
          "Name": {
            "type": "string"
          },
          "LastName": {
            "type": "string"
          },
          "Section": {
            "type": "string"
          },
          "Birthdate": {
            "type": "string",
            "format": "date-time"
          },
          "IDNumber": {
            "type": "string"
          },
          "Email": {
            "type": "string"
          },
          "PhoneNumber": {
            "type": "string"
          },
          "Balance": {
            "type": "number"
          },
          "Comment": {
            "type": "string"
          },
          "Position": {
            "type": "string"
          },
          "Department": {
            "type": "string"
          },
          "CutDate": {
            "type": "string",
            "format": "date-time"
          },
          "DebitState": {
            "type": "number"
          },
          "userID": {
            "type": "number"
          },
          "degreeID": {
            "type": "number"
          },
          "Url": {
            "type": "string"
          },
          "State": {
            "type": "boolean"
          },
          "NegativeSales": {
            "type": "boolean"
          }
        },
        "required": [
          "Name",
          "LastName",
          "Balance"
        ],
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository-json-schema#Optional<Omit<Family, 'ID'>, 'degreeID'>"
      },
      "DaysOfWeek": {
        "title": "DaysOfWeek",
        "type": "object",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          }
        },
        "required": [
          "Name"
        ],
        "additionalProperties": false
      },
      "NewDaysOfWeek": {
        "title": "NewDaysOfWeek",
        "type": "object",
        "description": "(tsType: Omit<DaysOfWeek, 'ID'>, schemaOptions: { title: 'NewDaysOfWeek', exclude: [ 'ID' ] })",
        "properties": {
          "Name": {
            "type": "string"
          }
        },
        "required": [
          "Name"
        ],
        "additionalProperties": false,
        "x-typescript-type": "Omit<DaysOfWeek, 'ID'>"
      },
      "DaysOfWeekWithRelations": {
        "title": "DaysOfWeekWithRelations",
        "type": "object",
        "description": "(tsType: DaysOfWeekWithRelations, schemaOptions: { includeRelations: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "productsOfDay": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProductsWithRelations"
            }
          }
        },
        "required": [
          "Name"
        ],
        "additionalProperties": false,
        "x-typescript-type": "DaysOfWeekWithRelations"
      },
      "DaysOfWeekPartial": {
        "title": "DaysOfWeekPartial",
        "type": "object",
        "description": "(tsType: Partial<DaysOfWeek>, schemaOptions: { partial: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "Partial<DaysOfWeek>"
      },
      "NewProductsInDaysOfWeek": {
        "title": "NewProductsInDaysOfWeek",
        "type": "object",
        "description": "(tsType: Omit<Products, 'ID'>, schemaOptions: { title: 'NewProductsInDaysOfWeek', exclude: [ 'ID' ] })",
        "properties": {
          "Name": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          },
          "Price": {
            "type": "number"
          },
          "Favorite": {
            "type": "boolean"
          },
          "Essential": {
            "type": "boolean"
          },
          "TrackInventory": {
            "type": "boolean"
          },
          "MinimumStock": {
            "type": "number"
          },
          "productSubCategoryId": {
            "type": "number"
          }
        },
        "required": [
          "Name",
          "Price"
        ],
        "additionalProperties": false,
        "x-typescript-type": "Omit<Products, 'ID'>"
      },
      "NewSaleInCheckoutDetails": {
        "title": "NewSaleInCheckoutDetails",
        "type": "object",
        "description": "(tsType: @loopback/repository-json-schema#Optional<Omit<Sale, 'ID'>, 'checkoutDetailsId'>, schemaOptions: { title: 'NewSaleInCheckoutDetails', exclude: [ 'ID' ], optional: [ 'checkoutDetailsId' ] })",
        "properties": {
          "Total": {
            "type": "number"
          },
          "TotalPay": {
            "type": "number"
          },
          "transaction": {
            "type": "string"
          },
          "DateTime": {
            "type": "string",
            "format": "date-time"
          },
          "userID": {
            "type": "number"
          },
          "DispatchStatus": {
            "type": "number"
          },
          "familyID": {
            "type": "number"
          },
          "saleStateId": {
            "type": "number"
          },
          "payListId": {
            "type": "number"
          },
          "checkoutDetailsId": {
            "type": "number"
          },
          "dispatchId": {
            "type": "number"
          }
        },
        "required": [
          "Total"
        ],
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository-json-schema#Optional<Omit<Sale, 'ID'>, 'checkoutDetailsId'>"
      },
      "NewCheckoutDetailsInCheckout": {
        "title": "NewCheckoutDetailsInCheckout",
        "type": "object",
        "description": "(tsType: @loopback/repository-json-schema#Optional<Omit<CheckoutDetails, 'ID'>, 'checkoutId'>, schemaOptions: { title: 'NewCheckoutDetailsInCheckout', exclude: [ 'ID' ], optional: [ 'checkoutId' ] })",
        "properties": {
          "Amount": {
            "type": "number"
          },
          "checkoutId": {
            "type": "number"
          },
          "payListId": {
            "type": "number"
          }
        },
        "required": [
          "Amount"
        ],
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository-json-schema#Optional<Omit<CheckoutDetails, 'ID'>, 'checkoutId'>"
      },
      "CheckOutInput": {
        "title": "CheckOutInput",
        "type": "object",
        "properties": {
          "userId": {
            "type": "number"
          },
          "password": {
            "type": "string"
          },
          "dispatchId": {
            "type": "number"
          }
        },
        "required": [
          "userId",
          "password"
        ],
        "additionalProperties": true
      },
      "NewCheckout": {
        "title": "NewCheckout",
        "type": "object",
        "description": "(tsType: CheckOutInput, schemaOptions: { title: 'NewCheckout' })",
        "properties": {
          "userId": {
            "type": "number"
          },
          "password": {
            "type": "string"
          },
          "dispatchId": {
            "type": "number"
          }
        },
        "required": [
          "userId",
          "password"
        ],
        "additionalProperties": true,
        "x-typescript-type": "CheckOutInput"
      },
      "CheckOutInputPartial": {
        "title": "CheckOutInputPartial",
        "type": "object",
        "description": "(tsType: Partial<CheckOutInput>, schemaOptions: { partial: true })",
        "properties": {
          "userId": {
            "type": "number"
          },
          "password": {
            "type": "string"
          },
          "dispatchId": {
            "type": "number"
          }
        },
        "additionalProperties": true,
        "x-typescript-type": "Partial<CheckOutInput>"
      },
      "NewCheckoutDetails": {
        "title": "NewCheckoutDetails",
        "type": "object",
        "description": "(tsType: Omit<CheckoutDetails, 'ID'>, schemaOptions: { title: 'NewCheckoutDetails', exclude: [ 'ID' ] })",
        "properties": {
          "Amount": {
            "type": "number"
          },
          "checkoutId": {
            "type": "number"
          },
          "payListId": {
            "type": "number"
          }
        },
        "required": [
          "Amount"
        ],
        "additionalProperties": false,
        "x-typescript-type": "Omit<CheckoutDetails, 'ID'>"
      },
      "NewAccountList": {
        "title": "NewAccountList",
        "type": "object",
        "description": "(tsType: Omit<AccountList, 'ID'>, schemaOptions: { title: 'NewAccountList', exclude: [ 'ID' ] })",
        "properties": {
          "Name": {
            "type": "string"
          },
          "AccountNumber": {
            "type": "string"
          },
          "Holder": {
            "type": "string"
          },
          "Type": {
            "type": "string"
          }
        },
        "required": [
          "Name"
        ],
        "additionalProperties": false,
        "x-typescript-type": "Omit<AccountList, 'ID'>"
      },
      "AccountListPartial": {
        "title": "AccountListPartial",
        "type": "object",
        "description": "(tsType: Partial<AccountList>, schemaOptions: { partial: true })",
        "properties": {
          "ID": {
            "type": "number"
          },
          "Name": {
            "type": "string"
          },
          "AccountNumber": {
            "type": "string"
          },
          "Holder": {
            "type": "string"
          },
          "Type": {
            "type": "string"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "Partial<AccountList>"
      },
      "NewPayListInAccountList": {
        "title": "NewPayListInAccountList",
        "type": "object",
        "description": "(tsType: @loopback/repository-json-schema#Optional<Omit<PayList, 'ID'>, 'accountListId'>, schemaOptions: { title: 'NewPayListInAccountList', exclude: [ 'ID' ], optional: [ 'accountListId' ] })",
        "properties": {
          "accountListId": {
            "type": "number"
          },
          "payTypeId": {
            "type": "number"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository-json-schema#Optional<Omit<PayList, 'ID'>, 'accountListId'>"
      },
      "loopback.Count": {
        "type": "object",
        "title": "loopback.Count",
        "x-typescript-type": "@loopback/repository#Count",
        "properties": {
          "count": {
            "type": "number"
          }
        }
      },
      "AccountList.ScopeFilter": {
        "type": "object",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {},
                "additionalProperties": true
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "uniqueItems": true
              }
            ]
          },
          "include": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true
            }
          }
        },
        "additionalProperties": false,
        "title": "AccountList.ScopeFilter"
      },
      "AccountList.IncludeFilter.Items": {
        "title": "AccountList.IncludeFilter.Items",
        "type": "object",
        "properties": {
          "relation": {
            "type": "string",
            "enum": [
              "payLists"
            ]
          },
          "scope": {
            "$ref": "#/components/schemas/AccountList.ScopeFilter"
          }
        }
      },
      "AccountList.Filter": {
        "type": "object",
        "title": "AccountList.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "Name": {
                    "type": "boolean"
                  },
                  "AccountNumber": {
                    "type": "boolean"
                  },
                  "Holder": {
                    "type": "boolean"
                  },
                  "Type": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "Name",
                    "AccountNumber",
                    "Holder",
                    "Type"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "AccountList.Fields"
          },
          "include": {
            "title": "AccountList.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/AccountList.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<AccountList>"
      },
      "AccountList.Filter1": {
        "type": "object",
        "title": "AccountList.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "title": "AccountList.WhereFilter",
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "Name": {
                    "type": "boolean"
                  },
                  "AccountNumber": {
                    "type": "boolean"
                  },
                  "Holder": {
                    "type": "boolean"
                  },
                  "Type": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "Name",
                    "AccountNumber",
                    "Holder",
                    "Type"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "AccountList.Fields"
          },
          "include": {
            "title": "AccountList.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/AccountList.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<AccountList>"
      },
      "CheckoutDetails.ScopeFilter": {
        "type": "object",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {},
                "additionalProperties": true
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "uniqueItems": true
              }
            ]
          },
          "include": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true
            }
          }
        },
        "additionalProperties": false,
        "title": "CheckoutDetails.ScopeFilter"
      },
      "CheckoutDetails.IncludeFilter.Items": {
        "title": "CheckoutDetails.IncludeFilter.Items",
        "type": "object",
        "properties": {
          "relation": {
            "type": "string",
            "enum": [
              "payList",
              "sales"
            ]
          },
          "scope": {
            "$ref": "#/components/schemas/CheckoutDetails.ScopeFilter"
          }
        }
      },
      "CheckoutDetails.Filter": {
        "type": "object",
        "title": "CheckoutDetails.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "Amount": {
                    "type": "boolean"
                  },
                  "checkoutId": {
                    "type": "boolean"
                  },
                  "payListId": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "Amount",
                    "checkoutId",
                    "payListId"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "CheckoutDetails.Fields"
          },
          "include": {
            "title": "CheckoutDetails.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/CheckoutDetails.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<CheckoutDetails>"
      },
      "CheckoutDetails.Filter1": {
        "type": "object",
        "title": "CheckoutDetails.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "title": "CheckoutDetails.WhereFilter",
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "Amount": {
                    "type": "boolean"
                  },
                  "checkoutId": {
                    "type": "boolean"
                  },
                  "payListId": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "Amount",
                    "checkoutId",
                    "payListId"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "CheckoutDetails.Fields"
          },
          "include": {
            "title": "CheckoutDetails.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/CheckoutDetails.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<CheckoutDetails>"
      },
      "Checkout.ScopeFilter": {
        "type": "object",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {},
                "additionalProperties": true
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "uniqueItems": true
              }
            ]
          },
          "include": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true
            }
          }
        },
        "additionalProperties": false,
        "title": "Checkout.ScopeFilter"
      },
      "Checkout.IncludeFilter.Items": {
        "title": "Checkout.IncludeFilter.Items",
        "type": "object",
        "properties": {
          "relation": {
            "type": "string",
            "enum": [
              "checkoutDetails"
            ]
          },
          "scope": {
            "$ref": "#/components/schemas/Checkout.ScopeFilter"
          }
        }
      },
      "Checkout.Filter": {
        "type": "object",
        "title": "Checkout.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "startDate": {
                    "type": "boolean"
                  },
                  "endDate": {
                    "type": "boolean"
                  },
                  "userId": {
                    "type": "boolean"
                  },
                  "state": {
                    "type": "boolean"
                  },
                  "dispatchId": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "startDate",
                    "endDate",
                    "userId",
                    "state",
                    "dispatchId"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "Checkout.Fields"
          },
          "include": {
            "title": "Checkout.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/Checkout.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<Checkout>"
      },
      "Checkout.Filter1": {
        "type": "object",
        "title": "Checkout.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "title": "Checkout.WhereFilter",
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "startDate": {
                    "type": "boolean"
                  },
                  "endDate": {
                    "type": "boolean"
                  },
                  "userId": {
                    "type": "boolean"
                  },
                  "state": {
                    "type": "boolean"
                  },
                  "dispatchId": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "startDate",
                    "endDate",
                    "userId",
                    "state",
                    "dispatchId"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "Checkout.Fields"
          },
          "include": {
            "title": "Checkout.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/Checkout.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<Checkout>"
      },
      "DaysOfWeek.ScopeFilter": {
        "type": "object",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {},
                "additionalProperties": true
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "uniqueItems": true
              }
            ]
          },
          "include": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true
            }
          }
        },
        "additionalProperties": false,
        "title": "DaysOfWeek.ScopeFilter"
      },
      "DaysOfWeek.IncludeFilter.Items": {
        "title": "DaysOfWeek.IncludeFilter.Items",
        "type": "object",
        "properties": {
          "relation": {
            "type": "string",
            "enum": [
              "productsOfDay"
            ]
          },
          "scope": {
            "$ref": "#/components/schemas/DaysOfWeek.ScopeFilter"
          }
        }
      },
      "DaysOfWeek.Filter": {
        "type": "object",
        "title": "DaysOfWeek.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "Name": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "Name"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "DaysOfWeek.Fields"
          },
          "include": {
            "title": "DaysOfWeek.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/DaysOfWeek.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<DaysOfWeek>"
      },
      "DaysOfWeek.Filter1": {
        "type": "object",
        "title": "DaysOfWeek.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "title": "DaysOfWeek.WhereFilter",
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "Name": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "Name"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "DaysOfWeek.Fields"
          },
          "include": {
            "title": "DaysOfWeek.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/DaysOfWeek.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<DaysOfWeek>"
      },
      "Degree.ScopeFilter": {
        "type": "object",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {},
                "additionalProperties": true
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "uniqueItems": true
              }
            ]
          },
          "include": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true
            }
          }
        },
        "additionalProperties": false,
        "title": "Degree.ScopeFilter"
      },
      "Degree.IncludeFilter.Items": {
        "title": "Degree.IncludeFilter.Items",
        "type": "object",
        "properties": {
          "relation": {
            "type": "string",
            "enum": [
              "families"
            ]
          },
          "scope": {
            "$ref": "#/components/schemas/Degree.ScopeFilter"
          }
        }
      },
      "Degree.Filter": {
        "type": "object",
        "title": "Degree.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "Name": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "Name"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "Degree.Fields"
          },
          "include": {
            "title": "Degree.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/Degree.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<Degree>"
      },
      "Degree.Filter1": {
        "type": "object",
        "title": "Degree.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "title": "Degree.WhereFilter",
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "Name": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "Name"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "Degree.Fields"
          },
          "include": {
            "title": "Degree.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/Degree.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<Degree>"
      },
      "Dispatch.ScopeFilter": {
        "type": "object",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {},
                "additionalProperties": true
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "uniqueItems": true
              }
            ]
          },
          "include": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true
            }
          }
        },
        "additionalProperties": false,
        "title": "Dispatch.ScopeFilter"
      },
      "Dispatch.IncludeFilter.Items": {
        "title": "Dispatch.IncludeFilter.Items",
        "type": "object",
        "properties": {
          "relation": {
            "type": "string",
            "enum": [
              "checkouts",
              "sales"
            ]
          },
          "scope": {
            "$ref": "#/components/schemas/Dispatch.ScopeFilter"
          }
        }
      },
      "Dispatch.Filter": {
        "type": "object",
        "title": "Dispatch.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "Name": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "Name"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "Dispatch.Fields"
          },
          "include": {
            "title": "Dispatch.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/Dispatch.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<Dispatch>"
      },
      "Dispatch.Filter1": {
        "type": "object",
        "title": "Dispatch.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "title": "Dispatch.WhereFilter",
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "Name": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "Name"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "Dispatch.Fields"
          },
          "include": {
            "title": "Dispatch.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/Dispatch.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<Dispatch>"
      },
      "Family.ScopeFilter": {
        "type": "object",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {},
                "additionalProperties": true
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "uniqueItems": true
              }
            ]
          },
          "include": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true
            }
          }
        },
        "additionalProperties": false,
        "title": "Family.ScopeFilter"
      },
      "Family.IncludeFilter.Items": {
        "title": "Family.IncludeFilter.Items",
        "type": "object",
        "properties": {
          "relation": {
            "type": "string",
            "enum": [
              "sales",
              "reloadDetails"
            ]
          },
          "scope": {
            "$ref": "#/components/schemas/Family.ScopeFilter"
          }
        }
      },
      "Family.Filter": {
        "type": "object",
        "title": "Family.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "Name": {
                    "type": "boolean"
                  },
                  "LastName": {
                    "type": "boolean"
                  },
                  "Section": {
                    "type": "boolean"
                  },
                  "Birthdate": {
                    "type": "boolean"
                  },
                  "IDNumber": {
                    "type": "boolean"
                  },
                  "Email": {
                    "type": "boolean"
                  },
                  "PhoneNumber": {
                    "type": "boolean"
                  },
                  "Balance": {
                    "type": "boolean"
                  },
                  "Comment": {
                    "type": "boolean"
                  },
                  "Position": {
                    "type": "boolean"
                  },
                  "Department": {
                    "type": "boolean"
                  },
                  "CutDate": {
                    "type": "boolean"
                  },
                  "DebitState": {
                    "type": "boolean"
                  },
                  "userID": {
                    "type": "boolean"
                  },
                  "degreeID": {
                    "type": "boolean"
                  },
                  "Url": {
                    "type": "boolean"
                  },
                  "State": {
                    "type": "boolean"
                  },
                  "NegativeSales": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "Name",
                    "LastName",
                    "Section",
                    "Birthdate",
                    "IDNumber",
                    "Email",
                    "PhoneNumber",
                    "Balance",
                    "Comment",
                    "Position",
                    "Department",
                    "CutDate",
                    "DebitState",
                    "userID",
                    "degreeID",
                    "Url",
                    "State",
                    "NegativeSales"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "Family.Fields"
          },
          "include": {
            "title": "Family.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/Family.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<Family>"
      },
      "FamilySearch.ScopeFilter": {
        "type": "object",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {},
                "additionalProperties": true
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "uniqueItems": true
              }
            ]
          },
          "include": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true
            }
          }
        },
        "additionalProperties": false,
        "title": "FamilySearch.ScopeFilter"
      },
      "FamilySearch.IncludeFilter.Items": {
        "title": "FamilySearch.IncludeFilter.Items",
        "type": "object",
        "properties": {
          "relation": {
            "type": "string",
            "enum": [
              "sales",
              "reloadDetails"
            ]
          },
          "scope": {
            "$ref": "#/components/schemas/FamilySearch.ScopeFilter"
          }
        }
      },
      "FamilySearch.Filter": {
        "type": "object",
        "title": "FamilySearch.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "title": "FamilySearch.WhereFilter",
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "Name": {
                    "type": "boolean"
                  },
                  "LastName": {
                    "type": "boolean"
                  },
                  "Section": {
                    "type": "boolean"
                  },
                  "Birthdate": {
                    "type": "boolean"
                  },
                  "IDNumber": {
                    "type": "boolean"
                  },
                  "Email": {
                    "type": "boolean"
                  },
                  "PhoneNumber": {
                    "type": "boolean"
                  },
                  "Balance": {
                    "type": "boolean"
                  },
                  "Comment": {
                    "type": "boolean"
                  },
                  "Position": {
                    "type": "boolean"
                  },
                  "Department": {
                    "type": "boolean"
                  },
                  "CutDate": {
                    "type": "boolean"
                  },
                  "DebitState": {
                    "type": "boolean"
                  },
                  "userID": {
                    "type": "boolean"
                  },
                  "degreeID": {
                    "type": "boolean"
                  },
                  "Url": {
                    "type": "boolean"
                  },
                  "State": {
                    "type": "boolean"
                  },
                  "nameSearch": {
                    "type": "boolean"
                  },
                  "lastnameSearch": {
                    "type": "boolean"
                  },
                  "commentSearch": {
                    "type": "boolean"
                  },
                  "sectionSearch": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "Name",
                    "LastName",
                    "Section",
                    "Birthdate",
                    "IDNumber",
                    "Email",
                    "PhoneNumber",
                    "Balance",
                    "Comment",
                    "Position",
                    "Department",
                    "CutDate",
                    "DebitState",
                    "userID",
                    "degreeID",
                    "Url",
                    "State",
                    "nameSearch",
                    "lastnameSearch",
                    "commentSearch",
                    "sectionSearch"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "FamilySearch.Fields"
          },
          "include": {
            "title": "FamilySearch.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/FamilySearch.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<FamilySearch>"
      },
      "InventoryLocation.Filter": {
        "type": "object",
        "title": "InventoryLocation.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "title": "InventoryLocation.WhereFilter",
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "Name": {
                    "type": "boolean"
                  },
                  "Code": {
                    "type": "boolean"
                  },
                  "Type": {
                    "type": "boolean"
                  },
                  "dispatchId": {
                    "type": "boolean"
                  },
                  "Active": {
                    "type": "boolean"
                  },
                  "createdBy": {
                    "type": "boolean"
                  },
                  "CreatedAt": {
                    "type": "boolean"
                  },
                  "UpdatedAt": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "Name",
                    "Code",
                    "Type",
                    "dispatchId",
                    "Active",
                    "createdBy",
                    "CreatedAt",
                    "UpdatedAt"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "InventoryLocation.Fields"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<InventoryLocation>"
      },
      "InventoryMovement.Filter": {
        "type": "object",
        "title": "InventoryMovement.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "title": "InventoryMovement.WhereFilter",
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "productId": {
                    "type": "boolean"
                  },
                  "dispatchId": {
                    "type": "boolean"
                  },
                  "locationId": {
                    "type": "boolean"
                  },
                  "Type": {
                    "type": "boolean"
                  },
                  "QuantityChange": {
                    "type": "boolean"
                  },
                  "BalanceAfter": {
                    "type": "boolean"
                  },
                  "Reason": {
                    "type": "boolean"
                  },
                  "Notes": {
                    "type": "boolean"
                  },
                  "saleId": {
                    "type": "boolean"
                  },
                  "transferId": {
                    "type": "boolean"
                  },
                  "RequestedQuantity": {
                    "type": "boolean"
                  },
                  "Shortfall": {
                    "type": "boolean"
                  },
                  "userId": {
                    "type": "boolean"
                  },
                  "IdempotencyKey": {
                    "type": "boolean"
                  },
                  "CreatedAt": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "productId",
                    "dispatchId",
                    "locationId",
                    "Type",
                    "QuantityChange",
                    "BalanceAfter",
                    "Reason",
                    "Notes",
                    "saleId",
                    "transferId",
                    "RequestedQuantity",
                    "Shortfall",
                    "userId",
                    "IdempotencyKey",
                    "CreatedAt"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "InventoryMovement.Fields"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<InventoryMovement>"
      },
      "ListProduct.Filter": {
        "type": "object",
        "title": "ListProduct.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "productId": {
                    "type": "boolean"
                  },
                  "Quantity": {
                    "type": "boolean"
                  },
                  "Name": {
                    "type": "boolean"
                  },
                  "Description": {
                    "type": "boolean"
                  },
                  "Price": {
                    "type": "boolean"
                  },
                  "Cost": {
                    "type": "boolean"
                  },
                  "saleID": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "productId",
                    "Quantity",
                    "Name",
                    "Description",
                    "Price",
                    "Cost",
                    "saleID"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "ListProduct.Fields"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<ListProduct>"
      },
      "ListProduct.Filter1": {
        "type": "object",
        "title": "ListProduct.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "title": "ListProduct.WhereFilter",
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "productId": {
                    "type": "boolean"
                  },
                  "Quantity": {
                    "type": "boolean"
                  },
                  "Name": {
                    "type": "boolean"
                  },
                  "Description": {
                    "type": "boolean"
                  },
                  "Price": {
                    "type": "boolean"
                  },
                  "Cost": {
                    "type": "boolean"
                  },
                  "saleID": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "productId",
                    "Quantity",
                    "Name",
                    "Description",
                    "Price",
                    "Cost",
                    "saleID"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "ListProduct.Fields"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<ListProduct>"
      },
      "PayList.ScopeFilter": {
        "type": "object",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {},
                "additionalProperties": true
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "uniqueItems": true
              }
            ]
          },
          "include": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true
            }
          }
        },
        "additionalProperties": false,
        "title": "PayList.ScopeFilter"
      },
      "PayList.IncludeFilter.Items": {
        "title": "PayList.IncludeFilter.Items",
        "type": "object",
        "properties": {
          "relation": {
            "type": "string",
            "enum": [
              "reloads",
              "sales",
              "checkoutDetails",
              "accountList",
              "payType"
            ]
          },
          "scope": {
            "$ref": "#/components/schemas/PayList.ScopeFilter"
          }
        }
      },
      "PayList.Filter": {
        "type": "object",
        "title": "PayList.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "accountListId": {
                    "type": "boolean"
                  },
                  "payTypeId": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "accountListId",
                    "payTypeId"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "PayList.Fields"
          },
          "include": {
            "title": "PayList.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/PayList.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<PayList>"
      },
      "PayList.Filter1": {
        "type": "object",
        "title": "PayList.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "title": "PayList.WhereFilter",
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "accountListId": {
                    "type": "boolean"
                  },
                  "payTypeId": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "accountListId",
                    "payTypeId"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "PayList.Fields"
          },
          "include": {
            "title": "PayList.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/PayList.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<PayList>"
      },
      "PayType.ScopeFilter": {
        "type": "object",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {},
                "additionalProperties": true
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "uniqueItems": true
              }
            ]
          },
          "include": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true
            }
          }
        },
        "additionalProperties": false,
        "title": "PayType.ScopeFilter"
      },
      "PayType.IncludeFilter.Items": {
        "title": "PayType.IncludeFilter.Items",
        "type": "object",
        "properties": {
          "relation": {
            "type": "string",
            "enum": [
              "payLists"
            ]
          },
          "scope": {
            "$ref": "#/components/schemas/PayType.ScopeFilter"
          }
        }
      },
      "PayType.Filter": {
        "type": "object",
        "title": "PayType.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "Name": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "Name"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "PayType.Fields"
          },
          "include": {
            "title": "PayType.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/PayType.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<PayType>"
      },
      "PayType.Filter1": {
        "type": "object",
        "title": "PayType.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "title": "PayType.WhereFilter",
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "Name": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "Name"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "PayType.Fields"
          },
          "include": {
            "title": "PayType.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/PayType.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<PayType>"
      },
      "PingResponse": {
        "type": "object",
        "title": "PingResponse",
        "properties": {
          "greeting": {
            "type": "string"
          },
          "date": {
            "type": "string"
          },
          "url": {
            "type": "string"
          },
          "headers": {
            "type": "object",
            "properties": {
              "Content-Type": {
                "type": "string"
              }
            },
            "additionalProperties": true
          }
        }
      },
      "ProductCategory.ScopeFilter": {
        "type": "object",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {},
                "additionalProperties": true
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "uniqueItems": true
              }
            ]
          },
          "include": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true
            }
          }
        },
        "additionalProperties": false,
        "title": "ProductCategory.ScopeFilter"
      },
      "ProductCategory.IncludeFilter.Items": {
        "title": "ProductCategory.IncludeFilter.Items",
        "type": "object",
        "properties": {
          "relation": {
            "type": "string",
            "enum": [
              "productSubCategories"
            ]
          },
          "scope": {
            "$ref": "#/components/schemas/ProductCategory.ScopeFilter"
          }
        }
      },
      "ProductCategory.Filter": {
        "type": "object",
        "title": "ProductCategory.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "Name": {
                    "type": "boolean"
                  },
                  "Description": {
                    "type": "boolean"
                  },
                  "iconName": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "Name",
                    "Description",
                    "iconName"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "ProductCategory.Fields"
          },
          "include": {
            "title": "ProductCategory.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/ProductCategory.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<ProductCategory>"
      },
      "ProductCategory.Filter1": {
        "type": "object",
        "title": "ProductCategory.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "title": "ProductCategory.WhereFilter",
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "Name": {
                    "type": "boolean"
                  },
                  "Description": {
                    "type": "boolean"
                  },
                  "iconName": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "Name",
                    "Description",
                    "iconName"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "ProductCategory.Fields"
          },
          "include": {
            "title": "ProductCategory.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/ProductCategory.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<ProductCategory>"
      },
      "ProductSubCategory.ScopeFilter": {
        "type": "object",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {},
                "additionalProperties": true
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "uniqueItems": true
              }
            ]
          },
          "include": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true
            }
          }
        },
        "additionalProperties": false,
        "title": "ProductSubCategory.ScopeFilter"
      },
      "ProductSubCategory.IncludeFilter.Items": {
        "title": "ProductSubCategory.IncludeFilter.Items",
        "type": "object",
        "properties": {
          "relation": {
            "type": "string",
            "enum": [
              "products"
            ]
          },
          "scope": {
            "$ref": "#/components/schemas/ProductSubCategory.ScopeFilter"
          }
        }
      },
      "ProductSubCategory.Filter": {
        "type": "object",
        "title": "ProductSubCategory.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "Name": {
                    "type": "boolean"
                  },
                  "Description": {
                    "type": "boolean"
                  },
                  "productCategoryId": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "Name",
                    "Description",
                    "productCategoryId"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "ProductSubCategory.Fields"
          },
          "include": {
            "title": "ProductSubCategory.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/ProductSubCategory.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<ProductSubCategory>"
      },
      "ProductSubCategory.Filter1": {
        "type": "object",
        "title": "ProductSubCategory.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "title": "ProductSubCategory.WhereFilter",
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "Name": {
                    "type": "boolean"
                  },
                  "Description": {
                    "type": "boolean"
                  },
                  "productCategoryId": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "Name",
                    "Description",
                    "productCategoryId"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "ProductSubCategory.Fields"
          },
          "include": {
            "title": "ProductSubCategory.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/ProductSubCategory.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<ProductSubCategory>"
      },
      "Products.ScopeFilter": {
        "type": "object",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {},
                "additionalProperties": true
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "uniqueItems": true
              }
            ]
          },
          "include": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true
            }
          }
        },
        "additionalProperties": false,
        "title": "Products.ScopeFilter"
      },
      "Products.IncludeFilter.Items": {
        "title": "Products.IncludeFilter.Items",
        "type": "object",
        "properties": {
          "relation": {
            "type": "string",
            "enum": [
              "productSubCategory",
              "productCosts"
            ]
          },
          "scope": {
            "$ref": "#/components/schemas/Products.ScopeFilter"
          }
        }
      },
      "Products.Filter": {
        "type": "object",
        "title": "Products.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "Name": {
                    "type": "boolean"
                  },
                  "Description": {
                    "type": "boolean"
                  },
                  "Price": {
                    "type": "boolean"
                  },
                  "Favorite": {
                    "type": "boolean"
                  },
                  "Essential": {
                    "type": "boolean"
                  },
                  "TrackInventory": {
                    "type": "boolean"
                  },
                  "MinimumStock": {
                    "type": "boolean"
                  },
                  "productSubCategoryId": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "Name",
                    "Description",
                    "Price",
                    "Favorite",
                    "Essential",
                    "TrackInventory",
                    "MinimumStock",
                    "productSubCategoryId"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "Products.Fields"
          },
          "include": {
            "title": "Products.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/Products.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<Products>"
      },
      "Products.Filter1": {
        "type": "object",
        "title": "Products.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "title": "Products.WhereFilter",
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "Name": {
                    "type": "boolean"
                  },
                  "Description": {
                    "type": "boolean"
                  },
                  "Price": {
                    "type": "boolean"
                  },
                  "Favorite": {
                    "type": "boolean"
                  },
                  "Essential": {
                    "type": "boolean"
                  },
                  "TrackInventory": {
                    "type": "boolean"
                  },
                  "MinimumStock": {
                    "type": "boolean"
                  },
                  "productSubCategoryId": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "Name",
                    "Description",
                    "Price",
                    "Favorite",
                    "Essential",
                    "TrackInventory",
                    "MinimumStock",
                    "productSubCategoryId"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "Products.Fields"
          },
          "include": {
            "title": "Products.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/Products.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<Products>"
      },
      "Reload.ScopeFilter": {
        "type": "object",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {},
                "additionalProperties": true
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "uniqueItems": true
              }
            ]
          },
          "include": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true
            }
          }
        },
        "additionalProperties": false,
        "title": "Reload.ScopeFilter"
      },
      "Reload.IncludeFilter.Items": {
        "title": "Reload.IncludeFilter.Items",
        "type": "object",
        "properties": {
          "relation": {
            "type": "string",
            "enum": [
              "reloadDetails"
            ]
          },
          "scope": {
            "$ref": "#/components/schemas/Reload.ScopeFilter"
          }
        }
      },
      "Reload.Filter": {
        "type": "object",
        "title": "Reload.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "DateTime": {
                    "type": "boolean"
                  },
                  "Amount": {
                    "type": "boolean"
                  },
                  "transaction": {
                    "type": "boolean"
                  },
                  "userID": {
                    "type": "boolean"
                  },
                  "Charged": {
                    "type": "boolean"
                  },
                  "result": {
                    "type": "boolean"
                  },
                  "response": {
                    "type": "boolean"
                  },
                  "payListId": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "DateTime",
                    "Amount",
                    "transaction",
                    "userID",
                    "Charged",
                    "result",
                    "response",
                    "payListId"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "Reload.Fields"
          },
          "include": {
            "title": "Reload.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/Reload.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<Reload>"
      },
      "Reload.Filter1": {
        "type": "object",
        "title": "Reload.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "title": "Reload.WhereFilter",
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "DateTime": {
                    "type": "boolean"
                  },
                  "Amount": {
                    "type": "boolean"
                  },
                  "transaction": {
                    "type": "boolean"
                  },
                  "userID": {
                    "type": "boolean"
                  },
                  "Charged": {
                    "type": "boolean"
                  },
                  "result": {
                    "type": "boolean"
                  },
                  "response": {
                    "type": "boolean"
                  },
                  "payListId": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "DateTime",
                    "Amount",
                    "transaction",
                    "userID",
                    "Charged",
                    "result",
                    "response",
                    "payListId"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "Reload.Fields"
          },
          "include": {
            "title": "Reload.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/Reload.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<Reload>"
      },
      "SaleState.ScopeFilter": {
        "type": "object",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {},
                "additionalProperties": true
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "uniqueItems": true
              }
            ]
          },
          "include": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true
            }
          }
        },
        "additionalProperties": false,
        "title": "SaleState.ScopeFilter"
      },
      "SaleState.IncludeFilter.Items": {
        "title": "SaleState.IncludeFilter.Items",
        "type": "object",
        "properties": {
          "relation": {
            "type": "string",
            "enum": [
              "sales"
            ]
          },
          "scope": {
            "$ref": "#/components/schemas/SaleState.ScopeFilter"
          }
        }
      },
      "SaleState.Filter": {
        "type": "object",
        "title": "SaleState.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "name": {
                    "type": "boolean"
                  },
                  "Description": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "name",
                    "Description"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "SaleState.Fields"
          },
          "include": {
            "title": "SaleState.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/SaleState.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<SaleState>"
      },
      "SaleState.Filter1": {
        "type": "object",
        "title": "SaleState.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "title": "SaleState.WhereFilter",
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "name": {
                    "type": "boolean"
                  },
                  "Description": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "name",
                    "Description"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "SaleState.Fields"
          },
          "include": {
            "title": "SaleState.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/SaleState.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<SaleState>"
      },
      "Sale.ScopeFilter": {
        "type": "object",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {},
                "additionalProperties": true
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "uniqueItems": true
              }
            ]
          },
          "include": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true
            }
          }
        },
        "additionalProperties": false,
        "title": "Sale.ScopeFilter"
      },
      "Sale.IncludeFilter.Items": {
        "title": "Sale.IncludeFilter.Items",
        "type": "object",
        "properties": {
          "relation": {
            "type": "string",
            "enum": [
              "listProducts",
              "checkoutDetails"
            ]
          },
          "scope": {
            "$ref": "#/components/schemas/Sale.ScopeFilter"
          }
        }
      },
      "Sale.Filter": {
        "type": "object",
        "title": "Sale.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "Total": {
                    "type": "boolean"
                  },
                  "TotalPay": {
                    "type": "boolean"
                  },
                  "transaction": {
                    "type": "boolean"
                  },
                  "DateTime": {
                    "type": "boolean"
                  },
                  "userID": {
                    "type": "boolean"
                  },
                  "DispatchStatus": {
                    "type": "boolean"
                  },
                  "familyID": {
                    "type": "boolean"
                  },
                  "saleStateId": {
                    "type": "boolean"
                  },
                  "payListId": {
                    "type": "boolean"
                  },
                  "checkoutDetailsId": {
                    "type": "boolean"
                  },
                  "dispatchId": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "Total",
                    "TotalPay",
                    "transaction",
                    "DateTime",
                    "userID",
                    "DispatchStatus",
                    "familyID",
                    "saleStateId",
                    "payListId",
                    "checkoutDetailsId",
                    "dispatchId"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "Sale.Fields"
          },
          "include": {
            "title": "Sale.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/Sale.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<Sale>"
      },
      "Sale.Filter1": {
        "type": "object",
        "title": "Sale.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "title": "Sale.WhereFilter",
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "Total": {
                    "type": "boolean"
                  },
                  "TotalPay": {
                    "type": "boolean"
                  },
                  "transaction": {
                    "type": "boolean"
                  },
                  "DateTime": {
                    "type": "boolean"
                  },
                  "userID": {
                    "type": "boolean"
                  },
                  "DispatchStatus": {
                    "type": "boolean"
                  },
                  "familyID": {
                    "type": "boolean"
                  },
                  "saleStateId": {
                    "type": "boolean"
                  },
                  "payListId": {
                    "type": "boolean"
                  },
                  "checkoutDetailsId": {
                    "type": "boolean"
                  },
                  "dispatchId": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "Total",
                    "TotalPay",
                    "transaction",
                    "DateTime",
                    "userID",
                    "DispatchStatus",
                    "familyID",
                    "saleStateId",
                    "payListId",
                    "checkoutDetailsId",
                    "dispatchId"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "Sale.Fields"
          },
          "include": {
            "title": "Sale.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/Sale.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<Sale>"
      },
      "User.ScopeFilter": {
        "type": "object",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {},
                "additionalProperties": true
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "uniqueItems": true
              }
            ]
          },
          "include": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true
            }
          }
        },
        "additionalProperties": false,
        "title": "User.ScopeFilter"
      },
      "User.IncludeFilter.Items": {
        "title": "User.IncludeFilter.Items",
        "type": "object",
        "properties": {
          "relation": {
            "type": "string",
            "enum": [
              "profile",
              "families",
              "reloads",
              "sales",
              "checkouts"
            ]
          },
          "scope": {
            "$ref": "#/components/schemas/User.ScopeFilter"
          }
        }
      },
      "User.Filter": {
        "type": "object",
        "title": "User.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "Name": {
                    "type": "boolean"
                  },
                  "LastName": {
                    "type": "boolean"
                  },
                  "PhoneNumber": {
                    "type": "boolean"
                  },
                  "Address": {
                    "type": "boolean"
                  },
                  "Email": {
                    "type": "boolean"
                  },
                  "Password": {
                    "type": "boolean"
                  },
                  "UserType": {
                    "type": "boolean"
                  },
                  "ProfileID": {
                    "type": "boolean"
                  },
                  "RecuperationCode": {
                    "type": "boolean"
                  },
                  "RecuperationCodeExpiresAt": {
                    "type": "boolean"
                  },
                  "RecuperationAttempts": {
                    "type": "boolean"
                  },
                  "State": {
                    "type": "boolean"
                  },
                  "Settings": {
                    "type": "boolean"
                  },
                  "Url": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "Name",
                    "LastName",
                    "PhoneNumber",
                    "Address",
                    "Email",
                    "Password",
                    "UserType",
                    "ProfileID",
                    "RecuperationCode",
                    "RecuperationCodeExpiresAt",
                    "RecuperationAttempts",
                    "State",
                    "Settings",
                    "Url"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "User.Fields"
          },
          "include": {
            "title": "User.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/User.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<User>"
      },
      "User.Filter1": {
        "type": "object",
        "title": "User.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "title": "User.WhereFilter",
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "Name": {
                    "type": "boolean"
                  },
                  "LastName": {
                    "type": "boolean"
                  },
                  "PhoneNumber": {
                    "type": "boolean"
                  },
                  "Address": {
                    "type": "boolean"
                  },
                  "Email": {
                    "type": "boolean"
                  },
                  "Password": {
                    "type": "boolean"
                  },
                  "UserType": {
                    "type": "boolean"
                  },
                  "ProfileID": {
                    "type": "boolean"
                  },
                  "RecuperationCode": {
                    "type": "boolean"
                  },
                  "RecuperationCodeExpiresAt": {
                    "type": "boolean"
                  },
                  "RecuperationAttempts": {
                    "type": "boolean"
                  },
                  "State": {
                    "type": "boolean"
                  },
                  "Settings": {
                    "type": "boolean"
                  },
                  "Url": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "Name",
                    "LastName",
                    "PhoneNumber",
                    "Address",
                    "Email",
                    "Password",
                    "UserType",
                    "ProfileID",
                    "RecuperationCode",
                    "RecuperationCodeExpiresAt",
                    "RecuperationAttempts",
                    "State",
                    "Settings",
                    "Url"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "User.Fields"
          },
          "include": {
            "title": "User.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/User.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<User>"
      },
      "WeeklyMenu.ScopeFilter": {
        "type": "object",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {},
                "additionalProperties": true
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "uniqueItems": true
              }
            ]
          },
          "include": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true
            }
          }
        },
        "additionalProperties": false,
        "title": "WeeklyMenu.ScopeFilter"
      },
      "WeeklyMenu.IncludeFilter.Items": {
        "title": "WeeklyMenu.IncludeFilter.Items",
        "type": "object",
        "properties": {
          "relation": {
            "type": "string",
            "enum": [
              "weeklyUrls"
            ]
          },
          "scope": {
            "$ref": "#/components/schemas/WeeklyMenu.ScopeFilter"
          }
        }
      },
      "WeeklyMenu.Filter": {
        "type": "object",
        "title": "WeeklyMenu.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "week": {
                    "type": "boolean"
                  },
                  "title": {
                    "type": "boolean"
                  },
                  "year": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "week",
                    "title",
                    "year"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "WeeklyMenu.Fields"
          },
          "include": {
            "title": "WeeklyMenu.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/WeeklyMenu.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<WeeklyMenu>"
      },
      "WeeklyMenu.Filter1": {
        "type": "object",
        "title": "WeeklyMenu.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "title": "WeeklyMenu.WhereFilter",
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "week": {
                    "type": "boolean"
                  },
                  "title": {
                    "type": "boolean"
                  },
                  "year": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "week",
                    "title",
                    "year"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "WeeklyMenu.Fields"
          },
          "include": {
            "title": "WeeklyMenu.IncludeFilter",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/WeeklyMenu.IncludeFilter.Items"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<WeeklyMenu>"
      },
      "WeeklyUrl.Filter": {
        "type": "object",
        "title": "WeeklyUrl.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "Url": {
                    "type": "boolean"
                  },
                  "eTag": {
                    "type": "boolean"
                  },
                  "weeklyMenuId": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "Url",
                    "eTag",
                    "weeklyMenuId"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "WeeklyUrl.Fields"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<WeeklyUrl>"
      },
      "WeeklyUrl.Filter1": {
        "type": "object",
        "title": "WeeklyUrl.Filter",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "example": 100
          },
          "skip": {
            "type": "integer",
            "minimum": 0
          },
          "order": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "where": {
            "title": "WeeklyUrl.WhereFilter",
            "type": "object",
            "additionalProperties": true
          },
          "fields": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "ID": {
                    "type": "boolean"
                  },
                  "Url": {
                    "type": "boolean"
                  },
                  "eTag": {
                    "type": "boolean"
                  },
                  "weeklyMenuId": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "ID",
                    "Url",
                    "eTag",
                    "weeklyMenuId"
                  ],
                  "example": "ID"
                },
                "uniqueItems": true
              }
            ],
            "title": "WeeklyUrl.Fields"
          }
        },
        "additionalProperties": false,
        "x-typescript-type": "@loopback/repository#Filter<WeeklyUrl>"
      }
    },
    "securitySchemes": {
      "jwt": {
        "type": "http",
        "scheme": "bearer",
        "bearerFormat": "JWT"
      }
    }
  },
  "security": [
    {
      "jwt": []
    }
  ]
}