/// <summary>
        /// 获取新闻公告信息
        /// </summary>
        /// <param name="LoginId">登录用户标识ID</param>
        /// <param name="starttime">开始时间</param>
        /// <param name="endtime">结束时间</param>
        /// <param name="NType">新闻类型</param>
        /// <param name="pageindex">页索引</param>
        /// <param name="pagesize">页大小</param>
        /// <param name="page">页总数</param>
        ///  <param name="list">新闻数据集</param>
        /// <returns></returns>
        public ErrType GetTradeNewsInfoWithPage(
            string loginId, DateTime starttime, DateTime endtime, NewsTypeEnum nType,
            int pageindex, int pagesize, ref int page, ref ObservableCollection <NewsInfo> list)
        {
            try
            {
                NewsLqc lqc = new NewsLqc();
                lqc.EndTime   = endtime;
                lqc.LoginID   = loginId;
                lqc.NType     = (NewsType)nType;
                lqc.StartTime = starttime;
                TradeNewsInfo result = TradeService.GetTradeNewsInfoWithPage(lqc, pageindex, pagesize, ref page);
                if (!result.Result)
                {
                    return(new ErrType(ERR.SERVICE, result.Desc));
                }

                foreach (TradeNews news in result.TradeNewsInfoList)
                {
                    list.Add(TradeConverter.ToNewsInfo(news));
                }
                return(GeneralErr.Success);
            }
            catch (TimeoutException te)
            {
                FileLog.WriteLog("", Assembly.GetExecutingAssembly().GetName().Name, this.GetType().Name, new StackTrace().GetFrame(0).GetMethod().Name, te.Message); return(new ErrType(ERR.EXEPTION, ErrorText.TimeoutException));
            }
            catch (Exception ex)
            {
                FileLog.WriteLog("", Assembly.GetExecutingAssembly().GetName().Name, this.GetType().Name, new StackTrace().GetFrame(0).GetMethod().Name, ex.Message);
                return(new ErrType(ERR.EXEPTION, ErrorText.GetTradeNewsInfo));
            }
        }
        public ActionResult GetNews(int id, int?subId, int type, bool?isPreview)
        {
            if (string.IsNullOrEmpty(ViewBag.WeChatUserID))
            {
                return(Redirect("/notauthed.html"));
            }
            NewsTypeEnum typeEnum = (NewsTypeEnum)type;

            switch (typeEnum)
            {
            case NewsTypeEnum.Message:
                if (isPreview.HasValue && isPreview.Value)
                {
                    var model = _previewMessageLogService.Repository.Entities.Where(a => a.Id == id && a.ContentType == (int)WechatMessageLogType.news).FirstOrDefault();
                    if (model != null)
                    {
                        var list = JsonConvert.DeserializeObject <List <NewsInfoView> >(model.Content);
                        ViewBag.Content     = list.Where(a => a.Id == subId).First();
                        ViewBag.CreatedTime = model.CreatedTime.ToString("yyyy-MM-dd");
                    }
                }
                else
                {
                    var model = _messageLogService.Repository.Entities.Where(a => a.Id == id && a.ContentType == (int)WechatMessageLogType.news).FirstOrDefault();
                    if (model != null)
                    {
                        var list = JsonConvert.DeserializeObject <List <NewsInfoView> >(model.Content);
                        ViewBag.Content     = list.Where(a => a.Id == subId).First();
                        ViewBag.CreatedTime = model.CreatedTime.ToString("yyyy-MM-dd");
                    }
                }
                break;

            case NewsTypeEnum.AutoReply:
                var view = new AutoReplyNewView();
                view.Main = _autoReplyService.GetDetail(id);
                var news = JsonConvert.DeserializeObject <List <NewsInfoView> >(view.Main.Contents[0].Content)[0];
                ViewBag.Content     = news;
                ViewBag.CreatedTime = view.Main.CreatedDate.Value.ToString("yyyy-MM-dd");
                break;

            default:
                break;
            }
            return(View());
        }
        /// <summary>
        /// 获取新闻公告信息
        /// </summary>
        /// <param name="LoginId">登录用户标识ID</param>
        /// <param name="starttime">开始时间</param>
        /// <param name="endtime">结束时间</param>
        /// <param name="NType">新闻类型</param>
        /// <param name="pageindex">页索引</param>
        /// <param name="pagesize">页大小</param>
        /// <param name="page">页总数</param>
        ///  <param name="list">新闻数据集</param>
        /// <returns></returns>
        public ErrType GetTradeNewsInfoWithPage(
            string loginId, DateTime starttime, DateTime endtime, NewsTypeEnum nType,
            int pageindex, int pagesize, ref int page, ref ObservableCollection<NewsInfo> list)
        {
            try
            {
                NewsLqc lqc = new NewsLqc();
                lqc.EndTime = endtime;
                lqc.LoginID = loginId;
                lqc.NType = (NewsType)nType;
                lqc.StartTime = starttime;
                TradeNewsInfo result = TradeService.GetTradeNewsInfoWithPage(lqc, pageindex, pagesize, ref page);
                if (!result.Result)
                    return new ErrType(ERR.SERVICE, result.Desc);

                foreach (TradeNews news in result.TradeNewsInfoList)
                {
                    list.Add(TradeConverter.ToNewsInfo(news));
                }
                return GeneralErr.Success;
            }
            catch (TimeoutException te)
            {
                FileLog.WriteLog("", Assembly.GetExecutingAssembly().GetName().Name, this.GetType().Name, new StackTrace().GetFrame(0).GetMethod().Name, te.Message); return new ErrType(ERR.EXEPTION, ErrorText.TimeoutException);
            }
            catch (Exception ex)
            {
                FileLog.WriteLog("", Assembly.GetExecutingAssembly().GetName().Name, this.GetType().Name, new StackTrace().GetFrame(0).GetMethod().Name, ex.Message);
                return new ErrType(ERR.EXEPTION, ErrorText.GetTradeNewsInfo);
            }
        }