public async Task <Result <string> > DelWxNews([FromBody] WxNewsShow item)
        {
            try
            {
                var delRes = PubMediaApi.DeleteMaterial(item.MediaId);
                logHelper.Debug("DelWxNews:删除永久图文结果:" + delRes.JsonSerialize());
                if (!delRes.IsSuss)
                {
                    var msg = "删除永久图文失败:代码:" + delRes.errcode + "       " + delRes.errmsg;
                    logHelper.Error("DelWxNews:" + msg);
                    return(new Result <string> {
                        Message = msg
                    });
                }

                item.IsDel      = 1;
                item.Updater    = currentUser.UserName;
                item.UpdateTime = DateTime.Now;
                var upRes = await repo.UpdateAsync(item, new List <string> {
                    "IsDel", "Updater", "UpdateTime"
                });

                return(new Result <string> {
                    IsSucc = upRes, Message = $"获取微信永久图文列表{(upRes ? "成功!" : "失败!")}"
                });
            }
            catch (Exception ex)
            {
                logHelper.Error("DelWxNews:获取微信永久图文列表失败:" + ex.Message + "        " + ex.StackTrace);
            }

            return(new Result <string> {
                Message = "获取微信永久图文列表失败!"
            });
        }
        public async Task <Result <string> > SaveWxNews([FromBody] JObject objPara)
        {
            try
            {
                dynamic obj     = objPara as dynamic;
                var     lstNews = ComHelper.JsonDeserialize <List <WxNewsDetailShow> >(obj.lstNews.ToString());
                var     now     = DateTime.Now;
                // 先把图文保存到数据
                var userName = currentUser.UserName;
                foreach (var item in lstNews)
                {
                    item.ShowCoverPic = 1;
                    item.IsDel        = 1;
                    item.Creater      = userName;
                    item.Updater      = userName;
                    item.CreateTime   = now;
                    item.UpdateTime   = now;
                    //await repo.SaveAsync(item);
                }

                // 批量保存
                var mulSaveRes = await repo.SaveAsync(lstNews);

                // 构造微信图文消息
                var lstWxNew = new List <PubMediaArticle>();
                var root     = ComHelper.GetAbsPath("~/");
                // TODO:预览界面待开发
                var newsVirUrl = "~/WxAdmin/Wechat/WxNewsShow?id=";
                foreach (var item in lstNews)
                {
                    // 文章相对路径
                    item.ContentSourceUrl = newsVirUrl + item.Id;
                    // 文章真实路径
                    item.ContentSourceUrlShow = ComHelper.UpdImgAbsPath(root, item.ContentSourceUrl);

                    // 保存图文信息
                    var temp = new PubMediaArticle();
                    temp.title              = item.Title;
                    temp.thumb_media_id     = item.ThumbMediaId;
                    temp.author             = item.Author;
                    temp.digest             = item.Digest;
                    temp.show_cover_pic     = 1;
                    temp.content            = item.Content;
                    temp.content_source_url = item.ContentSourceUrlShow;
                    lstWxNew.Add(temp);
                }

                // 创建永久图文消息
                var newRes = PubMediaApi.AddNews(lstWxNew);
                logHelper.Debug("SaveWxNews:保存图文消息结果:" + newRes.JsonSerialize());
                if (!newRes.IsSuss)
                {
                    var msg = "保存图文消息失败:代码:" + newRes.errcode + "   原因:" + newRes.errmsg;
                    logHelper.Error("SaveWxNews:" + msg);
                    return(new Result <string> {
                        Message = msg
                    });
                }

                // 更新图文信息
                foreach (var item in lstNews)
                {
                    item.MediaId = newRes.media_id;
                    item.IsDel   = 0;
                    //await repo.SaveAsync(item);
                }

                // 批量保存
                mulSaveRes = await repo.SaveAsync(lstNews);

                // 保存图文消息
                var dtNow      = DateTime.Now;
                var wxNewsInfo = new WxNewsShow();
                wxNewsInfo.MediaId        = newRes.media_id;
                wxNewsInfo.FirstNewsTitle = lstNews[0].Title;
                wxNewsInfo.IsMultiple     = lstNews.Count > 0 ? 1 : 0;
                wxNewsInfo.Creater        = userName;
                wxNewsInfo.Updater        = userName;
                wxNewsInfo.CreateTime     = dtNow;
                wxNewsInfo.UpdateTime     = dtNow;
                await repo.SaveAsync(wxNewsInfo);

                return(new Result <string> {
                    IsSucc = true, Message = "保存图文成功!"
                });
            }
            catch (Exception ex)
            {
                logHelper.Error("SaveWxNews:保存微信图文素材失败:" + ex.Message + "        " + ex.StackTrace);
            }

            return(new Result <string> {
                Message = "保存微信图文素材失败!"
            });
        }