public virtual void AddDocumentToFolder(Content.IElectronicDocument document) { var folders = new List <IFolder>(); var official = Docflow.OfficialDocuments.As(document); if (official != null) { var classifierFolders = _obj.Classifier.Where(l => Equals(l.DocumentKind, official.DocumentKind)).Select(l => l.Folder).Distinct().ToList(); if (classifierFolders.Any()) { folders.AddRange(classifierFolders); } else { folders.Add(_obj.Folder); } } else { folders.Add(_obj.Folder); } foreach (var folder in folders.Where(l => !l.Items.Contains(document))) { folder.Items.Add(document); } }
public static string FormatDocumentNameForReport(Content.IElectronicDocument document, int version, bool withHyperlink) { var nonBreakingSpace = Convert.ToChar(160); // При использовании тегов к строке добавляются пробелы с обеих сторон, поэтому не ставится пробел в конечной строке. var documentId = withHyperlink ? string.Format(@"<font color=""blue""><u>{0}</u></font>", document.Id) : string.Format(@"{0}{1}", nonBreakingSpace, document.Id.ToString()); var documentName = document.DisplayValue.Trim(); var versionNumber = document.HasVersions && version < 1 ? document.LastVersion.Number : version; var documentVersion = versionNumber > 0 ? string.Format("{1}{0}{2}", nonBreakingSpace, Docflow.Resources.Version, versionNumber) : Docflow.Resources.WithoutVersion; return(string.Format("{1}{0}({2}:{3},{0}{4})", nonBreakingSpace, documentName, Docflow.Resources.Id, documentId, documentVersion)); }
public static string FormatDocumentNameForReport(Content.IElectronicDocument document, bool withHyperlink) { return(PublicFunctions.Module.FormatDocumentNameForReport(document, 0, withHyperlink)); }