兰宝车间质量管理系统-前端
疯狂的狮子Li
2025-01-20 5e440a7dc434c43eb828fa62cf9c12b0078b8565
src/store/modules/dict.ts
@@ -1,78 +1,65 @@
export const useDictStore = defineStore('dict', () => {
   const dict = ref<
      Array<{
         key: string;
         value: DictDataOption[];
      }>
   >([]);
  const dict = ref<Map<string, DictDataOption[]>>(new Map());
   /**
    * 获取字典
    * @param _key 字典key
    */
   const getDict = (_key: string): DictDataOption[] | null => {
      if (_key == null && _key == '') {
         return null;
      }
      try {
         for (let i = 0; i < dict.value.length; i++) {
            if (dict.value[i].key == _key) {
               return dict.value[i].value;
            }
         }
      } catch (e) {
         return null;
      }
      return null;
   };
  /**
   * 获取字典
   * @param _key 字典key
   */
  const getDict = (_key: string): DictDataOption[] | null => {
    if (!_key) {
      return null;
    }
    return dict.value.get(_key) || null;
  };
   /**
    * 设置字典
    * @param _key 字典key
    * @param _value 字典value
    */
   const setDict = (_key: string, _value: DictDataOption[]) => {
      if (_key !== null && _key !== '') {
         dict.value.push({
            key: _key,
            value: _value
         });
      }
   };
  /**
   * 设置字典
   * @param _key 字典key
   * @param _value 字典value
   */
  const setDict = (_key: string, _value: DictDataOption[]) => {
    if (!_key) {
      return false;
    }
    try {
      dict.value.set(_key, _value);
      return true;
    } catch (e) {
      console.error('Error in setDict:', e);
      return false;
    }
  };
   /**
    * 删除字典
    * @param _key
    */
   const removeDict = (_key: string): boolean => {
      let bln = false;
      try {
         for (let i = 0; i < dict.value.length; i++) {
            if (dict.value[i].key == _key) {
               dict.value.splice(i, 1);
               return true;
            }
         }
      } catch (e) {
         bln = false;
      }
      return bln;
   };
  /**
   * 删除字典
   * @param _key
   */
  const removeDict = (_key: string): boolean => {
    if (!_key) {
      return false;
    }
    try {
      return dict.value.delete(_key);
    } catch (e) {
      console.error('Error in removeDict:', e);
      return false;
    }
  };
   /**
    * 清空字典
    */
   const cleanDict = (): void => {
      dict.value = [];
   };
  /**
   * 清空字典
   */
  const cleanDict = (): void => {
    dict.value.clear();
  };
   return {
      dict,
      getDict,
      setDict,
      removeDict,
      cleanDict
   };
  return {
    dict,
    getDict,
    setDict,
    removeDict,
    cleanDict
  };
});
export default useDictStore;