public FileResult ExportExcel(SystemUserPagingInput paging) { ExcelReportDto excelReportDto = new ExcelReportDto() { TemplatePath = Server.MapPath("/") + "Templates/System/User/用户导出模版.xlsx", DownTemplatePath = "用户信息" + string.Format("{0:yyyyMMddHHmmssffff}", DateTime.Now) + ".xlsx", Title = "用户信息.xlsx" }; _userInfoLogic.ReportExcelUserQuery(paging, excelReportDto); return(File(new FileStream(excelReportDto.DownPath, FileMode.Open), "application/octet-stream", Server.UrlEncode(excelReportDto.Title))); }
public async Task <FileResult> ExportExcelToOperationLog(QueryParam paging) { ExcelReportDto excelReportDto = new ExcelReportDto() { TemplatePath = Server.MapPath("/") + "DataUser/Templates/System/Log/操作日志.xlsx", DownTemplatePath = "操作日志" + string.Format("{0:yyyyMMddHHmmssffff}", DateTime.Now) + ".xlsx", Title = "操作日志.xlsx" }; await _operationLogLogic.ReportExcelOperationLogQuery(paging, excelReportDto); return(File(new FileStream(excelReportDto.DownPath, FileMode.Open), "application/octet-stream", Server.UrlEncode(excelReportDto.Title))); }
/// <summary> /// Excel导出方式 /// </summary> /// <param name="paging">查询参数</param> /// <param name="excelReportDto"></param> /// <returns></returns> public async Task <OperateStatus> ReportExcelUserQuery(SystemUserPagingInput paging, ExcelReportDto excelReportDto) { var operateStatus = new OperateStatus(); try { //组装数据 IList <SystemUserOutput> dtos = (await _userInfoRepository.PagingUserQuery(paging)).Data.ToList(); var tables = new Dictionary <string, DataTable>(StringComparer.OrdinalIgnoreCase); //组装需要导出数据 var dt = new DataTable("User"); dt.Columns.Add("Num"); dt.Columns.Add("Code"); dt.Columns.Add("Name"); dt.Columns.Add("OrganizationName"); dt.Columns.Add("Mobile"); dt.Columns.Add("IsFreeze"); dt.Columns.Add("CreatTime"); dt.Columns.Add("FirstVisitTime"); dt.Columns.Add("LastVisitTime"); dt.Columns.Add("Remark"); var num = 1; if (dtos.Any()) { foreach (var dto in dtos) { var row = dt.NewRow(); dt.Rows.Add(row); row[0] = num; row[1] = dto.Code; row[2] = dto.Name; row[3] = dto.OrganizationName; row[4] = dto.Mobile; row[5] = dto.IsFreeze ? "是" : "否"; row[7] = dto.FirstVisitTime; row[8] = dto.LastVisitTime; row[9] = dto.Remark; num++; } } tables.Add(dt.TableName, dt); OpenXmlExcel.ExportExcel(excelReportDto.TemplatePath, excelReportDto.DownPath, tables); operateStatus.ResultSign = ResultSign.Successful; } catch (Exception) { operateStatus.ResultSign = ResultSign.Error; } return(operateStatus); }
public async Task <OperateStatus> ReportExcelExceptionLogQuery(QueryParam paging, ExcelReportDto excelReportDto) { var operateStatus = new OperateStatus(); try { //获取总共条数 paging.Rows = await Count(); //组装数据 IList <SystemExceptionLog> dtos = (await _exceptionLogRepository.PagingQueryProcAsync(paging)).Data.ToList(); var tables = new Dictionary <string, DataTable>(StringComparer.OrdinalIgnoreCase); //组装需要导出数据 var dt = new DataTable("ExceptionLog"); dt.Columns.Add("Num"); dt.Columns.Add("OperateTime"); dt.Columns.Add("Code"); dt.Columns.Add("Message"); dt.Columns.Add("RequestUrl"); dt.Columns.Add("ClientHost"); var num = 1; if (dtos.Any()) { foreach (var dto in dtos) { var row = dt.NewRow(); dt.Rows.Add(row); row[0] = num; row[1] = dto.CreateTime; row[2] = dto.CreateUserCode; row[3] = dto.Message; row[4] = dto.RequestUrl; row[5] = dto.ClientHost; num++; } } tables.Add(dt.TableName, dt); OpenXmlExcel.ExportExcel(excelReportDto.TemplatePath, excelReportDto.DownPath, tables); operateStatus.ResultSign = ResultSign.Successful; } catch (Exception) { operateStatus.ResultSign = ResultSign.Error; } return(operateStatus); }
/// <summary> /// Excel导出方式 /// </summary> /// <param name="paging">查询参数</param> /// <param name="excelReportDto"></param> /// <returns></returns> public async Task <OperateStatus> ReportExcelUserQuery(SystemUserPagingInput paging, ExcelReportDto excelReportDto) { var operateStatus = new OperateStatus(); try { //组装数据 IList <SystemUserOutput> dtos = (await _userInfoRepository.PagingUserQuery(paging)).Data.ToList(); var tables = new Dictionary <string, DataTable>(StringComparer.OrdinalIgnoreCase); //组装需要导出数据 operateStatus.ResultSign = ResultSign.Successful; } catch (Exception) { operateStatus.ResultSign = ResultSign.Error; } return(operateStatus); }
private int headerGenerator(int aCounter, string[] alphabet, Exam exam, int beforeId, ExcelReportDto item, int c, IXLWorksheet ws, int column, bool courseTitleGenerate) { //c = 3 var cName = item.IdAndCourseName[exam.CourseID]; ws.Cell(c, column).Value = cName; if (courseTitleGenerate) { ws.Range("D3:E3").Merge(); ws.Range("F3:G3").Merge(); ws.Range("H3:I3").Merge(); ws.Range("J3:K3").Merge(); ws.Range("L3:M3").Merge(); ws.Range("N3:O3").Merge(); ws.Range("P3:Q3").Merge(); ws.Range("R3:S3").Merge(); ws.Range("T3:U3").Merge(); ws.Range("V3:W3").Merge(); ws.Range("X3:Y3").Merge(); ws.Range("Z3:AA3").Merge(); ws.Range("AB3:AC3").Merge(); ws.Range("AD3:AE3").Merge(); //ws.Range("AF3:AG3").Merge(); } c++; ws.Cell(c, column).Value = new PersianDateTime(exam.ExamDate).ToString("yy/MM/dd"); if (exam.FinalGrade != 20) { var firststep = float.Parse("20") / exam.FinalGrade; var changedGrade = firststep * exam.Grade; ws.Cell(c, column + 1).Value = changedGrade; ws.Cell(c, column + 1).Style.Font.Bold = true; ws.Cell(c, column + 1).Style.Font.Underline = XLFontUnderlineValues.Single; } else { ws.Cell(c, column + 1).Value = exam.Grade; } c++; return(c); }
/// <summary> /// /// </summary> /// <param name="paging"></param> /// <param name="excelReportDto"></param> /// <returns></returns> public Task <OperateStatus> ReportExcelLoginLogQuery(QueryParam paging, ExcelReportDto excelReportDto) { throw new global::System.NotImplementedException(); }