/// <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));
        }
Beispiel #2
0
        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);
        }