Ejemplo n.º 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);
        }
Ejemplo n.º 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);
        }
Ejemplo n.º 3
0
        public virtual void DeleteTempAttachment(int id)
        {
            AttachmentTemp at = AttachmentTemp.findById(id);

            if (at == null)
            {
                return;
            }

            at.delete();

            Img.DeleteImgAndThumb(at.FileUrl);
        }