2026-04-02 13:51:36 +08:00
|
|
|
import { defineStore } from 'pinia';
|
2026-07-01 18:23:41 +08:00
|
|
|
import { ref, onMounted,nextTick } from 'vue';
|
2026-06-26 17:52:57 +08:00
|
|
|
import { wbsbGetKendoList } from '@/api/select';
|
2026-04-02 13:51:36 +08:00
|
|
|
export const useJidiSelectEventStore = defineStore('jidiSelectEvent', () => {
|
2026-05-13 08:44:35 +08:00
|
|
|
const jidiData: any = ref([
|
|
|
|
|
{
|
|
|
|
|
wbsCode: 'all',
|
|
|
|
|
wbsName: '当前全部',
|
|
|
|
|
selected: true
|
|
|
|
|
}
|
|
|
|
|
]);
|
2026-06-26 17:52:57 +08:00
|
|
|
const loading = ref(false);
|
2026-04-03 16:04:16 +08:00
|
|
|
const selectedItem = ref(jidiData.value[0]);
|
|
|
|
|
const updataJidiData = (index: any) => {
|
2026-07-01 18:23:41 +08:00
|
|
|
if(jidiData.value.length == 1){
|
|
|
|
|
return
|
|
|
|
|
}
|
2026-04-03 16:04:16 +08:00
|
|
|
selectedItem.value = jidiData.value[index];
|
|
|
|
|
jidiData.value.forEach((item: any) => {
|
2026-05-13 08:44:35 +08:00
|
|
|
item.selected = false;
|
2026-04-03 16:04:16 +08:00
|
|
|
});
|
|
|
|
|
jidiData.value[index].selected = true;
|
|
|
|
|
};
|
2026-06-26 17:52:57 +08:00
|
|
|
const getJidiData = async () => {
|
|
|
|
|
loading.value = true;
|
|
|
|
|
let params = {
|
|
|
|
|
filter: {
|
|
|
|
|
logic: 'and',
|
|
|
|
|
filters: [
|
|
|
|
|
{
|
|
|
|
|
field: 'wbsType',
|
|
|
|
|
operator: 'eq',
|
|
|
|
|
dataType: 'string',
|
|
|
|
|
value: 'PSB'
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
field: 'treeLevel',
|
|
|
|
|
operator: 'eq',
|
|
|
|
|
dataType: 'string',
|
|
|
|
|
value: '1'
|
|
|
|
|
}
|
|
|
|
|
]
|
|
|
|
|
},
|
|
|
|
|
sort: [
|
|
|
|
|
{
|
|
|
|
|
field: 'orderIndex',
|
|
|
|
|
dir: 'asc'
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
select: ['wbsCode', 'wbsName']
|
|
|
|
|
};
|
|
|
|
|
const res = await wbsbGetKendoList(params);
|
|
|
|
|
let data = res?.data?.data || [
|
|
|
|
|
{
|
|
|
|
|
wbsCode: 'all',
|
|
|
|
|
wbsName: '当前全部',
|
|
|
|
|
selected: true
|
|
|
|
|
}
|
|
|
|
|
];
|
|
|
|
|
jidiData.value = data.map((item: any) => {
|
|
|
|
|
return {
|
|
|
|
|
...item,
|
|
|
|
|
selected: item.wbsCode == 'all' ? true : false
|
|
|
|
|
};
|
|
|
|
|
});
|
|
|
|
|
loading.value = false;
|
|
|
|
|
};
|
|
|
|
|
onMounted(() => {
|
|
|
|
|
getJidiData();
|
|
|
|
|
});
|
2026-04-02 13:51:36 +08:00
|
|
|
|
|
|
|
|
return {
|
2026-04-03 16:04:16 +08:00
|
|
|
jidiData,
|
|
|
|
|
selectedItem,
|
2026-06-26 17:52:57 +08:00
|
|
|
updataJidiData,
|
|
|
|
|
loading
|
2026-04-02 13:51:36 +08:00
|
|
|
};
|
2026-04-03 16:04:16 +08:00
|
|
|
});
|