fix:privacy

This commit is contained in:
DESKTOP-1R2VSQH\Lenovo ThinkPad E490 2026-01-19 14:47:32 +07:00
parent 9793df1c57
commit 8b26530d52
6 changed files with 120 additions and 12 deletions

View file

@ -7,6 +7,8 @@ import Camera from 'simple-vue-camera'
import config from '@/app.config'
import http from '@/plugins/http'
import { useCounterMixin } from '@/stores/mixin'
import { usePermissions } from '@/composables/usePermissions'
import { usePrivacyStore } from '@/stores/privacy'
import type { FormRef, OptionReason } from '@/interface/response/checkin'
@ -15,6 +17,8 @@ import MapCheck from '@/components/AscGISMap.vue'
const mixin = useCounterMixin()
const { date2Thai, showLoader, hideLoader, messageError, dialogConfirm } = mixin
const $q = useQuasar()
const { checkCameraPermission, checkLocationPermission } = usePermissions()
const privacyStore = usePrivacyStore()
const modalTime = ref<boolean>(false) // Dailog
const checkStatus = ref<string>('')
@ -261,6 +265,12 @@ async function stopChecking() {
/** function เปิดกล้อง*/
async function openCamera() {
// privacy
if (!checkCameraPermission()) {
return
}
// change camera device
if (cameraIsOn.value) {
await camera.value?.stop()
@ -336,6 +346,11 @@ const timeChickin = ref<string>('') //เวลาเข้างาน,เว
/** function ยืนยันการลงเวลาเข้า - ออก*/
async function confirm() {
// privacy
if (!checkLocationPermission() || !checkCameraPermission()) {
return
}
if (!formLocation.POI || !formLocation.lat || !formLocation.lng) {
mapRef.value?.requestLocationPermission()
return
@ -473,7 +488,11 @@ onMounted(async () => {
isLoadingCheckTime.value = true
updateClock()
startChecking() // status #1
mapRef.value?.requestLocationPermission()
// privacy
if (privacyStore.isAccepted) {
mapRef.value?.requestLocationPermission()
}
})
</script>