public DependGroup AddDependGroup(string fieldId, string value) { DependGroup dependGroup = new DependGroup(); DependExpress dependExpress = dependGroup.AddDependExpress(); dependExpress.FieldId = fieldId; dependExpress.Value = value; this.SetDependGroup(dependGroup); return(dependGroup); }
/** * xml Element to DependGroup * @param dependGroupEle * @param fieldId * @return * @throws TopSchemaException */ private static DependGroup ElementToDependGroup(XmlElement dependGroupEle, string fieldId) { if (dependGroupEle == null) { return(null); } String dependGroupOperator = XmlUtils.GetAttributeValue(dependGroupEle, "operator"); if (StringUtil.IsEmpty(dependGroupOperator)) { dependGroupOperator = "and"; } DependGroup dg_result = new DependGroup(); dg_result.Operators = dependGroupOperator; List <XmlElement> deEleList = XmlUtils.GetChildElements(dependGroupEle, "depend-express"); foreach (XmlElement deEle in deEleList) { DependExpress de = new DependExpress(); String deFieldId = XmlUtils.GetAttributeValue(deEle, "fieldId"); String deValue = XmlUtils.GetAttributeValue(deEle, "value"); String deSymbol = XmlUtils.GetAttributeValue(deEle, "symbol"); de.FieldId = deFieldId; de.Value = deValue; de.Symbol = deSymbol; dg_result.Add(de); } List <XmlElement> dgEleList = XmlUtils.GetChildElements(dependGroupEle, "depend-group"); foreach (XmlElement dgSubEle in dgEleList) { DependGroup subGroup = new DependGroup(); subGroup = ElementToDependGroup(dgSubEle, fieldId); dg_result.Add(subGroup); } return(dg_result); }
private static Option ElementToOption(XmlElement optionEle, string fieldId) { Option opResult = new Option(); String displayName = XmlUtils.GetAttributeValue(optionEle, "displayName"); if (StringUtil.IsEmpty(displayName)) { throw new TopSchemaException(TopSchemaErrorCodeEnum.ERROR_CODE_33001, fieldId); } String value = XmlUtils.GetAttributeValue(optionEle, "value"); if (StringUtil.IsEmpty(value)) { throw new TopSchemaException(TopSchemaErrorCodeEnum.ERROR_CODE_33002, fieldId); } opResult.SetDisplayName(displayName); opResult.Value = value; XmlElement dependGroupEle = XmlUtils.GetChildElement(optionEle, "depend-group"); DependGroup dependGroup = ElementToDependGroup(dependGroupEle, fieldId); opResult.SetDependGroup(dependGroup); return(opResult); }
/** * xml Element to Rule * @param ruleEle * @param fieldId * @return * @throws TopSchemaException */ private static Rule ElementToRule(XmlElement ruleEle, string fieldId) { if (ruleEle == null) { return(null); } String ruleName = XmlUtils.GetAttributeValue(ruleEle, "name"); if (StringUtil.IsEmpty(ruleName)) { throw new TopSchemaException(TopSchemaErrorCodeEnum.ERROR_CODE_31001, fieldId); } String ruleValue = XmlUtils.GetAttributeValue(ruleEle, "value"); if (StringUtil.IsEmpty(ruleValue)) { throw new TopSchemaException(TopSchemaErrorCodeEnum.ERROR_CODE_31002, fieldId); } Rule rule = null; RuleTypeEnum ruleEnum = RuleTypeEnumHelper.GetEnum(ruleName); if (ruleEnum != RuleTypeEnum.UNKNOWN) { rule = SchemaFactory.CreateRule(ruleEnum); } else { rule = SchemaFactory.CreateCustomRule(ruleName, ruleValue); } if (ruleName.Equals(RuleTypeEnumHelper.ToType(RuleTypeEnum.TIP_RULE)) && !StringUtil.IsEmpty(ruleValue)) { String url = XmlUtils.GetAttributeValue(ruleEle, "url"); ((TipRule)rule).Url = url; } if (ruleName.Equals(RuleTypeEnumHelper.ToType(RuleTypeEnum.DEV_TIP_RULE)) && !StringUtil.IsEmpty(ruleValue)) { String url = XmlUtils.GetAttributeValue(ruleEle, "url"); ((DevTipRule)rule).Url = url; } String unit = XmlUtils.GetAttributeValue(ruleEle, "unit"); if (ruleName.Equals(RuleTypeEnumHelper.ToType(RuleTypeEnum.MAX_TARGET_SIZE_RULE)) && !StringUtil.IsEmpty(ruleValue)) { MaxTargetSizeRule mtsRule = (MaxTargetSizeRule)rule; mtsRule.Unit = unit; } else if (ruleName.Equals(RuleTypeEnumHelper.ToType(RuleTypeEnum.MIN_TARGET_SIZE_RULE)) && !StringUtil.IsEmpty(ruleValue)) { MinTargetSizeRule misRule = (MinTargetSizeRule)rule; misRule.Unit = unit; } String exProperty = XmlUtils.GetAttributeValue(ruleEle, "exProperty"); if (!StringUtil.IsEmpty(exProperty)) { rule.ExProperty = exProperty; } rule.Value = ruleValue; XmlElement dependGroupEle = XmlUtils.GetChildElement(ruleEle, "depend-group"); DependGroup dependGroup = ElementToDependGroup(dependGroupEle, fieldId); rule.DependGroup = dependGroup; return(rule); }
public void SetDependGroup(DependGroup dependGroup) { this.dependGroup = dependGroup; }