コード例 #1
0
        /// <summary>
        /// 微博操作日志事件处理
        /// </summary>
        private void MicroblogOperationLogEventModule_After(MicroblogEntity senders, CommonEventArgs eventArgs)
        {
            if (eventArgs.EventOperationType == EventOperationType.Instance().Delete() ||
                eventArgs.EventOperationType == EventOperationType.Instance().Approved() ||
                eventArgs.EventOperationType == EventOperationType.Instance().Disapproved() ||
                eventArgs.EventOperationType == EventOperationType.Instance().SetEssential() ||
                eventArgs.EventOperationType == EventOperationType.Instance().SetSticky() ||
                eventArgs.EventOperationType == EventOperationType.Instance().CancelEssential() ||
                eventArgs.EventOperationType == EventOperationType.Instance().CancelSticky())
            {
                OperationLogEntry entry = new OperationLogEntry(eventArgs.OperatorInfo);
                entry.ApplicationId       = entry.ApplicationId;
                entry.Source              = MicroblogConfig.Instance().ApplicationName;
                entry.OperationType       = eventArgs.EventOperationType;
                entry.OperationObjectName = StringUtility.Trim(senders.Body, 20);
                entry.OperationObjectId   = senders.MicroblogId;
                entry.Description         = string.Format(ResourceAccessor.GetString("OperationLog_Pattern_" + eventArgs.EventOperationType, entry.ApplicationId), "微博", entry.OperationObjectName);

                OperationLogService logService = Tunynet.DIContainer.Resolve <OperationLogService>();
                logService.Create(entry);
            }
        }
コード例 #2
0
        /// <summary>
        /// 微博动态
        /// </summary>
        /// <param name="sender">微博实体</param>
        /// <param name="eventArgs">事件参数</param>
        private void MicroblogActivityModule_After(MicroblogEntity sender, AuditEventArgs eventArgs)
        {
            ActivityService activityService = new ActivityService();
            bool?           auditDirection  = new AuditService().ResolveAuditDirection(eventArgs.OldAuditStatus, eventArgs.NewAuditStatus);

            if (auditDirection == true)
            {
                var microblogUrlGetter = MicroblogUrlGetterFactory.Get(sender.TenantTypeId);
                if (microblogUrlGetter == null)
                {
                    return;
                }

                Activity actvity = Activity.New();
                actvity.ActivityItemKey  = ActivityItemKeys.Instance().CreateMicroblog();
                actvity.ApplicationId    = MicroblogConfig.Instance().ApplicationId;
                actvity.HasImage         = sender.HasPhoto;
                actvity.HasMusic         = sender.HasMusic;
                actvity.HasVideo         = sender.HasVideo;
                actvity.IsOriginalThread = !sender.IsForward;
                actvity.IsPrivate        = false;
                actvity.SourceId         = sender.MicroblogId;
                actvity.TenantTypeId     = TenantTypeIds.Instance().Microblog();
                actvity.UserId           = sender.UserId;
                //生成Owner为用户的动态
                if (microblogUrlGetter.ActivityOwnerType == ActivityOwnerTypes.Instance().User())
                {
                    Activity actvityOfUser = Activity.New();
                    actvityOfUser.ActivityItemKey  = actvity.ActivityItemKey;
                    actvityOfUser.ApplicationId    = actvity.ApplicationId;
                    actvityOfUser.HasImage         = actvity.HasImage;
                    actvityOfUser.HasMusic         = actvity.HasMusic;
                    actvityOfUser.HasVideo         = actvity.HasVideo;
                    actvityOfUser.IsOriginalThread = actvity.IsOriginalThread;
                    actvityOfUser.IsPrivate        = actvity.IsPrivate;
                    actvityOfUser.UserId           = actvity.UserId;
                    actvityOfUser.ReferenceId      = actvity.ReferenceId;
                    actvityOfUser.SourceId         = actvity.SourceId;
                    actvityOfUser.TenantTypeId     = actvity.TenantTypeId;

                    actvityOfUser.OwnerId   = sender.UserId;
                    actvityOfUser.OwnerName = sender.User.DisplayName;
                    actvityOfUser.OwnerType = ActivityOwnerTypes.Instance().User();
                    activityService.Generate(actvityOfUser, true);
                }
                else
                {
                    actvity.OwnerId   = sender.OwnerId;
                    actvity.OwnerType = microblogUrlGetter.ActivityOwnerType;
                    actvity.OwnerName = microblogUrlGetter.GetOwnerName(sender.OwnerId);
                    activityService.Generate(actvity, false);

                    //生成Owner为用户的动态
                    if (!microblogUrlGetter.IsPrivate(sender.OwnerId))
                    {
                        Activity actvityOfUser = Activity.New();
                        actvityOfUser.ActivityItemKey  = actvity.ActivityItemKey;
                        actvityOfUser.ApplicationId    = actvity.ApplicationId;
                        actvityOfUser.HasImage         = actvity.HasImage;
                        actvityOfUser.HasMusic         = actvity.HasMusic;
                        actvityOfUser.HasVideo         = actvity.HasVideo;
                        actvityOfUser.IsOriginalThread = actvity.IsOriginalThread;
                        actvityOfUser.IsPrivate        = actvity.IsPrivate;
                        actvityOfUser.UserId           = actvity.UserId;
                        actvityOfUser.ReferenceId      = actvity.ReferenceId;
                        actvityOfUser.SourceId         = actvity.SourceId;
                        actvityOfUser.TenantTypeId     = actvity.TenantTypeId;

                        actvityOfUser.OwnerId   = sender.UserId;
                        actvityOfUser.OwnerName = sender.User.DisplayName;
                        actvityOfUser.OwnerType = ActivityOwnerTypes.Instance().User();
                        activityService.Generate(actvityOfUser, false);
                    }
                }
            }
            else if (auditDirection == false) //删除动态
            {
                activityService.DeleteSource(TenantTypeIds.Instance().Microblog(), sender.MicroblogId);
            }
        }