Пример #1
0
        /// <summary>
        /// 获取私信需提醒信息
        /// </summary>
        /// <returns></returns>
        public IEnumerable <UserReminderInfo> GetUserReminderInfos()
        {
            var sql = PetaPoco.Sql.Builder;

            sql.Select("tn_Messages.*")
            .From("tn_Messages")
            .InnerJoin("tn_Users")
            .On("tn_Messages.ReceiverUserId = tn_Users.UserId")
            .Where("tn_Users.IsEmailVerified = 1")
            .Where("tn_Messages.IsRead = 0")
            .OrderBy("tn_Messages.ReceiverUserId")
            .OrderBy("tn_Messages.MessageId");
            IEnumerable <Message>   userReminderInfos_object = CreateDAO().Fetch <Message>(sql);
            List <UserReminderInfo> userRminderInfos         = new List <UserReminderInfo>();

            foreach (long userId in userReminderInfos_object.Select(n => n.ReceiverUserId).Distinct())
            {
                UserReminderInfo userReminderInfo = new UserReminderInfo();
                userReminderInfo.UserId           = userId;
                userReminderInfo.ReminderInfoType = ReminderInfoType.Get(ReminderInfoTypeIds.Instance().Message());
                IEnumerable <ReminderInfo> reminderInfos = userReminderInfos_object.Where(n => n.ReceiverUserId == userId).Select(n => new
                                                                                                                                  ReminderInfo {
                    ObjectId = n.MessageId, Title = string.Format("{0}:{1}", n.Sender, n.Body), DateCreated = n.DateCreated
                });
                foreach (var reminderInfo in reminderInfos)
                {
                    userReminderInfo.Append(reminderInfo);
                }
                userRminderInfos.Add(userReminderInfo);
            }
            return(userRminderInfos);
        }
Пример #2
0
 /// <summary>
 /// 静态构造器
 /// </summary>
 static ReminderInfoType()
 {
     registeredReminderInfoTypes[ReminderInfoTypeIds.Instance().Message()] = new ReminderInfoType()
     {
         TypeId = ReminderInfoTypeIds.Instance().Message(), TypeName = "私信"
     };
     registeredReminderInfoTypes[ReminderInfoTypeIds.Instance().Notice()] = new ReminderInfoType()
     {
         TypeId = ReminderInfoTypeIds.Instance().Notice(), TypeName = "通知"
     };
     registeredReminderInfoTypes[ReminderInfoTypeIds.Instance().Invitation()] = new ReminderInfoType()
     {
         TypeId = ReminderInfoTypeIds.Instance().Invitation(), TypeName = "请求"
     };
 }