public OperationResult Import(String fileName, Service.Excel.ImportData importData) { try { var columns = importData == null ? null : importData.Columns; var maps = ImportUtil.GetColumns(columns, new TaxBaseEveryMonth()); var items = ExcelService.GetObjects(fileName, columns); if (importData != null) { int num = 1; foreach (var item in items) { TaxBaseEveryMonth record = new TaxBaseEveryMonth(); List <ImportFeedBack> errors = ImportUtil.ValidateImportRecord(item, num++, maps, ref record); if (errors.Count > 0) { return(new OperationResult(OperationResultType.Error, "导入数据失败", ImportUtil.ParseToHtml(errors))); } //插入或更新数据 _TaxBaseEveryMonthRepository.InsertOrUpdate(record); } } return(new OperationResult(OperationResultType.Success, "导入数据成功!")); } catch (Exception ex) { _log.Error(ex); ImportFeedBack feedBack = new ImportFeedBack(); feedBack.ExceptionType = "未知错误"; feedBack.ExceptionContent.Add(ex.Message); List <ImportFeedBack> erros = new List <ImportFeedBack>(); return(new OperationResult(OperationResultType.Error, "导入数据失败!", ImportUtil.ParseToHtml(new List <ImportFeedBack>() { feedBack }))); } }
public OperationResult Import(String fileName, Service.Excel.ImportData importData) { try { string userid = ((System.Web.Security.FormsIdentity)(System.Web.HttpContext.Current.User.Identity)).Ticket.UserData; var columns = importData == null ? null : importData.Columns; var maps = ImportUtil.GetColumns(columns, new PersonalRecord()); var items = ExcelService.GetObjects(fileName, columns); if (importData != null) { String serialNumber = importData.Parameters[0].Value; String paymentType = importData.Parameters[1].Value; int num = 1; foreach (var item in items) { if (CheckAllNull(item[0]) && CheckAllNull(item[1]) && CheckAllNull(item[2]) && CheckAllNull(item[3]) && CheckAllNull(item[4]) && CheckAllNull(item[5]) && CheckAllNull(item[6]) && CheckAllNull(item[7]) && CheckAllNull(item[8])) { continue; } PersonalRecord record = new PersonalRecord(); record.SerialNumber = serialNumber; record.PaymentType = paymentType; if (paymentType.Equals("银行转账")) { if (item.Count < 16) { return(new OperationResult(OperationResultType.Error, "导入数据失败", "<li>请增加银行账户等相关信息或修改为现金支付类型</li>")); } record.AccountName = item[0]; record.Bank = item[10]; record.AccountNumber = item[11]; record.BankDetailName = item[12]; record.ProvinceCity = item[13]; record.CityField = item[14]; } List <ImportFeedBack> errors = ValidatePersonalRecord(item, num++, maps, ref record); if (errors.Count > 0) { return(new OperationResult(OperationResultType.Error, "导入数据失败", ImportUtil.ParseToHtml(errors))); } //若姓名为英文字母,不需去除字符串中的空格,若为中文,需去除空格 String nameFormat = ""; if (IsEnCh(record.Name.Trim())) { nameFormat = record.Name.Trim().Replace("\n", "").Replace("\t", "").Replace("\r", ""); } else { nameFormat = GetReplaceString(record.Name); } //插入或更新数据 _PersonalRecordRepository.InsertOrUpdate(record); //保存时同步向常用领款人表TopContacts中保存 TopContacts contact = new TopContacts(); contact.UserID = userid; contact.Name = nameFormat; contact.CertificateType = GetReplaceString(record.CertificateType); contact.CertificateID = GetReplaceString(record.CertificateID); contact.Nationality = GetReplaceString(record.Nationality); contact.PersonType = GetReplaceString(record.PersonType); contact.Tele = GetReplaceString(record.Tele); contact.Title = GetReplaceString(record.Title); contact.Company = GetReplaceString(record.Company); if (!String.IsNullOrEmpty(record.Bank)) { contact.Bank = GetReplaceString(record.Bank); } if (!String.IsNullOrEmpty(record.BankDetailName)) { contact.BankDetailName = GetReplaceString(record.BankDetailName); } if (!String.IsNullOrEmpty(record.ProvinceCity)) { contact.ProvinceCity = GetReplaceString(record.ProvinceCity); } if (!String.IsNullOrEmpty(record.CityField)) { contact.CityField = GetReplaceString(record.CityField); } if (!String.IsNullOrEmpty(record.AccountNumber)) { contact.AccountNumber = GetReplaceString(record.AccountNumber); } if (!String.IsNullOrEmpty(record.Gender)) { contact.Gender = GetReplaceString(record.Gender); } if (!String.IsNullOrEmpty(record.Birth)) { contact.Birth = GetReplaceString(record.Birth); } _TopContactsService.Insert(contact); } } return(new OperationResult(OperationResultType.Success, "导入数据成功!")); } catch (Exception ex) { _log.Error(ex); ImportFeedBack feedBack = new ImportFeedBack(); feedBack.ExceptionType = "未知错误"; feedBack.ExceptionContent.Add(ex.Message); List <ImportFeedBack> erros = new List <ImportFeedBack>(); return(new OperationResult(OperationResultType.Error, "导入数据失败!", ImportUtil.ParseToHtml(new List <ImportFeedBack>() { feedBack }))); } }