Files
NSG_PORTAL_V2/stores/poll-response.ts
T

40 lines
1.2 KiB
TypeScript
Raw Normal View History

import type { PollResponse } from "~/server/models/poll-response"
export const usePollResponseStore = defineStore('usePollResponseStore', () => {
const currentPollResponse = shallowReactive<PollResponse>({})
const currentPollResponses = shallowRef<PollResponse[]>([])
const create = async (pollResponse: any) => {
try {
const { data } = await useFetch<any>(`/api/services/poll-response`, {
method: 'POST',
body: pollResponse
})
data.value && (Object.assign(currentPollResponse, data.value))
return currentPollResponse
} catch (error) {
2024-06-06 13:29:22 +07:00
}
}
async function fetchByPollId(id: string) {
try {
const { data } = await useFetch<any>(`/api/services/poll-response/pollId`, {
query: {
pollId: id
}
})
data.value && (currentPollResponses.value = data.value)
return currentPollResponses.value
} catch (error) { }
}
return { currentPollResponse, currentPollResponses, create, fetchByPollId }
2024-06-06 13:29:22 +07:00
})
if (import.meta.hot) {
import.meta.hot.accept(acceptHMRUpdate(usePollResponseStore, import.meta.hot))
2024-06-06 13:29:22 +07:00
}