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); }
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); }
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); }
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 } }; }