diff --git a/Makefile b/Makefile index a5c8bd4ee..5f0102f79 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: @@ -76,3 +76,15 @@ run-eslint: # apiテストの実行 run-test: docker compose exec api go test ./test -v + +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 cbc95a5ec..c2bd72df7 100644 --- a/api/drivers/server/server.go +++ b/api/drivers/server/server.go @@ -4,11 +4,9 @@ import ( "net/http" "os" - _ "github.com/NUTFes/FinanSu/api/docs" "github.com/NUTFes/FinanSu/api/router" echo "github.com/labstack/echo/v4" "github.com/labstack/echo/v4/middleware" - echoSwagger "github.com/swaggo/echo-swagger" ) func RunServer(router router.Router) *echo.Echo { @@ -29,16 +27,13 @@ func RunServer(router router.Router) *echo.Echo { // 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) - // サーバー起動 return e } 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 3b0f56de5..6263b1fd9 100644 --- a/api/go.mod +++ b/api/go.mod @@ -2,18 +2,17 @@ module github.com/NUTFes/FinanSu/api go 1.21 -toolchain go1.23.2 +toolchain go1.23.4 require ( github.com/go-sql-driver/mysql v1.8.1 - github.com/go-testfixtures/testfixtures/v3 v3.13.0 + github.com/go-testfixtures/testfixtures/v3 v3.14.0 github.com/joho/godotenv v1.5.1 - github.com/labstack/echo/v4 v4.9.0 + github.com/labstack/echo/v4 v4.11.4 + github.com/oapi-codegen/runtime v1.1.1 github.com/pkg/errors v0.9.1 github.com/slack-go/slack v0.13.0 github.com/stretchr/testify v1.9.0 - github.com/swaggo/echo-swagger v1.3.5 - github.com/swaggo/swag v1.8.1 golang.org/x/crypto v0.28.0 gorm.io/driver/mysql v1.3.3 gorm.io/gorm v1.23.4 @@ -22,17 +21,17 @@ require ( require ( cel.dev/expr v0.16.0 // indirect cloud.google.com/go v0.116.0 // indirect - cloud.google.com/go/auth v0.9.8 // indirect + cloud.google.com/go/auth v0.9.9 // indirect cloud.google.com/go/auth/oauth2adapt v0.2.4 // indirect cloud.google.com/go/compute/metadata v0.5.2 // indirect cloud.google.com/go/iam v1.2.1 // indirect cloud.google.com/go/longrunning v0.6.1 // indirect cloud.google.com/go/monitoring v1.21.1 // indirect - cloud.google.com/go/spanner v1.70.0 // indirect + cloud.google.com/go/spanner v1.73.0 // indirect filippo.io/edwards25519 v1.1.0 // indirect github.com/GoogleCloudPlatform/grpc-gcp-go/grpcgcp v1.5.0 // indirect github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp v1.24.1 // indirect - github.com/KyleBanks/depth v1.2.1 // indirect + github.com/apapsch/go-jsonmerge/v2 v2.0.0 // indirect github.com/census-instrumentation/opencensus-proto v0.4.1 // indirect github.com/cespare/xxhash/v2 v2.3.0 // indirect github.com/cncf/xds/go v0.0.0-20240822171458-6449f94b4d59 // indirect @@ -42,10 +41,7 @@ require ( github.com/felixge/httpsnoop v1.0.4 // indirect github.com/go-logr/logr v1.4.2 // indirect github.com/go-logr/stdr v1.2.2 // indirect - github.com/go-openapi/jsonpointer v0.19.5 // indirect - github.com/go-openapi/jsonreference v0.20.0 // indirect - github.com/go-openapi/spec v0.20.4 // indirect - github.com/go-openapi/swag v0.19.15 // indirect + github.com/go-test/deep v1.0.8 // indirect github.com/golang-jwt/jwt v3.2.2+incompatible // indirect github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect github.com/google/s2a-go v0.1.8 // indirect @@ -53,20 +49,17 @@ require ( github.com/googleapis/enterprise-certificate-proxy v0.3.4 // indirect github.com/googleapis/gax-go/v2 v2.13.0 // indirect github.com/googleapis/go-sql-spanner v1.7.4 // indirect - github.com/gorilla/websocket v1.4.2 // indirect + github.com/gorilla/websocket v1.5.0 // indirect github.com/jinzhu/inflection v1.0.0 // indirect github.com/jinzhu/now v1.1.4 // indirect - github.com/josharian/intern v1.0.0 // indirect - github.com/labstack/gommon v0.3.1 // indirect - github.com/mailru/easyjson v0.7.7 // indirect + github.com/labstack/gommon v0.4.2 // indirect github.com/mattn/go-colorable v0.1.13 // indirect - github.com/mattn/go-isatty v0.0.19 // indirect + github.com/mattn/go-isatty v0.0.20 // indirect github.com/planetscale/vtprotobuf v0.6.1-0.20240319094008-0393e58bdf10 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect github.com/rogpeppe/go-internal v1.12.0 // indirect - github.com/swaggo/files v0.0.0-20220728132757-551d4a08d97a // indirect github.com/valyala/bytebufferpool v1.0.0 // indirect - github.com/valyala/fasttemplate v1.2.1 // indirect + github.com/valyala/fasttemplate v1.2.2 // indirect go.opencensus.io v0.24.0 // indirect go.opentelemetry.io/contrib/detectors/gcp v1.29.0 // indirect go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.54.0 // indirect @@ -78,17 +71,15 @@ require ( go.opentelemetry.io/otel/trace v1.29.0 // indirect golang.org/x/net v0.30.0 // indirect golang.org/x/oauth2 v0.23.0 // indirect - golang.org/x/sync v0.8.0 // indirect + golang.org/x/sync v0.10.0 // indirect golang.org/x/sys v0.26.0 // indirect golang.org/x/text v0.19.0 // indirect golang.org/x/time v0.7.0 // indirect - golang.org/x/tools v0.24.0 // indirect - google.golang.org/api v0.201.0 // indirect + google.golang.org/api v0.203.0 // indirect google.golang.org/genproto v0.0.0-20241015192408-796eee8c2d53 // indirect google.golang.org/genproto/googleapis/api v0.0.0-20241007155032-5fefd90f89a9 // indirect google.golang.org/genproto/googleapis/rpc v0.0.0-20241015192408-796eee8c2d53 // indirect google.golang.org/grpc v1.67.1 // indirect google.golang.org/protobuf v1.35.1 // indirect - gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) diff --git a/api/go.sum b/api/go.sum index 3410dc055..75bbab1c4 100644 --- a/api/go.sum +++ b/api/go.sum @@ -101,8 +101,8 @@ cloud.google.com/go/assuredworkloads v1.7.0/go.mod h1:z/736/oNmtGAyU47reJgGN+KVo cloud.google.com/go/assuredworkloads v1.8.0/go.mod h1:AsX2cqyNCOvEQC8RMPnoc0yEarXQk6WEKkxYfL6kGIo= cloud.google.com/go/assuredworkloads v1.9.0/go.mod h1:kFuI1P78bplYtT77Tb1hi0FMxM0vVpRC7VVoJC3ZoT0= cloud.google.com/go/assuredworkloads v1.10.0/go.mod h1:kwdUQuXcedVdsIaKgKTp9t0UJkE5+PAVNhdQm4ZVq2E= -cloud.google.com/go/auth v0.9.8 h1:+CSJ0Gw9iVeSENVCKJoLHhdUykDgXSc4Qn+gu2BRtR8= -cloud.google.com/go/auth v0.9.8/go.mod h1:xxA5AqpDrvS+Gkmo9RqrGGRh6WSNKKOXhY3zNOr38tI= +cloud.google.com/go/auth v0.9.9 h1:BmtbpNQozo8ZwW2t7QJjnrQtdganSdmqeIBxHxNkEZQ= +cloud.google.com/go/auth v0.9.9/go.mod h1:xxA5AqpDrvS+Gkmo9RqrGGRh6WSNKKOXhY3zNOr38tI= cloud.google.com/go/auth/oauth2adapt v0.2.4 h1:0GWE/FUsXhf6C+jAkWgYm7X9tK8cuEIfy19DBn6B6bY= cloud.google.com/go/auth/oauth2adapt v0.2.4/go.mod h1:jC/jOpwFP6JBxhB3P5Rr0a9HLMC/Pe3eaL4NmdvqPtc= cloud.google.com/go/automl v1.5.0/go.mod h1:34EjfoFGMZ5sgJ9EoLsRtdPSNZLcfflJR39VbVNS2M0= @@ -526,8 +526,8 @@ cloud.google.com/go/shell v1.6.0/go.mod h1:oHO8QACS90luWgxP3N9iZVuEiSF84zNyLytb+ cloud.google.com/go/spanner v1.41.0/go.mod h1:MLYDBJR/dY4Wt7ZaMIQ7rXOTLjYrmxLE/5ve9vFfWos= cloud.google.com/go/spanner v1.44.0/go.mod h1:G8XIgYdOK+Fbcpbs7p2fiprDw4CaZX63whnSMLVBxjk= cloud.google.com/go/spanner v1.45.0/go.mod h1:FIws5LowYz8YAE1J8fOS7DJup8ff7xJeetWEo5REA2M= -cloud.google.com/go/spanner v1.70.0 h1:nj6p/GJTgMDiSQ1gQ034ItsKuJgHiMOjtOlONOg8PSo= -cloud.google.com/go/spanner v1.70.0/go.mod h1:X5T0XftydYp0K1adeJQDJtdWpbrOeJ7wHecM4tK6FiE= +cloud.google.com/go/spanner v1.73.0 h1:0bab8QDn6MNj9lNK6XyGAVFhMlhMU2waePPa6GZNoi8= +cloud.google.com/go/spanner v1.73.0/go.mod h1:mw98ua5ggQXVWwp83yjwggqEmW9t8rjs9Po1ohcUGW4= cloud.google.com/go/speech v1.6.0/go.mod h1:79tcr4FHCimOp56lwC01xnt/WPJZc4v3gzyT7FoBkCM= cloud.google.com/go/speech v1.7.0/go.mod h1:KptqL+BAQIhMsj1kOP2la5DSEEerPDuOP/2mmkhHhZQ= cloud.google.com/go/speech v1.8.0/go.mod h1:9bYIl1/tjsAnMgKGHKmBZzXKEkGgtU+MpdDPTE9f7y0= @@ -626,13 +626,8 @@ github.com/GoogleCloudPlatform/grpc-gcp-go/grpcgcp v1.5.0/go.mod h1:dppbR7CwXD4p github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp v1.24.1 h1:pB2F2JKCj1Znmp2rwxxt1J0Fg0wezTMgWYk5Mpbi1kg= github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp v1.24.1/go.mod h1:itPGVDKf9cC/ov4MdvJ2QZ0khw4bfoo9jzwTJlaxy2k= github.com/JohnCGriffin/overflow v0.0.0-20211019200055-46fa312c352c/go.mod h1:X0CRv0ky0k6m906ixxpzmDRLvX58TFUKS2eePweuyxk= -github.com/KyleBanks/depth v1.2.1 h1:5h8fQADFrWtarTdtDudMmGsC7GPbOAu6RVB3ffsVFHc= -github.com/KyleBanks/depth v1.2.1/go.mod h1:jzSb9d0L43HxTQfT+oSA1EEp2q+ne2uh6XgeJcm8brE= github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU= -github.com/PuerkitoBio/purell v1.1.1/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0= -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/RaveNoX/go-jsoncommentstrip v1.0.0/go.mod h1:78ihd09MekBnJnxpICcwzCMzGrKSKYe4AqU6PDYYpjk= github.com/ajstarks/deck v0.0.0-20200831202436-30c9fc6549a9/go.mod h1:JynElWSGnm/4RlzPXRlREEwqTHAN3T56Bv2ITsFT3gY= github.com/ajstarks/deck/generate v0.0.0-20210309230005-c3f852c02e19/go.mod h1:T13YZdzov6OU0A1+RfKZiZN9ca6VeKdBdyDV+BY97Tk= github.com/ajstarks/svgo v0.0.0-20180226025133-644b8db467af/go.mod h1:K08gAheRH3/J6wwsYMMT4xOr94bZjxIelGM0+d/wbFw= @@ -644,6 +639,9 @@ github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kd github.com/apache/arrow/go/v10 v10.0.1/go.mod h1:YvhnlEePVnBS4+0z3fhPfUy7W1Ikj0Ih0vcRo/gZ1M0= github.com/apache/arrow/go/v11 v11.0.0/go.mod h1:Eg5OsL5H+e299f7u5ssuXsuHQVEGC4xei5aX110hRiI= github.com/apache/thrift v0.16.0/go.mod h1:PHK3hniurgQaNMZYaCLEqXKsYK8upmhPbmdP2FXSqgU= +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/bmatcuk/doublestar v1.1.1/go.mod h1:UD6OnuiIn0yFxxA2le/rnRU1G4RaI4UvFv1sNto9p6w= github.com/boombuler/barcode v1.0.0/go.mod h1:paBWMcWSl3LHKBqUq+rly7CNSldXjb2rDl3JlRe0mD8= github.com/boombuler/barcode v1.0.1/go.mod h1:paBWMcWSl3LHKBqUq+rly7CNSldXjb2rDl3JlRe0mD8= github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= @@ -674,7 +672,6 @@ github.com/cncf/xds/go v0.0.0-20230105202645-06c439db220b/go.mod h1:eXthEFrGJvWH github.com/cncf/xds/go v0.0.0-20230607035331-e9ce68804cb4/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= github.com/cncf/xds/go v0.0.0-20240822171458-6449f94b4d59 h1:fLZ97KE86ELjEYJCEUVzmbhfzDxHHGwBrDVMd4XL6Bs= github.com/cncf/xds/go v0.0.0-20240822171458-6449f94b4d59/go.mod h1:W+zGtBO5Y1IgJhy4+A9GOqVhqLpfZi+vwmdNXUehLA8= -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/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= @@ -726,26 +723,16 @@ github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY= github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag= github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= -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/go.mod h1:diGHMEHg2IqXZGKxqyvWdfWU/aim5Dprw5bqpKkTvns= -github.com/go-openapi/jsonreference v0.20.0 h1:MYlu0sBgChmCfJxxUKZ8g1cPWFOB37YSZqewK7OKeyA= -github.com/go-openapi/jsonreference v0.20.0/go.mod h1:Ag74Ico3lPc+zR+qjn4XBUmXymS4zJbYVCZmcgkasdo= -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/go-pdf/fpdf v0.5.0/go.mod h1:HzcnA+A23uwogo0tp9yU+l3V+KXhiESpt1PMayhOh5M= github.com/go-pdf/fpdf v0.6.0/go.mod h1:HzcnA+A23uwogo0tp9yU+l3V+KXhiESpt1PMayhOh5M= github.com/go-sql-driver/mysql v1.6.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg= github.com/go-sql-driver/mysql v1.8.1 h1:LedoTUt/eveggdHS9qUFC1EFSa8bU2+1pZjSRpvNJ1Y= github.com/go-sql-driver/mysql v1.8.1/go.mod h1:wEBSXgmK//2ZFJyE+qWnIsVGmvmEKlqwuVSjsCm7DZg= -github.com/go-test/deep v1.0.4 h1:u2CU3YKy9I2pmu9pX0eq50wCgjfGIt539SqR7FbHiho= github.com/go-test/deep v1.0.4/go.mod h1:wGDj63lr65AM2AQyKZd/NYHGb0R+1RLqB8NKt3aSFNA= -github.com/go-testfixtures/testfixtures/v3 v3.13.0 h1:cT7R/gGPI2R8DruzOe5PrCrvZqxZ0SgT6xo7h51iLCo= -github.com/go-testfixtures/testfixtures/v3 v3.13.0/go.mod h1:WCburifrvgSpjmNOyMFrLEDEldMy63HmpM9Odkgrkbo= +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/go-testfixtures/testfixtures/v3 v3.14.0 h1:aRt5qyH2XjzFgCC5NizNs6QrzjO7rC4pQZ1oJpPIdo8= +github.com/go-testfixtures/testfixtures/v3 v3.14.0/go.mod h1:HHb6Yd8spzm6aFZU6jwBj9qFvVUNNkx5nGbjG4UHeOE= github.com/goccy/go-json v0.9.11/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= @@ -865,9 +852,9 @@ github.com/googleapis/go-sql-spanner v1.7.4 h1:pwndJlqgIMOewkORveYQQocaSyOGqaQg8 github.com/googleapis/go-sql-spanner v1.7.4/go.mod h1:DfuJMbqpcDQwtbol+TnfO+AUyeoW5H+w8Gm216dTPys= github.com/googleapis/go-type-adapters v1.0.0/go.mod h1:zHW75FOG2aur7gAO2B+MLby+cLsWGBF62rFAi7WjWO4= github.com/googleapis/google-cloud-go-testing v0.0.0-20200911160855-bcd43fbb19e8/go.mod h1:dvDLG8qkwmyD9a/MJJN3XJcT3xFxOKAvTZGvuZmac9g= -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/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/grpc-ecosystem/grpc-gateway v1.16.0/go.mod h1:BDjrQk3hbvj6Nolgz8mAMFbcEtjT1g+wF4CSlocrBnw= github.com/grpc-ecosystem/grpc-gateway/v2 v2.7.0/go.mod h1:hgWBS7lorOAVIJEQMi4ZsPv9hVvWI6+ch50m39Pf2Ks= github.com/grpc-ecosystem/grpc-gateway/v2 v2.11.3/go.mod h1:o//XUCC/F+yRGJoPO/VU0GSB0f8Nhgmxx0VIRUvaC0w= @@ -898,11 +885,9 @@ 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.5.1 h1:7eLL/+HRGLY0ldzfGMeQkb7vMd0as4CfYvUVzLqw0N0= github.com/joho/godotenv v1.5.1/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/jstemmer/go-junit-report v0.0.0-20190106144839-af01ea7f8024/go.mod h1:6v2b51hI/fHJwM22ozAgKL4VKDeJcHhJFhtBdhmNjmU= github.com/jstemmer/go-junit-report v0.9.1/go.mod h1:Brl9GWCQeLvo8nXZwPNNblvFj/XSXhF0NWZEnDohbsk= -github.com/jtolds/gls v4.20.0+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU= +github.com/juju/gnuflag v0.0.0-20171113085948-2ce1bb71843d/go.mod h1:2PavIy+JPciBPrBUjwbNvtwB6RQlve+hkpll6QSNmOE= github.com/jung-kurt/gofpdf v1.0.0/go.mod h1:7Id9E/uU8ce6rXgefFLlgrJj/GYY22cpxn+r32jIOes= github.com/jung-kurt/gofpdf v1.0.3-0.20190309125859-24315acbbda5/go.mod h1:7Id9E/uU8ce6rXgefFLlgrJj/GYY22cpxn+r32jIOes= github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51/go.mod h1:CzGEWj7cYgsdH8dAjBGEr58BoE7ScuLd+fwFZ44+/x8= @@ -922,40 +907,28 @@ 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/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/lib/pq v1.10.9 h1:YXG7RB+JIjhP29X+OtkiDnYaXQwpS4JEWq7dtCCRUEw= github.com/lib/pq v1.10.9/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o= github.com/lyft/protoc-gen-star v0.6.0/go.mod h1:TGAoBVkt8w7MPG72TrKIu85MIdXwDuzJYeZuUPFPNwA= github.com/lyft/protoc-gen-star v0.6.1/go.mod h1:TGAoBVkt8w7MPG72TrKIu85MIdXwDuzJYeZuUPFPNwA= github.com/lyft/protoc-gen-star/v2 v2.0.1/go.mod h1:RcCdONR2ScXaYnQC5tUzxzlpA3WVYF7/opLeUgcQs/o= -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/mailru/easyjson v0.7.7/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= -github.com/mattn/go-colorable v0.1.11/go.mod h1:u5H1YNBxpqRaxsYJYSkiCWKzEfiAb1Gb520KVy5xxl4= 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.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU= -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.19 h1:JITubQf0MOLdlGRuRq+jtsDlekdYPia9ZFsB8h/APPA= -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/mattn/go-sqlite3 v1.14.14/go.mod h1:NyWgC/yNuGj7Q9rpYnZvas74GogHl5/Z4A/KQRfk6bU= github.com/mattn/go-sqlite3 v1.14.24 h1:tpSp2G2KyMnnQu99ngJ47EIkWVmliIizyZBfPrBWDRM= github.com/mattn/go-sqlite3 v1.14.24/go.mod h1:Uh1q+B4BYcTPb+yiD3kU8Ct7aC0hY9fxUwlHK0RXw+Y= github.com/minio/asm2plan9s v0.0.0-20200509001527-cdd76441f9d8/go.mod h1:mC1jAcsrzbxHt8iiaC+zU4b1ylILSosueou12R++wfY= github.com/minio/c2goasm v0.0.0-20190812172519-36a3d3bbc4f3/go.mod h1:RagcQ7I8IeTMnF8JTXieKnO4Z6JCsikNEzj0DwauVzE= -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/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/paulmach/orb v0.11.1 h1:3koVegMC4X/WeiXYz9iswopaTwMem53NzTJuTF20JzU= github.com/paulmach/orb v0.11.1/go.mod h1:5mULz1xQfs3bmQm63QEJA6lNGujuRafwA5S/EnuLaLU= github.com/phpdave11/gofpdf v1.4.2/go.mod h1:zpO6xFn9yxo3YLyMvW8HcKWVdbNqgIfOOp2dXMnm1mY= @@ -984,22 +957,19 @@ github.com/rogpeppe/go-internal v1.6.1/go.mod h1:xXDCJY+GAPziupqXw64V24skbSoqbTE github.com/rogpeppe/go-internal v1.9.0/go.mod h1:WtVeX8xhTBvf0smdhujwtBcq4Qrzq/fJaraNFVN+nFs= github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8= github.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4= -github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/ruudk/golang-pdf417 v0.0.0-20181029194003-1af4ab5afa58/go.mod h1:6lfFZQK844Gfx8o5WFuvpxWRwnSoipWe/p622j1v06w= github.com/ruudk/golang-pdf417 v0.0.0-20201230142125-a7e3863a1245/go.mod h1:pQAZKsJ8yyVxGRWYNEm9oFB8ieLgKFnamEyDmSA0BRk= github.com/segmentio/asm v1.2.0 h1:9BQrFxC+YOHJlTlHGkTrFWf59nbL3XnCoFLTwDCI7ys= github.com/segmentio/asm v1.2.0/go.mod h1:BqMnlJP91P8d+4ibuonYZw9mfnzI9HfxselHZr5aAcs= github.com/shopspring/decimal v1.4.0 h1:bxl37RwXBklmTi0C79JfXCEBD1cqqHt0bbgBAGFp81k= github.com/shopspring/decimal v1.4.0/go.mod h1:gawqmDU56v4yIKSwfBSFip1HdCCXN8/+DMd9qYNcwME= -github.com/shurcooL/sanitized_anchor_name v1.0.0/go.mod h1:1NzhyTcUVG4SuEtjjoZeVRXNmyL/1OwPU0+IJeTBvfc= 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/spf13/afero v1.3.3/go.mod h1:5KUK8ByomD5Ti5Artl0RtHeI5pTF7MIDuXL3yY520V4= github.com/spf13/afero v1.6.0/go.mod h1:Ai8FlHk4v/PARR026UzYexafAt9roJ7LcLMAmO6Z93I= github.com/spf13/afero v1.9.2/go.mod h1:iUV7ddyEEZPO5gA3zD4fJt6iStLlL+Lg4m2cihcDf8Y= +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= @@ -1015,23 +985,15 @@ github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o github.com/stretchr/testify v1.8.3/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/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/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/valyala/fasttemplate v1.2.2 h1:lxLXG0uE3Qnshl9QyaK6XJxMXlQZELvChBOCmQD0Loo= +github.com/valyala/fasttemplate v1.2.2/go.mod h1:KHLXt3tVN2HBp8eijSv/kGJopbvo7S+qRAEEKiv+SiQ= github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= -github.com/yuin/goldmark v1.4.0/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= 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/zeebo/assert v1.3.0/go.mod h1:Pq9JiuJQpG8JLJdtkwrJESF0Foym2/D9XMU5ciN/wJ0= @@ -1071,10 +1033,8 @@ golang.org/x/crypto v0.0.0-20190820162420-60c769a6c586/go.mod h1:yigFU9vqHzYiE8U golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4= -golang.org/x/crypto v0.0.0-20210817164053-32db794688a5/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20211108221036-ceb1ce70b4fa/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.28.0 h1:GBDwsMXVQi34v5CCYUm2jkJvu4cbtru2U4TN2PSyQnw= golang.org/x/crypto v0.28.0/go.mod h1:rmgy+3RHxRZMyY0jjAJShp2zgEdOqj2AO7U0pYmeQ7U= golang.org/x/exp v0.0.0-20180321215751-8460e604b9de/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= @@ -1130,13 +1090,10 @@ golang.org/x/mod v0.4.1/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.5.0/go.mod h1:5OXOZSfqPIIbmVBIIKWRFfZjPR0E5r58TLhUjH0a2Ro= 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/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= 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.20.0 h1:utOm6MM3R3dnawAiJgn0y+xvuYRsm1RKM/4giyfDgV0= -golang.org/x/mod v0.20.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190108225652-1e06a53dbb7e/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -1172,12 +1129,9 @@ golang.org/x/net v0.0.0-20210119194325-5f4716e94777/go.mod h1:m0MpNAwzfU5UDzcl9v golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20210316092652-d523dce5a7f4/go.mod h1:RBQZq4jEuRlivfhVLdyRGr576XBO4/greRjx4P4O3yc= golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= -golang.org/x/net v0.0.0-20210421230115-4e50805a0758/go.mod h1:72T/g9IO56b78aLF+1Kcs5dz7/ng1VjMUvfKvpfy+jM= golang.org/x/net v0.0.0-20210503060351-7fd8e65b6420/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.0.0-20210805182204-aaa1db679c0d/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20210813160813-60bc85c4be6d/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= 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-20220127200216-cd36cc0744dd/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= golang.org/x/net v0.0.0-20220225172249-27dd8689420f/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= golang.org/x/net v0.0.0-20220325170049-de3da57026de/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= @@ -1246,8 +1200,8 @@ golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20220819030929-7fc1605a5dde/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20220929204114-8fcdb60fdcc0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ= -golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= +golang.org/x/sync v0.10.0 h1:3NQrjDixjgGwUOCaF8w2+VYHv0Ve/vGYSbdkTa98gmQ= +golang.org/x/sync v0.10.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/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-20190312061237-fead79001313/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -1287,7 +1241,6 @@ golang.org/x/sys v0.0.0-20210305230114-8fe3ee5dd75b/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20210315160823-c6e025ad8005/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210320140829-1e4c9ba3b0c4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210420072515-93ed5bcd2bfe/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423185535-09eb48e85fd7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= @@ -1297,14 +1250,11 @@ golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20210616094352-59db8d763f22/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-20210806184541-e5e7981a1069/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-20210816183151-1e6c022a8912/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210823070655-63515b42dcdf/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210908233432-aa78b53d3365/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-20211007075335-d3039528d8ac/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-20211124211545-fe61309f8881/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20211210111614-af8b64212486/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= @@ -1313,7 +1263,6 @@ golang.org/x/sys v0.0.0-20220209214540-3681064d5158/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20220227234510-4e6760a101f9/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220328115105-d36c6a25d886/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220412211240-33da011f77ad/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-20220502124256-b6088ccd6cba/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220503163025-988cb79eb6c6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= @@ -1361,7 +1310,6 @@ golang.org/x/text v0.19.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= -golang.org/x/time v0.0.0-20201208040808-7e3f01d25324/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20220922220347-f3bd1da661af/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.1.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.3.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= @@ -1375,7 +1323,6 @@ golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3 golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= golang.org/x/tools v0.0.0-20190312151545-0bb0c0a6e846/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= golang.org/x/tools v0.0.0-20190312170243-e65039ee4138/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= -golang.org/x/tools v0.0.0-20190328211700-ab21143f2384/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= golang.org/x/tools v0.0.0-20190425150028-36563e24a262/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= golang.org/x/tools v0.0.0-20190506145303-2d16b83fe98c/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= @@ -1424,15 +1371,11 @@ golang.org/x/tools v0.1.2/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.3/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.4/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= -golang.org/x/tools v0.1.7/go.mod h1:LGqMHiF4EqQNHR1JncWGqT5BVaXmza+X+BDGol+dOxo= 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.3.0/go.mod h1:/rWhSS2+zyEVwoJf8YAX6L2f0ntZ7Kn/mGgAWcipA5k= 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.24.0 h1:J1shsA93PJUEVaUSaay7UXAyE8aimq3GW0pjlolpa24= -golang.org/x/tools v0.24.0/go.mod h1:YhNqVBIfWHdzvTLs0d8LCuMhkKUgSUKldakyV7W/WDQ= 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= @@ -1506,8 +1449,8 @@ google.golang.org/api v0.108.0/go.mod h1:2Ts0XTHNVWxypznxWOYUeI4g3WdP9Pk2Qk58+a/ google.golang.org/api v0.110.0/go.mod h1:7FC4Vvx1Mooxh8C5HWjzZHcavuS2f6pmJpZx60ca7iI= google.golang.org/api v0.111.0/go.mod h1:qtFHvU9mhgTJegR31csQ+rwxyUTHOKFqCKWp1J0fdw0= google.golang.org/api v0.114.0/go.mod h1:ifYI2ZsFK6/uGddGfAD5BMxlnkBqCmqHSDUVi45N5Yg= -google.golang.org/api v0.201.0 h1:+7AD9JNM3tREtawRMu8sOjSbb8VYcYXJG/2eEOmfDu0= -google.golang.org/api v0.201.0/go.mod h1:HVY0FCHVs89xIW9fzf/pBvOEm+OolHa86G/txFezyq4= +google.golang.org/api v0.203.0 h1:SrEeuwU3S11Wlscsn+LA1kb/Y5xT8uggJSkIhD08NAU= +google.golang.org/api v0.203.0/go.mod h1:BuOVyCSYEPwJb3npWvDnNmFI92f3GeRnHNkETneT3SI= google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= google.golang.org/appengine v1.5.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= @@ -1718,17 +1661,12 @@ google.golang.org/protobuf v1.35.1 h1:m3LfL6/Ca+fqnjnlqQXNpFPABW1UD7mjh8KO2mKFyt google.golang.org/protobuf v1.35.1/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE= 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-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= 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.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= gorm.io/driver/mysql v1.3.3 h1:jXG9ANrwBc4+bMvBcSl8zCfPBaVoPyBEBshA8dA93X8= diff --git a/api/internals/domain/buy_repost.go b/api/internals/domain/buy_repost.go new file mode 100644 index 000000000..b66acd45d --- /dev/null +++ b/api/internals/domain/buy_repost.go @@ -0,0 +1,15 @@ +package domain + +import ( + "time" +) + +type BuyReport struct { + ID int `json:"id"` + FestivalItemID int `json:"festivalItemId"` + Amount int `json:"amount"` + Memo string `json:"memo"` + PaidBy string `json:"paidBy"` + CreatedAt time.Time `json:"createdAt"` + UpdatedAt time.Time `json:"updatedAt"` +} diff --git a/api/internals/domain/buy_status.go b/api/internals/domain/buy_status.go new file mode 100644 index 000000000..752422978 --- /dev/null +++ b/api/internals/domain/buy_status.go @@ -0,0 +1,14 @@ +package domain + +import ( + "time" +) + +type BuyStatus struct { + ID int `json:"id"` + BuyReportID int `json:"buyReportId"` + IsPacked bool `json:"isPacked"` + IsSettled bool `json:"isSettled"` + CreatedAt time.Time `json:"createdAt"` + UpdatedAt time.Time `json:"updatedAt"` +} diff --git a/api/internals/domain/division.go b/api/internals/domain/division.go new file mode 100644 index 000000000..e7d51198d --- /dev/null +++ b/api/internals/domain/division.go @@ -0,0 +1,13 @@ +package domain + +import ( + "time" +) + +type Division struct { + ID int `json:"id"` + Name string `json:"name"` + FinancialRecordId int `json:"financialRecordId"` + CreatedAt time.Time `json:"createdAt"` + UpdatedAt time.Time `json:"updatedAt"` +} diff --git a/api/internals/domain/festival_item.go b/api/internals/domain/festival_item.go new file mode 100644 index 000000000..ea25ea61e --- /dev/null +++ b/api/internals/domain/festival_item.go @@ -0,0 +1,14 @@ +package domain + +import ( + "time" +) + +type FestivalItem struct { + ID int `json:"id"` + Name string `json:"name"` + Memo string `json:"memo"` + DivisionID int `json:"divisionId"` + CreatedAt time.Time `json:"createdAt"` + UpdatedAt time.Time `json:"updatedAt"` +} diff --git a/api/internals/domain/financial_record.go b/api/internals/domain/financial_record.go new file mode 100644 index 000000000..9eeb96df4 --- /dev/null +++ b/api/internals/domain/financial_record.go @@ -0,0 +1,13 @@ +package domain + +import ( + "time" +) + +type FinancialRecord struct { + ID int `json:"id"` + Name string `json:"name"` + YearID int `json:"yearId"` + CreatedAt time.Time `json:"createdAt"` + UpdatedAt time.Time `json:"updatedAt"` +} diff --git a/api/internals/domain/item_budget.go b/api/internals/domain/item_budget.go new file mode 100644 index 000000000..e8159c7b5 --- /dev/null +++ b/api/internals/domain/item_budget.go @@ -0,0 +1,13 @@ +package domain + +import ( + "time" +) + +type ItemBudget struct { + ID int `json:"id"` + Amount int `json:"amount"` + FestivalItemID int `json:"festivalItemId"` + CreatedAt time.Time `json:"createdAt"` + UpdatedAt time.Time `json:"updatedAt"` +} diff --git a/api/internals/domain/payment_receipt.go b/api/internals/domain/payment_receipt.go new file mode 100644 index 000000000..c6164f4b3 --- /dev/null +++ b/api/internals/domain/payment_receipt.go @@ -0,0 +1,16 @@ +package domain + +import ( + "time" +) + +type PaymentReceipt struct { + ID int `json:"id"` + BuyReportID int `json:"buyReportId"` + BucketName string `json:"bucketName"` + FileName string `json:"fileName"` + FileType string `json:"fileType"` + Remark string `json:"remark"` + CreatedAt time.Time `json:"createdAt"` + UpdatedAt time.Time `json:"updatedAt"` +} diff --git a/api/internals/domain/user_group.go b/api/internals/domain/user_group.go new file mode 100644 index 000000000..94f218de8 --- /dev/null +++ b/api/internals/domain/user_group.go @@ -0,0 +1,13 @@ +package domain + +import ( + "time" +) + +type UserGroup struct { + ID int `json:"id"` + UserID int `json:"userId"` + GroupID int `json:"groupId"` + CreatedAt time.Time `json:"createdAt"` + UpdatedAt time.Time `json:"updatedAt"` +} 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/years.sql b/mysql/db/01_years.sql similarity index 89% rename from mysql/db/years.sql rename to mysql/db/01_years.sql index d1c8f8871..3a2c5b7d0 100644 --- a/mysql/db/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/users.sql b/mysql/db/02_users.sql similarity index 100% rename from mysql/db/users.sql rename to mysql/db/02_users.sql diff --git a/mysql/db/03_financial_records.sql b/mysql/db/03_financial_records.sql new file mode 100644 index 000000000..4b8f18de6 --- /dev/null +++ b/mysql/db/03_financial_records.sql @@ -0,0 +1,11 @@ +USE finansu_db; + +CREATE TABLE financial_records ( + id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, + name VARCHAR(255) NOT NULL, + year_id INT(10) UNSIGNED NOT NULL, + created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, + updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (id), + FOREIGN KEY year_id_foreign_key (year_id) REFERENCES years (id) +); diff --git a/mysql/db/04_divisions.sql b/mysql/db/04_divisions.sql new file mode 100644 index 000000000..ddcbb4e79 --- /dev/null +++ b/mysql/db/04_divisions.sql @@ -0,0 +1,11 @@ +USE finansu_db; + +CREATE TABLE divisions ( + id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, + name VARCHAR(255) NOT NULL, + financial_record_id INT(10) UNSIGNED NOT NULL, + created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, + updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (id), + FOREIGN KEY financial_record_id_foreign_key (financial_record_id) REFERENCES financial_records (id) +); diff --git a/mysql/db/05_festival_items.sql b/mysql/db/05_festival_items.sql new file mode 100644 index 000000000..395ca18aa --- /dev/null +++ b/mysql/db/05_festival_items.sql @@ -0,0 +1,12 @@ +USE finansu_db; + +CREATE TABLE festival_items ( + id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, + name VARCHAR(255) NOT NULL, + memo VARCHAR(255), + division_id INT(10) UNSIGNED NOT NULL, + created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, + updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (id), + FOREIGN KEY division_id_foreign_key (division_id) REFERENCES divisions (id) +); diff --git a/mysql/db/06_item_budgets.sql b/mysql/db/06_item_budgets.sql new file mode 100644 index 000000000..731c004f6 --- /dev/null +++ b/mysql/db/06_item_budgets.sql @@ -0,0 +1,11 @@ +USE finansu_db; + +CREATE TABLE item_budgets ( + id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, + amount INT(10) NOT NULL, + festival_item_id INT(10) UNSIGNED NOT NULL, + created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, + updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (id), + FOREIGN KEY festival_item_id_foreign_key (festival_item_id) REFERENCES festival_items (id) +); diff --git a/mysql/db/07_user_groups.sql b/mysql/db/07_user_groups.sql new file mode 100644 index 000000000..a55b3fb00 --- /dev/null +++ b/mysql/db/07_user_groups.sql @@ -0,0 +1,12 @@ +USE finansu_db; + +CREATE TABLE user_groups ( + id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, + user_id INT(10) UNSIGNED NOT NULL, + group_id INT(10) UNSIGNED NOT NULL, + created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, + updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (id), + FOREIGN KEY user_id_foreign_key (user_id) REFERENCES users (id), + FOREIGN KEY group_id_foreign_key (group_id) REFERENCES divisions (id) +); diff --git a/mysql/db/08_buy_reports.sql b/mysql/db/08_buy_reports.sql new file mode 100644 index 000000000..b3710f7bc --- /dev/null +++ b/mysql/db/08_buy_reports.sql @@ -0,0 +1,13 @@ +USE finansu_db; + +CREATE TABLE buy_reports ( + id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, + festival_item_id INT(10) UNSIGNED NOT NULL, + amount INT(10) NOT NULL, + memo VARCHAR(255) NOT NULL, + paid_by VARCHAR(255) NOT NULL, + created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, + updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (id), + FOREIGN KEY festival_item_id_foreign_key (festival_item_id) REFERENCES festival_items (id) +); diff --git a/mysql/db/09_payment_receipts.sql b/mysql/db/09_payment_receipts.sql new file mode 100644 index 000000000..993b2315b --- /dev/null +++ b/mysql/db/09_payment_receipts.sql @@ -0,0 +1,14 @@ +USE finansu_db; + +CREATE TABLE payment_receipts ( + id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, + buy_report_id INT(10) UNSIGNED NOT NULL, + bucket_name VARCHAR(255) NOT NULL, + file_name VARCHAR(255) NOT NULL, + file_type VARCHAR(255) NOT NULL, + remark VARCHAR(255), + created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, + updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (id), + FOREIGN KEY buy_report_id_foreign_key (buy_report_id) REFERENCES buy_reports (id) +); diff --git a/mysql/db/10_buy_statuses.sql b/mysql/db/10_buy_statuses.sql new file mode 100644 index 000000000..17fc9c0dd --- /dev/null +++ b/mysql/db/10_buy_statuses.sql @@ -0,0 +1,12 @@ +USE finansu_db; + +CREATE TABLE buy_statuses ( + id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, + buy_report_id INT(10) UNSIGNED NOT NULL, + is_packed BOOLEAN NOT NULL DEFAULT FALSE, + is_settled BOOLEAN NOT NULL DEFAULT FALSE, + created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, + updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (id), + FOREIGN KEY buy_report_id_foreign_key (buy_report_id) REFERENCES buy_reports (id) +); 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"