123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306 |
- 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.Admin.Plugins.TrendChartConfig;
- using CB.Common;
- using CB.Data;
- using CB.Entity;
- using CB.Framework;
- namespace CB.Admin.Plugins.Template
- {
- public partial class TemplateRelationList : AdminPage
- {
- private IList<CB.Entity.TrendChartInfo> TrendChartList;
- private IList<CB.Entity.TemplateInfo> TemplateList;
- private IList<CB.Entity.TemplateTypeInfo> TemplateTypeList;
- private IList<CB.Entity.TemplateRelationInfo> TemplateRelationLists;
- protected void Page_Load(object sender, EventArgs e)
- {
- TrendChartList = TrendChartService.ToList();
- TemplateList = TemplateService.ToList();
- TemplateTypeList = TemplateTypeService.ToList();
- TemplateRelationLists = TemplateRelationService.ToList();
- if (!Page.IsPostBack)
- {
- InitData();
- }
- }
- protected override void InitData()
- {
- BindRepeaterList();
- BindTree();
- }
- protected void btnSearch_Click(object sender, EventArgs e)
- {
- BindRepeaterList();
- }
- protected override void BindRepeaterList()
- {
- int recordCount;
- repeaterList.DataSource = null;
- var list = CB.Data.TemplateRelationService.ToPaging(new Entity.TemplateRelationInfo() { ChartId = getTrendChartId(txtChartname.Text.Trim()) }, AspNetPager1.PageSize, AspNetPager1.CurrentPageIndex, out recordCount);
- repeaterList.DataSource = list;
- repeaterList.DataBind();
- BindTrendChart();
- }
- protected void repeaterList_ItemCommand(object source, RepeaterCommandEventArgs e)
- {
- if ("dndel" == e.CommandName)
- {
- if (CB.Data.TemplateRelationService.Delete(TypeConverter.ObjectToInt(e.CommandArgument)))
- Logs("删除模板关系成功", string.Format("模板关系[ID={0}]", e.CommandArgument));
- BindRepeaterList();
- }
- if ("edit" == e.CommandName)
- {
- Entity.TemplateRelationInfo Entity = CB.Data.TemplateRelationService.Get(TypeConverter.ObjectToInt(e.CommandArgument));
- if (null == Entity)
- return;
- labID.Text = Entity.Id.ToString();
- ddlChartId.SelectedValue = Entity.ChartId.ToString();
- BindTree(Entity.ChartId);
- }
- if ("isEnable" == e.CommandName)
- {
- IList<CB.Entity.TemplateRelationInfo> addList = new List<TemplateRelationInfo>();
- int id = TypeConverter.ObjectToInt(e.CommandArgument);
- TemplateRelationInfo entity = TemplateRelationLists.ToList().Find((p) => { return p.Id == id; });
- entity.IsEnable = true;
- addList.Add(entity);
- foreach (var item in TemplateRelationLists)
- {
- if (item.Id != id && item.ChartId == entity.ChartId)
- {
- addList.Add(new TemplateRelationInfo()
- {
- Id = item.Id,
- ChartId = item.ChartId,
- TemplateId = item.TemplateId,
- TemplateTypeId = item.TemplateTypeId,
- IsEnable = false
- });
- }
- }
- foreach (var item in addList)
- {
- if (TemplateRelationService.Save(item))
- Logs("修改模板关系成功", string.Format("修改模板关系成功[ID={0}]", item.Id));
- }
- ShowMessageBox("提示:修改成功!", string.Format("TemplateRelationList.aspx?authPage={0}", authPage));
- }
- }
- protected void AspNetPager1_PageChanged(object sender, EventArgs e)
- {
- BindRepeaterList();
- }
- //修改或者保存
- protected void btnEdit_Click(object sender, EventArgs e)
- {
- Tuple<bool, string> validate = Validate();
- if (validate.Item1) //通过验证
- {
- string _modules = txtModules.Value;
- List<TemplateRelationInfo> list = new List<TemplateRelationInfo>();
- string[] _data = _modules.Split(',');
- foreach (string item in _data)
- {
- if (!string.IsNullOrEmpty(item) && item != "0")
- {
- list.Add(new TemplateRelationInfo()
- {
- Id = labID.Text.ToInt(),
- ChartId = ddlChartId.SelectedValue.ToInt(),
- TemplateId = item.ToInt(),
- TemplateTypeId = getTemplateTypeId(item.ToInt()),
- IsEnable = getIsEnable( ddlChartId.SelectedValue.ToInt(),item.ToInt())
- });
- }
- }
- //删除以前配置
- TemplateRelationService.DeleteChartId(ddlChartId.SelectedValue.ToInt());
- foreach (var entity in list)
- {
- if (TemplateRelationService.Save(entity))
- Logs("修改模板关系成功", string.Format("修改模板关系成功[ID={0}]", entity.Id));
- }
- if (labID.Text != "") //修改
- {
- ShowMessageBox("提示:修改成功!", string.Format("TemplateRelationList.aspx?authPage={0}", authPage));
- }
- else //新增
- {
- ShowMessageBox("提示:新增成功!", string.Format("TemplateRelationList.aspx?authPage={0}", authPage));
- }
- ClearPage();
- }
- else
- {
- Response.Write(string.Format("<script>alert('{0}');window.opener.location.href=window.opener.location.href;</script>", validate.Item2));
- }
- BindRepeaterList();
- }
- //数据验证
- public Tuple<bool, string> Validate()
- {
- if (ddlChartId.SelectedValue == "-1")
- return new Tuple<bool, string>(false, "请选择名称!");
- return new Tuple<bool, string>(true, "验证通过!");
- }
- //清空
- protected void btnClear_Click(object sender, EventArgs e)
- {
- ClearPage();
- }
- //清空界面数据
- protected void ClearPage()
- {
- labID.Text = "";
- ddlChartId.SelectedValue = "-1";
- BindTree();
- }
- protected void BindTrendChart()
- {
- ddlChartId.Items.Clear();
- ddlChartId.Items.Add(new ListItem("==请选择==", "-1"));
- foreach (var item in TrendChartList)
- {
- ddlChartId.Items.Add(new ListItem(item.Name, item.Id.ToString()));
- }
- }
- protected string getTrendChartName(object id)
- {
- int TrendChartId = TypeConverter.ObjectToInt(id);
- foreach (var item in TrendChartList)
- {
- if (item.Id == TrendChartId)
- {
- return item.Name;
- }
- }
- return "";
- }
- protected string getTemplateName(object id)
- {
- int TemplateId = TypeConverter.ObjectToInt(id);
- foreach (var item in TemplateList)
- {
- if (item.Id == TemplateId)
- {
- return item.Name;
- }
- }
- return "";
- }
- protected string getTemplateTypeName(object id)
- {
- int TemplateTypeId = TypeConverter.ObjectToInt(id);
- foreach (var item in TemplateTypeList)
- {
- if (item.Id == TemplateTypeId)
- {
- return item.Name;
- }
- }
- return "";
- }
- protected string getIsEnable(object txt)
- {
- if (TypeConverter.ObjectToBool(txt, false))
- {
- return "启用";
- }
- else
- {
- return "禁用";
- }
- }
- protected bool getIsEnable(int chartid, int templateid)
- {
- foreach (var item in TemplateRelationLists)
- {
- if (item.ChartId == chartid && item.TemplateId == templateid)
- {
- return item.IsEnable;
- }
- }
- return false;
- }
- protected int getTrendChartId(string name)
- {
- foreach (var item in TrendChartList)
- {
- if (item.Name == name)
- {
- return item.Id;
- }
- }
- return 0;
- }
- protected int getTemplateTypeId(int template)
- {
- foreach (var item in TemplateList)
- {
- if (item.Id == template)
- {
- return item.TemplateTypeId;
- }
- }
- return 0;
- }
- protected void BindTree(int chartid = 0)
- {
- litPrivilege.Text = "";
- List<int> havetemplates;
- havetemplates = TemplateRelationLists.ToList().FindAll((info) => { return info.ChartId == chartid; }).Select(
- (en) => { return en.TemplateId; }).ToList();
- StringBuilder sp = new StringBuilder(2000);
- sp.Append("<ul>");
- sp.AppendFormat("<li tname=\"-1\" class=\"jstree-open\" tvalue=\"{0}\"><a>{1}</a>", 0, "模板");
- sp.Append("<ul>");
- foreach (var item in TemplateList)
- {
- if (havetemplates.Contains(item.Id))
- {
- sp.AppendFormat("<li tname=\"-1\" class=\"jstree-checked jstree-icon \" tvalue=\"{0}\"><a>{1}</a></li>", item.Id, item.Name);
- continue;
- }
- sp.AppendFormat("<li tname=\"-1\" class=\"jstree-icon jstree-last jstree-leaf jstree-unchecked \" tvalue=\"{0}\"><a>{1}</a></li>", item.Id, item.Name);
- }
- sp.Append("</ul>");
- sp.Append("</li>");
- sp.Append("</ul>");
- litPrivilege.Text = sp.ToString();
- }
- protected void ddlChartId_SelectedIndexChanged(object sender, EventArgs e)
- {
- BindTree(ddlChartId.SelectedValue.ToInt());
- }
- }
- }
|