| | |
| | | import { ref, watch } from 'vue' |
| | | import { computed, ref, watch } from 'vue' |
| | | import { defineStore } from 'pinia' |
| | | import type { CraftModel } from '@/api/craftModel' |
| | | import { apiGetCraftModelList } from '@/api' |
| | | import { useTasksStore } from '@/stores/tasks' |
| | | |
| | | const watcher = ref() |
| | | |
| | | const page = ref(1) |
| | | const total = ref(0) |
| | | export const useCraftModelStore = defineStore('craftModel', () => { |
| | | const craftModelList = ref<CraftModel[]>() |
| | | const craftModelList = ref<CraftModel[]>([]) |
| | | const taskStore = useTasksStore() |
| | | function getCraftModelList() { |
| | | if (taskStore.activeTask?.Procedure.ID) { |
| | | apiGetCraftModelList({ |
| | | procedureId: taskStore.activeTask?.Procedure.ID, |
| | | page: 1, |
| | | pageSize: 999 |
| | | }).then((res) => { |
| | | craftModelList.value = res.data ?? [] |
| | | }) |
| | | craftModelList.value = [] |
| | | const procedureModel = taskStore.activeTask?.ProcedureModel |
| | | const craftObj = [ |
| | | { |
| | | ID: Number(taskStore.activeTask?.Procedure?.productProcedureID), |
| | | CreatedAt: taskStore.activeTask?.Procedure?.CreatedAt, |
| | | UpdatedAt: taskStore.activeTask?.Procedure?.UpdatedAt, |
| | | DeletedAt: taskStore.activeTask?.Procedure?.DeletedAt, |
| | | number: procedureModel?.number, |
| | | product: procedureModel?.product, |
| | | procedure: procedureModel?.procedure, |
| | | Params: '', |
| | | paramsMap: procedureModel?.paramsMap, |
| | | deviceId: '', |
| | | isUpdate: false, |
| | | newParamsMap: '', |
| | | newNumber: '' |
| | | } |
| | | ] |
| | | craftModelList.value = craftObj ?? [] |
| | | |
| | | // apiGetCraftModelList({ |
| | | // procedureId: taskStore.activeTask?.Procedure.ID, |
| | | // page: page.value, |
| | | // pageSize: 6 |
| | | // }).then((res) => { |
| | | // craftModelList.value = res.data ?? [] |
| | | // total.value = res.total |
| | | // }) |
| | | } |
| | | } |
| | | |
| | |
| | | watch( |
| | | () => taskStore.activeTask, |
| | | () => { |
| | | page.value = 1 |
| | | getCraftModelList() |
| | | } |
| | | ) |
| | | } |
| | | |
| | | return { craftModelList, getCraftModelList } |
| | | const loading = ref(false) |
| | | |
| | | function loadMore() { |
| | | if (taskStore.activeTask?.Procedure.ID && !loading.value && hasMore.value) { |
| | | page.value++ |
| | | loading.value = true |
| | | // apiGetCraftModelList({ |
| | | // procedureId: taskStore.activeTask?.Procedure.ID, |
| | | // page: page.value, |
| | | // pageSize: 6 |
| | | // }) |
| | | // .then((res) => { |
| | | // craftModelList.value = [...craftModelList.value, ...(res.data ?? [])] |
| | | // total.value = res.total |
| | | // }) |
| | | // .finally(() => { |
| | | // loading.value = false |
| | | // }) |
| | | } |
| | | } |
| | | |
| | | const hasMore = computed(() => { |
| | | return total.value > craftModelList.value.length |
| | | }) |
| | | |
| | | return { craftModelList, getCraftModelList, hasMore, loading, loadMore } |
| | | }) |