diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml new file mode 100644 index 000000000..ddb52c479 --- /dev/null +++ b/.forgejo/workflows/build.yaml @@ -0,0 +1,50 @@ +# /.forgejo/workflows/build.yml +name: Build + +# on: + # push: + # tags: + # - "v[0-9]+.[0-9]+.[0-9]+" + # - "v[0-9]+.[0-9]+.[0-9]+*" + # workflow_dispatch: + +env: + REGISTRY: ${{ vars.CONTAINER_REGISTRY }} + REGISTRY_USERNAME: ${{ vars.CONTAINER_REGISTRY_USERNAME }} + REGISTRY_PASSWORD: ${{ secrets.CONTAINER_REGISTRY_PASSWORD }} + CONTAINER_IMAGE_NAME: ${{ vars.CONTAINER_REGISTRY }}/${{ vars.CONTAINER_IMAGE_OWNER }}/${{ vars.CONTAINER_IMAGE_NAME }} + IMAGE_VERSION: build + +jobs: + build: + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@v4 + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v2 + with: + config-inline: | + [registry."${{ env.REGISTRY }}"] + ca=["/etc/ssl/certs/ca-certificates.crt"] + - name: Tag Version + run: | + if [[ "${{ github.event_name }}" == "push" ]]; then + echo "IMAGE_VERSION=${{ github.ref_name }}" | sed 's/v//g' >> $GITHUB_ENV + else + echo "IMAGE_VERSION=${{ env.IMAGE_VERSION }}-${{ github.run_number }}" >> $GITHUB_ENV + fi + - name: Login in to registry + uses: docker/login-action@v2 + with: + registry: ${{ env.REGISTRY }} + username: ${{ env.REGISTRY_USERNAME }} + password: ${{ env.REGISTRY_PASSWORD }} + - name: Build and push docker image + uses: docker/build-push-action@v3 + with: + platforms: linux/amd64 + context: . + file: ./docker/Dockerfile + tags: ${{ env.CONTAINER_IMAGE_NAME }}:latest,${{ env.CONTAINER_IMAGE_NAME }}:${{ env.IMAGE_VERSION }} + push: true diff --git a/.forgejo/workflows/ci-cd.yaml b/.forgejo/workflows/ci-cd.yaml new file mode 100644 index 000000000..2bf102922 --- /dev/null +++ b/.forgejo/workflows/ci-cd.yaml @@ -0,0 +1,86 @@ +# /.forgejo/workflows/ci-cd.yml +name: Build & Deploy on Dev + +on: + push: + # branches: + # - dev + tags: + - "v[0-9]+.[0-9]+.[0-9]+" + - "v[0-9]+.[0-9]+.[0-9]+*" + workflow_dispatch: + +env: + REGISTRY: ${{ vars.CONTAINER_REGISTRY }} + REGISTRY_USERNAME: ${{ vars.CONTAINER_REGISTRY_USERNAME }} + REGISTRY_PASSWORD: ${{ secrets.CONTAINER_REGISTRY_PASSWORD }} + CONTAINER_IMAGE_NAME: ${{ vars.CONTAINER_REGISTRY }}/${{ vars.CONTAINER_IMAGE_OWNER }}/${{ vars.CONTAINER_IMAGE_NAME }} + IMAGE_VERSION: latest + DISCORD_WEBHOOK: ${{ vars.DISCORD_WEBHOOK }} + +jobs: + build: + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@v4 + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v2 + with: + config-inline: | + [registry."${{ env.REGISTRY }}"] + ca=["/etc/ssl/certs/ca-certificates.crt"] + - name: Tag Version + run: | + if [ "${{ github.ref_type }}" == "tag" ]; then + echo "IMAGE_VERSION=${{ github.ref_name }}" >> $GITHUB_ENV + else + echo "IMAGE_VERSION=latest" >> $GITHUB_ENV + fi + - name: Login in to registry + uses: docker/login-action@v2 + with: + registry: ${{ env.REGISTRY }} + username: ${{ env.REGISTRY_USERNAME }} + password: ${{ env.REGISTRY_PASSWORD }} + - name: Build and push docker image + uses: docker/build-push-action@v3 + with: + platforms: linux/amd64 + context: . + file: ./docker/Dockerfile + tags: ${{ env.CONTAINER_IMAGE_NAME }}:latest,${{ env.CONTAINER_IMAGE_NAME }}:${{ env.IMAGE_VERSION }} + push: true + - name: Remote Deploy + uses: appleboy/ssh-action@v1.2.1 + with: + host: ${{ vars.SSH_DEPLOY_HOST }} + port: ${{ vars.SSH_DEPLOY_PORT }} + username: ${{ secrets.SSH_DEPLOY_USER }} + password: ${{ secrets.SSH_DEPLOY_PASSWORD }} + script: | + cd ~/repo + ./replace-env.sh APP_MGT "${{ env.IMAGE_VERSION }}" + ./deploy.sh hrms-mgt + + - name: Discord Notification + if: always() + run: | + STATUS="${{ job.status == 'success' && '✅ Success' || '❌ Failed' }}" + COLOR="${{ job.status == 'success' && '3066993' || '15158332' }}" + TIMESTAMP=$(date -u +%Y-%m-%dT%H:%M:%SZ) + curl -H "Content-Type: application/json" \ + -X POST \ + -d "{ + \"embeds\": [{ + \"title\": \"$STATUS\", + \"description\": \"**Build & Deploy**\\n- Image: \`${{ env.CONTAINER_IMAGE_NAME }}\`\\n- Version: \`${{ env.IMAGE_VERSION }}\`\\n- By: \`${{ github.actor }}\`\", + \"color\": $COLOR, + \"footer\": { + \"text\": \"Release Notification\", + \"icon_url\": \"https://example.com/success-icon.png\" + }, + \"timestamp\": \"$TIMESTAMP\" + }] + }" \ + ${{ env.DISCORD_WEBHOOK }} diff --git a/.forgejo/workflows/deploy.yml b/.forgejo/workflows/deploy.yml new file mode 100644 index 000000000..2e395ae1f --- /dev/null +++ b/.forgejo/workflows/deploy.yml @@ -0,0 +1,29 @@ +name: Build + +on: + workflow_dispatch: + inputs: + version: + description: "Version to deploy" + type: string + required: false + default: "latest" + +env: + IMAGE_VERSION: build + +jobs: + deploy: + runs-on: ubuntu-latest + steps: + - name: Remote Deploy + uses: appleboy/ssh-action@v1.2.1 + with: + host: ${{ vars.SSH_DEPLOY_HOST }} + port: ${{ vars.SSH_DEPLOY_PORT }} + username: ${{ secrets.SSH_DEPLOY_USER }} + password: ${{ secrets.SSH_DEPLOY_PASSWORD }} + script: | + cd ~/repo + ./replace-env.sh APP_MGT "${{ inputs.version }}" + ./deploy.sh hrms-mgt diff --git a/src/modules/04_registryPerson/components/detail/PersonalInformation/02_NameChangeHistory.vue b/src/modules/04_registryPerson/components/detail/PersonalInformation/02_NameChangeHistory.vue index a4c9efd6b..cbe7f361e 100644 --- a/src/modules/04_registryPerson/components/detail/PersonalInformation/02_NameChangeHistory.vue +++ b/src/modules/04_registryPerson/components/detail/PersonalInformation/02_NameChangeHistory.vue @@ -59,7 +59,6 @@ const changeNameData = reactive({ profileId: profileId.value, prefixId: "", // id คำนำหน้า prefix: "", // คำนำหน้า - rank: "", // ยศ firstName: "", // ชื่อ lastName: "", // นามสกุล status: "", // สถานะ @@ -70,13 +69,11 @@ const selection = ref([]); // ตัวเลือก const prefixChange = ref(""); // เปลี่ยนคำนำหน้า const firstNameChange = ref(""); // เปลียนชื่อ const lastNameChange = ref(""); // เปลี่ยนนามสกุล -const rankChange = ref(""); // เปลี่ยนยศ const profileInfo = ref(); // ข้อมูล Profile const statusOption = ref([ "เปลี่ยนคำนำหน้าชื่อ", - "เปลี่ยนยศ", "เปลี่ยนชื่อ", "เปลี่ยนนามสกุล", "เปลี่ยนชื่อ-นามสกุล", @@ -87,7 +84,6 @@ const statusOption = ref([ const statusOptionFilter = ref([ "เปลี่ยนคำนำหน้าชื่อ", "เปลี่ยนชื่อ", - "เปลี่ยนยศ", "เปลี่ยนนามสกุล", "เปลี่ยนชื่อ-นามสกุล", "เปลี่ยนคำนำหน้าชื่อ และชื่อ", @@ -111,17 +107,6 @@ const columns = ref([ sort: (a: string, b: string) => a.localeCompare(b, undefined, { numeric: true, sensitivity: "base" }), }, - { - name: "rank", - align: "left", - label: "ยศ", - sortable: true, - field: "rank", - headerStyle: "font-size: 14px", - style: "font-size: 14px", - sort: (a: string, b: string) => - a.localeCompare(b, undefined, { numeric: true, sensitivity: "base" }), - }, { name: "firstName", align: "left", @@ -171,7 +156,6 @@ const columns = ref([ ]); const visibleColumns = ref([ "prefix", - "rank", "firstName", "lastName", "lastUpdateFullName", @@ -231,7 +215,6 @@ function onSubmit() { firstName: changeNameData.firstName, lastName: changeNameData.lastName, status: changeNameData.status, - rank: changeNameData.rank, documentId: changeNameData.documentId, }) .then(async (res) => { @@ -363,14 +346,6 @@ function filterSelector(val: string, update: Function, refData: string) { ); }); break; - - case "rankOps": - update(() => { - store.Ops.rankOps = store.OpsFilter.rankOps.filter( - (v: DataOption) => v.name.indexOf(val) > -1 - ); - }); - break; default: break; } @@ -415,14 +390,12 @@ watch( changeNameData.prefix, changeNameData.firstName, changeNameData.lastName, - changeNameData.rank, ], () => { submitDisable.value = changeNameData.prefix === prefixChange.value && changeNameData.firstName === firstNameChange.value && - changeNameData.lastName === lastNameChange.value && - changeNameData.rank === rankChange.value; + changeNameData.lastName === lastNameChange.value; } ); @@ -438,9 +411,6 @@ watch( if (!selection.value.includes("lastname")) { changeNameData.lastName = lastNameChange.value; } - if (!selection.value.includes("rank")) { - changeNameData.rank = rankChange.value; - } } ); /** ทำงานเมื่อ Components ถูกเรียกใช้งาน*/ @@ -475,14 +445,12 @@ onMounted(async () => { icon="add" @click=" () => { - changeNameData.prefix = profileInfo?.prefix; + changeNameData.prefix = profileInfo?.prefixMain; changeNameData.firstName = profileInfo?.firstName; changeNameData.lastName = profileInfo?.lastName; - changeNameData.rank = profileInfo?.rank; prefixChange = changeNameData.prefix; firstNameChange = changeNameData.firstName; lastNameChange = changeNameData.lastName; - rankChange = changeNameData.rank; changeNameData.status = ''; dialogStatus = 'create'; submitDisable = true; @@ -595,17 +563,12 @@ onMounted(async () => {
-
+
- { ) " />
-
- -