/// <summary> /// 获取图表默认的配置信息。 /// </summary> /// <returns></returns> public Dictionary <string, MB.WinBase.Common.ChartViewCfgInfo> GetDefaultChartViewCfg() { if (_ChartViewCfg == null) { RuleClientLayoutAttribute rAtt = _ClientRuleConfig.ClientLayoutAttribute; if (rAtt == null || string.IsNullOrEmpty(rAtt.UIXmlConfigFile)) { return(null); } _ChartViewCfg = LayoutXmlConfigHelper.Instance.getChartViewCfg(rAtt.UIXmlConfigFile); } return(_ChartViewCfg); }
/// <summary> /// 获取主表默认的样式信息。 /// </summary> /// <returns></returns> public Dictionary <string, MB.WinBase.Common.StyleConditionInfo> GetDefaultStyleConditions() { if (_DefaultStyleConditions == null) { RuleClientLayoutAttribute rAtt = _ClientRuleConfig.ClientLayoutAttribute;//AttributeConfigHelper.Instance.GetClientRuleSettingAtt(_ClientRuleConfig); if (rAtt == null || string.IsNullOrEmpty(rAtt.UIXmlConfigFile)) { throw new Exceptions.RuleClientConfigException(_ClientRuleConfig); } _DefaultStyleConditions = LayoutXmlConfigHelper.Instance.GetStyleConditions(rAtt.UIXmlConfigFile); } return(_DefaultStyleConditions); }
/// <summary> /// 获取主表默认数值列信息。 /// </summary> /// <returns></returns> public Dictionary <string, MB.WinBase.Common.ColumnPropertyInfo> GetDefaultColumns() { if (_ClientRuleConfig == null) { throw new MB.Util.APPException("ClientRuleConfig 的 配置不能为空", Util.APPMessageType.SysErrInfo); } if (_DefaultColumns == null) { RuleClientLayoutAttribute rAtt = _ClientRuleConfig.ClientLayoutAttribute;// AttributeConfigHelper.Instance.GetClientRuleSettingAtt(_ClientRuleConfig); if (rAtt == null || string.IsNullOrEmpty(rAtt.UIXmlConfigFile)) { throw new Exceptions.RuleClientConfigException(_ClientRuleConfig); } _DefaultColumns = LayoutXmlConfigHelper.Instance.GetColumnPropertys(rAtt.UIXmlConfigFile); } return(_DefaultColumns); }
/// <summary> /// 加载动态列的配置文件 /// </summary> /// <param name="ruleConfig"></param> /// <returns></returns> public DynamicGroupCfgInfo LoadDynamicGroupCfg(MB.WinBase.IFace.IClientRuleConfig ruleConfig) { RuleClientLayoutAttribute rAtt = ruleConfig.ClientLayoutAttribute; if (rAtt == null || !rAtt.IsDynamicGroupEnabled) { throw new MB.Util.APPException(string.Format("要使用动态聚组,必须配置RuleClientLayoutAttribute中的DynamicGroupXmlConfig属性。请检查:{0}是否已经配置!", ruleConfig.GetType().FullName)); } string xmlCfgFile = rAtt.UIXmlConfigFile; DynamicGroupCfgHelper cfgHelper = new DynamicGroupCfgHelper(xmlCfgFile); //将最终呈现聚组的列信息汇总到 聚组配置的列信息上 Dictionary <string, ColumnPropertyInfo> resultCols = cfgHelper.GetResultColPropertys(); DynamicGroupCfgInfo cfg = new DynamicGroupCfgInfo(); cfg.MainEntityColInfo = cfgHelper.GetColProInfos(true); cfg.DetailEntityColInfo = cfgHelper.GetColProInfos(false); cfg.MainEntityInfo = cfgHelper.GetEntityInfo(true); cfg.DetailEntityInfo = cfgHelper.GetEntityInfo(false); cfg.RelationInfo = cfgHelper.GetRelationInfo(); if (cfg.RelationInfo == null) { MB.Util.TraceEx.Write("[动态聚组配置]-由于RelationInfo的信息没有配置,DetailEntityInfo强制设置为空"); cfg.DetailEntityInfo = null; } #region 配置验证 if (cfg.MainEntityColInfo != null) { validateColInfo(cfg.MainEntityColInfo); } if (cfg.DetailEntityColInfo != null) { validateColInfo(cfg.DetailEntityColInfo); } if (cfg.RelationInfo != null) { foreach (DynamicGroupRelationInfo relationInfo in cfg.RelationInfo.Values) { if (string.IsNullOrEmpty(relationInfo.Column) || string.IsNullOrEmpty(relationInfo.WithColumn)) { throw new MB.Util.APPException("动态聚组配置Relation中的Column和WithColumn属性不能为空"); } } } if (cfg.MainEntityInfo != null) { if (string.IsNullOrEmpty(cfg.MainEntityInfo.Name)) { throw new MB.Util.APPException("动态聚组配置MainEntity中的Name属性不能为空"); } } if (cfg.DetailEntityInfo != null) { if (string.IsNullOrEmpty(cfg.DetailEntityInfo.Name)) { throw new MB.Util.APPException("动态聚组配置DetailEntity中的Name属性不能为空"); } } #endregion return(cfg); }