private void BindList(DropDownList ddl, EnumItemDescriptionList list) { ddl.DataSource = list; ddl.DataTextField = "Description"; ddl.DataValueField = "EnumValue"; ddl.DataBind(); }
private void BindList(DropDownList ddl, EnumItemDescriptionList list) { ddl.DataSource = list; ddl.DataTextField = "Description"; ddl.DataValueField = "EnumValue"; ddl.DataBind(); ddl.Items.Insert(0, (new ListItem("", ""))); }
private static string[] GetIgnorPropertiesByEnum(int field, EnumItemDescriptionList despList) { List <string> result = new List <string>(); foreach (EnumItemDescription desp in despList) { if ((field & desp.EnumValue) == 0) { result.Add(desp.Name); } } return(result.ToArray()); }
internal static WhereSqlClauseBuilder GetWhereSqlClauseBuilderByUserTask(UserTask task, UserTaskIDType idType) { WhereSqlClauseBuilder builder = new WhereSqlClauseBuilder(); EnumItemDescriptionList despList = EnumItemDescriptionAttribute.GetDescriptionList(typeof(UserTaskIDType)); foreach (EnumItemDescription desp in despList) { if (((UserTaskIDType)desp.EnumValue & idType) != UserTaskIDType.None) { builder.AppendItem(desp.Description, GetUserTaskIDValue(task, (UserTaskIDType)desp.EnumValue)); } } return(builder); }
public static void ListBoxDataBindByEnum(ListBox litb, Type enumType, bool isUseValue) { if (enumType.IsEnum) { litb.Items.Clear(); EnumItemDescriptionList list = EnumItemDescriptionAttribute.GetDescriptionList(enumType); foreach (EnumItemDescription desc in list) { ListItem item = new ListItem(); item.Text = desc.Description; item.Value = isUseValue ? desc.EnumValue.ToString() : desc.Name; litb.Items.Add(item); } } }
/// <summary> /// 将DirectoryEntry转换成ADSchemaType /// </summary> /// <param name="entry"></param> /// <returns></returns> public static ADSchemaType ToADSchemaType(this DirectoryEntry entry) { ADSchemaType result = ADSchemaType.Unspecified; EnumItemDescriptionList items = EnumItemDescriptionAttribute.GetDescriptionList(typeof(ADSchemaType)); foreach (EnumItemDescription item in items) { if (string.Compare(item.ShortName, entry.SchemaClassName, true) == 0) { result = (ADSchemaType)item.EnumValue; break; } } return(result); }
public string[] QueryUserTaskStatus(string[] reqParams) { EnumItemDescriptionList despList = EnumItemDescriptionAttribute.GetDescriptionList(typeof(UserTaskQueryType)); string[] result = new string[despList.Count]; string userTaskChangeResult = DoUserTaskChangedQuery(reqParams[(int)UserTaskQueryType.UserTaskCount]); result[(int)UserTaskQueryType.UserTaskCount] = userTaskChangeResult; if (string.IsNullOrEmpty(userTaskChangeResult) == false) { result[(int)UserTaskQueryType.NewTaskArrived] = DoNewTaskArrived(); } return(result); }
/// <summary> /// 根据描述找到枚举对象的值 /// </summary> /// <param name="enumType"></param> /// <param name="description"></param> /// <returns></returns> public static int GetEnumValue(Type enumType, string description) { EnumItemDescriptionList enumList = EnumItemDescriptionAttribute.GetDescriptionList(enumType); EnumItemDescription found = null; foreach (EnumItemDescription item in enumList) { if (item.Description == description) { found = item; break; } } if (found == null) { throw new ArgumentException(string.Format("无法在类型为{0}的枚举中找到描述为{1}的枚举对象", enumType.Name, description)); } return(found.EnumValue); }
public List <ShowDSTargetCompleted> GetDSTargetCompleted(int Year, int Month, bool IsLatestVersion) { List <ShowDSTargetCompleted> showList = new List <ShowDSTargetCompleted>(); C_System SystemModel = C_SystemOperator.Instance.GetSystem(SysDescriptionID); if (SystemModel != null) { List <C_Company> CompanyList = C_CompanyOperator.Instance.GetCompanyList(SystemModel.ID).ToList(); //上一个月以及当前月的信息 ReportInstance LastMonthReport = new ReportInstance(); List <MonthlyReportDetail> LastMonthRptList = null; if (Month > 1) { LastMonthReport = new ReportInstance(SystemModel.ID, Year, Month - 1, IsLatestVersion); LastMonthRptList = LastMonthReport.ReportDetails; } ReportInstance CurrentMonthReport = new ReportInstance(SystemModel.ID, Year, Month, IsLatestVersion); List <MonthlyReportDetail> CurrentMonthRptList = CurrentMonthReport.ReportDetails; List <C_Target> TargetList = new List <C_Target>(); if (CurrentMonthRptList != null) { TargetList = C_TargetOperator.Instance.GetTargetList(SystemModel.ID, CurrentMonthRptList[0].CreateTime).Where(t => t.NeedReport == true && t.TargetName != "总部管理费用").ToList(); } else { TargetList = C_TargetOperator.Instance.GetTargetList(SystemModel.ID, DateTime.Now).Where(t => t.NeedReport == true && t.TargetName != "总部管理费用").ToList(); } #region 判断完成了几个指标 List <DSTargetCompleted> list = new List <DSTargetCompleted>(); foreach (C_Company c in CompanyList) { int LastCompletedCount = 0; int CurCompletedCount = 0; int ToCurCompletedCount = 0; DSTargetCompleted DSmodel = new DSTargetCompleted(); DSmodel.CompanyName = c.CompanyName; DSmodel.AreaName = c.CompanyProperty3; foreach (C_Target itemt in TargetList) { if (Month > 1) { //上一个月 MonthlyReportDetail LastDetailModel = GetMonthlyReportDetail(c, LastMonthRptList, CurrentMonthRptList, itemt, false); if (LastDetailModel != null && LastDetailModel.ID != Guid.Empty) { if (LastDetailModel.IsMissTarget) { LastCompletedCount++; } } } //当前月 MonthlyReportDetail CurDetailModel = GetMonthlyReportDetail(c, LastMonthRptList, CurrentMonthRptList, itemt, true); if (CurDetailModel != null && CurDetailModel.ID != Guid.Empty) { if (CurDetailModel.IsMissTargetCurrent) { CurCompletedCount++; } if (CurDetailModel.IsMissTarget) { ToCurCompletedCount++; } } } DSmodel.LastCount = LastCompletedCount; DSmodel.CurrentCount = CurCompletedCount; DSmodel.ToCurrentCount = ToCurCompletedCount; if (LastMonthRptList != null || CurrentMonthRptList.Count > 0) { list.Add(DSmodel); } } //判断指标完成几个 if (list.Count >= 0) { List <DSTargetCompleted> NorthList = list.Where(t => t.AreaName == "北区").ToList(); List <DSTargetCompleted> SouthList = list.Where(t => t.AreaName == "南区").ToList(); List <DSTargetCompleted> CenterList = list.Where(t => t.AreaName == "中区").ToList(); //单双指标名称的枚举List EnumItemDescriptionList enumList = EnumItemDescriptionAttribute.GetDescriptionList(typeof(DSProjectType)); for (int i = 0; i < enumList.Count; i++) { ShowDSTargetCompleted showModel = new ShowDSTargetCompleted(); showModel.PorjectName = EnumHelper.GetEnumDescription(typeof(DSProjectType), i); if (Month > 1 && LastMonthRptList != null && LastMonthRptList.Count > 0) { showModel.LastNorth = NorthList.Where(t => t.LastCount == i).ToList().Count; showModel.LastCenter = CenterList.Where(t => t.LastCount == i).ToList().Count; showModel.LastSouth = SouthList.Where(t => t.LastCount == i).ToList().Count; showModel.LastTotal = showModel.LastNorth + showModel.LastCenter + showModel.LastSouth; } else { showModel.LastNorth = 0; showModel.LastCenter = 0; showModel.LastSouth = 0; showModel.LastTotal = 0; } if (CurrentMonthRptList.Count > 0) { showModel.CurrentNorth = NorthList.Where(t => t.CurrentCount == i).ToList().Count; showModel.CurrentCenter = CenterList.Where(t => t.CurrentCount == i).ToList().Count; showModel.CurrentSouth = SouthList.Where(t => t.CurrentCount == i).ToList().Count; showModel.CurrentTotal = showModel.CurrentNorth + showModel.CurrentCenter + showModel.CurrentSouth; showModel.ToCurrentNorth = NorthList.Where(t => t.ToCurrentCount == i).ToList().Count; showModel.ToCurrentCenter = CenterList.Where(t => t.ToCurrentCount == i).ToList().Count; showModel.ToCurrentSouth = SouthList.Where(t => t.ToCurrentCount == i).ToList().Count; showModel.ToCurrentTotal = showModel.ToCurrentNorth + showModel.ToCurrentCenter + showModel.ToCurrentSouth; } else { showModel.CurrentNorth = 0; showModel.CurrentCenter = 0; showModel.CurrentSouth = 0; showModel.CurrentTotal = 0; showModel.ToCurrentNorth = 0; showModel.ToCurrentCenter = 0; showModel.ToCurrentSouth = 0; showModel.ToCurrentTotal = 0; } showList.Add(showModel); } } #endregion //合计 ShowDSTargetCompleted hjshowModel = new ShowDSTargetCompleted(); hjshowModel.PorjectName = "合计"; hjshowModel.LastNorth = showList.Sum(t => t.LastNorth); hjshowModel.LastCenter = showList.Sum(t => t.LastCenter); hjshowModel.LastSouth = showList.Sum(t => t.LastSouth); hjshowModel.LastTotal = showList.Sum(t => t.LastTotal); hjshowModel.CurrentNorth = showList.Sum(t => t.CurrentNorth); hjshowModel.CurrentCenter = showList.Sum(t => t.CurrentCenter); hjshowModel.CurrentSouth = showList.Sum(t => t.CurrentSouth); hjshowModel.CurrentTotal = showList.Sum(t => t.CurrentTotal); hjshowModel.ToCurrentNorth = showList.Sum(t => t.ToCurrentNorth); hjshowModel.ToCurrentCenter = showList.Sum(t => t.ToCurrentCenter); hjshowModel.ToCurrentSouth = showList.Sum(t => t.ToCurrentSouth); hjshowModel.ToCurrentTotal = showList.Sum(t => t.ToCurrentTotal); showList.Add(hjshowModel); #region 判断哪个指标未完成 List <DSTargetCompleted> MissTargetlist = new List <DSTargetCompleted>(); foreach (C_Target itemt in TargetList.OrderBy(T => T.Sequence)) { #region//北区 List <int> NorthList = GetMissTargetCountList(CompanyList, LastMonthRptList, CurrentMonthRptList, itemt, "北区", Month); #endregion #region//中区 List <int> CenterList = GetMissTargetCountList(CompanyList, LastMonthRptList, CurrentMonthRptList, itemt, "中区", Month); #endregion #region//南区 List <int> SouthList = GetMissTargetCountList(CompanyList, LastMonthRptList, CurrentMonthRptList, itemt, "南区", Month); #endregion ShowDSTargetCompleted ShowDSmodel = new ShowDSTargetCompleted(); ShowDSmodel.PorjectName = itemt.TargetName + "未完成门店数"; ShowDSmodel.LastNorth = NorthList[0]; ShowDSmodel.LastCenter = CenterList[0];; ShowDSmodel.LastSouth = SouthList[0];; ShowDSmodel.LastTotal = ShowDSmodel.LastNorth + ShowDSmodel.LastCenter + ShowDSmodel.LastSouth; ShowDSmodel.CurrentNorth = NorthList[1]; ShowDSmodel.CurrentCenter = CenterList[1]; ShowDSmodel.CurrentSouth = SouthList[1]; ShowDSmodel.CurrentTotal = ShowDSmodel.CurrentNorth + ShowDSmodel.CurrentCenter + ShowDSmodel.CurrentSouth; ShowDSmodel.ToCurrentNorth = NorthList[2]; ShowDSmodel.ToCurrentCenter = CenterList[2]; ShowDSmodel.ToCurrentSouth = SouthList[2]; ShowDSmodel.ToCurrentTotal = ShowDSmodel.ToCurrentNorth + ShowDSmodel.ToCurrentCenter + ShowDSmodel.ToCurrentSouth; showList.Add(ShowDSmodel); } #endregion } return(showList); }
private static string[] GetIgnorPropertiesByEnum(int field, EnumItemDescriptionList despList) { List<string> result = new List<string>(); foreach (EnumItemDescription desp in despList) { if ((field & desp.EnumValue) == 0) result.Add(desp.Name); } return result.ToArray(); }