public static ConstantConflictInfo TestConflict(string packageName, TblConstant_Row t1, Constant t2) { if (!t1.Name.Equals(t2.Name)) { return(null); } if (!t2.ParamType.Name.Equals(t1.ParamType)) { return(new ConstantConflictInfo(packageName, t1, ConflictType.InConsistent, ConstantConflictReason.ParamType, "ParamType", "Different ParamTypes")); } // TODO: Tolerance: if ((t1.Value != t2.CalcQuantity.Value)) { return(new ConstantConflictInfo(packageName, t1, ConflictType.InConsistent, ConstantConflictReason.Value, "Value", "Different values")); } if (!t1.Description.Equals(t2.Description)) { return(new ConstantConflictInfo(packageName, t1, ConflictType.Consistent, ConstantConflictReason.Description, "Description", "Different description")); } return(new ConstantConflictInfo(packageName, t1, ConflictType.Duplicate, ConstantConflictReason.Duplicate, "Duplicate", "Duplicate")); }
/// <summary> /// Create a new content item from the database row /// </summary> public static Constant NewContentItem(string packageName, TblConstant_Row t1, IList <ParamType> paramTypes, IList <UOMSet> uomSets) { ParamType paramType = FindInList <ParamType>(paramTypes, (item) => item.Name.Equals(t1.ParamType)); if (paramType == null) { return(null); } // ------------- UOMSet uomSet = FindInList <UOMSet>(uomSets, (item) => item.Name.Equals(t1.UnitSet)); if (uomSet == null) { return(null); } AnonUOM anonUOM = new AnonUOM(paramType.Dimensions, uomSet); // ------------- Constant constant = new Constant(packageName, t1.Name, t1.Description, paramType, t1.Value, anonUOM); return(constant); }