123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312 |
- using System;
- using System.Text;
- using System.Collections.Generic;
- using System.Net;
- using HttpCodeLib;
- using System.Text.RegularExpressions;
- using CB.Common;
- using CB.Common.HttpHelper;
- using PostDataType = CB.Common.HttpHelper.PostDataType;
- namespace CB.Framework
- {
- /// <summary>
- /// 页面基类
- /// </summary>
- public class PageBase : System.Web.UI.Page
- {
- public PageBase()
- { }
- /// <summary>
- /// 页面数据初始化
- /// </summary>
- protected virtual void InitData()
- {
- }
- /// <summary>
- /// 同步55125首页文章显示
- /// </summary>
- /// <param name="topSize"></param>
- /// <param name="pageSize"></param>
- /// <param name="cid"></param>
- /// <param name="maxLength">文章标题最大长度</param>
- /// <returns></returns>
- protected virtual string GetSynArticle(int topSize, int pageSize, int cid, int maxLength)
- {
- var list = CB.Data.Synchronize.Article.GetArticleList(topSize, pageSize, cid);
- if (null == list || 0 >= list.Count)
- return "";
- var sp = new StringBuilder(400 * list.Count);
- foreach (var item in list)
- {
- sp.AppendFormat("<li><a href=\"{0}\" target=\"_blank\">{1}</a><span class=\"time\">{2}</span></li>",
- item.Url, CB.Common.Utils.GetSubString(item.Title, maxLength, ""), item.Time.ToString("MM-dd"));
- }
- return sp.ToString();
- }
- protected virtual string GetSynArticle(int topSize, int pageSize, int cid, int maxLength, bool wap, bool showDate = false)
- {
- var list = CB.Data.Synchronize.Article.GetArticleList(topSize, pageSize, cid, wap);
- if (null == list || 0 >= list.Count)
- return "";
- var sp = new StringBuilder(400 * list.Count);
- var fortstr = "<li><a href=\"{0}\" target=\"_blank\">{1}</a><span></span></li>";
- if (showDate)
- fortstr = "<li><a href=\"{0}\" target=\"_blank\">{1}</a><span class=\"time\">{2}</span></li>";
- foreach (var item in list)
- {
- var lst = new List<object>() { item.Url, CB.Common.Utils.GetSubString(item.Title, maxLength, "") };
- if (showDate)
- lst.Add(item.Time.ToString("MM-dd"));
- sp.AppendFormat(fortstr, lst.ToArray());
- }
- return sp.ToString();
- }
- private static HttpHelper helper = new HttpHelper();
- /// <summary>
- /// 调用平台新接口获取资讯数据
- /// </summary>
- /// <param name="topSize"></param>
- /// <param name="pageSize"></param>
- /// <param name="categoryId"></param>
- /// <param name="maxLength"></param>
- /// <returns></returns>
- protected virtual string GetSynArticle(int topSize, int pageSize, string categoryId, int maxLength, bool showDate = true)
- {
- StringBuilder builder = new StringBuilder();
- try
- {
- var obj = new
- {
- CategoryId = categoryId,
- PageSize = pageSize,
- PageIndex = topSize
- };
- string json = obj.TO_Josin();
- if (!string.IsNullOrEmpty(json))
- {
- HttpItem item = new HttpItem
- {
- Url = "http://m.api.55128.cn/api/v1/ZxNews/GetNewsList",
- Method = "POST",
- PostDataType = PostDataType.String,
- Postdata = json,
- Accept = "application/json",
- ContentType = "application/json"
- };
- HttpResult result = helper.GetHtml(item);
- if (result.StatusCode == HttpStatusCode.OK)
- {
- string resJson = result.Html;
- if (!string.IsNullOrEmpty(resJson))
- {
- Rootobject rootobject = resJson.TO_Object<Rootobject>();
- if (rootobject != null)
- {
- ItemData itemData = rootobject.Data;
- //拿到实际咨询数据
- List<Row> rows = itemData.Rows;
- var fortstr = "<li><a href=\"//m.55128.cn/m/zx/ssq/{0}.html\" target=\"_blank\">{1}</a><span class=\"time\">{2}</span></li>";
- if (showDate)
- fortstr = "<li><a href=\"//m.55128.cn/m/zx/ssq/{0}.html\" target=\"_blank\">{1}</a><span></span></li>";
- foreach (var row in rows)
- {
- var lst = new List<object>() { row.NewsId, CB.Common.Utils.GetSubString(row.Title, maxLength, "") };
- if (showDate)
- lst.Add(row.AddTime);
- builder.AppendFormat(fortstr, lst.ToArray());
- }
- }
- }
- }
- }
- }
- catch (Exception e)
- {
- Console.WriteLine(e.Message);
- }
- return builder.ToString();
- }
- protected virtual string GetSynArticle(int topSize, int pageSize, int cid)
- {
- var list = CB.Data.Synchronize.Article.GetArticleList(topSize, pageSize, cid);
- if (null == list || 0 >= list.Count)
- return "";
- var sp = new StringBuilder(400 * list.Count);
- int num = 0;
- IList<int> nums = new int[] { 3, 4, 7, 8 };
- foreach (var item in list)
- {
- num++;
- if (!nums.Contains(num))
- {
- if (num != list.Count)
- {
- sp.Append("<li><a href=\"" + GetUrl(item.Url, item.Title) + "\" target=\"_blank\">" + item.Time.ToString("yyyy") + "年" + item.Title.Replace(item.Time.ToString("yyyy"), "") + "</a><span>" + item.Time.ToString("MM-dd") + "</span></li>");
- }
- else
- {
- sp.Append("<li class=\"last\"><a href=\"" + GetUrl(item.Url, item.Title) + "\" target=\"_blank\">" + item.Time.ToString("yyyy") + "年" + item.Title.Replace(item.Time.ToString("yyyy"), "") + "</a><span>" + item.Time.ToString("MM-dd") + "</span></li>");
- }
- }
- else
- {
- sp.Append("<li class=\"bg_grey\"><a href=\"" + GetUrl(item.Url, item.Title) + "\" target=\"_blank\">" + item.Time.ToString("yyyy") + "年" + item.Title.Replace(item.Time.ToString("yyyy"), "") + "</a><span>" + item.Time.ToString("MM-dd") + "</span></li>");
- }
- }
- return sp.ToString();
- }
- /// <summary>
- ///
- /// </summary>
- /// <param name="Url"></param>
- /// <returns></returns>
- private string GetUrl(string Url, string Title)
- {
- //http://www.55125.cn/kaijiang/3d/20171009_2257272.htm
- //http://zx.55128.cn/kaijiang/ssq/2017117.htm
- //2017年双色球第117期开奖结果
- string temp = string.Empty;
- if (!string.IsNullOrEmpty(Url))
- {
- Url = Url.Replace("http://", "").Replace(".htm", "");
- // www.55125.cn/kaijiang/3d/20171009_2257272
- string[] array = Url.Split("//".ToCharArray());
- //
- string typeCode = array[2];
- string qishu = RemoveNotNumber(Title);
- string shu = qishu.Substring(qishu.Length - 3, 3);
- string res = array[3].Substring(0, 4) + shu;
- temp = "http://zx.55128.cn/kaijiang/" + typeCode + "/" + res + ".htm";
- }
- return temp;
- }
- public static string RemoveNotNumber(string Title)
- {
- return Regex.Replace(Title, @"[^\d]", "");
- }
- protected virtual string GetSynArticle(int topSize, int pageSize, int cid, bool wap)
- {
- var list = CB.Data.Synchronize.Article.GetArticleList(topSize, pageSize, cid, wap);
- if (null == list || 0 >= list.Count)
- return "";
- var sp = new StringBuilder(400 * list.Count);
- int num = 0;
- IList<int> nums = new int[] { 3, 4, 7, 8 };
- foreach (var item in list)
- {
- num++;
- if (!nums.Contains(num))
- {
- if (num != list.Count)
- {
- sp.Append("<li><a href=\"" + item.Url + "\" target=\"_blank\">" + item.Time.ToString("yyyy") + "年" + item.Title.Replace(item.Time.ToString("yyyy"), "") + "</a><span>" + item.Time.ToString("MM-dd") + "</span></li>");
- }
- else
- {
- sp.Append("<li class=\"last\"><a href=\"" + item.Url + "\" target=\"_blank\">" + item.Time.ToString("yyyy") + "年" + item.Title.Replace(item.Time.ToString("yyyy"), "") + "</a><span>" + item.Time.ToString("MM-dd") + "</span></li>");
- }
- }
- else
- {
- sp.Append("<li class=\"bg_grey\"><a href=\"" + item.Url + "\" target=\"_blank\">" + item.Time.ToString("yyyy") + "年" + item.Title.Replace(item.Time.ToString("yyyy"), "") + "</a><span>" + item.Time.ToString("MM-dd") + "</span></li>");
- }
- }
- return sp.ToString();
- }
-
- /// <summary>
- /// TOP专题文章
- /// </summary>
- /// <param name="topSize"></param>
- /// <param name="cid"></param>
- /// <param name="tagId"></param>
- /// <param name="maxLength"></param>
- /// <param name="fomartUrl"></param>
- /// <returns></returns>
- protected virtual string GetColumnArticle(int topSize, int cid, int tagId, int maxLength, string fomartUrl)
- {
- var list = CB.Data.Caches.GetColumnArticleList(topSize, cid, tagId);
- if (null == list || 0 >= list.Count)
- return "";
- var sp = new StringBuilder(400 * list.Count);
- foreach (var item in list)
- {
- sp.AppendFormat("<li><a href=\"{0}\" target=\"_blank\">{1}</a><span class=\"time\">{2}</span></li>",
- string.Format(fomartUrl, item.Id, item.Addtime.ToString("yyyyMMdd")), CB.Common.Utils.GetSubString(item.Title, maxLength, ""), item.Addtime.ToString("MM-dd"));
- }
- return sp.ToString();
- }
- protected virtual string GetColumnArticle(int topSize, int cid, int tagId, int maxLength, string fomartUrl, string wap)
- {
- var list = CB.Data.Caches.GetColumnArticleList(topSize, cid, tagId);
- if (null == list || 0 >= list.Count)
- return "";
- var sp = new StringBuilder(400 * list.Count);
- foreach (var item in list)
- {
- sp.AppendFormat("<li><a href=\"{0}\">{1}</a><span></span></li>",
- string.Format(fomartUrl, item.Id), CB.Common.Utils.GetSubString(item.Title, maxLength, ""));
- }
- return sp.ToString();
- }
- #region 实体类
- public class Rootobject
- {
- public int Status { get; set; }
- public ItemData Data { get; set; }
- public string Message { get; set; }
- public object BackUrl { get; set; }
- public object ExecutionTime { get; set; }
- }
- public class ItemData
- {
- public int TotalPage { get; set; }
- public int PageIndex { get; set; }
- public int TotalRow { get; set; }
- public List<Row> Rows { get; set; }
- }
- public class Row
- {
- public string NewsId { get; set; }
- public string AddTime { get; set; }
- public string Title { get; set; }
- }
- #endregion
- }
- }
|