示例#1
0
        /// <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);
        }
示例#2
0
        /// <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);
        }