refactor code & fixed location

This commit is contained in:
Warunee Tamkoo 2026-04-27 19:21:23 +07:00
parent 41c1aa8e45
commit 487a6b520e
23 changed files with 566 additions and 145 deletions

View file

@ -8,7 +8,7 @@ const mixin = useCounterMixin()
const { date2Thai } = mixin
/** store for checkin history*/
export const useChekIn = defineStore('checkin', () => {
export const useCheckIn = defineStore('checkin', () => {
const year = ref<number>(calculateFiscalYear(new Date())) //ปีงบประมาณ
const rows = ref<Datalist[]>([])
const tab = ref<string>('history')

View file

@ -1,65 +1,66 @@
import { ref } from 'vue'
import { defineStore } from 'pinia'
import type { KeycloakPosition } from '@/interface/keycloak-position'
export const usePositionKeycloakStore = defineStore('positionKeycloak', () => {
const menuData = ref<string[]>([
'ลงเวลาปฏิบัติงาน',
'ประวัติการลงเวลา',
'รายการลงเวลากรณีพิเศษ',
])
const dataPositionKeycloak = ref<any>(null)
export const usePositionKeycloakStore = defineStore(
'positionKeycloak',
() => {
const menuData = ref<string[]>([
'ลงเวลาปฏิบัติงาน',
'ประวัติการลงเวลา',
'รายการลงเวลากรณีพิเศษ',
])
const dataPositionKeycloak = ref<KeycloakPosition | null>(null)
function setPositionKeycloak(data: any) {
dataPositionKeycloak.value = data
}
function findOrgName(obj: any) {
if (obj) {
let name =
obj.child4 != null &&
obj.child4 !== '' &&
obj.child3 != null &&
obj.child3 !== ''
? obj.child4 + (obj.child3 ? '/' : '')
: obj.child4 != null && obj.child4 !== ''
? obj.child4
: ''
name +=
obj.child3 != null &&
obj.child3 !== '' &&
obj.child2 != null &&
obj.child2 !== ''
? obj.child3 + (obj.child2 ? '/' : '')
: obj.child3 != null && obj.child3 !== ''
? obj.child3
: ''
name +=
obj.child2 != null &&
obj.child2 !== '' &&
obj.child1 != null &&
obj.child1 !== ''
? obj.child2 + (obj.child1 ? '/' : '')
: obj.child2 != null && obj.child2 !== ''
? obj.child2
: ''
name +=
obj.child1 != null &&
obj.child1 !== '' &&
obj.root != null &&
obj.root !== ''
? obj.child1 + (obj.root ? '/' : '')
: obj.child1 != null && obj.child1 !== ''
? obj.child1
: ''
name += obj.root != null && obj.root !== '' ? obj.root : ''
return name == '' ? '-' : name
} else {
return ''
function setPositionKeycloak(data: KeycloakPosition) {
dataPositionKeycloak.value = data
}
}
return { setPositionKeycloak, dataPositionKeycloak, findOrgName, menuData }
})
/**
* Keycloak position ( logout)
*/
function clearPositionKeycloak() {
dataPositionKeycloak.value = null
// ลบ localStorage ด้วยเพื่อให้แน่ใจว่าข้อมูลหายจริง
localStorage.removeItem('positionKeycloak')
}
/**
*
* @param obj child4 -> child3 -> child2 -> child1 -> root
* @returns string /
*/
function findOrgName(obj: KeycloakPosition | null): string {
if (!obj?.organization) {
return ''
}
const org = obj.organization
const levels = ['child4', 'child3', 'child2', 'child1', 'root'] as const
const parts: string[] = []
for (const level of levels) {
const value = org[level]
if (value) {
parts.push(value)
}
}
return parts.length > 0 ? parts.join('/') : '-'
}
return {
setPositionKeycloak,
clearPositionKeycloak,
dataPositionKeycloak,
findOrgName,
menuData,
}
},
{
persist: {
key: 'positionKeycloak',
storage: localStorage, // ใช้ localStorage เพื่อให้ข้อมูลอยู่ถาวร
},
}
)