using DeviceRepair.Models; using System.Collections.Generic; namespace DeviceRepair.Utils { public class EnumMaintenanceTypeHelper { public static EnumMaintenanceType MatchToEnum(string value) { EnumMaintenanceType e = EnumMaintenanceType.None; switch (value?.ToLower()) { case "annual": case "每年": e = EnumMaintenanceType.Annual; break; case "奇数年": e = EnumMaintenanceType.OddAnnual; break; case "偶数年": e = EnumMaintenanceType.EvenAnnual; break; case "monthly": case "月度": e = EnumMaintenanceType.Monthly; break; case "quarterly": case "季度": e = EnumMaintenanceType.Quarterly; break; case "semi-an": case "半年": e = EnumMaintenanceType.Semian; break; default: break; } return e; } public static List MatchToEnum(string value, System.DateTime CurrentDate) { List e = new List(); switch (value.ToLower()) { case "annual": case "每年": e.Add(EnumMaintenanceType.Annual); if (CurrentDate.Year % 2 == 1) e.Add(EnumMaintenanceType.OddAnnual); else e.Add(EnumMaintenanceType.EvenAnnual); e.Add(EnumMaintenanceType.Semian); e.Add(EnumMaintenanceType.Quarterly); e.Add(EnumMaintenanceType.Monthly); break; case "奇数年": if (CurrentDate.Year % 2 == 1) e.Add(EnumMaintenanceType.OddAnnual); e.Add(EnumMaintenanceType.Semian); e.Add(EnumMaintenanceType.Quarterly); e.Add(EnumMaintenanceType.Monthly); break; case "偶数年": if (CurrentDate.Year % 2 == 0) e.Add(EnumMaintenanceType.EvenAnnual); e.Add(EnumMaintenanceType.Semian); e.Add(EnumMaintenanceType.Quarterly); e.Add(EnumMaintenanceType.Monthly); break; case "semi-an": case "半年": e.Add(EnumMaintenanceType.Semian); e.Add(EnumMaintenanceType.Quarterly); e.Add(EnumMaintenanceType.Monthly); break; case "quarterly": case "季度": e.Add(EnumMaintenanceType.Quarterly); e.Add(EnumMaintenanceType.Monthly); break; case "monthly": case "月度": e.Add(EnumMaintenanceType.Monthly); break; default: break; } return e; } } }