public JsonResult AddImportPaper(ImportPaper importPaper) { var result = _importPaperService.AddImportPaper(importPaper); return(Json(new { success = true, data = result, })); }
public bool AddImportPaper(ImportPaper importPaper) { var importPaperRepo = RepositoryHelper.GetRepository <IImportPaperRepository>(UnitOfWork); var importPaperDetailRepo = RepositoryHelper.GetRepository <IImportPaperDetailRepository>(UnitOfWork); var supplyRepo = RepositoryHelper.GetRepository <ISupplyRepository>(UnitOfWork); var allSupply = supplyRepo.GetAll(); using (var transaction = UnitOfWork.BeginTransaction()) { try { var importPerDto = new ImportPaper(); importPerDto.CreateDate = DateTime.Now; importPerDto.ImportPaperCode = importPaper.ImportPaperCode; importPerDto.Note = importPaper.Note; importPerDto.IsDeleted = false; importPaperRepo.Create(importPerDto); var dbValresults = UnitOfWork.SaveChanges(); if (dbValresults.Any()) { transaction.Rollback(); return(false); } foreach (var item in importPaper.ImportPaperDetails) { var currentSupply = allSupply.SingleOrDefault(x => x.SuppliesId == item.SuppliesId); currentSupply.Quantity += item.Quantity; var importPaperDetail = new ImportPaperDetail() { ImportPaperId = importPerDto.ImportPaperId, Quantity = item.Quantity, Unit = item.Unit, Note = item.Note, SuppliesId = item.SuppliesId }; importPaperDetailRepo.Create(importPaperDetail); } dbValresults = UnitOfWork.SaveChanges(); if (dbValresults.Any()) { transaction.Rollback(); return(false); } transaction.Commit(); return(true); } catch (Exception ex) { transaction.Rollback(); return(true); } } }
/// <summary> /// 将论文数据从Excel导入到数据库 /// </summary> /// <returns>导入成功返回success,否则返回一条错误信息</returns> public string ImportPapers() { string path = HttpRuntime.AppDomainAppPath + @"App_Data/Paper"; string[] files = Directory.GetFiles(path); if (null == files) { return("success"); } ImportPaper import = new ImportPaper(); using (var transaction = context.Database.BeginTransaction()) { try { foreach (string name in files) { if (name.EndsWith(".xls") || name.EndsWith(".xlsx")) { import.ExcelToSQLServer(name, "Sheet1", true); File.Delete(name); } } Pretreatment p = new Pretreatment(); p.pretreatPaper(); transaction.Commit(); } catch (Exception e) { transaction.Rollback(); return(e.Message); } } return("success"); }