public ActionResult TableServerSideGetDataAccount(int pageIndex, int pageSize, ListFilterParam list, string filter = "") { var db = new DetailAccountReportDAL(); int?total = 0; TableColumnsTotal totalColumns = new TableColumnsTotal(); var baseListParam = new BaseListParam() { FilterField = filter, OrderByField = "", UserType = Global.CurrentUser.RoleId, UserId = Global.CurrentUser.LoginUserId, DeptId = Global.CurrentUser.OrganizationUnitID, PageIndex = pageIndex, PageSize = pageSize, LanguageCode = Global.CurrentUser.CurrentLanguageID.ToString() }; var result = db.ReportMccAccountDetailNew(baseListParam, list, Global.CurrentUser.CurrencyTypeID ?? 0, out total, out totalColumns); var lstTotal = new TableColumnsTotalModel(); return(Content(JsonConvert.SerializeObject(new { employees = result, totalCount = total, lstTotal = totalColumns, roleid = baseListParam.UserType.ToString() }))); }
public ActionResult DetailAccountReportExportExcel(int pageIndex, int pageSize, ListFilterParam list, string filter = "") { filter = filter.Replace("!!", "%"); DateTime FromDateTypeDate = new DateTime(); DateTime ToDateTypeDate = new DateTime(); list.FromDate = Convert.ToDateTime(DateTime.ParseExact(list.StringFromDate, "dd-MM-yyyy HH:mm:ss", CultureInfo.InvariantCulture)); list.ToDate = Convert.ToDateTime(DateTime.ParseExact(list.StringToDate, "dd-MM-yyyy HH:mm:ss", CultureInfo.InvariantCulture)); DataTable dt = new DataTable("Grid"); dt.Columns.AddRange(new DataColumn[11] { new DataColumn(AppRes.AccCode), new DataColumn(AppRes.TitleAccount), new DataColumn(AppRes.AccountStatus), new DataColumn(AppRes.AccountLevel), new DataColumn(AppRes.isPartner), new DataColumn(AppRes.CalculationDate), new DataColumn(AppRes.BD), new DataColumn(AppRes.OrganizationUnitName), new DataColumn(AppRes.Category), new DataColumn(AppRes.T), new DataColumn(AppRes.AccountConverted) }); dt.Columns[0].DataType = typeof(string); dt.Columns[1].DataType = typeof(double); dt.Columns[2].DataType = typeof(string); dt.Columns[3].DataType = typeof(string); dt.Columns[4].DataType = typeof(bool); dt.Columns[5].DataType = typeof(DateTime); dt.Columns[6].DataType = typeof(string); dt.Columns[7].DataType = typeof(string); dt.Columns[8].DataType = typeof(string); dt.Columns[9].DataType = typeof(double); dt.Columns[10].DataType = typeof(double); var db = new DetailAccountReportDAL(); int?total = 0; TableColumnsTotal totalColumns = new TableColumnsTotal(); var baseListParam = new BaseListParam() { FilterField = filter, OrderByField = "", UserType = Global.CurrentUser.RoleId, UserId = Global.CurrentUser.LoginUserId, DeptId = Global.CurrentUser.OrganizationUnitID, PageIndex = pageIndex, PageSize = int.MaxValue, LanguageCode = Global.CurrentUser.CurrentLanguageID.ToString() }; var lstData = db.ExportExcelDetailAccountReport(baseListParam, list); foreach (var item in lstData) { dt.Rows.Add( item.CustomerCode, item.AccountNumber, item.StatusAccount == null ? "" : item.StatusAccount, item.AccountLevel == null ? "" : item.AccountLevel, item.IsPartner, item.FirstDateLinked, item.BD, item.Department, item.AccountType == null ? "" : item.AccountType, item.T == null ? 0 : item.T, item.AccountConversion == null ? 0 : item.AccountConversion ); } var wb = new XLWorkbook(); wb.Worksheets.Add(dt); byte[] data = null; using (var stream = new MemoryStream()) { wb.SaveAs(stream); data = stream.ToArray(); } return(File(data, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "DetailAccountReport.xlsx")); }