/// <summary> /// 分页查询 /// </summary> /// <param name="SqlStr"></param> /// <param name="Page"></param> /// <param name="Rows"></param> /// <param name="Param"></param> /// <param name="ArryEntity"></param> /// <returns></returns> public Sys_PagingEntity FindPaging(string SqlStr, int Page, int Rows, object Param, params object[] ArryEntity) { var Total = 0; var _Sys_PagingEntity = new Sys_PagingEntity(); var _FindPaging = db.FindPaging(SqlStr, Page, Rows, Param); Total = _FindPaging.Total; _Sys_PagingEntity.Table = _FindPaging.Table; _Sys_PagingEntity.Counts = Total; _Sys_PagingEntity.PageCount = (Total / Rows); _Sys_PagingEntity.List = _FindPaging.Table.ToList(); return(this.NewPagingEntity(_Sys_PagingEntity, ArryEntity)); }
public virtual byte[] DBToExcel(Sys_PagingEntity pe) { var dt = pe.Table; var list = pe.ColModel; HSSFWorkbook workbook = new HSSFWorkbook(); ISheet sheet = workbook.CreateSheet(); //填充表头 IRow dataRow = sheet.CreateRow(0); foreach (DataColumn column in dt.Columns) { if (column.ColumnName.Equals("_ukid")) { continue; } foreach (var item in list) { if (column.ColumnName.Equals(item["field"].ToStr())) { dataRow.CreateCell(column.Ordinal).SetCellValue(item["title"].ToStr()); } } } //填充内容 for (int i = 0; i < dt.Rows.Count; i++) { dataRow = sheet.CreateRow(i + 1); for (int j = 0; j < dt.Columns.Count; j++) { if (dt.Columns[j].ColumnName.Equals("_ukid")) { continue; } dataRow.CreateCell(j).SetCellValue(dt.Rows[i][j].ToString()); } } //保存 using (MemoryStream ms = new MemoryStream()) { workbook.Write(ms); return(ms.ToArray()); } }
public Sys_PagingEntity NewPagingEntity(Sys_PagingEntity pe, params object[] ArryEntity) { var dic = new Dictionary <string, object>(); var list = new List <PropertyInfo>(); var colNames = new List <Dictionary <string, string> >(); ArryEntity.ToList().ForEach(item => { //将所有实体里面的属性放入list中 ReflexHelper.GetPropertyInfos(item.GetType()).ToList().ForEach(p => { list.Add(p); }); }); foreach (DataColumn dc in pe.Table.Columns) { dic = new Dictionary <string, object>(); var col = new Dictionary <string, string>(); var pro = list.Find(item => item.Name.Equals(dc.ColumnName)); dic["field"] = dc.ColumnName; dic["align"] = "left"; if (pro == null) { dic["title"] = dc.ColumnName; dic["visible"] = !dc.ColumnName.Equals("_ukid"); col.Add(dc.ColumnName, dc.ColumnName); } else { //获取有特性标记的属性【获取字段别名(中文名称)】 var FiledConfig = pro.GetCustomAttribute(typeof(FieldAttribute)) as FieldAttribute; dic["title"] = (FiledConfig.Alias == "" ? dc.ColumnName : FiledConfig.Alias); dic["visible"] = true; col.Add(dc.ColumnName, dic["title"].ToStr()); } pe.ColNames.Add(col); pe.ColModel.Add(dic); } return(pe); }