Merged PR 146: API IF実装(accounts/me復活)
## 概要 [Task1953: API IF実装(accounts/me復活)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/1953) - accounts/meのIFを追加しました ※別タスク「タスク 1837: API I/F実装」でレビューまでしてもらったものの、階層をアクセストークンに含める方針としたため削除としたものを復活させています。 - prettierがエラーを出力するようになっていたので、以下URLを参考にsettings.jsonを更新しています https://qiita.com/TellMin/items/a634149730b777e2e6d0 - このPull Requestでの対象外 ・openapi.jsonのL952とL2094については本PBI対象外になります ## レビューポイント - 特にありません ## UIの変更 - 無し ## 動作確認状況 - ローカルで確認 ## 補足 - 相談、参考資料などがあれば
This commit is contained in:
parent
0907bd28af
commit
f126b0976e
3
dictation_server/.vscode/settings.json
vendored
3
dictation_server/.vscode/settings.json
vendored
@ -17,5 +17,6 @@
|
|||||||
"editor.formatOnType": true,
|
"editor.formatOnType": true,
|
||||||
"editor.renderWhitespace": "all",
|
"editor.renderWhitespace": "all",
|
||||||
"editor.insertSpaces": false,
|
"editor.insertSpaces": false,
|
||||||
"editor.renderLineHighlight": "all"
|
"editor.renderLineHighlight": "all",
|
||||||
|
"prettier.prettierPath": "./node_modules/prettier"
|
||||||
}
|
}
|
||||||
@ -216,6 +216,62 @@
|
|||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"/accounts/me": {
|
||||||
|
"get": {
|
||||||
|
"operationId": "getMyAccount",
|
||||||
|
"summary": "",
|
||||||
|
"description": "ログインしているユーザーのアカウント情報を取得します",
|
||||||
|
"parameters": [],
|
||||||
|
"responses": {
|
||||||
|
"200": {
|
||||||
|
"description": "成功時のレスポンス",
|
||||||
|
"content": {
|
||||||
|
"application/json": {
|
||||||
|
"schema": {
|
||||||
|
"$ref": "#/components/schemas/GetMyAccountResponse"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"400": {
|
||||||
|
"description": "該当アカウントがDBに存在しない場合",
|
||||||
|
"content": {
|
||||||
|
"application/json": {
|
||||||
|
"schema": {
|
||||||
|
"$ref": "#/components/schemas/ErrorResponse"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"401": {
|
||||||
|
"description": "認証エラー",
|
||||||
|
"content": {
|
||||||
|
"application/json": {
|
||||||
|
"schema": {
|
||||||
|
"$ref": "#/components/schemas/ErrorResponse"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"500": {
|
||||||
|
"description": "想定外のサーバーエラー",
|
||||||
|
"content": {
|
||||||
|
"application/json": {
|
||||||
|
"schema": {
|
||||||
|
"$ref": "#/components/schemas/ErrorResponse"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tags": ["accounts"],
|
||||||
|
"security": [
|
||||||
|
{
|
||||||
|
"bearer": []
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
"/users/confirm": {
|
"/users/confirm": {
|
||||||
"post": {
|
"post": {
|
||||||
"operationId": "confirmUser",
|
"operationId": "confirmUser",
|
||||||
@ -893,7 +949,7 @@
|
|||||||
"name": "paramName",
|
"name": "paramName",
|
||||||
"required": false,
|
"required": false,
|
||||||
"in": "query",
|
"in": "query",
|
||||||
"description": "JOB_NUMBER/STATUS/ENCRYPTION/AUTHOR_ID/FILE_NAME/FILE_LENGTH/FILE_SIZE/RECORDING_STARTED_DATE/RECORDING_FINISHED_DATE/UPLOAD_DATE/TRANSCRIPTION_STARTED_DATE/TRANSCRIPTION_FINISHED_DATE",
|
"description": "JOB_NUMBER/STATUS/ENCRYPTION/AUTHOR_ID/WORK_TYPE/FILE_NAME/FILE_LENGTH/FILE_SIZE/RECORDING_STARTED_DATE/RECORDING_FINISHED_DATE/UPLOAD_DATE/TRANSCRIPTION_STARTED_DATE/TRANSCRIPTION_FINISHED_DATE",
|
||||||
"schema": {
|
"schema": {
|
||||||
"type": "string"
|
"type": "string"
|
||||||
}
|
}
|
||||||
@ -1783,6 +1839,24 @@
|
|||||||
},
|
},
|
||||||
"required": ["licenseSummaryInfo"]
|
"required": ["licenseSummaryInfo"]
|
||||||
},
|
},
|
||||||
|
"Account": {
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"accountId": {
|
||||||
|
"type": "number"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"required": ["accountId"]
|
||||||
|
},
|
||||||
|
"GetMyAccountResponse": {
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"account": {
|
||||||
|
"$ref": "#/components/schemas/Account"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"required": ["account"]
|
||||||
|
},
|
||||||
"ConfirmRequest": {
|
"ConfirmRequest": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
"properties": {
|
"properties": {
|
||||||
@ -1999,7 +2073,7 @@
|
|||||||
},
|
},
|
||||||
"paramName": {
|
"paramName": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"description": "JOB_NUMBER/STATUS/ENCRYPTION/AUTHOR_ID/FILE_NAME/FILE_LENGTH/FILE_SIZE/RECORDING_STARTED_DATE/RECORDING_FINISHED_DATE/UPLOAD_DATE/TRANSCRIPTION_STARTED_DATE/TRANSCRIPTION_FINISHED_DATE"
|
"description": "JOB_NUMBER/STATUS/ENCRYPTION/AUTHOR_ID/WORK_TYPE/FILE_NAME/FILE_LENGTH/FILE_SIZE/RECORDING_STARTED_DATE/RECORDING_FINISHED_DATE/UPLOAD_DATE/TRANSCRIPTION_STARTED_DATE/TRANSCRIPTION_FINISHED_DATE"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": ["direction", "paramName"]
|
"required": ["direction", "paramName"]
|
||||||
@ -2017,7 +2091,7 @@
|
|||||||
},
|
},
|
||||||
"paramName": {
|
"paramName": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"description": "JOB_NUMBER/STATUS/ENCRYPTION/AUTHOR_ID/FILE_NAME/FILE_LENGTH/FILE_SIZE/RECORDING_STARTED_DATE/RECORDING_FINISHED_DATE/UPLOAD_DATE/TRANSCRIPTION_STARTED_DATE/TRANSCRIPTION_FINISHED_DATE"
|
"description": "JOB_NUMBER/STATUS/ENCRYPTION/AUTHOR_ID/WORK_TYPE/FILE_NAME/FILE_LENGTH/FILE_SIZE/RECORDING_STARTED_DATE/RECORDING_FINISHED_DATE/UPLOAD_DATE/TRANSCRIPTION_STARTED_DATE/TRANSCRIPTION_FINISHED_DATE"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": ["direction", "paramName"]
|
"required": ["direction", "paramName"]
|
||||||
|
|||||||
@ -3,6 +3,7 @@ import {
|
|||||||
Controller,
|
Controller,
|
||||||
HttpStatus,
|
HttpStatus,
|
||||||
Post,
|
Post,
|
||||||
|
Get,
|
||||||
Req,
|
Req,
|
||||||
UseGuards,
|
UseGuards,
|
||||||
} from '@nestjs/common';
|
} from '@nestjs/common';
|
||||||
@ -20,6 +21,7 @@ import {
|
|||||||
CreateAccountResponse,
|
CreateAccountResponse,
|
||||||
GetLicenseSummaryRequest,
|
GetLicenseSummaryRequest,
|
||||||
GetLicenseSummaryResponse,
|
GetLicenseSummaryResponse,
|
||||||
|
GetMyAccountResponse,
|
||||||
} from './types/types';
|
} from './types/types';
|
||||||
import { USER_ROLES, ADMIN_ROLES } from '../../constants';
|
import { USER_ROLES, ADMIN_ROLES } from '../../constants';
|
||||||
import { AuthGuard } from '../../common/guards/auth/authguards';
|
import { AuthGuard } from '../../common/guards/auth/authguards';
|
||||||
@ -120,4 +122,41 @@ export class AccountsController {
|
|||||||
},
|
},
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ApiResponse({
|
||||||
|
status: HttpStatus.OK,
|
||||||
|
type: GetMyAccountResponse,
|
||||||
|
description: '成功時のレスポンス',
|
||||||
|
})
|
||||||
|
@ApiResponse({
|
||||||
|
status: HttpStatus.BAD_REQUEST,
|
||||||
|
description: '該当アカウントがDBに存在しない場合',
|
||||||
|
type: ErrorResponse,
|
||||||
|
})
|
||||||
|
@ApiResponse({
|
||||||
|
status: HttpStatus.UNAUTHORIZED,
|
||||||
|
description: '認証エラー',
|
||||||
|
type: ErrorResponse,
|
||||||
|
})
|
||||||
|
@ApiResponse({
|
||||||
|
status: HttpStatus.INTERNAL_SERVER_ERROR,
|
||||||
|
description: '想定外のサーバーエラー',
|
||||||
|
type: ErrorResponse,
|
||||||
|
})
|
||||||
|
@ApiOperation({
|
||||||
|
operationId: 'getMyAccount',
|
||||||
|
description: 'ログインしているユーザーのアカウント情報を取得します',
|
||||||
|
})
|
||||||
|
@ApiBearerAuth()
|
||||||
|
@UseGuards(AuthGuard)
|
||||||
|
@UseGuards(RoleGuard.requireds({ roles: [ADMIN_ROLES.ADMIN] }))
|
||||||
|
@Get('me')
|
||||||
|
async getMyAccount(@Req() req: Request): Promise<GetMyAccountResponse> {
|
||||||
|
console.log(req.header('Authorization'));
|
||||||
|
return {
|
||||||
|
account: {
|
||||||
|
accountId: 1,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -72,3 +72,13 @@ export class GetLicenseSummaryResponse {
|
|||||||
@ApiProperty({ type: LicenseSummaryInfo })
|
@ApiProperty({ type: LicenseSummaryInfo })
|
||||||
licenseSummaryInfo: LicenseSummaryInfo;
|
licenseSummaryInfo: LicenseSummaryInfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export class Account {
|
||||||
|
@ApiProperty()
|
||||||
|
accountId: number;
|
||||||
|
}
|
||||||
|
|
||||||
|
export class GetMyAccountResponse {
|
||||||
|
@ApiProperty({ type: Account })
|
||||||
|
account: Account;
|
||||||
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user