public virtual statisticTransactionCollection ExportStatisticTransaction(DateTime PermDate, string Market) { try { Database database = DatabaseFactory.CreateDatabase("DestinationConnection"); DbCommand dbCommand = database.GetStoredProcCommand("spStatisticTransaction"); database.AddInParameter(dbCommand, "@PermDate", DbType.DateTime, PermDate); database.AddInParameter(dbCommand, "@Market", DbType.String, Market.ToString()); statisticTransactionCollection statisticTransactionCollection = new statisticTransactionCollection(); using (IDataReader reader = database.ExecuteReader(dbCommand)) { while (reader.Read()) { statisticTransaction statisticTransaction = CreateStatisticTransactionFromReader(reader); statisticTransactionCollection.Add(statisticTransaction); } reader.Close(); } return statisticTransactionCollection; } catch (Exception ex) { // log this exception log4net.Util.LogLog.Error(ex.Message, ex); // wrap it and rethrow throw new ApplicationException(SR.DataAccessGetstock_SymbolPermLongListException, ex); } }
public static byte[] ExportStatisticTransactionToExcel(statisticTransactionCollection statisticTransactionCollection, string templatePath) { Dictionary<string, object> model = new Dictionary<string, object>(); model["statisticTransactionCollection"] = statisticTransactionCollection; return ExportToExcel(model, templatePath); }
private void ExportStatisticTransaction() { int sequenceNo = 1; double SumBuyCount = 0; double SumBuyQuatity = 0; double SumSellCount = 0; double SumSellQuatity = 0; double SumVolume = 0; double SumTotalValue = 0; statisticTransactionCollection statisticTransactionCollection = new statisticTransactionCollection(); statisticTransactionCollection = statisticTransactionService.ExportStatisticTransaction(ApplicationHelper.ConvertStringToDate(this.exportDateInput.Text), exportStatisticTranasctionSelect.Value); foreach (statisticTransaction statisticTransaction in statisticTransactionCollection) { statisticTransaction.No = sequenceNo; sequenceNo++; SumBuyCount = SumBuyCount + statisticTransaction.BuyCount; SumBuyQuatity = SumBuyQuatity + statisticTransaction.BuyQuantity; SumSellCount = SumSellCount + statisticTransaction.SellCount; SumSellQuatity = SumSellQuatity + statisticTransaction.SellQuantity; SumVolume = SumVolume + statisticTransaction.Volume; SumTotalValue = SumTotalValue + statisticTransaction.TotalValue; } Vfs.WebCrawler.Destination.Business.ExportService.SumBuyCount = SumBuyCount; Vfs.WebCrawler.Destination.Business.ExportService.SumBuyQuatity = SumBuyQuatity; Vfs.WebCrawler.Destination.Business.ExportService.SumSellCount = SumSellCount; Vfs.WebCrawler.Destination.Business.ExportService.SumSellQuatity = SumSellQuatity; Vfs.WebCrawler.Destination.Business.ExportService.SumChange = SumBuyQuatity - SumSellQuatity; if (SumBuyQuatity == 0 || SumBuyCount == 0) { Vfs.WebCrawler.Destination.Business.ExportService.SumDVDMTrungBinhTrenLenh = 0; } else { Vfs.WebCrawler.Destination.Business.ExportService.SumDVDMTrungBinhTrenLenh = SumBuyQuatity / SumBuyCount; } if (SumSellQuatity == 0 || SumSellCount == 0) { Vfs.WebCrawler.Destination.Business.ExportService.SumDVDBTrungBinhTrenLenh = 0; } else { Vfs.WebCrawler.Destination.Business.ExportService.SumDVDBTrungBinhTrenLenh = SumSellQuatity / SumSellCount; } Vfs.WebCrawler.Destination.Business.ExportService.SumVolume = SumVolume; Vfs.WebCrawler.Destination.Business.ExportService.SumTotalValue = SumTotalValue; Vfs.WebCrawler.Destination.Business.ExportService.getDate = exportDateInput.Text; Vfs.WebCrawler.Destination.Business.ExportService.getMarket = exportStatisticTranasctionSelect.Value; byte[] data = Vfs.WebCrawler.Destination.Business.ExportService.ExportStatisticTransactionToExcel(statisticTransactionCollection, ApplicationHelper.GetFullPath(ApplicationHelper.ExportStatisticTransaction)); Response.ContentType = "application/vnd.ms-excel"; Response.AddHeader("Content-Disposition", "attachment; filename=\"ThongKeGiaoDich.xls\""); Response.AddHeader("Content-Length", data.Length.ToString()); Response.OutputStream.Flush(); Response.OutputStream.Write(data, 0, data.Length); Response.OutputStream.Flush(); }