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
                })));
            }
        }
示例#2
0
        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
                })));
            }
        }