251128:1700 Backend to T3.1.1

This commit is contained in:
admin
2025-11-28 17:12:05 +07:00
parent 43f6bd1f40
commit 6cafa6a2b9
51 changed files with 4891 additions and 2849 deletions

View File

@@ -123,36 +123,51 @@
],
"eslint.alwaysShowStatus": true,
"eslint.format.enable": false,
"eslint.workingDirectories": ["./backend", "./frontend"],
"eslint.lintTask.enable": true,
"eslint.workingDirectories": [
"./backend",
"./frontend"
],
// ========================================
// PATH INTELLISENSE - ไม่มี src folder
// ========================================
"path-intellisense.mappings": {
// Backend paths (ไม่มี src)
"@backend": "${workspaceFolder:🔧 Backend}",
"@backend/*": "${workspaceFolder:🔧 Backend}/*",
"@modules": "${workspaceFolder:🔧 Backend}/modules",
"@common": "${workspaceFolder:🔧 Backend}/common",
"@config": "${workspaceFolder:🔧 Backend}/config",
"@utils": "${workspaceFolder:🔧 Backend}/utils",
"@entities": "${workspaceFolder:🔧 Backend}/entities",
"@dto": "${workspaceFolder:🔧 Backend}/dto",
// Backend paths
"@backend": "${workspaceFolder:🔧 Backend (NestJS)}/src",
"@backend/*": "${workspaceFolder:🔧 Backend (NestJS)}/src/*",
"@modules": "${workspaceFolder:🔧 Backend (NestJS)}/src/modules",
"@common": "${workspaceFolder:🔧 Backend (NestJS)}/src/common",
"@config": "${workspaceFolder:🔧 Backend (NestJS)}/src/common/config",
"@circulation": "${workspaceFolder:🔧 Backend (NestJS)}/src/modules/circulation",
"@correspondence": "${workspaceFolder:🔧 Backend (NestJS)}/src/modules/correspondence",
"@document-numbering": "${workspaceFolder:🔧 Backend (NestJS)}/src/modules/document-numbering",
"@drawing": "${workspaceFolder:🔧 Backend (NestJS)}/src/modules/drawing",
"@json-schema": "${workspaceFolder:🔧 Backend (NestJS)}/src/modules/json-schema",
"@master": "${workspaceFolder:🔧 Backend (NestJS)}/src/modules/master",
"@monitoring": "${workspaceFolder:🔧 Backend (NestJS)}/src/modules/monitoring",
"@notification": "${workspaceFolder:🔧 Backend (NestJS)}/src/modules/notification",
"@project": "${workspaceFolder:🔧 Backend (NestJS)}/src/modules/project",
"@rfa": "${workspaceFolder:🔧 Backend (NestJS)}/src/modules/rfa",
"@search": "${workspaceFolder:🔧 Backend (NestJS)}/src/modules/search",
"@transmittal": "${workspaceFolder:🔧 Backend (NestJS)}/src/modules/transmittal",
"@users": "${workspaceFolder:🔧 Backend (NestJS)}/src/modules/users",
"@workflow-engine": "${workspaceFolder:🔧 Backend (NestJS)}/src/modules/workflow-engine",
// Frontend paths (ไม่มี src)
"@": "${workspaceFolder:🎨 Frontend}",
"@/*": "${workspaceFolder:🎨 Frontend}/*",
"@components": "${workspaceFolder:🎨 Frontend}/components",
"@hooks": "${workspaceFolder:🎨 Frontend}/hooks",
"@utils": "${workspaceFolder:🎨 Frontend}/utils",
"@lib": "${workspaceFolder:🎨 Frontend}/lib",
"@types": "${workspaceFolder:🎨 Frontend}/types",
"@api": "${workspaceFolder:🎨 Frontend}/api",
"@styles": "${workspaceFolder:🎨 Frontend}/styles",
"@assets": "${workspaceFolder:🎨 Frontend}/assets",
"@store": "${workspaceFolder:🎨 Frontend}/store",
"@contexts": "${workspaceFolder:🎨 Frontend}/contexts"
"@": "${workspaceFolder:🎨 Frontend (React/Next.js)}/app",
"@/*": "${workspaceFolder:🎨 Frontend (React/Next.js)}/app/*",
"@app": "${workspaceFolder:🎨 Frontend (React/Next.js)}/app",
"@components": "${workspaceFolder:🎨 Frontend (React/Next.js)}/components",
"@config": "${workspaceFolder:🎨 Frontend (React/Next.js)}/config",
"@lib": "${workspaceFolder:🎨 Frontend (React/Next.js)}/lib",
"@hooks": "${workspaceFolder:🎨 Frontend (React/Next.js)}/app/hooks",
"@utils": "${workspaceFolder:🎨 Frontend (React/Next.js)}/utils",
"@providers": "${workspaceFolder:🎨 Frontend (React/Next.js)}/providers",
"@public": "${workspaceFolder:🎨 Frontend (React/Next.js)}/public",
"@styles": "${workspaceFolder:🎨 Frontend (React/Next.js)}/styles",
"@types": "${workspaceFolder:🎨 Frontend (React/Next.js)}/types",
"@api": "${workspaceFolder:🎨 Frontend (React/Next.js)}/app/api",
},
"path-intellisense.autoSlashAfterDirectory": true,
"path-intellisense.extensionOnImport": false,
@@ -187,7 +202,7 @@
// ระบุที่ตั้งของ tailwind.config (ถ้ามี)
"tailwindCSS.experimental.configFile": {
"frontend/tailwind.config.js": "frontend/**",
//"backend/tailwind.config.js": "backend/**",
"frontend/tailwind.config.ts": "frontend/**"
},
@@ -261,9 +276,18 @@
// TODO TREE
// ========================================
"todo-tree.general.tags": ["TODO", "FIXME", "BUG", "HACK", "NOTE", "XXX"],
"todo-tree.general.tags": [
"TODO",
"FIXME",
"BUG",
"HACK",
"NOTE",
"XXX",
"[ ]",
"[x]"
],
"todo-tree.highlights.enabled": true,
"todo-tree.tree.showInExplorer": true,
"todo-tree.tree.showScanModeButton": true,
"todo-tree.filtering.excludeGlobs": [
"**/node_modules",
"**/dist",
@@ -290,6 +314,11 @@
"icon": "note",
"iconColour": "#3498DB",
"foreground": "#3498DB"
},
"HACK": {
"icon": "tools",
"iconColour": "#FFA500",
"foreground": "#FFA500"
}
},
@@ -302,7 +331,13 @@
"gitlens.currentLine.format": "${author}, ${agoOrDate}",
"gitlens.codeLens.enabled": true,
"gitlens.codeLens.authors.enabled": false,
"gitlens.codeLens.recentChange.enabled": true,
"gitlens.hovers.enabled": true,
"gitlens.blame.format": "${author|10} ${agoOrDate|14-}",
"gitlens.blame.highlight.enabled": false,
"gitlens.views.repositories.location": "scm",
"gitlens.views.fileHistory.location": "explorer",
"gitlens.views.lineHistory.location": "explorer",
// ========================================
// GIT
@@ -313,6 +348,8 @@
"git.autofetchPeriod": 180,
"git.confirmSync": false,
"git.enableSmartCommit": true,
"git.postCommitCommand": "none",
"git.untrackedChanges": "separate",
"git.openRepositoryInParentFolders": "always",
// ========================================
@@ -323,6 +360,9 @@
"importCost.largePackageSize": 100,
"importCost.mediumPackageSize": 50,
"importCost.smallPackageSize": 20,
"importCost.largePackageColor": "#FF2D00",
"importCost.mediumPackageColor": "#FF8C00",
"importCost.smallPackageColor": "#98C379",
// ========================================
// JAVASCRIPT/TYPESCRIPT
@@ -332,12 +372,15 @@
"javascript.updateImportsOnFileMove.enabled": "always",
"javascript.inlayHints.parameterNames.enabled": "all",
"javascript.inlayHints.functionLikeReturnTypes.enabled": true,
"javascript.inlayHints.variableTypes.enabled": true,
"javascript.preferences.importModuleSpecifier": "relative",
"typescript.suggest.autoImports": true,
"typescript.updateImportsOnFileMove.enabled": "always",
"typescript.inlayHints.parameterNames.enabled": "all",
"typescript.inlayHints.functionLikeReturnTypes.enabled": true,
"typescript.inlayHints.variableTypes.enabled": false,
"typescript.inlayHints.propertyDeclarationTypes.enabled": true,
"typescript.preferences.importModuleSpecifier": "relative",
"typescript.tsdk": "node_modules/typescript/lib",
@@ -350,19 +393,21 @@
"typescript": "typescriptreact"
},
"emmet.triggerExpansionOnTab": true,
"emmet.showSuggestionsAsSnippets": true,
// ========================================
// FILES
// ========================================
"files.autoSave": "onFocusChange",
//"files.autoSave": "onFocusChange",
"files.trimTrailingWhitespace": true,
"files.insertFinalNewline": true,
"files.encoding": "utf8",
"files.eol": "\n",
"files.associations": {
"*.css": "tailwindcss",
".env*": "dotenv"
".env*": "dotenv",
"*.md": "markdown"
},
"files.exclude": {
@@ -373,15 +418,19 @@
"**/dist": true,
"**/build": true,
"**/.turbo": true,
"**/coverage": true
"**/coverage": true,
"**/.nyc_output": true,
"**/*.log": true
},
"files.watcherExclude": {
"**/.git/objects/**": true,
"**/.git/subtree-cache/**": true,
"**/node_modules/**": true,
"**/.next/**": true,
"**/dist/**": true,
"**/build/**": true
"**/build/**": true,
"**/.turbo/**": true
},
// ========================================
@@ -393,11 +442,15 @@
"**/dist": true,
"**/build": true,
"**/.next": true,
"**/.turbo": true,
"**/coverage": true,
"**/.nyc_output": true,
"**/yarn.lock": true,
"**/package-lock.json": true,
"**/pnpm-lock.yaml": true
"**/pnpm-lock.yaml": true,
"**/*.log": true
},
"search.followSymlinks": false,
"search.useIgnoreFiles": true,
"search.smartCase": true,
@@ -405,10 +458,12 @@
// TERMINAL
// ========================================
"terminal.integrated.fontSize": 13,
"terminal.integrated.fontSize": 14,
"terminal.integrated.lineHeight": 1.2,
"terminal.integrated.smoothScrolling": true,
"terminal.integrated.defaultProfile.windows": "Git Bash",
"terminal.integrated.cursorBlinking": true,
"terminal.integrated.fontFamily": "MesloLGS NF, Consolas, monospace",
"terminal.integrated.defaultProfile.windows": "PowerShell",
"terminal.integrated.cwd": "${workspaceFolder}",
// ========================================
@@ -420,8 +475,20 @@
"workbench.tree.indent": 15,
"workbench.list.smoothScrolling": true,
"workbench.editor.enablePreview": false,
"workbench.editor.limit.enabled": true,
"workbench.editor.limit.value": 10,
"workbench.startupEditor": "welcomePage",
"workbench.colorCustomizations": {
"[One Dark Pro]": {
"activityBarBadge.background": "#FF8C00",
"list.activeSelectionForeground": "#FF8C00",
"list.inactiveSelectionForeground": "#FF8C00",
"list.highlightForeground": "#FF8C00",
"scrollbarSlider.activeBackground": "#FF8C0050",
"editorSuggestWidget.highlightForeground": "#FF8C00",
"textLink.foreground": "#FF8C00"
}
},
// ========================================
// EXPLORER
// ========================================
@@ -443,29 +510,44 @@
"*.jsx": "${capture}.test.jsx, ${capture}.spec.jsx"
},
// ========================================
// BREADCRUMBS
// ========================================
"breadcrumbs.enabled": true,
"breadcrumbs.filePath": "on",
"breadcrumbs.symbolPath": "on",
// ========================================
// JEST
// ========================================
"jest.autoRun": "off",
"jest.showCoverageOnLoad": false,
"jest.rootPath": "backend",
// ========================================
// DOCKER
// ========================================
"docker.languageserver.formatter.ignoreMultilineInstructions": true,
"docker.showStartPage": false,
// ========================================
// YAML
// ========================================
"yaml.schemas": {
"https://json.schemastore.org/github-workflow.json": ".github/workflows/*.{yml,yaml}",
"https://json.schemastore.org/github-action.json": "action.{yml,yaml}",
"https://json.schemastore.org/prettierrc.json": ".prettierrc.{yml,yaml}",
"https://json.schemastore.org/docker-compose.json": "docker-compose*.{yml,yaml}"
},
"yaml.format.enable": true,
"yaml.format.singleQuote": false,
"yaml.format.bracketSpacing": true,
"yaml.validate": true,
"yaml.hover": true,
"yaml.completion": true,
// ========================================
// REST CLIENT
@@ -481,15 +563,32 @@
"apiUrl": "http://localhost:3000"
},
"production": {
"apiUrl": "https://api.yourdomain.com"
"apiUrl": "https://lcbp3.nap-dms.work"
}
},
// ========================================
// CONSOLE NINJA
// ========================================
"console-ninja.featureSet": "Community",
"console-ninja.toolsToEnableSupportAutomaticallyFor": {
"live-server-extension": true,
"live-preview-extension": true
},
// ========================================
// MATERIAL ICON THEME
// ========================================
"material-icon-theme.folders.theme": "specific",
"material-icon-theme.folders.color": "#90a4ae",
"material-icon-theme.files.associations": {
"*.env.local": "Tune",
"*.env.development": "Tune",
"*.env.production": "Tune",
"docker-compose.*.yml": "Docker"
},
"material-icon-theme.folders.associations": {
"hooks": "Custom",
"utils": "Helper",
@@ -503,13 +602,32 @@
"config": "Config"
},
// ========================================
// NPM INTELLISENSE
// ========================================
"npm-intellisense.importES6": true,
"npm-intellisense.importQuotes": "'",
"npm-intellisense.importLinebreak": ";\n",
"npm-intellisense.importDeclarationType": "const",
// ========================================
// PERFORMANCE
// ========================================
"files.maxMemoryForLargeFilesMB": 4096,
"telemetry.telemetryLevel": "off",
"security.workspace.trust.untrustedFiles": "open"
"security.workspace.trust.untrustedFiles": "open",
"extensions.ignoreRecommendations": false,
// ========================================
// DEBUGGING
// ========================================
"debug.console.fontSize": 13,
"debug.console.lineHeight": 1.2,
"debug.internalConsoleOptions": "openOnSessionStart",
"debug.openDebug": "openOnDebugBreak",
"debug.showBreakpointsInOverviewRuler": true
},
// ========================================
@@ -698,7 +816,6 @@
"formulahendry.auto-rename-tag",
"ms-azuretools.vscode-docker",
"mtxr.sqltools",
"mongodb.mongodb-vscode",
"redhat.vscode-yaml",
"mikestead.dotenv",
"editorconfig.editorconfig",