index.ts 1.07 KB
import customMessage from './message';

//将enum转换为{label:"",value:""}形式
function enumToSelect(data: any) {
  const keys = Object.keys(data);
  return keys.map((value) => {
    return { label: data[value], value: value };
  });
}

//将枚举的value值转换为label
function enumValueToLabel(value: any, enumObj: any) {
  if (enumObj !== undefined) {
    return enumObj[value];
  }
  return '';
}

//从缓存中获取用户信息
function getUserInfo() {
  let userInfoString = localStorage.getItem('userInfo');
  if (userInfoString === null) {
    return {};
  }

  return JSON.parse(userInfoString);
}

//将状态枚举值转换为ProTable的enumValue格式
function enumToProTableEnumValue(enumConstants: any) {
  const result = {};

  for (const key in enumConstants) {
    if (enumConstants.hasOwnProperty(key)) {
      result[key] = {
        text: enumConstants[key],
        status: enumValueToLabel(key, enumConstants),
      };
    }
  }

  return result;
}

export {
  customMessage,
  enumToProTableEnumValue,
  enumToSelect,
  enumValueToLabel,
  getUserInfo,
};