示例#1
0
        public void CreateByTemp(String ids, ForumTopic topic)
        {
            int[] arrIds = cvt.ToIntArray(ids);
            if (arrIds.Length == 0)
            {
                return;
            }

            ForumTopicService topicService = new ForumTopicService();

            ForumPost post = topicService.GetPostByTopic(topic.Id);

            int attachmentCount = 0;

            foreach (int id in arrIds)
            {
                AttachmentTemp _temp = AttachmentTemp.findById(id);
                if (_temp == null)
                {
                    continue;
                }

                Attachment a = new Attachment();

                a.AppId = _temp.AppId;
                a.Guid  = _temp.Guid;

                a.FileSize = _temp.FileSize;
                a.Type     = _temp.Type;
                a.Name     = _temp.Name;

                a.Description    = _temp.Description;
                a.ReadPermission = _temp.ReadPermission;
                a.Price          = _temp.Price;


                a.TopicId = topic.Id;
                a.PostId  = post.Id;

                a.OwnerId    = topic.OwnerId;
                a.OwnerType  = topic.OwnerType;
                a.OwnerUrl   = topic.OwnerUrl;
                a.Creator    = topic.Creator;
                a.CreatorUrl = topic.CreatorUrl;

                a.insert();

                _temp.delete();

                attachmentCount++;
            }

            if (attachmentCount > 0)
            {
                String msg = string.Format("上传附件 <a href=\"{0}\">{1}</a>,获得奖励", alink.ToAppData(topic), topic.Title);
                incomeService.AddIncome(topic.Creator, UserAction.Forum_AddAttachment.Id, msg);
            }

            topicService.UpdateAttachments(topic, attachmentCount);
        }
示例#2
0
        public void CreateByTemp(String ids, ForumTopic topic)
        {
            int[] arrIds = cvt.ToIntArray(ids);
            if (arrIds.Length == 0)
            {
                return;
            }

            ForumTopicService topicService = new ForumTopicService();

            ForumPost post = topicService.GetPostByTopic(topic.Id);

            int attachmentCount = 0;

            foreach (int id in arrIds)
            {
                AttachmentTemp at = AttachmentTemp.findById(id);
                if (at == null)
                {
                    continue;
                }

                Attachment a = new Attachment();

                a.AppId = at.AppId;
                a.Guid  = at.Guid;

                a.FileSize = at.FileSize;
                a.Type     = at.Type;
                a.Name     = at.Name;

                a.Description    = at.Description;
                a.ReadPermission = at.ReadPermission;
                a.Price          = at.Price;


                a.TopicId = topic.Id;
                a.PostId  = post.Id;

                a.OwnerId    = topic.OwnerId;
                a.OwnerType  = topic.OwnerType;
                a.OwnerUrl   = topic.OwnerUrl;
                a.Creator    = topic.Creator;
                a.CreatorUrl = topic.CreatorUrl;

                a.insert();

                at.delete();

                attachmentCount++;
            }

            topicService.UpdateAttachments(topic, attachmentCount);
        }
示例#3
0
        public void CreateByTemp( String ids, ForumTopic topic )
        {
            int[] arrIds = cvt.ToIntArray( ids );
            if (arrIds.Length == 0) return;

            ForumTopicService topicService = new ForumTopicService();

            ForumPost post = topicService.GetPostByTopic( topic.Id );

            int attachmentCount = 0;
            foreach (int id in arrIds) {

                AttachmentTemp _temp = AttachmentTemp.findById( id );
                if (_temp == null) continue;

                Attachment a = new Attachment();

                a.AppId = _temp.AppId;
                a.Guid = _temp.Guid;

                a.FileSize = _temp.FileSize;
                a.Type = _temp.Type;
                a.Name = _temp.Name;

                a.Description = _temp.Description;
                a.ReadPermission = _temp.ReadPermission;
                a.Price = _temp.Price;

                a.TopicId = topic.Id;
                a.PostId = post.Id;

                a.OwnerId = topic.OwnerId;
                a.OwnerType = topic.OwnerType;
                a.OwnerUrl = topic.OwnerUrl;
                a.Creator = topic.Creator;
                a.CreatorUrl = topic.CreatorUrl;

                a.insert();

                _temp.delete();

                attachmentCount++;

            }

            if (attachmentCount > 0) {
                String msg = string.Format( "上传附件 <a href=\"{0}\">{1}</a>,获得奖励", alink.ToAppData( topic ), topic.Title );
                incomeService.AddIncome( topic.Creator, UserAction.Forum_AddAttachment.Id, msg );
            }

            topicService.UpdateAttachments( topic, attachmentCount );
        }
        public void CreateByTemp( String ids, ForumTopic topic )
        {
            int[] arrIds = cvt.ToIntArray( ids );
            if (arrIds.Length == 0) return;

            ForumTopicService topicService = new ForumTopicService();

            ForumPost post = topicService.GetPostByTopic( topic.Id );

            int attachmentCount = 0;
            foreach (int id in arrIds) {

                AttachmentTemp at = AttachmentTemp.findById( id );
                if (at == null) continue;

                Attachment a = new Attachment();

                a.AppId = at.AppId;
                a.Guid = at.Guid;

                a.FileSize = at.FileSize;
                a.Type = at.Type;
                a.Name = at.Name;

                a.Description = at.Description;
                a.ReadPermission = at.ReadPermission;
                a.Price = at.Price;

                a.TopicId = topic.Id;
                a.PostId = post.Id;

                a.OwnerId = topic.OwnerId;
                a.OwnerType = topic.OwnerType;
                a.OwnerUrl = topic.OwnerUrl;
                a.Creator = topic.Creator;
                a.CreatorUrl = topic.CreatorUrl;

                a.insert();

                at.delete();

                attachmentCount++;

            }

            topicService.UpdateAttachments( topic, attachmentCount );
        }
        public virtual Result Create( Attachment a, User user, IMember owner )
        {
            a.OwnerId = owner.Id;
            a.OwnerType = owner.GetType().FullName;
            a.OwnerUrl = owner.Url;
            a.Creator = user;
            a.CreatorUrl = user.Url;

            a.Guid = Guid.NewGuid().ToString();

            ForumTopicService topicService = new ForumTopicService();
            ForumPost post = topicService.GetPostByTopic( a.TopicId );
            a.PostId = post.Id;

            Result result = db.insert( a );

            refreshTopicCount( a );

            return result;
        }
示例#6
0
        public virtual Result Create(Attachment a, User user, IMember owner)
        {
            a.OwnerId    = owner.Id;
            a.OwnerType  = owner.GetType().FullName;
            a.OwnerUrl   = owner.Url;
            a.Creator    = user;
            a.CreatorUrl = user.Url;

            a.Guid = Guid.NewGuid().ToString();

            ForumTopicService topicService = new ForumTopicService();
            ForumPost         post         = topicService.GetPostByTopic(a.TopicId);

            a.PostId = post.Id;


            Result result = db.insert(a);

            refreshTopicCount(a);

            return(result);
        }