public ActionResult ImportPosExcel(HttpPostedFileBase posExcel) { ViewBag.Method = "post"; ViewBag.Success = true; int countPos = 0; int countPosUpdate = 0; if (posExcel != null) { DataTable dt = null; if (posExcel.FileName.ToLower().EndsWith(".xlsx")) { dt = NPOIHelper.ExcelToTableForXLSX(posExcel.InputStream, "序号"); } else { dt = NPOIHelper.ExcelToTableForXLS(posExcel.InputStream, "序号", string.Empty); } var columns = dt.Columns; DateRule rule = DateRuleList.DateRules.Where(d => d.Months.Where(m => m == DateTime.Now.Month).Count() > 0).First(); int month = rule.ApplyMonth; int year = DateTime.Now.Year; try { for (int i = 0; i <= dt.Rows.Count - 1; i++) { Pos pos = new Pos(); pos.CreateDate = DateTime.Now; pos.VendorName = dt.Rows[i]["商户名称"].ToString(); pos.VendorNO = dt.Rows[i]["商户号"].ToString(); pos.TerminalNO = dt.Rows[i]["终端号"].ToString(); pos.InstallAddress = dt.Rows[i]["装机地址"].ToString(); pos.DeductRate = dt.Rows[i]["扣率"].ToString(); pos.BankNO = dt.Rows[i]["银行卡号"].ToString(); Pos oldPos; int exits = _posService.ExistPos(pos, out oldPos, false); if (exits == 1)//已存在的POS { countPosUpdate++; oldPos.CreateDate = DateTime.Now; oldPos.VendorName = pos.VendorName; oldPos.InstallAddress = pos.InstallAddress; oldPos.DeductRate = pos.DeductRate; _posService.Update(oldPos); } else { countPos++; _posService.Insert(pos); } } } catch (Exception ex) { throw new OceanException("导入失败,具体原因,请查看日志!", ex); } ViewBag.countPos = countPos; ViewBag.countPosUpdate = countPosUpdate; } else { ViewBag.Success = false; ViewBag.Message = "请选择导入文件"; } return(View()); }