diff --git a/Makefile b/Makefile index 90803c3d3..cde079bc7 100644 --- a/Makefile +++ b/Makefile @@ -7,7 +7,7 @@ build: # アプリコンテナの起動 run: - docker compose up + docker compose up -d # アプリコンテナの停止 down: @@ -15,15 +15,15 @@ down: # dbコンテナの起動(基本ずっと起動しておく) run-db: - docker compose -f docker-compose.db.yml up -d + docker compose -f compose.db.yml up -d # dbコンテナの停止(ずっと起動したくない時はこっちで停止) stop-db: - docker compose -f docker-compose.db.yml down + docker compose -f compose.db.yml down # ビルドと起動 build-run: - docker compose -f docker-compose.db.yml up -d + docker compose -f compose.db.yml up -d docker compose up --build # アプリコンテナボリュームの削除 @@ -32,7 +32,7 @@ del-vol: # 生成したコンテナ、イメージ、ボリューム、ネットワークを一括削除 del-all: - docker-compose down --rmi all --volumes --remove-orphans + compose down --rmi all --volumes --remove-orphans # ボリューム削除→ビルド→起動 run-rebuild: @@ -41,7 +41,7 @@ run-rebuild: # dbとminioの停止とボリューム削除(dbを初期化したい時) del-db: - docker-compose -f docker-compose.db.yml down --volumes + compose -f compose.db.yml down --volumes # apiの起動(db起動後) run-api: @@ -57,13 +57,13 @@ seed: # 本番環境デプロイ deploy: - docker compose -f docker-compose.prod.yml build - docker compose -f docker-compose.prod.yml up -d + docker compose -f compose.prod.yml build + docker compose -f compose.prod.yml up -d # ローカルで本番設定で起動 run-prod: - docker compose -f docker-compose.local-prod.yml build - docker compose -f docker-compose.local-prod.yml up + docker compose -f compose.local-prod.yml build + docker compose -f compose.local-prod.yml up # DB入るコマンド ent-db: @@ -72,3 +72,14 @@ ent-db: # eslintの実行 run-eslint: docker compose exec view npm run lint + +generate-openapi: + docker compose run --rm api oapi-codegen -config /openapi/config.yaml /openapi/openapi.yaml + +run-swagger: + docker compose -f compose.swagger.yml up -d + +run-all: + make run-db + make run + make run-swagger diff --git a/api/dev.Dockerfile b/api/dev.Dockerfile index f6f57215f..acbd04337 100644 --- a/api/dev.Dockerfile +++ b/api/dev.Dockerfile @@ -16,8 +16,7 @@ ENV CGO_ENABLED=0 ENV GOOS=linux #ENV GOARCH=amd64 -# swaggerをinstall -RUN go install github.com/swaggo/swag/cmd/swag@latest +RUN go install github.com/deepmap/oapi-codegen/v2/cmd/oapi-codegen@v2.2.0 # Airをインストール RUN go install github.com/air-verse/air@latest diff --git a/api/docs/docs.go b/api/docs/docs.go deleted file mode 100644 index bb884df32..000000000 --- a/api/docs/docs.go +++ /dev/null @@ -1,3049 +0,0 @@ -// Package docs GENERATED BY SWAG; DO NOT EDIT -// This file was generated by swaggo/swag -package docs - -import "github.com/swaggo/swag" - -const docTemplate = `{ - "schemes": {{ marshal .Schemes }}, - "swagger": "2.0", - "info": { - "description": "{{escape .Description}}", - "title": "{{.Title}}", - "contact": {}, - "version": "{{.Version}}" - }, - "host": "{{.Host}}", - "basePath": "{{.BasePath}}", - "paths": { - "/activities": { - "get": { - tags: ["activity"], - "description": "activitiesの一覧を取得", - "responses": { - "200": { - "description": "activitiesの一覧の取得", - } - } - }, - "post": { - tags: ["activity"], - "description": "activitiesの作成", - "parameters": [ - { - "in": "body", - "name": "activity", - "schema":{ - "$ref": "#/definitions/activity" - }, - }, - ], - responses: { - "200": { - "description": "create されたactivityが返ってくる", - } - }, - }, - }, - "/activities/details": { - "get": { - tags: ["activity"], - "description": "activitiesとsponsor,sponsorStyle,userの一覧を取得", - "responses": { - "200": { - "description": "activitiesとsponsor,sponsorStyle,userの一覧の取得", - } - } - }, - }, - "/activities/details/{year}": { - "get": { - tags: ["activity"], - "description": "年度で指定されたactivitiesとsponsor,sponsorStyle,userの一覧を取得", - "parameters": [ - { - "name": "year", - "in": "path", - "description": "year", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "年度で指定されたactivitiesとsponsor,sponsorStyle,userの一覧を取得", - } - } - }, - }, - "/activities/filtered_details": { - "get": { - tags: ["activity"], - "description": "activitiesとsponsor,sponsorStyle,userの一覧を取得", - "parameters": [ - { - "name": "is_done", - "in": "query", - "description": "Filter by done status.[true, false, all]", - "required": false, - "schema": { - "type": "string", - "enum": ["true", "false", "all"] - } - }, - { - "name": "sponsor_style_id", - "in": "query", - "description": "Filter by sponsor style IDs. ex.) 1,3,6,...", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "integer" - } - }, - "style": "form", - "explode": true - }, - { - "name": "keyword", - "in": "query", - "description": "Filter by keyword", - "required": false, - "schema": { - "type": "string" - } - }, - ], - "responses": { - "200": { - "description": "activitiesとsponsor,sponsorStyle,userの一覧の取得", - } - } - }, - }, - "/activities/filtered_details/{year}": { - "get": { - tags: ["activity"], - "description": "activitiesとsponsor,sponsorStyle,userの一覧を取得", - "parameters": [ - { - "name": "year", - "in": "path", - "description": "Filter by year.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "is_done", - "in": "query", - "description": "Filter by done status.[true, false, all]", - "required": false, - "schema": { - "type": "string", - "enum": ["true", "false", "all"] - } - }, - { - "name": "sponsor_style_id", - "in": "query", - "description": "Filter by sponsor style IDs. ex.) 1,3,6,...", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "integer" - } - }, - "style": "form", - "explode": true - }, - { - "name": "keyword", - "in": "query", - "description": "Filter by keyword", - "required": false, - "schema": { - "type": "string" - } - }, - ], - "responses": { - "200": { - "description": "activitiesとsponsor,sponsorStyle,userの一覧の取得", - } - } - }, - }, - "/activities/{id}": { - "get": { - tags: ["activity"], - "description": "IDで指定されたactivitiesの取得", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "activitiesの取得", - } - } - }, - "put": { - tags: ["activity"], - "description": "activitiesの更新", - responses: { - "200": { - "description": "更新されたactivitiesが返ってくる", - } - }, - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - }, - { - "in": "body", - "name": "activity", - "schema":{ - "$ref": "#/definitions/activity" - }, - }, - ], - }, - "delete": { - tags: ["activity"], - "description": "IDを指定してactivitiesの削除", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - responses: { - "200": { - "description": "activitiesの削除完了", - } - }, - }, - }, - "/activity_informations": { - "get": { - tags: ["activity_information"], - "description": "activity_informationの一覧を取得", - "responses": { - "200": { - "description": "activity_informationの一覧の取得", - } - } - }, - "post": { - tags: ["activity_information"], - "description": "activity_informationの作成", - "parameters": [ - { - "in": "body", - "name": "activity_information", - "schema":{ - "$ref": "#/definitions/activity_information" - }, - }, - ], - responses: { - "200": { - "description": "create されたactivity_informationが返ってくる", - } - }, - }, - }, - "/activity_informations/{id}": { - "get": { - tags: ["activity_information"], - "description": "IDで指定されたactivity_informationsの取得", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "activity_informationの取得", - } - } - }, - "put": { - tags: ["activity_information"], - "description": "activity_informationの更新", - responses: { - "200": { - "description": "更新されたactivity_informationが返ってくる", - } - }, - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - }, - { - "in": "body", - "name": "activity_information", - "schema":{ - "$ref": "#/definitions/activity_information" - }, - }, - ], - }, - "delete": { - tags: ["activity_information"], - "description": "IDを指定してactivity_informationの削除", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - responses: { - "200": { - "description": "activity_informationの削除完了", - } - }, - }, - }, - "/activity_styles": { - "get": { - tags: ["activity_style"], - "description": "activity_styleの一覧を取得", - "responses": { - "200": { - "description": "activity_styleの一覧の取得", - } - } - }, - "post": { - tags: ["activity_style"], - "description": "activity_styleの作成", - "parameters": [ - { - "in": "body", - "name": "activity_style", - "schema":{ - "$ref": "#/definitions/activity_style" - }, - }, - ], - responses: { - "200": { - "description": "createされたactivity_styleが返ってくる", - } - }, - }, - }, - "/activity_styles/{id}": { - "get": { - tags: ["activity_style"], - "description": "IDで指定されたactivity_styleの取得", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "activity_styleの取得", - } - } - }, - "put": { - tags: ["activity_style"], - "description": "activity_styleの更新", - responses: { - "200": { - "description": "更新されたactivity_styleが返ってくる", - } - }, - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - }, - { - "in": "body", - "name": "activity_style", - "schema":{ - "$ref": "#/definitions/activity_style" - }, - }, - ], - }, - "delete": { - tags: ["activity_style"], - "description": "IDを指定してactivity_styleの削除", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - responses: { - "200": { - "description": "activity_styleの削除完了", - } - }, - }, - }, - "/budgets": { - "get": { - tags: ["budget"], - "description": "budgetの一覧を取得", - "responses": { - "200": { - "description": "budgetの一覧の取得", - } - } - }, - "post": { - tags: ["budget"], - "description": "budgetの作成", - responses: { - "200": { - "description": "create されたbudgetが返ってくる", - } - }, - "parameters": [ - { - "name": "price", - "in": "query", - "description": "price", - "required": true, - "type": "integer" - }, - { - "name": "year_id", - "in": "query", - "description": "year_id", - "type": "integer" - }, - { - "name": "source_id", - "in": "query", - "description": "source_id", - "type": "integer" - } - ], - }, - }, - "/budgets/details": { - "get": { - tags: ["budget"], - "description": "budgetに紐づくyearとsourceの一覧を取得", - "responses": { - "200": { - "description": "budgetに紐づくyearとsourceの一覧を取得", - } - } - }, - }, - "/budgets/details/{year}": { - "get": { - tags: ["budget"], - "description": "年度で指定されたbudgetsに紐づく年度とソースを取得", - "parameters": [ - { - "name": "year", - "in": "path", - "description": "year", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "年度で指定されたbudgetsに紐づく年度とソースを取得", - } - } - }, - }, - "/budgets/{id}": { - "get": { - tags: ["budget"], - "description": "IDで指定されたbudgetの取得", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "budgetの取得", - } - } - }, - "put": { - tags: ["budget"], - "description": "budgetの更新", - responses: { - "200": { - "description": "更新されたbudgetが返ってくる", - } - }, - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - }, - { - "name": "price", - "in": "query", - "description": "price", - "type": "integer" - }, - { - "name": "year_id", - "in": "query", - "description": "year_id", - "type": "integer" - }, - { - "name": "source_id", - "in": "query", - "description": "source_id", - "type": "integer" - }, - ], - }, - "delete": { - tags: ["budget"], - "description": "IDを指定してbudgetの削除", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - responses: { - "200": { - "description": "budgetの削除完了", - } - }, - }, - }, - "/budgets/{id}/details": { - "get": { - tags: ["budget"], - "description": "IDで指定されたbudgetに紐づくyearとsourceを取得", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "budgetに紐づくyearとsourceを取得", - } - } - }, - }, - "/bureaus": { - "get": { - tags: ["bureau"], - "description": "bureauの一覧を取得", - "responses": { - "200": { - "description": "bureauの一覧の取得", - } - } - }, - "post": { - tags: ["bureau"], - "description": "bureauの作成", - responses: { - "200": { - "description": "create されたbureauが返ってくる", - } - }, - "parameters": [ - { - "name": "name", - "in": "query", - "description": "name", - "required": true, - "type": "string" - }, - ], - }, - }, - "/bureaus/{id}": { - "get": { - tags: ["bureau"], - "description": "IDで指定されたbureauの取得", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "bureauの取得", - } - } - }, - "put": { - tags: ["bureau"], - "description": "bureauの更新", - responses: { - "200": { - "description": "更新されたbureauが返ってくる", - } - }, - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - }, - { - "name": "name", - "in": "query", - "description": "name", - "type": "string" - }, - ], - }, - "delete": { - tags: ["bureau"], - "description": "IDを指定してbureauの削除", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - responses: { - "200": { - "description": "bureauの削除完了", - } - }, - }, - }, - "/departments": { - "get": { - tags: ["department"], - "description": "departmentの一覧の取得", - "responses": { - "200": { - "description": "departmentの一覧を取得", - } - } - }, - "post": { - tags: ["department"], - "description": "departmentの作成", - responses: { - "200": { - "description": "作成されたdepartmentが返ってくる", - } - }, - "parameters": [ - { - "name": "name", - "in": "query", - "description": "name", - "type": "string" - } - ], - }, - }, - "/departments/{id}": { - "get": { - tags: ["department"], - "description": "IDで指定されたdepartmentの取得", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "departmentの取得", - } - } - }, - "put": { - tags: ["department"], - "description": "departmentの更新", - responses: { - "200": { - "description": "更新されたdepartmentが返ってくる", - } - }, - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - }, - { - "name": "name", - "in": "query", - "description": "name", - "type": "string" - } - ], - }, - "delete": { - tags: ["department"], - "description": "IDを指定してdepartmentの削除", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - responses: { - "200": { - "description": "departmentの削除完了", - } - }, - }, - }, - "/expenses": { - "get": { - tags: ["expense"], - "description": "expenseの一覧の取得", - "responses": { - "200": { - "description": "expenseの一覧を取得", - } - } - }, - "post": { - tags: ["expense"], - "description": "expenseの作成", - responses: { - "200": { - "description": "作成されたexpenseが返ってくる", - } - }, - "parameters": [ - { - "name": "name", - "in": "query", - "description": "name", - "type": "string" - }, - { - "name": "year_id", - "in": "query", - "description": "year_id", - "type": "string" - } - ], - }, - }, - "/expenses/details": { - "get": { - tags: ["expense"], - "description": "expenseに紐づくpurchase_itemの一覧を取得", - "responses": { - "200": { - "description": "expenseに紐づくpurchase_itemの一覧を取得", - } - } - }, - }, - "/expenses/{id}": { - "get": { - tags: ["expense"], - "description": "IDで指定されたexpenseの取得", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "expenseの取得", - } - } - }, - "put": { - tags: ["expense"], - "description": "expenseの更新", - responses: { - "200": { - "description": "更新されたexpenseが返ってくる", - } - }, - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - }, - { - "name": "name", - "in": "query", - "description": "name", - "type": "string" - }, - { - "name": "year_id", - "in": "query", - "description": "year_id", - "type": "string" - } - ], - }, - "delete": { - tags: ["expense"], - "description": "IDを指定してexpenseの削除", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - responses: { - "200": { - "description": "expenseの削除完了", - } - }, - }, - }, - "/expenses/{id}/details": { - "get": { - tags: ["expense"], - "description": "IDで指定されたexpenseに紐づくpurchase_itemsを取得", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "IDで指定されたexpenseに紐づくpurchase_itemsを取得", - } - } - }, - }, - "/expenses/details/{year}": { - "get": { - tags: ["expense"], - "description": "年度で指定されたexpenseに紐づく購入申請と購入報告を取得", - "parameters": [ - { - "name": "year", - "in": "path", - "description": "year", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "yearで指定されたexpenseに紐づく購入申請と購入報告を取得", - } - } - }, - }, - "/expenses/fiscalyear/{year}": { - "get": { - tags: ["expense"], - "description": "年度で指定されたexpensesを取得", - "parameters": [ - { - "name": "year", - "in": "path", - "description": "year", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "yearで指定されたexpensesを取得", - } - } - }, - }, - "/fund_informations": { - "get": { - tags: ["fund_information"], - "description": "fund_informationの一覧を取得", - "responses": { - "200": { - "description": "fund_informationの一覧の取得", - } - } - }, - "post": { - tags: ["fund_information"], - "description": "fund_informationの作成", - responses: { - "200": { - "description": "create されたfund_informationが返ってくる", - } - }, - "parameters": [ - { - "name": "user_id", - "in": "query", - "description": "user_id", - "required": true, - "type": "integer" - }, - { - "name": "teacher_id", - "in": "query", - "description": "teacher_id", - "required": true, - "type": "integer" - }, - { - "name": "price", - "in": "query", - "description": "price", - "required": true, - "type": "integer" - }, - { - "name": "remark", - "in": "query", - "description": "remark", - "type": "string" - }, - { - "name": "is_first_check", - "in": "query", - "description": "is_first_check", - "type": "boolean" - }, - { - "name": "is_last_check", - "in": "query", - "description": "is_last_check", - "type": "boolean" - }, - { - "name": "received_at", - "in": "query", - "description": "received_at", - "type": "string" - } - ], - }, - }, - "/fund_informations/details": { - "get": { - tags: ["fund_information"], - "description": "fund_informationに紐づくteacherとuserの一覧を取得", - "responses": { - "200": { - "description": "fund_informationに紐づくteacherとuserの一覧を取得", - } - } - }, - }, - "/fund_informations/{id}": { - "get": { - tags: ["fund_information"], - "description": "IDで指定されたfund_informationの取得", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "fund_informationの取得", - } - } - }, - "put": { - tags: ["fund_information"], - "description": "fund_informationの更新", - responses: { - "200": { - "description": "更新されたfund_informationが返ってくる", - } - }, - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - }, - { - "name": "user_id", - "in": "query", - "description": "user_id", - "required": true, - "type": "integer" - }, - { - "name": "teacher_id", - "in": "query", - "description": "teacher_id", - "required": true, - "type": "integer" - }, - { - "name": "price", - "in": "query", - "description": "price", - "required": true, - "type": "integer" - }, - { - "name": "remark", - "in": "query", - "description": "remark", - "type": "string" - }, - { - "name": "is_first_check", - "in": "query", - "description": "is_first_check", - "type": "boolean" - }, - { - "name": "is_last_check", - "in": "query", - "description": "is_last_check", - "type": "boolean" - }, - { - "name": "received_at", - "in": "query", - "description": "received_at", - "type": "string" - } - ], - }, - "delete": { - tags: ["fund_information"], - "description": "IDを指定してfund_informationの削除", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - responses: { - "200": { - "description": "fund_informationの削除完了", - } - }, - }, - }, - "/fund_informations/{id}/details": { - "get": { - tags: ["fund_information"], - "description": "IDで指定されたfund_informatinに紐づくteacherとuserを取得", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "fund_informatinに紐づくteacherとuserを取得", - } - } - }, - }, - "/fund_informations/details/{year}": { - "get": { - tags: ["fund_information"], - "description": "年度で指定されたfund_informationsに紐づくデータを取得", - "parameters": [ - { - "name": "year", - "in": "path", - "description": "year", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "年度で指定されたfund_informationsに紐づくデータを取得", - } - } - }, - }, - "/password_reset/{id}": { - "post": { - tags: ["password_reset"], - "description": "password_変更", - responses: { - "200": { - "description": "passwordを変更する", - } - }, - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - }, - { - "in": "body", - "name": "passwordResetData", - "schema":{ - "$ref": "#/definitions/passwordResetData" - }, - }, - ], - }, - }, - "/password_reset/request": { - "post": { - tags: ["password_reset"], - "description": "password_reset_token発行リクエスト", - responses: { - "200": { - "description": "password_reset_tokenをメールアドレスに送信する", - } - }, - "parameters": [ - { - "name": "email", - "in": "query", - "description": "email", - "type": "string" - }, - ], - }, - }, - "/password_reset/{id}/valid": { - "post": { - tags: ["password_reset"], - "description": "トークンの称号", - responses: { - "200": { - "description": "password_reset_tokenが正しい確認する", - } - }, - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - }, - { - "name": "token", - "in": "query", - "description": "token", - "type": "string" - }, - ], - }, - }, - "/purchaseitems": { - "get": { - tags: ["purchase_item"], - "description": "purchase_itemの一覧を取得", - "responses": { - "200": { - "description": "purchase_itemの一覧の取得", - } - } - }, - "post": { - tags: ["purchase_item"], - "description": "purchase_itemの作成", - responses: { - "200": { - "description": "createされたpurchase_itemが返ってくる", - } - }, - "parameters": [ - { - "name": "item", - "in": "query", - "description": "item", - "type": "string" - }, - { - "name": "price", - "in": "query", - "description": "price", - "type": "integer" - }, - { - "name": "quantity", - "in": "query", - "description": "quantity", - "type": "integer" - }, - { - "name": "detail", - "in": "query", - "description": "detail", - "type": "string" - }, - { - "name": "url", - "in": "query", - "description": "url", - "type": "string" - }, - { - "name": "purchase_order_id", - "in": "query", - "description": "purchase_order_id", - "type": "integer" - }, - { - "name": "finance_check", - "in": "query", - "description": "finance_check", - "type": "boolean" - } - ], - }, - }, - "/purchaseitems/details": { - "get": { - tags: ["purchase_item"], - "description": "purchase_itemに紐づくuserとpurchase_orderの一覧を取得", - "responses": { - "200": { - "description": "purchase_itemに紐づくuserとpurchase_orderの一覧を取得", - } - } - }, - }, - "/purchaseitems/{id}": { - "get": { - tags: ["purchase_item"], - "description": "IDで指定されたpurchase_itemの取得", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "purchase_itemの取得", - } - } - }, - "put": { - tags: ["purchase_item"], - "description": "purchase_itemの更新", - responses: { - "200": { - "description": "更新されたpurchase_itemが返ってくる", - } - }, - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - }, - { - "name": "item", - "in": "query", - "description": "item", - "type": "string" - }, - { - "name": "price", - "in": "query", - "description": "price", - "type": "integer" - }, - { - "name": "quantity", - "in": "query", - "description": "quantity", - "type": "integer" - }, - { - "name": "detail", - "in": "query", - "description": "detail", - "type": "string" - }, - { - "name": "url", - "in": "query", - "description": "url", - "type": "string" - }, - { - "name": "purchase_order_id", - "in": "query", - "description": "purchase_order_id", - "type": "integer" - }, - { - "name": "finance_check", - "in": "query", - "description": "finance_check", - "type": "boolean" - }, - ], - }, - "delete": { - tags: ["purchase_item"], - "description": "IDを指定してpurchase_itemの削除", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - responses: { - "200": { - "description": "purchase_itemの削除完了", - } - }, - }, - }, - "/purchaseitems/{id}/details": { - "get": { - tags: ["purchase_item"], - "description": "IDで指定されたpurchase_itemに紐づくuserとpurchase_orderを取得", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "IDで指定されたpurchase_itemに紐づくuserとpurchase_orderを取得", - } - } - }, - }, - "/purchaseorders": { - "get": { - tags: ["purchase_order"], - "description": "purchase_orderの一覧を取得", - "responses": { - "200": { - "description": "purchase_orderの一覧の取得", - } - } - }, - "post": { - tags: ["purchase_order"], - "description": "purchase_orderの作成", - responses: { - "200": { - "description": "createされたpurchase_orderが返ってくる", - } - }, - "parameters": [ - { - "name": "deadline", - "in": "query", - "description": "deadline", - "type": "string" - }, - { - "name": "user_id", - "in": "query", - "description": "user_id", - "type": "integer" - }, - { - "name": "expense_id", - "in": "query", - "description": "expense_id", - "type": "integer" - }, - { - "name": "finance_check", - "in": "query", - "description": "finance_check", - "type": "boolean" - } - ], - }, - }, - "/purchaseorders/details": { - "get": { - tags: ["purchase_order"], - "description": "purchaseorderに紐づくuserとitemの一覧を取得", - "responses": { - "200": { - "description": "purchase_orderに紐づくuserとpurchase_itemの一覧を取得", - } - } - }, - }, - "/purchaseorders/{id}": { - "get": { - tags: ["purchase_order"], - "description": "IDで指定されたpurchase_orderの取得", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "purchase_orderの取得", - } - } - }, - "put": { - tags: ["purchase_order"], - "description": "purchase_orderの更新", - responses: { - "200": { - "description": "更新されたpurchase_orderが返ってくる", - } - }, - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - }, - { - "name": "deadline", - "in": "query", - "description": "deadline", - "type": "string" - }, - { - "name": "user_id", - "in": "query", - "description": "user_id", - "type": "integer" - }, - { - "name": "expense_id", - "in": "query", - "description": "expense_id", - "type": "integer" - }, - { - "name": "finance_check", - "in": "query", - "description": "finance_check", - "type": "boolean" - }, - ], - }, - "delete": { - tags: ["purchase_order"], - "description": "IDを指定してpurchase_orderの削除", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - responses: { - "200": { - "description": "purchase_orderの削除完了", - } - }, - }, - }, - "/purchaseorders/{id}/details": { - "get": { - tags: ["purchase_order"], - "description": "IDで指定されたpurchase_orderに紐づくuserとpurchase_itemを取得", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "IDで指定されたpurchase_orderに紐づくuserとpurchase_itemを取得", - } - } - }, - }, - "/purchaseorders/details/{year}": { - "get": { - tags: ["purchase_order"], - "description": "年度で指定されたpurchase_orderに紐づくuserとpurchase_itemを取得", - "parameters": [ - { - "name": "year", - "in": "path", - "description": "year", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "IDで指定されたpurchase_orderに紐づくuserとpurchase_itemを取得", - } - } - }, - }, - "/purchaseorders/send/{id}": { - "post": { - tags: ["purchase_order"], - "description": "IDで指定されたpurchase_orderのslackへメッセージ送信", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - }, - { - "in": "body", - "name": "purchase_items", - "type": "array", - "items":{ - "$ref": "#/definitions/purchaseItem" - }, - }, - ] - } - }, - "/purchaseorders/details/unregistered/{year}": { - "get": { - tags: ["purchase_order"], - "description": "年度で指定されたreportsに未登録のpurchase_orderに紐づくuserとpurchase_itemを取得", - "parameters": [ - { - "name": "year", - "in": "path", - "description": "year", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "IDで指定されたreportsに未登録のpurchase_orderに紐づくuserとpurchase_itemを取得", - } - } - }, - }, - "/purchasereports": { - "get": { - tags: ["purchase_report"], - "description": "purchase_reportの一覧を取得", - "responses": { - "200": { - "description": "purchase_reportの一覧の取得", - } - } - }, - "post": { - tags: ["purchase_report"], - "description": "purchase_reportの作成", - "parameters": [ - { - "in": "body", - "name": "purchaseReport", - "schema":{ - "$ref": "#/definitions/purchaseReport" - }, - }, - ], - responses: { - "200": { - "description": "作成されたpurchaseReportが返ってくる", - }, - }, - }, - }, - "/purchasereports/details": { - "get": { - tags: ["purchase_report"], - "description": "purchasereportsに紐づくデータの一覧を取得", - "responses": { - "200": { - "description": "purchase_reportに紐づくデータの一覧を取得", - } - } - }, - }, - "/purchasereports/{id}": { - "get": { - tags: ["purchase_report"], - "description": "IDで指定されたpurchase_reportの取得", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "purchase_reportの取得", - } - } - }, - "put": { - tags: ["purchase_report"], - "description": "purchase_reportの更新", - responses: { - "200": { - "description": "更新されたpurchase_reportが返ってくる", - } - }, - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - }, - { - "in": "body", - "name": "purchaseReport", - "schema":{ - "$ref": "#/definitions/purchaseReport" - }, - }, - ], - }, - "delete": { - tags: ["purchase_report"], - "description": "IDを指定してpurchase_reportの削除", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - responses: { - "200": { - "description": "purchase_reportの削除完了", - } - }, - }, - }, - "/purchasereports/{id}/details": { - "get": { - tags: ["purchase_report"], - "description": "IDで指定されたpurchase_reportに紐づくデータを取得", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "IDで指定されたpurchase_reportに紐づくデータを取得", - } - } - }, - }, - "/purchasereports/details/{year}": { - "get": { - tags: ["purchase_report"], - "description": "年度で指定されたpurchase_reportsに紐づくデータを取得", - "parameters": [ - { - "name": "year", - "in": "path", - "description": "year", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "年度で指定されたpurchase_reportsに紐づくデータを取得", - } - } - }, - }, - "/receipts": { - "get": { - tags: ["receipt"], - "description": "receiptの一覧を取得", - "responses": { - "200": { - "description": "receiptの一覧の取得", - } - } - }, - "post": { - tags: ["receipt"], - "description": "receiptの作成", - responses: { - "200": { - "description": "create されたreceiptが返ってくる", - } - }, - "parameters": [ - { - "in": "body", - "name": "receipt", - "schema":{ - "$ref": "#/definitions/receipt" - }, - }, - ], - }, - }, - "/receipts/{id}": { - "get": { - tags: ["receipt"], - "description": "IDで指定されたreceiptの取得", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "receiptの取得", - } - } - }, - "put": { - tags: ["receipt"], - "description": "receiptの更新", - responses: { - "200": { - "description": "更新されたreceiptが返ってくる", - } - }, - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - }, - { - "in": "body", - "name": "receipt", - "schema":{ - "$ref": "#/definitions/receipt" - }, - }, - ], - }, - "delete": { - tags: ["receipt"], - "description": "IDを指定してreceiptの削除", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - responses: { - "200": { - "description": "receiptの削除完了", - } - }, - }, - }, - "/receipts/reports/{id}": { - "get": { - tags: ["receipt"], - "description": "purchaseReportIDで指定されたreceiptの取得", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "reportsIDを指定してreceiptの取得", - } - } - }, - }, - "/sources": { - "get": { - tags: ["source"], - "description": "sourceの一覧の取得", - "responses": { - "200": { - "description": "sourceの一覧を取得", - } - } - }, - "post": { - tags: ["source"], - "description": "sourceの作成", - responses: { - "200": { - "description": "作成されたsourceが返ってくる", - } - }, - "parameters": [ - { - "name": "name", - "in": "query", - "description": "name", - "required": true, - "type": "string" - } - ], - }, - }, - "/sources/{id}": { - "get": { - tags: ["source"], - "description": "IDで指定されたsourceの取得", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "sourceの取得", - } - } - }, - "put": { - tags: ["source"], - "description": "sourceの更新", - responses: { - "200": { - "description": "更新されたsourceが返ってくる", - } - }, - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - }, - { - "name": "name", - "in": "query", - "description": "name", - "required": true, - "type": "string" - } - ], - }, - "delete": { - tags: ["source"], - "description": "IDを指定してsourceの削除", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - responses: { - "200": { - "description": "sourceの削除完了", - } - }, - }, - }, - "/sponsors": { - "get": { - tags: ["sponsor"], - "description": "sponsorの一覧の取得", - "responses": { - "200": { - "description": "sponsorsの一覧を取得", - } - } - }, - "post": { - tags: ["sponsor"], - "description": "sponsorの作成", - "parameters": [ - { - "in": "body", - "name": "sponsor", - "schema":{ - "$ref": "#/definitions/sponsor" - }, - }, - ], - responses: { - "200": { - "description": "作成されたsponsorが返ってくる", - }, - }, - }, - }, - "/sponsors/{id}": { - "get": { - tags: ["sponsor"], - "description": "IDで指定されたsponsorの取得", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "sponsorの取得", - } - } - }, - "put": { - tags: ["sponsor"], - "description": "sponsorの更新", - responses: { - "200": { - "description": "更新されたsponsorが返ってくる", - } - }, - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - }, - { - "in": "body", - "name": "sponsor", - "schema":{ - "$ref": "#/definitions/sponsor" - }, - }, - ], - }, - "delete": { - tags: ["sponsor"], - "description": "IDを指定してsponsorの削除", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - responses: { - "200": { - "description": "sponsorの削除完了", - } - }, - }, - }, - "/sponsors/periods/{year}": { - "get": { - tags: ["sponsor"], - "description": "年度で指定されたsponsorを取得", - "parameters": [ - { - "name": "year", - "in": "path", - "description": "year", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "sponsorの取得完了", - } - } - }, - }, - "/sponsorstyles": { - "get": { - tags: ["sponsorstyle"], - "description": "sponsorstyleの一覧の取得", - "responses": { - "200": { - "description": "sponsorstyleの一覧を取得", - } - } - }, - "post": { - tags: ["sponsorstyle"], - "description": "sponsorstyleの作成", - "parameters": [ - { - "in": "body", - "name": "sponsorStyle", - "schema":{ - "$ref": "#/definitions/sponsorStyle" - }, - }, - ], - responses: { - "200": { - "description": "作成されたsponsorstyleが返ってくる", - }, - }, - }, - }, - "/sponsorstyles/{id}": { - "get": { - tags: ["sponsorstyle"], - "description": "IDで指定されたsponsorstyleの取得", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "sponsorstyleの取得", - } - } - }, - "put": { - tags: ["sponsorstyle"], - "description": "sponsorstyleの更新", - responses: { - "200": { - "description": "更新されたsponsorstyleが返ってくる", - } - }, - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - }, - { - "in": "body", - "name": "sponsorStyle", - "schema":{ - "$ref": "#/definitions/sponsorStyle" - }, - }, - ], - }, - "delete": { - tags: ["sponsorstyle"], - "description": "IDを指定してsponsorstyleの論理削除", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - responses: { - "200": { - "description": "sponsorstyleの論理削除完了", - } - }, - }, - }, - "/teachers": { - "get": { - tags: ["teacher"], - "description": "teacherの一覧を取得", - "responses": { - "200": { - "description": "teacherの一覧を取得", - "schema": { - "type": "array", - } - } - } - }, - "post": { - tags: ["teacher"], - "description": "teacherの作成", - responses: { - "200": { - "description": "createされたteacherが返ってくる", - } - }, - "parameters": [ - { - "name": "name", - "in": "query", - "description": "名前", - "type": "string", - "required": true - }, - { - "name": "position", - "in": "query", - "description": "役職", - "type": "string", - "required": true - }, - { - "name": "department_id", - "in": "query", - "description": "学科ID", - "type": "integer", - }, - { - "name": "room", - "in": "query", - "description": "部屋番号", - "type": "string", - }, - { - "name": "is_black", - "in": "query", - "description": "ブラックリストの真偽", - "type": "boolean", - }, - { - "name": "remark", - "in": "query", - "description": "備考", - "type": "string", - }, - ], - }, - }, - "/teachers/delete": { - "delete": { - tags: ["teacher"], - "description": "teacherの複数削除", - responses: { - "200": { - "description": "複数のteacherをidで削除できる", - } - }, - "parameters": [ - { - "in": "body", - "name": "destroyTeacherIDs", - "schema":{ - "$ref": "#/definitions/destroyTeacherIDs" - }, - }, - ], - }, - }, - "/teachers/{id}": { - "get": { - tags: ["teacher"], - "description": "IDで指定されたteacherの取得", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "teacherの取得", - } - } - }, - "put": { - tags: ["teacher"], - "description": "teacherの更新", - responses: { - "200": { - "description": "更新されたteacherが返ってくる", - } - }, - "parameters": [ - { - "name": "id", - "in": "path", - "description": "Teacherのid", - "required": true, - "type": "integer" - }, - { - "name": "name", - "in": "query", - "description": "教員の名前", - "type": "string", - "required": true - }, - { - "name": "position", - "in": "query", - "description": "教員の役職", - "type": "string", - "required": true - }, - { - "name": "department_id", - "in": "query", - "description": "学科ID", - "type": "integer", - }, - { - "name": "room", - "in": "query", - "description": "部屋番号", - "type": "string", - }, - { - "name": "is_black", - "in": "query", - "description": "ブラックリストに入っているか", - "type": "boolean", - }, - { - "name": "remark", - "in": "query", - "description": "備考欄", - "type": "string", - }, - ], - }, - "delete": { - tags: ["teacher"], - "description": "IDを指定してteacherの削除", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - responses: { - "200": { - "description": "teacherの削除完了", - } - }, - }, - }, - "/teachers/fundRegistered/{year}": { - "get": { - tags: ["teacher"], - "description": "募金登録済みのteacherのidを取得", - "parameters": [ - { - "name": "year", - "in": "path", - "description": "year", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "募金登録済みのteacherのidを取得", - } - } - }, - }, - "/users": { - "get": { - tags: ["user"], - "description": "userの一覧を取得", - "responses": { - "200": { - "description": "userの一覧を取得", - "schema": { - "type": "array", - } - } - } - }, - "post": { - tags: ["user"], - "description": "userの作成", - responses: { - "200": { - "description": "createされたuserが返ってくる", - } - }, - "parameters": [ - { - "name": "name", - "in": "query", - "description": "name", - "type": "string", - "required": true - }, - { - "name": "bureau_id", - "in": "query", - "description": "bureau_d", - "type": "integer", - "required": true - }, - { - "name": "role_id", - "in": "query", - "description": "role_id", - "type": "integer", - "required": true, - }, - ], - }, - }, - "/users/delete": { - "delete": { - tags: ["user"], - "description": "userの複数作成", - responses: { - "200": { - "description": "複数のuserをidで削除できる", - } - }, - "parameters": [ - { - "in": "body", - "name": "destroyUserIDs", - "schema":{ - "$ref": "#/definitions/destroyUserIDs" - }, - }, - ], - }, - }, - "/users/{id}": { - "get": { - tags: ["user"], - "description": "IDで指定されたuserの取得", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "userの取得", - } - } - }, - "put": { - tags: ["user"], - "description": "userの更新", - responses: { - "200": { - "description": "更新されたuserが返ってくる", - } - }, - "parameters": [ - { - "name": "id", - "in": "path", - "description": "userのid", - "required": true, - "type": "integer" - }, - { - "name": "name", - "in": "query", - "description": "name", - "type": "string", - "required": true - }, - { - "name": "bureau_id", - "in": "query", - "description": "bureau_d", - "type": "integer", - "required": true - }, - { - "name": "role_id", - "in": "query", - "description": "role_id", - "type": "integer", - "required": true, - }, - ], - }, - "delete": { - tags: ["user"], - "description": "IDを指定してuserの削除", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - responses: { - "200": { - "description": "userの削除完了", - } - }, - }, - }, - "/years": { - "get": { - tags: ["year"], - "description": "yearの一覧の取得", - "responses": { - "200": { - "description": "yearの一覧を取得", - } - } - }, - "post": { - tags: ["year"], - "description": "yearの作成", - responses: { - "200": { - "description": "作成されたyearが返ってくる", - } - }, - "parameters": [ - { - "name": "year", - "in": "query", - "description": "year", - "required": true, - "type": "integer" - } - ], - }, - }, - "/years/{id}": { - "get": { - tags: ["year"], - "description": "IDで指定されたyearの取得", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - "responses": { - "200": { - "description": "yearの取得", - } - } - }, - "put": { - tags: ["year"], - "description": "yearの更新", - responses: { - "200": { - "description": "更新されたyearが返ってくる", - } - }, - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - }, - { - "name": "year", - "in": "query", - "description": "year", - "required": true, - "type": "integer" - } - ], - }, - "delete": { - tags: ["year"], - "description": "IDを指定してyearの削除", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - responses: { - "200": { - "description": "yearの削除完了", - }, - }, - }, - }, - "/years/periods": { - "get": { - tags: ["year_periods"], - "description": "年度一覧の取得", - "responses": { - "200": { - "description": "year_periodsの一覧を取得", - } - } - }, - "post": { - tags: ["year_periods"], - "description": "year_periodsの作成", - responses: { - "200": { - "description": "作成されたyear_periodsが返ってくる", - } - }, - "parameters": [ - { - "in": "body", - "name": "year_periods", - "schema":{ - "$ref": "#/definitions/year_periods" - }, - }, - ], - }, - }, - "/years/periods/{id}": { - "put": { - tags: ["year_periods"], - "description": "year_periodsの更新", - responses: { - "200": { - "description": "更新されたyear_periodsが返ってくる", - } - }, - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - }, - { - "in": "body", - "name": "year_periods", - "schema":{ - "$ref": "#/definitions/year_periods" - }, - }, - ], - }, - "delete": { - tags: ["year_periods"], - "description": "IDを指定してyear_periodsの削除", - "parameters": [ - { - "name": "id", - "in": "path", - "description": "id", - "required": true, - "type": "integer" - } - ], - responses: { - "200": { - "description": "year_periodsの削除完了", - }, - }, - }, - }, - }, - "definitions":{ - "activity":{ - "properties":{ - "sponsorID":{ - "type": "int", - "example": 1, - }, - "userID":{ - "type": "int", - "example": 1, - }, - "isDone":{ - "type": "boolean", - "example": false, - }, - "feature":{ - "type": "string", - "example": "なし", - }, - "expense":{ - "type": "int", - "example": 0, - }, - "remark":{ - "type": "string", - "example": "なし", - }, - "design":{ - "type": "int", - "example": 0, - }, - "url":{ - "type": "string", - "example": "", - }, - }, - "required":{ - "sponsorID", - "userID", - "isDone", - "feature", - "expense", - "remark", - }, - }, - "activity_information":{ - "properties":{ - "activityID":{ - "type": "int", - "example": 1, - - }, - "bucketName":{ - "type": "string", - "example": "なし", - }, - "fileName":{ - "type": "string", - "example": "なし", - }, - "fileType":{ - "type": "string", - "example": "なし", - - }, - "designProgress":{ - "type": "int", - "example": 1, - }, - "fileInformation":{ - "type": "string", - "example": "", - }, - }, - }, - "activity_style":{ - "properties":{ - "activityID":{ - "type": "int", - "example": 1, - - }, - "sponsorStyleID":{ - "type": "int", - "example": 1, - }, - }, - "required":{ - "activityID", - "sponsorStyleID", - }, - }, - "sponsorStyle":{ - "properties":{ - "style":{ - "type": "string", - "example": "1分の1", - - }, - "feature":{ - "type": "string", - "example": "カラー", - }, - "price":{ - "type": "int", - "example": 30000, - }, - }, - "required":{ - "style", - "feature", - "price", - }, - }, - "sponsor":{ - "properties":{ - "name":{ - "type": "string", - "example": "企業1", - - }, - "tel":{ - "type": "string", - "example": "09000000000", - }, - "email":{ - "type": "string", - "example": "test@example.com", - }, - "address":{ - "type": "string", - "example": "○○1-1", - }, - "representative":{ - "type": "string", - "example": "長岡太郎(社長)", - }, - }, - "required":{ - "name", - "tel", - "email", - "address", - "representative" - }, - }, - "passwordResetData":{ - "properties":{ - "token":{ - "type": "string", - "example": "", - }, - "password":{ - "type": "string", - "example": "", - }, - "confirmPassword":{ - "type": "string", - "example": "", - }, - }, - "required":{ - "year", - "startedAt", - "endedAt" - }, - }, - "purchaseReport":{ - "properties":{ - "userID":{ - "type": "int", - "example": 1, - - }, - "discount":{ - "type": "int", - "example": 0, - }, - "addition":{ - "type": "int", - "example": 0, - }, - "financeCheck":{ - "type": "boolean", - "example": false, - }, - "purchaseOrderID":{ - "type": "int", - "example": 1, - }, - "remark":{ - "type": "string", - "example": "", - }, - "buyer":{ - "type": "string", - "example": "", - }, - }, - "required":{ - "userID", - "discount", - "addition", - "financeCheck", - "purchaseOrderID" - }, - }, - "purchaseItem":{ - "properties":{ - "item":{ - "type": "string", - "example": "name", - }, - "price":{ - "type": "int", - "example": 0, - }, - "quantity":{ - "type": "int", - "example": 0, - }, - "detail":{ - "type": "string", - "example": "", - }, - "url":{ - "type": "string", - "example": "", - }, - "purchaseOrderID":{ - "type": "int", - "example": 1, - }, - "financeCheck":{ - "type": "boolean", - "example": false, - }, - }, - "required":{ - "item", - "price", - "quantity", - "financeCheck", - "purchaseOrderID" - }, - }, - "destroyTeacherIDs":{ - "properties":{ - "deleteIDs":{ - "type": "array", - "items": { - "type": "number" - }, - example: [] - }, - }, - "required":{ - "deleteIDs", - }, - }, - "destroyUserIDs":{ - "properties":{ - "deleteIDs":{ - "type": "array", - "items": { - "type": "number" - }, - example: [] - }, - }, - "required":{ - "deleteIDs", - }, - }, - "receipt":{ - "properties":{ - "purchaseReportID":{ - "type": "int", - "example": 1, - }, - "bucketName":{ - "type": "string", - "example": "", - }, - "fileName":{ - "type": "string", - "example": "", - }, - "fileType":{ - "type": "string", - "example": "", - }, - "remark":{ - "type": "string", - "example": "", - }, - }, - "required":{ - "purchaseReportID", - }, - }, - "year_periods":{ - "properties":{ - "year":{ - "type": "int", - "example": 2024, - - }, - "startedAt":{ - "type": "string", - "example": "0000-00-00T00:00:00Z", - }, - "endedAt":{ - "type": "string", - "example": "0000-00-00T00:00:00Z", - }, - }, - "required":{ - "year", - "startedAt", - "endedAt" - }, - }, - }, -}` - -// SwaggerInfo holds exported Swagger Info so clients can modify it -var SwaggerInfo = &swag.Spec{ - Version: "2.0.0", - Host: "localhost:1323", - BasePath: "/", - Schemes: []string{"http"}, - Title: "NUTFes FinanSu API", - Description: "FinanSu APIドキュメント", - InfoInstanceName: "swagger", - SwaggerTemplate: docTemplate, -} - -func init() { - swag.Register(SwaggerInfo.InstanceName(), SwaggerInfo) -} diff --git a/api/docs/swagger.json b/api/docs/swagger.json deleted file mode 100644 index 46d747ab7..000000000 --- a/api/docs/swagger.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "contact": {} - }, - "paths": {} -} diff --git a/api/docs/swagger.yaml b/api/docs/swagger.yaml deleted file mode 100644 index b64379cad..000000000 --- a/api/docs/swagger.yaml +++ /dev/null @@ -1,4 +0,0 @@ -info: - contact: {} -paths: {} -swagger: "2.0" diff --git a/api/drivers/server/server.go b/api/drivers/server/server.go index fe6027a99..a38df32c4 100644 --- a/api/drivers/server/server.go +++ b/api/drivers/server/server.go @@ -1,13 +1,12 @@ package server import ( - _ "github.com/NUTFes/FinanSu/api/docs" - "github.com/NUTFes/FinanSu/api/router" - "github.com/labstack/echo/v4" - "github.com/labstack/echo/v4/middleware" - echoSwagger "github.com/swaggo/echo-swagger" "net/http" "os" + + "github.com/NUTFes/FinanSu/api/router" + echo "github.com/labstack/echo/v4" + "github.com/labstack/echo/v4/middleware" ) func RunServer(router router.Router) { @@ -28,16 +27,13 @@ func RunServer(router router.Router) { // CORS対策 e.Use(middleware.CORSWithConfig(middleware.CORSConfig{ - AllowOrigins: []string{"http://localhost:3000", "127.0.0.1:3000", "http://localhost:3001", "127.0.0.1:3001", "https://finansu.nutfes.net"}, // ドメイン + AllowOrigins: []string{"http://localhost:3000", "127.0.0.1:3000", "http://localhost:3001", "127.0.0.1:3001", "http://localhost:8000", "127.0.0.1:8000", "https://finansu.nutfes.net"}, // ドメイン AllowMethods: []string{http.MethodGet, http.MethodPost, http.MethodPut, http.MethodDelete}, })) // ルーティング router.ProvideRouter(e) - // swagger - e.GET("/swagger/*", echoSwagger.WrapHandler) - // サーバー起動 e.Start(":1323") } diff --git a/api/generated/openapi_gen.go b/api/generated/openapi_gen.go new file mode 100644 index 000000000..52e60dcfe --- /dev/null +++ b/api/generated/openapi_gen.go @@ -0,0 +1,3188 @@ +// Package generated provides primitives to interact with the openapi HTTP API. +// +// Code generated by github.com/deepmap/oapi-codegen/v2 version v2.2.0 DO NOT EDIT. +package generated + +import ( + "fmt" + "net/http" + + "github.com/labstack/echo/v4" + "github.com/oapi-codegen/runtime" +) + +// Activity defines model for activity. +type Activity struct { + Design *int `json:"design,omitempty"` + Expense int `json:"expense"` + Feature string `json:"feature"` + IsDone bool `json:"isDone"` + Remark string `json:"remark"` + SponsorID int `json:"sponsorID"` + Url *string `json:"url,omitempty"` + UserID int `json:"userID"` +} + +// ActivityInformation defines model for activity_information. +type ActivityInformation struct { + ActivityID *int `json:"activityID,omitempty"` + BucketName *string `json:"bucketName,omitempty"` + DesignProgress *int `json:"designProgress,omitempty"` + FileInformation *string `json:"fileInformation,omitempty"` + FileName *string `json:"fileName,omitempty"` + FileType *string `json:"fileType,omitempty"` +} + +// ActivityStyle defines model for activity_style. +type ActivityStyle struct { + ActivityID int `json:"activityID"` + SponsorStyleID int `json:"sponsorStyleID"` +} + +// DestroyTeacherIDs defines model for destroyTeacherIDs. +type DestroyTeacherIDs struct { + DeleteIDs []float32 `json:"deleteIDs"` +} + +// DestroyUserIDs defines model for destroyUserIDs. +type DestroyUserIDs struct { + DeleteIDs []float32 `json:"deleteIDs"` +} + +// PasswordResetData defines model for passwordResetData. +type PasswordResetData struct { + ConfirmPassword *string `json:"confirmPassword,omitempty"` + Password *string `json:"password,omitempty"` + Token *string `json:"token,omitempty"` +} + +// PurchaseItem defines model for purchaseItem. +type PurchaseItem struct { + Detail *string `json:"detail,omitempty"` + FinanceCheck bool `json:"financeCheck"` + Item string `json:"item"` + Price int `json:"price"` + PurchaseOrderID int `json:"purchaseOrderID"` + Quantity int `json:"quantity"` + Url *string `json:"url,omitempty"` +} + +// PurchaseReport defines model for purchaseReport. +type PurchaseReport struct { + Addition int `json:"addition"` + Buyer *string `json:"buyer,omitempty"` + Discount int `json:"discount"` + FinanceCheck bool `json:"financeCheck"` + PurchaseOrderID int `json:"purchaseOrderID"` + Remark *string `json:"remark,omitempty"` + UserID int `json:"userID"` +} + +// Receipt defines model for receipt. +type Receipt struct { + BucketName *string `json:"bucketName,omitempty"` + FileName *string `json:"fileName,omitempty"` + FileType *string `json:"fileType,omitempty"` + PurchaseReportID int `json:"purchaseReportID"` + Remark *string `json:"remark,omitempty"` +} + +// Sponsor defines model for sponsor. +type Sponsor struct { + Address string `json:"address"` + Email string `json:"email"` + Name string `json:"name"` + Representative string `json:"representative"` + Tel string `json:"tel"` +} + +// SponsorStyle defines model for sponsorStyle. +type SponsorStyle struct { + Feature string `json:"feature"` + Price int `json:"price"` + Style string `json:"style"` +} + +// YearPeriods defines model for year_periods. +type YearPeriods struct { + EndedAt string `json:"endedAt"` + StartedAt string `json:"startedAt"` + Year int `json:"year"` +} + +// PostBudgetsParams defines parameters for PostBudgets. +type PostBudgetsParams struct { + // Price price + Price int `form:"price" json:"price"` + + // YearId year_id + YearId *int `form:"year_id,omitempty" json:"year_id,omitempty"` + + // SourceId source_id + SourceId *int `form:"source_id,omitempty" json:"source_id,omitempty"` +} + +// PutBudgetsIdParams defines parameters for PutBudgetsId. +type PutBudgetsIdParams struct { + // Price price + Price *int `form:"price,omitempty" json:"price,omitempty"` + + // YearId year_id + YearId *int `form:"year_id,omitempty" json:"year_id,omitempty"` + + // SourceId source_id + SourceId *int `form:"source_id,omitempty" json:"source_id,omitempty"` +} + +// PostBureausParams defines parameters for PostBureaus. +type PostBureausParams struct { + // Name name + Name string `form:"name" json:"name"` +} + +// PutBureausIdParams defines parameters for PutBureausId. +type PutBureausIdParams struct { + // Name name + Name *string `form:"name,omitempty" json:"name,omitempty"` +} + +// PostDepartmentsParams defines parameters for PostDepartments. +type PostDepartmentsParams struct { + // Name name + Name *string `form:"name,omitempty" json:"name,omitempty"` +} + +// PutDepartmentsIdParams defines parameters for PutDepartmentsId. +type PutDepartmentsIdParams struct { + // Name name + Name *string `form:"name,omitempty" json:"name,omitempty"` +} + +// PostExpensesParams defines parameters for PostExpenses. +type PostExpensesParams struct { + // Name name + Name *string `form:"name,omitempty" json:"name,omitempty"` + + // YearId year_id + YearId *string `form:"year_id,omitempty" json:"year_id,omitempty"` +} + +// PutExpensesIdParams defines parameters for PutExpensesId. +type PutExpensesIdParams struct { + // Name name + Name *string `form:"name,omitempty" json:"name,omitempty"` + + // YearId year_id + YearId *string `form:"year_id,omitempty" json:"year_id,omitempty"` +} + +// PostFundInformationsParams defines parameters for PostFundInformations. +type PostFundInformationsParams struct { + // UserId user_id + UserId int `form:"user_id" json:"user_id"` + + // TeacherId teacher_id + TeacherId int `form:"teacher_id" json:"teacher_id"` + + // Price price + Price int `form:"price" json:"price"` + + // Remark remark + Remark *string `form:"remark,omitempty" json:"remark,omitempty"` + + // IsFirstCheck is_first_check + IsFirstCheck *bool `form:"is_first_check,omitempty" json:"is_first_check,omitempty"` + + // IsLastCheck is_last_check + IsLastCheck *bool `form:"is_last_check,omitempty" json:"is_last_check,omitempty"` + + // ReceivedAt received_at + ReceivedAt *string `form:"received_at,omitempty" json:"received_at,omitempty"` +} + +// PutFundInformationsIdParams defines parameters for PutFundInformationsId. +type PutFundInformationsIdParams struct { + // UserId user_id + UserId int `form:"user_id" json:"user_id"` + + // TeacherId teacher_id + TeacherId int `form:"teacher_id" json:"teacher_id"` + + // Price price + Price int `form:"price" json:"price"` + + // Remark remark + Remark *string `form:"remark,omitempty" json:"remark,omitempty"` + + // IsFirstCheck is_first_check + IsFirstCheck *bool `form:"is_first_check,omitempty" json:"is_first_check,omitempty"` + + // IsLastCheck is_last_check + IsLastCheck *bool `form:"is_last_check,omitempty" json:"is_last_check,omitempty"` + + // ReceivedAt received_at + ReceivedAt *string `form:"received_at,omitempty" json:"received_at,omitempty"` +} + +// PostPasswordResetRequestParams defines parameters for PostPasswordResetRequest. +type PostPasswordResetRequestParams struct { + // Email email + Email *string `form:"email,omitempty" json:"email,omitempty"` +} + +// PostPasswordResetIdValidParams defines parameters for PostPasswordResetIdValid. +type PostPasswordResetIdValidParams struct { + // Token token + Token *string `form:"token,omitempty" json:"token,omitempty"` +} + +// PostPurchaseitemsParams defines parameters for PostPurchaseitems. +type PostPurchaseitemsParams struct { + // Item item + Item *string `form:"item,omitempty" json:"item,omitempty"` + + // Price price + Price *int `form:"price,omitempty" json:"price,omitempty"` + + // Quantity quantity + Quantity *int `form:"quantity,omitempty" json:"quantity,omitempty"` + + // Detail detail + Detail *string `form:"detail,omitempty" json:"detail,omitempty"` + + // Url url + Url *string `form:"url,omitempty" json:"url,omitempty"` + + // PurchaseOrderId purchase_order_id + PurchaseOrderId *int `form:"purchase_order_id,omitempty" json:"purchase_order_id,omitempty"` + + // FinanceCheck finance_check + FinanceCheck *bool `form:"finance_check,omitempty" json:"finance_check,omitempty"` +} + +// PutPurchaseitemsIdParams defines parameters for PutPurchaseitemsId. +type PutPurchaseitemsIdParams struct { + // Item item + Item *string `form:"item,omitempty" json:"item,omitempty"` + + // Price price + Price *int `form:"price,omitempty" json:"price,omitempty"` + + // Quantity quantity + Quantity *int `form:"quantity,omitempty" json:"quantity,omitempty"` + + // Detail detail + Detail *string `form:"detail,omitempty" json:"detail,omitempty"` + + // Url url + Url *string `form:"url,omitempty" json:"url,omitempty"` + + // PurchaseOrderId purchase_order_id + PurchaseOrderId *int `form:"purchase_order_id,omitempty" json:"purchase_order_id,omitempty"` + + // FinanceCheck finance_check + FinanceCheck *bool `form:"finance_check,omitempty" json:"finance_check,omitempty"` +} + +// PostPurchaseordersParams defines parameters for PostPurchaseorders. +type PostPurchaseordersParams struct { + // Deadline deadline + Deadline *string `form:"deadline,omitempty" json:"deadline,omitempty"` + + // UserId user_id + UserId *int `form:"user_id,omitempty" json:"user_id,omitempty"` + + // ExpenseId expense_id + ExpenseId *int `form:"expense_id,omitempty" json:"expense_id,omitempty"` + + // FinanceCheck finance_check + FinanceCheck *bool `form:"finance_check,omitempty" json:"finance_check,omitempty"` +} + +// PutPurchaseordersIdParams defines parameters for PutPurchaseordersId. +type PutPurchaseordersIdParams struct { + // Deadline deadline + Deadline *string `form:"deadline,omitempty" json:"deadline,omitempty"` + + // UserId user_id + UserId *int `form:"user_id,omitempty" json:"user_id,omitempty"` + + // ExpenseId expense_id + ExpenseId *int `form:"expense_id,omitempty" json:"expense_id,omitempty"` + + // FinanceCheck finance_check + FinanceCheck *bool `form:"finance_check,omitempty" json:"finance_check,omitempty"` +} + +// PostSourcesParams defines parameters for PostSources. +type PostSourcesParams struct { + // Name name + Name string `form:"name" json:"name"` +} + +// PutSourcesIdParams defines parameters for PutSourcesId. +type PutSourcesIdParams struct { + // Name name + Name string `form:"name" json:"name"` +} + +// PostTeachersParams defines parameters for PostTeachers. +type PostTeachersParams struct { + // Name 名前 + Name string `form:"name" json:"name"` + + // Position 役職 + Position string `form:"position" json:"position"` + + // DepartmentId 学科ID + DepartmentId *int `form:"department_id,omitempty" json:"department_id,omitempty"` + + // Room 部屋番号 + Room *string `form:"room,omitempty" json:"room,omitempty"` + + // IsBlack ブラックリストの真偽 + IsBlack *bool `form:"is_black,omitempty" json:"is_black,omitempty"` + + // Remark 備考 + Remark *string `form:"remark,omitempty" json:"remark,omitempty"` +} + +// PutTeachersIdParams defines parameters for PutTeachersId. +type PutTeachersIdParams struct { + // Name 教員の名前 + Name string `form:"name" json:"name"` + + // Position 教員の役職 + Position string `form:"position" json:"position"` + + // DepartmentId 学科ID + DepartmentId *int `form:"department_id,omitempty" json:"department_id,omitempty"` + + // Room 部屋番号 + Room *string `form:"room,omitempty" json:"room,omitempty"` + + // IsBlack ブラックリストに入っているか + IsBlack *bool `form:"is_black,omitempty" json:"is_black,omitempty"` + + // Remark 備考欄 + Remark *string `form:"remark,omitempty" json:"remark,omitempty"` +} + +// PostUsersParams defines parameters for PostUsers. +type PostUsersParams struct { + // Name name + Name string `form:"name" json:"name"` + + // BureauId bureau_d + BureauId int `form:"bureau_id" json:"bureau_id"` + + // RoleId role_id + RoleId int `form:"role_id" json:"role_id"` +} + +// PutUsersIdParams defines parameters for PutUsersId. +type PutUsersIdParams struct { + // Name name + Name string `form:"name" json:"name"` + + // BureauId bureau_d + BureauId int `form:"bureau_id" json:"bureau_id"` + + // RoleId role_id + RoleId int `form:"role_id" json:"role_id"` +} + +// PostYearsParams defines parameters for PostYears. +type PostYearsParams struct { + // Year year + Year int `form:"year" json:"year"` +} + +// PutYearsIdParams defines parameters for PutYearsId. +type PutYearsIdParams struct { + // Year year + Year int `form:"year" json:"year"` +} + +// ServerInterface represents all server handlers. +type ServerInterface interface { + + // (GET /activities) + GetActivities(ctx echo.Context) error + + // (POST /activities) + PostActivities(ctx echo.Context) error + + // (GET /activities/details) + GetActivitiesDetails(ctx echo.Context) error + + // (GET /activities/details/{year}) + GetActivitiesDetailsYear(ctx echo.Context, year int) error + + // (GET /activities/filtered_details) + GetActivitiesFilteredDetails(ctx echo.Context) error + + // (GET /activities/filtered_details/{year}) + GetActivitiesFilteredDetailsYear(ctx echo.Context, year string) error + + // (DELETE /activities/{id}) + DeleteActivitiesId(ctx echo.Context, id int) error + + // (GET /activities/{id}) + GetActivitiesId(ctx echo.Context, id int) error + + // (PUT /activities/{id}) + PutActivitiesId(ctx echo.Context, id int) error + + // (GET /activity_informations) + GetActivityInformations(ctx echo.Context) error + + // (POST /activity_informations) + PostActivityInformations(ctx echo.Context) error + + // (DELETE /activity_informations/{id}) + DeleteActivityInformationsId(ctx echo.Context, id int) error + + // (GET /activity_informations/{id}) + GetActivityInformationsId(ctx echo.Context, id int) error + + // (PUT /activity_informations/{id}) + PutActivityInformationsId(ctx echo.Context, id int) error + + // (GET /activity_styles) + GetActivityStyles(ctx echo.Context) error + + // (POST /activity_styles) + PostActivityStyles(ctx echo.Context) error + + // (DELETE /activity_styles/{id}) + DeleteActivityStylesId(ctx echo.Context, id int) error + + // (GET /activity_styles/{id}) + GetActivityStylesId(ctx echo.Context, id int) error + + // (PUT /activity_styles/{id}) + PutActivityStylesId(ctx echo.Context, id int) error + + // (GET /budgets) + GetBudgets(ctx echo.Context) error + + // (POST /budgets) + PostBudgets(ctx echo.Context, params PostBudgetsParams) error + + // (GET /budgets/details) + GetBudgetsDetails(ctx echo.Context) error + + // (GET /budgets/details/{year}) + GetBudgetsDetailsYear(ctx echo.Context, year int) error + + // (DELETE /budgets/{id}) + DeleteBudgetsId(ctx echo.Context, id int) error + + // (GET /budgets/{id}) + GetBudgetsId(ctx echo.Context, id int) error + + // (PUT /budgets/{id}) + PutBudgetsId(ctx echo.Context, id int, params PutBudgetsIdParams) error + + // (GET /budgets/{id}/details) + GetBudgetsIdDetails(ctx echo.Context, id int) error + + // (GET /bureaus) + GetBureaus(ctx echo.Context) error + + // (POST /bureaus) + PostBureaus(ctx echo.Context, params PostBureausParams) error + + // (DELETE /bureaus/{id}) + DeleteBureausId(ctx echo.Context, id int) error + + // (GET /bureaus/{id}) + GetBureausId(ctx echo.Context, id int) error + + // (PUT /bureaus/{id}) + PutBureausId(ctx echo.Context, id int, params PutBureausIdParams) error + + // (GET /departments) + GetDepartments(ctx echo.Context) error + + // (POST /departments) + PostDepartments(ctx echo.Context, params PostDepartmentsParams) error + + // (DELETE /departments/{id}) + DeleteDepartmentsId(ctx echo.Context, id int) error + + // (GET /departments/{id}) + GetDepartmentsId(ctx echo.Context, id int) error + + // (PUT /departments/{id}) + PutDepartmentsId(ctx echo.Context, id int, params PutDepartmentsIdParams) error + + // (GET /expenses) + GetExpenses(ctx echo.Context) error + + // (POST /expenses) + PostExpenses(ctx echo.Context, params PostExpensesParams) error + + // (GET /expenses/details) + GetExpensesDetails(ctx echo.Context) error + + // (GET /expenses/details/{year}) + GetExpensesDetailsYear(ctx echo.Context, year int) error + + // (GET /expenses/fiscalyear/{year}) + GetExpensesFiscalyearYear(ctx echo.Context, year int) error + + // (DELETE /expenses/{id}) + DeleteExpensesId(ctx echo.Context, id int) error + + // (GET /expenses/{id}) + GetExpensesId(ctx echo.Context, id int) error + + // (PUT /expenses/{id}) + PutExpensesId(ctx echo.Context, id int, params PutExpensesIdParams) error + + // (GET /expenses/{id}/details) + GetExpensesIdDetails(ctx echo.Context, id int) error + + // (GET /fund_informations) + GetFundInformations(ctx echo.Context) error + + // (POST /fund_informations) + PostFundInformations(ctx echo.Context, params PostFundInformationsParams) error + + // (GET /fund_informations/details) + GetFundInformationsDetails(ctx echo.Context) error + + // (GET /fund_informations/details/{year}) + GetFundInformationsDetailsYear(ctx echo.Context, year int) error + + // (DELETE /fund_informations/{id}) + DeleteFundInformationsId(ctx echo.Context, id int) error + + // (GET /fund_informations/{id}) + GetFundInformationsId(ctx echo.Context, id int) error + + // (PUT /fund_informations/{id}) + PutFundInformationsId(ctx echo.Context, id int, params PutFundInformationsIdParams) error + + // (GET /fund_informations/{id}/details) + GetFundInformationsIdDetails(ctx echo.Context, id int) error + + // (POST /password_reset/request) + PostPasswordResetRequest(ctx echo.Context, params PostPasswordResetRequestParams) error + + // (POST /password_reset/{id}) + PostPasswordResetId(ctx echo.Context, id int) error + + // (POST /password_reset/{id}/valid) + PostPasswordResetIdValid(ctx echo.Context, id int, params PostPasswordResetIdValidParams) error + + // (GET /purchaseitems) + GetPurchaseitems(ctx echo.Context) error + + // (POST /purchaseitems) + PostPurchaseitems(ctx echo.Context, params PostPurchaseitemsParams) error + + // (GET /purchaseitems/details) + GetPurchaseitemsDetails(ctx echo.Context) error + + // (DELETE /purchaseitems/{id}) + DeletePurchaseitemsId(ctx echo.Context, id int) error + + // (GET /purchaseitems/{id}) + GetPurchaseitemsId(ctx echo.Context, id int) error + + // (PUT /purchaseitems/{id}) + PutPurchaseitemsId(ctx echo.Context, id int, params PutPurchaseitemsIdParams) error + + // (GET /purchaseitems/{id}/details) + GetPurchaseitemsIdDetails(ctx echo.Context, id int) error + + // (GET /purchaseorders) + GetPurchaseorders(ctx echo.Context) error + + // (POST /purchaseorders) + PostPurchaseorders(ctx echo.Context, params PostPurchaseordersParams) error + + // (GET /purchaseorders/details) + GetPurchaseordersDetails(ctx echo.Context) error + + // (GET /purchaseorders/details/unregistered/{year}) + GetPurchaseordersDetailsUnregisteredYear(ctx echo.Context, year int) error + + // (GET /purchaseorders/details/{year}) + GetPurchaseordersDetailsYear(ctx echo.Context, year int) error + + // (POST /purchaseorders/send/{id}) + PostPurchaseordersSendId(ctx echo.Context, id int) error + + // (DELETE /purchaseorders/{id}) + DeletePurchaseordersId(ctx echo.Context, id int) error + + // (GET /purchaseorders/{id}) + GetPurchaseordersId(ctx echo.Context, id int) error + + // (PUT /purchaseorders/{id}) + PutPurchaseordersId(ctx echo.Context, id int, params PutPurchaseordersIdParams) error + + // (GET /purchaseorders/{id}/details) + GetPurchaseordersIdDetails(ctx echo.Context, id int) error + + // (GET /purchasereports) + GetPurchasereports(ctx echo.Context) error + + // (POST /purchasereports) + PostPurchasereports(ctx echo.Context) error + + // (GET /purchasereports/details) + GetPurchasereportsDetails(ctx echo.Context) error + + // (GET /purchasereports/details/{year}) + GetPurchasereportsDetailsYear(ctx echo.Context, year int) error + + // (DELETE /purchasereports/{id}) + DeletePurchasereportsId(ctx echo.Context, id int) error + + // (GET /purchasereports/{id}) + GetPurchasereportsId(ctx echo.Context, id int) error + + // (PUT /purchasereports/{id}) + PutPurchasereportsId(ctx echo.Context, id int) error + + // (GET /purchasereports/{id}/details) + GetPurchasereportsIdDetails(ctx echo.Context, id int) error + + // (GET /receipts) + GetReceipts(ctx echo.Context) error + + // (POST /receipts) + PostReceipts(ctx echo.Context) error + + // (GET /receipts/reports/{id}) + GetReceiptsReportsId(ctx echo.Context, id int) error + + // (DELETE /receipts/{id}) + DeleteReceiptsId(ctx echo.Context, id int) error + + // (GET /receipts/{id}) + GetReceiptsId(ctx echo.Context, id int) error + + // (PUT /receipts/{id}) + PutReceiptsId(ctx echo.Context, id int) error + + // (GET /sources) + GetSources(ctx echo.Context) error + + // (POST /sources) + PostSources(ctx echo.Context, params PostSourcesParams) error + + // (DELETE /sources/{id}) + DeleteSourcesId(ctx echo.Context, id int) error + + // (GET /sources/{id}) + GetSourcesId(ctx echo.Context, id int) error + + // (PUT /sources/{id}) + PutSourcesId(ctx echo.Context, id int, params PutSourcesIdParams) error + + // (GET /sponsors) + GetSponsors(ctx echo.Context) error + + // (POST /sponsors) + PostSponsors(ctx echo.Context) error + + // (GET /sponsors/periods/{year}) + GetSponsorsPeriodsYear(ctx echo.Context, year int) error + + // (DELETE /sponsors/{id}) + DeleteSponsorsId(ctx echo.Context, id int) error + + // (GET /sponsors/{id}) + GetSponsorsId(ctx echo.Context, id int) error + + // (PUT /sponsors/{id}) + PutSponsorsId(ctx echo.Context, id int) error + + // (GET /sponsorstyles) + GetSponsorstyles(ctx echo.Context) error + + // (POST /sponsorstyles) + PostSponsorstyles(ctx echo.Context) error + + // (DELETE /sponsorstyles/{id}) + DeleteSponsorstylesId(ctx echo.Context, id int) error + + // (GET /sponsorstyles/{id}) + GetSponsorstylesId(ctx echo.Context, id int) error + + // (PUT /sponsorstyles/{id}) + PutSponsorstylesId(ctx echo.Context, id int) error + + // (GET /teachers) + GetTeachers(ctx echo.Context) error + + // (POST /teachers) + PostTeachers(ctx echo.Context, params PostTeachersParams) error + + // (DELETE /teachers/delete) + DeleteTeachersDelete(ctx echo.Context) error + + // (GET /teachers/fundRegistered/{year}) + GetTeachersFundRegisteredYear(ctx echo.Context, year int) error + + // (DELETE /teachers/{id}) + DeleteTeachersId(ctx echo.Context, id int) error + + // (GET /teachers/{id}) + GetTeachersId(ctx echo.Context, id int) error + + // (PUT /teachers/{id}) + PutTeachersId(ctx echo.Context, id int, params PutTeachersIdParams) error + + // (GET /users) + GetUsers(ctx echo.Context) error + + // (POST /users) + PostUsers(ctx echo.Context, params PostUsersParams) error + + // (DELETE /users/delete) + DeleteUsersDelete(ctx echo.Context) error + + // (DELETE /users/{id}) + DeleteUsersId(ctx echo.Context, id int) error + + // (GET /users/{id}) + GetUsersId(ctx echo.Context, id int) error + + // (PUT /users/{id}) + PutUsersId(ctx echo.Context, id int, params PutUsersIdParams) error + + // (GET /years) + GetYears(ctx echo.Context) error + + // (POST /years) + PostYears(ctx echo.Context, params PostYearsParams) error + + // (GET /years/periods) + GetYearsPeriods(ctx echo.Context) error + + // (POST /years/periods) + PostYearsPeriods(ctx echo.Context) error + + // (DELETE /years/periods/{id}) + DeleteYearsPeriodsId(ctx echo.Context, id int) error + + // (PUT /years/periods/{id}) + PutYearsPeriodsId(ctx echo.Context, id int) error + + // (DELETE /years/{id}) + DeleteYearsId(ctx echo.Context, id int) error + + // (GET /years/{id}) + GetYearsId(ctx echo.Context, id int) error + + // (PUT /years/{id}) + PutYearsId(ctx echo.Context, id int, params PutYearsIdParams) error +} + +// ServerInterfaceWrapper converts echo contexts to parameters. +type ServerInterfaceWrapper struct { + Handler ServerInterface +} + +// GetActivities converts echo context to params. +func (w *ServerInterfaceWrapper) GetActivities(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetActivities(ctx) + return err +} + +// PostActivities converts echo context to params. +func (w *ServerInterfaceWrapper) PostActivities(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PostActivities(ctx) + return err +} + +// GetActivitiesDetails converts echo context to params. +func (w *ServerInterfaceWrapper) GetActivitiesDetails(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetActivitiesDetails(ctx) + return err +} + +// GetActivitiesDetailsYear converts echo context to params. +func (w *ServerInterfaceWrapper) GetActivitiesDetailsYear(ctx echo.Context) error { + var err error + // ------------- Path parameter "year" ------------- + var year int + + err = runtime.BindStyledParameterWithOptions("simple", "year", ctx.Param("year"), &year, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter year: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetActivitiesDetailsYear(ctx, year) + return err +} + +// GetActivitiesFilteredDetails converts echo context to params. +func (w *ServerInterfaceWrapper) GetActivitiesFilteredDetails(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetActivitiesFilteredDetails(ctx) + return err +} + +// GetActivitiesFilteredDetailsYear converts echo context to params. +func (w *ServerInterfaceWrapper) GetActivitiesFilteredDetailsYear(ctx echo.Context) error { + var err error + // ------------- Path parameter "year" ------------- + var year string + + err = runtime.BindStyledParameterWithOptions("simple", "year", ctx.Param("year"), &year, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter year: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetActivitiesFilteredDetailsYear(ctx, year) + return err +} + +// DeleteActivitiesId converts echo context to params. +func (w *ServerInterfaceWrapper) DeleteActivitiesId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.DeleteActivitiesId(ctx, id) + return err +} + +// GetActivitiesId converts echo context to params. +func (w *ServerInterfaceWrapper) GetActivitiesId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetActivitiesId(ctx, id) + return err +} + +// PutActivitiesId converts echo context to params. +func (w *ServerInterfaceWrapper) PutActivitiesId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PutActivitiesId(ctx, id) + return err +} + +// GetActivityInformations converts echo context to params. +func (w *ServerInterfaceWrapper) GetActivityInformations(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetActivityInformations(ctx) + return err +} + +// PostActivityInformations converts echo context to params. +func (w *ServerInterfaceWrapper) PostActivityInformations(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PostActivityInformations(ctx) + return err +} + +// DeleteActivityInformationsId converts echo context to params. +func (w *ServerInterfaceWrapper) DeleteActivityInformationsId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.DeleteActivityInformationsId(ctx, id) + return err +} + +// GetActivityInformationsId converts echo context to params. +func (w *ServerInterfaceWrapper) GetActivityInformationsId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetActivityInformationsId(ctx, id) + return err +} + +// PutActivityInformationsId converts echo context to params. +func (w *ServerInterfaceWrapper) PutActivityInformationsId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PutActivityInformationsId(ctx, id) + return err +} + +// GetActivityStyles converts echo context to params. +func (w *ServerInterfaceWrapper) GetActivityStyles(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetActivityStyles(ctx) + return err +} + +// PostActivityStyles converts echo context to params. +func (w *ServerInterfaceWrapper) PostActivityStyles(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PostActivityStyles(ctx) + return err +} + +// DeleteActivityStylesId converts echo context to params. +func (w *ServerInterfaceWrapper) DeleteActivityStylesId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.DeleteActivityStylesId(ctx, id) + return err +} + +// GetActivityStylesId converts echo context to params. +func (w *ServerInterfaceWrapper) GetActivityStylesId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetActivityStylesId(ctx, id) + return err +} + +// PutActivityStylesId converts echo context to params. +func (w *ServerInterfaceWrapper) PutActivityStylesId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PutActivityStylesId(ctx, id) + return err +} + +// GetBudgets converts echo context to params. +func (w *ServerInterfaceWrapper) GetBudgets(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetBudgets(ctx) + return err +} + +// PostBudgets converts echo context to params. +func (w *ServerInterfaceWrapper) PostBudgets(ctx echo.Context) error { + var err error + + // Parameter object where we will unmarshal all parameters from the context + var params PostBudgetsParams + // ------------- Required query parameter "price" ------------- + + err = runtime.BindQueryParameter("form", true, true, "price", ctx.QueryParams(), ¶ms.Price) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter price: %s", err)) + } + + // ------------- Optional query parameter "year_id" ------------- + + err = runtime.BindQueryParameter("form", true, false, "year_id", ctx.QueryParams(), ¶ms.YearId) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter year_id: %s", err)) + } + + // ------------- Optional query parameter "source_id" ------------- + + err = runtime.BindQueryParameter("form", true, false, "source_id", ctx.QueryParams(), ¶ms.SourceId) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter source_id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PostBudgets(ctx, params) + return err +} + +// GetBudgetsDetails converts echo context to params. +func (w *ServerInterfaceWrapper) GetBudgetsDetails(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetBudgetsDetails(ctx) + return err +} + +// GetBudgetsDetailsYear converts echo context to params. +func (w *ServerInterfaceWrapper) GetBudgetsDetailsYear(ctx echo.Context) error { + var err error + // ------------- Path parameter "year" ------------- + var year int + + err = runtime.BindStyledParameterWithOptions("simple", "year", ctx.Param("year"), &year, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter year: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetBudgetsDetailsYear(ctx, year) + return err +} + +// DeleteBudgetsId converts echo context to params. +func (w *ServerInterfaceWrapper) DeleteBudgetsId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.DeleteBudgetsId(ctx, id) + return err +} + +// GetBudgetsId converts echo context to params. +func (w *ServerInterfaceWrapper) GetBudgetsId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetBudgetsId(ctx, id) + return err +} + +// PutBudgetsId converts echo context to params. +func (w *ServerInterfaceWrapper) PutBudgetsId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Parameter object where we will unmarshal all parameters from the context + var params PutBudgetsIdParams + // ------------- Optional query parameter "price" ------------- + + err = runtime.BindQueryParameter("form", true, false, "price", ctx.QueryParams(), ¶ms.Price) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter price: %s", err)) + } + + // ------------- Optional query parameter "year_id" ------------- + + err = runtime.BindQueryParameter("form", true, false, "year_id", ctx.QueryParams(), ¶ms.YearId) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter year_id: %s", err)) + } + + // ------------- Optional query parameter "source_id" ------------- + + err = runtime.BindQueryParameter("form", true, false, "source_id", ctx.QueryParams(), ¶ms.SourceId) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter source_id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PutBudgetsId(ctx, id, params) + return err +} + +// GetBudgetsIdDetails converts echo context to params. +func (w *ServerInterfaceWrapper) GetBudgetsIdDetails(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetBudgetsIdDetails(ctx, id) + return err +} + +// GetBureaus converts echo context to params. +func (w *ServerInterfaceWrapper) GetBureaus(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetBureaus(ctx) + return err +} + +// PostBureaus converts echo context to params. +func (w *ServerInterfaceWrapper) PostBureaus(ctx echo.Context) error { + var err error + + // Parameter object where we will unmarshal all parameters from the context + var params PostBureausParams + // ------------- Required query parameter "name" ------------- + + err = runtime.BindQueryParameter("form", true, true, "name", ctx.QueryParams(), ¶ms.Name) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter name: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PostBureaus(ctx, params) + return err +} + +// DeleteBureausId converts echo context to params. +func (w *ServerInterfaceWrapper) DeleteBureausId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.DeleteBureausId(ctx, id) + return err +} + +// GetBureausId converts echo context to params. +func (w *ServerInterfaceWrapper) GetBureausId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetBureausId(ctx, id) + return err +} + +// PutBureausId converts echo context to params. +func (w *ServerInterfaceWrapper) PutBureausId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Parameter object where we will unmarshal all parameters from the context + var params PutBureausIdParams + // ------------- Optional query parameter "name" ------------- + + err = runtime.BindQueryParameter("form", true, false, "name", ctx.QueryParams(), ¶ms.Name) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter name: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PutBureausId(ctx, id, params) + return err +} + +// GetDepartments converts echo context to params. +func (w *ServerInterfaceWrapper) GetDepartments(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetDepartments(ctx) + return err +} + +// PostDepartments converts echo context to params. +func (w *ServerInterfaceWrapper) PostDepartments(ctx echo.Context) error { + var err error + + // Parameter object where we will unmarshal all parameters from the context + var params PostDepartmentsParams + // ------------- Optional query parameter "name" ------------- + + err = runtime.BindQueryParameter("form", true, false, "name", ctx.QueryParams(), ¶ms.Name) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter name: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PostDepartments(ctx, params) + return err +} + +// DeleteDepartmentsId converts echo context to params. +func (w *ServerInterfaceWrapper) DeleteDepartmentsId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.DeleteDepartmentsId(ctx, id) + return err +} + +// GetDepartmentsId converts echo context to params. +func (w *ServerInterfaceWrapper) GetDepartmentsId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetDepartmentsId(ctx, id) + return err +} + +// PutDepartmentsId converts echo context to params. +func (w *ServerInterfaceWrapper) PutDepartmentsId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Parameter object where we will unmarshal all parameters from the context + var params PutDepartmentsIdParams + // ------------- Optional query parameter "name" ------------- + + err = runtime.BindQueryParameter("form", true, false, "name", ctx.QueryParams(), ¶ms.Name) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter name: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PutDepartmentsId(ctx, id, params) + return err +} + +// GetExpenses converts echo context to params. +func (w *ServerInterfaceWrapper) GetExpenses(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetExpenses(ctx) + return err +} + +// PostExpenses converts echo context to params. +func (w *ServerInterfaceWrapper) PostExpenses(ctx echo.Context) error { + var err error + + // Parameter object where we will unmarshal all parameters from the context + var params PostExpensesParams + // ------------- Optional query parameter "name" ------------- + + err = runtime.BindQueryParameter("form", true, false, "name", ctx.QueryParams(), ¶ms.Name) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter name: %s", err)) + } + + // ------------- Optional query parameter "year_id" ------------- + + err = runtime.BindQueryParameter("form", true, false, "year_id", ctx.QueryParams(), ¶ms.YearId) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter year_id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PostExpenses(ctx, params) + return err +} + +// GetExpensesDetails converts echo context to params. +func (w *ServerInterfaceWrapper) GetExpensesDetails(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetExpensesDetails(ctx) + return err +} + +// GetExpensesDetailsYear converts echo context to params. +func (w *ServerInterfaceWrapper) GetExpensesDetailsYear(ctx echo.Context) error { + var err error + // ------------- Path parameter "year" ------------- + var year int + + err = runtime.BindStyledParameterWithOptions("simple", "year", ctx.Param("year"), &year, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter year: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetExpensesDetailsYear(ctx, year) + return err +} + +// GetExpensesFiscalyearYear converts echo context to params. +func (w *ServerInterfaceWrapper) GetExpensesFiscalyearYear(ctx echo.Context) error { + var err error + // ------------- Path parameter "year" ------------- + var year int + + err = runtime.BindStyledParameterWithOptions("simple", "year", ctx.Param("year"), &year, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter year: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetExpensesFiscalyearYear(ctx, year) + return err +} + +// DeleteExpensesId converts echo context to params. +func (w *ServerInterfaceWrapper) DeleteExpensesId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.DeleteExpensesId(ctx, id) + return err +} + +// GetExpensesId converts echo context to params. +func (w *ServerInterfaceWrapper) GetExpensesId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetExpensesId(ctx, id) + return err +} + +// PutExpensesId converts echo context to params. +func (w *ServerInterfaceWrapper) PutExpensesId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Parameter object where we will unmarshal all parameters from the context + var params PutExpensesIdParams + // ------------- Optional query parameter "name" ------------- + + err = runtime.BindQueryParameter("form", true, false, "name", ctx.QueryParams(), ¶ms.Name) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter name: %s", err)) + } + + // ------------- Optional query parameter "year_id" ------------- + + err = runtime.BindQueryParameter("form", true, false, "year_id", ctx.QueryParams(), ¶ms.YearId) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter year_id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PutExpensesId(ctx, id, params) + return err +} + +// GetExpensesIdDetails converts echo context to params. +func (w *ServerInterfaceWrapper) GetExpensesIdDetails(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetExpensesIdDetails(ctx, id) + return err +} + +// GetFundInformations converts echo context to params. +func (w *ServerInterfaceWrapper) GetFundInformations(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetFundInformations(ctx) + return err +} + +// PostFundInformations converts echo context to params. +func (w *ServerInterfaceWrapper) PostFundInformations(ctx echo.Context) error { + var err error + + // Parameter object where we will unmarshal all parameters from the context + var params PostFundInformationsParams + // ------------- Required query parameter "user_id" ------------- + + err = runtime.BindQueryParameter("form", true, true, "user_id", ctx.QueryParams(), ¶ms.UserId) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter user_id: %s", err)) + } + + // ------------- Required query parameter "teacher_id" ------------- + + err = runtime.BindQueryParameter("form", true, true, "teacher_id", ctx.QueryParams(), ¶ms.TeacherId) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter teacher_id: %s", err)) + } + + // ------------- Required query parameter "price" ------------- + + err = runtime.BindQueryParameter("form", true, true, "price", ctx.QueryParams(), ¶ms.Price) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter price: %s", err)) + } + + // ------------- Optional query parameter "remark" ------------- + + err = runtime.BindQueryParameter("form", true, false, "remark", ctx.QueryParams(), ¶ms.Remark) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter remark: %s", err)) + } + + // ------------- Optional query parameter "is_first_check" ------------- + + err = runtime.BindQueryParameter("form", true, false, "is_first_check", ctx.QueryParams(), ¶ms.IsFirstCheck) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter is_first_check: %s", err)) + } + + // ------------- Optional query parameter "is_last_check" ------------- + + err = runtime.BindQueryParameter("form", true, false, "is_last_check", ctx.QueryParams(), ¶ms.IsLastCheck) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter is_last_check: %s", err)) + } + + // ------------- Optional query parameter "received_at" ------------- + + err = runtime.BindQueryParameter("form", true, false, "received_at", ctx.QueryParams(), ¶ms.ReceivedAt) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter received_at: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PostFundInformations(ctx, params) + return err +} + +// GetFundInformationsDetails converts echo context to params. +func (w *ServerInterfaceWrapper) GetFundInformationsDetails(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetFundInformationsDetails(ctx) + return err +} + +// GetFundInformationsDetailsYear converts echo context to params. +func (w *ServerInterfaceWrapper) GetFundInformationsDetailsYear(ctx echo.Context) error { + var err error + // ------------- Path parameter "year" ------------- + var year int + + err = runtime.BindStyledParameterWithOptions("simple", "year", ctx.Param("year"), &year, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter year: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetFundInformationsDetailsYear(ctx, year) + return err +} + +// DeleteFundInformationsId converts echo context to params. +func (w *ServerInterfaceWrapper) DeleteFundInformationsId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.DeleteFundInformationsId(ctx, id) + return err +} + +// GetFundInformationsId converts echo context to params. +func (w *ServerInterfaceWrapper) GetFundInformationsId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetFundInformationsId(ctx, id) + return err +} + +// PutFundInformationsId converts echo context to params. +func (w *ServerInterfaceWrapper) PutFundInformationsId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Parameter object where we will unmarshal all parameters from the context + var params PutFundInformationsIdParams + // ------------- Required query parameter "user_id" ------------- + + err = runtime.BindQueryParameter("form", true, true, "user_id", ctx.QueryParams(), ¶ms.UserId) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter user_id: %s", err)) + } + + // ------------- Required query parameter "teacher_id" ------------- + + err = runtime.BindQueryParameter("form", true, true, "teacher_id", ctx.QueryParams(), ¶ms.TeacherId) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter teacher_id: %s", err)) + } + + // ------------- Required query parameter "price" ------------- + + err = runtime.BindQueryParameter("form", true, true, "price", ctx.QueryParams(), ¶ms.Price) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter price: %s", err)) + } + + // ------------- Optional query parameter "remark" ------------- + + err = runtime.BindQueryParameter("form", true, false, "remark", ctx.QueryParams(), ¶ms.Remark) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter remark: %s", err)) + } + + // ------------- Optional query parameter "is_first_check" ------------- + + err = runtime.BindQueryParameter("form", true, false, "is_first_check", ctx.QueryParams(), ¶ms.IsFirstCheck) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter is_first_check: %s", err)) + } + + // ------------- Optional query parameter "is_last_check" ------------- + + err = runtime.BindQueryParameter("form", true, false, "is_last_check", ctx.QueryParams(), ¶ms.IsLastCheck) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter is_last_check: %s", err)) + } + + // ------------- Optional query parameter "received_at" ------------- + + err = runtime.BindQueryParameter("form", true, false, "received_at", ctx.QueryParams(), ¶ms.ReceivedAt) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter received_at: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PutFundInformationsId(ctx, id, params) + return err +} + +// GetFundInformationsIdDetails converts echo context to params. +func (w *ServerInterfaceWrapper) GetFundInformationsIdDetails(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetFundInformationsIdDetails(ctx, id) + return err +} + +// PostPasswordResetRequest converts echo context to params. +func (w *ServerInterfaceWrapper) PostPasswordResetRequest(ctx echo.Context) error { + var err error + + // Parameter object where we will unmarshal all parameters from the context + var params PostPasswordResetRequestParams + // ------------- Optional query parameter "email" ------------- + + err = runtime.BindQueryParameter("form", true, false, "email", ctx.QueryParams(), ¶ms.Email) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter email: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PostPasswordResetRequest(ctx, params) + return err +} + +// PostPasswordResetId converts echo context to params. +func (w *ServerInterfaceWrapper) PostPasswordResetId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PostPasswordResetId(ctx, id) + return err +} + +// PostPasswordResetIdValid converts echo context to params. +func (w *ServerInterfaceWrapper) PostPasswordResetIdValid(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Parameter object where we will unmarshal all parameters from the context + var params PostPasswordResetIdValidParams + // ------------- Optional query parameter "token" ------------- + + err = runtime.BindQueryParameter("form", true, false, "token", ctx.QueryParams(), ¶ms.Token) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter token: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PostPasswordResetIdValid(ctx, id, params) + return err +} + +// GetPurchaseitems converts echo context to params. +func (w *ServerInterfaceWrapper) GetPurchaseitems(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetPurchaseitems(ctx) + return err +} + +// PostPurchaseitems converts echo context to params. +func (w *ServerInterfaceWrapper) PostPurchaseitems(ctx echo.Context) error { + var err error + + // Parameter object where we will unmarshal all parameters from the context + var params PostPurchaseitemsParams + // ------------- Optional query parameter "item" ------------- + + err = runtime.BindQueryParameter("form", true, false, "item", ctx.QueryParams(), ¶ms.Item) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter item: %s", err)) + } + + // ------------- Optional query parameter "price" ------------- + + err = runtime.BindQueryParameter("form", true, false, "price", ctx.QueryParams(), ¶ms.Price) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter price: %s", err)) + } + + // ------------- Optional query parameter "quantity" ------------- + + err = runtime.BindQueryParameter("form", true, false, "quantity", ctx.QueryParams(), ¶ms.Quantity) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter quantity: %s", err)) + } + + // ------------- Optional query parameter "detail" ------------- + + err = runtime.BindQueryParameter("form", true, false, "detail", ctx.QueryParams(), ¶ms.Detail) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter detail: %s", err)) + } + + // ------------- Optional query parameter "url" ------------- + + err = runtime.BindQueryParameter("form", true, false, "url", ctx.QueryParams(), ¶ms.Url) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter url: %s", err)) + } + + // ------------- Optional query parameter "purchase_order_id" ------------- + + err = runtime.BindQueryParameter("form", true, false, "purchase_order_id", ctx.QueryParams(), ¶ms.PurchaseOrderId) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter purchase_order_id: %s", err)) + } + + // ------------- Optional query parameter "finance_check" ------------- + + err = runtime.BindQueryParameter("form", true, false, "finance_check", ctx.QueryParams(), ¶ms.FinanceCheck) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter finance_check: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PostPurchaseitems(ctx, params) + return err +} + +// GetPurchaseitemsDetails converts echo context to params. +func (w *ServerInterfaceWrapper) GetPurchaseitemsDetails(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetPurchaseitemsDetails(ctx) + return err +} + +// DeletePurchaseitemsId converts echo context to params. +func (w *ServerInterfaceWrapper) DeletePurchaseitemsId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.DeletePurchaseitemsId(ctx, id) + return err +} + +// GetPurchaseitemsId converts echo context to params. +func (w *ServerInterfaceWrapper) GetPurchaseitemsId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetPurchaseitemsId(ctx, id) + return err +} + +// PutPurchaseitemsId converts echo context to params. +func (w *ServerInterfaceWrapper) PutPurchaseitemsId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Parameter object where we will unmarshal all parameters from the context + var params PutPurchaseitemsIdParams + // ------------- Optional query parameter "item" ------------- + + err = runtime.BindQueryParameter("form", true, false, "item", ctx.QueryParams(), ¶ms.Item) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter item: %s", err)) + } + + // ------------- Optional query parameter "price" ------------- + + err = runtime.BindQueryParameter("form", true, false, "price", ctx.QueryParams(), ¶ms.Price) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter price: %s", err)) + } + + // ------------- Optional query parameter "quantity" ------------- + + err = runtime.BindQueryParameter("form", true, false, "quantity", ctx.QueryParams(), ¶ms.Quantity) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter quantity: %s", err)) + } + + // ------------- Optional query parameter "detail" ------------- + + err = runtime.BindQueryParameter("form", true, false, "detail", ctx.QueryParams(), ¶ms.Detail) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter detail: %s", err)) + } + + // ------------- Optional query parameter "url" ------------- + + err = runtime.BindQueryParameter("form", true, false, "url", ctx.QueryParams(), ¶ms.Url) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter url: %s", err)) + } + + // ------------- Optional query parameter "purchase_order_id" ------------- + + err = runtime.BindQueryParameter("form", true, false, "purchase_order_id", ctx.QueryParams(), ¶ms.PurchaseOrderId) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter purchase_order_id: %s", err)) + } + + // ------------- Optional query parameter "finance_check" ------------- + + err = runtime.BindQueryParameter("form", true, false, "finance_check", ctx.QueryParams(), ¶ms.FinanceCheck) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter finance_check: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PutPurchaseitemsId(ctx, id, params) + return err +} + +// GetPurchaseitemsIdDetails converts echo context to params. +func (w *ServerInterfaceWrapper) GetPurchaseitemsIdDetails(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetPurchaseitemsIdDetails(ctx, id) + return err +} + +// GetPurchaseorders converts echo context to params. +func (w *ServerInterfaceWrapper) GetPurchaseorders(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetPurchaseorders(ctx) + return err +} + +// PostPurchaseorders converts echo context to params. +func (w *ServerInterfaceWrapper) PostPurchaseorders(ctx echo.Context) error { + var err error + + // Parameter object where we will unmarshal all parameters from the context + var params PostPurchaseordersParams + // ------------- Optional query parameter "deadline" ------------- + + err = runtime.BindQueryParameter("form", true, false, "deadline", ctx.QueryParams(), ¶ms.Deadline) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter deadline: %s", err)) + } + + // ------------- Optional query parameter "user_id" ------------- + + err = runtime.BindQueryParameter("form", true, false, "user_id", ctx.QueryParams(), ¶ms.UserId) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter user_id: %s", err)) + } + + // ------------- Optional query parameter "expense_id" ------------- + + err = runtime.BindQueryParameter("form", true, false, "expense_id", ctx.QueryParams(), ¶ms.ExpenseId) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter expense_id: %s", err)) + } + + // ------------- Optional query parameter "finance_check" ------------- + + err = runtime.BindQueryParameter("form", true, false, "finance_check", ctx.QueryParams(), ¶ms.FinanceCheck) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter finance_check: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PostPurchaseorders(ctx, params) + return err +} + +// GetPurchaseordersDetails converts echo context to params. +func (w *ServerInterfaceWrapper) GetPurchaseordersDetails(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetPurchaseordersDetails(ctx) + return err +} + +// GetPurchaseordersDetailsUnregisteredYear converts echo context to params. +func (w *ServerInterfaceWrapper) GetPurchaseordersDetailsUnregisteredYear(ctx echo.Context) error { + var err error + // ------------- Path parameter "year" ------------- + var year int + + err = runtime.BindStyledParameterWithOptions("simple", "year", ctx.Param("year"), &year, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter year: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetPurchaseordersDetailsUnregisteredYear(ctx, year) + return err +} + +// GetPurchaseordersDetailsYear converts echo context to params. +func (w *ServerInterfaceWrapper) GetPurchaseordersDetailsYear(ctx echo.Context) error { + var err error + // ------------- Path parameter "year" ------------- + var year int + + err = runtime.BindStyledParameterWithOptions("simple", "year", ctx.Param("year"), &year, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter year: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetPurchaseordersDetailsYear(ctx, year) + return err +} + +// PostPurchaseordersSendId converts echo context to params. +func (w *ServerInterfaceWrapper) PostPurchaseordersSendId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PostPurchaseordersSendId(ctx, id) + return err +} + +// DeletePurchaseordersId converts echo context to params. +func (w *ServerInterfaceWrapper) DeletePurchaseordersId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.DeletePurchaseordersId(ctx, id) + return err +} + +// GetPurchaseordersId converts echo context to params. +func (w *ServerInterfaceWrapper) GetPurchaseordersId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetPurchaseordersId(ctx, id) + return err +} + +// PutPurchaseordersId converts echo context to params. +func (w *ServerInterfaceWrapper) PutPurchaseordersId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Parameter object where we will unmarshal all parameters from the context + var params PutPurchaseordersIdParams + // ------------- Optional query parameter "deadline" ------------- + + err = runtime.BindQueryParameter("form", true, false, "deadline", ctx.QueryParams(), ¶ms.Deadline) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter deadline: %s", err)) + } + + // ------------- Optional query parameter "user_id" ------------- + + err = runtime.BindQueryParameter("form", true, false, "user_id", ctx.QueryParams(), ¶ms.UserId) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter user_id: %s", err)) + } + + // ------------- Optional query parameter "expense_id" ------------- + + err = runtime.BindQueryParameter("form", true, false, "expense_id", ctx.QueryParams(), ¶ms.ExpenseId) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter expense_id: %s", err)) + } + + // ------------- Optional query parameter "finance_check" ------------- + + err = runtime.BindQueryParameter("form", true, false, "finance_check", ctx.QueryParams(), ¶ms.FinanceCheck) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter finance_check: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PutPurchaseordersId(ctx, id, params) + return err +} + +// GetPurchaseordersIdDetails converts echo context to params. +func (w *ServerInterfaceWrapper) GetPurchaseordersIdDetails(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetPurchaseordersIdDetails(ctx, id) + return err +} + +// GetPurchasereports converts echo context to params. +func (w *ServerInterfaceWrapper) GetPurchasereports(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetPurchasereports(ctx) + return err +} + +// PostPurchasereports converts echo context to params. +func (w *ServerInterfaceWrapper) PostPurchasereports(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PostPurchasereports(ctx) + return err +} + +// GetPurchasereportsDetails converts echo context to params. +func (w *ServerInterfaceWrapper) GetPurchasereportsDetails(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetPurchasereportsDetails(ctx) + return err +} + +// GetPurchasereportsDetailsYear converts echo context to params. +func (w *ServerInterfaceWrapper) GetPurchasereportsDetailsYear(ctx echo.Context) error { + var err error + // ------------- Path parameter "year" ------------- + var year int + + err = runtime.BindStyledParameterWithOptions("simple", "year", ctx.Param("year"), &year, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter year: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetPurchasereportsDetailsYear(ctx, year) + return err +} + +// DeletePurchasereportsId converts echo context to params. +func (w *ServerInterfaceWrapper) DeletePurchasereportsId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.DeletePurchasereportsId(ctx, id) + return err +} + +// GetPurchasereportsId converts echo context to params. +func (w *ServerInterfaceWrapper) GetPurchasereportsId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetPurchasereportsId(ctx, id) + return err +} + +// PutPurchasereportsId converts echo context to params. +func (w *ServerInterfaceWrapper) PutPurchasereportsId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PutPurchasereportsId(ctx, id) + return err +} + +// GetPurchasereportsIdDetails converts echo context to params. +func (w *ServerInterfaceWrapper) GetPurchasereportsIdDetails(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetPurchasereportsIdDetails(ctx, id) + return err +} + +// GetReceipts converts echo context to params. +func (w *ServerInterfaceWrapper) GetReceipts(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetReceipts(ctx) + return err +} + +// PostReceipts converts echo context to params. +func (w *ServerInterfaceWrapper) PostReceipts(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PostReceipts(ctx) + return err +} + +// GetReceiptsReportsId converts echo context to params. +func (w *ServerInterfaceWrapper) GetReceiptsReportsId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetReceiptsReportsId(ctx, id) + return err +} + +// DeleteReceiptsId converts echo context to params. +func (w *ServerInterfaceWrapper) DeleteReceiptsId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.DeleteReceiptsId(ctx, id) + return err +} + +// GetReceiptsId converts echo context to params. +func (w *ServerInterfaceWrapper) GetReceiptsId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetReceiptsId(ctx, id) + return err +} + +// PutReceiptsId converts echo context to params. +func (w *ServerInterfaceWrapper) PutReceiptsId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PutReceiptsId(ctx, id) + return err +} + +// GetSources converts echo context to params. +func (w *ServerInterfaceWrapper) GetSources(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetSources(ctx) + return err +} + +// PostSources converts echo context to params. +func (w *ServerInterfaceWrapper) PostSources(ctx echo.Context) error { + var err error + + // Parameter object where we will unmarshal all parameters from the context + var params PostSourcesParams + // ------------- Required query parameter "name" ------------- + + err = runtime.BindQueryParameter("form", true, true, "name", ctx.QueryParams(), ¶ms.Name) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter name: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PostSources(ctx, params) + return err +} + +// DeleteSourcesId converts echo context to params. +func (w *ServerInterfaceWrapper) DeleteSourcesId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.DeleteSourcesId(ctx, id) + return err +} + +// GetSourcesId converts echo context to params. +func (w *ServerInterfaceWrapper) GetSourcesId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetSourcesId(ctx, id) + return err +} + +// PutSourcesId converts echo context to params. +func (w *ServerInterfaceWrapper) PutSourcesId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Parameter object where we will unmarshal all parameters from the context + var params PutSourcesIdParams + // ------------- Required query parameter "name" ------------- + + err = runtime.BindQueryParameter("form", true, true, "name", ctx.QueryParams(), ¶ms.Name) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter name: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PutSourcesId(ctx, id, params) + return err +} + +// GetSponsors converts echo context to params. +func (w *ServerInterfaceWrapper) GetSponsors(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetSponsors(ctx) + return err +} + +// PostSponsors converts echo context to params. +func (w *ServerInterfaceWrapper) PostSponsors(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PostSponsors(ctx) + return err +} + +// GetSponsorsPeriodsYear converts echo context to params. +func (w *ServerInterfaceWrapper) GetSponsorsPeriodsYear(ctx echo.Context) error { + var err error + // ------------- Path parameter "year" ------------- + var year int + + err = runtime.BindStyledParameterWithOptions("simple", "year", ctx.Param("year"), &year, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter year: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetSponsorsPeriodsYear(ctx, year) + return err +} + +// DeleteSponsorsId converts echo context to params. +func (w *ServerInterfaceWrapper) DeleteSponsorsId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.DeleteSponsorsId(ctx, id) + return err +} + +// GetSponsorsId converts echo context to params. +func (w *ServerInterfaceWrapper) GetSponsorsId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetSponsorsId(ctx, id) + return err +} + +// PutSponsorsId converts echo context to params. +func (w *ServerInterfaceWrapper) PutSponsorsId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PutSponsorsId(ctx, id) + return err +} + +// GetSponsorstyles converts echo context to params. +func (w *ServerInterfaceWrapper) GetSponsorstyles(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetSponsorstyles(ctx) + return err +} + +// PostSponsorstyles converts echo context to params. +func (w *ServerInterfaceWrapper) PostSponsorstyles(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PostSponsorstyles(ctx) + return err +} + +// DeleteSponsorstylesId converts echo context to params. +func (w *ServerInterfaceWrapper) DeleteSponsorstylesId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.DeleteSponsorstylesId(ctx, id) + return err +} + +// GetSponsorstylesId converts echo context to params. +func (w *ServerInterfaceWrapper) GetSponsorstylesId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetSponsorstylesId(ctx, id) + return err +} + +// PutSponsorstylesId converts echo context to params. +func (w *ServerInterfaceWrapper) PutSponsorstylesId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PutSponsorstylesId(ctx, id) + return err +} + +// GetTeachers converts echo context to params. +func (w *ServerInterfaceWrapper) GetTeachers(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetTeachers(ctx) + return err +} + +// PostTeachers converts echo context to params. +func (w *ServerInterfaceWrapper) PostTeachers(ctx echo.Context) error { + var err error + + // Parameter object where we will unmarshal all parameters from the context + var params PostTeachersParams + // ------------- Required query parameter "name" ------------- + + err = runtime.BindQueryParameter("form", true, true, "name", ctx.QueryParams(), ¶ms.Name) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter name: %s", err)) + } + + // ------------- Required query parameter "position" ------------- + + err = runtime.BindQueryParameter("form", true, true, "position", ctx.QueryParams(), ¶ms.Position) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter position: %s", err)) + } + + // ------------- Optional query parameter "department_id" ------------- + + err = runtime.BindQueryParameter("form", true, false, "department_id", ctx.QueryParams(), ¶ms.DepartmentId) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter department_id: %s", err)) + } + + // ------------- Optional query parameter "room" ------------- + + err = runtime.BindQueryParameter("form", true, false, "room", ctx.QueryParams(), ¶ms.Room) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter room: %s", err)) + } + + // ------------- Optional query parameter "is_black" ------------- + + err = runtime.BindQueryParameter("form", true, false, "is_black", ctx.QueryParams(), ¶ms.IsBlack) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter is_black: %s", err)) + } + + // ------------- Optional query parameter "remark" ------------- + + err = runtime.BindQueryParameter("form", true, false, "remark", ctx.QueryParams(), ¶ms.Remark) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter remark: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PostTeachers(ctx, params) + return err +} + +// DeleteTeachersDelete converts echo context to params. +func (w *ServerInterfaceWrapper) DeleteTeachersDelete(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.DeleteTeachersDelete(ctx) + return err +} + +// GetTeachersFundRegisteredYear converts echo context to params. +func (w *ServerInterfaceWrapper) GetTeachersFundRegisteredYear(ctx echo.Context) error { + var err error + // ------------- Path parameter "year" ------------- + var year int + + err = runtime.BindStyledParameterWithOptions("simple", "year", ctx.Param("year"), &year, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter year: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetTeachersFundRegisteredYear(ctx, year) + return err +} + +// DeleteTeachersId converts echo context to params. +func (w *ServerInterfaceWrapper) DeleteTeachersId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.DeleteTeachersId(ctx, id) + return err +} + +// GetTeachersId converts echo context to params. +func (w *ServerInterfaceWrapper) GetTeachersId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetTeachersId(ctx, id) + return err +} + +// PutTeachersId converts echo context to params. +func (w *ServerInterfaceWrapper) PutTeachersId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Parameter object where we will unmarshal all parameters from the context + var params PutTeachersIdParams + // ------------- Required query parameter "name" ------------- + + err = runtime.BindQueryParameter("form", true, true, "name", ctx.QueryParams(), ¶ms.Name) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter name: %s", err)) + } + + // ------------- Required query parameter "position" ------------- + + err = runtime.BindQueryParameter("form", true, true, "position", ctx.QueryParams(), ¶ms.Position) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter position: %s", err)) + } + + // ------------- Optional query parameter "department_id" ------------- + + err = runtime.BindQueryParameter("form", true, false, "department_id", ctx.QueryParams(), ¶ms.DepartmentId) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter department_id: %s", err)) + } + + // ------------- Optional query parameter "room" ------------- + + err = runtime.BindQueryParameter("form", true, false, "room", ctx.QueryParams(), ¶ms.Room) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter room: %s", err)) + } + + // ------------- Optional query parameter "is_black" ------------- + + err = runtime.BindQueryParameter("form", true, false, "is_black", ctx.QueryParams(), ¶ms.IsBlack) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter is_black: %s", err)) + } + + // ------------- Optional query parameter "remark" ------------- + + err = runtime.BindQueryParameter("form", true, false, "remark", ctx.QueryParams(), ¶ms.Remark) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter remark: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PutTeachersId(ctx, id, params) + return err +} + +// GetUsers converts echo context to params. +func (w *ServerInterfaceWrapper) GetUsers(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetUsers(ctx) + return err +} + +// PostUsers converts echo context to params. +func (w *ServerInterfaceWrapper) PostUsers(ctx echo.Context) error { + var err error + + // Parameter object where we will unmarshal all parameters from the context + var params PostUsersParams + // ------------- Required query parameter "name" ------------- + + err = runtime.BindQueryParameter("form", true, true, "name", ctx.QueryParams(), ¶ms.Name) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter name: %s", err)) + } + + // ------------- Required query parameter "bureau_id" ------------- + + err = runtime.BindQueryParameter("form", true, true, "bureau_id", ctx.QueryParams(), ¶ms.BureauId) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter bureau_id: %s", err)) + } + + // ------------- Required query parameter "role_id" ------------- + + err = runtime.BindQueryParameter("form", true, true, "role_id", ctx.QueryParams(), ¶ms.RoleId) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter role_id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PostUsers(ctx, params) + return err +} + +// DeleteUsersDelete converts echo context to params. +func (w *ServerInterfaceWrapper) DeleteUsersDelete(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.DeleteUsersDelete(ctx) + return err +} + +// DeleteUsersId converts echo context to params. +func (w *ServerInterfaceWrapper) DeleteUsersId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.DeleteUsersId(ctx, id) + return err +} + +// GetUsersId converts echo context to params. +func (w *ServerInterfaceWrapper) GetUsersId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetUsersId(ctx, id) + return err +} + +// PutUsersId converts echo context to params. +func (w *ServerInterfaceWrapper) PutUsersId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Parameter object where we will unmarshal all parameters from the context + var params PutUsersIdParams + // ------------- Required query parameter "name" ------------- + + err = runtime.BindQueryParameter("form", true, true, "name", ctx.QueryParams(), ¶ms.Name) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter name: %s", err)) + } + + // ------------- Required query parameter "bureau_id" ------------- + + err = runtime.BindQueryParameter("form", true, true, "bureau_id", ctx.QueryParams(), ¶ms.BureauId) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter bureau_id: %s", err)) + } + + // ------------- Required query parameter "role_id" ------------- + + err = runtime.BindQueryParameter("form", true, true, "role_id", ctx.QueryParams(), ¶ms.RoleId) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter role_id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PutUsersId(ctx, id, params) + return err +} + +// GetYears converts echo context to params. +func (w *ServerInterfaceWrapper) GetYears(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetYears(ctx) + return err +} + +// PostYears converts echo context to params. +func (w *ServerInterfaceWrapper) PostYears(ctx echo.Context) error { + var err error + + // Parameter object where we will unmarshal all parameters from the context + var params PostYearsParams + // ------------- Required query parameter "year" ------------- + + err = runtime.BindQueryParameter("form", true, true, "year", ctx.QueryParams(), ¶ms.Year) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter year: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PostYears(ctx, params) + return err +} + +// GetYearsPeriods converts echo context to params. +func (w *ServerInterfaceWrapper) GetYearsPeriods(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetYearsPeriods(ctx) + return err +} + +// PostYearsPeriods converts echo context to params. +func (w *ServerInterfaceWrapper) PostYearsPeriods(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PostYearsPeriods(ctx) + return err +} + +// DeleteYearsPeriodsId converts echo context to params. +func (w *ServerInterfaceWrapper) DeleteYearsPeriodsId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.DeleteYearsPeriodsId(ctx, id) + return err +} + +// PutYearsPeriodsId converts echo context to params. +func (w *ServerInterfaceWrapper) PutYearsPeriodsId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PutYearsPeriodsId(ctx, id) + return err +} + +// DeleteYearsId converts echo context to params. +func (w *ServerInterfaceWrapper) DeleteYearsId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.DeleteYearsId(ctx, id) + return err +} + +// GetYearsId converts echo context to params. +func (w *ServerInterfaceWrapper) GetYearsId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetYearsId(ctx, id) + return err +} + +// PutYearsId converts echo context to params. +func (w *ServerInterfaceWrapper) PutYearsId(ctx echo.Context) error { + var err error + // ------------- Path parameter "id" ------------- + var id int + + err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err)) + } + + // Parameter object where we will unmarshal all parameters from the context + var params PutYearsIdParams + // ------------- Required query parameter "year" ------------- + + err = runtime.BindQueryParameter("form", true, true, "year", ctx.QueryParams(), ¶ms.Year) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter year: %s", err)) + } + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.PutYearsId(ctx, id, params) + return err +} + +// This is a simple interface which specifies echo.Route addition functions which +// are present on both echo.Echo and echo.Group, since we want to allow using +// either of them for path registration +type EchoRouter interface { + CONNECT(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route + DELETE(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route + GET(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route + HEAD(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route + OPTIONS(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route + PATCH(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route + POST(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route + PUT(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route + TRACE(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route +} + +// RegisterHandlers adds each server route to the EchoRouter. +func RegisterHandlers(router EchoRouter, si ServerInterface) { + RegisterHandlersWithBaseURL(router, si, "") +} + +// Registers handlers, and prepends BaseURL to the paths, so that the paths +// can be served under a prefix. +func RegisterHandlersWithBaseURL(router EchoRouter, si ServerInterface, baseURL string) { + + wrapper := ServerInterfaceWrapper{ + Handler: si, + } + + router.GET(baseURL+"/activities", wrapper.GetActivities) + router.POST(baseURL+"/activities", wrapper.PostActivities) + router.GET(baseURL+"/activities/details", wrapper.GetActivitiesDetails) + router.GET(baseURL+"/activities/details/:year", wrapper.GetActivitiesDetailsYear) + router.GET(baseURL+"/activities/filtered_details", wrapper.GetActivitiesFilteredDetails) + router.GET(baseURL+"/activities/filtered_details/:year", wrapper.GetActivitiesFilteredDetailsYear) + router.DELETE(baseURL+"/activities/:id", wrapper.DeleteActivitiesId) + router.GET(baseURL+"/activities/:id", wrapper.GetActivitiesId) + router.PUT(baseURL+"/activities/:id", wrapper.PutActivitiesId) + router.GET(baseURL+"/activity_informations", wrapper.GetActivityInformations) + router.POST(baseURL+"/activity_informations", wrapper.PostActivityInformations) + router.DELETE(baseURL+"/activity_informations/:id", wrapper.DeleteActivityInformationsId) + router.GET(baseURL+"/activity_informations/:id", wrapper.GetActivityInformationsId) + router.PUT(baseURL+"/activity_informations/:id", wrapper.PutActivityInformationsId) + router.GET(baseURL+"/activity_styles", wrapper.GetActivityStyles) + router.POST(baseURL+"/activity_styles", wrapper.PostActivityStyles) + router.DELETE(baseURL+"/activity_styles/:id", wrapper.DeleteActivityStylesId) + router.GET(baseURL+"/activity_styles/:id", wrapper.GetActivityStylesId) + router.PUT(baseURL+"/activity_styles/:id", wrapper.PutActivityStylesId) + router.GET(baseURL+"/budgets", wrapper.GetBudgets) + router.POST(baseURL+"/budgets", wrapper.PostBudgets) + router.GET(baseURL+"/budgets/details", wrapper.GetBudgetsDetails) + router.GET(baseURL+"/budgets/details/:year", wrapper.GetBudgetsDetailsYear) + router.DELETE(baseURL+"/budgets/:id", wrapper.DeleteBudgetsId) + router.GET(baseURL+"/budgets/:id", wrapper.GetBudgetsId) + router.PUT(baseURL+"/budgets/:id", wrapper.PutBudgetsId) + router.GET(baseURL+"/budgets/:id/details", wrapper.GetBudgetsIdDetails) + router.GET(baseURL+"/bureaus", wrapper.GetBureaus) + router.POST(baseURL+"/bureaus", wrapper.PostBureaus) + router.DELETE(baseURL+"/bureaus/:id", wrapper.DeleteBureausId) + router.GET(baseURL+"/bureaus/:id", wrapper.GetBureausId) + router.PUT(baseURL+"/bureaus/:id", wrapper.PutBureausId) + router.GET(baseURL+"/departments", wrapper.GetDepartments) + router.POST(baseURL+"/departments", wrapper.PostDepartments) + router.DELETE(baseURL+"/departments/:id", wrapper.DeleteDepartmentsId) + router.GET(baseURL+"/departments/:id", wrapper.GetDepartmentsId) + router.PUT(baseURL+"/departments/:id", wrapper.PutDepartmentsId) + router.GET(baseURL+"/expenses", wrapper.GetExpenses) + router.POST(baseURL+"/expenses", wrapper.PostExpenses) + router.GET(baseURL+"/expenses/details", wrapper.GetExpensesDetails) + router.GET(baseURL+"/expenses/details/:year", wrapper.GetExpensesDetailsYear) + router.GET(baseURL+"/expenses/fiscalyear/:year", wrapper.GetExpensesFiscalyearYear) + router.DELETE(baseURL+"/expenses/:id", wrapper.DeleteExpensesId) + router.GET(baseURL+"/expenses/:id", wrapper.GetExpensesId) + router.PUT(baseURL+"/expenses/:id", wrapper.PutExpensesId) + router.GET(baseURL+"/expenses/:id/details", wrapper.GetExpensesIdDetails) + router.GET(baseURL+"/fund_informations", wrapper.GetFundInformations) + router.POST(baseURL+"/fund_informations", wrapper.PostFundInformations) + router.GET(baseURL+"/fund_informations/details", wrapper.GetFundInformationsDetails) + router.GET(baseURL+"/fund_informations/details/:year", wrapper.GetFundInformationsDetailsYear) + router.DELETE(baseURL+"/fund_informations/:id", wrapper.DeleteFundInformationsId) + router.GET(baseURL+"/fund_informations/:id", wrapper.GetFundInformationsId) + router.PUT(baseURL+"/fund_informations/:id", wrapper.PutFundInformationsId) + router.GET(baseURL+"/fund_informations/:id/details", wrapper.GetFundInformationsIdDetails) + router.POST(baseURL+"/password_reset/request", wrapper.PostPasswordResetRequest) + router.POST(baseURL+"/password_reset/:id", wrapper.PostPasswordResetId) + router.POST(baseURL+"/password_reset/:id/valid", wrapper.PostPasswordResetIdValid) + router.GET(baseURL+"/purchaseitems", wrapper.GetPurchaseitems) + router.POST(baseURL+"/purchaseitems", wrapper.PostPurchaseitems) + router.GET(baseURL+"/purchaseitems/details", wrapper.GetPurchaseitemsDetails) + router.DELETE(baseURL+"/purchaseitems/:id", wrapper.DeletePurchaseitemsId) + router.GET(baseURL+"/purchaseitems/:id", wrapper.GetPurchaseitemsId) + router.PUT(baseURL+"/purchaseitems/:id", wrapper.PutPurchaseitemsId) + router.GET(baseURL+"/purchaseitems/:id/details", wrapper.GetPurchaseitemsIdDetails) + router.GET(baseURL+"/purchaseorders", wrapper.GetPurchaseorders) + router.POST(baseURL+"/purchaseorders", wrapper.PostPurchaseorders) + router.GET(baseURL+"/purchaseorders/details", wrapper.GetPurchaseordersDetails) + router.GET(baseURL+"/purchaseorders/details/unregistered/:year", wrapper.GetPurchaseordersDetailsUnregisteredYear) + router.GET(baseURL+"/purchaseorders/details/:year", wrapper.GetPurchaseordersDetailsYear) + router.POST(baseURL+"/purchaseorders/send/:id", wrapper.PostPurchaseordersSendId) + router.DELETE(baseURL+"/purchaseorders/:id", wrapper.DeletePurchaseordersId) + router.GET(baseURL+"/purchaseorders/:id", wrapper.GetPurchaseordersId) + router.PUT(baseURL+"/purchaseorders/:id", wrapper.PutPurchaseordersId) + router.GET(baseURL+"/purchaseorders/:id/details", wrapper.GetPurchaseordersIdDetails) + router.GET(baseURL+"/purchasereports", wrapper.GetPurchasereports) + router.POST(baseURL+"/purchasereports", wrapper.PostPurchasereports) + router.GET(baseURL+"/purchasereports/details", wrapper.GetPurchasereportsDetails) + router.GET(baseURL+"/purchasereports/details/:year", wrapper.GetPurchasereportsDetailsYear) + router.DELETE(baseURL+"/purchasereports/:id", wrapper.DeletePurchasereportsId) + router.GET(baseURL+"/purchasereports/:id", wrapper.GetPurchasereportsId) + router.PUT(baseURL+"/purchasereports/:id", wrapper.PutPurchasereportsId) + router.GET(baseURL+"/purchasereports/:id/details", wrapper.GetPurchasereportsIdDetails) + router.GET(baseURL+"/receipts", wrapper.GetReceipts) + router.POST(baseURL+"/receipts", wrapper.PostReceipts) + router.GET(baseURL+"/receipts/reports/:id", wrapper.GetReceiptsReportsId) + router.DELETE(baseURL+"/receipts/:id", wrapper.DeleteReceiptsId) + router.GET(baseURL+"/receipts/:id", wrapper.GetReceiptsId) + router.PUT(baseURL+"/receipts/:id", wrapper.PutReceiptsId) + router.GET(baseURL+"/sources", wrapper.GetSources) + router.POST(baseURL+"/sources", wrapper.PostSources) + router.DELETE(baseURL+"/sources/:id", wrapper.DeleteSourcesId) + router.GET(baseURL+"/sources/:id", wrapper.GetSourcesId) + router.PUT(baseURL+"/sources/:id", wrapper.PutSourcesId) + router.GET(baseURL+"/sponsors", wrapper.GetSponsors) + router.POST(baseURL+"/sponsors", wrapper.PostSponsors) + router.GET(baseURL+"/sponsors/periods/:year", wrapper.GetSponsorsPeriodsYear) + router.DELETE(baseURL+"/sponsors/:id", wrapper.DeleteSponsorsId) + router.GET(baseURL+"/sponsors/:id", wrapper.GetSponsorsId) + router.PUT(baseURL+"/sponsors/:id", wrapper.PutSponsorsId) + router.GET(baseURL+"/sponsorstyles", wrapper.GetSponsorstyles) + router.POST(baseURL+"/sponsorstyles", wrapper.PostSponsorstyles) + router.DELETE(baseURL+"/sponsorstyles/:id", wrapper.DeleteSponsorstylesId) + router.GET(baseURL+"/sponsorstyles/:id", wrapper.GetSponsorstylesId) + router.PUT(baseURL+"/sponsorstyles/:id", wrapper.PutSponsorstylesId) + router.GET(baseURL+"/teachers", wrapper.GetTeachers) + router.POST(baseURL+"/teachers", wrapper.PostTeachers) + router.DELETE(baseURL+"/teachers/delete", wrapper.DeleteTeachersDelete) + router.GET(baseURL+"/teachers/fundRegistered/:year", wrapper.GetTeachersFundRegisteredYear) + router.DELETE(baseURL+"/teachers/:id", wrapper.DeleteTeachersId) + router.GET(baseURL+"/teachers/:id", wrapper.GetTeachersId) + router.PUT(baseURL+"/teachers/:id", wrapper.PutTeachersId) + router.GET(baseURL+"/users", wrapper.GetUsers) + router.POST(baseURL+"/users", wrapper.PostUsers) + router.DELETE(baseURL+"/users/delete", wrapper.DeleteUsersDelete) + router.DELETE(baseURL+"/users/:id", wrapper.DeleteUsersId) + router.GET(baseURL+"/users/:id", wrapper.GetUsersId) + router.PUT(baseURL+"/users/:id", wrapper.PutUsersId) + router.GET(baseURL+"/years", wrapper.GetYears) + router.POST(baseURL+"/years", wrapper.PostYears) + router.GET(baseURL+"/years/periods", wrapper.GetYearsPeriods) + router.POST(baseURL+"/years/periods", wrapper.PostYearsPeriods) + router.DELETE(baseURL+"/years/periods/:id", wrapper.DeleteYearsPeriodsId) + router.PUT(baseURL+"/years/periods/:id", wrapper.PutYearsPeriodsId) + router.DELETE(baseURL+"/years/:id", wrapper.DeleteYearsId) + router.GET(baseURL+"/years/:id", wrapper.GetYearsId) + router.PUT(baseURL+"/years/:id", wrapper.PutYearsId) + +} diff --git a/api/go.mod b/api/go.mod index 03e1fc7b8..72c6a783a 100644 --- a/api/go.mod +++ b/api/go.mod @@ -4,21 +4,17 @@ go 1.16 require ( github.com/go-sql-driver/mysql v1.6.0 + github.com/go-test/deep v1.0.8 // indirect + github.com/google/go-cmp v0.6.0 // indirect + github.com/gorilla/websocket v1.5.0 // indirect github.com/joho/godotenv v1.4.0 - github.com/kr/pretty v0.3.1 // indirect - github.com/labstack/echo/v4 v4.9.0 - github.com/mattn/go-colorable v0.1.13 // indirect - github.com/mattn/go-isatty v0.0.17 // indirect + github.com/labstack/echo/v4 v4.11.4 + github.com/oapi-codegen/runtime v1.1.1 // indirect github.com/pkg/errors v0.9.1 github.com/slack-go/slack v0.13.0 - github.com/stretchr/testify v1.8.1 // indirect - github.com/swaggo/echo-swagger v1.3.5 - github.com/swaggo/swag v1.8.1 - golang.org/x/crypto v0.3.0 - golang.org/x/net v0.7.0 // indirect - golang.org/x/time v0.0.0-20210723032227-1f47c861a9ac // indirect - golang.org/x/tools v0.4.0 // indirect - gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c // indirect + github.com/stretchr/testify v1.9.0 // indirect + golang.org/x/crypto v0.23.0 + golang.org/x/net v0.25.0 // indirect gorm.io/driver/mysql v1.3.3 gorm.io/gorm v1.23.4 ) diff --git a/api/go.sum b/api/go.sum index 1ef223379..df8edc95f 100644 --- a/api/go.sum +++ b/api/go.sum @@ -1,206 +1,505 @@ github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= -github.com/KyleBanks/depth v1.2.1 h1:5h8fQADFrWtarTdtDudMmGsC7GPbOAu6RVB3ffsVFHc= -github.com/KyleBanks/depth v1.2.1/go.mod h1:jzSb9d0L43HxTQfT+oSA1EEp2q+ne2uh6XgeJcm8brE= -github.com/PuerkitoBio/purell v1.1.1 h1:WEQqlqaGbrPkxLJWfBwQmfEAE1Z7ONdDLqrN38tNFfI= -github.com/PuerkitoBio/purell v1.1.1/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0= -github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578 h1:d+Bc7a5rLufV/sSk/8dngufqelfh6jnri85riMAaF/M= -github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE= -github.com/agiledragon/gomonkey/v2 v2.3.1 h1:k+UnUY0EMNYUFUAQVETGY9uUTxjMdnUkP0ARyJS1zzs= -github.com/agiledragon/gomonkey/v2 v2.3.1/go.mod h1:ap1AmDzcVOAz1YpeJ3TCzIgstoaWLA6jbbgxfB4w2iY= -github.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU= -github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= +github.com/BurntSushi/toml v1.3.2/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ= +github.com/CloudyKit/fastprinter v0.0.0-20200109182630-33d98a066a53/go.mod h1:+3IMCy2vIlbG1XG/0ggNQv0SvxCAIpPM5b1nCz56Xno= +github.com/CloudyKit/jet/v6 v6.2.0/go.mod h1:d3ypHeIRNo2+XyqnGA8s+aphtcVpjP5hPwP/Lzo7Ro4= +github.com/Joker/hpp v1.0.0/go.mod h1:8x5n+M1Hp5hC0g8okX3sR3vFQwynaX/UgSOM9MeBKzY= +github.com/Joker/jade v1.1.3/go.mod h1:T+2WLyt7VH6Lp0TRxQrUYEs64nRc83wkMQrfeIQKduM= +github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU= +github.com/RaveNoX/go-jsoncommentstrip v1.0.0/go.mod h1:78ihd09MekBnJnxpICcwzCMzGrKSKYe4AqU6PDYYpjk= +github.com/Shopify/goreferrer v0.0.0-20220729165902-8cddb4f5de06/go.mod h1:7erjKLwalezA0k99cWs5L11HWOAPNjdUZ6RxH1BXbbM= +github.com/ajg/form v1.5.1/go.mod h1:uL1WgH+h2mgNtvBq0339dVnzXdBETtL2LeUXaIv25UY= +github.com/andybalholm/brotli v1.0.5/go.mod h1:fO7iG3H7G2nSZ7m0zPUDn85XEX2GTukHGRSepvi9Eig= +github.com/apapsch/go-jsonmerge/v2 v2.0.0 h1:axGnT1gRIfimI7gJifB699GoE/oq+F2MU7Dml6nw9rQ= +github.com/apapsch/go-jsonmerge/v2 v2.0.0/go.mod h1:lvDnEdqiQrp0O42VQGgmlKpxL1AP2+08jFMw88y4klk= +github.com/armon/consul-api v0.0.0-20180202201655-eb2c6b5be1b6/go.mod h1:grANhF5doyWs3UAsr3K4I6qtAmlQcZDesFNEHPZAzj8= +github.com/aymerick/douceur v0.2.0/go.mod h1:wlT5vV2O3h55X9m7iVYN0TBM0NH/MmbLnd30/FjWUq4= +github.com/blang/semver/v4 v4.0.0/go.mod h1:IbckMUScFkM3pff0VJDNKRiT6TG/YpiHIM2yvyW5YoQ= +github.com/bmatcuk/doublestar v1.1.1/go.mod h1:UD6OnuiIn0yFxxA2le/rnRU1G4RaI4UvFv1sNto9p6w= +github.com/bsm/ginkgo/v2 v2.9.5/go.mod h1:SwYbGRRDovPVboqFv0tPTcG1sN61LM1Z4ARdbAV9g4c= +github.com/bsm/gomega v1.26.0/go.mod h1:JyEr/xRbxbtgWNi8tIEVPUYZ5Dzef52k01W3YH0H+O0= +github.com/bytedance/sonic v1.5.0/go.mod h1:ED5hyg4y6t3/9Ku1R6dU/4KyJ48DZ4jPhfY1O2AihPM= +github.com/bytedance/sonic v1.9.1/go.mod h1:i736AoUSYt75HyZLoJW9ERYxcy6eaN6h4BZXU064P/U= +github.com/bytedance/sonic v1.10.0-rc/go.mod h1:ElCzW+ufi8qKqNW0FY314xriJhyJhuoJ3gFZdAHF7NM= +github.com/bytedance/sonic v1.10.0-rc3/go.mod h1:iZcSUejdk5aukTND/Eu/ivjQuEL0Cu9/rf50Hi0u/g4= +github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghfAqPWnc= +github.com/cespare/xxhash/v2 v2.2.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= +github.com/cheekybits/is v0.0.0-20150225183255-68e9c0620927/go.mod h1:h/aW8ynjgkuj+NQRlZcDbAbM1ORAbXjXX77sX7T289U= +github.com/chenzhuoyu/base64x v0.0.0-20211019084208-fb5309c8db06/go.mod h1:DH46F32mSOjUmXrMHnKwZdA8wcEefY7UVqBKYGjpdQY= +github.com/chenzhuoyu/base64x v0.0.0-20221115062448-fe3a3abad311/go.mod h1:b583jCggY9gE99b6G5LEC39OIiVsWj+R97kbl5odCEk= +github.com/chenzhuoyu/base64x v0.0.0-20230717121745-296ad89f973d/go.mod h1:8EPpVsBuRksnlj1mLy4AWzRNQYxauNi62uWcE3to6eA= +github.com/chenzhuoyu/iasm v0.9.0/go.mod h1:Xjy2NpN3h7aUqeqM+woSuuvxmIe6+DDsiNLIrkAmYog= +github.com/chzyer/logex v1.1.10/go.mod h1:+Ywpsq7O8HXn0nuIou7OrIPyXbp3wmkHB+jjWRnGsAI= +github.com/chzyer/readline v0.0.0-20180603132655-2972be24d48e/go.mod h1:nSuG5e5PlCu98SY8svDHJxuZscDgtXS6KTTbou5AhLI= +github.com/chzyer/test v0.0.0-20180213035817-a1ea475d72b1/go.mod h1:Q3SI9o4m/ZMnBNeIyt5eFwwo7qiLfzFZmjNmxjkiQlU= +github.com/coreos/etcd v3.3.10+incompatible/go.mod h1:uF7uidLiAD3TWHmW31ZFd/JWoc32PjwdhPthX9715RE= +github.com/coreos/go-etcd v2.0.0+incompatible/go.mod h1:Jez6KQU2B/sWsbdaef3ED8NzMklzPG4d5KIOhIy30Tk= +github.com/coreos/go-semver v0.2.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= +github.com/cpuguy83/go-md2man v1.0.10/go.mod h1:SmD6nW6nTyfqj6ABTjUi3V3JVMnlJmwcJI5acqYI6dE= +github.com/davecgh/go-spew v0.0.0-20161028175848-04cdfd42973b/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= -github.com/go-openapi/jsonpointer v0.19.3/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg= -github.com/go-openapi/jsonpointer v0.19.5 h1:gZr+CIYByUqjcgeLXnQu2gHYQC9o73G2XUeOFYEICuY= -github.com/go-openapi/jsonpointer v0.19.5/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg= -github.com/go-openapi/jsonreference v0.19.6 h1:UBIxjkht+AWIgYzCDSv2GN+E/togfwXUJFRTWhl2Jjs= -github.com/go-openapi/jsonreference v0.19.6/go.mod h1:diGHMEHg2IqXZGKxqyvWdfWU/aim5Dprw5bqpKkTvns= -github.com/go-openapi/spec v0.20.4 h1:O8hJrt0UMnhHcluhIdUgCLRWyM2x7QkBXRvOs7m+O1M= -github.com/go-openapi/spec v0.20.4/go.mod h1:faYFR1CvsJZ0mNsmsphTMSoRrNV3TEDoAM7FOEWeq8I= -github.com/go-openapi/swag v0.19.5/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk= -github.com/go-openapi/swag v0.19.15 h1:D2NRCBzS9/pEY3gP9Nl8aDqGUcPFrwG2p+CNFrLyrCM= -github.com/go-openapi/swag v0.19.15/go.mod h1:QYRuS/SOXUCsnplDa677K7+DxSOj6IPNl/eQntq43wQ= +github.com/dgraph-io/badger/v2 v2.2007.4/go.mod h1:vSw/ax2qojzbN6eXHIx6KPKtCSHJN/Uz0X0VPruTIhk= +github.com/dgraph-io/ristretto v0.0.3-0.20200630154024-f66de99634de/go.mod h1:KPxhHT9ZxKefz+PCeOGsrHpl1qZ7i70dGTu2u+Ahh6E= +github.com/dgryski/go-farm v0.0.0-20190423205320-6a90982ecee2/go.mod h1:SqUrOPUnsFjfmXRMNPybcSiG0BgUW2AuFH8PAnS2iTw= +github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f/go.mod h1:cuUVRXasLTGF7a8hSLbxyZXjz+1KgoB3wDUb6vlszIc= +github.com/djherbis/atime v1.1.0/go.mod h1:28OF6Y8s3NQWwacXc5eZTsEsiMzp7LF8MbXE+XJPdBE= +github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= +github.com/dustin/go-humanize v1.0.1/go.mod h1:Mu1zIs6XwVuF/gI1OepvI0qD18qycQx+mFykh5fBlto= +github.com/fatih/color v1.15.0/go.mod h1:0h5ZqXfHYED7Bhv2ZJamyIOUej9KtShiJESRwBDUSsw= +github.com/fatih/structs v1.1.0/go.mod h1:9NiDSp5zOcgEDl+j00MP/WkGVPOlPRLejGD8Ga6PJ7M= +github.com/flosch/pongo2/v4 v4.0.2/go.mod h1:B5ObFANs/36VwxxlgKpdchIJHMvHB562PW+BWPhwZD8= +github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= +github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ= +github.com/fsnotify/fsnotify v1.6.0/go.mod h1:sl3t1tCWJFWoRz9R8WJCbQihKKwmorjAbSClcnxKAGw= +github.com/gabriel-vasile/mimetype v1.4.2/go.mod h1:zApsH/mKG4w07erKIaJPFiX0Tsq9BFQgN3qGY5GnNgA= +github.com/gin-contrib/sse v0.1.0/go.mod h1:RHrZQHXnP2xjPF+u1gW/2HnVO7nvIa9PG3Gm+fLHvGI= +github.com/gin-gonic/gin v1.9.1/go.mod h1:hPrL7YrpYKXt5YId3A/Tnip5kqbEAP+KLuI3SUcPTeU= +github.com/go-logr/logr v1.2.3/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= +github.com/go-logr/logr v1.2.4/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= +github.com/go-ole/go-ole v1.2.6/go.mod h1:pprOEPIfldk/42T2oK7lQ4v4JSDwmV0As9GaiUsvbm0= +github.com/go-playground/assert/v2 v2.2.0/go.mod h1:VDjEfimB/XKnb+ZQfWdccd7VUvScMdVu0Titje2rxJ4= +github.com/go-playground/locales v0.14.1/go.mod h1:hxrqLVvrK65+Rwrd5Fc6F2O76J/NuW9t0sjnWqG1slY= +github.com/go-playground/universal-translator v0.18.1/go.mod h1:xekY+UJKNuX9WP91TpwSH2VMlDf28Uj24BCp08ZFTUY= +github.com/go-playground/validator/v10 v10.14.0/go.mod h1:9iXMNT7sEkjXb0I+enO7QXmzG6QCsPWY4zveKFVRSyU= +github.com/go-playground/validator/v10 v10.14.1/go.mod h1:9iXMNT7sEkjXb0I+enO7QXmzG6QCsPWY4zveKFVRSyU= github.com/go-sql-driver/mysql v1.6.0 h1:BCTh4TKNUYmOmMUcQ3IipzF5prigylS7XXjEkfCHuOE= github.com/go-sql-driver/mysql v1.6.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg= -github.com/go-test/deep v1.0.4 h1:u2CU3YKy9I2pmu9pX0eq50wCgjfGIt539SqR7FbHiho= +github.com/go-task/slim-sprig v0.0.0-20210107165309-348f09dbbbc0/go.mod h1:fyg7847qk6SyHyPtNmDHnmrv/HOrqktSC+C9fM+CJOE= +github.com/go-task/slim-sprig v0.0.0-20230315185526-52ccab3ef572/go.mod h1:9Pwr4B2jHnOSGXyyzV8ROjYa2ojvAY6HCGYYfMoC3Ls= github.com/go-test/deep v1.0.4/go.mod h1:wGDj63lr65AM2AQyKZd/NYHGb0R+1RLqB8NKt3aSFNA= +github.com/go-test/deep v1.0.8 h1:TDsG77qcSprGbC6vTN8OuXp5g+J+b5Pcguhf7Zt61VM= +github.com/go-test/deep v1.0.8/go.mod h1:5C2ZWiW0ErCdrYzpqxLbTX7MG14M9iiw8DgHncVwcsE= +github.com/gobwas/glob v0.2.3/go.mod h1:d3Ez4x06l9bZtSvzIay5+Yzi0fmZzPgnTbPcKjJAkT8= +github.com/gobwas/httphead v0.1.0/go.mod h1:O/RXo79gxV8G+RqlR/otEwx4Q36zl9rqC5u12GKvMCM= +github.com/gobwas/pool v0.2.1/go.mod h1:q8bcK0KcYlCgd9e7WYLm9LpyS+YeLd8JVDW6WezmKEw= +github.com/gobwas/ws v1.3.0/go.mod h1:hRKAFb8wOxFROYNsT1bqfWnhX+b5MFeJM9r2ZSwg/KY= +github.com/goccy/go-json v0.10.2/go.mod h1:6MelG93GURQebXPDq3khkgXZkazVtN9CRI+MGFi0w8I= github.com/golang-jwt/jwt v3.2.2+incompatible h1:IfV12K8xAKAnZqdXVzCZ+TOjboZ2keLg81eXfW3O+oY= github.com/golang-jwt/jwt v3.2.2+incompatible/go.mod h1:8pz2t5EyA70fFQQSrl6XZXzqecmYZeUEB8OUGHkxJ+I= -github.com/google/go-cmp v0.5.7 h1:81/ik6ipDQS2aGcBfIN5dHDB36BwrStyeAQquSYCV4o= +github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= +github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= +github.com/golang/protobuf v1.4.0-rc.1/go.mod h1:ceaxUfeHdC40wWswd/P6IGgMaK3YpKi5j83Wpe3EHw8= +github.com/golang/protobuf v1.4.0-rc.1.0.20200221234624-67d41d38c208/go.mod h1:xKAWHe0F5eneWXFV3EuXVDTCmh+JuBKY0li0aMyXATA= +github.com/golang/protobuf v1.4.0-rc.2/go.mod h1:LlEzMj4AhA7rCAGe4KMBDvJI+AwstrUpVNzEA03Pprs= +github.com/golang/protobuf v1.4.0-rc.4.0.20200313231945-b860323f09d0/go.mod h1:WU3c8KckQ9AFe+yFwt9sWVRKCVIyN9cPHBJSNnbL67w= +github.com/golang/protobuf v1.4.0/go.mod h1:jodUvKwWbYaEsadDk5Fwe5c77LiNKVO9IDvqG2KuDX0= +github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= +github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= +github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= +github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= +github.com/golang/snappy v0.0.3/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= +github.com/golang/snappy v0.0.4/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= +github.com/gomarkdown/markdown v0.0.0-20230716120725-531d2d74bc12/go.mod h1:JDGcbDT52eL4fju3sZ4TeHGsQwhG9nbDV21aMyhwPoA= +github.com/gomarkdown/markdown v0.0.0-20230922112808-5421fefb8386/go.mod h1:JDGcbDT52eL4fju3sZ4TeHGsQwhG9nbDV21aMyhwPoA= +github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= +github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= +github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.6/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.7/go.mod h1:n+brtR0CgQNWTVd5ZUFpTBC8YFBDLK/h/bpaJ8/DtOE= -github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= -github.com/gorilla/websocket v1.4.2 h1:+/TMaTYc4QFitKJxsQ7Yye35DkWvkdLcvGKqM+x0Ufc= +github.com/google/go-cmp v0.5.8/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= +github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= +github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= +github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= +github.com/google/go-querystring v1.1.0/go.mod h1:Kcdr2DB4koayq7X8pmAG4sNG59So17icRSOU623lUBU= +github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= +github.com/google/pprof v0.0.0-20210407192527-94a9f03dee38/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= +github.com/google/uuid v1.3.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.5.0 h1:1p67kYwdtXjb0gL0BPiP1Av9wiZPo5A8z2cWkTZ+eyU= +github.com/google/uuid v1.5.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/gorilla/css v1.0.0/go.mod h1:Dn721qIggHpt4+EFCcTLTU/vk5ySda2ReITrtgBl60c= +github.com/gorilla/securecookie v1.1.1/go.mod h1:ra0sb63/xPlUeL+yeDciTfxMRAA+MP+HVt/4epWDjd4= github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= +github.com/gorilla/websocket v1.5.0 h1:PPwGk2jz7EePpoHN/+ClbZu8SPxiqlu12wZP/3sWmnc= +github.com/gorilla/websocket v1.5.0/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= +github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ= +github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= +github.com/ianlancetaylor/demangle v0.0.0-20200824232613-28f6c0f3b639/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= +github.com/imkira/go-interpol v1.1.0/go.mod h1:z0h2/2T3XF8kyEPpRgJ3kmNv+C43p+I/CoI+jC3w2iA= +github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8= +github.com/iris-contrib/go.uuid v2.0.0+incompatible/go.mod h1:iz2lgM/1UnEf1kP0L/+fafWORmlnuysV2EMP8MW+qe0= +github.com/iris-contrib/httpexpect/v2 v2.15.2/go.mod h1:JLDgIqnFy5loDSUv1OA2j0mb6p/rDhiCqigP22Uq9xE= +github.com/iris-contrib/schema v0.0.6/go.mod h1:iYszG0IOsuIsfzjymw1kMzTL8YQcCWlm65f3wX8J5iA= github.com/jinzhu/inflection v1.0.0 h1:K317FqzuhWc8YvSVlFMCCUb36O/S9MCKRDI7QkRKD/E= github.com/jinzhu/inflection v1.0.0/go.mod h1:h+uFLlag+Qp1Va5pdKtLDYj+kHp5pxUVkryuEj+Srlc= github.com/jinzhu/now v1.1.4 h1:tHnRBy1i5F2Dh8BAFxqFzxKqqvezXrL2OW1TnX+Mlas= github.com/jinzhu/now v1.1.4/go.mod h1:d3SSVoowX0Lcu0IBviAWJpolVfI5UJVZZ7cO71lE/z8= github.com/joho/godotenv v1.4.0 h1:3l4+N6zfMWnkbPEXKng2o2/MR5mSwTrBih4ZEkkz1lg= github.com/joho/godotenv v1.4.0/go.mod h1:f4LDr5Voq0i2e/R5DDNOoa2zzDfwtkZa6DnEwAbqwq4= -github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY= github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y= -github.com/jtolds/gls v4.20.0+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU= +github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= +github.com/juju/gnuflag v0.0.0-20171113085948-2ce1bb71843d/go.mod h1:2PavIy+JPciBPrBUjwbNvtwB6RQlve+hkpll6QSNmOE= +github.com/kataras/blocks v0.0.7/go.mod h1:UJIU97CluDo0f+zEjbnbkeMRlvYORtmc1304EeyXf4I= +github.com/kataras/golog v0.1.9/go.mod h1:jlpk/bOaYCyqDqH18pgDHdaJab72yBE6i0O3s30hpWY= +github.com/kataras/iris/v12 v12.2.6-0.20230908161203-24ba4e8933b9/go.mod h1:ldkoR3iXABBeqlTibQ3MYaviA1oSlPvim6f55biwBh4= +github.com/kataras/jwt v0.1.10/go.mod h1:xkimAtDhU/aGlQqjwvgtg+VyuPwMiyZHaY8LJRh0mYo= +github.com/kataras/neffos v0.0.22/go.mod h1:IIJZcUDvwBxJGlDj942dqQgyznVKYDti91f8Ez+RRxE= +github.com/kataras/pio v0.0.12/go.mod h1:ODK/8XBhhQ5WqrAhKy+9lTPS7sBf6O3KcLhc9klfRcY= +github.com/kataras/sitemap v0.0.6/go.mod h1:dW4dOCNs896OR1HmG+dMLdT7JjDk7mYBzoIRwuj5jA4= +github.com/kataras/tunnel v0.0.4/go.mod h1:9FkU4LaeifdMWqZu7o20ojmW4B7hdhv2CMLwfnHGpYw= +github.com/klauspost/compress v1.12.3/go.mod h1:8dP1Hq4DHOhN9w426knH3Rhby4rFm6D8eO+e+Dq5Gzg= +github.com/klauspost/compress v1.15.11/go.mod h1:QPwzmACJjUTFsnSHH934V6woptycfrDDJnH7hvFVbGM= +github.com/klauspost/compress v1.16.5/go.mod h1:ntbaceVETuRiXiv4DpjP66DpAtAGkEQskQzEyD//IeE= +github.com/klauspost/compress v1.16.7/go.mod h1:ntbaceVETuRiXiv4DpjP66DpAtAGkEQskQzEyD//IeE= +github.com/klauspost/cpuid/v2 v2.0.9/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg= +github.com/klauspost/cpuid/v2 v2.2.4/go.mod h1:RVVoqg1df56z8g3pUjL/3lE5UfnlrJX8tyFgg4nqhuY= +github.com/klauspost/cpuid/v2 v2.2.5/go.mod h1:Lcz8mBdAVJIBVzewtcLocK12l3Y+JytZYpaMropDUws= +github.com/knz/go-libedit v1.10.1/go.mod h1:MZTVkCWyz0oBc7JOWP3wNAzd002ZbM/5hgShxwh4x8M= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= -github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= -github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= -github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= -github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= -github.com/labstack/echo/v4 v4.9.0 h1:wPOF1CE6gvt/kmbMR4dGzWvHMPT+sAEUJOwOTtvITVY= -github.com/labstack/echo/v4 v4.9.0/go.mod h1:xkCDAdFCIf8jsFQ5NnbK7oqaF/yU1A1X20Ltm0OvSks= -github.com/labstack/gommon v0.3.1 h1:OomWaJXm7xR6L1HmEtGyQf26TEn7V6X88mktX9kee9o= -github.com/labstack/gommon v0.3.1/go.mod h1:uW6kP17uPlLJsD3ijUYn3/M5bAxtlZhMI6m3MFxTMTM= -github.com/mailru/easyjson v0.0.0-20190614124828-94de47d64c63/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= -github.com/mailru/easyjson v0.0.0-20190626092158-b2ccc519800e/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= -github.com/mailru/easyjson v0.7.6/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= -github.com/mailru/easyjson v0.7.7 h1:UGYAvKxe3sBsEDzO8ZeWOSlIQfWFlxbzLZe7hwFURr0= +github.com/labstack/echo/v4 v4.11.4 h1:vDZmA+qNeh1pd/cCkEicDMrjtrnMGQ1QFI9gWN1zGq8= +github.com/labstack/echo/v4 v4.11.4/go.mod h1:noh7EvLwqDsmh/X/HWKPUl1AjzJrhyptRyEbQJfxen8= +github.com/labstack/gommon v0.4.2 h1:F8qTUNXgG1+6WQmqoUWnz8WiEU60mXVVw0P4ht1WRA0= +github.com/labstack/gommon v0.4.2/go.mod h1:QlUFxVM+SNXhDL/Z7YhocGIBYOiwB0mXm1+1bAPHPyU= +github.com/leodido/go-urn v1.2.4/go.mod h1:7ZrI8mTSeBSHl/UaRyKQW1qZeMgak41ANeCNaVckg+4= +github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0/go.mod h1:zJYVVT2jmtg6P3p1VtQj7WsuWi/y4VnjVBn7F8KPB3I= +github.com/magiconair/properties v1.8.0/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ= +github.com/mailgun/raymond/v2 v2.0.48/go.mod h1:lsgvL50kgt1ylcFJYZiULi5fjPBkkhNfj4KA0W54Z18= github.com/mailru/easyjson v0.7.7/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= -github.com/mattn/go-colorable v0.1.11/go.mod h1:u5H1YNBxpqRaxsYJYSkiCWKzEfiAb1Gb520KVy5xxl4= +github.com/matryer/try v0.0.0-20161228173917-9ac251b645a2/go.mod h1:0KeJpeMD6o+O4hW7qJOT7vyQPKrWmj26uf5wMc/IiIs= github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA= github.com/mattn/go-colorable v0.1.13/go.mod h1:7S9/ev0klgBDR4GtXTXX8a3vIGJpMovkB8vQcUbaXHg= -github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27kJ6hsGG94= github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM= -github.com/mattn/go-isatty v0.0.17 h1:BTarxUcIeDqL27Mc+vyvdWYSL28zpIhv3RoTdsLMPng= github.com/mattn/go-isatty v0.0.17/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM= +github.com/mattn/go-isatty v0.0.19/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= +github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY= +github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= +github.com/mediocregopher/radix/v3 v3.8.1/go.mod h1:8FL3F6UQRXHXIBSPUs5h0RybMF8i4n7wVopoX3x7Bv8= +github.com/microcosm-cc/bluemonday v1.0.25/go.mod h1:ZIOjCQp1OrzBBPIJmfX4qDYFuhU02nx4bn030ixfHLE= +github.com/minio/highwayhash v1.0.2/go.mod h1:BQskDq+xkJ12lmlUUi7U0M5Swg3EWR+dLTk+kldvVxY= +github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= +github.com/mitchellh/go-wordwrap v1.0.1/go.mod h1:R62XHJLzvMFRBbcrT7m7WgmE1eOyTSsCt+hzestvNj0= +github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= +github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= +github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= +github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= +github.com/nats-io/jwt/v2 v2.3.0/go.mod h1:0tqz9Hlu6bCBFLWAASKhE5vUA4c24L9KPUUgvwumE/k= +github.com/nats-io/jwt/v2 v2.5.0/go.mod h1:24BeQtRwxRV8ruvC4CojXlx/WQ/VjuwlYiH+vu/+ibI= +github.com/nats-io/nats-server/v2 v2.9.11/go.mod h1:b0oVuxSlkvS3ZjMkncFeACGyZohbO4XhSqW1Lt7iRRY= +github.com/nats-io/nats.go v1.19.0/go.mod h1:tLqubohF7t4z3du1QDPYJIQQyhb4wl6DhjxEajSI7UA= +github.com/nats-io/nats.go v1.28.0/go.mod h1:XpbWUlOElGwTYbMR7imivs7jJj9GtK7ypv321Wp6pjc= +github.com/nats-io/nkeys v0.3.0/go.mod h1:gvUNGjVcM2IPr5rCsRsC6Wb3Hr2CQAm08dsxtV6A5y4= +github.com/nats-io/nkeys v0.4.4/go.mod h1:XUkxdLPTufzlihbamfzQ7mw/VGx6ObUs+0bN5sNvt64= +github.com/nats-io/nuid v1.0.1/go.mod h1:19wcPz3Ph3q0Jbyiqsd0kePYG7A95tJPxeL+1OSON2c= github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno= -github.com/otiai10/copy v1.7.0 h1:hVoPiN+t+7d2nzzwMiDHPSOogsWAStewq3TwU05+clE= -github.com/otiai10/copy v1.7.0/go.mod h1:rmRl6QPdJj6EiUqXQ/4Nn2lLXoNQjFCQbbNrxgc/t3U= -github.com/otiai10/curr v0.0.0-20150429015615-9b4961190c95/go.mod h1:9qAhocn7zKJG+0mI8eUu6xqkFDYS2kb2saOteoSB3cE= -github.com/otiai10/curr v1.0.0/go.mod h1:LskTG5wDwr8Rs+nNQ+1LlxRjAtTZZjtJW4rMXl6j4vs= -github.com/otiai10/mint v1.3.0/go.mod h1:F5AjcsTsWUqX+Na9fpHb52P8pcRX2CI6A3ctIT91xUo= -github.com/otiai10/mint v1.3.3/go.mod h1:/yxELlJQ0ufhjUwhshSj+wFjZ78CnZ48/1wtmBH1OTc= -github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA= +github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= +github.com/nxadm/tail v1.4.8/go.mod h1:+ncqLTQzXmGhMZNUePPaPqPvBxHAIsmXswZKocGu+AU= +github.com/oapi-codegen/runtime v1.1.1 h1:EXLHh0DXIJnWhdRPN2w4MXAzFyE4CskzhNLUmtpMYro= +github.com/oapi-codegen/runtime v1.1.1/go.mod h1:SK9X900oXmPWilYR5/WKPzt3Kqxn/uS/+lbpREv+eCg= +github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.12.1/go.mod h1:zj2OWP4+oCPe1qIXoGWkgMRwljMUYCdkwsT2108oapk= +github.com/onsi/ginkgo v1.16.4/go.mod h1:dX+/inL/fNMqNlz0e9LfyB9TswhZpCVdJM/Z6Vvnwo0= +github.com/onsi/ginkgo v1.16.5/go.mod h1:+E8gABHa3K6zRBolWtd+ROzc/U5bkGt0FwiG042wbpU= +github.com/onsi/ginkgo/v2 v2.1.3/go.mod h1:vw5CSIxN1JObi/U8gcbwft7ZxR2dgaR70JSE3/PpL4c= +github.com/onsi/ginkgo/v2 v2.1.4/go.mod h1:um6tUpWM/cxCK3/FK8BXqEiUMUwRgSM4JXG47RKZmLU= +github.com/onsi/ginkgo/v2 v2.1.6/go.mod h1:MEH45j8TBi6u9BMogfbp0stKC5cdGjumZj5Y7AG4VIk= +github.com/onsi/ginkgo/v2 v2.3.0/go.mod h1:Eew0uilEqZmIEZr8JrvYlvOM7Rr6xzTmMV8AyFNU9d0= +github.com/onsi/ginkgo/v2 v2.4.0/go.mod h1:iHkDK1fKGcBoEHT5W7YBq4RFWaQulw+caOMkAt4OrFo= +github.com/onsi/ginkgo/v2 v2.5.0/go.mod h1:Luc4sArBICYCS8THh8v3i3i5CuSZO+RaQRaJoeNwomw= +github.com/onsi/ginkgo/v2 v2.7.0/go.mod h1:yjiuMwPokqY1XauOgju45q3sJt6VzQ/Fict1LFVcsAo= +github.com/onsi/ginkgo/v2 v2.8.1/go.mod h1:N1/NbDngAFcSLdyZ+/aYTYGSlq9qMCS/cNKGJjy+csc= +github.com/onsi/ginkgo/v2 v2.9.0/go.mod h1:4xkjoL/tZv4SMWeww56BU5kAt19mVB47gTWxmrTcxyk= +github.com/onsi/ginkgo/v2 v2.9.1/go.mod h1:FEcmzVcCHl+4o9bQZVab+4dC9+j+91t2FHSzmGAPfuo= +github.com/onsi/ginkgo/v2 v2.9.2/go.mod h1:WHcJJG2dIlcCqVfBAwUCrJxSPFb6v4azBwgxeMeDuts= +github.com/onsi/ginkgo/v2 v2.9.5/go.mod h1:tvAoo1QUJwNEU2ITftXTpR7R1RbCzoZUOs3RonqW57k= +github.com/onsi/ginkgo/v2 v2.9.7/go.mod h1:cxrmXWykAwTwhQsJOPfdIDiJ+l2RYq7U8hFU+M/1uw0= +github.com/onsi/ginkgo/v2 v2.11.0/go.mod h1:ZhrRA5XmEE3x3rhlzamx/JJvujdZoJ2uvgI7kR0iZvM= +github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7JYyY= +github.com/onsi/gomega v1.10.1/go.mod h1:iN09h71vgCQne3DLsj+A5owkum+a2tYe+TOCB1ybHNo= +github.com/onsi/gomega v1.17.0/go.mod h1:HnhC7FXeEQY45zxNK3PPoIUhzk/80Xly9PcubAlGdZY= +github.com/onsi/gomega v1.19.0/go.mod h1:LY+I3pBVzYsTBU1AnDwOSxaYi9WoWiqgwooUqq9yPro= +github.com/onsi/gomega v1.20.1/go.mod h1:DtrZpjmvpn2mPm4YWQa0/ALMDj9v4YxLgojwPeREyVo= +github.com/onsi/gomega v1.21.1/go.mod h1:iYAIXgPSaDHak0LCMA+AWBpIKBr8WZicMxnE8luStNc= +github.com/onsi/gomega v1.22.1/go.mod h1:x6n7VNe4hw0vkyYUM4mjIXx3JbLiPaBPNgB7PRQ1tuM= +github.com/onsi/gomega v1.24.0/go.mod h1:Z/NWtiqwBrwUt4/2loMmHL63EDLnYHmVbuBpDr2vQAg= +github.com/onsi/gomega v1.24.1/go.mod h1:3AOiACssS3/MajrniINInwbfOOtfZvplPzuRSmvt1jM= +github.com/onsi/gomega v1.26.0/go.mod h1:r+zV744Re+DiYCIPRlYOTxn0YkOLcAnW8k1xXdMPGhM= +github.com/onsi/gomega v1.27.1/go.mod h1:aHX5xOykVYzWOV4WqQy0sy8BQptgukenXpCXfadcIAw= +github.com/onsi/gomega v1.27.3/go.mod h1:5vG284IBtfDAmDyrK+eGyZmUgUlmi+Wngqo557cZ6Gw= +github.com/onsi/gomega v1.27.4/go.mod h1:riYq/GJKh8hhoM01HN6Vmuy93AarCXCBGpvFDK3q3fQ= +github.com/onsi/gomega v1.27.6/go.mod h1:PIQNjfQwkP3aQAH7lf7j87O/5FiNr+ZR8+ipb+qQlhg= +github.com/onsi/gomega v1.27.7/go.mod h1:1p8OOlwo2iUUDsHnOrjE5UKYJ+e3W8eQ3qSlRahPmr4= +github.com/onsi/gomega v1.27.8/go.mod h1:2J8vzI/s+2shY9XHRApDkdgPo1TKT7P2u6fXeJKFnNQ= +github.com/onsi/gomega v1.27.10/go.mod h1:RsS8tutOdbdgzbPtzzATp12yT7kM5I5aElG3evPbQ0M= +github.com/pelletier/go-toml v1.2.0/go.mod h1:5z9KED0ma1S8pY6P1sdut58dfprrGBbd/94hg7ilaic= +github.com/pelletier/go-toml/v2 v2.0.8/go.mod h1:vuYfssBdrU2XDZ9bYydBu6t+6a6PYNcZljzZR9VXg+4= +github.com/pelletier/go-toml/v2 v2.0.9/go.mod h1:tJU2Z3ZkXwnxa4DPO899bsyIoywizdUvyaeZurnPPDc= +github.com/pkg/diff v0.0.0-20200914180035-5b29258ca4f7/go.mod h1:zO8QMzTeZd5cpnIkz/Gn6iK0jDfGicM1nynOkkPIl28= +github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pmezard/go-difflib v0.0.0-20151028094244-d8ed2627bdf0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -github.com/rogpeppe/go-internal v1.9.0 h1:73kH8U+JUqXU8lRuOHeVHaa/SZPifC7BkcraZVejAe8= -github.com/rogpeppe/go-internal v1.9.0/go.mod h1:WtVeX8xhTBvf0smdhujwtBcq4Qrzq/fJaraNFVN+nFs= -github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= -github.com/shurcooL/sanitized_anchor_name v1.0.0/go.mod h1:1NzhyTcUVG4SuEtjjoZeVRXNmyL/1OwPU0+IJeTBvfc= +github.com/power-devops/perfstat v0.0.0-20210106213030-5aafc221ea8c/go.mod h1:OmDBASR4679mdNQnz2pUhc2G8CO2JrUAVFDRBDP/hJE= +github.com/prashantv/gostub v1.1.0/go.mod h1:A5zLQHz7ieHGG7is6LLXLz7I8+3LZzsrV0P1IAHhP5U= +github.com/redis/go-redis/v9 v9.1.0/go.mod h1:urWj3He21Dj5k4TK1y59xH8Uj6ATueP8AH1cY3lZl4c= +github.com/russross/blackfriday v1.5.2/go.mod h1:JO/DiYxRf+HjHt06OyowR9PTA263kcR/rfWxYHBV53g= +github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= +github.com/sanity-io/litter v1.5.5/go.mod h1:9gzJgR2i4ZpjZHsKvUXIRQVk7P+yM3e+jAF7bU2UI5U= +github.com/schollz/closestmatch v2.1.0+incompatible/go.mod h1:RtP1ddjLong6gTkbtmuhtR2uUrrJOpYzYRvbcPAid+g= +github.com/sergi/go-diff v1.0.0/go.mod h1:0CfEIISq7TuYL3j771MWULgwwjU+GofnZX9QAmXWZgo= +github.com/shirou/gopsutil/v3 v3.23.8/go.mod h1:7hmCaBn+2ZwaZOr6jmPBZDfawwMGuo1id3C6aM8EDqQ= +github.com/shoenig/go-m1cpu v0.1.6/go.mod h1:1JJMcUBvfNwpq05QDQVAnx3gUHr9IYF7GNg9SUEw2VQ= +github.com/shoenig/test v0.6.4/go.mod h1:byHiCGXqrVaflBLAMq/srcZIHynQPQgeyvkvXnjqq0k= +github.com/sirupsen/logrus v1.8.1/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= github.com/slack-go/slack v0.13.0 h1:7my/pR2ubZJ9912p9FtvALYpbt0cQPAqkRy2jaSI1PQ= github.com/slack-go/slack v0.13.0/go.mod h1:hlGi5oXA+Gt+yWTPP0plCdRKmjsDxecdHxYQdlMQKOw= -github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc= -github.com/smartystreets/goconvey v1.6.4/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA= +github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA= +github.com/spaolacci/murmur3 v1.1.0/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA= +github.com/spf13/afero v1.1.2/go.mod h1:j4pytiNVoe2o6bmDsKpLACNPDBIoEAkihy7loJ1B0CQ= +github.com/spf13/cast v1.3.0/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= +github.com/spf13/cobra v0.0.5/go.mod h1:3K3wKZymM7VvHMDS9+Akkh4K60UwM26emMESw8tLCHU= +github.com/spf13/jwalterweatherman v1.0.0/go.mod h1:cQK4TGJAtQXfYWX+Ddv3mKDzgVb68N+wFjFa4jdeBTo= +github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= +github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= +github.com/spf13/viper v1.3.2/go.mod h1:ZiWeW+zYFKm7srdB9IoDzzZXaJaI5eL9QjNiN/DMA2s= +github.com/spkg/bom v0.0.0-20160624110644-59b7046e48ad/go.mod h1:qLr4V1qq6nMqFKkMo8ZTx3f+BZEkzsRUY10Xsm2mwU0= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= +github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA= +github.com/stretchr/testify v0.0.0-20161117074351-18a02ba4a312/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= +github.com/stretchr/testify v1.2.1/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= +github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= +github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= -github.com/stretchr/testify v1.8.1 h1:w7B6lhMri9wdJUVmEZPGGhZzrYTPvgJArz7wNPgYKsk= github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= -github.com/swaggo/echo-swagger v1.3.5 h1:kCx1wvX5AKhjI6Ykt48l3PTsfL9UD40ZROOx/tYzWyY= -github.com/swaggo/echo-swagger v1.3.5/go.mod h1:3IMHd2Z8KftdWFEEjGmv6QpWj370LwMCOfovuh7vF34= -github.com/swaggo/files v0.0.0-20220728132757-551d4a08d97a h1:kAe4YSu0O0UFn1DowNo2MY5p6xzqtJ/wQ7LZynSvGaY= -github.com/swaggo/files v0.0.0-20220728132757-551d4a08d97a/go.mod h1:lKJPbtWzJ9JhsTN1k1gZgleJWY/cqq0psdoMmaThG3w= -github.com/swaggo/swag v1.8.1 h1:JuARzFX1Z1njbCGz+ZytBR15TFJwF2Q7fu8puJHhQYI= -github.com/swaggo/swag v1.8.1/go.mod h1:ugemnJsPZm/kRwFUnzBlbHRd0JY9zE1M4F+uy2pAaPQ= -github.com/urfave/cli/v2 v2.3.0/go.mod h1:LJmUH05zAU44vOAcrfzZQKsZbVcdbOG8rtL3/XcUArI= +github.com/stretchr/testify v1.8.2/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= +github.com/stretchr/testify v1.8.3/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= +github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= +github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= +github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= +github.com/tailscale/depaware v0.0.0-20210622194025-720c4b409502/go.mod h1:p9lPsd+cx33L3H9nNoecRRxPssFKUwwI50I3pZ0yT+8= +github.com/tdewolff/minify/v2 v2.12.9/go.mod h1:qOqdlDfL+7v0/fyymB+OP497nIxJYSvX4MQWA8OoiXU= +github.com/tdewolff/parse/v2 v2.6.8/go.mod h1:XHDhaU6IBgsryfdnpzUXBlT6leW/l25yrFBTEb4eIyM= +github.com/tdewolff/test v1.0.9/go.mod h1:6DAvZliBAAnD7rhVgwaM7DE5/d9NMOAJ09SqYqeK4QE= +github.com/tklauser/go-sysconf v0.3.12/go.mod h1:Ho14jnntGE1fpdOqQEEaiKRpvIavV0hSfmBq8nJbHYI= +github.com/tklauser/numcpus v0.6.1/go.mod h1:1XfjsgE2zo8GVw7POkMbHENHzVg3GzmoZ9fESEdAacY= +github.com/twitchyliquid64/golang-asm v0.15.1/go.mod h1:a1lVb/DtPvCB8fslRZhAngC2+aY1QWCk3Cedj/Gdt08= +github.com/ugorji/go/codec v0.0.0-20181204163529-d75b2dcb6bc8/go.mod h1:VFNgLljTbGfSG7qAOspJ7OScBnGdDN/yBr0sguwnwf0= +github.com/ugorji/go/codec v1.2.11/go.mod h1:UNopzCgEMSXjBc6AOMqYvWC1ktqTAfzJZUZgYf6w6lg= github.com/valyala/bytebufferpool v1.0.0 h1:GqA5TC/0021Y/b9FG4Oi9Mr3q7XYx6KllzawFIhcdPw= github.com/valyala/bytebufferpool v1.0.0/go.mod h1:6bBcMArwyJ5K/AmCkWv1jt77kVWyCJ6HpOuEn7z0Csc= -github.com/valyala/fasttemplate v1.2.1 h1:TVEnxayobAdVkhQfrfes2IzOB6o+z4roRkPF52WA1u4= -github.com/valyala/fasttemplate v1.2.1/go.mod h1:KHLXt3tVN2HBp8eijSv/kGJopbvo7S+qRAEEKiv+SiQ= -github.com/yuin/goldmark v1.4.0/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= +github.com/valyala/fasttemplate v1.2.2 h1:lxLXG0uE3Qnshl9QyaK6XJxMXlQZELvChBOCmQD0Loo= +github.com/valyala/fasttemplate v1.2.2/go.mod h1:KHLXt3tVN2HBp8eijSv/kGJopbvo7S+qRAEEKiv+SiQ= +github.com/vmihailenco/msgpack/v5 v5.3.5/go.mod h1:7xyJ9e+0+9SaZT0Wt1RGleJXzli6Q/V5KbhBonMG9jc= +github.com/vmihailenco/tagparser/v2 v2.0.0/go.mod h1:Wri+At7QHww0WTrCBeu4J6bNtoV6mEfg5OIWRZA9qds= +github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU= +github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415/go.mod h1:GwrjFmJcFw6At/Gs6z4yjiIwzuJ1/+UwLxMQDVQXShQ= +github.com/xeipuuv/gojsonschema v1.2.0/go.mod h1:anYRn/JVcOK2ZgGU+IjEV4nwlhoK5sQluxsYJ78Id3Y= +github.com/xordataexchange/crypt v0.0.3-0.20170626215501-b2862e3d0a77/go.mod h1:aYKd//L2LvnjZzWKhF00oedf4jCCReLcmhLdhm1A27Q= +github.com/yalp/jsonpath v0.0.0-20180802001716-5cc68e5049a0/go.mod h1:/LWChgwKmvncFJFHJ7Gvn9wZArjbV5/FppcK2fKk/tI= +github.com/yosssi/ace v0.0.5/go.mod h1:ALfIzm2vT7t5ZE7uoIZqF3TQ7SAOyupFZnkrF5id+K0= +github.com/yudai/gojsondiff v1.0.0/go.mod h1:AY32+k2cwILAkW1fbgxQ5mUmMiZFgLIV+FBNExI05xg= +github.com/yudai/golcs v0.0.0-20170316035057-ecda9a501e82/go.mod h1:lgjkn3NuSvDfVJdfcVVdX+jpBxNmX4rDAzaS45IcYoM= +github.com/yudai/pp v2.0.1+incompatible/go.mod h1:PuxR/8QJ7cyCkFp/aUDS+JY727OFEZkTdatxwunjIkc= +github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.4.1/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= +github.com/yusufpapurcu/wmi v1.2.3/go.mod h1:SBZ9tNy3G9/m5Oi98Zks0QjeHVDvuK0qfxQmPyzfmi0= +go.etcd.io/bbolt v1.3.7/go.mod h1:N9Mkw9X8x5fupy0IKsmuqVtoGDyxsaDlbk4Rd05IAQw= +go.etcd.io/gofail v0.1.0/go.mod h1:VZBCXYGZhHAinaBiiqYvuDynvahNsAyLFwB3kEHKz1M= +go.uber.org/automaxprocs v1.5.1/go.mod h1:BF4eumQw0P9GtnuxxovUd06vwm1o18oMzFtK66vU6XU= +golang.org/x/arch v0.0.0-20210923205945-b76863e36670/go.mod h1:5om86z9Hs0C8fWVUuoMHwpExlXzs5Tkyp9hOrfG7pp8= +golang.org/x/arch v0.3.0/go.mod h1:5om86z9Hs0C8fWVUuoMHwpExlXzs5Tkyp9hOrfG7pp8= +golang.org/x/arch v0.4.0/go.mod h1:5om86z9Hs0C8fWVUuoMHwpExlXzs5Tkyp9hOrfG7pp8= +golang.org/x/crypto v0.0.0-20181203042331-505ab145d0a9/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= -golang.org/x/crypto v0.0.0-20210817164053-32db794688a5/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= +golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20210314154223-e6e6c4f2bb5b/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4= golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= -golang.org/x/crypto v0.0.0-20220411220226-7b82a4e95df4/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= -golang.org/x/crypto v0.3.0 h1:a06MkbcxBrEFc0w0QIZWXrH/9cCX6KJyWbBOIwAn+7A= -golang.org/x/crypto v0.3.0/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4= -golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/crypto v0.1.0/go.mod h1:RecgLatLF4+eUMCP1PoPZQb+cVrJcOPbHkTkbkB9sbw= +golang.org/x/crypto v0.5.0/go.mod h1:NK/OQwhpMQP3MwtdjgLlYHnH9ebylxKWv3e0fK+mkQU= +golang.org/x/crypto v0.6.0/go.mod h1:OFC/31mSvZgRz0V1QTNCzfAI1aIRzbiufJtkMIlEp58= +golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU= +golang.org/x/crypto v0.9.0/go.mod h1:yrmDGqONDYtNj3tH8X9dzUun2m2lzPa9ngI6/RUPGR0= +golang.org/x/crypto v0.11.0/go.mod h1:xgJhtzW8F9jGdVFWZESrid1U1bjeNy4zgy5cRr/CIio= +golang.org/x/crypto v0.12.0/go.mod h1:NF0Gs7EO5K4qLn+Ylc+fih8BSTeIjAP05siRnAh98yw= +golang.org/x/crypto v0.13.0/go.mod h1:y6Z2r+Rw4iayiXXAIxJIDAJ1zMW4yaTpebo8fPOliYc= +golang.org/x/crypto v0.16.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4= +golang.org/x/crypto v0.17.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4= +golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU= +golang.org/x/crypto v0.23.0 h1:dIJU/v2J8Mdglj/8rJ6UUOM3Zc9zLZxVZwwxMooUSAI= +golang.org/x/crypto v0.23.0/go.mod h1:CKFgDieR+mRhux2Lsu27y0fO304Db0wZe70UKqHu0v8= +golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/mod v0.4.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/mod v0.5.1/go.mod h1:5OXOZSfqPIIbmVBIIKWRFfZjPR0E5r58TLhUjH0a2Ro= golang.org/x/mod v0.6.0-dev.0.20220106191415-9b9b3d81d5e3/go.mod h1:3p9vT2HGsQu2K1YbXdKPJLVgG5VJdoTa1poYQBtP1AY= golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= -golang.org/x/mod v0.7.0 h1:LapD9S96VoQRhi/GrNTqeBJFrUjs5UHCAtTlgwA5oZA= +golang.org/x/mod v0.6.0/go.mod h1:4mET923SAdbXp2ki8ey+zGs1SLqsuM2Y0uvdZR/fUNI= golang.org/x/mod v0.7.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= -golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= +golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= +golang.org/x/mod v0.9.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= +golang.org/x/mod v0.10.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= +golang.org/x/net v0.0.0-20180218175443-cbe0f9307d01/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20190327091125-710a502c58a2/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200520004742-59133d7f0dd7/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= +golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= -golang.org/x/net v0.0.0-20210421230115-4e50805a0758/go.mod h1:72T/g9IO56b78aLF+1Kcs5dz7/ng1VjMUvfKvpfy+jM= -golang.org/x/net v0.0.0-20210805182204-aaa1db679c0d/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20210428140749-89ef3d95e781/go.mod h1:OJAsFXCWl8Ukc7SiCT/9KSuxbyM7479/AVlXFRxuMCk= golang.org/x/net v0.0.0-20211015210444-4f30a5c0130f/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20220225172249-27dd8689420f/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= golang.org/x/net v0.0.0-20220425223048-2871e0cb64e4/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= +golang.org/x/net v0.1.0/go.mod h1:Cx3nUiGt4eDBEyega/BKRp+/AlGL8hYe7U9odMt2Cco= golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY= golang.org/x/net v0.3.0/go.mod h1:MBQ8lrhLObU/6UmLb4fmbmk5OcyYmqtbGd/9yIeKjEE= -golang.org/x/net v0.7.0 h1:rJrUqqhjsgNp7KqAIc25s9pZnjU7TUcSY7HcVZjdn1g= +golang.org/x/net v0.5.0/go.mod h1:DivGGAXEgPSlEBzxGzZI+ZLohi+xUj054jfeKui00ws= +golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= golang.org/x/net v0.7.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= +golang.org/x/net v0.8.0/go.mod h1:QVkue5JL9kW//ek3r6jTKnTFis1tRmNAW2P1shuFdJc= +golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= +golang.org/x/net v0.12.0/go.mod h1:zEVYFnQC7m/vmpQFELhcD1EWkZlX69l4oqgmer6hfKA= +golang.org/x/net v0.14.0/go.mod h1:PpSgVXXLK0OxS0F31C1/tv6XNguvCrnXIDrFMspZIUI= +golang.org/x/net v0.15.0/go.mod h1:idbUs1IY1+zTqbi8yxTbhexhEEk5ur9LInksu6HrEpk= +golang.org/x/net v0.19.0/go.mod h1:CfAk/cbD4CthTvqiEl8NpboMuiuOYsAr/7NOjZJtv1U= +golang.org/x/net v0.21.0/go.mod h1:bIjVDfnllIU7BJ2DNgfnXvpSvtn8VRwhlsaeUTyUS44= +golang.org/x/net v0.25.0 h1:d/OCCoBEUq33pjydKrGQhw7IlUPI2Oylr+8qLx49kac= +golang.org/x/net v0.25.0/go.mod h1:JkAGAh7GEvH74S6FOH42FLoXpXbE/aqXSrIQjXgsiwM= +golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.2.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.3.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y= +golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20181205085412-a5c9d58dba9a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190130150945-aca44879d564/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190626221950-04f50cda93cb/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190904154756-749cb33beabd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190916202348-b4ddaad3f8a3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191005200804-aed5e4c7ecf9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191120155948-bd437916bb0e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191204072324-ce4227a45e2e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210420072515-93ed5bcd2bfe/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201204225414-ed752295db88/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210112080510-489259a85091/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210809222454-d867a43fc93e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210927094055-39ccf1dd6fa6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20211019181941-9d821ace8654/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20211103235746-7861aae1554b/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220319134239-a9b59b0215f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220422013727-9388b58f7150/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220704084225-05e143d24a9e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220908164124-27713097b956/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.3.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.5.0 h1:MUK/U/4lj1t1oPg0HfuXDN/Z1wv31ZJ/YcPiGccS4DU= +golang.org/x/sys v0.4.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.9.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.10.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.11.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.15.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.20.0 h1:Od9JTbYCk261bKm4M/mw7AklTlFYIa0bIp9BgSm1S8Y= +golang.org/x/sys v0.20.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= +golang.org/x/term v0.1.0/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc= golang.org/x/term v0.3.0/go.mod h1:q750SLmJuPmVoN1blW3UFBPREJfb1KmY3vwxfr+nFDA= +golang.org/x/term v0.4.0/go.mod h1:9P2UbLfCdcvo3p/nzKvsmas4TnlujnuoV9hGgYzW1lQ= golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= +golang.org/x/term v0.6.0/go.mod h1:m6U89DPEgQRMq3DNkDClhWw02AUbt2daBVO4cn4Hv9U= +golang.org/x/term v0.8.0/go.mod h1:xPskH00ivmX89bAKVGSKKtLOWNx2+17Eiy94tnKShWo= +golang.org/x/term v0.10.0/go.mod h1:lpqdcUyK/oCiQxvxVrppt5ggO2KCZ5QblwqPnfZ6d5o= +golang.org/x/term v0.11.0/go.mod h1:zC9APTIj3jG3FdV/Ons+XE1riIZXG4aZ4GTHiPZJPIU= +golang.org/x/term v0.12.0/go.mod h1:owVbMEjm3cBLCHdkQu9b1opXd4ETQWc3BhuQGKgXgvU= +golang.org/x/term v0.15.0/go.mod h1:BDl952bC7+uMoWR75FIrCDx79TPU9oHkTZ9yRbYOrX0= +golang.org/x/term v0.17.0/go.mod h1:lLRBjIVuehSbZlaOtGMbcMncT+aqLLLmKrsjNrUguwk= +golang.org/x/term v0.20.0/go.mod h1:8UkIAJTvZgivsXaD6/pH6U9ecQzZ45awqEOzuCvwpFY= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= +golang.org/x/text v0.3.8/go.mod h1:E6s5w1FMmriuDzIBO73fBruAKo1PCIq6d2Q6DHfQ8WQ= golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/text v0.5.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= -golang.org/x/text v0.7.0 h1:4BRB4x83lYWy72KwLD/qYDuTu7q9PjSagHvijDw7cLo= +golang.org/x/text v0.6.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= -golang.org/x/time v0.0.0-20201208040808-7e3f01d25324/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= -golang.org/x/time v0.0.0-20210723032227-1f47c861a9ac h1:7zkz7BUtwNFFqcowJ+RIgu2MaV/MapERkDIy+mwPyjs= -golang.org/x/time v0.0.0-20210723032227-1f47c861a9ac/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= +golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= +golang.org/x/text v0.11.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= +golang.org/x/text v0.12.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= +golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= +golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= +golang.org/x/text v0.15.0 h1:h1V/4gjBv8v9cjcR6+AR5+/cIYK5N/WAgiv4xlsEtAk= +golang.org/x/text v0.15.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= +golang.org/x/time v0.0.0-20220922220347-f3bd1da661af/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.3.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.5.0 h1:o7cqy6amK/52YcAKIPlM3a+Fpj35zvRj2TP+e1xFSfk= +golang.org/x/time v0.5.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= -golang.org/x/tools v0.0.0-20190328211700-ab21143f2384/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.1.7/go.mod h1:LGqMHiF4EqQNHR1JncWGqT5BVaXmza+X+BDGol+dOxo= +golang.org/x/tools v0.0.0-20201211185031-d93e913c1a58/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= +golang.org/x/tools v0.0.0-20201224043029-2b0845dc783e/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= +golang.org/x/tools v0.1.9/go.mod h1:nABZi5QlRsZVlzPpHl034qft6wpY4eDcsTt5AaioBiU= golang.org/x/tools v0.1.10/go.mod h1:Uh6Zz+xoGYZom868N8YTex3t7RhtHDBrE8Gzo9bV56E= golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= -golang.org/x/tools v0.4.0 h1:7mTAgkunk3fr4GAloyyCasadO6h9zSsQZbwvcaIciV4= +golang.org/x/tools v0.2.0/go.mod h1:y4OqIKeOV/fWJetJ8bXPU1sEVniLMIyDAZWeHdV+NTA= golang.org/x/tools v0.4.0/go.mod h1:UE5sM2OK9E/d67R0ANs2xJizIymRP5gJU295PvKXxjQ= +golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= +golang.org/x/tools v0.7.0/go.mod h1:4pg6aUX35JBAogB10C9AtvVL+qowtN4pT3CGSQex14s= +golang.org/x/tools v0.9.1/go.mod h1:owI94Op576fPu3cIGQeHs3joujW/2Oc6MtlxbF5dfNc= +golang.org/x/tools v0.9.3/go.mod h1:owI94Op576fPu3cIGQeHs3joujW/2Oc6MtlxbF5dfNc= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20220411194840-2f41105eb62f/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= +google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= +google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= +google.golang.org/protobuf v1.20.1-0.20200309200217-e05f789c0967/go.mod h1:A+miEFZTKqfCUM6K7xSMQL9OKL/b6hQv+e19PK+JZNE= +google.golang.org/protobuf v1.21.0/go.mod h1:47Nbq4nVaFHyn7ilMalzfO3qCViNmqZ2kzikPIcrTAo= +google.golang.org/protobuf v1.23.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= +google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= +google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= +google.golang.org/protobuf v1.28.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= +google.golang.org/protobuf v1.28.1/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= +google.golang.org/protobuf v1.30.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= +google.golang.org/protobuf v1.31.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= +gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20200902074654-038fdea0a05b/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= +gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys= +gopkg.in/ini.v1 v1.67.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= +gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.2.3/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= +gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= -gopkg.in/yaml.v3 v3.0.0-20200615113413-eeeca48fe776/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= @@ -209,3 +508,6 @@ gorm.io/driver/mysql v1.3.3/go.mod h1:ChK6AHbHgDCFZyJp0F+BmVGb06PSIoh9uVYKAlRbb2 gorm.io/gorm v1.23.1/go.mod h1:l2lP/RyAtc1ynaTjFksBde/O8v9oOGIApu2/xRitmZk= gorm.io/gorm v1.23.4 h1:1BKWM67O6CflSLcwGQR7ccfmC4ebOxQrTfOQGRE9wjg= gorm.io/gorm v1.23.4/go.mod h1:l2lP/RyAtc1ynaTjFksBde/O8v9oOGIApu2/xRitmZk= +moul.io/http2curl/v2 v2.3.0/go.mod h1:RW4hyBjTWSYDOxapodpNEtX0g5Eb16sxklBqmd2RHcE= +nullprogram.com/x/optparse v1.0.0/go.mod h1:KdyPE+Igbe0jQUrVfMqDMeJQIJZEuyV7pjYmp6pbG50= +rsc.io/pdf v0.1.1/go.mod h1:n8OzWcQ6Sp37PL01nO98y4iUCRdTGarVfzxY20ICaU4= diff --git a/docker-compose.db.yml b/compose.db.yml similarity index 100% rename from docker-compose.db.yml rename to compose.db.yml diff --git a/docker-compose.local-prod.yml b/compose.local-prod.yml similarity index 100% rename from docker-compose.local-prod.yml rename to compose.local-prod.yml diff --git a/docker-compose.prod.yml b/compose.prod.yml similarity index 100% rename from docker-compose.prod.yml rename to compose.prod.yml diff --git a/compose.swagger.yml b/compose.swagger.yml new file mode 100644 index 000000000..7dfcdb896 --- /dev/null +++ b/compose.swagger.yml @@ -0,0 +1,10 @@ +services: + swagger-ui: + image: swaggerapi/swagger-ui + container_name: "nutfes-finansu-swagger-ui" + ports: + - "8000:8080" + volumes: + - ./openapi/openapi.yaml:/swagger.yaml + environment: + SWAGGER_JSON: /swagger.yaml diff --git a/docker-compose.yml b/compose.yml similarity index 97% rename from docker-compose.yml rename to compose.yml index 0d973079b..978a78cd7 100644 --- a/docker-compose.yml +++ b/compose.yml @@ -27,6 +27,7 @@ services: container_name: "nutfes-finansu-api" volumes: - ./api:/app + - ./openapi:/openapi environment: RESET_PASSWORD_URL: "http://localhost:3000/reset_password" #シェルスクリプトを実行するコマンド diff --git a/mysql/db/01_years.sql b/mysql/db/01_years.sql index d1c8f8871..3a2c5b7d0 100644 --- a/mysql/db/01_years.sql +++ b/mysql/db/01_years.sql @@ -10,3 +10,4 @@ CREATE TABLE years ( INSERT into years (year) values (2023); INSERT into years (year) values (2024); +INSERT into years (year) values (2025); diff --git a/mysql/db/year_periods.sql b/mysql/db/year_periods.sql index 0cb6ce15f..6192199ef 100644 --- a/mysql/db/year_periods.sql +++ b/mysql/db/year_periods.sql @@ -12,3 +12,4 @@ CREATE TABLE year_periods ( INSERT INTO year_periods (year_id, started_at, ended_at) values (1, '2022-11-15 00:00:00', '2023-11-15 00:00:00'); INSERT INTO year_periods (year_id, started_at, ended_at) values (2, '2023-11-15 00:00:00', '2024-11-15 00:00:00'); +INSERT INTO year_periods (year_id, started_at, ended_at) values (3, '2024-11-15 00:00:00', '2025-11-15 00:00:00'); diff --git a/openapi/config.yaml b/openapi/config.yaml new file mode 100644 index 000000000..3f5d03003 --- /dev/null +++ b/openapi/config.yaml @@ -0,0 +1,8 @@ +# yaml-language-server: ... +# go:generate oapi-codegen --config=config.yaml ../../api.yaml + +package: generated +generate: + - server + - types +output: /app/generated/openapi_gen.go diff --git a/openapi/openapi.yaml b/openapi/openapi.yaml new file mode 100644 index 000000000..45545f0de --- /dev/null +++ b/openapi/openapi.yaml @@ -0,0 +1,2432 @@ +openapi: 3.0.1 +info: + title: NUTFes FinanSu API + description: FinanSu APIドキュメント + contact: {} + version: 2.0.0 +servers: + - url: http://localhost:1323/ +paths: + /activities: + get: + tags: + - activity + description: activitiesの一覧を取得 + responses: + "200": + description: activitiesの一覧の取得 + content: {} + post: + tags: + - activity + description: activitiesの作成 + requestBody: + content: + "*/*": + schema: + $ref: "#/components/schemas/activity" + required: false + responses: + "200": + description: create されたactivityが返ってくる + content: {} + x-codegen-request-body-name: activity + /activities/details: + get: + tags: + - activity + description: "activitiesとsponsor,sponsorStyle,userの一覧を取得" + responses: + "200": + description: "activitiesとsponsor,sponsorStyle,userの一覧の取得" + content: {} + /activities/details/{year}: + get: + tags: + - activity + description: "年度で指定されたactivitiesとsponsor,sponsorStyle,userの一覧を取得" + parameters: + - name: year + in: path + description: year + required: true + schema: + type: integer + responses: + "200": + description: "年度で指定されたactivitiesとsponsor,sponsorStyle,userの一覧を取得" + content: {} + /activities/filtered_details: + get: + tags: + - activity + description: "activitiesとsponsor,sponsorStyle,userの一覧を取得" + requestBody: + description: Filter by keyword + content: + "*/*": + schema: + type: string + required: false + responses: + "200": + description: "activitiesとsponsor,sponsorStyle,userの一覧の取得" + content: {} + x-codegen-request-body-name: keyword + /activities/filtered_details/{year}: + get: + tags: + - activity + description: "activitiesとsponsor,sponsorStyle,userの一覧を取得" + parameters: + - name: year + in: path + description: Filter by year. + required: true + schema: + type: string + requestBody: + description: Filter by keyword + content: + "*/*": + schema: + type: string + required: false + responses: + "200": + description: "activitiesとsponsor,sponsorStyle,userの一覧の取得" + content: {} + x-codegen-request-body-name: keyword + /activities/{id}: + get: + tags: + - activity + description: IDで指定されたactivitiesの取得 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: activitiesの取得 + content: {} + put: + tags: + - activity + description: activitiesの更新 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + requestBody: + content: + "*/*": + schema: + $ref: "#/components/schemas/activity" + required: false + responses: + "200": + description: 更新されたactivitiesが返ってくる + content: {} + x-codegen-request-body-name: activity + delete: + tags: + - activity + description: IDを指定してactivitiesの削除 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: activitiesの削除完了 + content: {} + /activity_informations: + get: + tags: + - activity_information + description: activity_informationの一覧を取得 + responses: + "200": + description: activity_informationの一覧の取得 + content: {} + post: + tags: + - activity_information + description: activity_informationの作成 + requestBody: + content: + "*/*": + schema: + $ref: "#/components/schemas/activity_information" + required: false + responses: + "200": + description: create されたactivity_informationが返ってくる + content: {} + x-codegen-request-body-name: activity_information + /activity_informations/{id}: + get: + tags: + - activity_information + description: IDで指定されたactivity_informationsの取得 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: activity_informationの取得 + content: {} + put: + tags: + - activity_information + description: activity_informationの更新 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + requestBody: + content: + "*/*": + schema: + $ref: "#/components/schemas/activity_information" + required: false + responses: + "200": + description: 更新されたactivity_informationが返ってくる + content: {} + x-codegen-request-body-name: activity_information + delete: + tags: + - activity_information + description: IDを指定してactivity_informationの削除 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: activity_informationの削除完了 + content: {} + /activity_styles: + get: + tags: + - activity_style + description: activity_styleの一覧を取得 + responses: + "200": + description: activity_styleの一覧の取得 + content: {} + post: + tags: + - activity_style + description: activity_styleの作成 + requestBody: + content: + "*/*": + schema: + $ref: "#/components/schemas/activity_style" + required: false + responses: + "200": + description: createされたactivity_styleが返ってくる + content: {} + x-codegen-request-body-name: activity_style + /activity_styles/{id}: + get: + tags: + - activity_style + description: IDで指定されたactivity_styleの取得 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: activity_styleの取得 + content: {} + put: + tags: + - activity_style + description: activity_styleの更新 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + requestBody: + content: + "*/*": + schema: + $ref: "#/components/schemas/activity_style" + required: false + responses: + "200": + description: 更新されたactivity_styleが返ってくる + content: {} + x-codegen-request-body-name: activity_style + delete: + tags: + - activity_style + description: IDを指定してactivity_styleの削除 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: activity_styleの削除完了 + content: {} + /budgets: + get: + tags: + - budget + description: budgetの一覧を取得 + responses: + "200": + description: budgetの一覧の取得 + content: {} + post: + tags: + - budget + description: budgetの作成 + parameters: + - name: price + in: query + description: price + required: true + schema: + type: integer + - name: year_id + in: query + description: year_id + schema: + type: integer + - name: source_id + in: query + description: source_id + schema: + type: integer + responses: + "200": + description: create されたbudgetが返ってくる + content: {} + /budgets/details: + get: + tags: + - budget + description: budgetに紐づくyearとsourceの一覧を取得 + responses: + "200": + description: budgetに紐づくyearとsourceの一覧を取得 + content: {} + /budgets/details/{year}: + get: + tags: + - budget + description: 年度で指定されたbudgetsに紐づく年度とソースを取得 + parameters: + - name: year + in: path + description: year + required: true + schema: + type: integer + responses: + "200": + description: 年度で指定されたbudgetsに紐づく年度とソースを取得 + content: {} + /budgets/{id}: + get: + tags: + - budget + description: IDで指定されたbudgetの取得 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: budgetの取得 + content: {} + put: + tags: + - budget + description: budgetの更新 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + - name: price + in: query + description: price + schema: + type: integer + - name: year_id + in: query + description: year_id + schema: + type: integer + - name: source_id + in: query + description: source_id + schema: + type: integer + responses: + "200": + description: 更新されたbudgetが返ってくる + content: {} + delete: + tags: + - budget + description: IDを指定してbudgetの削除 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: budgetの削除完了 + content: {} + /budgets/{id}/details: + get: + tags: + - budget + description: IDで指定されたbudgetに紐づくyearとsourceを取得 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: budgetに紐づくyearとsourceを取得 + content: {} + /bureaus: + get: + tags: + - bureau + description: bureauの一覧を取得 + responses: + "200": + description: bureauの一覧の取得 + content: {} + post: + tags: + - bureau + description: bureauの作成 + parameters: + - name: name + in: query + description: name + required: true + schema: + type: string + responses: + "200": + description: create されたbureauが返ってくる + content: {} + /bureaus/{id}: + get: + tags: + - bureau + description: IDで指定されたbureauの取得 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: bureauの取得 + content: {} + put: + tags: + - bureau + description: bureauの更新 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + - name: name + in: query + description: name + schema: + type: string + responses: + "200": + description: 更新されたbureauが返ってくる + content: {} + delete: + tags: + - bureau + description: IDを指定してbureauの削除 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: bureauの削除完了 + content: {} + /departments: + get: + tags: + - department + description: departmentの一覧の取得 + responses: + "200": + description: departmentの一覧を取得 + content: {} + post: + tags: + - department + description: departmentの作成 + parameters: + - name: name + in: query + description: name + schema: + type: string + responses: + "200": + description: 作成されたdepartmentが返ってくる + content: {} + /departments/{id}: + get: + tags: + - department + description: IDで指定されたdepartmentの取得 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: departmentの取得 + content: {} + put: + tags: + - department + description: departmentの更新 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + - name: name + in: query + description: name + schema: + type: string + responses: + "200": + description: 更新されたdepartmentが返ってくる + content: {} + delete: + tags: + - department + description: IDを指定してdepartmentの削除 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: departmentの削除完了 + content: {} + /expenses: + get: + tags: + - expense + description: expenseの一覧の取得 + responses: + "200": + description: expenseの一覧を取得 + content: {} + post: + tags: + - expense + description: expenseの作成 + parameters: + - name: name + in: query + description: name + schema: + type: string + - name: year_id + in: query + description: year_id + schema: + type: string + responses: + "200": + description: 作成されたexpenseが返ってくる + content: {} + /expenses/details: + get: + tags: + - expense + description: expenseに紐づくpurchase_itemの一覧を取得 + responses: + "200": + description: expenseに紐づくpurchase_itemの一覧を取得 + content: {} + /expenses/{id}: + get: + tags: + - expense + description: IDで指定されたexpenseの取得 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: expenseの取得 + content: {} + put: + tags: + - expense + description: expenseの更新 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + - name: name + in: query + description: name + schema: + type: string + - name: year_id + in: query + description: year_id + schema: + type: string + responses: + "200": + description: 更新されたexpenseが返ってくる + content: {} + delete: + tags: + - expense + description: IDを指定してexpenseの削除 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: expenseの削除完了 + content: {} + /expenses/{id}/details: + get: + tags: + - expense + description: IDで指定されたexpenseに紐づくpurchase_itemsを取得 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: IDで指定されたexpenseに紐づくpurchase_itemsを取得 + content: {} + /expenses/details/{year}: + get: + tags: + - expense + description: 年度で指定されたexpenseに紐づく購入申請と購入報告を取得 + parameters: + - name: year + in: path + description: year + required: true + schema: + type: integer + responses: + "200": + description: yearで指定されたexpenseに紐づく購入申請と購入報告を取得 + content: {} + /expenses/fiscalyear/{year}: + get: + tags: + - expense + description: 年度で指定されたexpensesを取得 + parameters: + - name: year + in: path + description: year + required: true + schema: + type: integer + responses: + "200": + description: yearで指定されたexpensesを取得 + content: {} + /fund_informations: + get: + tags: + - fund_information + description: fund_informationの一覧を取得 + responses: + "200": + description: fund_informationの一覧の取得 + content: {} + post: + tags: + - fund_information + description: fund_informationの作成 + parameters: + - name: user_id + in: query + description: user_id + required: true + schema: + type: integer + - name: teacher_id + in: query + description: teacher_id + required: true + schema: + type: integer + - name: price + in: query + description: price + required: true + schema: + type: integer + - name: remark + in: query + description: remark + schema: + type: string + - name: is_first_check + in: query + description: is_first_check + schema: + type: boolean + - name: is_last_check + in: query + description: is_last_check + schema: + type: boolean + - name: received_at + in: query + description: received_at + schema: + type: string + responses: + "200": + description: create されたfund_informationが返ってくる + content: {} + /fund_informations/details: + get: + tags: + - fund_information + description: fund_informationに紐づくteacherとuserの一覧を取得 + responses: + "200": + description: fund_informationに紐づくteacherとuserの一覧を取得 + content: {} + /fund_informations/{id}: + get: + tags: + - fund_information + description: IDで指定されたfund_informationの取得 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: fund_informationの取得 + content: {} + put: + tags: + - fund_information + description: fund_informationの更新 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + - name: user_id + in: query + description: user_id + required: true + schema: + type: integer + - name: teacher_id + in: query + description: teacher_id + required: true + schema: + type: integer + - name: price + in: query + description: price + required: true + schema: + type: integer + - name: remark + in: query + description: remark + schema: + type: string + - name: is_first_check + in: query + description: is_first_check + schema: + type: boolean + - name: is_last_check + in: query + description: is_last_check + schema: + type: boolean + - name: received_at + in: query + description: received_at + schema: + type: string + responses: + "200": + description: 更新されたfund_informationが返ってくる + content: {} + delete: + tags: + - fund_information + description: IDを指定してfund_informationの削除 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: fund_informationの削除完了 + content: {} + /fund_informations/{id}/details: + get: + tags: + - fund_information + description: IDで指定されたfund_informatinに紐づくteacherとuserを取得 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: fund_informatinに紐づくteacherとuserを取得 + content: {} + /fund_informations/details/{year}: + get: + tags: + - fund_information + description: 年度で指定されたfund_informationsに紐づくデータを取得 + parameters: + - name: year + in: path + description: year + required: true + schema: + type: integer + responses: + "200": + description: 年度で指定されたfund_informationsに紐づくデータを取得 + content: {} + /password_reset/{id}: + post: + tags: + - password_reset + description: password_変更 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + requestBody: + content: + "*/*": + schema: + $ref: "#/components/schemas/passwordResetData" + required: false + responses: + "200": + description: passwordを変更する + content: {} + x-codegen-request-body-name: passwordResetData + /password_reset/request: + post: + tags: + - password_reset + description: password_reset_token発行リクエスト + parameters: + - name: email + in: query + description: email + schema: + type: string + responses: + "200": + description: password_reset_tokenをメールアドレスに送信する + content: {} + /password_reset/{id}/valid: + post: + tags: + - password_reset + description: トークンの称号 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + - name: token + in: query + description: token + schema: + type: string + responses: + "200": + description: password_reset_tokenが正しい確認する + content: {} + /purchaseitems: + get: + tags: + - purchase_item + description: purchase_itemの一覧を取得 + responses: + "200": + description: purchase_itemの一覧の取得 + content: {} + post: + tags: + - purchase_item + description: purchase_itemの作成 + parameters: + - name: item + in: query + description: item + schema: + type: string + - name: price + in: query + description: price + schema: + type: integer + - name: quantity + in: query + description: quantity + schema: + type: integer + - name: detail + in: query + description: detail + schema: + type: string + - name: url + in: query + description: url + schema: + type: string + - name: purchase_order_id + in: query + description: purchase_order_id + schema: + type: integer + - name: finance_check + in: query + description: finance_check + schema: + type: boolean + responses: + "200": + description: createされたpurchase_itemが返ってくる + content: {} + /purchaseitems/details: + get: + tags: + - purchase_item + description: purchase_itemに紐づくuserとpurchase_orderの一覧を取得 + responses: + "200": + description: purchase_itemに紐づくuserとpurchase_orderの一覧を取得 + content: {} + /purchaseitems/{id}: + get: + tags: + - purchase_item + description: IDで指定されたpurchase_itemの取得 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: purchase_itemの取得 + content: {} + put: + tags: + - purchase_item + description: purchase_itemの更新 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + - name: item + in: query + description: item + schema: + type: string + - name: price + in: query + description: price + schema: + type: integer + - name: quantity + in: query + description: quantity + schema: + type: integer + - name: detail + in: query + description: detail + schema: + type: string + - name: url + in: query + description: url + schema: + type: string + - name: purchase_order_id + in: query + description: purchase_order_id + schema: + type: integer + - name: finance_check + in: query + description: finance_check + schema: + type: boolean + responses: + "200": + description: 更新されたpurchase_itemが返ってくる + content: {} + delete: + tags: + - purchase_item + description: IDを指定してpurchase_itemの削除 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: purchase_itemの削除完了 + content: {} + /purchaseitems/{id}/details: + get: + tags: + - purchase_item + description: IDで指定されたpurchase_itemに紐づくuserとpurchase_orderを取得 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: IDで指定されたpurchase_itemに紐づくuserとpurchase_orderを取得 + content: {} + /purchaseorders: + get: + tags: + - purchase_order + description: purchase_orderの一覧を取得 + responses: + "200": + description: purchase_orderの一覧の取得 + content: {} + post: + tags: + - purchase_order + description: purchase_orderの作成 + parameters: + - name: deadline + in: query + description: deadline + schema: + type: string + - name: user_id + in: query + description: user_id + schema: + type: integer + - name: expense_id + in: query + description: expense_id + schema: + type: integer + - name: finance_check + in: query + description: finance_check + schema: + type: boolean + responses: + "200": + description: createされたpurchase_orderが返ってくる + content: {} + /purchaseorders/details: + get: + tags: + - purchase_order + description: purchaseorderに紐づくuserとitemの一覧を取得 + responses: + "200": + description: purchase_orderに紐づくuserとpurchase_itemの一覧を取得 + content: {} + /purchaseorders/{id}: + get: + tags: + - purchase_order + description: IDで指定されたpurchase_orderの取得 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: purchase_orderの取得 + content: {} + put: + tags: + - purchase_order + description: purchase_orderの更新 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + - name: deadline + in: query + description: deadline + schema: + type: string + - name: user_id + in: query + description: user_id + schema: + type: integer + - name: expense_id + in: query + description: expense_id + schema: + type: integer + - name: finance_check + in: query + description: finance_check + schema: + type: boolean + responses: + "200": + description: 更新されたpurchase_orderが返ってくる + content: {} + delete: + tags: + - purchase_order + description: IDを指定してpurchase_orderの削除 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: purchase_orderの削除完了 + content: {} + /purchaseorders/{id}/details: + get: + tags: + - purchase_order + description: IDで指定されたpurchase_orderに紐づくuserとpurchase_itemを取得 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: IDで指定されたpurchase_orderに紐づくuserとpurchase_itemを取得 + content: {} + /purchaseorders/details/{year}: + get: + tags: + - purchase_order + description: 年度で指定されたpurchase_orderに紐づくuserとpurchase_itemを取得 + parameters: + - name: year + in: path + description: year + required: true + schema: + type: integer + responses: + "200": + description: IDで指定されたpurchase_orderに紐づくuserとpurchase_itemを取得 + content: {} + /purchaseorders/send/{id}: + post: + tags: + - purchase_order + description: IDで指定されたpurchase_orderのslackへメッセージ送信 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + requestBody: + content: + "*/*": + schema: + type: array + items: + $ref: "#/components/schemas/purchaseItem" + required: true + responses: + "200": + description: IDで指定されたpurchase_orderに紐づくuserとpurchase_itemを取得 + content: {} + x-codegen-request-body-name: purchase_items + /purchaseorders/details/unregistered/{year}: + get: + tags: + - purchase_order + description: 年度で指定されたreportsに未登録のpurchase_orderに紐づくuserとpurchase_itemを取得 + parameters: + - name: year + in: path + description: year + required: true + schema: + type: integer + responses: + "200": + description: IDで指定されたreportsに未登録のpurchase_orderに紐づくuserとpurchase_itemを取得 + content: {} + /purchasereports: + get: + tags: + - purchase_report + description: purchase_reportの一覧を取得 + responses: + "200": + description: purchase_reportの一覧の取得 + content: {} + post: + tags: + - purchase_report + description: purchase_reportの作成 + requestBody: + content: + "*/*": + schema: + $ref: "#/components/schemas/purchaseReport" + required: false + responses: + "200": + description: 作成されたpurchaseReportが返ってくる + content: {} + x-codegen-request-body-name: purchaseReport + /purchasereports/details: + get: + tags: + - purchase_report + description: purchasereportsに紐づくデータの一覧を取得 + responses: + "200": + description: purchase_reportに紐づくデータの一覧を取得 + content: {} + /purchasereports/{id}: + get: + tags: + - purchase_report + description: IDで指定されたpurchase_reportの取得 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: purchase_reportの取得 + content: {} + put: + tags: + - purchase_report + description: purchase_reportの更新 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + requestBody: + content: + "*/*": + schema: + $ref: "#/components/schemas/purchaseReport" + required: false + responses: + "200": + description: 更新されたpurchase_reportが返ってくる + content: {} + x-codegen-request-body-name: purchaseReport + delete: + tags: + - purchase_report + description: IDを指定してpurchase_reportの削除 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: purchase_reportの削除完了 + content: {} + /purchasereports/{id}/details: + get: + tags: + - purchase_report + description: IDで指定されたpurchase_reportに紐づくデータを取得 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: IDで指定されたpurchase_reportに紐づくデータを取得 + content: {} + /purchasereports/details/{year}: + get: + tags: + - purchase_report + description: 年度で指定されたpurchase_reportsに紐づくデータを取得 + parameters: + - name: year + in: path + description: year + required: true + schema: + type: integer + responses: + "200": + description: 年度で指定されたpurchase_reportsに紐づくデータを取得 + content: {} + /receipts: + get: + tags: + - receipt + description: receiptの一覧を取得 + responses: + "200": + description: receiptの一覧の取得 + content: {} + post: + tags: + - receipt + description: receiptの作成 + requestBody: + content: + "*/*": + schema: + $ref: "#/components/schemas/receipt" + required: false + responses: + "200": + description: create されたreceiptが返ってくる + content: {} + x-codegen-request-body-name: receipt + /receipts/{id}: + get: + tags: + - receipt + description: IDで指定されたreceiptの取得 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: receiptの取得 + content: {} + put: + tags: + - receipt + description: receiptの更新 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + requestBody: + content: + "*/*": + schema: + $ref: "#/components/schemas/receipt" + required: false + responses: + "200": + description: 更新されたreceiptが返ってくる + content: {} + x-codegen-request-body-name: receipt + delete: + tags: + - receipt + description: IDを指定してreceiptの削除 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: receiptの削除完了 + content: {} + /receipts/reports/{id}: + get: + tags: + - receipt + description: purchaseReportIDで指定されたreceiptの取得 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: reportsIDを指定してreceiptの取得 + content: {} + /sources: + get: + tags: + - source + description: sourceの一覧の取得 + responses: + "200": + description: sourceの一覧を取得 + content: {} + post: + tags: + - source + description: sourceの作成 + parameters: + - name: name + in: query + description: name + required: true + schema: + type: string + responses: + "200": + description: 作成されたsourceが返ってくる + content: {} + /sources/{id}: + get: + tags: + - source + description: IDで指定されたsourceの取得 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: sourceの取得 + content: {} + put: + tags: + - source + description: sourceの更新 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + - name: name + in: query + description: name + required: true + schema: + type: string + responses: + "200": + description: 更新されたsourceが返ってくる + content: {} + delete: + tags: + - source + description: IDを指定してsourceの削除 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: sourceの削除完了 + content: {} + /sponsors: + get: + tags: + - sponsor + description: sponsorの一覧の取得 + responses: + "200": + description: sponsorsの一覧を取得 + content: {} + post: + tags: + - sponsor + description: sponsorの作成 + requestBody: + content: + "*/*": + schema: + $ref: "#/components/schemas/sponsor" + required: false + responses: + "200": + description: 作成されたsponsorが返ってくる + content: {} + x-codegen-request-body-name: sponsor + /sponsors/{id}: + get: + tags: + - sponsor + description: IDで指定されたsponsorの取得 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: sponsorの取得 + content: {} + put: + tags: + - sponsor + description: sponsorの更新 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + requestBody: + content: + "*/*": + schema: + $ref: "#/components/schemas/sponsor" + required: false + responses: + "200": + description: 更新されたsponsorが返ってくる + content: {} + x-codegen-request-body-name: sponsor + delete: + tags: + - sponsor + description: IDを指定してsponsorの削除 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: sponsorの削除完了 + content: {} + /sponsors/periods/{year}: + get: + tags: + - sponsor + description: 年度で指定されたsponsorを取得 + parameters: + - name: year + in: path + description: year + required: true + schema: + type: integer + responses: + "200": + description: sponsorの取得完了 + content: {} + /sponsorstyles: + get: + tags: + - sponsorstyle + description: sponsorstyleの一覧の取得 + responses: + "200": + description: sponsorstyleの一覧を取得 + content: {} + post: + tags: + - sponsorstyle + description: sponsorstyleの作成 + requestBody: + content: + "*/*": + schema: + $ref: "#/components/schemas/sponsorStyle" + required: false + responses: + "200": + description: 作成されたsponsorstyleが返ってくる + content: {} + x-codegen-request-body-name: sponsorStyle + /sponsorstyles/{id}: + get: + tags: + - sponsorstyle + description: IDで指定されたsponsorstyleの取得 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: sponsorstyleの取得 + content: {} + put: + tags: + - sponsorstyle + description: sponsorstyleの更新 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + requestBody: + content: + "*/*": + schema: + $ref: "#/components/schemas/sponsorStyle" + required: false + responses: + "200": + description: 更新されたsponsorstyleが返ってくる + content: {} + x-codegen-request-body-name: sponsorStyle + delete: + tags: + - sponsorstyle + description: IDを指定してsponsorstyleの論理削除 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: sponsorstyleの論理削除完了 + content: {} + /teachers: + get: + tags: + - teacher + description: teacherの一覧を取得 + responses: + "200": + description: teacherの一覧を取得 + content: + "*/*": + schema: + type: array + post: + tags: + - teacher + description: teacherの作成 + parameters: + - name: name + in: query + description: 名前 + required: true + schema: + type: string + - name: position + in: query + description: 役職 + required: true + schema: + type: string + - name: department_id + in: query + description: 学科ID + schema: + type: integer + - name: room + in: query + description: 部屋番号 + schema: + type: string + - name: is_black + in: query + description: ブラックリストの真偽 + schema: + type: boolean + - name: remark + in: query + description: 備考 + schema: + type: string + responses: + "200": + description: createされたteacherが返ってくる + content: {} + /teachers/delete: + delete: + tags: + - teacher + description: teacherの複数削除 + requestBody: + content: + "*/*": + schema: + $ref: "#/components/schemas/destroyTeacherIDs" + required: false + responses: + "200": + description: 複数のteacherをidで削除できる + content: {} + x-codegen-request-body-name: destroyTeacherIDs + /teachers/{id}: + get: + tags: + - teacher + description: IDで指定されたteacherの取得 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: teacherの取得 + content: {} + put: + tags: + - teacher + description: teacherの更新 + parameters: + - name: id + in: path + description: Teacherのid + required: true + schema: + type: integer + - name: name + in: query + description: 教員の名前 + required: true + schema: + type: string + - name: position + in: query + description: 教員の役職 + required: true + schema: + type: string + - name: department_id + in: query + description: 学科ID + schema: + type: integer + - name: room + in: query + description: 部屋番号 + schema: + type: string + - name: is_black + in: query + description: ブラックリストに入っているか + schema: + type: boolean + - name: remark + in: query + description: 備考欄 + schema: + type: string + responses: + "200": + description: 更新されたteacherが返ってくる + content: {} + delete: + tags: + - teacher + description: IDを指定してteacherの削除 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: teacherの削除完了 + content: {} + /teachers/fundRegistered/{year}: + get: + tags: + - teacher + description: 募金登録済みのteacherのidを取得 + parameters: + - name: year + in: path + description: year + required: true + schema: + type: integer + responses: + "200": + description: 募金登録済みのteacherのidを取得 + content: {} + /users: + get: + tags: + - user + description: userの一覧を取得 + responses: + "200": + description: userの一覧を取得 + content: + "*/*": + schema: + type: array + post: + tags: + - user + description: userの作成 + parameters: + - name: name + in: query + description: name + required: true + schema: + type: string + - name: bureau_id + in: query + description: bureau_d + required: true + schema: + type: integer + - name: role_id + in: query + description: role_id + required: true + schema: + type: integer + responses: + "200": + description: createされたuserが返ってくる + content: {} + /users/delete: + delete: + tags: + - user + description: userの複数作成 + requestBody: + content: + "*/*": + schema: + $ref: "#/components/schemas/destroyUserIDs" + required: false + responses: + "200": + description: 複数のuserをidで削除できる + content: {} + x-codegen-request-body-name: destroyUserIDs + /users/{id}: + get: + tags: + - user + description: IDで指定されたuserの取得 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: userの取得 + content: {} + put: + tags: + - user + description: userの更新 + parameters: + - name: id + in: path + description: userのid + required: true + schema: + type: integer + - name: name + in: query + description: name + required: true + schema: + type: string + - name: bureau_id + in: query + description: bureau_d + required: true + schema: + type: integer + - name: role_id + in: query + description: role_id + required: true + schema: + type: integer + responses: + "200": + description: 更新されたuserが返ってくる + content: {} + delete: + tags: + - user + description: IDを指定してuserの削除 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: userの削除完了 + content: {} + /years: + get: + tags: + - year + description: yearの一覧の取得 + responses: + "200": + description: yearの一覧を取得 + content: {} + post: + tags: + - year + description: yearの作成 + parameters: + - name: year + in: query + description: year + required: true + schema: + type: integer + responses: + "200": + description: 作成されたyearが返ってくる + content: {} + /years/{id}: + get: + tags: + - year + description: IDで指定されたyearの取得 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: yearの取得 + content: {} + put: + tags: + - year + description: yearの更新 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + - name: year + in: query + description: year + required: true + schema: + type: integer + responses: + "200": + description: 更新されたyearが返ってくる + content: {} + delete: + tags: + - year + description: IDを指定してyearの削除 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: yearの削除完了 + content: {} + /years/periods: + get: + tags: + - year_periods + description: 年度一覧の取得 + responses: + "200": + description: year_periodsの一覧を取得 + content: {} + post: + tags: + - year_periods + description: year_periodsの作成 + requestBody: + content: + "*/*": + schema: + $ref: "#/components/schemas/year_periods" + required: false + responses: + "200": + description: 作成されたyear_periodsが返ってくる + content: {} + x-codegen-request-body-name: year_periods + /years/periods/{id}: + put: + tags: + - year_periods + description: year_periodsの更新 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + requestBody: + content: + "*/*": + schema: + $ref: "#/components/schemas/year_periods" + required: false + responses: + "200": + description: 更新されたyear_periodsが返ってくる + content: {} + x-codegen-request-body-name: year_periods + delete: + tags: + - year_periods + description: IDを指定してyear_periodsの削除 + parameters: + - name: id + in: path + description: id + required: true + schema: + type: integer + responses: + "200": + description: year_periodsの削除完了 + content: {} +components: + schemas: + activity: + required: + - expense + - feature + - isDone + - remark + - sponsorID + - userID + type: object + properties: + sponsorID: + type: integer + example: 1 + userID: + type: integer + example: 1 + isDone: + type: boolean + example: false + feature: + type: string + example: なし + expense: + type: integer + example: 0 + remark: + type: string + example: なし + design: + type: integer + example: 0 + url: + type: string + example: "" + activity_information: + type: object + properties: + activityID: + type: integer + example: 1 + bucketName: + type: string + example: なし + fileName: + type: string + example: なし + fileType: + type: string + example: なし + designProgress: + type: integer + example: 1 + fileInformation: + type: string + example: "" + activity_style: + required: + - activityID + - sponsorStyleID + type: object + properties: + activityID: + type: integer + example: 1 + sponsorStyleID: + type: integer + example: 1 + sponsorStyle: + required: + - feature + - price + - style + type: object + properties: + style: + type: string + example: 1分の1 + feature: + type: string + example: カラー + price: + type: integer + example: 30000 + sponsor: + required: + - address + - email + - name + - representative + - tel + type: object + properties: + name: + type: string + example: 企業1 + tel: + type: string + example: "09000000000" + email: + type: string + example: test@example.com + address: + type: string + example: ○○1-1 + representative: + type: string + example: 長岡太郎(社長) + passwordResetData: + type: object + properties: + token: + type: string + example: "" + password: + type: string + example: "" + confirmPassword: + type: string + example: "" + purchaseReport: + required: + - addition + - discount + - financeCheck + - purchaseOrderID + - userID + type: object + properties: + userID: + type: integer + example: 1 + discount: + type: integer + example: 0 + addition: + type: integer + example: 0 + financeCheck: + type: boolean + example: false + purchaseOrderID: + type: integer + example: 1 + remark: + type: string + example: "" + buyer: + type: string + example: "" + purchaseItem: + required: + - financeCheck + - item + - price + - purchaseOrderID + - quantity + type: object + properties: + item: + type: string + example: name + price: + type: integer + example: 0 + quantity: + type: integer + example: 0 + detail: + type: string + example: "" + url: + type: string + example: "" + purchaseOrderID: + type: integer + example: 1 + financeCheck: + type: boolean + example: false + destroyTeacherIDs: + required: + - deleteIDs + type: object + properties: + deleteIDs: + type: array + example: [] + items: + type: number + destroyUserIDs: + required: + - deleteIDs + type: object + properties: + deleteIDs: + type: array + example: [] + items: + type: number + receipt: + required: + - purchaseReportID + type: object + properties: + purchaseReportID: + type: integer + example: 1 + bucketName: + type: string + example: "" + fileName: + type: string + example: "" + fileType: + type: string + example: "" + remark: + type: string + example: "" + year_periods: + required: + - endedAt + - startedAt + - year + type: object + properties: + year: + type: integer + example: 2024 + startedAt: + type: string + example: 0000-00-00T00:00:00Z + endedAt: + type: string + example: 0000-00-00T00:00:00Z +x-original-swagger-version: "2.0"