128 lines
3.6 KiB
C#

using System.Collections;
using System.Collections.Generic;
using System.ComponentModel;
#if !UNITY_WEBGL
using System.Reflection;
#endif
using UnityEngine;
/********************************************************************************
*Create By CG
*Function 枚举控制
*********************************************************************************/
namespace CG.UTility
{
public class EnumCtrl
{
public enum SystemType
{
/// <summary>
/// 缺省值
/// </summary>
[Description("默认状态")]
None,
/// <summary>
/// 安装部署
/// </summary>
[Description("安装部署")]
AZBS,
/// <summary>
/// 部件拆装
/// </summary>
[Description("部件拆装")]
BJCZ,
/// <summary>
/// 搬运
/// </summary>
[Description("搬运")]
BY,
/// <summary>
/// 视觉分拣
/// </summary>
[Description("视觉分拣")]
SJFJ,
/// <summary>
/// 焊接
/// </summary>
[Description("焊接")]
HJ,
/// <summary>
/// 喷涂
/// </summary>
[Description("喷涂")]
PT
}
public enum BJCZState
{
/// <summary>
/// 缺省值
/// </summary>
[Description("默认状态")]
None,
/// <summary>
/// 部件认知
/// </summary>
[Description("部件认知")]
BJRZ,
/// <summary>
/// 一键拆解
/// </summary>
[Description("一键拆解")]
YJCJ,
/// <summary>
/// 一键拼装
/// </summary>
[Description("一键拼装")]
YJPZ,
/// <summary>
/// 顺序拆解
/// </summary>
[Description("顺序拆解")]
SXCJ,
/// <summary>
/// 原理示意
/// </summary>
[Description("原理示意")]
YLSY
}
public static string GetEnumDescription(System.Enum enumValue)
{
#if UNITY_WEBGL
switch (enumValue)
{
case SystemType.AZBS:
return "安装部署";
break;
case SystemType.BJCZ:
return "部件拆装";
break;
case SystemType.BY:
return "搬运";
break;
case SystemType.SJFJ:
return "视觉分拣";
break;
case SystemType.HJ:
return "焊接";
break;
case SystemType.PT:
return "喷涂";
break;
default:
break;
}
return null;
#else
string value = enumValue.ToString();
FieldInfo field = enumValue.GetType().GetField(value);
object[] objs = field.GetCustomAttributes(typeof(DescriptionAttribute), false);
if (objs == null || objs.Length == 0)
{
return value;
}
DescriptionAttribute descriptionAttribute = (DescriptionAttribute)objs[0];
return descriptionAttribute.Description;
#endif
}
}
}