import { defineComponent, ref } from 'vue' import { CTitleBanner } from '../../../components/CTitleBanner' import { CDateTime } from '../../../components/CDateTime' import { CMyFieldDb } from '../../../components/CMyFieldDb' import { useQuasar } from 'quasar' import { useI18n } from 'vue-i18n' import { useUserStore } from '@store/UserStore' import { useGlobalStore } from '@store/globalStore' import { useCircuitStore } from '@store/CircuitStore' import { tools } from '@tools' import { costanti } from '@costanti' import { shared_consts } from '@src/common/shared_vuejs' import type { IOptQueryGM } from '@src/model' export default defineComponent({ name: 'dbopmacro', components: { CTitleBanner, CDateTime, CMyFieldDb }, props: {}, setup() { const $q = useQuasar() const { t } = useI18n() const circuitStore = useCircuitStore() const ris = ref('') const riga = ref(0) const numpersone = ref(7) const date_start = ref(new Date()) const col = ref(0) const placca = ref('') const valmin = ref(200) const circuitId = ref('') const valmax = ref(400) const defmin = ref(shared_consts.CIRCUIT_PARAMS.SCOPERTO_MIN_GRP) const defmax = ref(shared_consts.CIRCUIT_PARAMS.SCOPERTO_MAX_GRP) const defpersmin = ref(100) const defpersmax = ref(200) const search_username = ref('') const search = ref('') const replace_username = ref('') const risultato = ref('') const risultatoHTML = ref('') const incaricamento = ref(false) const globalStore = useGlobalStore() function EseguiFunz(miafunz: string, options?: any, search_username?: string, replace_username?: string, valmin?: number, valmax?: number, circuitId?: string) { const userStore = useUserStore() $q.dialog({ message: t('dialog.continue') + ' ' + miafunz + ' ?', ok: { label: t('dialog.yes'), push: true, }, cancel: { label: t('dialog.cancel'), }, title: 'Funzione:', }).onOk(async () => { const mydata = { dbop: miafunz, riga: riga, col: col, date_start: date_start, numpersone: numpersone, search_username, replace_username, search: search.value, valmin: tools.convstrToNum(valmin), valmax: tools.convstrToNum(valmax), circuitId, options, } incaricamento.value = true $q.loading.show({ message: t('otherpages.update') }) const risfunz = await userStore.execDbOp({ mydata }) if (options?.generateCSV) { const today = new Date() tools.createAndDownloadCSVFromData(risfunz.data.mystr.data, `${options?.filename}_${today.getFullYear()}-${today.getMonth() + 1}-${today.getDate()}`) } $q.loading.hide() await globalStore.loadSite() incaricamento.value = false console.log('risfunz', risfunz) ris.value = '' risultato.value = '' if (risfunz.data && risfunz.data.mystr) { risultato.value = risfunz.data.mystr } }) } async function getListaArg() { risultatoHTML.value = '' risultatoHTML.value = await globalStore.getGM_Lista_Argomenti(true) } async function getTabellaDaGM(options: IOptQueryGM) { risultatoHTML.value = '' risultatoHTML.value = await globalStore.getGM_Tabella(options) } return { EseguiFunz, tools, costanti, search_username, replace_username, valmin, valmax, defmin, defmax, defpersmin, defpersmax, circuitId, circuitStore, incaricamento, ris, risultato, search, globalStore, risultatoHTML, getListaArg, getTabellaDaGM, } }, })