/// <summary> /// /// </summary> /// <param name="whereText"></param> /// <returns></returns> private List <EntityFieldInfo> GetSupplyPlanFields(string whereText, string entityName) { ///EntityFieldInfo 获取实体字段在页面显示的信息 List <EntityFieldInfo> entityFieldList = new EntityBLL().GetGridFieldByEntityName(entityName, "TT_ATP_SUPPLY_PLAN"); ///追加动态日期列 ///供货计划默认展示最大天数,默认14 string supplyPlanDefaultShowMaxDays = new ConfigBLL().GetValueByCode("SUPPLY_PLAN_DEFAULT_SHOW_MAX_DAYS"); int intSupplyPlanDefaultShowMaxDays = GetSupplyPlanShowDays(supplyPlanDefaultShowMaxDays, whereText, out DateTime seedDate); List <string> dateColumns = GetValidDates(intSupplyPlanDefaultShowMaxDays, seedDate); ///种子顺序 int seedDisplayOrder = 70; for (int i = 0; i < intSupplyPlanDefaultShowMaxDays; i++) { #region EntityFieldInfo EntityFieldInfo entityFieldInfo = new EntityFieldInfo(); entityFieldInfo.FieldName = "D" + seedDate.ToString("yyyyMMdd"); entityFieldInfo.TableFieldName = "D" + seedDate.ToString("yyyyMMdd"); entityFieldInfo.DisplayNameCn = seedDate.ToString("MM月dd日"); entityFieldInfo.DisplayNameEn = seedDate.ToString("yyyyMMdd"); entityFieldInfo.DisplayOrder = seedDisplayOrder; entityFieldInfo.DataType = (int)DataTypeConstants.DECIMAL; entityFieldInfo.ControlType = (int)ControlTypeConstants.NUMBERBOX; entityFieldInfo.DataLength = 18; entityFieldInfo.Precision = 0; entityFieldInfo.DefaultValue = string.Empty; entityFieldInfo.Nullenable = null; entityFieldInfo.Regex = string.Empty; entityFieldInfo.ErrorMsg = string.Empty; entityFieldInfo.MinValue = null; entityFieldInfo.MaxValue = null; entityFieldInfo.Editable = false; entityFieldInfo.EditDisplayWidth = string.Empty; entityFieldInfo.Listable = true; entityFieldInfo.ListDisplayWidth = "80"; entityFieldInfo.Extend1 = string.Empty; entityFieldInfo.Extend2 = string.Empty; entityFieldInfo.Extend3 = string.Empty; entityFieldInfo.EditReadonly = (int)ReadonlyTypeConstants.NOTREADONLY; entityFieldInfo.TabTitleCode = string.Empty; entityFieldInfo.Sortable = false; entityFieldInfo.ExportExcelFlag = true; entityFieldInfo.ExportExcelOrder = seedDisplayOrder; entityFieldInfo.TooltipHelperCn = string.Empty; entityFieldInfo.TooltipHelperEn = string.Empty; seedDisplayOrder += 10; if (dateColumns.Contains(seedDate.ToString("yyyyMMdd"))) { entityFieldList.Add(entityFieldInfo); } seedDate = seedDate.AddDays(1); #endregion } return(entityFieldList); }
/// <summary> /// /// </summary> /// <param name="whereText"></param> /// <param name="entityName"></param> /// <returns></returns> private List <EntityFieldInfo> GetSupplyPlanCheckFields(string whereText, string entityName) { ///EntityFieldInfo 获取实体字段在页面显示的信息 List <EntityFieldInfo> entityFieldList = new EntityBLL().GetGridFieldByEntityName(entityName, "TT_ATP_SUPPLY_PLAN"); ///追加动态日期列 ///缺件检查显示供货计划天数 string lackOfInspectionDisplaySupplyPlanDays = new ConfigBLL().GetValueByCode("LACK_OF_INSPECTION_DISPLAY_SUPPLY_PLAN_DAYS"); int intLackOfInspectionDisplaySupplyPlanDays = GetSupplyPlanShowDays(lackOfInspectionDisplaySupplyPlanDays, whereText, out DateTime seedDate); List <string> dateColumns = GetValidDates(intLackOfInspectionDisplaySupplyPlanDays, seedDate); ///生产计划锁定临近天数 string productionPlanLockedDays = new ConfigBLL().GetValueByCode("PRODUCTION_PLAN_LOCKED_DAYS"); if (!int.TryParse(productionPlanLockedDays, out int intProductionPlanLockedDays)) { throw new Exception("MC:1x00000031");///系统配置错误 } if (intProductionPlanLockedDays > intLackOfInspectionDisplaySupplyPlanDays) { throw new Exception("MC:1x00000031");///系统配置错误 } ///种子顺序 int seedDisplayOrder = 70; #region RDC EntityFieldInfo rdcEntityFieldInfo = new EntityFieldInfo(); rdcEntityFieldInfo.FieldName = "RDC"; rdcEntityFieldInfo.TableFieldName = "RDC"; rdcEntityFieldInfo.DisplayNameCn = "RDC库存"; rdcEntityFieldInfo.DisplayNameEn = "RDC Inventory"; rdcEntityFieldInfo.DisplayOrder = seedDisplayOrder; rdcEntityFieldInfo.DataType = (int)DataTypeConstants.INT; rdcEntityFieldInfo.ControlType = (int)ControlTypeConstants.NUMBERBOX; rdcEntityFieldInfo.DataLength = 18; rdcEntityFieldInfo.Precision = 0; rdcEntityFieldInfo.DefaultValue = string.Empty; rdcEntityFieldInfo.Nullenable = null; rdcEntityFieldInfo.Regex = string.Empty; rdcEntityFieldInfo.ErrorMsg = string.Empty; rdcEntityFieldInfo.MinValue = null; rdcEntityFieldInfo.MaxValue = null; rdcEntityFieldInfo.Editable = false; rdcEntityFieldInfo.EditDisplayWidth = string.Empty; rdcEntityFieldInfo.Listable = true; rdcEntityFieldInfo.ListDisplayWidth = "65"; rdcEntityFieldInfo.Extend1 = string.Empty; rdcEntityFieldInfo.Extend2 = string.Empty; rdcEntityFieldInfo.Extend3 = string.Empty; rdcEntityFieldInfo.EditReadonly = (int)ReadonlyTypeConstants.NOTREADONLY; rdcEntityFieldInfo.TabTitleCode = string.Empty; rdcEntityFieldInfo.Sortable = false; rdcEntityFieldInfo.ExportExcelFlag = true; rdcEntityFieldInfo.ExportExcelOrder = seedDisplayOrder; rdcEntityFieldInfo.TooltipHelperCn = string.Empty; rdcEntityFieldInfo.TooltipHelperEn = string.Empty; seedDisplayOrder += 10; entityFieldList.Add(rdcEntityFieldInfo); #endregion #region VMI EntityFieldInfo vmiEntityFieldInfo = new EntityFieldInfo(); vmiEntityFieldInfo.FieldName = "VMI"; vmiEntityFieldInfo.TableFieldName = "VMI"; vmiEntityFieldInfo.DisplayNameCn = "VMI库存"; vmiEntityFieldInfo.DisplayNameEn = "VMI Inventory"; vmiEntityFieldInfo.DisplayOrder = seedDisplayOrder; vmiEntityFieldInfo.DataType = (int)DataTypeConstants.DECIMAL; vmiEntityFieldInfo.ControlType = (int)ControlTypeConstants.NUMBERBOX; vmiEntityFieldInfo.DataLength = 18; vmiEntityFieldInfo.Precision = 0; vmiEntityFieldInfo.DefaultValue = string.Empty; vmiEntityFieldInfo.Nullenable = null; vmiEntityFieldInfo.Regex = string.Empty; vmiEntityFieldInfo.ErrorMsg = string.Empty; vmiEntityFieldInfo.MinValue = null; vmiEntityFieldInfo.MaxValue = null; vmiEntityFieldInfo.Editable = false; vmiEntityFieldInfo.EditDisplayWidth = string.Empty; vmiEntityFieldInfo.Listable = true; vmiEntityFieldInfo.ListDisplayWidth = "65"; vmiEntityFieldInfo.Extend1 = string.Empty; vmiEntityFieldInfo.Extend2 = string.Empty; vmiEntityFieldInfo.Extend3 = string.Empty; vmiEntityFieldInfo.EditReadonly = (int)ReadonlyTypeConstants.NOTREADONLY; vmiEntityFieldInfo.TabTitleCode = string.Empty; vmiEntityFieldInfo.Sortable = false; vmiEntityFieldInfo.ExportExcelFlag = true; vmiEntityFieldInfo.ExportExcelOrder = seedDisplayOrder; vmiEntityFieldInfo.TooltipHelperCn = string.Empty; vmiEntityFieldInfo.TooltipHelperEn = string.Empty; seedDisplayOrder += 10; entityFieldList.Add(vmiEntityFieldInfo); #endregion ///累计日期字符串 string accumulativeDate = string.Empty; for (int i = 0; i < intLackOfInspectionDisplaySupplyPlanDays; i++) { EntityFieldInfo entityFieldInfo = new EntityFieldInfo(); entityFieldInfo.FieldName = "D" + seedDate.ToString("yyyyMMdd"); entityFieldInfo.TableFieldName = "D" + seedDate.ToString("yyyyMMdd"); entityFieldInfo.DisplayNameCn = seedDate.ToString("MM月dd日"); entityFieldInfo.DisplayNameEn = seedDate.ToString("yyyyMMdd"); entityFieldInfo.DisplayOrder = seedDisplayOrder; entityFieldInfo.DataType = (int)DataTypeConstants.DECIMAL; entityFieldInfo.ControlType = (int)ControlTypeConstants.NUMBERBOX; entityFieldInfo.DataLength = 18; entityFieldInfo.Precision = 0; entityFieldInfo.DefaultValue = string.Empty; entityFieldInfo.Nullenable = null; entityFieldInfo.Regex = string.Empty; entityFieldInfo.ErrorMsg = string.Empty; entityFieldInfo.MinValue = null; entityFieldInfo.MaxValue = null; entityFieldInfo.Editable = false; entityFieldInfo.EditDisplayWidth = string.Empty; entityFieldInfo.Listable = true; entityFieldInfo.ListDisplayWidth = "65"; entityFieldInfo.Extend1 = string.Empty; entityFieldInfo.Extend2 = string.Empty; entityFieldInfo.Extend3 = string.Empty; entityFieldInfo.EditReadonly = (int)ReadonlyTypeConstants.NOTREADONLY; entityFieldInfo.TabTitleCode = string.Empty; entityFieldInfo.Sortable = false; entityFieldInfo.ExportExcelFlag = true; entityFieldInfo.ExportExcelOrder = seedDisplayOrder; entityFieldInfo.TooltipHelperCn = string.Empty; entityFieldInfo.TooltipHelperEn = string.Empty; seedDisplayOrder += 10; seedDate = seedDate.AddDays(1); ///超过生产计划锁定临近天数时不再做数量差异判定 if (i >= intProductionPlanLockedDays) { entityFieldList.Add(entityFieldInfo); continue; } ///从第二天起需要累加之前日期的数量 if (i > 0) { accumulativeDate += "+row.D"; } accumulativeDate += seedDate.AddDays(-1).ToString("yyyyMMdd"); entityFieldInfo.Extend3 = "styler^样式逻辑:(Math.round(row.RDC)+Math.round(row.VMI) >= (row.D" + accumulativeDate + ")? row.D" + seedDate.AddDays(-1).ToString("yyyyMMdd") + " : -1).toString(),背景颜色:#00FF00,字体颜色:black"; entityFieldList.Add(entityFieldInfo); } return(entityFieldList); }