private ComponentInfo Add_BodyInfo_In_Component(IPart7 Part, IBody7 _body, ComponentInfo componentInfo) { ComponentInfo componentInfo_Copy = (ComponentInfo)componentInfo.Clone(); componentInfo_Copy.Body = GetParamBody(_body); double kolvo = Convert.ToDouble(GetPropertyBodyIPart7(Part, _body, "Количество")); if (kolvo == 0) { componentInfo_Copy.Body.QNT = 1; componentInfo_Copy.Body.QNT_False = true; } else { componentInfo_Copy.Body.QNT = kolvo; componentInfo_Copy.Body.QNT_False = false; } componentInfo_Copy.Key = Part.FileName + "|" + Part.Marking + "|" + _body.Marking; Dictionary <string, string> ParamValueList = new Dictionary <string, string>(); foreach (string ParamName in FindParam_Model) { string ParamValue = null; ParamValue = OptionsFold.tools_class.FixInvalidChars_St(GetPropertyBodyIPart7(Part, _body, ParamName), ""); if (Split_Naim && ParamName == "Наименование") { ParamValue = OptionsFold.tools_class.SplitString(ParamValue); } ParamValueList.Add(ParamName, ParamValue); } componentInfo_Copy.Body.ParamValueList = ParamValueList; return(componentInfo_Copy); }
private TreeListNode AddNode(TreeListNode ThisNode, ComponentInfo _componentInfo, bool AddBodyTree) { TreeListNode ChildNode = null; if (ThisNode != null) { foreach (TreeListNode TempNode in ThisNode.Nodes) { ComponentInfo temp_componentInfo = (ComponentInfo)TempNode.Tag; if (temp_componentInfo.Key == _componentInfo.Key) { //temp_componentInfo.QNT = Convert.ToDouble(TempNode.GetValue("Количество")) + 1; double QNT = 0; if (AddBodyTree) { QNT = temp_componentInfo.Body.QNT + _componentInfo.Body.QNT; } else { QNT = temp_componentInfo.QNT + _componentInfo.QNT; } ChildNode = TempNode; ChildNode.SetValue("Количество", QNT); ChildNode.SetValue("Количество общ.", GetTotalQNT(ChildNode)); return(ChildNode); } } } ChildNode = ThisNode.Nodes.Add(); ComponentInfo FindModel_Item = (ComponentInfo)_componentInfo.Clone(); //FindModel_Item.QNT = 1; FindModel_List.Add(FindModel_Item); if (!AddBodyTree) { AddCellsInNode(ChildNode, _componentInfo); } else { AddCellsInNode(ChildNode, _componentInfo.Body); } ChildNode.SetValue("Количество общ.", GetTotalQNT(ChildNode)); return(ChildNode); }