コード例 #1
0
        public override object Save <T>(T entity)
        {
            BO.Common.UploadInfo uploadInfo = (BO.Common.UploadInfo)(object) entity;
            BO.Document          docInfo    = new BO.Document();

            switch (uploadInfo.ObjectType.ToUpper())
            {
            case EN.Constants.CaseType:
                //case EN.Constants.ConsentType:
                CaseDocumentRepository CaseDocumentRepository = new CaseDocumentRepository(_context);
                docInfo = (BO.Document)CaseDocumentRepository.SaveAsBlob(uploadInfo.ObjectId, uploadInfo.CompanyId, uploadInfo.ObjectType, uploadInfo.DocumentType, uploadInfo.BlobPath);
                break;

            case EN.Constants.VisitType:
                VisitDocumentRepository VisitDocumentRepository = new VisitDocumentRepository(_context);
                docInfo = (BO.Document)VisitDocumentRepository.SaveAsBlob(uploadInfo.ObjectId, uploadInfo.CompanyId, uploadInfo.ObjectType, uploadInfo.DocumentType, uploadInfo.BlobPath);
                break;

            case EN.Constants.PatientType:
                PatientDocumentRepository PatientDocumentRepository = new PatientDocumentRepository(_context);
                docInfo = (BO.Document)PatientDocumentRepository.SaveAsBlob(uploadInfo.ObjectId, uploadInfo.CompanyId, uploadInfo.ObjectType, uploadInfo.DocumentType, uploadInfo.BlobPath);
                break;
            }

            return(docInfo);
        }
コード例 #2
0
        public override object Get <T>(T entity)
        {
            BO.Common.UploadInfo uploadInfo = (BO.Common.UploadInfo)(object) entity;
            string path = string.Empty;

            var documentnodeParameter = new SqlParameter("@document_node", uploadInfo.DocumentType);
            var documentPath          = _context.Database.SqlQuery <string>("midas_sp_get_document_path @document_node", documentnodeParameter).ToList();

            switch (uploadInfo.ObjectType.ToUpper())
            {
            case EN.Constants.CaseType:
                path = documentPath[0].Replace("cmp/", "")
                       //.Replace("cstype", _context.Cases.Where(csid => csid.Id == uploadInfo.ObjectId).FirstOrDefault().CaseType.CaseTypeText.ToLower())
                       .Replace("cs", "cs-" + uploadInfo.ObjectId);
                break;

            case EN.Constants.VisitType:
                path = documentPath[0].Replace("cmp/", "")
                       .Replace("cstype", _context.Cases.Where(csid => csid.Id == _context.PatientVisits.Where(pvid => pvid.Id == uploadInfo.ObjectId).FirstOrDefault().CaseId)
                                .FirstOrDefault().CaseType.CaseTypeText.ToLower())
                       .Replace("cs", "cs-" + _context.PatientVisits.Where(pvid => pvid.Id == uploadInfo.ObjectId).FirstOrDefault().CaseId);
                break;
            }
            return((object)path);
        }
コード例 #3
0
        public override object Save <T>(T entity)
        {
            BO.Common.UploadInfo uploadInfo = (BO.Common.UploadInfo)(object) entity;
            BO.Document          docInfo    = new BO.Document();

            switch (uploadInfo.ObjectType.ToUpper())
            {
            case EN.Constants.CaseType:
            case EN.Constants.ConsentType:
                CaseDocumentRepository CaseDocumentRepository = new CaseDocumentRepository(_context);
                docInfo = (BO.Document)CaseDocumentRepository.SaveAsBlob(uploadInfo.ObjectId, uploadInfo.CompanyId, uploadInfo.ObjectType, uploadInfo.DocumentType, uploadInfo.BlobPath);
                break;

            case EN.Constants.VisitType:
                VisitDocumentRepository VisitDocumentRepository = new VisitDocumentRepository(_context);
                docInfo = (BO.Document)VisitDocumentRepository.SaveAsBlob(uploadInfo.ObjectId, uploadInfo.CompanyId, uploadInfo.ObjectType, uploadInfo.DocumentType, uploadInfo.BlobPath);
                break;
            }
            //docInfo = (BO.Document)fileUploadManager.SaveBlob(streamContent, ObjectId, DocumentObject, uploadpath);

            return(docInfo);
        }
コード例 #4
0
        public override object Get <T>(T entity)
        {
            if (typeof(T) == typeof(BO.Common.UploadInfo))
            {
                BO.Common.UploadInfo uploadInfo = (BO.Common.UploadInfo)(object) entity;
                string path = string.Empty;

                var documentnodeParameter = new SqlParameter("@document_node", uploadInfo.DocumentType);
                var documentPath          = _context.Database.SqlQuery <string>("midas_sp_get_document_path @document_node", documentnodeParameter).ToList();

                if (documentPath[0] != null)
                {
                    switch (uploadInfo.ObjectType.ToUpper())
                    {
                    case EN.Constants.CaseType:
                        path = documentPath[0].Replace("cmp/", "")
                               .Replace("cstype", _context.Cases.Where(csid => csid.Id == uploadInfo.ObjectId).FirstOrDefault().CaseType.CaseTypeText.ToLower())
                               .Replace("cs", "cs-" + uploadInfo.ObjectId);
                        break;

                    /*case EN.Constants.ConsentType:
                     *  path = documentPath[0].Replace("cmp/", "")
                     *                      .Replace("cs", "cs-" + uploadInfo.ObjectId);
                     *  break;*/
                    case EN.Constants.VisitType:
                        path = documentPath[0].Replace("cmp/", "")
                               .Replace("cstype", _context.Cases.Where(csid => csid.Id == _context.PatientVisits.Where(pvid => pvid.Id == uploadInfo.ObjectId).FirstOrDefault().CaseId)
                                        .FirstOrDefault().CaseType.CaseTypeText.ToLower())
                               .Replace("cs", "cs-" + _context.PatientVisits.Where(pvid => pvid.Id == uploadInfo.ObjectId).FirstOrDefault().CaseId);
                        break;

                    case EN.Constants.PatientType:
                        path = documentPath[0].Replace("cmp/", "")
                               .Replace("patient", "patient" + _context.Patients.Where(ptid => ptid.Id == uploadInfo.ObjectId).FirstOrDefault());
                        break;
                    }
                }
                else
                {
                    switch (uploadInfo.ObjectType.ToUpper())
                    {
                    case EN.Constants.CaseType:
                        path = "cs-" + uploadInfo.ObjectId +
                               "/" + uploadInfo.DocumentType;    //_context.Cases.Where(csid => csid.Id == uploadInfo.ObjectId).FirstOrDefault().CaseType.CaseTypeText.ToLower();
                        break;

                    /*case EN.Constants.ConsentType:
                     *  path = documentPath[0].Replace("cmp/", "")
                     *                      .Replace("cs", "cs-" + uploadInfo.ObjectId);
                     *  break;*/
                    case EN.Constants.VisitType:
                        path = "cs-" + _context.PatientVisits.Where(pvid => pvid.Id == uploadInfo.ObjectId).FirstOrDefault().CaseId +
                               "/" + uploadInfo.DocumentType;    // _context.Cases.Where(csid => csid.Id == _context.PatientVisit2.Where(pvid => pvid.Id == uploadInfo.ObjectId).FirstOrDefault().CaseId).FirstOrDefault().CaseType.CaseTypeText.ToLower();
                        break;

                    case EN.Constants.PatientType:
                        path = "patient-" + uploadInfo.ObjectId + "/" + uploadInfo.DocumentType;    // _context.Cases.Where(csid => csid.Id == _context.PatientVisit2.Where(pvid => pvid.Id == uploadInfo.ObjectId).FirstOrDefault().CaseId).FirstOrDefault().CaseType.CaseTypeText.ToLower();
                        break;
                    }
                }
                return(path);
            }
            else if (typeof(T) == typeof(BO.MergePDF))
            {
                BO.MergePDF   mergePDF = (BO.MergePDF)(object) entity;
                List <string> pdffiles = new List <string>();
                _context.MidasDocuments.Where(midasdoc => mergePDF.DocumentIds.Contains(midasdoc.Id)).ToList()
                .ForEach(x => pdffiles.Add(x.DocumentPath));

                if (!pdffiles.TrueForAll(file => Path.GetExtension(file) == ".pdf"))
                {
                    return new BO.ErrorObject {
                               ErrorMessage = "Please select only PDF files to merge", errorObject = "", ErrorLevel = ErrorLevel.Error
                    }
                }
                ;

                return(pdffiles);
            }
            else
            {
                return new BO.ErrorObject {
                           ErrorMessage = "Invalid object type", errorObject = "", ErrorLevel = ErrorLevel.Error
                }
            };
        }