private List <FormularyTreeModel> ConvertToFormularyTreeModel(List <FormularyListAPIModel> apiModelList, Dictionary <string, string> recordStatusDictionary) { var treeList = new List <FormularyTreeModel>(); if (!apiModelList.IsCollectionValid()) { return(treeList); } foreach (FormularyListAPIModel result in apiModelList) { var formularyTree = new FormularyTreeModel(); formularyTree.Data["Level"] = result.ProductType; formularyTree.Key = result.Code; formularyTree.Title = result.Name; formularyTree.FormularyVersionId = result.FormularyVersionId; formularyTree.Data["recordstatus"] = new FormaryLookupModel { IsDuplicate = result.IsDuplicate, Code = result.RecStatusCode, Description = result.RecStatusCode.IsNotEmpty() ? recordStatusDictionary[result.RecStatusCode] : null }; formularyTree.Lazy = true; if (string.Compare(result.ProductType, "amp", true) == 0) { formularyTree.Children = new List <FormularyTreeModel>(); } else if (result.Children.IsCollectionValid()) { formularyTree.Children = ConvertToFormularyTreeModel(result.Children, recordStatusDictionary); } treeList.Add(formularyTree); } return(treeList); }
private List <FormularyTreeModel> FillFormularyTreeModel(List <DMDSearchResultWithTree> nodes) { var formularyNodes = new List <FormularyTreeModel>(); foreach (DMDSearchResultWithTree node in nodes) { var formularyNode = new FormularyTreeModel(); formularyNode.Data["Level"] = node.Level; formularyNode.Key = node.Code; formularyNode.Title = node.Name; if (node.Children.IsCollectionValid()) { formularyNode.Children = FillFormularyTreeModel(node.Children); } formularyNodes.Add(formularyNode); } return(formularyNodes); }