public void CallHistoryExport([DataBind("filter")] CallRecordFilter filter, string format) { if (format.Match("excel")) { var result = ExportModel.GetCallsHistory(filter); this.RenderFile("История звонков.xls", result); } }
public void Search() { var filter = new CallRecordFilter(); if (IsPost || Request.QueryString.Keys.Cast <string>().Any(k => k.StartsWith("filter."))) { BindObjectInstance(filter, IsPost ? ParamStore.Form : ParamStore.QueryString, "filter"); var calls = filter.Find(); PropertyBag["calls"] = calls; } PropertyBag["filter"] = filter; }
public new void Setup() { _controller = new CallHistoryController(); Prepare(_controller); _filter = new CallRecordFilter(); var query = session.CreateSQLQuery(@" INSERT INTO logs.RecordCalls (`From`, `To`, WriteTime, NameFrom, NameTo, CallType) VALUES ('123', '321', '2012-07-07', 'from', 'to', 1)"); query.ExecuteUpdate(); Flush(); }
public static byte[] GetCallsHistory(CallRecordFilter filter) { var wb = new Workbook(); var ws = new Worksheet("История звонков"); int row = 1; int col = 1; ExcelHelper.WriteHeader1(ws, 0, 1, "Дата звонка", true, true); ExcelHelper.WriteHeader1(ws, 0, 2, "Номер звонившего", true, true); ExcelHelper.WriteHeader1(ws, 0, 3, "Имя звонившего", true, true); ExcelHelper.WriteHeader1(ws, 0, 4, "Куда звонил", true, true); ExcelHelper.WriteHeader1(ws, 0, 5, "Кому звонил", true, true); ExcelHelper.WriteHeader1(ws, 0, 6, "Тип звонка", true, true); filter.PageSize = UInt16.MaxValue; var calls = filter.Find(); foreach (var call in calls) { ExcelHelper.Write(ws, row, col, call.WriteTime, true); ExcelHelper.Write(ws, row, col + 1, call.From, true); ExcelHelper.Write(ws, row, col + 2, call.NameSource, true); ExcelHelper.Write(ws, row, col + 3, call.To, true); ExcelHelper.Write(ws, row, col + 4, call.NameDestination, true); ExcelHelper.Write(ws, row, col + 5, call.GetCallType(), true); row++; } for (ushort i = 1; i <= 6; i++) { ws.Cells.ColumnWidth[i] = 20 * 256; } wb.Worksheets.Add(ws); var buffer = new MemoryStream(); wb.Save(buffer); return(buffer.ToArray()); }