From d8cf5682068ed49c209631d3b5910e2a611e17d6 Mon Sep 17 00:00:00 2001 From: Methapon2001 <61303214+Methapon2001@users.noreply.github.com> Date: Mon, 27 Nov 2023 14:06:51 +0700 Subject: [PATCH] docs: word and order --- .../src/controllers/cabinetController.ts | 8 +- .../src/controllers/drawerController.ts | 8 +- .../server/src/controllers/fileController.ts | 70 ++-- .../src/controllers/folderController.ts | 8 +- .../src/controllers/searchController.ts | 2 +- .../src/controllers/subFolderController.ts | 8 +- .../controllers/subFolderFileController.ts | 73 ++--- Services/server/src/routes.ts | 115 +++---- Services/server/src/swagger.json | 303 ++++++++++-------- Services/server/tsoa.json | 11 +- 10 files changed, 322 insertions(+), 284 deletions(-) diff --git a/Services/server/src/controllers/cabinetController.ts b/Services/server/src/controllers/cabinetController.ts index fadac3d..32d0b68 100644 --- a/Services/server/src/controllers/cabinetController.ts +++ b/Services/server/src/controllers/cabinetController.ts @@ -31,7 +31,7 @@ if (!DEFAULT_INDEX) throw Error("Default ElasticSearch index must be specified." @Route("cabinet") export class CabinetController extends Controller { @Get("/") - @Tags("Cabinet") + @Tags("ตู้เอกสาร") @Security("bearerAuth") @Response( HttpStatusCode.INTERNAL_SERVER_ERROR, @@ -48,7 +48,7 @@ export class CabinetController extends Controller { } @Post("/") - @Tags("Cabinet") + @Tags("ตู้เอกสาร") @Security("bearerAuth", ["admin"]) @Response(HttpStatusCode.INTERNAL_SERVER_ERROR, "เกิดข้อผิดพลาดกับระบบจัดการไฟล์") @SuccessResponse(HttpStatusCode.CREATED, "สำเร็จ") @@ -69,7 +69,7 @@ export class CabinetController extends Controller { } @Put("/{cabinetName}") - @Tags("Cabinet") + @Tags("ตู้เอกสาร") @Security("bearerAuth", ["admin"]) @Response(HttpStatusCode.INTERNAL_SERVER_ERROR, "เกิดข้อผิดพลาดไม่สามารถย้ายไฟล์ได้") @SuccessResponse(HttpStatusCode.NO_CONTENT, "สำเร็จ") @@ -122,7 +122,7 @@ export class CabinetController extends Controller { } @Delete("/{cabinetName}") - @Tags("Cabinet") + @Tags("ตู้เอกสาร") @Security("bearerAuth", ["admin"]) @Response(HttpStatusCode.INTERNAL_SERVER_ERROR, "เกิดข้อผิดพลาด ไม่สามารถลบไฟล์ได้") @SuccessResponse(HttpStatusCode.NO_CONTENT, "สำเร็จ") diff --git a/Services/server/src/controllers/drawerController.ts b/Services/server/src/controllers/drawerController.ts index 329a1b4..00ef246 100644 --- a/Services/server/src/controllers/drawerController.ts +++ b/Services/server/src/controllers/drawerController.ts @@ -32,7 +32,7 @@ if (!DEFAULT_INDEX) throw Error("Default ElasticSearch index must be specified." @Route("/cabinet/{cabinetName}/drawer") export class DrawerController extends Controller { @Get("/") - @Tags("Drawer") + @Tags("ลิ้นชัก") @Security("bearerAuth") @Response( HttpStatusCode.INTERNAL_SERVER_ERROR, @@ -49,7 +49,7 @@ export class DrawerController extends Controller { } @Post("/") - @Tags("Drawer") + @Tags("ลิ้นชัก") @Security("bearerAuth", ["admin"]) @Response(HttpStatusCode.NOT_FOUND, "ไม่พบลิ้นชัก") @Response(HttpStatusCode.INTERNAL_SERVER_ERROR, "เกิดข้อผิดพลาดกับระบบจัดการไฟล์") @@ -85,7 +85,7 @@ export class DrawerController extends Controller { } @Put("/{drawerName}") - @Tags("Drawer") + @Tags("ลิ้นชัก") @Security("bearerAuth", ["admin"]) @Response(HttpStatusCode.INTERNAL_SERVER_ERROR, "เกิดข้อผิดพลาดไม่สามารถย้ายไฟล์ได้") @SuccessResponse(HttpStatusCode.NO_CONTENT, "สำเร็จ") @@ -141,7 +141,7 @@ export class DrawerController extends Controller { } @Delete("/{drawerName}") - @Tags("Drawer") + @Tags("ลิ้นชัก") @Security("bearerAuth", ["admin"]) @SuccessResponse(HttpStatusCode.NO_CONTENT, "สำเร็จ") public async deleteDrawer(@Path() cabinetName: string, @Path() drawerName: string) { diff --git a/Services/server/src/controllers/fileController.ts b/Services/server/src/controllers/fileController.ts index a728c9d..28fb0e9 100644 --- a/Services/server/src/controllers/fileController.ts +++ b/Services/server/src/controllers/fileController.ts @@ -31,8 +31,39 @@ if (!DEFAULT_INDEX) throw Error("Default ElasticSearch index must be specified." @Route("/cabinet/{cabinetName}/drawer/{drawerName}/folder/{folderName}/file") export class FileController extends Controller { + @Get("/") + @Tags("ไฟล์") + @Security("bearerAuth") + @SuccessResponse(HttpStatusCode.OK, "สำเร็จ") + public async getFile( + @Path() cabinetName: string, + @Path() drawerName: string, + @Path() folderName: string, + ): Promise { + const search = await esClient.search }>({ + index: DEFAULT_INDEX!, + query: { + prefix: { + pathname: `${cabinetName}/${drawerName}/${folderName}/`, + }, + }, + size: 10000, + }); + + const records = search.hits.hits + .map((v) => { + if (v._source) { + const { attachment, ...rest } = v._source; + return rest satisfies EhrFile; + } + }) + .filter((v: EhrFile | undefined): v is EhrFile => !!v); + + return records; + } + @Post("/") - @Tags("File") + @Tags("ไฟล์") @Security("bearerAuth", ["admin"]) @Response( HttpStatusCode.NOT_FOUND, @@ -112,39 +143,8 @@ export class FileController extends Controller { }; } - @Get("/") - @Tags("File") - @Security("bearerAuth") - @SuccessResponse(HttpStatusCode.OK, "สำเร็จ") - public async getFile( - @Path() cabinetName: string, - @Path() drawerName: string, - @Path() folderName: string, - ): Promise { - const search = await esClient.search }>({ - index: DEFAULT_INDEX!, - query: { - prefix: { - pathname: `${cabinetName}/${drawerName}/${folderName}/`, - }, - }, - size: 10000, - }); - - const records = search.hits.hits - .map((v) => { - if (v._source) { - const { attachment, ...rest } = v._source; - return rest satisfies EhrFile; - } - }) - .filter((v: EhrFile | undefined): v is EhrFile => !!v); - - return records; - } - @Patch("/{fileName}") - @Tags("File") + @Tags("ไฟล์") @Security("bearerAuth", ["admin"]) @Response(HttpStatusCode.NOT_FOUND, "ไม่พบตำแหน่งที่ต้องการสร้างแฟ้ม") @SuccessResponse(HttpStatusCode.OK, "สำเร็จ") @@ -243,7 +243,7 @@ export class FileController extends Controller { } @Delete("/{fileName}") - @Tags("File") + @Tags("ไฟล์") @Security("bearerAuth", ["admin"]) @SuccessResponse(HttpStatusCode.OK, "สำเร็จ") public async deleteFile( @@ -260,7 +260,7 @@ export class FileController extends Controller { } @Get("/{fileName}") - @Tags("Download") + @Tags("ดาวน์โหลด") @Security("bearerAuth") @SuccessResponse(HttpStatusCode.OK, "สำเร็จ") public async downloadFile( diff --git a/Services/server/src/controllers/folderController.ts b/Services/server/src/controllers/folderController.ts index 80251a6..f872ffe 100644 --- a/Services/server/src/controllers/folderController.ts +++ b/Services/server/src/controllers/folderController.ts @@ -32,7 +32,7 @@ if (!DEFAULT_INDEX) throw Error("Default ElasticSearch index must be specified." @Route("/cabinet/{cabinetName}/drawer/{drawerName}/folder") export class FolderController extends Controller { @Get("/") - @Tags("Folder") + @Tags("แฟ้ม") @Security("bearerAuth") @Response( HttpStatusCode.INTERNAL_SERVER_ERROR, @@ -51,7 +51,7 @@ export class FolderController extends Controller { } @Post("/") - @Tags("Folder") + @Tags("แฟ้ม") @Security("bearerAuth", ["admin"]) @Response(HttpStatusCode.NOT_FOUND, "ไม่พบตำแหน่งที่ต้องการสร้างแฟ้ม") @Response(HttpStatusCode.INTERNAL_SERVER_ERROR, "เกิดข้อผิดพลาดกับระบบจัดการไฟล์") @@ -88,7 +88,7 @@ export class FolderController extends Controller { } @Put("/{folderName}") - @Tags("Folder") + @Tags("แฟ้ม") @Security("bearerAuth", ["admin"]) @Response(HttpStatusCode.INTERNAL_SERVER_ERROR, "เกิดข้อผิดพลาดไม่สามารถย้ายไฟล์ได้") @SuccessResponse(HttpStatusCode.NO_CONTENT, "สำเร็จ") @@ -145,7 +145,7 @@ export class FolderController extends Controller { } @Delete("/{folderName}") - @Tags("Folder") + @Tags("แฟ้ม") @Security("bearerAuth", ["admin"]) @SuccessResponse(HttpStatusCode.NO_CONTENT, "สำเร็จ") public async deleteFolder( diff --git a/Services/server/src/controllers/searchController.ts b/Services/server/src/controllers/searchController.ts index dea0d8e..af352bf 100644 --- a/Services/server/src/controllers/searchController.ts +++ b/Services/server/src/controllers/searchController.ts @@ -11,7 +11,7 @@ if (!DEFAULT_INDEX) throw Error("Default ElasticSearch index must be specified." @Route("/search") export class SearchController extends Controller { @Post("/") - @Tags("Search") + @Tags("ค้นหา") @Security("bearerAuth") @SuccessResponse(HttpStatusCode.OK, "สำเร็จ") public async searchFile(@Body() search: Search): Promise { diff --git a/Services/server/src/controllers/subFolderController.ts b/Services/server/src/controllers/subFolderController.ts index 376bae8..426af62 100644 --- a/Services/server/src/controllers/subFolderController.ts +++ b/Services/server/src/controllers/subFolderController.ts @@ -32,7 +32,7 @@ if (!DEFAULT_INDEX) throw Error("Default ElasticSearch index must be specified." @Route("/cabinet/{cabinetName}/drawer/{drawerName}/folder/{folderName}/subfolder") export class SubFolderController extends Controller { @Get("/") - @Tags("SubFolder") + @Tags("แฟ้มย่อย") @Security("bearerAuth") @Response( HttpStatusCode.INTERNAL_SERVER_ERROR, @@ -53,7 +53,7 @@ export class SubFolderController extends Controller { } @Post("/") - @Tags("SubFolder") + @Tags("แฟ้มย่อย") @Security("bearerAuth", ["admin"]) @Response(HttpStatusCode.NOT_FOUND, "ไม่พบของแฟ้ม") @Response(HttpStatusCode.INTERNAL_SERVER_ERROR, "เกิดข้อผิดพลาดกับระบบจัดการไฟล์") @@ -91,7 +91,7 @@ export class SubFolderController extends Controller { } @Put("/{subFolderName}") - @Tags("SubFolder") + @Tags("แฟ้มย่อย") @Security("bearerAuth", ["admin"]) @Response(HttpStatusCode.INTERNAL_SERVER_ERROR, "เกิดข้อผิดพลาดไม่สามารถย้ายไฟล์ได้") @SuccessResponse(HttpStatusCode.NO_CONTENT, "สำเร็จ") @@ -149,7 +149,7 @@ export class SubFolderController extends Controller { } @Delete("/{subFolderName}") - @Tags("SubFolder") + @Tags("แฟ้มย่อย") @Security("bearerAuth", ["admin"]) @SuccessResponse(HttpStatusCode.NO_CONTENT, "สำเร็จ") public async deleteFolder( diff --git a/Services/server/src/controllers/subFolderFileController.ts b/Services/server/src/controllers/subFolderFileController.ts index c5eb49a..1a61cd5 100644 --- a/Services/server/src/controllers/subFolderFileController.ts +++ b/Services/server/src/controllers/subFolderFileController.ts @@ -33,8 +33,40 @@ if (!DEFAULT_INDEX) throw Error("Default ElasticSearch index must be specified." "/cabinet/{cabinetName}/drawer/{drawerName}/folder/{folderName}/subfolder/{subFolderName}/file", ) export class SubFolderFileController extends Controller { + @Get("/") + @Tags("ไฟล์") + @Security("bearerAuth") + @SuccessResponse(HttpStatusCode.OK, "สำเร็จ") + public async getFile( + @Path() cabinetName: string, + @Path() drawerName: string, + @Path() folderName: string, + @Path() subFolderName: string, + ): Promise { + const search = await esClient.search }>({ + index: DEFAULT_INDEX!, + query: { + prefix: { + pathname: `${cabinetName}/${drawerName}/${folderName}/${subFolderName}`, + }, + }, + size: 10000, + }); + + const records = search.hits.hits + .map((v) => { + if (v._source) { + const { attachment, ...rest } = v._source; + return rest satisfies EhrFile; + } + }) + .filter((v: EhrFile | undefined): v is EhrFile => !!v); + + return records; + } + @Post("/") - @Tags("SubFolder File") + @Tags("ไฟล์") @Security("bearerAuth", ["admin"]) @Response( HttpStatusCode.NOT_FOUND, @@ -115,40 +147,8 @@ export class SubFolderFileController extends Controller { }; } - @Get("/") - @Tags("SubFolder File") - @Security("bearerAuth") - @SuccessResponse(HttpStatusCode.OK, "สำเร็จ") - public async getFile( - @Path() cabinetName: string, - @Path() drawerName: string, - @Path() folderName: string, - @Path() subFolderName: string, - ): Promise { - const search = await esClient.search }>({ - index: DEFAULT_INDEX!, - query: { - prefix: { - pathname: `${cabinetName}/${drawerName}/${folderName}/${subFolderName}`, - }, - }, - size: 10000, - }); - - const records = search.hits.hits - .map((v) => { - if (v._source) { - const { attachment, ...rest } = v._source; - return rest satisfies EhrFile; - } - }) - .filter((v: EhrFile | undefined): v is EhrFile => !!v); - - return records; - } - @Patch("/{fileName}") - @Tags("SubFolder File") + @Tags("ไฟล์") @Security("bearerAuth", ["admin"]) @Response(HttpStatusCode.NOT_FOUND, "ไม่พบตำแหน่งที่ต้องการสร้างแฟ้ม") @SuccessResponse(HttpStatusCode.OK, "สำเร็จ") @@ -248,7 +248,7 @@ export class SubFolderFileController extends Controller { } @Delete("/{fileName}") - @Tags("SubFolder File") + @Tags("ไฟล์") @Security("bearerAuth", ["admin"]) @SuccessResponse(HttpStatusCode.OK, "สำเร็จ") public async deleteFile( @@ -266,7 +266,8 @@ export class SubFolderFileController extends Controller { } @Get("/{fileName}") - @Tags("Download") + @Tags("ดาวน์โหลด") + @Security("bearerAuth") @SuccessResponse(HttpStatusCode.OK) public async downloadFile( @Path() cabinetName: string, diff --git a/Services/server/src/routes.ts b/Services/server/src/routes.ts index ba1a8e4..d84b67a 100644 --- a/Services/server/src/routes.ts +++ b/Services/server/src/routes.ts @@ -288,6 +288,34 @@ export function RegisterRoutes(app: Router) { } }); // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa + app.get('/cabinet/:cabinetName/drawer/:drawerName/folder/:folderName/file', + authenticateMiddleware([{"bearerAuth":[]}]), + ...(fetchMiddlewares(FileController)), + ...(fetchMiddlewares(FileController.prototype.getFile)), + + function FileController_getFile(request: any, response: any, next: any) { + const args = { + cabinetName: {"in":"path","name":"cabinetName","required":true,"dataType":"string"}, + drawerName: {"in":"path","name":"drawerName","required":true,"dataType":"string"}, + folderName: {"in":"path","name":"folderName","required":true,"dataType":"string"}, + }; + + // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa + + let validatedArgs: any[] = []; + try { + validatedArgs = getValidatedArgs(args, request, response); + + const controller = new FileController(); + + + const promise = controller.getFile.apply(controller, validatedArgs as any); + promiseHandler(controller, promise, response, 200, next); + } catch (err) { + return next(err); + } + }); + // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa app.post('/cabinet/:cabinetName/drawer/:drawerName/folder/:folderName/file', authenticateMiddleware([{"bearerAuth":["admin"]}]), ...(fetchMiddlewares(FileController)), @@ -318,34 +346,6 @@ export function RegisterRoutes(app: Router) { } }); // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa - app.get('/cabinet/:cabinetName/drawer/:drawerName/folder/:folderName/file', - authenticateMiddleware([{"bearerAuth":[]}]), - ...(fetchMiddlewares(FileController)), - ...(fetchMiddlewares(FileController.prototype.getFile)), - - function FileController_getFile(request: any, response: any, next: any) { - const args = { - cabinetName: {"in":"path","name":"cabinetName","required":true,"dataType":"string"}, - drawerName: {"in":"path","name":"drawerName","required":true,"dataType":"string"}, - folderName: {"in":"path","name":"folderName","required":true,"dataType":"string"}, - }; - - // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa - - let validatedArgs: any[] = []; - try { - validatedArgs = getValidatedArgs(args, request, response); - - const controller = new FileController(); - - - const promise = controller.getFile.apply(controller, validatedArgs as any); - promiseHandler(controller, promise, response, 200, next); - } catch (err) { - return next(err); - } - }); - // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa app.patch('/cabinet/:cabinetName/drawer/:drawerName/folder/:folderName/file/:fileName', authenticateMiddleware([{"bearerAuth":["admin"]}]), ...(fetchMiddlewares(FileController)), @@ -691,6 +691,35 @@ export function RegisterRoutes(app: Router) { } }); // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa + app.get('/cabinet/:cabinetName/drawer/:drawerName/folder/:folderName/subfolder/:subFolderName/file', + authenticateMiddleware([{"bearerAuth":[]}]), + ...(fetchMiddlewares(SubFolderFileController)), + ...(fetchMiddlewares(SubFolderFileController.prototype.getFile)), + + function SubFolderFileController_getFile(request: any, response: any, next: any) { + const args = { + cabinetName: {"in":"path","name":"cabinetName","required":true,"dataType":"string"}, + drawerName: {"in":"path","name":"drawerName","required":true,"dataType":"string"}, + folderName: {"in":"path","name":"folderName","required":true,"dataType":"string"}, + subFolderName: {"in":"path","name":"subFolderName","required":true,"dataType":"string"}, + }; + + // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa + + let validatedArgs: any[] = []; + try { + validatedArgs = getValidatedArgs(args, request, response); + + const controller = new SubFolderFileController(); + + + const promise = controller.getFile.apply(controller, validatedArgs as any); + promiseHandler(controller, promise, response, 200, next); + } catch (err) { + return next(err); + } + }); + // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa app.post('/cabinet/:cabinetName/drawer/:drawerName/folder/:folderName/subfolder/:subFolderName/file', authenticateMiddleware([{"bearerAuth":["admin"]}]), ...(fetchMiddlewares(SubFolderFileController)), @@ -722,35 +751,6 @@ export function RegisterRoutes(app: Router) { } }); // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa - app.get('/cabinet/:cabinetName/drawer/:drawerName/folder/:folderName/subfolder/:subFolderName/file', - authenticateMiddleware([{"bearerAuth":[]}]), - ...(fetchMiddlewares(SubFolderFileController)), - ...(fetchMiddlewares(SubFolderFileController.prototype.getFile)), - - function SubFolderFileController_getFile(request: any, response: any, next: any) { - const args = { - cabinetName: {"in":"path","name":"cabinetName","required":true,"dataType":"string"}, - drawerName: {"in":"path","name":"drawerName","required":true,"dataType":"string"}, - folderName: {"in":"path","name":"folderName","required":true,"dataType":"string"}, - subFolderName: {"in":"path","name":"subFolderName","required":true,"dataType":"string"}, - }; - - // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa - - let validatedArgs: any[] = []; - try { - validatedArgs = getValidatedArgs(args, request, response); - - const controller = new SubFolderFileController(); - - - const promise = controller.getFile.apply(controller, validatedArgs as any); - promiseHandler(controller, promise, response, 200, next); - } catch (err) { - return next(err); - } - }); - // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa app.patch('/cabinet/:cabinetName/drawer/:drawerName/folder/:folderName/subfolder/:subFolderName/file/:fileName', authenticateMiddleware([{"bearerAuth":["admin"]}]), ...(fetchMiddlewares(SubFolderFileController)), @@ -814,6 +814,7 @@ export function RegisterRoutes(app: Router) { }); // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa app.get('/cabinet/:cabinetName/drawer/:drawerName/folder/:folderName/subfolder/:subFolderName/file/:fileName', + authenticateMiddleware([{"bearerAuth":[]}]), ...(fetchMiddlewares(SubFolderFileController)), ...(fetchMiddlewares(SubFolderFileController.prototype.downloadFile)), diff --git a/Services/server/src/swagger.json b/Services/server/src/swagger.json index 5d65870..d511595 100644 --- a/Services/server/src/swagger.json +++ b/Services/server/src/swagger.json @@ -214,7 +214,7 @@ } }, "tags": [ - "Cabinet" + "ตู้เอกสาร" ], "security": [ { @@ -234,7 +234,7 @@ } }, "tags": [ - "Cabinet" + "ตู้เอกสาร" ], "security": [ { @@ -276,7 +276,7 @@ } }, "tags": [ - "Cabinet" + "ตู้เอกสาร" ], "security": [ { @@ -325,7 +325,7 @@ } }, "tags": [ - "Cabinet" + "ตู้เอกสาร" ], "security": [ { @@ -368,7 +368,7 @@ } }, "tags": [ - "Drawer" + "ลิ้นชัก" ], "security": [ { @@ -400,7 +400,7 @@ } }, "tags": [ - "Drawer" + "ลิ้นชัก" ], "security": [ { @@ -451,7 +451,7 @@ } }, "tags": [ - "Drawer" + "ลิ้นชัก" ], "security": [ { @@ -505,7 +505,7 @@ } }, "tags": [ - "Drawer" + "ลิ้นชัก" ], "security": [ { @@ -535,6 +535,58 @@ } }, "/cabinet/{cabinetName}/drawer/{drawerName}/folder/{folderName}/file": { + "get": { + "operationId": "GetFile", + "responses": { + "200": { + "description": "สำเร็จ", + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/EhrFile" + }, + "type": "array" + } + } + } + } + }, + "tags": [ + "ไฟล์" + ], + "security": [ + { + "bearerAuth": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "cabinetName", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "drawerName", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "folderName", + "required": true, + "schema": { + "type": "string" + } + } + ] + }, "post": { "operationId": "UploadFile", "responses": { @@ -613,7 +665,7 @@ } }, "tags": [ - "File" + "ไฟล์" ], "security": [ { @@ -682,58 +734,6 @@ } } } - }, - "get": { - "operationId": "GetFile", - "responses": { - "200": { - "description": "สำเร็จ", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/EhrFile" - }, - "type": "array" - } - } - } - } - }, - "tags": [ - "File" - ], - "security": [ - { - "bearerAuth": [] - } - ], - "parameters": [ - { - "in": "path", - "name": "cabinetName", - "required": true, - "schema": { - "type": "string" - } - }, - { - "in": "path", - "name": "drawerName", - "required": true, - "schema": { - "type": "string" - } - }, - { - "in": "path", - "name": "folderName", - "required": true, - "schema": { - "type": "string" - } - } - ] } }, "/cabinet/{cabinetName}/drawer/{drawerName}/folder/{folderName}/file/{fileName}": { @@ -768,7 +768,7 @@ } }, "tags": [ - "File" + "ไฟล์" ], "security": [ { @@ -847,7 +847,7 @@ } }, "tags": [ - "File" + "ไฟล์" ], "security": [ { @@ -989,7 +989,7 @@ } }, "tags": [ - "Download" + "ดาวน์โหลด" ], "security": [ { @@ -1054,7 +1054,7 @@ } }, "tags": [ - "Folder" + "แฟ้ม" ], "security": [ { @@ -1094,7 +1094,7 @@ } }, "tags": [ - "Folder" + "แฟ้ม" ], "security": [ { @@ -1153,7 +1153,7 @@ } }, "tags": [ - "Folder" + "แฟ้ม" ], "security": [ { @@ -1215,7 +1215,7 @@ } }, "tags": [ - "Folder" + "แฟ้ม" ], "security": [ { @@ -1271,7 +1271,7 @@ } }, "tags": [ - "Search" + "ค้นหา" ], "security": [ { @@ -1313,7 +1313,7 @@ } }, "tags": [ - "SubFolder" + "แฟ้มย่อย" ], "security": [ { @@ -1361,7 +1361,7 @@ } }, "tags": [ - "SubFolder" + "แฟ้มย่อย" ], "security": [ { @@ -1428,7 +1428,7 @@ } }, "tags": [ - "SubFolder" + "แฟ้มย่อย" ], "security": [ { @@ -1498,7 +1498,7 @@ } }, "tags": [ - "SubFolder" + "แฟ้มย่อย" ], "security": [ { @@ -1544,6 +1544,66 @@ } }, "/cabinet/{cabinetName}/drawer/{drawerName}/folder/{folderName}/subfolder/{subFolderName}/file": { + "get": { + "operationId": "GetFile", + "responses": { + "200": { + "description": "สำเร็จ", + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/EhrFile" + }, + "type": "array" + } + } + } + } + }, + "tags": [ + "ไฟล์" + ], + "security": [ + { + "bearerAuth": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "cabinetName", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "drawerName", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "folderName", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "subFolderName", + "required": true, + "schema": { + "type": "string" + } + } + ] + }, "post": { "operationId": "UploadFile", "responses": { @@ -1622,7 +1682,7 @@ } }, "tags": [ - "SubFolder File" + "ไฟล์" ], "security": [ { @@ -1699,66 +1759,6 @@ } } } - }, - "get": { - "operationId": "GetFile", - "responses": { - "200": { - "description": "สำเร็จ", - "content": { - "application/json": { - "schema": { - "items": { - "$ref": "#/components/schemas/EhrFile" - }, - "type": "array" - } - } - } - } - }, - "tags": [ - "SubFolder File" - ], - "security": [ - { - "bearerAuth": [] - } - ], - "parameters": [ - { - "in": "path", - "name": "cabinetName", - "required": true, - "schema": { - "type": "string" - } - }, - { - "in": "path", - "name": "drawerName", - "required": true, - "schema": { - "type": "string" - } - }, - { - "in": "path", - "name": "folderName", - "required": true, - "schema": { - "type": "string" - } - }, - { - "in": "path", - "name": "subFolderName", - "required": true, - "schema": { - "type": "string" - } - } - ] } }, "/cabinet/{cabinetName}/drawer/{drawerName}/folder/{folderName}/subfolder/{subFolderName}/file/{fileName}": { @@ -1793,7 +1793,7 @@ } }, "tags": [ - "SubFolder File" + "ไฟล์" ], "security": [ { @@ -1880,7 +1880,7 @@ } }, "tags": [ - "SubFolder File" + "ไฟล์" ], "security": [ { @@ -2030,9 +2030,13 @@ } }, "tags": [ - "Download" + "ดาวน์โหลด" + ], + "security": [ + { + "bearerAuth": [] + } ], - "security": [], "parameters": [ { "in": "path", @@ -2083,5 +2087,28 @@ "url": "/api" } ], + "tags": [ + { + "name": "ตู้เอกสาร" + }, + { + "name": "ลิ้นชัก" + }, + { + "name": "แฟ้ม" + }, + { + "name": "แฟ้มย่อย" + }, + { + "name": "ไฟล์" + }, + { + "name": "ดาวน์โหลด" + }, + { + "name": "ค้นหา" + } + ], "basePath": "/api" } \ No newline at end of file diff --git a/Services/server/tsoa.json b/Services/server/tsoa.json index e88a36b..24383ef 100644 --- a/Services/server/tsoa.json +++ b/Services/server/tsoa.json @@ -25,7 +25,16 @@ "description": "Keycloak Bearer Token", "in": "header" } - } + }, + "tags": [ + { "name": "ตู้เอกสาร" }, + { "name": "ลิ้นชัก" }, + { "name": "แฟ้ม" }, + { "name": "แฟ้มย่อย" }, + { "name": "ไฟล์" }, + { "name": "ดาวน์โหลด" }, + { "name": "ค้นหา" } + ] }, "routes": { "routesDir": "src",