You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ocr-web/src/store/modules/final.ts

119 lines
3.0 KiB

import { defineStore } from 'pinia'
import { store } from '@/store'
import { getFilter } from '@/api/home/filter'
import { getConfig } from '@/api/system/user'
import { asideMap } from "@/config/final";
import { cloneDeep, isEqual } from "lodash-es";
import type { AsideConfig } from '/#/api'
export interface ConfigState {
systemConfig: AsideConfig | null
customConfig: string[] | null
asideValue: any
listKey: number
searchValue: string
isAllowDownload: boolean
timeNum: number
filterConfig: string[] // 过滤筛选条件
}
export const useFinalStore = defineStore({
id: 'app-final',
state: (): ConfigState => ({
systemConfig: null,
customConfig: null,
asideValue: null,
listKey: 0,
searchValue: "",
isAllowDownload: true,
timeNum: 0,
filterConfig: [],
}),
getters: {
getSystemConfig(): AsideConfig | null {
return this.systemConfig
},
getCustomConfig(): string[] | null {
return this.customConfig
},
getAsideValue(): any {
return this.asideValue
},
getSearchValue(): any {
return this.searchValue
},
getIsAllowDownload(): any {
return this.isAllowDownload
},
getTimeNum(): any {
return this.timeNum
},
getFilterConfig(): any {
return this.filterConfig
},
},
actions: {
setSystemConfig(config: AsideConfig) {
this.systemConfig = config
console.log("systemConfig----------", config);
},
setAsideValue(value) {
this.asideValue = value
},
setListKey() {
this.listKey = new Date().getTime()
},
setSearchValue(value) {
this.searchValue = value
},
setIsAllowDownload(value) {
this.isAllowDownload = value
},
setTimeNum(value) {
this.timeNum = value
},
// 设置个性化配置
setCustomConfig(value) {
this.customConfig = value
},
setFilterConfig(value) {
this.filterConfig = value
},
// 获取系统配置信息
async fetchConfig() {
const response = await getConfig()
console.log("response.data----------", response.data);
this.setSystemConfig(response.data)
return response.data
},
// // 获取终审个性化配置
// async fetchCustomConfig() {
// const res = await getFilter(1)
// const { data } = res
// const list = data && data.searchcount ? data.searchcount.split(',') : [];
// console.log("listkey---------------", list);
// this.customConfig = list
// return list
// },
// 获取终审个性化配置
async fetchCustomConfig() {
let list: any = [];
let tempAsideMap = cloneDeep(asideMap);
Object.keys(tempAsideMap).map(key => {
if(!tempAsideMap[key].isDefaultFilter) {
list.push(key);
}
});
console.log("listkey---------------", list);
this.customConfig = list
return list
},
},
})
// Need to be used outside the setup
export function useFinal() {
return useFinalStore(store)
}