Example #1
0
        public JsonResult AddImportPaper(ImportPaper importPaper)
        {
            var result = _importPaperService.AddImportPaper(importPaper);

            return(Json(new
            {
                success = true,
                data = result,
            }));
        }
Example #2
0
        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);
                }
            }
        }
Example #3
0
        /// <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");
        }