public static void Import_Archive_Item_to_ElasticDB(Archive_Model ArchiveModel, string indexName) { var serializer = new JsonNetSerializer(); var connection = Elastic_Utils.ElsaticConnection(); bool index_exists = Elastic_Utils.IfIndexOrTypeExists(indexName, connection); if (!index_exists) { //create new index string settings = Elastic_Utils.BuildIndexSettings(); connection.Put(indexName, settings); } bool type_exists = Elastic_Utils.IfIndexOrTypeExists(indexName + "/docarchive", connection); if (!type_exists) { string json_case_mapping = BuildArchiveMapping(); string result_case_mapping = connection.Put(new PutMappingCommand(indexName, "docarchive"), json_case_mapping); } List <Archive_Model> archiveList = new List <Archive_Model>(); archiveList.Add(ArchiveModel); Elastic_Utils.BulkType <Archive_Model>(archiveList, connection, serializer, indexName, "docarchive"); }
public string GetDownloadURL(Archive_Model item, string connectionString, string sessionTicket, out TransactionalInformation transaction) { var method = MethodInfo.GetCurrentMethod(); var ipInfo = Util.GetIPInfo(HttpContext.Current.Request); String downloadURL = ""; transaction = new TransactionalInformation(); var userSecurityTicket = VerifySessionToken(sessionTicket); try { var _providerFactory = ProviderFactory.Instance; var documentProvider = _providerFactory.CreateDocumentServiceProvider(); Guid id = Guid.Empty; Guid.TryParse(item.documentId, out id); downloadURL = documentProvider.GenerateImageThumbnailLink(id, sessionTicket, true, null, true); } catch (Exception ex) { Logger.LogInfo(new LogEntry(ipInfo.address, ipInfo.agent, connectionString, method, userSecurityTicket, ex)); transaction.ReturnMessage = new List <string>(); string errorMessage = ex.Message; transaction.ReturnStatus = false; transaction.ReturnMessage.Add(errorMessage); transaction.IsAuthenicated = true; transaction.IsException = true; } return(downloadURL); }
public HttpResponseMessage DownloadDocumentItem(Archive_Model item) { TransactionalInformation transaction = new TransactionalInformation(); string downloadURL = archiveDataService.GetDownloadURL(item, connectionString, SessionToken, out transaction); if (transaction.ReturnStatus) { return(Request.CreateResponse(HttpStatusCode.OK, downloadURL)); } return(Request.CreateResponse <TransactionalInformation>(HttpStatusCode.BadRequest, transaction)); }
protected static FR_Guid Execute(DbConnection Connection, DbTransaction Transaction, P_ARCH_UD_1326 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null) { #region UserCode var returnValue = new FR_Guid(); //Put your code here var documentUpload = new ORM_DOC_Document(); documentUpload.DOC_DocumentID = Guid.NewGuid(); documentUpload.IsDeleted = false; documentUpload.Creation_Timestamp = DateTime.Now; documentUpload.Tenant_RefID = securityTicket.TenantID; documentUpload.Alias = Parameter.Receiver; if (Parameter.Mime.Contains("pdf")) { documentUpload.PrimaryType = "Abrechnungen"; documentUpload.GlobalPropertyMatchingID = "pdf mm"; } else { switch (Parameter.Mime) { case "Application/Edifact": documentUpload.PrimaryType = "EDIFACT"; documentUpload.GlobalPropertyMatchingID = Parameter.ContractID.ToString(); break; case "Application/Edifact_Error": documentUpload.PrimaryType = "HIP error import"; break; default: documentUpload.PrimaryType = "Excel report"; break; } } documentUpload.Save(Connection, Transaction); var documentUploadRevision = new ORM_DOC_DocumentRevision(); documentUploadRevision.DOC_DocumentRevisionID = Guid.NewGuid(); documentUploadRevision.Creation_Timestamp = DateTime.Now; documentUploadRevision.File_MIMEType = Parameter.Mime; documentUploadRevision.IsDeleted = false; documentUploadRevision.Tenant_RefID = securityTicket.TenantID; documentUploadRevision.Document_RefID = documentUpload.DOC_DocumentID; documentUploadRevision.UploadedByAccount = securityTicket.AccountID; documentUploadRevision.File_ServerLocation = Parameter.DocumentID.ToString(); documentUploadRevision.File_Name = Parameter.DocumentName; documentUploadRevision.File_Description = Parameter.Description; documentUploadRevision.Save(Connection, Transaction); var usrAccount = ORM_USR_Account.Query.Search(Connection, Transaction, new ORM_USR_Account.Query() { IsDeleted = false, Tenant_RefID = securityTicket.TenantID, USR_AccountID = securityTicket.AccountID }).Single(); Guid DocStructureGuid = Guid.NewGuid(); var docStructureQ = ORM_DOC_Structure.Query.Search(Connection, Transaction, new ORM_DOC_Structure.Query() { IsDeleted = false, Tenant_RefID = securityTicket.TenantID, Label = usrAccount.BusinessParticipant_RefID.ToString() }).SingleOrDefault(); if (docStructureQ == null) { var docStructure = new ORM_DOC_Structure(); docStructure.DOC_StructureID = DocStructureGuid; docStructure.IsDeleted = false; docStructure.Tenant_RefID = securityTicket.TenantID; docStructure.Label = usrAccount.BusinessParticipant_RefID.ToString(); docStructure.Creation_Timestamp = DateTime.Now; docStructure.Save(Connection, Transaction); } else { DocStructureGuid = docStructureQ.DOC_StructureID; } var doc2docStructure = new ORM_DOC_Document_2_Structure(); doc2docStructure.IsDeleted = false; doc2docStructure.Tenant_RefID = securityTicket.TenantID; doc2docStructure.Creation_Timestamp = DateTime.Now; doc2docStructure.AssignmentID = Guid.NewGuid(); doc2docStructure.Document_RefID = documentUpload.DOC_DocumentID; doc2docStructure.Structure_RefID = DocStructureGuid; doc2docStructure.Save(Connection, Transaction); Archive_Model archiveModel = new Archive_Model(); archiveModel.id = documentUpload.DOC_DocumentID.ToString(); archiveModel.documentId = Parameter.DocumentID.ToString(); archiveModel.filedate = Parameter.DocumentDate.Date; archiveModel.datestring = DateTime.Now.ToString("dd.MM.yyyy"); archiveModel.filetype = documentUpload.PrimaryType; archiveModel.description = documentUploadRevision.File_Description; archiveModel.recipient = documentUpload.Alias; archiveModel.creationtimestamp = new DateTime(Parameter.DocumentDate.Year, Parameter.DocumentDate.Month, Parameter.DocumentDate.Day, Parameter.DocumentDate.Hour, Parameter.DocumentDate.Minute, 0); Add_Item_to_Archive.Import_Archive_Item_to_ElasticDB(archiveModel, securityTicket.TenantID.ToString()); return(returnValue); #endregion UserCode }