public FileResult DownloadDocument(int pqid) { PaperDocument paperdocument = _db.PaperDocuments.Find(pqid); if (ModelState.IsValid) { return(File(paperdocument.FileUrl, paperdocument.FileType)); } else { throw new HttpException(404, "File not Found."); } }
public ActionResult Delete(int id) { try { PaperDocument paperdocument = _db.PaperDocuments.Find(id); TempData["RecordID"] = paperdocument.RecordRecordID; paperdocument.DeletePaperDocument = true; _db.SaveChanges(); return(RedirectToAction("Upload", new { id = paperdocument.RecordRecordID })); } catch { return(View("Error")); } }
protected void CopyTo <T>(T dataItem) where T : BasePNRDataItem { dataItem.ID = ID; dataItem.IDInPNR = IDInPNR; dataItem.Type = Type; if (TravellerRef != null) { dataItem.TravellerRef = new RefList <int>(TravellerRef); } if (ServiceRef != null) { dataItem.ServiceRef = new RefList <int>(ServiceRef); } if (SegmentRef != null) { dataItem.SegmentRef = new RefList <int>(SegmentRef); } #region Клонирование внутренних элементов switch (Type) { case PNRDataItemType.Remark: dataItem.Remark = Remark?.Copy(); break; case PNRDataItemType.TL: dataItem.TimeLimits = TimeLimits?.Copy(); break; case PNRDataItemType.SSR: dataItem.SSR = SSR?.DeepCopy(); break; case PNRDataItemType.Commission: dataItem.Commission = Commission?.Copy(); break; case PNRDataItemType.FOP: dataItem.FOPInfo = FOPInfo?.Copy(); break; case PNRDataItemType.SourceInfo: dataItem.SourceInfo = SourceInfo?.Copy(); break; case PNRDataItemType.IDDocument: dataItem.Document = Document?.Copy(); break; case PNRDataItemType.ContactInfo: dataItem.ContactInfo = ContactInfo?.Copy(); break; case PNRDataItemType.LoyaltyCard: dataItem.LoyaltyCard = LoyaltyCard?.Copy(); break; case PNRDataItemType.Meal: dataItem.Meal = Meal?.DeepCopy(); break; case PNRDataItemType.ED: dataItem.ElectronicDocument = ElectronicDocument?.DeepCopy(); break; case PNRDataItemType.PD: dataItem.PaperDocument = PaperDocument?.Copy(); break; case PNRDataItemType.FE: dataItem.Endorsements = Endorsements?.Copy(); break; case PNRDataItemType.Visa: dataItem.Visa = Visa?.Copy(); break; case PNRDataItemType.ArrivalAddress: dataItem.ArrivalAddress = ArrivalAddress?.Copy(); break; case PNRDataItemType.BookedSeat: dataItem.BookedSeat = BookedSeat?.Copy(); break; case PNRDataItemType.ValidatingCompany: dataItem.ValidatingCompany = ValidatingCompany?.Copy(); break; case PNRDataItemType.TourCode: dataItem.TourCode = TourCode?.Copy(); break; case PNRDataItemType.Discount: dataItem.Discount = Discount?.Copy(); break; case PNRDataItemType.FareSourceCode: dataItem.FareSourceCode = FareSourceCode?.Copy(); break; case PNRDataItemType.AdditionalLocators: dataItem.AdditionalLocators = AdditionalLocators?.Copy(); break; case PNRDataItemType.OSI: dataItem.OSI = OSI?.Copy(); break; case PNRDataItemType.ReferencedBooks: dataItem.ReferencedBooks = ReferencedBooks?.Copy(); break; case PNRDataItemType.FareInfo: dataItem.FareInfo = FareInfo?.Copy(); break; case PNRDataItemType.DiscountDocument: dataItem.DiscountDocument = DiscountDocument?.Copy(); break; case PNRDataItemType.VoucherFile: dataItem.Voucher = Voucher?.Copy(); break; case PNRDataItemType.LinkedBooks: dataItem.LinkedBooks = LinkedBooks?.Copy(); break; } #endregion }
public ActionResult Upload(FormCollection formCollection, int recordid, string papernumber) { var ErrorMessage = ""; var uploadfile = Request.Files["uploadfile"]; var validFileTypes = new string[] { "application/pdf", "application/msword", "application/postscript", "application/zip", "application/x-compressed", "application/x-zip-compressed", "application/octet-stream", "multipart/x-zip", "multipart/x-gzip", "application/x-gzip", "application/vnd.ms-excel", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "application/vnd.openxmlformats-officedocument.wordprocessingml.document", "image/bmp", "image/x-windows-bmp", "image/gif", "image/jpeg", "image/pjpeg", "image/png", "image/tiff", "image/x-tiff" }; if (uploadfile == null || uploadfile.ContentLength == 0) { ModelState.AddModelError("CustomError", "Please choose a file."); ErrorMessage = "This field is required"; } else if (!validFileTypes.Contains(uploadfile.ContentType)) { ModelState.AddModelError("CustomError", "File Format is not supported."); ErrorMessage = "File Format is not supported."; } else if (uploadfile.ContentLength > 104857600) { ModelState.AddModelError("CustomError", "The maximum size is 100MB."); ErrorMessage = "The maximum size is 100MB."; } else if (!uploadfile.FileName.Contains(papernumber)) { ModelState.AddModelError("CustomError", "File name does not match paper number. Please check again."); ErrorMessage = "File name does not match paper number. Please check again."; } if (!ModelState.IsValid) { return(RedirectToAction("Upload", new { id = recordid, ErrMessage = ErrorMessage })); } var file = new PaperDocument { // RecordRecordID = Convert.ToInt32(formCollection["RecordID"]), RecordRecordID = recordid, FileName = uploadfile.FileName, FileType = uploadfile.ContentType, DeletePaperDocument = false }; const string path = "~/App_Data/upload"; if (!Directory.Exists(Server.MapPath(path))) { Directory.CreateDirectory(Server.MapPath(path)); } //DirectoryInfo di = new DirectoryInfo(path); //var folder = Server.MapPath(file.RecordRecordID.ToString()); //DirectoryInfo d2 = di.CreateSubdirectory(folder); var uploadDir = $"{path}/{file.RecordRecordID}"; if (!Directory.Exists(Server.MapPath(uploadDir))) { Directory.CreateDirectory(Server.MapPath(uploadDir)); } file.Comments = formCollection["inputcomments"]; if (formCollection["inputfilename"] != null && formCollection["inputfilename"].Length > 0) { file.FileName = formCollection["inputfilename"]; } else { file.FileName = Path.GetFileName(uploadfile.FileName); } var palist = from pd in _db.PaperDocuments where pd.RecordRecordID == file.RecordRecordID select pd.FileName; if (palist.Contains(file.FileName)) { file.FileName = "new_" + file.FileName; } if (formCollection["Comments"] != null && formCollection["inputfilename"].Length > 0) { file.Comments = formCollection["Comments"]; } file.FileUrl = Path.Combine(Server.MapPath(uploadDir), file.FileName); uploadfile.SaveAs(file.FileUrl); file.UploadUser = User.Identity.Name; _db.PaperDocuments.Add(file); _db.SaveChanges(); return(RedirectToAction("Upload", recordid)); }