protected void ImageButton1_Click(object sender, ImageClickEventArgs e) { string message; string PriceTemplet = "Sheet1"; //判断所选的文件是否存在 if (fulFile.HasFile) { try { //指定上传到服务器的路径 string strPath = Server.MapPath("~/PriceManager/Excel/"); //执行上传操作 fulFile.PostedFile.SaveAs(strPath + fulFile.FileName); //显示上传后的文件信息 message = "上传成功!<br>上传的文件名为:" + fulFile.FileName; message = ExeclHelper.LoadDataFromExcel(strPath, fulFile.FileName, PriceTemplet); } catch (Exception ex) { message = ex.Message; } } else { message = "您没有选择任何文件!"; } Response.Redirect("~/PriceManager/CustomerPrice/Price.aspx"); }
public static void Running(Rules_Test rule) { LoggerFactory.Instance.Logger_Info("开始测试:" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), "CGT.Travel.Test"); //总共需要的数据条数 int TicketNum = Convert.ToInt32(rule.UserNum) * Convert.ToInt32(rule.TicketNum); List <BasicData_Test> BasicData_TestList = new BasicData_TestRep().GetBasicData_TestList(TicketNum); #region 除本次数据 string Ids = ""; foreach (var item in BasicData_TestList) { Ids = item.Id + ","; } if (!string.IsNullOrWhiteSpace(Ids)) { Ids = Ids.Substring(0, Ids.Length - 1); new BasicData_TestRep().DeleteBasicData_TestList(Ids); LoggerFactory.Instance.Logger_Info("删除数据集合:" + JsonConvert.SerializeObject(BasicData_TestList), "CGT.Travel.Test"); } #endregion #region 设置验证总次数 int forNum = 0; if (BasicData_TestList.Count < rule.TicketNum) { forNum = 1; } else if (BasicData_TestList.Count % rule.TicketNum == 0) { forNum = BasicData_TestList.Count / Convert.ToInt32(rule.UserNum); } else { forNum = (BasicData_TestList.Count / Convert.ToInt32(rule.UserNum)) + 1; } #endregion #region 循环请求方伟导入 for (int r = 0; r < forNum; r++) { #region 导入接口参数组织 BasicData_Test[] List; if (forNum == 1) { List = new BasicData_Test[BasicData_TestList.Count]; BasicData_TestList.CopyTo(0, List, 0, BasicData_TestList.Count); } else if (r < forNum - 1) { List = new BasicData_Test[Convert.ToInt32(rule.UserNum)]; BasicData_TestList.CopyTo(r * Convert.ToInt32(rule.UserNum), List, 0, Convert.ToInt32(rule.UserNum)); } else { List = new BasicData_Test[BasicData_TestList.Count % Convert.ToInt32(rule.UserNum)]; BasicData_TestList.CopyTo(r * Convert.ToInt32(rule.UserNum), List, 0, BasicData_TestList.Count % Convert.ToInt32(rule.UserNum)); } List <BasicData_Test> datalist = List.ToList <BasicData_Test>(); List <string> titileList = new List <string>() { "票面价", "订单金额", "起飞日期", "出发机场三字码", "到达机场三字码", "航班号", "舱位", "乘客姓名", "票号", "出票日期", "PNR", "保理企业" }; List <string> keyList = new List <string>() { "TicketPrice", "OrderAmount", "DepartureTime", "DepartCode", "ArriveCode", "FlightNo", "Cabin", "PersonName", "TicketNum", "TicketTime", "PNR", "Enterprise" }; string MerchantCode = ""; //融宝商户号 string PayCenterCode = ""; //分销商Code string PayCenterName = ""; //分销商名称 List <ManageExcelModel> ExcelList = new List <ManageExcelModel>(); foreach (var item in datalist) { ManageExcelModel excel = new ManageExcelModel() { ArriveCode = item.ArrCode, Cabin = item.Cabin, DepartCode = item.DepCode, DepartureTime = Convert.ToDateTime(item.StratDate), Enterprise = item.EnterpriseName + "|" + item.EnterpriseId.ToString(), FlightNo = item.FlightNo, OrderAmount = Convert.ToDecimal(item.OrderPrice), TicketTime = Convert.ToDateTime(item.TicketDate), TicketPrice = Convert.ToDecimal(item.TicketPrice), TicketNum = item.TicketNo, PNR = item.PNR, PersonName = item.PersonName }; ExcelList.Add(excel); PayCenterCode = item.PayCenterCode; PayCenterName = item.PayCenterName; MerchantCode = item.MerchantCode; } byte[] str = new ExeclHelper(new HostingEnvironment() { WebRootPath = "C://" }).ExcelExport <ManageExcelModel>(ExcelList, titileList, keyList); #endregion //声明一个线程请求导入接口 System.Threading.Tasks.Task task = new System.Threading.Tasks.Task(() => { var Result = new ImportProcessor(str, PayCenterCode, PayCenterName, MerchantCode).Execute();//调用导入接口 if (Result.Success) { LoggerFactory.Instance.Logger_Info("导入成功:" + Result.Message, "CGT.Travel.Test"); } else { LoggerFactory.Instance.Logger_Info("导入失败:" + Result.Message, "CGT.Travel.Test"); } }); task.Start(); } #endregion }