using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using CB.Common; using CB.Data; using CB.Entity; using CB.Framework; namespace CB.Admin.Plugins.TVServer { public partial class LotteryServerList : AdminPage { public int sid; public string TrendName; public IList ListTVserver = new List(); public IList ListLottery = new List(); public IList ListLotteryServer = new List(); public IList ListArea = new List(); protected void Page_Load(object sender, EventArgs e) { sid = WRequest.GetString("Id").ToInt(); ListTVserver = TVServerService.ToList(); ListLottery = LotteryService.ToList(); ListLotteryServer = LotteryServerService.ToList(); ListArea = AreaService.ToList(); if (!Page.IsPostBack) { InitData(); } } protected override void InitData() { BindServerName(); BindTree(); BindRepeaterList(); } protected void btnSearch_Click(object sender, EventArgs e) { BindRepeaterList(); } protected override void BindRepeaterList() { int recordCount; repeaterList.DataSource = null; var list = CB.Data.LotteryServerService.ToPaging(new Entity.LotteryServerInfo() { Sid = GetSid(txtSid.Text.Trim()) }, AspNetPager1.PageSize, AspNetPager1.CurrentPageIndex, out recordCount); repeaterList.DataSource = list; repeaterList.DataBind(); } protected int GetSid(string serverName) { foreach (var item in ListTVserver) { if (item.Name == serverName) { return item.Id; } } return 0; } protected void repeaterList_ItemCommand(object source, RepeaterCommandEventArgs e) { if ("dndel" == e.CommandName) { if (CB.Data.LotteryServerService.Delete(TypeConverter.ObjectToInt(e.CommandArgument))) Logs("删除走势图", string.Format("走势图[ID={0}]", e.CommandArgument)); BindRepeaterList(); } if ("edit" == e.CommandName) { Entity.LotteryServerInfo Entity = CB.Data.LotteryServerService.Get(TypeConverter.ObjectToInt(e.CommandArgument)); if (null == Entity) return; labID.Text = Entity.Id.ToString(); BindServerName(Entity.Sid); BindTree(Entity.Sid); } } //修改或者保存 protected void btnEdit_Click(object sender, EventArgs e) { Tuple validate = DataValidate(); if (validate.Item1) //通过验证 { string _modules = txtModules.Value; List list = new List(); string[] _data = _modules.Split(','); foreach (string item in _data) { if (!string.IsNullOrEmpty(item) && item != "0") { list.Add(new LotteryServerInfo() { Id = labID.Text.ToInt(), Sid = dpSid.SelectedValue.ToInt(), Cid = item.ToInt() }); } } //删除以前配置 LotteryServerService.DeleteSid(dpSid.SelectedValue.ToInt()); foreach (var entity in list) { LotteryServerService.Save(entity); Logs("新增数据中心对应彩种服务器成功", string.Format("新增数据中心对应彩种服务器成功[Cid={0},Sid={1}]", entity.Cid, entity.Sid)); } if (labID.Text != "") //修改 { ShowMessageBox("提示:修改成功!", string.Format("LotteryServerList.aspx?authPage={0}", authPage)); } else //新增 { ShowMessageBox("提示:新增成功!", string.Format("LotteryServerList.aspx?authPage={0}", authPage)); } ClearPage(); } else { Response.Write(string.Format("", validate.Item2)); } BindRepeaterList(); } //数据验证 public Tuple DataValidate() { if (dpSid.SelectedValue == "-1") return new Tuple(false, "请检查是否填完数据(所有项都必须填写值)!"); return new Tuple(true, "验证通过!"); } protected void AspNetPager1_PageChanged(object sender, EventArgs e) { BindRepeaterList(); } //清空 protected void btnClear_Click(object sender, EventArgs e) { ClearPage(); } //清空界面数据 protected void ClearPage() { labID.Text = ""; dpSid.SelectedValue = "-1"; } protected void BindServerName(int Sid) { foreach (var item in ListTVserver) { if (item.Id == Sid) { dpSid.SelectedValue = item.Id.ToString(); } } } protected void BindServerName() { dpSid.Items.Add(new ListItem("==请选择==", "-1")); foreach (var item in ListTVserver) { dpSid.Items.Add(new ListItem(item.Name, item.Id.ToString())); } } protected string BindLotteryValue(int Cid) { foreach (var item in ListLottery) { if (item.Id == Cid) { return item.Name; } } return ""; } protected string BindServerValue(int Sid) { foreach (var item in ListTVserver) { if (item.Id == Sid) { return item.Name; } } return ""; } protected void BindTree(int sid = 0) { litPrivilege.Text = ""; List haveCids; haveCids = ListLotteryServer.ToList().FindAll((info) => { return info.Sid == sid; }).Select( (en) => { return en.Cid; }).ToList(); StringBuilder sp = new StringBuilder(2000); sp.Append("
    "); for (int i = 0; i < ListArea.Count; i++) { var areaItem = ListArea[i]; if (i == 0) { sp.AppendFormat("
  • {1}", 0, areaItem.Name); } else { sp.AppendFormat("
  • {1}", 0, areaItem.Name); } sp.Append("
      "); foreach (var lotteryItem in ListLottery) { if (areaItem.Aid == lotteryItem.Aid) { if (haveCids.Contains(lotteryItem.Cid)) { sp.AppendFormat("
    • {1}
    • ", lotteryItem.Cid, lotteryItem.Name); continue; } sp.AppendFormat("
    • {1}
    • ", lotteryItem.Cid, lotteryItem.Name); } } sp.Append("
    "); sp.Append("
  • "); } sp.Append("
"); litPrivilege.Text = sp.ToString(); } protected void dpSid_SelectedIndexChanged(object sender, EventArgs e) { BindTree(dpSid.SelectedValue.ToInt()); } } }