diff --git a/.onedev-buildspec.yml b/.onedev-buildspec.yml
index 8ba5b5947..ca8c53977 100644
--- a/.onedev-buildspec.yml
+++ b/.onedev-buildspec.yml
@@ -1,102 +1,103 @@
version: 37
jobs:
- - name: CI for UAT
- steps:
- - !CheckoutStep
- name: checkout code
- cloneCredential: !DefaultCredential {}
- withLfs: false
- withSubmodules: false
- condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
- - !GenerateChecksumStep
- name: generate package checksum
- files: package-lock.json yarn.lock
- targetFile: checksum
- condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
- - !SetupCacheStep
- name: set up npm cache
- key: node_modules_@file:checksum@
- loadKeys:
- - node_modules
- paths:
- - node_modules
- uploadStrategy: UPLOAD_IF_NOT_HIT
- condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
- - !SetBuildVersionStep
- name: set build version
- buildVersion: "@tag@"
- condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
- - !CommandStep
- name: build & test
- runInContainer: true
- image: node
- interpreter: !DefaultInterpreter
- commands: |
- npm install
- npm run build
- useTTY: true
- condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
- - !BuildImageStep
- name: build docker image
- dockerfile: ./docker/Dockerfile
- output: !RegistryOutput
- tags: hrms-git.chin.in.th/bma-hrms/hrms-mgt:@build_version@ hrms-git.chin.in.th/bma-hrms/hrms-mgt:latest
- condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
- triggers:
- - !TagCreateTrigger
- tags: uat-*
- branches: main
- retryCondition: never
- maxRetries: 3
- retryDelay: 30
- timeout: 14400
- - name: CI for PROD
- steps:
- - !CheckoutStep
- name: checkout code
- cloneCredential: !DefaultCredential {}
- withLfs: false
- withSubmodules: false
- condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
- - !GenerateChecksumStep
- name: generate package checksum
- files: package-lock.json yarn.lock
- targetFile: checksum
- condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
- - !SetupCacheStep
- name: set up npm cache
- key: node_modules_@file:checksum@
- loadKeys:
- - node_modules
- paths:
- - node_modules
- uploadStrategy: UPLOAD_IF_NOT_HIT
- condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
- - !SetBuildVersionStep
- name: set build version
- buildVersion: "@tag@"
- condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
- - !CommandStep
- name: build & test
- runInContainer: true
- image: node
- interpreter: !DefaultInterpreter
- commands: |
- npm install
- npm run build
- useTTY: true
- condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
- - !BuildImageStep
- name: build docker image
- dockerfile: ./docker/Dockerfile
- output: !RegistryOutput
- tags: hrms-git.bangkok.go.th/bma-hrms/hrms-mgt:@build_version@ hrms-git.bangkok.go.th/bma-hrms/hrms-mgt:latest
- condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
- triggers:
- - !TagCreateTrigger
- tags: prod-*
- branches: main
- retryCondition: never
- maxRetries: 3
- retryDelay: 30
- timeout: 14400
+- name: CI for UAT
+ steps:
+ - !CheckoutStep
+ name: checkout code
+ cloneCredential: !DefaultCredential {}
+ withLfs: false
+ withSubmodules: false
+ condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
+ - !GenerateChecksumStep
+ name: generate package checksum
+ files: package-lock.json yarn.lock
+ targetFile: checksum
+ condition: NEVER
+ - !SetupCacheStep
+ name: set up npm cache
+ key: node_modules_@file:checksum@
+ loadKeys:
+ - node_modules
+ paths:
+ - node_modules
+ uploadStrategy: UPLOAD_IF_NOT_HIT
+ condition: NEVER
+ - !SetBuildVersionStep
+ name: set build version
+ buildVersion: '@tag@'
+ condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
+ - !CommandStep
+ name: build & test
+ runInContainer: true
+ image: node
+ interpreter: !DefaultInterpreter
+ commands: |
+ npm install
+ npm run build
+ useTTY: true
+ condition: NEVER
+ - !BuildImageStep
+ name: build docker image
+ dockerfile: ./docker/Dockerfile
+ output: !RegistryOutput
+ tags: hrms-git.chin.in.th/bma-hrms/hrms-mgt:@build_version@ hrms-git.chin.in.th/bma-hrms/hrms-mgt:latest
+ platforms: linux/amd64
+ condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
+ triggers:
+ - !TagCreateTrigger
+ tags: uat-*
+ branches: main
+ retryCondition: never
+ maxRetries: 3
+ retryDelay: 30
+ timeout: 14400
+- name: CI for PROD
+ steps:
+ - !CheckoutStep
+ name: checkout code
+ cloneCredential: !DefaultCredential {}
+ withLfs: false
+ withSubmodules: false
+ condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
+ - !GenerateChecksumStep
+ name: generate package checksum
+ files: package-lock.json yarn.lock
+ targetFile: checksum
+ condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
+ - !SetupCacheStep
+ name: set up npm cache
+ key: node_modules_@file:checksum@
+ loadKeys:
+ - node_modules
+ paths:
+ - node_modules
+ uploadStrategy: UPLOAD_IF_NOT_HIT
+ condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
+ - !SetBuildVersionStep
+ name: set build version
+ buildVersion: '@tag@'
+ condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
+ - !CommandStep
+ name: build & test
+ runInContainer: true
+ image: node
+ interpreter: !DefaultInterpreter
+ commands: |
+ npm install
+ npm run build
+ useTTY: true
+ condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
+ - !BuildImageStep
+ name: build docker image
+ dockerfile: ./docker/Dockerfile
+ output: !RegistryOutput
+ tags: hrms-git.bangkok.go.th/bma-hrms/hrms-mgt:@build_version@ hrms-git.bangkok.go.th/bma-hrms/hrms-mgt:latest
+ condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
+ triggers:
+ - !TagCreateTrigger
+ tags: prod-*
+ branches: main
+ retryCondition: never
+ maxRetries: 3
+ retryDelay: 30
+ timeout: 14400
diff --git a/src/modules/02_organization/components/MainView.vue b/src/modules/02_organization/components/MainView.vue
index f4ba6ca58..bd35e4bd4 100644
--- a/src/modules/02_organization/components/MainView.vue
+++ b/src/modules/02_organization/components/MainView.vue
@@ -327,22 +327,31 @@ onMounted(async () => {
-