public ActionResult GetPageList(PageParameter param, OrderFilter filter, OrderTeamSelect Type, ReportStyle ReportStyle, string subject = "", bool IsExport = false) { filter.LangType = SystemLanguage; ViewBag.ReportStyle = ReportStyle; string fileName = $"{Type.GetDisplayName()}-{subject}-" + string.Format("{0:MMddHHmmss}", DateTime.Now) + ".xlsx"; if (Type == OrderTeamSelect.CompetitionUnits) { var model = itemService.GetCompetitionUnits(filter.ArticleID.Value); if (IsExport) { #region dataTable List <CompetitionUnitsModelAll> dt = model .SelectMany(x => x.Members.Select(y => new CompetitionUnitsModelAll { Creater = x.Creater, Phone = x.Phone, Email = x.Email, County = x.County, UnitTempNo = x.TempNo, Unit = x.Unit, UnitShort = x.UnitShort, Coach = x.Coach, Leader = x.Leader, Manager = x.Manager, OrderNumber = x.OrderNumber, //TotalPrice = x.TotalPrice, MemberCount = x.MemberCount, MemberTempNo = y.TempNo, MemberName = y.MemberName })).ToList(); #endregion var exportResult = ExcelTool.Create(dt); return(File(exportResult, "application/vnd.ms-excel", fileName)); } return(PartialView("_PageList_Units", model)); } else if (Type == OrderTeamSelect.CompetitionItems) { var model = itemService.GetCompetitionItems(filter.ArticleID.Value); if (IsExport) { #region dataTable List <CompetitionItemsModelAll> dt = model .SelectMany(x => x.Teams.SelectMany(y => y.Members.Select(z => new CompetitionItemsModelAll { Subject = x.Subject, Option = x.Option, TeamCount = x.TeamCount, DetailTeamName = y.DetailTeamName, FilePath = y.FilePath, DetailPrice = y.DetailPrice, DiscountPrice = y.DiscountPrice, TempNo = z.TempNo, MemberName = z.MemberName, Unit = z.Unit }))).ToList(); #endregion var exportResult = ExcelTool.Create(dt); return(File(exportResult, "application/vnd.ms-excel", fileName)); } return(PartialView("_PageList_Items", model)); } else if (Type == OrderTeamSelect.CompetitionMembers) { var model = itemService.GetCompetitionMembers(filter.ArticleID.Value); if (IsExport) { #region dataTable List <CompetitionMemberItemAll> dt = model .SelectMany(x => x.Items.Select(y => new CompetitionMemberItemAll { TempNo = x.TempNo, MemberName = x.MemberName, IdentityCard = x.IdentityCard, Birthday = x.Birthday, Gender = x.Gender, County = x.County, UnitTempNo = x.UnitTempNo, Unit = x.Unit, Coach = x.Coach, ItemCount = x.ItemCount, Subject = y.Subject, Option = y.Option, DetailPrice = y.DetailPrice, DiscountPrice = y.DiscountPrice })).ToList(); #endregion var exportResult = ExcelTool.Create(dt); return(File(exportResult, "application/vnd.ms-excel", fileName)); } return(PartialView("_PageList_Members", model)); } else { var structure = structureService.Get(filter.StructureID); ViewBag.Structure = structure; var model = service.GetTeamList(param, filter); return(PartialView("_PageList", model)); } }