/// <summary> /// /// </summary> /// <param name="fileManager"></param> /// <param name="version"></param> /// <returns></returns> public static DocsPaVO.documento.FileRequest CopyToRepository(SessionRepositoryFileManager fileManager, DocsPaVO.documento.FileRequest version) { DocsPaVO.documento.FileRequest result = null; version.repositoryContext = null; if (fileManager.ExistFile(version)) { // Reperimento del file dal repository di sessione DocsPaVO.documento.FileDocumento document = fileManager.GetFile(version); // Inserimento del file nel repository documentale result = BusinessLogic.Documenti.FileManager.putFile(version, document, fileManager.Context.Owner); } else { result = version; } return(result); }
/// <summary> /// Rimozione di un allegato /// </summary> /// <param name="allegato"></param> /// <param name="infoUtente"></param> public static bool rimuoviAllegato(DocsPaVO.documento.Allegato allegato, DocsPaVO.utente.InfoUtente infoUtente) { bool retValue = false; if (allegato.repositoryContext != null) { // Rimozione dell'allegato nell'ambito del repository context SessionRepositoryFileManager fm = BusinessLogic.Documenti.SessionRepositoryFileManager.GetFileManager(allegato.repositoryContext); // Verifica esistenza file acquisito nel repository context if (fm.ExistFile(allegato)) { fm.RemoveFile(allegato); } retValue = true; } else { // Controllo su stato congelato DocumentConsolidation.CanExecuteAction(infoUtente, allegato.docNumber, DocumentConsolidation.ConsolidationActionsDeniedEnum.RemoveAttatchments, true); using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext()) { DocsPaDocumentale.Documentale.DocumentManager documentManager = new DocsPaDocumentale.Documentale.DocumentManager(infoUtente); retValue = documentManager.RemoveAttatchment(allegato); if (retValue) { transactionContext.Complete(); } } } return(retValue); }
/// <summary> /// /// </summary> /// <param name="fileManager"></param> /// <param name="versions"></param> /// <returns></returns> public static DocsPaVO.documento.FileRequest[] CopyToRepository(SessionRepositoryFileManager fileManager, DocsPaVO.documento.FileRequest[] versions) { List <DocsPaVO.documento.FileRequest> newVersions = new List <DocsPaVO.documento.FileRequest>(); string tmpVersionLabel; foreach (DocsPaVO.documento.FileRequest version in versions) { tmpVersionLabel = version.versionLabel; version.repositoryContext = null; if (fileManager.ExistFile(version)) { // Reperimento del file dal repository di sessione DocsPaVO.documento.FileDocumento document = fileManager.GetFile(version); // Inserimento del file nel repository documentale DocsPaVO.documento.FileRequest result = BusinessLogic.Documenti.FileManager.putFile(version, document, fileManager.Context.Owner); if (!string.IsNullOrEmpty(tmpVersionLabel) && result != null) { result.versionLabel = tmpVersionLabel; } newVersions.Add(result); // Rimozione del file dal repository di sessione version.repositoryContext = null; } else { newVersions.Add(version); } } return(newVersions.ToArray()); }