import { computed, onMounted, ref, toRefs } from 'vue'; import useSceneInfos from '@/hooks/useSceneInfos'; export const usePageConfig = () => { const sceneInfos = useSceneInfos(); const { scenesInfos } = toRefs(sceneInfos); const { getScenesTree } = sceneInfos; const selectedCompany = ref(); const label = ref(); const layoutId = ref(); // const shopList = ref([ // { // id: 1, // companyId: 2, // sceneLabelId: 1, // name: 'ARJ21部装车间', // code: 'C12', // remark: '', // status: 0, // createdAt: '2023-10-13 09:48:58', // updatedAt: '2024-01-16 15:00:46', // isDeleted: 0, // serial: 0, // labelName: '生产安全', // workshopModule: { // id: 2, // name: '厂房', // code: '2', // remark: '', // status: 0, // createdAt: '2023-12-22 11:44:06', // updatedAt: '2023-12-22 11:44:06', // isDeleted: 0, // }, // children: [ // { // id: 2, // workshopId: 1, // name: '西侧200室内气密试验区', // code: 'C12-W200test', // remark: '', // principal: '', // status: 0, // createdAt: '2023-12-27 14:07:15', // updatedAt: '2024-01-05 09:05:52', // isDeleted: 0, // serial: 0, // }, // { // id: 1, // workshopId: 1, // name: '东侧200室内气密试验区', // code: 'C12-E200test', // remark: '', // principal: '', // status: 0, // createdAt: '2023-12-27 14:06:46', // updatedAt: '2024-01-05 09:05:52', // isDeleted: 0, // serial: 1, // }, // ], // }, // { // id: 3, // companyId: 2, // sceneLabelId: 1, // name: 'C919部装车间', // code: 'C02', // remark: '', // status: 0, // createdAt: '2023-10-13 09:50:31', // updatedAt: '2024-01-16 15:00:52', // isDeleted: 0, // serial: 0, // labelName: '生产安全', // workshopModule: { // id: 2, // name: '厂房', // code: '2', // remark: '', // status: 0, // createdAt: '2023-12-22 11:44:06', // updatedAt: '2023-12-22 11:44:06', // isDeleted: 0, // }, // children: [], // }, // { // id: 6, // companyId: 2, // sceneLabelId: 1, // name: '胶接车间', // code: 'B16', // remark: '', // status: 0, // createdAt: '2023-10-13 09:51:42', // updatedAt: '2024-01-16 15:00:57', // isDeleted: 0, // serial: 0, // labelName: '生产安全', // workshopModule: { // id: 2, // name: '厂房', // code: '2', // remark: '', // status: 0, // createdAt: '2023-12-22 11:44:06', // updatedAt: '2023-12-22 11:44:06', // isDeleted: 0, // }, // children: [], // }, // { // id: 7, // companyId: 2, // sceneLabelId: 1, // name: '复材车间', // code: 'B01', // remark: '', // status: 0, // createdAt: '2023-10-13 09:52:02', // updatedAt: '2024-01-16 15:00:59', // isDeleted: 0, // serial: 0, // labelName: '生产安全', // workshopModule: null, // children: [], // }, // ]); const labelList = computed( () => scenesInfos.value.find((item) => item.id === selectedCompany.value)?.labelList, ); const shopList = computed( () => scenesInfos.value .find((item) => item.id === selectedCompany.value) ?.children.filter((shop) => shop.sceneLabelId === label.value) || [], ); onMounted(() => { getScenesTree({ level: 2, valueKey: 'code', labelKey: 'name', disabled: true }); }); return { selectedCompany, scenesInfos, label, labelList, shopList, layoutId }; }; export default usePageConfig;