From 084375a3f23e1acc660674625a1b04b011e746c6 Mon Sep 17 00:00:00 2001 From: rei <107461411+reiroop@users.noreply.github.com> Date: Thu, 28 May 2026 09:02:28 +0900 Subject: [PATCH 1/3] =?UTF-8?q?feat:=20=E3=83=AD=E3=82=B0=E3=82=A4?= =?UTF-8?q?=E3=83=B3=E3=83=A6=E3=83=BC=E3=82=B6=E3=83=BC=E3=81=AE=E3=82=BB?= =?UTF-8?q?=E3=83=83=E3=82=B7=E3=83=A7=E3=83=B3=E6=83=85=E5=A0=B1=E3=82=92?= =?UTF-8?q?=E5=8F=96=E5=BE=97=E3=81=99=E3=82=8B=20GET=20/me=20=E3=82=A8?= =?UTF-8?q?=E3=83=B3=E3=83=89=E3=83=9D=E3=82=A4=E3=83=B3=E3=83=88=E3=82=92?= =?UTF-8?q?=E6=96=B0=E8=A8=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- openapi.yaml | 43 ++++++++++++++ server/gen.go | 151 ++++++++++++++++++++++++++++++-------------------- 2 files changed, 135 insertions(+), 59 deletions(-) diff --git a/openapi.yaml b/openapi.yaml index e45a2cb..a5ff0aa 100644 --- a/openapi.yaml +++ b/openapi.yaml @@ -377,6 +377,22 @@ paths: $ref: '#/components/responses/Forbidden' '500': $ref: '#/components/responses/InternalServerError' + /me: + get: + summary: ログインユーザーのセッション情報を取得 + tags: + - User + operationId: getMe + security: [] + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/MeResponse' + '500': + $ref: '#/components/responses/InternalServerError' components: securitySchemes: EmailVerifiedSession: @@ -692,10 +708,37 @@ components: description: Generic Stripe event payload type: object additionalProperties: true + MeResponse: + description: 現在のセッション情報(ログインユーザー情報) + type: object + properties: + email: + type: string + format: email + nullable: true + description: メールアドレス認証が完了しているセッションの場合にメールアドレスが入る。それ以外は null。 + traq_id: + type: string + nullable: true + description: NewShowcaseプロキシ認証を経由しているセッションの場合に traQ ID が入る。それ以外は null。 + is_admin: + type: boolean + description: 現在のユーザーがシステム管理者権限を持っている場合のみ true。それ以外は false。 + customer_id: + type: string + nullable: true + description: 現在のセッションのユーザーがすでに Stripe Customer として登録されている場合に顧客IDが入る。未登録の場合は null。 + required: + - email + - traq_id + - is_admin + - customer_id tags: - name: Auth description: Auth API + - name: User + description: User API - name: Customer description: Customer API - name: Invoice diff --git a/server/gen.go b/server/gen.go index 36ad205..7e54403 100644 --- a/server/gen.go +++ b/server/gen.go @@ -148,6 +148,21 @@ type GetInvoicesResponse struct { // InvoiceStatus 請求書ステータス type InvoiceStatus string +// MeResponse 現在のセッション情報(ログインユーザー情報) +type MeResponse struct { + // CustomerId 現在のセッションのユーザーがすでに Stripe Customer として登録されている場合に顧客IDが入る。未登録の場合は null。 + CustomerId *string `json:"customer_id"` + + // Email メールアドレス認証が完了しているセッションの場合にメールアドレスが入る。それ以外は null。 + Email *openapi_types.Email `json:"email"` + + // IsAdmin 現在のユーザーがシステム管理者権限を持っている場合のみ true。それ以外は false。 + IsAdmin bool `json:"is_admin"` + + // TraqId NewShowcaseプロキシ認証を経由しているセッションの場合に traQ ID が入る。それ以外は null。 + TraqId *string `json:"traq_id"` +} + // PatchCustomerRequest Customer 更新リクエスト (すべてのフィールドはオプショナル) type PatchCustomerRequest struct { // Email Email @@ -362,6 +377,9 @@ type ServerInterface interface { // Invoice を作成 // (POST /invoices) PostInvoice(ctx echo.Context) error + // ログインユーザーのセッション情報を取得 + // (GET /me) + GetMe(ctx echo.Context) error // isct メールアドレスの確認メールを送信 // (POST /verify-email) PostVerifyEmail(ctx echo.Context, params PostVerifyEmailParams) error @@ -618,6 +636,15 @@ func (w *ServerInterfaceWrapper) PostInvoice(ctx echo.Context) error { return err } +// GetMe converts echo context to params. +func (w *ServerInterfaceWrapper) GetMe(ctx echo.Context) error { + var err error + + // Invoke the callback with all the unmarshaled arguments + err = w.Handler.GetMe(ctx) + return err +} + // PostVerifyEmail converts echo context to params. func (w *ServerInterfaceWrapper) PostVerifyEmail(ctx echo.Context) error { var err error @@ -730,6 +757,7 @@ func RegisterHandlersWithBaseURL(router EchoRouter, si ServerInterface, baseURL router.POST(baseURL+"/customers", wrapper.PostCustomer) router.GET(baseURL+"/invoices", wrapper.GetInvoices) router.POST(baseURL+"/invoices", wrapper.PostInvoice) + router.GET(baseURL+"/me", wrapper.GetMe) router.POST(baseURL+"/verify-email", wrapper.PostVerifyEmail) router.GET(baseURL+"/verify-email/confirm", wrapper.GetVerifyEmailConfirm) router.POST(baseURL+"/verify-email/confirm", wrapper.PostVerifyEmailConfirm) @@ -740,65 +768,70 @@ func RegisterHandlersWithBaseURL(router EchoRouter, si ServerInterface, baseURL // Base64 encoded, gzipped, json marshaled Swagger object var swaggerSpec = []string{ - "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", - "mD4AAA==", + "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", + "8n8BAAD//7nVw4rAQwAA", } // GetSwagger returns the content of the embedded swagger specification file From b68cdea30971361b9a3dbc02d4dd421b2232494d Mon Sep 17 00:00:00 2001 From: rei <107461411+reiroop@users.noreply.github.com> Date: Thu, 28 May 2026 12:05:02 +0900 Subject: [PATCH 2/3] =?UTF-8?q?docs:=20MeResponse=E3=81=AEnullable?= =?UTF-8?q?=E3=83=97=E3=83=AD=E3=83=91=E3=83=86=E3=82=A3=E3=81=AB=E5=AF=BE?= =?UTF-8?q?=E3=81=99=E3=82=8B=E8=A8=AD=E8=A8=88=E6=B3=A8=E8=A8=98=E3=82=92?= =?UTF-8?q?=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- openapi.yaml | 8 ++- server/gen.go | 138 +++++++++++++++++++++++++++----------------------- 2 files changed, 81 insertions(+), 65 deletions(-) diff --git a/openapi.yaml b/openapi.yaml index a5ff0aa..c79d9e7 100644 --- a/openapi.yaml +++ b/openapi.yaml @@ -709,7 +709,13 @@ components: type: object additionalProperties: true MeResponse: - description: 現在のセッション情報(ログインユーザー情報) + description: | + 現在のセッション情報(ログインユーザー情報) + + 【設計注記】 + OpenAPI 3.1.0 の標準仕様としては `nullable: true` は非推奨であり、本来は `type: [string, "null"]` と定義すべきです。 + しかし、Goの自動生成ツールである `oapi-codegen` (v2.7.x 時点) が OpenAPI 3.1.0 の Union型(型配列)のパースに対応しておらず、 + ビルドエラー (`unhandled Schema type: &[string null]`) になるため、本プロジェクトでは意図的に `nullable: true` を使用しています。 type: object properties: email: diff --git a/server/gen.go b/server/gen.go index 7e54403..93790cc 100644 --- a/server/gen.go +++ b/server/gen.go @@ -149,6 +149,11 @@ type GetInvoicesResponse struct { type InvoiceStatus string // MeResponse 現在のセッション情報(ログインユーザー情報) +// +// 【設計注記】 +// OpenAPI 3.1.0 の標準仕様としては `nullable: true` は非推奨であり、本来は `type: [string, "null"]` と定義すべきです。 +// しかし、Goの自動生成ツールである `oapi-codegen` (v2.7.x 時点) が OpenAPI 3.1.0 の Union型(型配列)のパースに対応しておらず、 +// ビルドエラー (`unhandled Schema type: &[string null]`) になるため、本プロジェクトでは意図的に `nullable: true` を使用しています。 type MeResponse struct { // CustomerId 現在のセッションのユーザーがすでに Stripe Customer として登録されている場合に顧客IDが入る。未登録の場合は null。 CustomerId *string `json:"customer_id"` @@ -768,70 +773,75 @@ func RegisterHandlersWithBaseURL(router EchoRouter, si ServerInterface, baseURL // Base64 encoded, gzipped, json marshaled Swagger object var swaggerSpec = []string{ - "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", - "8n8BAAD//7nVw4rAQwAA", + "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", + "nk4aUOoERDt0kuP/HwAA//845Q8YvEUAAA==", } // GetSwagger returns the content of the embedded swagger specification file From d005814d92dcba2efd193039239aa0cb451e100e Mon Sep 17 00:00:00 2001 From: rei <107461411+reiroop@users.noreply.github.com> Date: Fri, 29 May 2026 00:13:14 +0900 Subject: [PATCH 3/3] =?UTF-8?q?refactor:=20MeResponse=20=E3=81=AE=20descri?= =?UTF-8?q?ption=20=E3=81=AB=E3=81=8A=E3=81=91=E3=82=8B=20NewShowcase=20?= =?UTF-8?q?=E3=81=AE=E8=AA=A4=E8=A8=98=E3=82=92=20NeoShowcase=20=E3=81=AB?= =?UTF-8?q?=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- openapi.yaml | 2 +- server/gen.go | 76 +++++++++++++++++++++++++-------------------------- 2 files changed, 39 insertions(+), 39 deletions(-) diff --git a/openapi.yaml b/openapi.yaml index c79d9e7..12e0099 100644 --- a/openapi.yaml +++ b/openapi.yaml @@ -726,7 +726,7 @@ components: traq_id: type: string nullable: true - description: NewShowcaseプロキシ認証を経由しているセッションの場合に traQ ID が入る。それ以外は null。 + description: NeoShowcaseプロキシ認証を経由しているセッションの場合に traQ ID が入る。それ以外は null。 is_admin: type: boolean description: 現在のユーザーがシステム管理者権限を持っている場合のみ true。それ以外は false。 diff --git a/server/gen.go b/server/gen.go index 93790cc..f8808a3 100644 --- a/server/gen.go +++ b/server/gen.go @@ -164,7 +164,7 @@ type MeResponse struct { // IsAdmin 現在のユーザーがシステム管理者権限を持っている場合のみ true。それ以外は false。 IsAdmin bool `json:"is_admin"` - // TraqId NewShowcaseプロキシ認証を経由しているセッションの場合に traQ ID が入る。それ以外は null。 + // TraqId NeoShowcaseプロキシ認証を経由しているセッションの場合に traQ ID が入る。それ以外は null。 TraqId *string `json:"traq_id"` } @@ -805,43 +805,43 @@ var swaggerSpec = []string{ "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", - "nk4aUOoERDt0kuP/HwAA//845Q8YvEUAAA==", + "g/whIasDSn+9bW0QOp4Cam9GHRUFHXiYfoysX1yRW9OVf0xVbjxpUuScG4hyzYl5G6nWJQ+8s/BY8Qk9", + "FtAVVoqhR4BixgN+ZPKnqhnlO38vz/6I7EWs21aRHNQEt8+zgo/Icc4g6zsXYfYkMldIaHzTE8znyF56", + "fafZip0lDnaTIGgiJuhRddi8qKibWCeqfwW+Wdgi2yYjZOJ6I5Ei8XzS5iTS0LoHs027dxMbcx2sPvgW", + "3VYC20VvJKjA0awGdCMLw1lFOi619669oTFgd1zVIUhzLhWcO5Y7e+ZEYMsMhDm9M5Fwx7Xo5P5sEVU5", + "0dLSsn22s8ZkkJ4o8fry6V2qMiRpsg9rQjotYfKFbI9PlMTox+rYo+twBNScSFeqJrXrjwKq52l2W5aU", + "E0AZhhm+c3/7drzRWU0w8go4iKI8wqZIugg5T6FDN7ksXPC4bD9wAJ8LhEDD8z7u+/jt/n49+V9v90nd", + "yT69N9kndiX74IfJ/v6WPuEIecT/e+79ZF+uJ/lak1alKSHVFGq3UiLFJM6rczQrLAXLJyt9CtJVkYVU", + "SfPVdnZRfWFb2uqiLPEwVwrRPpBI4AhlwVkoYDca+/yLxEW5TzyZRefyJWQu19WZatqdkIE8CDQ9I+X4", + "AA4S+/6v7+NEsuU/X3+NJQ7qRR8bcTMG7POiDk2Q3veAAjRJ9NxwgFfAtierCmk+JAUcswPR0CQ4RoIU", + "eoxdujb0Ida940BIsyom76jGYBbEdWNQliDX1XvmXWdlo/J4Fgcd9i3suNl57LTkLW4gIeraEBbhBg5t", + "cCTYc7r3Qy4xQnAVJ0eVcO0HHjZVmXu+OT9FnMFvuYFUCtvRuJgB4nlJSdHFRFU9L5H0nZN/gKxp7P1h", + "t3UDmRtbeZO6hCTYIRW/DGWjWvL7WxyTHCcs1mQi5KQPAMk2EHUhuJdA2k2ZNhlF4Kh5Ml++O1kufl+5", + "/3xz8SoOEqwJ6mdX7j+vLBXcEMgqlFbzOC7FcdxincPbRTj0GBC9J5eBOqEQGaZGXIJTuksxgzOfI37E", + "YME9wlOvTP/o3LdLqwVkLtAAvLR2q7T6RY2VF/Nb99ZpHtIfg1AXP/og3lW1UUFLg3T8rE7e1JGMESop", + "Q2pETltSuCM93XiaBIm+BX8dARo9O74Vx/pYAmoOKEJO4jt5Ev5TpcwQ2CeqwdUwIFqHNU3wSuH8ewCS", + "CqfO11V621tbia+lVhN8Qi6XlUQyNXFOp+CpFZerOeVGdo4WU0OpMCyPoBxOf4BHdbTuj1qxSmsiUEw+", + "QKluPINVcfYbDb6z77MIdelLjsc+CwOuLzmejPG6IcuCNlZXHaaVPH9DAxSGdWzQqTSSeOuE6BYzEi7O", + "9UYnVl9zJOdda63pYwugNiTha73B/Gwzuq5/ookZtE2lmaUDnSRNTAh06+DxdS68P50c3csRzF7Xd3OE", + "XJPdVZ4i+lagoQd7R5opUNWTlHxJbW2kpI2K2n8+Vd1FVZ6ly3US87Ra14YaKjJ+HzrKDlYzC9elejUS", + "euGQwb0Axt1bNezkNfQyrGnPJZmjngWGJoiLGUEZlpRhL3TgaHIW5U23tFzvpXADfsdjgKPE0dRvzX9B", + "1lNk3yDpu5vIfBR0Z1h9VAza38J/4iR8io8IWQO8yWHv9q3Em1wvhgN4k+sVZNArQfDWCeECI8YYr4NO", + "AAiYCQ7ZE+TgV5D9tHKjGJKW33pjOLnH7JrTxkbbq8u9pLGOStOwzE0t4bcD6+Zllpi9iu676OX20jLV", + "SpvRZqgJo+JrYiNT2rafEuwQ242566Bq3XhGtZvtj2MfayUPltXzDiRJ8kZQzIShH8gf8zSkBTo8qqbH", + "XhkwmDnq8XD74l9gfBV3LxMbNO8fiQ1VZ1hFf7p8r5DByMj/7sBop6e857t1uQ0q/25YpGUENhbxfe2m", + "lxte116/1V+xVRM9I02GOjvqn4ne3lyutW7NPis/nYn6RMTtVFGVlAxgRk2z466MoA2DlGBAVRagJArZ", + "LF5DB0o65QLld4jAQu1+f77Iq3qgTQdZ3d5xNLxRvFF7d6HUlTOZ90nb3uwYjYZ/J2NfbXVl2PoaSLCp", + "p7XwKCN/EvB7qMYnwfba+6p0MZjTiGiWi+qvY+kayVxTGfqLGqRrOFL1fIW5Hd+brE+iqJXdGyVmVFrH", + "gyU3qBkgrNjte0dFNFiOiCLI7V679wRlpFocVS9yy0S1t9NbebP0Yp6dQGGVzRrpbbjcH4ZbXS9ZHT3m", + "kvvhCyn0IHsFqwp2Zx4g+54/CxSVWXHLbEG0+P2LbZoCtvcfILgAExkoZ4OICiW1GIYlkCPsEsQMiHep", + "CtRUZt/gLMl+PsI2wrpYWn1c+XkOmUulF187j28hcwaZd2h5OCJVp6hxHdJPV8MJt9/uMtojS+oCxsNP", + "DRg+kHtt2tb05nyx8uB5GOSx5oxmDczNWb0L8dHR0fiQqslxQ8sCRVTT9HuEXRmgus6ZJqzhfuoA1H1O", + "CwB3GmZISP/HgGGMP6FSiUV+ZEvaY7f91PalvqWN7Shbzy5/k75yboeZ/YjxbgrfXCmtPSScL3PRNYDf", + "Js3PZvot978091/L+h+HMHdayY7tIP//JzZH1nT554nNn9bchmO/C2hNU3yzL99RMJhR1fNeViTufZYV", + "bbE+ojNcT7tHcNv0Gly/buMOMqeoG0CxSfsoqh+rMbsp6Mx4rzSsCNDQQMM7l3nJvnr30d/H1JTPyK7o", + "ebT8gXw692TJ9yNe7ybGA0eQNEfiCfqPM9xE5nXny1lkFXyocqdjYNWnCkLtV3jjRvkD5oSIpIK7f72M", + "8RC3acZFE5kUzi3hYCc4kIQ/jMq/l2UMDPZ9chfVkhsY74Wo4eGe/APDPalGNyJ4fQhBqupK0uHppAGl", + "TkC0Qyc5/v8BAAD//8SKizG8RQAA", } // GetSwagger returns the content of the embedded swagger specification file