コード例 #1
0
        public WxNewsItemOutputDto GetForm(string keyValue)
        {
            var                 id = Convert.ToInt64(keyValue);
            var                 genericFetchStrategy = new GenericFetchStrategy <WxNewsItem>().Include(p => p.Thumb);
            WxNewsItem          wxNewsItem           = wxNewsItemRepository.Get(id, genericFetchStrategy);
            WxNewsItemOutputDto wxNewsItemOutputDto  = new WxNewsItemOutputDto();

            AutoMapper.Mapper.Map <WxNewsItem, WxNewsItemOutputDto>(wxNewsItem, wxNewsItemOutputDto);
            return(wxNewsItemOutputDto);
        }
コード例 #2
0
ファイル: WxNewsService.cs プロジェクト: EagleSmith/NFineCore
        public void SubmitForm(WxNewsInputDto wxNewsInputDto, string keyValue)
        {
            string appId  = WxOperatorProvider.Provider.GetCurrent().AppId;
            WxNews wxNews = new WxNews();

            if (!string.IsNullOrEmpty(keyValue))
            {
                long newsId = Convert.ToInt64(keyValue);
                var  genericFetchStrategy = new GenericFetchStrategy <WxNews>().Include(p => p.WxNewsItems.First().Thumb);
                wxNews = wxNewsRepository.Get(newsId, genericFetchStrategy);
                wxNews.LastModificationTime = DateTime.Now;
                wxNewsRepository.Update(wxNews);
                foreach (WxNewsItemInputDto wxNewsItemInputDto in wxNewsInputDto.WxNewsItems)
                {
                    if (!string.IsNullOrEmpty(wxNewsItemInputDto.Id))
                    {
                        long       newsItemId = Convert.ToInt64(wxNewsItemInputDto.Id);
                        WxNewsItem wxNewsItem = wxNewsItemRepository.Get(newsItemId);
                        wxNewsItem.NewsId           = wxNews.Id;
                        wxNewsItem.Title            = wxNewsItemInputDto.Title;
                        wxNewsItem.Author           = wxNewsItemInputDto.Author;
                        wxNewsItem.Digest           = wxNewsItemInputDto.Digest;
                        wxNewsItem.Content          = wxNewsItemInputDto.Content;
                        wxNewsItem.ContentSourceUrl = wxNewsItemInputDto.ContentSourceUrl;
                        wxNewsItem.ThumbId          = Convert.ToInt64(wxNewsItemInputDto.Thumb.Id);
                        if (!string.IsNullOrEmpty(wxNewsItemInputDto.Thumb.MediaId))
                        {
                            wxNewsItem.ShowCoverPic = 1;
                        }
                        else
                        {
                            wxNewsItem.ShowCoverPic = 0;
                        }
                        wxNewsItem.Index                = wxNewsItemInputDto.Index;
                        wxNewsItem.NeedOpenComment      = wxNewsItemInputDto.NeedOpenComment;
                        wxNewsItem.OnlyFansCanComment   = wxNewsItemInputDto.OnlyFansCanComment;
                        wxNewsItem.LastModificationTime = DateTime.Now;
                        wxNewsItemRepository.Update(wxNewsItem);
                    }
                    else
                    {
                        WxNewsItem wxNewsItem = new WxNewsItem();
                        wxNewsItem.Id               = IdWorkerHelper.GenId64();
                        wxNewsItem.NewsId           = wxNews.Id;
                        wxNewsItem.Title            = wxNewsItemInputDto.Title;
                        wxNewsItem.Author           = wxNewsItemInputDto.Author;
                        wxNewsItem.Digest           = wxNewsItemInputDto.Digest;
                        wxNewsItem.Content          = wxNewsItemInputDto.Content;
                        wxNewsItem.ContentSourceUrl = wxNewsItemInputDto.ContentSourceUrl;
                        wxNewsItem.ThumbId          = Convert.ToInt64(wxNewsItemInputDto.Thumb.Id);
                        if (!string.IsNullOrEmpty(wxNewsItemInputDto.Thumb.Id))
                        {
                            wxNewsItem.ShowCoverPic = 1;
                        }
                        else
                        {
                            wxNewsItem.ShowCoverPic = 0;
                        }
                        wxNewsItem.Index              = wxNewsItemInputDto.Index;
                        wxNewsItem.NeedOpenComment    = wxNewsItemInputDto.NeedOpenComment;
                        wxNewsItem.OnlyFansCanComment = wxNewsItemInputDto.OnlyFansCanComment;
                        wxNewsItem.DeletedMark        = false;
                        wxNewsItem.CreationTime       = DateTime.Now;
                        wxNewsItemRepository.Add(wxNewsItem);
                    }
                }
            }
            else
            {
                wxNews.Id           = IdWorkerHelper.GenId64();
                wxNews.AppId        = appId;
                wxNews.DeletedMark  = false;
                wxNews.CreationTime = DateTime.Now;
                wxNews.WxNewsItems  = new List <WxNewsItem>();
                foreach (WxNewsItemInputDto wxNewsItemInputDto in wxNewsInputDto.WxNewsItems)
                {
                    WxNewsItem wxNewsItem = new WxNewsItem();
                    wxNewsItem.Id               = IdWorkerHelper.GenId64();
                    wxNewsItem.NewsId           = wxNews.Id;
                    wxNewsItem.Title            = wxNewsItemInputDto.Title;
                    wxNewsItem.Author           = wxNewsItemInputDto.Author;
                    wxNewsItem.Digest           = wxNewsItemInputDto.Digest;
                    wxNewsItem.Content          = wxNewsItemInputDto.Content;
                    wxNewsItem.ContentSourceUrl = wxNewsItemInputDto.ContentSourceUrl;
                    wxNewsItem.ThumbId          = Convert.ToInt64(wxNewsItemInputDto.Thumb.Id);
                    if (!string.IsNullOrEmpty(wxNewsItemInputDto.Thumb.Id))
                    {
                        wxNewsItem.ShowCoverPic = 1;
                    }
                    else
                    {
                        wxNewsItem.ShowCoverPic = 0;
                    }
                    wxNewsItem.Index              = wxNewsItemInputDto.Index;
                    wxNewsItem.NeedOpenComment    = wxNewsItemInputDto.NeedOpenComment;
                    wxNewsItem.OnlyFansCanComment = wxNewsItemInputDto.OnlyFansCanComment;
                    wxNewsItem.DeletedMark        = false;
                    wxNewsItem.CreationTime       = DateTime.Now;
                    wxNews.WxNewsItems.Add(wxNewsItem);
                }
                wxNewsRepository.Add(wxNews);
            }
        }