Example #1
0
        protected static FR_Guid Execute(DbConnection Connection, DbTransaction Transaction, P_L5BD_SBIfII_1360 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null)
        {
            //Leave UserCode region to enable user code saving
            #region UserCode
            var returnValue = new FR_Guid();


            ORM_DOC_DocumentRevision documentRevision = new ORM_DOC_DocumentRevision();
            documentRevision.Load(Connection, Transaction, Parameter.DOC_DocumentRevisionID);
            if (documentRevision.DOC_DocumentRevisionID == Guid.Empty)
            {
                //Put your code here
                ORM_DOC_Structure structure = ORM_DOC_Structure.Query.Search(Connection, Transaction, new ORM_DOC_Structure.Query {
                    Structure_Header_RefID = Parameter.DOC_StructureHeaderRefID, Tenant_RefID = securityTicket.TenantID, IsDeleted = false
                }).FirstOrDefault();

                if (structure == null)
                {
                    structure = new ORM_DOC_Structure();
                }

                structure.Structure_Header_RefID  = Parameter.DOC_StructureHeaderRefID;
                structure.CreatedBy_Account_RefID = securityTicket.AccountID;
                structure.Tenant_RefID            = securityTicket.TenantID;
                structure.Save(Connection, Transaction);

                ORM_DOC_Document document = new ORM_DOC_Document();
                document.Tenant_RefID = securityTicket.TenantID;
                document.Save(Connection, Transaction);

                ORM_DOC_Document_2_Structure documentStructure = new ORM_DOC_Document_2_Structure();

                documentStructure.Document_RefID        = document.DOC_DocumentID;
                documentStructure.Structure_RefID       = structure.DOC_StructureID;
                documentStructure.StructureHeader_RefID = Parameter.DOC_StructureHeaderRefID;
                documentStructure.Tenant_RefID          = securityTicket.TenantID;
                documentStructure.Save(Connection, Transaction);


                documentRevision.DOC_DocumentRevisionID = Parameter.DOC_DocumentRevisionID;
                documentRevision.Document_RefID         = document.DOC_DocumentID;
                documentRevision.File_Name           = Parameter.File_Name;
                documentRevision.File_Description    = Parameter.File_Description;
                documentRevision.File_SourceLocation = Parameter.File_SourceLocation;
                documentRevision.File_ServerLocation = Parameter.File_ServerLocation;
                documentRevision.File_MIMEType       = Parameter.File_MIMEType;
                documentRevision.File_Extension      = Parameter.File_Extension;
                documentRevision.File_Size_Bytes     = Parameter.File_Size_Bytes;
                documentRevision.UploadedByAccount   = securityTicket.AccountID;
                documentRevision.Tenant_RefID        = securityTicket.TenantID;
                documentRevision.Save(Connection, Transaction);

                returnValue.Result = documentRevision.DOC_DocumentRevisionID;
            }

            return(returnValue);

            #endregion UserCode
        }
Example #2
0
        protected static FR_Guid Execute(DbConnection Connection, DbTransaction Transaction, P_L2DO_SDDR_1644 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null)
        {
            var returnValue = new FR_Guid();

            var item = new ORM_DOC_DocumentRevision();

            if (Parameter.DOC_DocumentRevisionID != Guid.Empty)
            {
                var result = item.Load(Connection, Transaction, Parameter.DOC_DocumentRevisionID);
                if (result.Status != FR_Status.Success || item.DOC_DocumentRevisionID == Guid.Empty)
                {
                    var error = new FR_Guid();
                    error.ErrorMessage = "No Such ID";
                    error.Status       = FR_Status.Error_Internal;
                    return(error);
                }
            }

            if (Parameter.IsDeleted == true)
            {
                item.IsDeleted = true;
                return(new FR_Guid(item.Save(Connection, Transaction), item.DOC_DocumentRevisionID));
            }

            //Creation specific parameters (Tenant, Account ... )
            if (Parameter.DOC_DocumentRevisionID == Guid.Empty)
            {
                item.Tenant_RefID = securityTicket.TenantID;
            }

            item.Document_RefID      = Parameter.Document_RefID;
            item.Revision            = Parameter.Revision;
            item.IsLocked            = Parameter.IsLocked;
            item.IsLastRevision      = Parameter.IsLastRevision;
            item.UploadedByAccount   = Parameter.UploadedByAccount;
            item.File_Name           = Parameter.File_Name;
            item.File_Description    = Parameter.File_Description;
            item.File_SourceLocation = Parameter.File_SourceLocation;
            item.File_ServerLocation = Parameter.File_ServerLocation;
            item.File_MIMEType       = Parameter.File_MIMEType;
            item.File_Extension      = Parameter.File_Extension;
            item.File_Size_Bytes     = Parameter.File_Size_Bytes;


            return(new FR_Guid(item.Save(Connection, Transaction), item.DOC_DocumentRevisionID));
        }
Example #3
0
        protected static FR_Guid Execute(DbConnection Connection, DbTransaction Transaction, P_L5BD_SBI_1360 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null)
        {
            #region UserCode
            var returnValue = new FR_Guid();

            //Put your code here
            ORM_DOC_Structure structure = new ORM_DOC_Structure();
            structure.Structure_Header_RefID  = Parameter.DOC_StructureHeaderRefID;
            structure.CreatedBy_Account_RefID = securityTicket.AccountID;
            structure.Tenant_RefID            = securityTicket.TenantID;
            structure.Save(Connection, Transaction);

            ORM_DOC_Document document = new ORM_DOC_Document();
            document.Tenant_RefID = securityTicket.TenantID;
            document.Save(Connection, Transaction);

            ORM_DOC_Document_2_Structure documentStructure = new ORM_DOC_Document_2_Structure();
            documentStructure.Document_RefID        = document.DOC_DocumentID;
            documentStructure.Structure_RefID       = structure.DOC_StructureID;
            documentStructure.StructureHeader_RefID = Parameter.DOC_StructureHeaderRefID;
            documentStructure.Tenant_RefID          = securityTicket.TenantID;
            documentStructure.Save(Connection, Transaction);

            ORM_DOC_DocumentRevision documentRevision = new ORM_DOC_DocumentRevision();
            documentRevision.DOC_DocumentRevisionID = Parameter.DocumentID;
            documentRevision.Document_RefID         = document.DOC_DocumentID;
            documentRevision.File_Name           = Parameter.File_Name;
            documentRevision.File_Description    = Parameter.File_Description;
            documentRevision.File_SourceLocation = Parameter.File_SourceLocation;
            documentRevision.File_ServerLocation = Parameter.File_ServerLocation;
            documentRevision.File_MIMEType       = Parameter.File_MIMEType;
            documentRevision.File_Extension      = Parameter.File_Extension;
            documentRevision.File_Size_Bytes     = Parameter.File_Size_Bytes;
            documentRevision.UploadedByAccount   = securityTicket.AccountID;
            documentRevision.Tenant_RefID        = securityTicket.TenantID;
            documentRevision.Save(Connection, Transaction);

            returnValue.Result = documentRevision.DOC_DocumentRevisionID;

            return(returnValue);

            #endregion UserCode
        }
Example #4
0
        protected static FR_Guid Execute(DbConnection Connection, DbTransaction Transaction, P_L5PS_ST_1157 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null)
        {
            //Leave UserCode region to enable user code saving
            #region UserCode
            var returnValue = new FR_Guid();

            #region Get Account By AccountID

            var account = new ORM_USR_Account();
            account.Load(Connection, Transaction, securityTicket.AccountID);

            #endregion

            #region PrescriptionTransaction_InternalNubmer

            var qtransaction = new ORM_HEC_Patient_Prescription_Transaction.Query();
            qtransaction.Tenant_RefID = securityTicket.TenantID;

            var count          = ORM_HEC_Patient_Prescription_Transaction.Query.Search(Connection, Transaction, qtransaction).Count();
            var internalnumber = "0000000" + count;
            internalnumber = internalnumber.Substring(internalnumber.Length - 7, 7);

            #endregion

            var transaction = new ORM_HEC_Patient_Prescription_Transaction();
            transaction.HEC_Patient_Prescription_TransactionID = Guid.NewGuid();
            transaction.PrescriptionTransaction_InternalNubmer = internalnumber;
            transaction.PrescriptionTransaction_IsComplete     = false;
            transaction.PrescriptionTransaction_RequestedDateOfDeliveryFrom       = Parameter.PrescriptionTransaction_RequestedDateOfDeliveryFrom;
            transaction.PrescriptionTransaction_RequestedDateOfDeliveryTo         = Parameter.PrescriptionTransaction_RequestedDateOfDeliveryTo;
            transaction.PrescriptionTransaction_CreatedByBusinessParticpant_RefID = account.BusinessParticipant_RefID;
            transaction.PrescriptionTransaction_Comment                       = Parameter.PrescriptionTransaction_Comment;
            transaction.PrescriptionTransaction_Patient_RefID                 = Parameter.PrescriptionTransaction_Patient_RefID;
            transaction.PerscriptionTransaction_DeliveryAddress_RefID         = Parameter.PrescriptionTransaction_Address_RefID;
            transaction.PrescriptionTransaction_UseParticipationPolicyAddress = false;
            transaction.PrescriptionTransaction_UsePatientAddress             = true;
            transaction.PrescriptionTransaction_UseReceiptAddress             = false;
            transaction.Creation_Timestamp = DateTime.Now;
            transaction.Tenant_RefID       = securityTicket.TenantID;
            transaction.Save(Connection, Transaction);

            if (Parameter.Prescriptions != null)
            {
                var header = new ORM_HEC_Patient_Prescription_Header();
                header.HEC_Patient_Prescription_HeaderID = Guid.NewGuid();
                header.Patient_RefID               = Parameter.PrescriptionTransaction_Patient_RefID;
                header.PrescribedBy_Doctor_RefID   = Guid.Empty;
                header.Prescription_Date           = new DateTime();
                header.Prescription_Comment        = "";
                header.Prescription_InternalNumber = transaction.PrescriptionTransaction_InternalNubmer + "/" + 1;
                header.Perscription_UploadedByBusinessParticipant_RefID = account.BusinessParticipant_RefID;
                header.Creation_Timestamp = DateTime.Now;
                header.Tenant_RefID       = securityTicket.TenantID;
                header.Save(Connection, Transaction);

                var transaction2header = new ORM_HEC_Patient_Prescription_2_PrescriptionTransaction();
                transaction2header.AssignmentID = Guid.NewGuid();
                transaction2header.HEC_Patient_Prescription_Header_RefID      = header.HEC_Patient_Prescription_HeaderID;
                transaction2header.HEC_Patient_Prescription_Transaction_RefID = transaction.HEC_Patient_Prescription_TransactionID;
                transaction2header.Creation_Timestamp = DateTime.Now;
                transaction2header.Tenant_RefID       = securityTicket.TenantID;
                transaction2header.Save(Connection, Transaction);

                var prescriptionDocument = new ORM_HEC_Patient_Prescription_Document();
                prescriptionDocument.HEC_Patient_Prescription_DocumentID = Guid.NewGuid();
                prescriptionDocument.PrescriptionHeader_RefID            = header.HEC_Patient_Prescription_HeaderID;
                prescriptionDocument.Comment            = "";
                prescriptionDocument.Document_RefID     = Guid.NewGuid();
                prescriptionDocument.Creation_Timestamp = DateTime.Now;
                prescriptionDocument.Tenant_RefID       = securityTicket.TenantID;
                prescriptionDocument.Save(Connection, Transaction);

                var document = new ORM_DOC_Document();
                document.DOC_DocumentID     = prescriptionDocument.Document_RefID;
                document.Alias              = Parameter.Prescriptions.File_Name;
                document.PrimaryType        = Parameter.Prescriptions.File_Extension;
                document.Creation_Timestamp = DateTime.Now;
                document.Tenant_RefID       = securityTicket.TenantID;
                document.Save(Connection, Transaction);

                var revision = new ORM_DOC_DocumentRevision();
                revision.DOC_DocumentRevisionID = Guid.NewGuid();
                revision.Document_RefID         = prescriptionDocument.Document_RefID;
                revision.Revision            = 1;
                revision.IsLastRevision      = true;
                revision.UploadedByAccount   = securityTicket.AccountID;
                revision.File_Name           = Parameter.Prescriptions.File_Name;
                revision.File_ServerLocation = Parameter.Prescriptions.File_ServerLocation;
                revision.File_Extension      = Parameter.Prescriptions.File_Extension;
                revision.File_Size_Bytes     = Parameter.Prescriptions.File_Size_Bytes;
                revision.Creation_Timestamp  = DateTime.Now;
                revision.Tenant_RefID        = securityTicket.TenantID;
                revision.Save(Connection, Transaction);
            }
            return(returnValue);

            #endregion UserCode
        }
Example #5
0
        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
        }
Example #6
0
        protected static FR_Guid Execute(DbConnection Connection, DbTransaction Transaction, P_L3DO_SDR_1401 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null)
        {
            //Leave UserCode region to enable user code saving
            #region UserCode

            var returnValue = new FR_Guid();

            var item = new ORM_DOC_DocumentRevision();
            if (Parameter.DOC_DocumentRevisionID != Guid.Empty)
            {
                var result = item.Load(Connection, Transaction, Parameter.DOC_DocumentRevisionID);
                if (result.Status != FR_Status.Success || item.DOC_DocumentRevisionID == Guid.Empty)
                {
                    var error = new FR_Guid();
                    error.ErrorMessage = "No Such ID";
                    error.Status       = FR_Status.Error_Internal;
                    return(error);
                }
            }

            if (Parameter.IsDeleted == true)
            {
                item.IsDeleted = true;
                return(new FR_Guid(item.Save(Connection, Transaction), item.DOC_DocumentRevisionID));
            }

            //Creation specific parameters (Tenant, Account ... )
            if (Parameter.DOC_DocumentRevisionID == Guid.Empty)
            {
                #region Set IsLastRevision

                ORM_DOC_DocumentRevision instance = CSV2Core_MySQL.Support.SQLClassFilter.GetDefaultInstance <ORM_DOC_DocumentRevision>();
                instance.IsLastRevision = false;
                InstanceFilterWrapper instanceWrap = InstanceFilterWrapper.Wrap(instance, new string[] { "IsLastRevision" });

                ORM_DOC_DocumentRevision comparator = CSV2Core_MySQL.Support.SQLClassFilter.GetDefaultInstance <ORM_DOC_DocumentRevision>();
                comparator.Document_RefID = Parameter.Document_RefID;
                InstanceFilterWrapper comparatorWrap = InstanceFilterWrapper.Wrap(comparator, new string[] { "Document_RefID" });

                CSV2Core_MySQL.Support.SQLClassFilter.UpdateValue(Connection, Transaction, instanceWrap, comparatorWrap);

                #endregion setLastRevision

                ORM_DOC_DocumentRevision instance2 = CSV2Core_MySQL.Support.SQLClassFilter.GetDefaultInstance <ORM_DOC_DocumentRevision>();
                instance2.Document_RefID = Parameter.Document_RefID;
                InstanceFilterWrapper wrapper = InstanceFilterWrapper.Wrap(instance2);
                int count = CSV2Core_MySQL.Support.SQLClassFilter.Count(Connection, Transaction, wrapper);

                item.IsLastRevision = true;
                item.Revision       = count + 1;
                item.Tenant_RefID   = securityTicket.TenantID;
            }

            item.Document_RefID = Parameter.Document_RefID;
            //item.Revision = Parameter.Revision;
            item.IsLocked = Parameter.IsLocked;
            //item.IsLastRevision = Parameter.IsLastRevision;
            item.UploadedByAccount   = securityTicket.AccountID;
            item.File_Name           = Parameter.File_Name;
            item.File_Description    = Parameter.File_Description;
            item.File_SourceLocation = Parameter.File_SourceLocation;
            item.File_ServerLocation = Parameter.File_ServerLocation;
            item.File_MIMEType       = Parameter.File_MIMEType;
            item.File_Extension      = Parameter.File_Extension;
            item.File_Size_Bytes     = Parameter.File_Size_Bytes;


            return(new FR_Guid(item.Save(Connection, Transaction), item.DOC_DocumentRevisionID));

            #endregion UserCode
        }
Example #7
0
        protected static FR_Guid Execute(DbConnection Connection, DbTransaction Transaction, P_L5AR_SA_1614 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null)
        {
            #region UserCode
            var returnValue = new FR_Guid();

            var languageQuery = new ORM_CMN_Language.Query();
            languageQuery.Tenant_RefID = securityTicket.TenantID;
            languageQuery.IsDeleted    = false;
            var languages = ORM_CMN_Language.Query.Search(Connection, Transaction, languageQuery);

            var product = new ORM_CMN_PRO_Product();

            if (Parameter.ArticleID == Guid.Empty)
            {
                #region ORM_CMN_PRO_Product

                product = new ORM_CMN_PRO_Product();
                product.CMN_PRO_ProductID = Guid.NewGuid();
                product.ProductITL        = Guid.NewGuid().ToString();

                product.IsProduct_Article             = true;
                product.IsProductAvailableForOrdering = true;
                product.IsImportedFromExternalCatalog = false;

                product.Product_Name        = new Dict(ORM_CMN_PRO_Product.TableName);
                product.Product_Description = new Dict(ORM_CMN_PRO_Product.TableName);

                product.PackageInfo_RefID = Guid.NewGuid();

                product.Creation_Timestamp = DateTime.Now;
                product.Tenant_RefID       = securityTicket.TenantID;
                product.IsDeleted          = Parameter.IsDeleted;


                #region Product picture

                if (Parameter.Image != null && Parameter.Image.Document_ID != Guid.Empty)
                {
                    ORM_DOC_Structure_Header structureHeader = new ORM_DOC_Structure_Header();
                    structureHeader.Label        = "Product picture";
                    structureHeader.Tenant_RefID = securityTicket.TenantID;
                    structureHeader.Save(Connection, Transaction);

                    ORM_DOC_Structure structure = new ORM_DOC_Structure();
                    structure.Label = "Product picture";
                    structure.Structure_Header_RefID  = structureHeader.DOC_Structure_HeaderID;
                    structure.CreatedBy_Account_RefID = securityTicket.AccountID;
                    structure.Tenant_RefID            = securityTicket.TenantID;
                    structure.Save(Connection, Transaction);

                    ORM_DOC_Document document = new ORM_DOC_Document();
                    document.DOC_DocumentID = Parameter.Image.Document_ID;
                    document.Tenant_RefID   = securityTicket.TenantID;
                    document.Save(Connection, Transaction);

                    ORM_DOC_Document_2_Structure documentStructure = new ORM_DOC_Document_2_Structure();
                    documentStructure.Document_RefID        = document.DOC_DocumentID;
                    documentStructure.Structure_RefID       = structure.DOC_StructureID;
                    documentStructure.StructureHeader_RefID = structureHeader.DOC_Structure_HeaderID;
                    documentStructure.Tenant_RefID          = securityTicket.TenantID;
                    documentStructure.Save(Connection, Transaction);

                    ORM_DOC_DocumentRevision documentRevision = new ORM_DOC_DocumentRevision();
                    documentRevision.Document_RefID      = document.DOC_DocumentID;
                    documentRevision.Revision            = 1;
                    documentRevision.IsLocked            = false;
                    documentRevision.IsLastRevision      = true;
                    documentRevision.UploadedByAccount   = securityTicket.AccountID;
                    documentRevision.File_Name           = Parameter.Image.File_Name;
                    documentRevision.File_Description    = Parameter.Image.File_Description;
                    documentRevision.File_SourceLocation = Parameter.Image.File_Source_Location;
                    documentRevision.File_ServerLocation = Parameter.Image.File_Server_Location;
                    documentRevision.File_MIMEType       = Parameter.Image.File_MimeType;
                    documentRevision.File_Extension      = Parameter.Image.File_Extension;
                    documentRevision.File_Size_Bytes     = Parameter.Image.File_Size_Bytes;
                    documentRevision.Tenant_RefID        = securityTicket.TenantID;
                    documentRevision.Save(Connection, Transaction);

                    //add relation for product picture with product
                    product.Product_DocumentationStructure_RefID = structureHeader.DOC_Structure_HeaderID;
                }

                #endregion

                product.Save(Connection, Transaction);

                #endregion
            }
            else
            {
                product.Load(Connection, Transaction, Parameter.ArticleID);

                #region Product picture

                if (Parameter.Image != null && Parameter.Image.Document_ID != Guid.Empty)
                {
                    ORM_DOC_Structure_Header structureHeader = new ORM_DOC_Structure_Header();
                    structureHeader.Label        = "Product picture";
                    structureHeader.Tenant_RefID = securityTicket.TenantID;
                    structureHeader.Save(Connection, Transaction);

                    ORM_DOC_Structure structure = new ORM_DOC_Structure();
                    structure.Label = "Product picture";
                    structure.Structure_Header_RefID  = structureHeader.DOC_Structure_HeaderID;
                    structure.CreatedBy_Account_RefID = securityTicket.AccountID;
                    structure.Tenant_RefID            = securityTicket.TenantID;
                    structure.Save(Connection, Transaction);

                    ORM_DOC_Document document = new ORM_DOC_Document();
                    document.DOC_DocumentID = Parameter.Image.Document_ID;
                    document.Tenant_RefID   = securityTicket.TenantID;
                    document.Save(Connection, Transaction);

                    ORM_DOC_Document_2_Structure documentStructure = new ORM_DOC_Document_2_Structure();
                    documentStructure.Document_RefID        = document.DOC_DocumentID;
                    documentStructure.Structure_RefID       = structure.DOC_StructureID;
                    documentStructure.StructureHeader_RefID = structureHeader.DOC_Structure_HeaderID;
                    documentStructure.Tenant_RefID          = securityTicket.TenantID;
                    documentStructure.Save(Connection, Transaction);

                    ORM_DOC_DocumentRevision documentRevision = new ORM_DOC_DocumentRevision();
                    documentRevision.Document_RefID      = document.DOC_DocumentID;
                    documentRevision.Revision            = 1;
                    documentRevision.IsLocked            = false;
                    documentRevision.IsLastRevision      = true;
                    documentRevision.UploadedByAccount   = securityTicket.AccountID;
                    documentRevision.File_Name           = Parameter.Image.File_Name;
                    documentRevision.File_Description    = Parameter.Image.File_Description;
                    documentRevision.File_SourceLocation = Parameter.Image.File_Source_Location;
                    documentRevision.File_ServerLocation = Parameter.Image.File_Server_Location;
                    documentRevision.File_MIMEType       = Parameter.Image.File_MimeType;
                    documentRevision.File_Extension      = Parameter.Image.File_Extension;
                    documentRevision.File_Size_Bytes     = Parameter.Image.File_Size_Bytes;
                    documentRevision.Tenant_RefID        = securityTicket.TenantID;
                    documentRevision.Save(Connection, Transaction);

                    //add relation for product picture with product
                    product.Product_DocumentationStructure_RefID = structureHeader.DOC_Structure_HeaderID;
                }
                else
                {
                    //  if (Parameter.Image.IsForDeleting)  if product image has to be deleted
                }

                #endregion
            }


            #region ORM_CMN_PRO_Product

            product.Product_Number = Parameter.ProductNumber;

            foreach (var language in languages)
            {
                product.Product_Name.UpdateEntry(language.CMN_LanguageID, Parameter.ArticleName);
                product.Product_Description.UpdateEntry(language.CMN_LanguageID, Parameter.Description);
            }

            product.ProductType_RefID = Guid.Empty;

            product.IsPlaceholderArticle = Parameter.IsDummy;

            product.ProductSuccessor_RefID = Guid.Empty;
            product.IsDeleted = Parameter.IsDeleted;
            product.Save(Connection, Transaction);



            #endregion


            //#region ORM_CMN_PRO_Product_2_ProductCode

            //var product2CodeQuery = new ORM_CMN_PRO_Product_2_ProductCode.Query();
            //product2CodeQuery.CMN_PRO_Product_RefID = product.CMN_PRO_ProductID;
            //product2CodeQuery.Tenant_RefID = securityTicket.TenantID;
            //product2CodeQuery.IsDeleted = false;

            //var productCodeAssignment = ORM_CMN_PRO_Product_2_ProductCode.Query.Search(Connection, Transaction, product2CodeQuery).SingleOrDefault();

            //if (productCodeAssignment == null)
            //{
            //    #region ORM_CMN_PRO_ProductCode
            #region Variant
            //Create default varient
            var defaultVarient = new ORM_CMN_PRO_Product_Variant();
            defaultVarient.CMN_PRO_Product_VariantID = Guid.NewGuid();
            defaultVarient.CMN_PRO_Product_RefID     = product.CMN_PRO_ProductID;
            defaultVarient.IsStandardProductVariant  = true;
            defaultVarient.Tenant_RefID = securityTicket.TenantID;
            defaultVarient.VariantName  = new Dict(ORM_CMN_PRO_Product_Variant.TableName);


            foreach (var language in languages)
            {
                defaultVarient.VariantName.UpdateEntry(language.CMN_LanguageID, String.Empty);
            }

            defaultVarient.Save(Connection, Transaction);
            #endregion

            returnValue.Result = product.CMN_PRO_ProductID;
            return(returnValue);

            #endregion UserCode
        }
Example #8
0
        protected static FR_Guid Execute(DbConnection Connection, DbTransaction Transaction, P_ARCH_UCPD_0950 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null)
        {
            #region UserCode
            var returnValue = new FR_Guid();
            //Put your code here
            if (Parameter.PlannedActionID == Guid.Empty)
            {
                return(returnValue);
            }

            var documentUpload = ORM_DOC_Document.Query.Search(Connection, Transaction, new ORM_DOC_Document.Query()
            {
                Tenant_RefID = securityTicket.TenantID,
                IsDeleted    = false,
                Alias        = Parameter.PlannedActionID.ToString()
            }).SingleOrDefault();

            var documentUploadRevision = new ORM_DOC_DocumentRevision();
            documentUploadRevision.Revision = 0;

            if (documentUpload == null)
            {
                documentUpload = new ORM_DOC_Document();
                documentUpload.Tenant_RefID             = securityTicket.TenantID;
                documentUpload.Alias                    = Parameter.PlannedActionID.ToString();
                documentUpload.GlobalPropertyMatchingID = "case pdf";

                documentUpload.Save(Connection, Transaction);
            }
            else
            {
                var previousDocumentUploadRevision = ORM_DOC_DocumentRevision.Query.Search(Connection, Transaction, new ORM_DOC_DocumentRevision.Query()
                {
                    IsLastRevision = true,
                    Tenant_RefID   = securityTicket.TenantID,
                    IsDeleted      = false,
                    Document_RefID = documentUpload.DOC_DocumentID
                }).SingleOrDefault();

                previousDocumentUploadRevision.IsLastRevision         = false;
                previousDocumentUploadRevision.Modification_Timestamp = DateTime.Now;

                previousDocumentUploadRevision.Save(Connection, Transaction);

                documentUploadRevision.Revision = previousDocumentUploadRevision.Revision + 1;
            }

            documentUploadRevision.File_MIMEType       = Parameter.Mime;
            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.CaseID.ToString();
            documentUploadRevision.IsLastRevision      = true;

            documentUploadRevision.Save(Connection, Transaction);

            var docStructure = ORM_DOC_Structure.Query.Search(Connection, Transaction, new ORM_DOC_Structure.Query()
            {
                IsDeleted    = false,
                Tenant_RefID = securityTicket.TenantID,
                Label        = Parameter.CaseID.ToString()
            }).FirstOrDefault();

            if (docStructure == null)
            {
                docStructure = new ORM_DOC_Structure();
                docStructure.Tenant_RefID = securityTicket.TenantID;
                docStructure.Label        = Parameter.CaseID.ToString();

                docStructure.Save(Connection, Transaction);
            }

            var doc2docStructure = new ORM_DOC_Document_2_Structure();
            doc2docStructure.Tenant_RefID    = securityTicket.TenantID;
            doc2docStructure.Document_RefID  = documentUpload.DOC_DocumentID;
            doc2docStructure.Structure_RefID = docStructure.DOC_StructureID;

            doc2docStructure.Save(Connection, Transaction);

            #region Case property
            var caseProperty = ORM_HEC_CAS_Case_UniversalProperty.Query.Search(Connection, Transaction, new ORM_HEC_CAS_Case_UniversalProperty.Query()
            {
                GlobalPropertyMatchingID = ECaseProperty.ReportDownloaded.Value(),
                Tenant_RefID             = securityTicket.TenantID,
                IsValue_String           = true,
                IsDeleted    = false,
                PropertyName = "Case Report Downloaded"
            }).SingleOrDefault();

            if (caseProperty == null)
            {
                caseProperty = new ORM_HEC_CAS_Case_UniversalProperty();
                caseProperty.GlobalPropertyMatchingID = ECaseProperty.ReportDownloaded.Value();
                caseProperty.IsValue_String           = true;
                caseProperty.Modification_Timestamp   = DateTime.Now;
                caseProperty.PropertyName             = "Case Report Downloaded";
                caseProperty.Tenant_RefID             = securityTicket.TenantID;

                caseProperty.Save(Connection, Transaction);
            }

            var casePropertyValue = ORM_HEC_CAS_Case_UniversalPropertyValue.Query.Search(Connection, Transaction, new ORM_HEC_CAS_Case_UniversalPropertyValue.Query()
            {
                HEC_CAS_Case_RefID = Parameter.CaseID,
                HEC_CAS_Case_UniversalProperty_RefID = caseProperty.HEC_CAS_Case_UniversalPropertyID,
                Tenant_RefID = securityTicket.TenantID,
                IsDeleted    = false
            }).SingleOrDefault();

            if (casePropertyValue == null)
            {
                casePropertyValue = new ORM_HEC_CAS_Case_UniversalPropertyValue();
                casePropertyValue.HEC_CAS_Case_RefID = Parameter.CaseID;
                casePropertyValue.HEC_CAS_Case_UniversalProperty_RefID = caseProperty.HEC_CAS_Case_UniversalPropertyID;
                casePropertyValue.Tenant_RefID = securityTicket.TenantID;
            }

            casePropertyValue.Modification_Timestamp = DateTime.Now;
            if (casePropertyValue.Value_String == null)
            {
                casePropertyValue.Value_String = Parameter.PlannedActionID.ToString();
            }
            else
            {
                if (!casePropertyValue.Value_String.Contains(Parameter.PlannedActionID.ToString()))
                {
                    casePropertyValue.Value_String += ";" + Parameter.PlannedActionID.ToString();
                }
            }

            casePropertyValue.Save(Connection, Transaction);
            #endregion

            if (!Parameter.IsBackgroundTask)
            {
                #region Update elastic
                try
                {
                    var settlement = Get_Settlement.GetSettlementForID(Parameter.PlannedActionID.ToString(), securityTicket);
                    settlement.is_report_downloaded = true;

                    Add_new_Settlement.Import_Settlement_to_ElasticDB(new List <Settlement_Model>()
                    {
                        settlement
                    }, securityTicket.TenantID.ToString());

                    var patientDetails = Retrieve_Patients.Get_PatientDetaiForID(Parameter.PlannedActionID.ToString(), securityTicket);
                    patientDetails.if_settlement_is_report_downloaded = true;

                    Add_New_Patient.ImportPatientDetailsToElastic(new List <PatientDetailViewModel>()
                    {
                        patientDetails
                    }, securityTicket.TenantID.ToString());
                }
                catch { }
            }

            #endregion

            return(returnValue);

            #endregion UserCode
        }
        protected static FR_Guid Execute(DbConnection Connection, DbTransaction Transaction, P_ARCH_UPD_1434 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.RecepiantID.ToString();
            documentUpload.PrimaryType = Parameter.AmountNo.ToString();
            documentUpload.GlobalPropertyMatchingID = "pdf doc";
            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);

            Receipt_Model receipt = new Receipt_Model();
            receipt.id             = documentUpload.DOC_DocumentID.ToString();
            receipt.documentID     = Parameter.DocumentID.ToString();
            receipt.filedate       = Parameter.DocumentDate;
            receipt.filedateString = Parameter.DocumentDate.ToString("dd.MM.yyyy");
            receipt.period         = Parameter.Description;
            receipt.periodDate     = Parameter.DocumentDate;
            receipt.amount         = Parameter.Amount;
            receipt.doctorID       = Parameter.RecepiantID.ToString();
            receipt.amountNo       = Parameter.AmountNo;
            receipt.isViewed       = false;

            Add_Item_to_Receipts.Import_Receipt_Item_to_ElasticDB(new List <Receipt_Model>()
            {
                receipt
            }, securityTicket.TenantID.ToString());

            return(returnValue);

            #endregion UserCode
        }
Example #10
0
        protected static FR_Guid Execute(DbConnection Connection, DbTransaction Transaction, P_L5EM_SUED_1648 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null)
        {
            #region UserCode
            var returnValue = new FR_Guid();
            //Put your code here

            ORM_CMN_BPT_EMP_Employee_PayroleDocument.Query payroleDocumentQuery = new ORM_CMN_BPT_EMP_Employee_PayroleDocument.Query();
            payroleDocumentQuery.Employee_RefID = Parameter.Employee_RefID;
            payroleDocumentQuery.Tenant_RefID   = securityTicket.TenantID;
            payroleDocumentQuery.IsDeleted      = false;
            List <ORM_CMN_BPT_EMP_Employee_PayroleDocument> payroleDocumentList = ORM_CMN_BPT_EMP_Employee_PayroleDocument.Query.Search(Connection, Transaction, payroleDocumentQuery);

            List <ORM_CMN_BPT_EMP_Employee_PayroleDocument> deletedDocumentList = new List <ORM_CMN_BPT_EMP_Employee_PayroleDocument>();
            ORM_DOC_DocumentRevision docReviosion = new ORM_DOC_DocumentRevision();
            ORM_DOC_Document         docDocument;
            FR_Base docRevisionResult = new FR_Base();
            FR_Base docDocumentResult = new FR_Base();
            foreach (var item in payroleDocumentList)
            {
                if (Parameter.Documents.Any(p => p.CMN_BPT_EMP_Employee_PayroleDocumentsID == item.CMN_BPT_EMP_Employee_PayroleDocumentsID))
                {
                    continue;
                }

                if (item.Document_RefID != Guid.Empty)
                {
                    docRevisionResult = docReviosion.Load(Connection, Transaction, item.Document_RefID);
                }

                if (docRevisionResult.Status == FR_Status.Success && docReviosion.DOC_DocumentRevisionID != Guid.Empty)
                {
                    docReviosion.Remove(Connection, Transaction);
                }

                item.Remove(Connection, Transaction);
                deletedDocumentList.Add(item);
            }
            payroleDocumentList = payroleDocumentList.Except(deletedDocumentList).ToList();

            foreach (var payroleDocument in Parameter.Documents)
            {
                ORM_CMN_BPT_EMP_Employee_PayroleDocument payroleDocuments = new ORM_CMN_BPT_EMP_Employee_PayroleDocument();

                if (payroleDocumentList.Any(item => item.CMN_BPT_EMP_Employee_PayroleDocumentsID == payroleDocument.CMN_BPT_EMP_Employee_PayroleDocumentsID))
                {
                    payroleDocuments.Load(Connection, Transaction, payroleDocument.CMN_BPT_EMP_Employee_PayroleDocumentsID);
                }

                docDocument  = new ORM_DOC_Document();
                docReviosion = new ORM_DOC_DocumentRevision();
                if (payroleDocuments.Document_RefID != Guid.Empty)
                {
                    docRevisionResult = docReviosion.Load(Connection, Transaction, payroleDocument.DocumentID);
                    docDocumentResult = docDocument.Load(Connection, Transaction, docReviosion.Document_RefID);
                }

                docDocument.Alias        = payroleDocument.File_Name;
                docDocument.Tenant_RefID = securityTicket.TenantID;
                docDocument.Save(Connection, Transaction);

                docReviosion.DOC_DocumentRevisionID = payroleDocument.DocumentID;
                docReviosion.Document_RefID         = docDocument.DOC_DocumentID;
                docReviosion.File_Name        = payroleDocument.File_Name;
                docReviosion.File_Description = payroleDocument.File_Description;
                docReviosion.File_Extension   = payroleDocument.File_Extension;
                docReviosion.File_MIMEType    = payroleDocument.File_MIMEType;
                docReviosion.Tenant_RefID     = securityTicket.TenantID;
                docReviosion.Save(Connection, Transaction);

                payroleDocuments.Tenant_RefID   = securityTicket.TenantID;
                payroleDocuments.Document_RefID = payroleDocument.DocumentID;
                payroleDocuments.DocumentDate   = payroleDocument.DocumentDate;
                payroleDocuments.Employee_RefID = Parameter.Employee_RefID;

                payroleDocuments.Save(Connection, Transaction);
            }

            return(returnValue);

            #endregion UserCode
        }
Example #11
0
        protected static FR_Guid Execute(DbConnection Connection, DbTransaction Transaction, P_L6PA_SBBVPP_1434 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null)
        {
            #region UserCode
            var returnValue = new FR_Guid();

            P_L6PA_GBBVPfID_1714 getPatientParam = new P_L6PA_GBBVPfID_1714();
            getPatientParam.HEC_PatientID = Parameter.HEC_PatientID;
            L6PA_GBBVPfID_1714 patient = cls_Get_BBV_Patients_For_ID.Invoke(Connection, Transaction, getPatientParam, securityTicket).Result;

            if (patient == null)
            {
                var error = new FR_Guid();
                error.ErrorMessage = "No Such ID";
                error.Status       = FR_Status.Error_Internal;
                return(error);
            }

            ORM_HEC_STU_Study currentStudy;

            ORM_HEC_STU_Study.Query StudyQuer = new ORM_HEC_STU_Study.Query();
            StudyQuer.Tenant_RefID             = securityTicket.TenantID;
            StudyQuer.IsDeleted                = false;
            StudyQuer.GlobalPropertyMatchingID = STLD_Sudies.Sudies_GlobalProperty;
            var studyRes = ORM_HEC_STU_Study.Query.Search(Connection, Transaction, StudyQuer);
            if (studyRes.Count == 0)
            {
                ORM_HEC_STU_Study study = new ORM_HEC_STU_Study();
                study.GlobalPropertyMatchingID = STLD_Sudies.Sudies_GlobalProperty;
                study.Tenant_RefID             = securityTicket.TenantID;
                study.Save(Connection, Transaction);
                currentStudy = study;
            }
            else
            {
                currentStudy = studyRes[0];
            }

            ORM_HEC_STU_Study_ParticipatingPatient.Query ppQuery = new ORM_HEC_STU_Study_ParticipatingPatient.Query();
            ppQuery.IsDeleted    = false;
            ppQuery.Tenant_RefID = securityTicket.TenantID;
            ppQuery.HEC_STU_Study_ParticipatingPatientID = patient.HEC_STU_Study_ParticipatingPatientID;
            var ppRes = ORM_HEC_STU_Study_ParticipatingPatient.Query.Search(Connection, Transaction, ppQuery);

            ORM_HEC_STU_Study_ParticipatingPatient ParticipatingPatient = ppRes[0];
            ParticipatingPatient.Study_RefID = currentStudy.HEC_STU_StudyID;
            ParticipatingPatient.Participation_DateOfSigning = DateTime.Now;
            ParticipatingPatient.Save(Connection, Transaction);

            if (Parameter.Documents != null)
            {
                foreach (var doc in Parameter.Documents)
                {
                    ORM_DOC_SLT_DocumentSlot currentSlot;

                    ORM_DOC_SLT_DocumentSlot.Query QueryORM_DOC_SLT_DocumentSlotQuery = new ORM_DOC_SLT_DocumentSlot.Query();
                    QueryORM_DOC_SLT_DocumentSlotQuery.Tenant_RefID             = securityTicket.TenantID;
                    QueryORM_DOC_SLT_DocumentSlotQuery.IsDeleted                = false;
                    QueryORM_DOC_SLT_DocumentSlotQuery.GlobalPropertyMatchingID = doc.DocSlot_GlobalPropertyMatching;
                    var QueryORM_DOC_SLT_DocumentSlotQueryRes = ORM_DOC_SLT_DocumentSlot.Query.Search(Connection, Transaction, QueryORM_DOC_SLT_DocumentSlotQuery);
                    if (QueryORM_DOC_SLT_DocumentSlotQueryRes.Count == 0)
                    {
                        ORM_DOC_SLT_DocumentSlot DocumentSlot = new ORM_DOC_SLT_DocumentSlot();
                        DocumentSlot.GlobalPropertyMatchingID = doc.DocSlot_GlobalPropertyMatching;
                        DocumentSlot.Tenant_RefID             = securityTicket.TenantID;
                        DocumentSlot.Save(Connection, Transaction);
                        currentSlot = DocumentSlot;
                    }
                    else
                    {
                        currentSlot = QueryORM_DOC_SLT_DocumentSlotQueryRes[0];
                    }

                    ORM_HEC_STU_Study_ParticipationRequiredDocument ParticipationRequiredDocument = new ORM_HEC_STU_Study_ParticipationRequiredDocument();
                    ParticipationRequiredDocument.Tenant_RefID = securityTicket.TenantID;
                    ParticipationRequiredDocument.Study_RefID  = currentStudy.HEC_STU_StudyID;
                    ParticipationRequiredDocument.DOC_SLT_DocumentSlot_RefID         = currentSlot.DOC_SLT_DocumentSlotID;
                    ParticipationRequiredDocument.IsRequiredFor_PatientParticipation = true;
                    ParticipationRequiredDocument.Save(Connection, Transaction);

                    ORM_HEC_STU_Study_PatientDocument PatientDocument = new ORM_HEC_STU_Study_PatientDocument();
                    PatientDocument.Tenant_RefID = securityTicket.TenantID;
                    PatientDocument.ParticipatingPatient_RefID          = ParticipatingPatient.HEC_STU_Study_ParticipatingPatientID;
                    PatientDocument.ParticipationRequiredDocument_RefID = ParticipationRequiredDocument.HEC_STU_Study_ParticipatingPatient_RequiredDocumentID;
                    PatientDocument.Document_RefID = Guid.NewGuid();
                    PatientDocument.Save(Connection, Transaction);

                    var document = new ORM_DOC_Document();
                    document.DOC_DocumentID     = PatientDocument.Document_RefID;
                    document.Alias              = doc.File_Name;
                    document.PrimaryType        = doc.File_Extension;
                    document.Creation_Timestamp = DateTime.Now;
                    document.Tenant_RefID       = securityTicket.TenantID;
                    document.Save(Connection, Transaction);

                    var revision = new ORM_DOC_DocumentRevision();
                    revision.DOC_DocumentRevisionID = Guid.NewGuid();
                    revision.Document_RefID         = PatientDocument.Document_RefID;
                    revision.Revision            = 1;
                    revision.IsLastRevision      = true;
                    revision.UploadedByAccount   = securityTicket.AccountID;
                    revision.File_Name           = doc.File_Name;
                    revision.File_ServerLocation = doc.File_ServerLocation;
                    revision.File_Extension      = doc.File_Extension;
                    revision.File_Size_Bytes     = doc.File_Size_Bytes;
                    revision.Creation_Timestamp  = DateTime.Now;
                    revision.Tenant_RefID        = securityTicket.TenantID;
                    revision.Save(Connection, Transaction);
                }
            }

            return(returnValue);

            #endregion UserCode
        }