using FineUIPro.Web.common; using Model; using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace FineUIPro.Web.Email_Send { public partial class Email_Send_Edit : PageBase { #region 加载 protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { //加载菜单树 this.InitMenuTree(); } } #endregion #region 初始化系统菜单树 /// /// 加载菜单树:动态加载 /// private void InitMenuTree() { this.tvMenu.Nodes.Clear(); TreeNode rootNode = new TreeNode();//定义根节点 rootNode.Text = "所有人"; rootNode.NodeID = "0"; rootNode.Expanded = true; rootNode.EnableCheckEvent = true; rootNode.EnableCheckBox = true; this.tvMenu.Nodes.Add(rootNode); this.GetNodes(rootNode.Nodes, rootNode.NodeID); } #endregion #region 遍历节点方法(系统功能) /// /// 遍历节点方法 /// /// 节点集合 /// 父节点 private void GetNodes(TreeNodeCollection nodes, string parentId) { List sysUserMenu = null; sysUserMenu = (from x in BLL.Funs.DB.Sys_User where x.Account != "gly" orderby x.UserName select x).ToList(); foreach (var q in sysUserMenu) { TreeNode newNode = new TreeNode(); newNode.Text = (q.UserName + "(" + q.Email + ")").ToString(); newNode.NodeID = q.UserId; newNode.CommandName = q.Email; //newNode.NavigateUrl = q.Email; newNode.EnableCheckEvent = true; newNode.EnableCheckBox = true; newNode.Selectable = true; nodes.Add(newNode); } } #endregion #region 全选、全不选 /// /// 全选、全不选 /// /// /// protected void tvMenu_NodeCheck(object sender, FineUIPro.TreeCheckEventArgs e) { if (e.Checked) { this.tvMenu.CheckAllNodes(e.Node.Nodes); SetCheckParentNode(e.Node); } else { this.tvMenu.UncheckAllNodes(e.Node.Nodes); } } /// /// 选中父节点 /// /// private void SetCheckParentNode(TreeNode node) { if (node.ParentNode != null && node.ParentNode.NodeID != "0") { node.ParentNode.Checked = true; if (node.ParentNode.ParentNode.NodeID != "0") { SetCheckParentNode(node.ParentNode); } } } #endregion protected void btnSave_Click(object sender, EventArgs e) { //string mailFrom = MailHelper.MailServerFrom; var pop = MailHelper.getEmailPop(); if (pop == null) { ShowNotify("未配置邮件服务器", MessageBoxIcon.Error); return; } string mailFrom = pop.EmailYx; string[] mailTo = null; string mailSubject = string.Empty; string mailBody = string.Empty; string mailAttch = string.Empty; string mailCode = string.Empty; string mailPriority = string.Empty; string[] mailCC = null; string resultMessage = ""; List namelist = new List(); foreach (TreeNode tn in this.tvMenu.GetCheckedNodes()) { if (tn.NodeID != "0") { namelist.Add(tn.CommandName); } } if (namelist.Count == 0) { ShowNotify("请至少选择一项用户进行发送!", MessageBoxIcon.Warning); return; } mailTo = namelist.ToList().ToArray(); mailSubject = this.txtSendTitle.Text.Trim(); try { string templetpath = txtSendContent.Text.Trim(); mailBody = templetpath; bool f = MailHelper.SendNetMail(pop, mailFrom, mailTo, mailSubject, mailBody, mailAttch, mailCode, mailPriority, mailCC, out resultMessage); if (f == true) { ShowNotify("发送成功!", MessageBoxIcon.Success); } else { ShowNotify(resultMessage, MessageBoxIcon.Error); } } catch (Exception ex) { ShowNotify(ex.Message, MessageBoxIcon.Success); } } } }