/// <summary> /// CSV文件出力 /// </summary> /// <param name="title">新闻标题</param> /// <param name="pulishDate">发布时间</param> /// <param name="categoryId">标签ID</param> /// <returns></returns> public ActionResult ExportCSV(string eventId, string typeCode) { int eventMathId = -1; int.TryParse(eventId, out eventMathId); Expression <Func <EventProfileEntity, bool> > predicate = x => x.EventId == eventMathId && x.IsDeleted != true && x.TypeCode.ToLower().Equals(typeCode.ToLower()); List <EventProfileEntityView> reportList = new List <EventProfileEntityView>(); reportList = _eventProfileService.GetList <EventProfileEntityView>(predicate).OrderByDescending(x => x.OperatedDateTime).DistinctBy(x => x.UserId).ToList(); // var userIds = reportList.Select(x => x.UserId); //var users = WeChatCommonService.lstUser.Where(x => userIds.Contains(x.userid)).Select(x => new { TrueName = x.name, UserId = x.userid }).ToList(); //foreach (var item in reportList) //{ // var user = users.FirstOrDefault(x => x.UserId == item.UserId); // item.UserName = user == null ? null : user.TrueName; // item.deptLvs = emp.deptLvs; //} _eventProfileService.GetUserList(reportList); string fileHeadName = "activity_" + eventId + "_" + typeCode; return(exportToCSV(reportList, fileHeadName)); }
protected List <EventProfileEntityView> GetListPrivate(ref Expression <Func <EventProfileEntity, bool> > predicate, PageCondition ConPage) { int EventId = Convert.ToInt32(Request["EventId"]); string TypeCode = Request["TypeCode"]; predicate = predicate.AndAlso(x => x.EventId == EventId && x.TypeCode.Equals(TypeCode) && x.IsDeleted != true); ConPage.SortConditions.Add(new SortCondition("OperatedDateTime", System.ComponentModel.ListSortDirection.Descending)); //var q = _BaseService.GetList<EventProfileEntityView>(predicate, ConPage); var q = _objService1.GetList <EventProfileEntityView>(predicate, ConPage); _objService1.GetUserList(q); //TODO:考虑真实情况一个人签到多次的情况不多见,暂时在内存做disstinct,如需要在移到数据库中 return(q); }