import {ListAllData} from "@/api/system/dict/data" const useDictStore = defineStore( 'dict', { state: () => ({ dict: [] }), actions: { async initDict() { const response = await ListAllData() this.dict = response.data }, // 根据字典类型获取字典 getDictTypeList(_type) { if (_type == null || _type === "") { return null; } return this.dict.filter(item => item.type === _type); }, getDictDataByTypeAndValue(_type,_value){ if (_type == null || _value == null) { return { type:"", value:"", label:"" }; } return this.dict.find(item => item.type == _type && item.value == _value ) || null; }, // 获取字典 getDict(_key) { if (_key == null && _key == "") { return null } // console.log(this.dict) try { for (let i = 0; i < this.dict.length; i++) { if (this.dict[i].key == _key) { return this.dict[i].value } } } catch (e) { return null } }, // 设置字典 setDict(_key, value) { if (_key !== null && _key !== "") { this.dict.push({ key: _key, value: value }) } }, // 删除字典 removeDict(_key) { var bln = false try { for (let i = 0; i < this.dict.length; i++) { if (this.dict[i].key == _key) { this.dict.splice(i, 1) return true } } } catch (e) { bln = false } return bln }, // 清空字典 cleanDict() { this.dict = new Array() }, } }) export default useDictStore