111
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Email_Params_Edit.aspx.cs" Inherits="FineUIPro.Web.Email_Send.Email_Params_Edit" %>
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head runat="server">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title></title>
|
||||
</head>
|
||||
<body>
|
||||
<form id="form1" runat="server">
|
||||
<f:PageManager ID="PageManager1" runat="server" />
|
||||
<f:SimpleForm ID="SimpleForm1" CssClass="blockpanel" BodyPadding="10px" LabelWidth="150px"
|
||||
EnableCollapse="false" runat="server" ShowBorder="true" ShowHeader="false" >
|
||||
<Items>
|
||||
<%--<f:Label ID="lblID" ShowLabel="true" LabelWidth="180px" BoxFlex="2" runat="server" Label="Parameter primary key" LabelAlign="Right" ></f:Label>--%>
|
||||
|
||||
<f:TextBox ID="txtMailClassName" ShowLabel="true" Required="true" LabelWidth="180px" BoxFlex="2"
|
||||
runat="server" Label="类型名称" LabelAlign="Right" ShowRedStar="true">
|
||||
</f:TextBox>
|
||||
<f:TextBox ID="txtMailClassID" ShowLabel="true" Required="true" LabelWidth="180px" BoxFlex="2"
|
||||
runat="server" Label="类型编码" LabelAlign="Right" ShowRedStar="true">
|
||||
</f:TextBox>
|
||||
|
||||
<f:Button ID="btnSubmit" ValidateForms="SimpleForm1" CssClass="marginr" Text="保存"
|
||||
runat="server" OnClick="btnSubmit_Click" Icon="SystemSave" >
|
||||
</f:Button>
|
||||
</Items>
|
||||
</f:SimpleForm>
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,70 @@
|
||||
using BLL;
|
||||
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_Params_Edit : PageBase
|
||||
{
|
||||
#region 加载
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
//按钮权限
|
||||
|
||||
Model.Email_Params pops = new Model.Email_Params();
|
||||
string emailId = Request.Params["id"];
|
||||
|
||||
pops = BLL.Email_Send.Email_ParamsService.GetEmail_ParamsPop(emailId);
|
||||
if (pops != null)
|
||||
{
|
||||
//this.lblID.Text = pops.ID;
|
||||
this.txtMailClassName.Text = pops.MailClassName;
|
||||
this.txtMailClassID.Text = pops.MailClassID;
|
||||
}
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
protected void btnSubmit_Click(object sender, EventArgs e)
|
||||
{
|
||||
Model.Email_Params pops = new Model.Email_Params();
|
||||
string emailId = Request.Params["id"];
|
||||
pops = BLL.Email_Send.Email_ParamsService.GetEmail_ParamsPop(emailId);
|
||||
|
||||
if (pops == null)
|
||||
{
|
||||
Email_Params pop = new Email_Params();
|
||||
pop.MailClassName = this.txtMailClassName.Text;
|
||||
pop.MailClassID = this.txtMailClassID.Text;
|
||||
pop.CreateName = this.CurrUser.UserName;
|
||||
pop.CreateTime = DateTime.Now;
|
||||
pop.UpdateName = this.CurrUser.UserName;
|
||||
pop.UpdateTime = DateTime.Now;
|
||||
|
||||
BLL.Email_Send.Email_ParamsService.AddEmail_Params(pop);
|
||||
//BLL.Sys_LogService.AddLog(Const.System_2, this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.SendEmailPopMenuId,, "Add Parameter information",);
|
||||
ShowNotify("Send Successfully!", MessageBoxIcon.Success);
|
||||
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
|
||||
}
|
||||
else {
|
||||
pops.MailClassName = this.txtMailClassName.Text;
|
||||
pops.MailClassID = this.txtMailClassID.Text;
|
||||
pops.CreateName = this.CurrUser.UserName;
|
||||
pops.UpdateName = this.CurrUser.UserName;
|
||||
pops.UpdateTime = DateTime.Now;
|
||||
BLL.Email_Send.Email_ParamsService.UpdateEmail_Params(pops);
|
||||
//BLL.Sys_LogService.AddLog(Const.System_2, this.CurrUser.LoginProjectId, this.CurrUser.UserId,Const.menuId, "Update Parameter information");
|
||||
ShowNotify("Send Successfully!", MessageBoxIcon.Success);
|
||||
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,69 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <自动生成>
|
||||
// 此代码由工具生成。
|
||||
//
|
||||
// 对此文件的更改可能导致不正确的行为,如果
|
||||
// 重新生成代码,则所做更改将丢失。
|
||||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.Email_Send {
|
||||
|
||||
|
||||
public partial class Email_Params_Edit {
|
||||
|
||||
/// <summary>
|
||||
/// form1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
|
||||
|
||||
/// <summary>
|
||||
/// PageManager1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.PageManager PageManager1;
|
||||
|
||||
/// <summary>
|
||||
/// SimpleForm1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.SimpleForm SimpleForm1;
|
||||
|
||||
/// <summary>
|
||||
/// txtMailClassName 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextBox txtMailClassName;
|
||||
|
||||
/// <summary>
|
||||
/// txtMailClassID 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextBox txtMailClassID;
|
||||
|
||||
/// <summary>
|
||||
/// btnSubmit 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnSubmit;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,117 @@
|
||||
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Email_Params_List.aspx.cs" Inherits="FineUIPro.Web.Email_Send.Email_Params_List" %>
|
||||
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head runat="server">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title></title>
|
||||
<style>
|
||||
.mycheckbox .f-field-checkbox-switch .f-field-checkbox-switch-text {
|
||||
min-width: 40px;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<form id="form1" runat="server">
|
||||
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
|
||||
<f:Panel ID="Panel1" runat="server" Margin="5px" BodyPadding="5px" ShowBorder="false"
|
||||
ShowHeader="false" Layout="VBox" BoxConfigAlign="Stretch">
|
||||
<Items>
|
||||
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" EnableCollapse="true" runat="server"
|
||||
BoxFlex="1" DataKeyNames="ID" AllowCellEditing="true" ClicksToEdit="2" DataIDField="ID"
|
||||
AllowSorting="true" SortField="CreateTime" SortDirection="DESC" OnSort="Grid1_Sort"
|
||||
AllowPaging="true" IsDatabasePaging="true" PageSize="15" OnPageIndexChange="Grid1_PageIndexChange"
|
||||
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick">
|
||||
<Toolbars>
|
||||
<f:Toolbar ID="Toolbar2" Position="Top" runat="server">
|
||||
<Items>
|
||||
<f:ToolbarFill ID="ToolbarFill1" runat="server"></f:ToolbarFill>
|
||||
<f:Button ID="btnAdd" ToolTip="Add" Icon="Add" Text="添加" runat="server" OnClick="btnAdd_Click" ></f:Button>
|
||||
|
||||
<f:Button ID="btnDelete" ToolTip="Delete" Text="删除" Icon="Delete" ConfirmText="Make sure to delete the current data?" OnClick="btnDelete_Click"
|
||||
runat="server" >
|
||||
</f:Button>
|
||||
</Items>
|
||||
</f:Toolbar>
|
||||
</Toolbars>
|
||||
<Columns>
|
||||
<f:TemplateField Width="50px" TextAlign="Center">
|
||||
<ItemTemplate>
|
||||
<asp:Label ID="Label1" runat="server" Text='<%# Container.DataItemIndex + 1 %>'></asp:Label>
|
||||
</ItemTemplate>
|
||||
</f:TemplateField>
|
||||
<%--<f:RenderField Width="200px" ColumnID="ID" DataField="ID" SortField="ID"
|
||||
HeaderTextAlign="Center" TextAlign="Left" FieldType="String" HeaderText="Parameter primary key" ExpandUnusedSpace="true" >
|
||||
</f:RenderField>--%>
|
||||
|
||||
<f:RenderField Width="200px" ColumnID="MailClassName" DataField="MailClassName" SortField="MailClassName"
|
||||
HeaderTextAlign="Center" TextAlign="Center" FieldType="String" HeaderText="类型名称" ExpandUnusedSpace="true">
|
||||
</f:RenderField>
|
||||
|
||||
<f:RenderField Width="200px" ColumnID="MailClassID" DataField="MailClassID" SortField="MailClassID"
|
||||
HeaderTextAlign="Center" TextAlign="Center" FieldType="String" HeaderText="类型编码" ExpandUnusedSpace="true">
|
||||
</f:RenderField>
|
||||
|
||||
<f:RenderField Width="120px" ColumnID="CreateTime" DataField="CreateTime" SortField="CreateTime"
|
||||
FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="创建时间"
|
||||
HeaderTextAlign="Center" TextAlign="Center" EnableFilter="true">
|
||||
<Filter EnableMultiFilter="true" ShowMatcher="true">
|
||||
<Operator>
|
||||
<f:DropDownList ID="DropDownList4" runat="server">
|
||||
<f:ListItem Text="greater than" Value="greater" Selected="true" />
|
||||
<f:ListItem Text="less than" Value="less" />
|
||||
<f:ListItem Text="equal to" Value="equal" />
|
||||
</f:DropDownList>
|
||||
</Operator>
|
||||
<Field>
|
||||
<f:DatePicker runat="server" Required="true" ID="DatePicker2">
|
||||
</f:DatePicker>
|
||||
</Field>
|
||||
</Filter>
|
||||
</f:RenderField>
|
||||
</Columns>
|
||||
<Listeners>
|
||||
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
|
||||
</Listeners>
|
||||
<PageItems>
|
||||
<f:ToolbarSeparator ID="ToolbarSeparator1" runat="server">
|
||||
</f:ToolbarSeparator>
|
||||
<f:ToolbarText ID="ToolbarText1" runat="server" Text="Number of records per page:">
|
||||
</f:ToolbarText>
|
||||
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true"
|
||||
OnSelectedIndexChanged="ddlPageSize_SelectedIndexChanged">
|
||||
<f:ListItem Text="15" Value="15" />
|
||||
<f:ListItem Text="20" Value="20" />
|
||||
<f:ListItem Text="25" Value="25" />
|
||||
<f:ListItem Text="30" Value="30" />
|
||||
</f:DropDownList>
|
||||
</PageItems>
|
||||
</f:Grid>
|
||||
</Items>
|
||||
</f:Panel>
|
||||
<f:Window ID="Window1" Title="Mail Parameters Editor" Hidden="true" EnableIFrame="true" EnableMaximize="false"
|
||||
Target="Parent" EnableResize="false" runat="server" OnClose="Window1_Close" IsModal="true"
|
||||
Width="650px" Height="300px">
|
||||
</f:Window>
|
||||
<f:Menu ID="Menu1" runat="server">
|
||||
<f:MenuButton ID="btnMenuEdit" OnClick="btnMenuEdit_Click" EnablePostBack="true"
|
||||
Icon="BulletEdit" runat="server" Text="Modify" Hidden="true">
|
||||
</f:MenuButton>
|
||||
<f:MenuButton ID="btnMenuDelete" OnClick="btnMenuDelete_Click" EnablePostBack="true"
|
||||
Icon="Delete" ConfirmText="Delete selected row?" ConfirmTarget="Top" runat="server" Text="Delete" Hidden="true">
|
||||
</f:MenuButton>
|
||||
</f:Menu>
|
||||
</form>
|
||||
<script type="text/javascript">
|
||||
|
||||
var menuID = '<%= Menu1.ClientID %>';
|
||||
// 返回false,来阻止浏览器右键菜单
|
||||
function onRowContextMenu(event, rowId) {
|
||||
F(menuID).show(); //showAt(event.pageX, event.pageY);
|
||||
return false;
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,130 @@
|
||||
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_Params_List : PageBase
|
||||
{
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
}
|
||||
|
||||
#region BindGrid
|
||||
|
||||
private void BindGrid()
|
||||
{
|
||||
List<Model.Email_Params> senList = new List<Model.Email_Params>();
|
||||
senList = BLL.Email_Send.Email_ParamsService.GetEmail_ParamsList();
|
||||
Grid1.RecordCount = senList.Count;
|
||||
Grid1.DataSource = senList;
|
||||
Grid1.DataBind();
|
||||
}
|
||||
#endregion
|
||||
|
||||
/// <summary>
|
||||
/// 分页下拉选择
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
|
||||
{
|
||||
Grid1.PageIndex = e.NewPageIndex;
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
protected void Grid1_Sort(object sender, FineUIPro.GridSortEventArgs e)
|
||||
{
|
||||
Grid1.SortDirection = e.SortDirection;
|
||||
Grid1.SortField = e.SortField;
|
||||
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
protected void btnAdd_Click(object sender, EventArgs e)
|
||||
{
|
||||
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("Email_Params_Edit.aspx", null, "添加 - ")));
|
||||
}
|
||||
|
||||
protected void Window1_Close(object sender, WindowCloseEventArgs e)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
/// <summary>
|
||||
/// 右键编辑事件
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void btnMenuEdit_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (Grid1.SelectedRowIndexArray.Length == 0)
|
||||
{
|
||||
Alert.ShowInParent("Please select at least one record!");
|
||||
return;
|
||||
}
|
||||
string Id = Grid1.SelectedRowID;
|
||||
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("Email_Params_Edit.aspx?id={0}", Id, "编辑 - ")));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Grid双击事件
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
|
||||
{
|
||||
btnMenuEdit_Click(null, null);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 右键删除事件
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void btnMenuDelete_Click(object sender, EventArgs e)
|
||||
{
|
||||
this.DeleteData();
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
protected void btnDelete_Click(object sender, EventArgs e)
|
||||
{
|
||||
this.DeleteData();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 删除方法
|
||||
/// </summary>
|
||||
private void DeleteData()
|
||||
{
|
||||
if (Grid1.SelectedRowIndexArray.Length > 0)
|
||||
{
|
||||
foreach (int rowIndex in Grid1.SelectedRowIndexArray)
|
||||
{
|
||||
string rowID = Grid1.DataKeys[rowIndex][0].ToString();
|
||||
|
||||
BLL.Email_Send.Email_ParamsService.DeleteEmail_ParamsById(rowID);
|
||||
ShowNotify("Deleted successfully!");
|
||||
|
||||
}
|
||||
BindGrid();
|
||||
//BLL.Sys_LogService.AddLog(this.CurrUser.UserId, "Delete Parameter control editor information");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,177 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <自动生成>
|
||||
// 此代码由工具生成。
|
||||
//
|
||||
// 对此文件的更改可能导致不正确的行为,如果
|
||||
// 重新生成代码,则所做更改将丢失。
|
||||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.Email_Send {
|
||||
|
||||
|
||||
public partial class Email_Params_List {
|
||||
|
||||
/// <summary>
|
||||
/// form1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
|
||||
|
||||
/// <summary>
|
||||
/// PageManager1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.PageManager PageManager1;
|
||||
|
||||
/// <summary>
|
||||
/// Panel1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Panel Panel1;
|
||||
|
||||
/// <summary>
|
||||
/// Grid1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Grid Grid1;
|
||||
|
||||
/// <summary>
|
||||
/// Toolbar2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Toolbar Toolbar2;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarFill1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarFill ToolbarFill1;
|
||||
|
||||
/// <summary>
|
||||
/// btnAdd 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnAdd;
|
||||
|
||||
/// <summary>
|
||||
/// btnDelete 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnDelete;
|
||||
|
||||
/// <summary>
|
||||
/// Label1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.Label Label1;
|
||||
|
||||
/// <summary>
|
||||
/// DropDownList4 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList DropDownList4;
|
||||
|
||||
/// <summary>
|
||||
/// DatePicker2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DatePicker DatePicker2;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarSeparator1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarText1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarText ToolbarText1;
|
||||
|
||||
/// <summary>
|
||||
/// ddlPageSize 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList ddlPageSize;
|
||||
|
||||
/// <summary>
|
||||
/// Window1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Window Window1;
|
||||
|
||||
/// <summary>
|
||||
/// Menu1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Menu Menu1;
|
||||
|
||||
/// <summary>
|
||||
/// btnMenuEdit 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.MenuButton btnMenuEdit;
|
||||
|
||||
/// <summary>
|
||||
/// btnMenuDelete 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.MenuButton btnMenuDelete;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Email_Pop_Edit.aspx.cs" Inherits="FineUIPro.Web.Email_Send.Email_Pop_Edit" %>
|
||||
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head runat="server">
|
||||
<title></title>
|
||||
</head>
|
||||
<body>
|
||||
<form id="form1" runat="server">
|
||||
<f:PageManager ID="PageManager1" runat="server" />
|
||||
<f:SimpleForm ID="SimpleForm1" CssClass="blockpanel" BodyPadding="10px" LabelWidth="200px"
|
||||
EnableCollapse="false" runat="server" ShowBorder="true" ShowHeader="true" Title="邮件配置">
|
||||
<Items>
|
||||
<f:TextBox ID="EmailFwq" ShowLabel="true" Required="true" LabelWidth="160px" BoxFlex="2"
|
||||
runat="server" Label="邮件服务器地址" LabelAlign="Right" ShowRedStar="true">
|
||||
</f:TextBox>
|
||||
<f:TextBox ID="EmailDk" ShowLabel="true" Required="true" LabelWidth="160px" BoxFlex="2"
|
||||
runat="server" Label="端口" LabelAlign="Right" ShowRedStar="true">
|
||||
</f:TextBox>
|
||||
<f:TextBox ID="EmailYx" ShowLabel="true" Required="true" LabelWidth="160px" BoxFlex="2"
|
||||
runat="server" Label="发件人邮箱" LabelAlign="Right" ShowRedStar="true">
|
||||
</f:TextBox>
|
||||
<f:TextBox ID="EmailUsername" ShowLabel="true" LabelWidth="160px"
|
||||
BoxFlex="2" runat="server" Label="账号" LabelAlign="Right">
|
||||
</f:TextBox>
|
||||
<f:TextBox ID="EmailPass" ShowLabel="true" LabelWidth="160px" BoxFlex="2"
|
||||
runat="server" Label="密码" LabelAlign="Right">
|
||||
</f:TextBox>
|
||||
<f:Button ID="btnSubmit" ValidateForms="SimpleForm1" CssClass="marginr" Text="保存"
|
||||
runat="server" OnClick="btnSubmit_Click" Icon="SystemSave">
|
||||
</f:Button>
|
||||
</Items>
|
||||
</f:SimpleForm>
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,57 @@
|
||||
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_Pop_Edit : PageBase
|
||||
{
|
||||
#region 加载
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
//按钮权限
|
||||
|
||||
Email_Pop pops = new Email_Pop();
|
||||
|
||||
pops = BLL.Email_Send.Email_PopService.GetEmail_Pop("7EC5E991-B7A0-495A-90ED-2BE15370C959");
|
||||
if (pops != null)
|
||||
{
|
||||
EmailFwq.Text = pops.EmailFwq;
|
||||
EmailDk.Text = pops.EmailDk;
|
||||
EmailYx.Text = pops.EmailYx;
|
||||
EmailUsername.Text = pops.EmailUsername;
|
||||
EmailPass.Text = pops.EmailPass;
|
||||
}
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
protected void btnSubmit_Click(object sender, EventArgs e)
|
||||
{
|
||||
Email_Pop pop = new Email_Pop();
|
||||
|
||||
pop.EmailID = "7EC5E991-B7A0-495A-90ED-2BE15370C959";
|
||||
pop.EmailFwq = EmailFwq.Text.Trim();
|
||||
pop.EmailDk = EmailDk.Text.Trim();
|
||||
pop.EmailYx = EmailYx.Text.Trim();
|
||||
pop.EmailUsername = EmailUsername.Text.Trim();
|
||||
pop.EmailPass = EmailPass.Text.Trim();
|
||||
pop.CreateTime = DateTime.Now.ToString();
|
||||
pop.CreateName = CurrUser.UserName;
|
||||
pop.UpdateTime = DateTime.Now.ToString();
|
||||
pop.UpdateName = CurrUser.UserName;
|
||||
|
||||
BLL.Email_Send.Email_PopService.UpdateEmail_Pop(pop);
|
||||
//BLL.Sys_LogService.AddLog(this.CurrUser.UserId, "Update Email information");
|
||||
ShowNotify("Save Successfully!", MessageBoxIcon.Success);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,96 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <自动生成>
|
||||
// 此代码由工具生成。
|
||||
//
|
||||
// 对此文件的更改可能导致不正确的行为,如果
|
||||
// 重新生成代码,则所做更改将丢失。
|
||||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.Email_Send {
|
||||
|
||||
|
||||
public partial class Email_Pop_Edit {
|
||||
|
||||
/// <summary>
|
||||
/// form1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
|
||||
|
||||
/// <summary>
|
||||
/// PageManager1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.PageManager PageManager1;
|
||||
|
||||
/// <summary>
|
||||
/// SimpleForm1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.SimpleForm SimpleForm1;
|
||||
|
||||
/// <summary>
|
||||
/// EmailFwq 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextBox EmailFwq;
|
||||
|
||||
/// <summary>
|
||||
/// EmailDk 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextBox EmailDk;
|
||||
|
||||
/// <summary>
|
||||
/// EmailYx 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextBox EmailYx;
|
||||
|
||||
/// <summary>
|
||||
/// EmailUsername 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextBox EmailUsername;
|
||||
|
||||
/// <summary>
|
||||
/// EmailPass 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextBox EmailPass;
|
||||
|
||||
/// <summary>
|
||||
/// btnSubmit 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnSubmit;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,78 @@
|
||||
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Email_SendLog_List.aspx.cs" Inherits="FineUIPro.Web.Email_Send.Email_SendLog_List" %>
|
||||
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head runat="server">
|
||||
<title></title>
|
||||
</head>
|
||||
<body>
|
||||
<form id="form1" runat="server">
|
||||
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
|
||||
<f:Panel ID="Panel1" runat="server" Margin="5px" BodyPadding="5px" ShowBorder="false"
|
||||
ShowHeader="false" Layout="VBox" BoxConfigAlign="Stretch">
|
||||
<Items>
|
||||
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" EnableCollapse="true" runat="server"
|
||||
BoxFlex="1" DataKeyNames="EmailId" AllowCellEditing="true" ClicksToEdit="2" DataIDField="EmailId"
|
||||
AllowSorting="true" SortField="CreateTime" SortDirection="DESC" OnSort="Grid1_Sort"
|
||||
AllowPaging="true" IsDatabasePaging="true" PageSize="15" OnPageIndexChange="Grid1_PageIndexChange"
|
||||
AllowFilters="true" OnFilterChange="Grid1_FilterChange">
|
||||
<Columns>
|
||||
<f:TemplateField Width="50px" TextAlign="Center">
|
||||
<ItemTemplate>
|
||||
<asp:Label ID="Label1" runat="server" Text='<%# Container.DataItemIndex + 1 %>'></asp:Label>
|
||||
</ItemTemplate>
|
||||
</f:TemplateField>
|
||||
<f:RenderField Width="150px" ColumnID="EmailName" DataField="EmailName" SortField="EmailName" FieldType="String"
|
||||
HeaderTextAlign="Center" TextAlign="Left" HeaderText="收件人">
|
||||
</f:RenderField>
|
||||
<f:RenderField Width="130px" ColumnID="CreateTime" DataField="CreateTime" SortField="CreateTime"
|
||||
FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="发送时间"
|
||||
HeaderTextAlign="Center" TextAlign="Center" EnableFilter="true">
|
||||
<Filter EnableMultiFilter="true" ShowMatcher="true">
|
||||
<Operator>
|
||||
<f:DropDownList ID="DropDownList4" runat="server">
|
||||
<f:ListItem Text="greater than" Value="greater" Selected="true" />
|
||||
<f:ListItem Text="less than" Value="less" />
|
||||
<f:ListItem Text="equal to" Value="equal" />
|
||||
</f:DropDownList>
|
||||
</Operator>
|
||||
<Field>
|
||||
<f:DatePicker runat="server" Required="true" ID="DatePicker2">
|
||||
</f:DatePicker>
|
||||
</Field>
|
||||
</Filter>
|
||||
</f:RenderField>
|
||||
|
||||
<f:RenderField Width="180px" ColumnID="EmailURL" DataField="EmailURL" SortField="Ip" FieldType="String"
|
||||
HeaderTextAlign="Center" TextAlign="Left" HeaderText="邮箱地址">
|
||||
</f:RenderField>
|
||||
<f:RenderField Width="250px" ColumnID="EmailTile" DataField="EmailTile" SortField="EmailTile"
|
||||
HeaderTextAlign="Center" TextAlign="Left" FieldType="String" HeaderText="发送标题">
|
||||
</f:RenderField>
|
||||
<f:RenderField Width="250px" ColumnID="EmailContent" DataField="EmailContent" SortField="EmailContent"
|
||||
HeaderTextAlign="Center" TextAlign="Left" FieldType="String" HeaderText="发送内容" ExpandUnusedSpace="true">
|
||||
</f:RenderField>
|
||||
<f:RenderField Width="150px" ColumnID="EmailStatus" DataField="EmailStatus" SortField="EmailStatus"
|
||||
HeaderTextAlign="Center" TextAlign="Left" FieldType="String" HeaderText="发送状态" >
|
||||
</f:RenderField>
|
||||
</Columns>
|
||||
<PageItems>
|
||||
<f:ToolbarSeparator ID="ToolbarSeparator1" runat="server">
|
||||
</f:ToolbarSeparator>
|
||||
<f:ToolbarText ID="ToolbarText1" runat="server" Text="Number of records per page:">
|
||||
</f:ToolbarText>
|
||||
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true"
|
||||
OnSelectedIndexChanged="ddlPageSize_SelectedIndexChanged">
|
||||
<f:ListItem Text="15" Value="15" />
|
||||
<f:ListItem Text="20" Value="20" />
|
||||
<f:ListItem Text="25" Value="25" />
|
||||
<f:ListItem Text="30" Value="30" />
|
||||
</f:DropDownList>
|
||||
</PageItems>
|
||||
</f:Grid>
|
||||
</Items>
|
||||
</f:Panel>
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,72 @@
|
||||
using BLL;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
|
||||
namespace FineUIPro.Web.Email_Send
|
||||
{
|
||||
public partial class Email_SendLog_List : PageBase
|
||||
{
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
}
|
||||
|
||||
#region BindGrid
|
||||
|
||||
private void BindGrid()
|
||||
{
|
||||
string strSql = @"select EmailId, EmailTile, EmailContent, EmailURL, EmailName, EmailStatus, CreateTime, CreateName from Email_SendLog order by CreateTime desc";
|
||||
|
||||
DataTable tb = SQLHelper.GetDataTableRunText(strSql, null);
|
||||
Grid1.RecordCount = tb.Rows.Count;
|
||||
tb = GetFilteredTable(Grid1.FilteredData, tb);
|
||||
var table = this.GetPagedDataTable(Grid1, tb);
|
||||
Grid1.DataSource = table;
|
||||
Grid1.DataBind();
|
||||
}
|
||||
|
||||
#region 表头过滤
|
||||
protected void Grid1_FilterChange(object sender, EventArgs e)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
|
||||
#endregion
|
||||
#endregion
|
||||
|
||||
/// <summary>
|
||||
/// 分页下拉选择
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
|
||||
{
|
||||
Grid1.PageIndex = e.NewPageIndex;
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
|
||||
protected void Grid1_Sort(object sender, FineUIPro.GridSortEventArgs e)
|
||||
{
|
||||
Grid1.SortDirection = e.SortDirection;
|
||||
Grid1.SortField = e.SortField;
|
||||
|
||||
BindGrid();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,105 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <自动生成>
|
||||
// 此代码由工具生成。
|
||||
//
|
||||
// 对此文件的更改可能导致不正确的行为,如果
|
||||
// 重新生成代码,则所做更改将丢失。
|
||||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.Email_Send {
|
||||
|
||||
|
||||
public partial class Email_SendLog_List {
|
||||
|
||||
/// <summary>
|
||||
/// form1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
|
||||
|
||||
/// <summary>
|
||||
/// PageManager1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.PageManager PageManager1;
|
||||
|
||||
/// <summary>
|
||||
/// Panel1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Panel Panel1;
|
||||
|
||||
/// <summary>
|
||||
/// Grid1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Grid Grid1;
|
||||
|
||||
/// <summary>
|
||||
/// Label1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.Label Label1;
|
||||
|
||||
/// <summary>
|
||||
/// DropDownList4 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList DropDownList4;
|
||||
|
||||
/// <summary>
|
||||
/// DatePicker2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DatePicker DatePicker2;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarSeparator1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarText1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarText ToolbarText1;
|
||||
|
||||
/// <summary>
|
||||
/// ddlPageSize 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList ddlPageSize;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,140 @@
|
||||
<%@ Page Language="C#" AutoEventWireup="true" ValidateRequest="false" CodeBehind="Email_SendTemplate_Edit.aspx.cs" Inherits="FineUIPro.Web.Email_Send.Email_SendTemplate_Edit" %>
|
||||
|
||||
<%@ Register Src="~/Email_Send/SelectUserControl.ascx" TagPrefix="uc1" TagName="SelectUserControl" %>
|
||||
<%@ Register Src="~/Email_Send/SelectRoleControl.ascx" TagPrefix="uc1" TagName="SelectRoleControl" %>
|
||||
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head runat="server">
|
||||
<title></title>
|
||||
</head>
|
||||
<body>
|
||||
<form id="form1" runat="server">
|
||||
<f:PageManager ID="PageManager1" AutoSizePanelID="SimpleForm1" runat="server" />
|
||||
<f:Form ID="SimpleForm1" ShowHeader="false" ShowBorder="false" CssClass="blockpanel" BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
|
||||
<Rows>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:DropDownList runat="server" ID="ddlEmailParamsID" LabelWidth="150px" Label="邮件类型">
|
||||
</f:DropDownList>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
</Rows>
|
||||
<Rows>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:TextBox ID="txtTemplateCondition" ShowLabel="true" Required="true" LabelWidth="150px" LabelAlign="Right"
|
||||
BoxFlex="2" runat="server" Label="模版条件">
|
||||
</f:TextBox>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
</Rows>
|
||||
<Rows>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:TextBox ID="txtTemplateName" ShowLabel="true" Required="true" LabelWidth="150px" LabelAlign="Right"
|
||||
BoxFlex="2" runat="server" Label="模版名称">
|
||||
</f:TextBox>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
</Rows>
|
||||
<Rows>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:HtmlEditor runat="server" Label="模版内容" ID="txtContent" Editor="UMEditor" BasePath="~/res/third-party/umeditor/" Height="300px" LabelWidth="150px" LabelAlign="Right">
|
||||
</f:HtmlEditor>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
</Rows>
|
||||
<Rows>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:RadioButtonList ID="rblAutoPostBack" AutoPostBack="true" OnSelectedIndexChanged="rblAutoPostBack_SelectedIndexChanged" LabelWidth="150px" LabelAlign="Right"
|
||||
Label="选择人员" ColumnNumber="3" runat="server" Required="true">
|
||||
<f:RadioItem Text="不选择" Value="0" Selected="true" />
|
||||
<f:RadioItem Text="选择用户" Value="1" />
|
||||
<f:RadioItem Text="选择角色" Value="2" />
|
||||
</f:RadioButtonList>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
</Rows>
|
||||
<Rows>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:DropDownBox runat="server" Label="接收人" ID="ddlSendUserName" LabelWidth="150px" EmptyText="请选择" DataControlID="Grid1"
|
||||
EnableMultiSelect="true" MatchFieldWidth="false" EnableEdit="true">
|
||||
<PopPanel>
|
||||
<f:UserControlConnector runat="server">
|
||||
<uc1:SelectUserControl runat="server" ID="SelectUserControl1" EnableGridMultiSelect="true" />
|
||||
</f:UserControlConnector>
|
||||
</PopPanel>
|
||||
</f:DropDownBox>
|
||||
|
||||
|
||||
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
</Rows>
|
||||
|
||||
<Rows>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:DropDownBox runat="server" Label="接收人" ID="ddlSendRole" LabelWidth="150px" EmptyText="请选择" DataControlID="Grid1"
|
||||
EnableMultiSelect="true" MatchFieldWidth="false" EnableEdit="true">
|
||||
<PopPanel>
|
||||
<f:UserControlConnector runat="server">
|
||||
<uc1:SelectRoleControl runat="server" ID="SelectRoleControl1" EnableGridMultiSelect="true" />
|
||||
</f:UserControlConnector>
|
||||
</PopPanel>
|
||||
</f:DropDownBox>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
</Rows>
|
||||
|
||||
<Rows>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:DropDownBox runat="server" Label="抄送人" ID="ddlccUserName" LabelWidth="150px" EmptyText="请选择" DataControlID="Grid1"
|
||||
EnableMultiSelect="true" MatchFieldWidth="false" EnableEdit="true">
|
||||
<PopPanel>
|
||||
<f:UserControlConnector runat="server">
|
||||
<uc1:SelectUserControl runat="server" ID="SelectUserControl2" EnableGridMultiSelect="true" />
|
||||
</f:UserControlConnector>
|
||||
</PopPanel>
|
||||
</f:DropDownBox>
|
||||
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
</Rows>
|
||||
<Rows>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:DropDownBox runat="server" Label="抄送人" ID="ddlccRole" LabelWidth="150px" EmptyText="请选择" DataControlID="Grid1"
|
||||
EnableMultiSelect="true" MatchFieldWidth="false" EnableEdit="true">
|
||||
<PopPanel>
|
||||
<f:UserControlConnector runat="server">
|
||||
<uc1:SelectRoleControl runat="server" ID="SelectRoleControl2" EnableGridMultiSelect="true" />
|
||||
</f:UserControlConnector>
|
||||
</PopPanel>
|
||||
</f:DropDownBox>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
</Rows>
|
||||
|
||||
|
||||
<Toolbars>
|
||||
<f:Toolbar ID="Toolbar1" Position="Bottom" ToolbarAlign="Right" runat="server">
|
||||
<Items>
|
||||
<f:Button ID="btnSave" Icon="SystemSave" runat="server" Text="保存" ToolTip="保存" ValidateForms="SimpleForm1"
|
||||
OnClick="btnSave_Click">
|
||||
</f:Button>
|
||||
</Items>
|
||||
</f:Toolbar>
|
||||
</Toolbars>
|
||||
</f:Form>
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -0,0 +1,489 @@
|
||||
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_SendTemplate_Edit : PageBase
|
||||
{
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
BindEmailParamsDropDownList();
|
||||
string emailId = Request.Params["id"];
|
||||
|
||||
if (!string.IsNullOrEmpty(emailId))
|
||||
{
|
||||
Model.Email_SendTemplate sends = new Model.Email_SendTemplate();
|
||||
sends = BLL.Email_Send.Email_SendTemplateService.GetEmail_SendTemplate(emailId);
|
||||
this.rblAutoPostBack.SelectedValue = sends.EmailUserYN.ToString();
|
||||
this.ddlEmailParamsID.SelectedValue = sends.EmailParamsID.Trim();
|
||||
this.txtTemplateName.Text = sends.EmailTitle.ToString();
|
||||
this.txtTemplateCondition.Text = sends.EailTiaoJian.ToString();
|
||||
this.txtContent.Text = sends.EmailContext.ToString();
|
||||
}
|
||||
|
||||
if (rblAutoPostBack.SelectedValue == "0")
|
||||
{
|
||||
ddlSendUserName.Hidden = true;
|
||||
ddlccUserName.Hidden = true;
|
||||
|
||||
ddlSendRole.Hidden = true;
|
||||
ddlccRole.Hidden = true;
|
||||
}
|
||||
else if (rblAutoPostBack.SelectedValue == "1")//选择人
|
||||
{
|
||||
//发送人
|
||||
var people1 = BLL.Email_Send.Email_ToPeopleService.GetSenderTopeopleList(emailId);
|
||||
if (people1.Count == 0 || people1 == null)
|
||||
{ }
|
||||
else
|
||||
{
|
||||
this.ddlSendUserName.Values = people1.Select(o => o.EmuserID).ToArray();
|
||||
this.ddlSendUserName.Texts = people1.Select(o => o.EmuserName).ToArray();
|
||||
}
|
||||
|
||||
//抄送人
|
||||
var people2 = BLL.Email_Send.Email_ToPeopleService.GetCCTopeopleList(emailId);
|
||||
if (people2.Count == 0 || people2 == null)
|
||||
{ }
|
||||
else
|
||||
{
|
||||
this.ddlccUserName.Values = people2.Select(o => o.EmuserID).ToArray();
|
||||
this.ddlccUserName.Texts = people2.Select(o => o.EmuserName).ToArray();
|
||||
}
|
||||
|
||||
ddlSendUserName.Hidden = false;
|
||||
ddlccUserName.Hidden = false;
|
||||
|
||||
ddlSendRole.Hidden = true;
|
||||
ddlccRole.Hidden = true;
|
||||
|
||||
}
|
||||
else if (rblAutoPostBack.SelectedValue == "2")//选择角色
|
||||
{
|
||||
//发送人
|
||||
var people1 = BLL.Email_Send.Email_ToPeopleService.GetSenderTopeopleList(emailId);
|
||||
if (people1.Count == 0 || people1 == null)
|
||||
{ }
|
||||
else
|
||||
{
|
||||
this.ddlSendRole.Values = people1.Select(o => o.EmuserID).ToArray();
|
||||
this.ddlSendRole.Texts = people1.Select(o => o.EmuserName).ToArray();
|
||||
}
|
||||
|
||||
//抄送人
|
||||
var people2 = BLL.Email_Send.Email_ToPeopleService.GetCCTopeopleList(emailId);
|
||||
if (people2.Count == 0 || people2 == null)
|
||||
{ }
|
||||
else
|
||||
{
|
||||
this.ddlccRole.Values = people2.Select(o => o.EmuserID).ToArray();
|
||||
this.ddlccRole.Texts = people2.Select(o => o.EmuserName).ToArray();
|
||||
}
|
||||
|
||||
ddlSendUserName.Hidden = true;
|
||||
ddlccUserName.Hidden = true;
|
||||
|
||||
ddlSendRole.Hidden = false;
|
||||
ddlccRole.Hidden = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#region 下拉加载
|
||||
|
||||
private void BindEmailParamsDropDownList()
|
||||
{
|
||||
List<Model.Email_Params> email_Params = new List<Model.Email_Params>();
|
||||
|
||||
email_Params = BLL.Email_Send.Email_ParamsService.GetEmail_ParamsList();
|
||||
ddlEmailParamsID.DataTextField = "MailClassName";
|
||||
ddlEmailParamsID.DataValueField = "MailClassID";
|
||||
ddlEmailParamsID.DataSource = email_Params;
|
||||
ddlEmailParamsID.DataBind();
|
||||
|
||||
}
|
||||
#endregion
|
||||
|
||||
|
||||
protected void rblAutoPostBack_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
//ShowNotify("列表三选中项的值:" + rblAutoPostBack.SelectedValue);
|
||||
if (rblAutoPostBack.SelectedValue == "0")
|
||||
{
|
||||
ddlccUserName.Value = string.Empty;
|
||||
ddlccUserName.Hidden = true;
|
||||
|
||||
ddlSendUserName.Value = string.Empty;
|
||||
ddlSendUserName.Hidden = true;
|
||||
|
||||
ddlccRole.Value = string.Empty;
|
||||
ddlccRole.Hidden = true;
|
||||
|
||||
ddlSendRole.Value = string.Empty;
|
||||
ddlSendRole.Hidden = true;
|
||||
|
||||
}
|
||||
else if (rblAutoPostBack.SelectedValue == "1")
|
||||
{
|
||||
ddlSendUserName.Hidden = false;
|
||||
ddlccUserName.Hidden = false;
|
||||
|
||||
ddlSendRole.Hidden = true;
|
||||
ddlccRole.Hidden = true;
|
||||
}
|
||||
else if (rblAutoPostBack.SelectedValue == "2")
|
||||
{
|
||||
ddlSendUserName.Hidden = true;
|
||||
ddlccUserName.Hidden = true;
|
||||
|
||||
ddlSendRole.Hidden = false;
|
||||
ddlccRole.Hidden = false;
|
||||
}
|
||||
}
|
||||
protected void btnSave_Click(object sender, EventArgs e)
|
||||
{
|
||||
string emailId = Request.Params["id"];
|
||||
|
||||
if (rblAutoPostBack.SelectedValue == "1")
|
||||
{
|
||||
//发送人id 集合
|
||||
List<Model.Sys_User> SenduserList = new List<Model.Sys_User>();
|
||||
if (!string.IsNullOrEmpty(this.ddlSendUserName.Value))
|
||||
{
|
||||
string[] toUserId = this.ddlSendUserName.Values;
|
||||
List<Model.Sys_User> usList = BLL.Sys_UserService.GetUserList();
|
||||
foreach (var item in toUserId)
|
||||
{
|
||||
string itemstr = item.Trim();
|
||||
Model.Sys_User syuser = new Model.Sys_User();
|
||||
syuser = usList.Where(o => o.UserId == itemstr).FirstOrDefault();
|
||||
SenduserList.Add(syuser);
|
||||
}
|
||||
}
|
||||
|
||||
//抄送人集合
|
||||
List<Model.Sys_User> CCuserList = new List<Model.Sys_User>();
|
||||
if (!string.IsNullOrEmpty(this.ddlccUserName.Value))
|
||||
{
|
||||
string[] toUserId = this.ddlccUserName.Values;
|
||||
List<Model.Sys_User> usList = BLL.Sys_UserService.GetUserList();
|
||||
foreach (var item in toUserId)
|
||||
{
|
||||
string itemstr = item.Trim();
|
||||
Model.Sys_User syuser = new Model.Sys_User();
|
||||
syuser = usList.Where(o => o.UserId == itemstr).FirstOrDefault();
|
||||
CCuserList.Add(syuser);
|
||||
}
|
||||
}
|
||||
List<Model.Email_ToPeople> tplist = null;
|
||||
if (string.IsNullOrEmpty(emailId))
|
||||
{
|
||||
Model.Email_SendTemplate temp = new Model.Email_SendTemplate();
|
||||
temp.EmailParamsID = ddlEmailParamsID.SelectedValue.ToString();
|
||||
temp.EmailId = Guid.NewGuid().ToString();
|
||||
temp.EmailTitle = txtTemplateName.Text.Trim();
|
||||
temp.EailTiaoJian = txtTemplateCondition.Text.Trim();
|
||||
temp.EmailContext = this.txtContent.Text;
|
||||
temp.EmailUserYN = Convert.ToInt32(rblAutoPostBack.SelectedValue);
|
||||
|
||||
List<Model.Email_SendTemplate> stlist = new List<Model.Email_SendTemplate>();
|
||||
stlist = BLL.Email_Send.Email_SendTemplateService.GetEmailNotifierList(temp.EmailParamsID);
|
||||
if (stlist == null || stlist.Count == 0)
|
||||
{
|
||||
tplist = new List<Model.Email_ToPeople>();
|
||||
|
||||
//发送人
|
||||
if (SenduserList != null || SenduserList.Count != 0)
|
||||
{
|
||||
foreach (var item in SenduserList)
|
||||
{
|
||||
Model.Email_ToPeople tep = new Model.Email_ToPeople();
|
||||
tep.EmID = Guid.NewGuid().ToString();
|
||||
tep.EmtempID = temp.EmailId;
|
||||
tep.EmuserID = item.UserId.ToString();
|
||||
tep.EmuserName = item.UserName.ToString();
|
||||
tep.EMPeopleType = BLL.Const.SenderType;
|
||||
tep.EmuaerEmailAddress = item.Email;
|
||||
tplist.Add(tep);
|
||||
}
|
||||
}
|
||||
|
||||
//抄送人保存
|
||||
if (CCuserList != null || CCuserList.Count != 0)
|
||||
{
|
||||
foreach (var item in CCuserList)
|
||||
{
|
||||
Model.Email_ToPeople tep = new Model.Email_ToPeople();
|
||||
tep.EmID = Guid.NewGuid().ToString();
|
||||
tep.EmtempID = temp.EmailId;
|
||||
tep.EmuserID = item.UserId.ToString();
|
||||
tep.EmuserName = item.UserName.ToString();
|
||||
tep.EMPeopleType = BLL.Const.CCType;
|
||||
tep.EmuaerEmailAddress = item.Email;
|
||||
tplist.Add(tep);
|
||||
}
|
||||
}
|
||||
|
||||
temp.CreateName = this.CurrUser.UserName;
|
||||
temp.CreateTime = DateTime.Now;
|
||||
BLL.Email_Send.Email_SendTemplateService.Add(temp, tplist);
|
||||
//BLL.Sys_LogService.AddLog(this.CurrUser.UserId, "Add SendEmailTemplate!");
|
||||
}
|
||||
else
|
||||
{
|
||||
ShowNotify("Cannot Be Created Repeatedly!", MessageBoxIcon.Error);
|
||||
return;
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
Model.Email_SendTemplate temp = BLL.Email_Send.Email_SendTemplateService.GetEmail_SendTemplate(emailId);
|
||||
|
||||
temp.EmailId = emailId;
|
||||
temp.EmailParamsID = ddlEmailParamsID.SelectedValue.ToString();
|
||||
temp.EailTiaoJian = txtTemplateCondition.Text.Trim();
|
||||
temp.EmailTitle = this.txtTemplateName.Text.Trim();
|
||||
temp.EmailContext = this.txtContent.Text;
|
||||
temp.EmailUserYN = Convert.ToInt32(rblAutoPostBack.SelectedValue);
|
||||
temp.UpdateName = this.CurrUser.UserName;
|
||||
temp.UpdateTime = DateTime.Now;
|
||||
|
||||
tplist = new List<Model.Email_ToPeople>();
|
||||
if (SenduserList != null || SenduserList.Count != 0)
|
||||
{
|
||||
foreach (var item in SenduserList)
|
||||
{
|
||||
Model.Email_ToPeople tep = new Model.Email_ToPeople();
|
||||
tep.EmID = Guid.NewGuid().ToString();
|
||||
tep.EmtempID = emailId;
|
||||
tep.EmuserID = item.UserId.ToString();
|
||||
tep.EMPeopleType = BLL.Const.SenderType;
|
||||
tep.EmuserName = item.UserName.ToString();
|
||||
tep.EmuaerEmailAddress = item.Email.ToString();
|
||||
tplist.Add(tep);
|
||||
}
|
||||
}
|
||||
|
||||
//抄送人保存
|
||||
if (CCuserList.Count != 0 || CCuserList != null)
|
||||
{
|
||||
foreach (var item in CCuserList)
|
||||
{
|
||||
Model.Email_ToPeople tep = new Model.Email_ToPeople();
|
||||
tep.EmID = Guid.NewGuid().ToString();
|
||||
tep.EmtempID = temp.EmailId;
|
||||
tep.EmuserID = item.UserId.ToString();
|
||||
tep.EmuserName = item.UserName.ToString();
|
||||
tep.EMPeopleType = BLL.Const.CCType;
|
||||
tep.EmuaerEmailAddress = item.Email.ToString();
|
||||
tplist.Add(tep);
|
||||
}
|
||||
}
|
||||
|
||||
BLL.Email_Send.Email_SendTemplateService.Update(temp, tplist);
|
||||
// BLL.Sys_LogService.AddLog(this.CurrUser.UserId, "Update SendEmailTemplate!");
|
||||
}
|
||||
}
|
||||
else if (rblAutoPostBack.SelectedValue == "2")
|
||||
{
|
||||
//发送人id 集合
|
||||
List<Model.Sys_Role> SenduserList = new List<Model.Sys_Role>();
|
||||
if (!string.IsNullOrEmpty(this.ddlSendRole.Value))
|
||||
{
|
||||
string[] toRoleId = this.ddlSendRole.Values;
|
||||
List<Model.Sys_Role> usRoleList = BLL.Sys_RoleService.GetRoleList();
|
||||
foreach (var item in toRoleId)
|
||||
{
|
||||
string itemstr = item.Trim();
|
||||
Model.Sys_Role syuser = new Model.Sys_Role();
|
||||
syuser = usRoleList.Where(o => o.RoleId == itemstr).FirstOrDefault();
|
||||
SenduserList.Add(syuser);
|
||||
}
|
||||
}
|
||||
|
||||
//抄送人集合
|
||||
List<Model.Sys_Role> CCuserList = new List<Model.Sys_Role>();
|
||||
if (!string.IsNullOrEmpty(this.ddlccRole.Value))
|
||||
{
|
||||
string[] toUserId = this.ddlccRole.Values;
|
||||
List<Model.Sys_Role> usList = BLL.Sys_RoleService.GetRoleList();
|
||||
foreach (var item in toUserId)
|
||||
{
|
||||
string itemstr = item.Trim();
|
||||
Model.Sys_Role syuser = new Model.Sys_Role();
|
||||
syuser = usList.Where(o => o.RoleId == itemstr).FirstOrDefault();
|
||||
CCuserList.Add(syuser);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
List<Model.Email_ToPeople> tplist = null;
|
||||
if (string.IsNullOrEmpty(emailId))
|
||||
{
|
||||
Model.Email_SendTemplate temp = new Model.Email_SendTemplate();
|
||||
temp.EmailParamsID = ddlEmailParamsID.SelectedValue.ToString();
|
||||
temp.EmailId = Guid.NewGuid().ToString();
|
||||
temp.EmailTitle = txtTemplateName.Text.Trim();
|
||||
temp.EailTiaoJian = txtTemplateCondition.Text.Trim();
|
||||
temp.EmailContext = this.txtContent.Text;
|
||||
temp.EmailUserYN = Convert.ToInt32(rblAutoPostBack.SelectedValue);
|
||||
|
||||
List<Model.Email_SendTemplate> stlist = new List<Model.Email_SendTemplate>();
|
||||
stlist = BLL.Email_Send.Email_SendTemplateService.GetEmailNotifierList(temp.EmailParamsID);
|
||||
if (stlist == null || stlist.Count == 0)
|
||||
{
|
||||
tplist = new List<Model.Email_ToPeople>();
|
||||
|
||||
//发送人
|
||||
if (SenduserList != null || SenduserList.Count != 0)
|
||||
{
|
||||
foreach (var item in SenduserList)
|
||||
{
|
||||
Model.Email_ToPeople tep = new Model.Email_ToPeople();
|
||||
tep.EmID = Guid.NewGuid().ToString();
|
||||
tep.EmtempID = temp.EmailId;
|
||||
tep.EmuserID = item.RoleId.ToString();
|
||||
tep.EmuserName = item.RoleName.ToString();
|
||||
tep.EMPeopleType = BLL.Const.SenderType;
|
||||
tep.EmuaerEmailAddress = string.Empty;
|
||||
tplist.Add(tep);
|
||||
}
|
||||
}
|
||||
|
||||
//抄送人保存
|
||||
if (CCuserList != null || CCuserList.Count != 0)
|
||||
{
|
||||
foreach (var item in CCuserList)
|
||||
{
|
||||
Model.Email_ToPeople tep = new Model.Email_ToPeople();
|
||||
tep.EmID = Guid.NewGuid().ToString();
|
||||
tep.EmtempID = temp.EmailId;
|
||||
tep.EmuserID = item.RoleId.ToString();
|
||||
tep.EmuserName = item.RoleName.ToString();
|
||||
tep.EMPeopleType = BLL.Const.CCType;
|
||||
tep.EmuaerEmailAddress = string.Empty;
|
||||
tplist.Add(tep);
|
||||
}
|
||||
}
|
||||
|
||||
temp.CreateName = this.CurrUser.UserName;
|
||||
temp.CreateTime = DateTime.Now;
|
||||
BLL.Email_Send.Email_SendTemplateService.Add(temp, tplist);
|
||||
// BLL.Sys_LogService.AddLog(this.CurrUser.UserId, "Add SendEmailTemplate!");
|
||||
}
|
||||
else
|
||||
{
|
||||
ShowNotify("Cannot Be Created Repeatedly!", MessageBoxIcon.Error);
|
||||
return;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
Model.Email_SendTemplate temp = BLL.Email_Send.Email_SendTemplateService.GetEmail_SendTemplate(emailId);
|
||||
|
||||
temp.EmailId = emailId;
|
||||
temp.EmailParamsID = ddlEmailParamsID.SelectedValue.ToString();
|
||||
temp.EailTiaoJian = txtTemplateCondition.Text.Trim();
|
||||
temp.EmailTitle = this.txtTemplateName.Text.Trim();
|
||||
temp.EmailContext = this.txtContent.Text;
|
||||
temp.EmailUserYN = Convert.ToInt32(rblAutoPostBack.SelectedValue);
|
||||
temp.UpdateName = this.CurrUser.UserName;
|
||||
temp.UpdateTime = DateTime.Now;
|
||||
|
||||
tplist = new List<Model.Email_ToPeople>();
|
||||
if (SenduserList != null || SenduserList.Count != 0)
|
||||
{
|
||||
foreach (var item in SenduserList)
|
||||
{
|
||||
Model.Email_ToPeople tep = new Model.Email_ToPeople();
|
||||
tep.EmID = Guid.NewGuid().ToString();
|
||||
tep.EmtempID = emailId;
|
||||
tep.EmuserID = item.RoleId.ToString();
|
||||
tep.EMPeopleType = BLL.Const.SenderType;
|
||||
tep.EmuserName = item.RoleName.ToString();
|
||||
tep.EmuaerEmailAddress = string.Empty;
|
||||
tplist.Add(tep);
|
||||
}
|
||||
}
|
||||
|
||||
//抄送人保存
|
||||
if (CCuserList.Count != 0 || CCuserList != null)
|
||||
{
|
||||
foreach (var item in CCuserList)
|
||||
{
|
||||
Model.Email_ToPeople tep = new Model.Email_ToPeople();
|
||||
tep.EmID = Guid.NewGuid().ToString();
|
||||
tep.EmtempID = temp.EmailId;
|
||||
tep.EmuserID = item.RoleId.ToString();
|
||||
tep.EmuserName = item.RoleName.ToString();
|
||||
tep.EMPeopleType = BLL.Const.CCType;
|
||||
tep.EmuaerEmailAddress = string.Empty;
|
||||
tplist.Add(tep);
|
||||
}
|
||||
}
|
||||
|
||||
BLL.Email_Send.Email_SendTemplateService.Update(temp, tplist);
|
||||
//BLL.Sys_LogService.AddLog(this.CurrUser.UserId, "Update SendEmailTemplate!");
|
||||
}
|
||||
}
|
||||
else {
|
||||
List<Model.Email_ToPeople> tplist = null;
|
||||
if (string.IsNullOrEmpty(emailId))
|
||||
{
|
||||
Model.Email_SendTemplate temp = BLL.Email_Send.Email_SendTemplateService.GetEmail_SendTemplate(emailId);
|
||||
if (temp==null)
|
||||
{
|
||||
temp = new Model.Email_SendTemplate();
|
||||
temp.EmailId = Guid.NewGuid().ToString();
|
||||
}
|
||||
else
|
||||
{
|
||||
temp.EmailId = emailId;
|
||||
}
|
||||
|
||||
temp.EmailParamsID = ddlEmailParamsID.SelectedValue.ToString();
|
||||
temp.EailTiaoJian = txtTemplateCondition.Text.Trim();
|
||||
temp.EmailTitle = this.txtTemplateName.Text.Trim();
|
||||
temp.EmailContext = this.txtContent.Text;
|
||||
temp.EmailUserYN = Convert.ToInt32(rblAutoPostBack.SelectedValue);
|
||||
temp.UpdateName = this.CurrUser.UserName;
|
||||
temp.UpdateTime = DateTime.Now;
|
||||
BLL.Email_Send.Email_SendTemplateService.Add(temp, tplist);
|
||||
//BLL.Sys_LogService.AddLog(this.CurrUser.UserId, "Add SendEmailTemplate!");
|
||||
}
|
||||
else {
|
||||
Model.Email_SendTemplate temp = BLL.Email_Send.Email_SendTemplateService.GetEmail_SendTemplate(emailId);
|
||||
if (temp == null)
|
||||
{
|
||||
temp = new Model.Email_SendTemplate();
|
||||
temp.EmailId = Guid.NewGuid().ToString();
|
||||
}
|
||||
else
|
||||
{
|
||||
temp.EmailId = emailId;
|
||||
}
|
||||
temp.EmailParamsID = ddlEmailParamsID.SelectedValue.ToString();
|
||||
temp.EailTiaoJian = txtTemplateCondition.Text.Trim();
|
||||
temp.EmailTitle = this.txtTemplateName.Text.Trim();
|
||||
temp.EmailContext = this.txtContent.Text;
|
||||
temp.EmailUserYN = Convert.ToInt32(rblAutoPostBack.SelectedValue);
|
||||
temp.UpdateName = this.CurrUser.UserName;
|
||||
temp.UpdateTime = DateTime.Now;
|
||||
BLL.Email_Send.Email_SendTemplateService.Update(temp, tplist);
|
||||
//BLL.Sys_LogService.AddLog(this.CurrUser.UserId, "Update SendEmailTemplate!");
|
||||
}
|
||||
}
|
||||
ShowNotify("Save Successfully!", MessageBoxIcon.Success);
|
||||
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,177 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <自动生成>
|
||||
// 此代码由工具生成。
|
||||
//
|
||||
// 对此文件的更改可能导致不正确的行为,如果
|
||||
// 重新生成代码,则所做更改将丢失。
|
||||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.Email_Send {
|
||||
|
||||
|
||||
public partial class Email_SendTemplate_Edit {
|
||||
|
||||
/// <summary>
|
||||
/// form1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
|
||||
|
||||
/// <summary>
|
||||
/// PageManager1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.PageManager PageManager1;
|
||||
|
||||
/// <summary>
|
||||
/// SimpleForm1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Form SimpleForm1;
|
||||
|
||||
/// <summary>
|
||||
/// ddlEmailParamsID 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList ddlEmailParamsID;
|
||||
|
||||
/// <summary>
|
||||
/// txtTemplateCondition 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextBox txtTemplateCondition;
|
||||
|
||||
/// <summary>
|
||||
/// txtTemplateName 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextBox txtTemplateName;
|
||||
|
||||
/// <summary>
|
||||
/// txtContent 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.HtmlEditor txtContent;
|
||||
|
||||
/// <summary>
|
||||
/// rblAutoPostBack 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.RadioButtonList rblAutoPostBack;
|
||||
|
||||
/// <summary>
|
||||
/// ddlSendUserName 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownBox ddlSendUserName;
|
||||
|
||||
/// <summary>
|
||||
/// SelectUserControl1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Web.Email_Send.SelectUserControl SelectUserControl1;
|
||||
|
||||
/// <summary>
|
||||
/// ddlSendRole 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownBox ddlSendRole;
|
||||
|
||||
/// <summary>
|
||||
/// SelectRoleControl1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Web.Email_Send.SelectRoleControl SelectRoleControl1;
|
||||
|
||||
/// <summary>
|
||||
/// ddlccUserName 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownBox ddlccUserName;
|
||||
|
||||
/// <summary>
|
||||
/// SelectUserControl2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Web.Email_Send.SelectUserControl SelectUserControl2;
|
||||
|
||||
/// <summary>
|
||||
/// ddlccRole 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownBox ddlccRole;
|
||||
|
||||
/// <summary>
|
||||
/// SelectRoleControl2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Web.Email_Send.SelectRoleControl SelectRoleControl2;
|
||||
|
||||
/// <summary>
|
||||
/// Toolbar1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Toolbar Toolbar1;
|
||||
|
||||
/// <summary>
|
||||
/// btnSave 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnSave;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,127 @@
|
||||
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Email_SendTemplate_List.aspx.cs" Inherits="FineUIPro.Web.Email_Send.Email_SendTemplate_List" %>
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head runat="server">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title></title>
|
||||
<style>
|
||||
.mycheckbox .f-field-checkbox-switch .f-field-checkbox-switch-text {
|
||||
min-width: 40px;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<form id="form1" runat="server">
|
||||
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
|
||||
<f:Panel ID="Panel1" runat="server" Margin="5px" BodyPadding="5px" ShowBorder="false"
|
||||
ShowHeader="false" Layout="VBox" BoxConfigAlign="Stretch">
|
||||
<Items>
|
||||
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" EnableCollapse="true" runat="server"
|
||||
BoxFlex="1" DataKeyNames="EmailId" AllowCellEditing="true" DataIDField="EmailId"
|
||||
AllowSorting="true" SortField="CreateTime" SortDirection="DESC" OnSort="Grid1_Sort"
|
||||
AllowPaging="true" IsDatabasePaging="true" PageSize="15" OnPageIndexChange="Grid1_PageIndexChange"
|
||||
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick">
|
||||
<Toolbars>
|
||||
<f:Toolbar ID="Toolbar2" Position="Top" runat="server">
|
||||
<Items>
|
||||
<f:ToolbarFill ID="ToolbarFill1" runat="server"></f:ToolbarFill>
|
||||
<f:Button ID="btnAdd" ToolTip="Add" Icon="Add" Text="添加" runat="server" OnClick="btnAdd_Click" ></f:Button>
|
||||
<f:Button ID="btnEdit" ToolTip="Edit" Icon="Pencil" Text="修改" runat="server" OnClick="btnEdit_Click" ></f:Button>
|
||||
|
||||
<f:Button ID="btnDelete" ToolTip="Delete" Text="删除" Icon="Delete" ConfirmText="Make sure to delete the current data?" OnClick="btnDelete_Click"
|
||||
runat="server" >
|
||||
</f:Button>
|
||||
</Items>
|
||||
</f:Toolbar>
|
||||
</Toolbars>
|
||||
<Columns>
|
||||
<f:TemplateField Width="50px" TextAlign="Center">
|
||||
<ItemTemplate>
|
||||
<asp:Label ID="Label1" runat="server" Text='<%# Container.DataItemIndex + 1 %>'></asp:Label>
|
||||
</ItemTemplate>
|
||||
</f:TemplateField>
|
||||
<f:RenderField Width="120px" ColumnID="EmailParamsID" DataField="EmailParamsID" SortField="EmailParamsID"
|
||||
HeaderTextAlign="Center" TextAlign="Left" FieldType="String" HeaderText="邮件通知人">
|
||||
</f:RenderField>
|
||||
<f:RenderField Width="380px" ColumnID="EmailTitle" DataField="EmailTitle" SortField="EmailTitle" FieldType="String"
|
||||
HeaderTextAlign="Center" TextAlign="Left" HeaderText="邮件标题">
|
||||
</f:RenderField>
|
||||
<f:RenderField Width="400px" ColumnID="EailTiaoJian" DataField="EailTiaoJian" SortField="EailTiaoJian"
|
||||
HeaderTextAlign="Center" TextAlign="Left" FieldType="String" HeaderText="发送条件">
|
||||
</f:RenderField>
|
||||
|
||||
<f:RenderField Width="500px" ColumnID="EmailContext" DataField="EmailContext" SortField="EmailContext" FieldType="String"
|
||||
HeaderTextAlign="Center" TextAlign="Left" HeaderText="邮件内容">
|
||||
</f:RenderField>
|
||||
|
||||
<%-- <f:RenderField Width="120px" ColumnID="EmailDesc" DataField="EmailDesc" SortField="EmailDesc"
|
||||
HeaderTextAlign="Center" TextAlign="Left" FieldType="String" HeaderText="EmailDesc" ExpandUnusedSpace="true">
|
||||
</f:RenderField>--%>
|
||||
|
||||
<f:RenderField Width="100px" ColumnID="CreateTime" DataField="CreateTime" SortField="CreateTime"
|
||||
FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="CreateTime"
|
||||
HeaderTextAlign="Center" TextAlign="Center" EnableFilter="true">
|
||||
<Filter EnableMultiFilter="true" ShowMatcher="true">
|
||||
<Operator>
|
||||
<f:DropDownList ID="DropDownList4" runat="server">
|
||||
<f:ListItem Text="greater than" Value="greater" Selected="true" />
|
||||
<f:ListItem Text="less than" Value="less" />
|
||||
<f:ListItem Text="equal to" Value="equal" />
|
||||
</f:DropDownList>
|
||||
</Operator>
|
||||
<Field>
|
||||
<f:DatePicker runat="server" Required="true" ID="DatePicker2">
|
||||
</f:DatePicker>
|
||||
</Field>
|
||||
</Filter>
|
||||
</f:RenderField>
|
||||
</Columns>
|
||||
<Listeners>
|
||||
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
|
||||
</Listeners>
|
||||
<PageItems>
|
||||
<f:ToolbarSeparator ID="ToolbarSeparator1" runat="server">
|
||||
</f:ToolbarSeparator>
|
||||
<f:ToolbarText ID="ToolbarText1" runat="server" Text="Number of records per page:">
|
||||
</f:ToolbarText>
|
||||
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true"
|
||||
OnSelectedIndexChanged="ddlPageSize_SelectedIndexChanged">
|
||||
<f:ListItem Text="15" Value="15" />
|
||||
<f:ListItem Text="20" Value="20" />
|
||||
<f:ListItem Text="25" Value="25" />
|
||||
<f:ListItem Text="30" Value="30" />
|
||||
</f:DropDownList>
|
||||
</PageItems>
|
||||
</f:Grid>
|
||||
</Items>
|
||||
</f:Panel>
|
||||
<f:Window ID="Window1" Title="SendEmailTemplate Editor" Hidden="true" EnableIFrame="true" EnableMaximize="false"
|
||||
Target="Parent" EnableResize="false" runat="server" OnClose="Window1_Close" IsModal="true"
|
||||
Width="1000px" Height="650px">
|
||||
</f:Window>
|
||||
|
||||
<f:Menu ID="Menu1" runat="server">
|
||||
<f:MenuButton ID="btnMenuEdit" OnClick="btnMenuEdit_Click" EnablePostBack="true"
|
||||
Icon="BulletEdit" runat="server" Text="Modify" Hidden="true">
|
||||
</f:MenuButton>
|
||||
<f:MenuButton ID="btnMenuDelete" OnClick="btnMenuDelete_Click" EnablePostBack="true"
|
||||
Icon="Delete" ConfirmText="Delete selected row?" ConfirmTarget="Top" runat="server" Text="Delete" Hidden="true">
|
||||
</f:MenuButton>
|
||||
</f:Menu>
|
||||
|
||||
<script type="text/javascript">
|
||||
|
||||
var menuID = '<%= Menu1.ClientID %>';
|
||||
// 返回false,来阻止浏览器右键菜单
|
||||
function onRowContextMenu(event, rowId) {
|
||||
F(menuID).show(); //showAt(event.pageX, event.pageY);
|
||||
return false;
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,136 @@
|
||||
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_SendTemplate_List : PageBase
|
||||
{
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
}
|
||||
|
||||
#region BindGrid
|
||||
|
||||
private void BindGrid()
|
||||
{
|
||||
List<Model.Email_SendTemplate> senList = new List<Model.Email_SendTemplate>();
|
||||
senList = BLL.Email_Send.Email_SendTemplateService.GetEmail_SendTemplateList();
|
||||
Grid1.RecordCount = senList.Count;
|
||||
var table = this.GetPagedDataTable(Grid1, senList);
|
||||
Grid1.DataSource = table;
|
||||
Grid1.DataBind();
|
||||
}
|
||||
|
||||
#endregion
|
||||
/// <summary>
|
||||
/// 分页下拉选择
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
|
||||
{
|
||||
Grid1.PageIndex = e.NewPageIndex;
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
protected void Grid1_Sort(object sender, FineUIPro.GridSortEventArgs e)
|
||||
{
|
||||
Grid1.SortDirection = e.SortDirection;
|
||||
Grid1.SortField = e.SortField;
|
||||
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
protected void btnAdd_Click(object sender, EventArgs e)
|
||||
{
|
||||
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("Email_SendTemplate_Edit.aspx", null, "添加 - ")));
|
||||
}
|
||||
|
||||
protected void Window1_Close(object sender, WindowCloseEventArgs e)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
/// <summary>
|
||||
/// 右键编辑事件
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void btnMenuEdit_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (Grid1.SelectedRowIndexArray.Length == 0)
|
||||
{
|
||||
Alert.ShowInParent("Please select at least one record!");
|
||||
return;
|
||||
}
|
||||
string Id = Grid1.SelectedRowID;
|
||||
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("Email_SendTemplate_Edit.aspx?id={0}", Id, "编辑 - ")));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Grid双击事件
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
|
||||
{
|
||||
btnMenuEdit_Click(null, null);
|
||||
}
|
||||
|
||||
protected void btnEdit_Click(object sender, EventArgs e)
|
||||
{
|
||||
btnMenuEdit_Click(null, null);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 右键删除事件
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void btnMenuDelete_Click(object sender, EventArgs e)
|
||||
{
|
||||
this.DeleteData();
|
||||
}
|
||||
|
||||
|
||||
|
||||
protected void btnDelete_Click(object sender, EventArgs e)
|
||||
{
|
||||
this.DeleteData();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 删除方法
|
||||
/// </summary>
|
||||
private void DeleteData()
|
||||
{
|
||||
if (Grid1.SelectedRowIndexArray.Length > 0)
|
||||
{
|
||||
foreach (int rowIndex in Grid1.SelectedRowIndexArray)
|
||||
{
|
||||
string rowID = Grid1.DataKeys[rowIndex][0].ToString();
|
||||
|
||||
BLL.Email_Send.Email_SendTemplateService.Delete(rowID);
|
||||
ShowNotify("Deleted successfully!");
|
||||
|
||||
}
|
||||
BindGrid();
|
||||
//BLL.Sys_LogService.AddLog(this.CurrUser.UserId, "Delete Project control editor information");
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,186 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <自动生成>
|
||||
// 此代码由工具生成。
|
||||
//
|
||||
// 对此文件的更改可能导致不正确的行为,如果
|
||||
// 重新生成代码,则所做更改将丢失。
|
||||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.Email_Send {
|
||||
|
||||
|
||||
public partial class Email_SendTemplate_List {
|
||||
|
||||
/// <summary>
|
||||
/// form1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
|
||||
|
||||
/// <summary>
|
||||
/// PageManager1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.PageManager PageManager1;
|
||||
|
||||
/// <summary>
|
||||
/// Panel1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Panel Panel1;
|
||||
|
||||
/// <summary>
|
||||
/// Grid1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Grid Grid1;
|
||||
|
||||
/// <summary>
|
||||
/// Toolbar2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Toolbar Toolbar2;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarFill1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarFill ToolbarFill1;
|
||||
|
||||
/// <summary>
|
||||
/// btnAdd 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnAdd;
|
||||
|
||||
/// <summary>
|
||||
/// btnEdit 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnEdit;
|
||||
|
||||
/// <summary>
|
||||
/// btnDelete 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnDelete;
|
||||
|
||||
/// <summary>
|
||||
/// Label1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.Label Label1;
|
||||
|
||||
/// <summary>
|
||||
/// DropDownList4 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList DropDownList4;
|
||||
|
||||
/// <summary>
|
||||
/// DatePicker2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DatePicker DatePicker2;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarSeparator1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarText1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarText ToolbarText1;
|
||||
|
||||
/// <summary>
|
||||
/// ddlPageSize 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList ddlPageSize;
|
||||
|
||||
/// <summary>
|
||||
/// Window1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Window Window1;
|
||||
|
||||
/// <summary>
|
||||
/// Menu1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Menu Menu1;
|
||||
|
||||
/// <summary>
|
||||
/// btnMenuEdit 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.MenuButton btnMenuEdit;
|
||||
|
||||
/// <summary>
|
||||
/// btnMenuDelete 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.MenuButton btnMenuDelete;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,57 @@
|
||||
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Email_Send_Edit.aspx.cs" Inherits="FineUIPro.Web.Email_Send.Email_Send_Edit" %>
|
||||
|
||||
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head id="Head1" runat="server">
|
||||
<title>邮件发送指定用户</title>
|
||||
<link href="../../res/css/common.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<form id="SimpleForm1" runat="server">
|
||||
<f:PageManager ID="PageManager1" runat="server" AutoSizePanelID="RegionPanel1" />
|
||||
<f:Panel ID="Panel1" CssClass="blockpanel" runat="server" ShowBorder="false" EnableCollapse="false"
|
||||
Layout="HBox" ShowHeader="false" Title="短信发送" BoxConfigChildMargin="0 5 0 0" Height="600px"
|
||||
BodyPadding="5">
|
||||
<Items>
|
||||
<f:Panel ID="Panel3" Title="面板1" Width="600px" runat="server" BodyPadding="10px"
|
||||
ShowBorder="true" ShowHeader="false">
|
||||
<Items>
|
||||
<f:TextBox ID="txtSendTitle" ShowLabel="true" Required="true" LabelWidth="140px"
|
||||
BoxFlex="2" runat="server" Label="发送标题">
|
||||
</f:TextBox>
|
||||
<f:TextArea ID="txtSendContent" ShowLabel="true" Required="true" LabelWidth="140px" Height="500px"
|
||||
BoxFlex="2" runat="server" Label="发送内容">
|
||||
</f:TextArea>
|
||||
</Items>
|
||||
<Toolbars>
|
||||
<f:Toolbar runat="server" ID="Toolbar1" Position="Bottom">
|
||||
<Items>
|
||||
<f:ToolbarFill ID="ToolbarFill1" runat="server"></f:ToolbarFill>
|
||||
<f:Button ID="btnSave" Icon="Email" runat="server" CssClass="marginr" Text="Send"
|
||||
ValidateForms="SimpleForm1" OnClick="btnSave_Click">
|
||||
</f:Button>
|
||||
</Items>
|
||||
</f:Toolbar>
|
||||
</Toolbars>
|
||||
</f:Panel>
|
||||
<f:Panel ID="Panel5" CssClass="blockpanel" runat="server" ShowBorder="true" Width="600px" EnableCollapse="false"
|
||||
Layout="HBox" AutoScroll="false" ShowHeader="true" Title="收件人" BoxConfigChildMargin="0 5 0 0"
|
||||
BodyPadding="5">
|
||||
<Items>
|
||||
<f:Panel ID="Panel2" Title="面板2" BoxFlex="1" MinWidth="550px" Margin="0" runat="server"
|
||||
BodyPadding="5px" ShowBorder="false" ShowHeader="false" AutoScroll="true">
|
||||
<Items>
|
||||
<f:Tree ID="tvMenu" Width="500px" EnableCollapse="true" ShowHeader="false" ShowBorder="false" Title="System menu"
|
||||
AutoLeafIdentification="true" runat="server" EnableIcons="true" AutoScroll="true"
|
||||
EnableSingleClickExpand="false" OnNodeCheck="tvMenu_NodeCheck" EnableCheckBox="true">
|
||||
</f:Tree>
|
||||
</Items>
|
||||
</f:Panel>
|
||||
</Items>
|
||||
</f:Panel>
|
||||
</Items>
|
||||
</f:Panel>
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,157 @@
|
||||
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 初始化系统菜单树
|
||||
/// <summary>
|
||||
/// 加载菜单树:动态加载
|
||||
/// </summary>
|
||||
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 遍历节点方法(系统功能)
|
||||
/// <summary>
|
||||
/// 遍历节点方法
|
||||
/// </summary>
|
||||
/// <param name="nodes">节点集合</param>
|
||||
/// <param name="parentId">父节点</param>
|
||||
private void GetNodes(TreeNodeCollection nodes, string parentId)
|
||||
{
|
||||
List<Model.Sys_User> 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 全选、全不选
|
||||
/// <summary>
|
||||
/// 全选、全不选
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
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);
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// 选中父节点
|
||||
/// </summary>
|
||||
/// <param name="node"></param>
|
||||
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;
|
||||
Email_Pop pop = new Email_Pop();
|
||||
pop = MailHelper.getEmailPop("7EC5E991-B7A0-495A-90ED-2BE15370C959");
|
||||
|
||||
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<string> namelist = new List<string>();
|
||||
|
||||
foreach (TreeNode tn in this.tvMenu.GetCheckedNodes())
|
||||
{
|
||||
if (tn.NodeID != "0")
|
||||
{
|
||||
namelist.Add(tn.CommandName);
|
||||
}
|
||||
}
|
||||
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("Send Successfully!", MessageBoxIcon.Success);
|
||||
}
|
||||
else
|
||||
{
|
||||
ShowNotify(resultMessage, MessageBoxIcon.Error);
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ShowNotify(ex.Message, MessageBoxIcon.Success);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,132 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <自动生成>
|
||||
// 此代码由工具生成。
|
||||
//
|
||||
// 对此文件的更改可能导致不正确的行为,如果
|
||||
// 重新生成代码,则所做更改将丢失。
|
||||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.Email_Send {
|
||||
|
||||
|
||||
public partial class Email_Send_Edit {
|
||||
|
||||
/// <summary>
|
||||
/// Head1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlHead Head1;
|
||||
|
||||
/// <summary>
|
||||
/// SimpleForm1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlForm SimpleForm1;
|
||||
|
||||
/// <summary>
|
||||
/// PageManager1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.PageManager PageManager1;
|
||||
|
||||
/// <summary>
|
||||
/// Panel1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Panel Panel1;
|
||||
|
||||
/// <summary>
|
||||
/// Panel3 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Panel Panel3;
|
||||
|
||||
/// <summary>
|
||||
/// txtSendTitle 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextBox txtSendTitle;
|
||||
|
||||
/// <summary>
|
||||
/// txtSendContent 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextArea txtSendContent;
|
||||
|
||||
/// <summary>
|
||||
/// Toolbar1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Toolbar Toolbar1;
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarFill1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarFill ToolbarFill1;
|
||||
|
||||
/// <summary>
|
||||
/// btnSave 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnSave;
|
||||
|
||||
/// <summary>
|
||||
/// Panel5 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Panel Panel5;
|
||||
|
||||
/// <summary>
|
||||
/// Panel2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Panel Panel2;
|
||||
|
||||
/// <summary>
|
||||
/// tvMenu 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Tree tvMenu;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="SelectRoleControl.ascx.cs" Inherits="FineUIPro.Web.Email_Send.SelectRoleControl" %>
|
||||
<f:Panel ID="Panel1" runat="server" BodyPadding="10px" Width="750px" Height="300px" Hidden="true"
|
||||
ShowBorder="true" ShowHeader="false" Layout="VBox" BoxConfigAlign="Stretch">
|
||||
<Items>
|
||||
<f:Form ID="Form5" ShowBorder="False" ShowHeader="False" runat="server">
|
||||
<Rows>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:TwinTriggerBox Width="300px" runat="server" EmptyText="Find in RoleName" ShowLabel="false" ID="ttbSearch"
|
||||
ShowTrigger1="false" OnTrigger1Click="ttbSearch_Trigger1Click" OnTrigger2Click="ttbSearch_Trigger2Click"
|
||||
Trigger1Icon="Clear" Trigger2Icon="Search">
|
||||
</f:TwinTriggerBox>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
</Rows>
|
||||
</f:Form>
|
||||
<f:Grid ID="Grid1" BoxFlex="1"
|
||||
DataIDField="RoleId" DataTextField="RoleName" EnableMultiSelect="true" KeepCurrentSelection="true"
|
||||
PageSize="10" ShowBorder="true" ShowHeader="false"
|
||||
AllowPaging="true" IsDatabasePaging="true" runat="server" EnableCheckBoxSelect="True"
|
||||
DataKeyNames="RoleId,RoleName" OnPageIndexChange="Grid1_PageIndexChange"
|
||||
AllowSorting="true" SortField="RoleName" SortDirection="ASC"
|
||||
OnSort="Grid1_Sort">
|
||||
<Columns>
|
||||
<f:RowNumberField />
|
||||
<f:BoundField Width="200px" DataField="RoleName" SortField="RoleName" DataFormatString="{0}"
|
||||
HeaderText="RoleName" />
|
||||
<f:BoundField Width="200px" SortField="RoleId" DataField="RoleId" HeaderText="RoleId" />
|
||||
</Columns>
|
||||
</f:Grid>
|
||||
</Items>
|
||||
</f:Panel>
|
||||
@@ -0,0 +1,148 @@
|
||||
using BLL;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
using System.Data.SqlClient;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
|
||||
namespace FineUIPro.Web.Email_Send
|
||||
{
|
||||
public partial class SelectRoleControl : System.Web.UI.UserControl
|
||||
{
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
}
|
||||
|
||||
#region BindGrid
|
||||
private void BindGrid()
|
||||
{
|
||||
// 1.设置总项数(特别注意:数据库分页一定要设置总记录数RecordCount)
|
||||
Grid1.RecordCount = GetTotalCount();
|
||||
// 2.获取当前分页数据
|
||||
DataTable table = GetPagedDataTable();
|
||||
// 3.绑定到Grid
|
||||
Grid1.DataSource = table;
|
||||
Grid1.DataBind();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 模拟返回总项数
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
private int GetTotalCount()
|
||||
{
|
||||
return GetSource().Rows.Count;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 模拟数据库分页(实际项目中请直接使用SQL语句返回分页数据!)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
private DataTable GetPagedDataTable()
|
||||
{
|
||||
int pageIndex = Grid1.PageIndex;
|
||||
int pageSize = Grid1.PageSize;
|
||||
|
||||
DataTable table = GetSource();
|
||||
|
||||
DataTable paged = table.Clone();
|
||||
int rowbegin = pageIndex * pageSize;
|
||||
int rowend = (pageIndex + 1) * pageSize;
|
||||
if (rowend > table.Rows.Count)
|
||||
{
|
||||
rowend = table.Rows.Count;
|
||||
}
|
||||
for (int i = rowbegin; i < rowend; i++)
|
||||
{
|
||||
paged.ImportRow(table.Rows[i]);
|
||||
}
|
||||
|
||||
return paged;
|
||||
}
|
||||
|
||||
private DataTable GetSource()
|
||||
{
|
||||
string sortField = Grid1.SortField;
|
||||
string sortDirection = Grid1.SortDirection;
|
||||
|
||||
string strSql = @"select * from Sys_Role where 1=1";
|
||||
List<SqlParameter> listStr = new List<SqlParameter>();
|
||||
SqlParameter[] parameter = listStr.ToArray();
|
||||
DataTable table2 = SQLHelper.GetDataTableRunText(strSql, parameter);
|
||||
|
||||
DataView view2 = table2.DefaultView;
|
||||
view2.Sort = String.Format("{0} {1}", sortField, sortDirection);
|
||||
|
||||
List<string> filters = new List<string>();
|
||||
|
||||
string searchKeyword = ttbSearch.Text.Trim();
|
||||
if (!String.IsNullOrEmpty(searchKeyword) && ttbSearch.ShowTrigger1)
|
||||
{
|
||||
// RowFilter的用法:http://www.csharp-examples.net/dataview-rowfilter/
|
||||
filters.Add(String.Format("RoleName LIKE '*{0}*'", EscapeLikeValue(searchKeyword)));
|
||||
}
|
||||
|
||||
if (filters.Count > 0)
|
||||
{
|
||||
view2.RowFilter = String.Join(" AND ", filters.ToArray());
|
||||
}
|
||||
|
||||
|
||||
|
||||
return view2.ToTable();
|
||||
}
|
||||
|
||||
// From: http://www.csharp-examples.net/dataview-rowfilter/
|
||||
public static string EscapeLikeValue(string valueWithoutWildcards)
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
for (int i = 0; i < valueWithoutWildcards.Length; i++)
|
||||
{
|
||||
char c = valueWithoutWildcards[i];
|
||||
if (c == '*' || c == '%' || c == '[' || c == ']')
|
||||
sb.Append("[").Append(c).Append("]");
|
||||
else if (c == '\'')
|
||||
sb.Append("''");
|
||||
else
|
||||
sb.Append(c);
|
||||
}
|
||||
return sb.ToString();
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region Events
|
||||
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
protected void Grid1_Sort(object sender, GridSortEventArgs e)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
|
||||
protected void ttbSearch_Trigger1Click(object sender, EventArgs e)
|
||||
{
|
||||
ttbSearch.Text = String.Empty;
|
||||
ttbSearch.ShowTrigger1 = false;
|
||||
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
protected void ttbSearch_Trigger2Click(object sender, EventArgs e)
|
||||
{
|
||||
ttbSearch.ShowTrigger1 = true;
|
||||
BindGrid();
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,51 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <自动生成>
|
||||
// 此代码由工具生成。
|
||||
//
|
||||
// 对此文件的更改可能导致不正确的行为,如果
|
||||
// 重新生成代码,则所做更改将丢失。
|
||||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.Email_Send {
|
||||
|
||||
|
||||
public partial class SelectRoleControl {
|
||||
|
||||
/// <summary>
|
||||
/// Panel1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Panel Panel1;
|
||||
|
||||
/// <summary>
|
||||
/// Form5 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Form Form5;
|
||||
|
||||
/// <summary>
|
||||
/// ttbSearch 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TwinTriggerBox ttbSearch;
|
||||
|
||||
/// <summary>
|
||||
/// Grid1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Grid Grid1;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="SelectUserControl.ascx.cs" Inherits="FineUIPro.Web.Email_Send.SelectUserControl" %>
|
||||
|
||||
<f:Panel ID="Panel7" runat="server" BodyPadding="10px" Width="750px" Height="300px" Hidden="true"
|
||||
ShowBorder="true" ShowHeader="false" Layout="VBox" BoxConfigAlign="Stretch">
|
||||
<Items>
|
||||
<f:Form ID="Form5" ShowBorder="False" ShowHeader="False" runat="server">
|
||||
<Rows>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:TwinTriggerBox Width="300px" runat="server" EmptyText="Find in username" ShowLabel="false" ID="ttbSearch"
|
||||
ShowTrigger1="false" OnTrigger1Click="ttbSearch_Trigger1Click" OnTrigger2Click="ttbSearch_Trigger2Click"
|
||||
Trigger1Icon="Clear" Trigger2Icon="Search">
|
||||
</f:TwinTriggerBox>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
</Rows>
|
||||
</f:Form>
|
||||
<f:Grid ID="Grid1" BoxFlex="1"
|
||||
DataIDField="UserId" DataTextField="UserName" EnableMultiSelect="true" KeepCurrentSelection="true"
|
||||
PageSize="10" ShowBorder="true" ShowHeader="false"
|
||||
AllowPaging="true" IsDatabasePaging="true" runat="server" EnableCheckBoxSelect="True"
|
||||
DataKeyNames="UserId,UserName" OnPageIndexChange="Grid1_PageIndexChange"
|
||||
AllowSorting="true" SortField="UserName" SortDirection="ASC"
|
||||
OnSort="Grid1_Sort">
|
||||
<Columns>
|
||||
<f:RowNumberField />
|
||||
<f:BoundField Width="200px" DataField="UserName" SortField="UserName" DataFormatString="{0}"
|
||||
HeaderText="姓名" />
|
||||
<f:BoundField Width="200px" SortField="Email" DataField="Email" HeaderText="Email" />
|
||||
</Columns>
|
||||
</f:Grid>
|
||||
</Items>
|
||||
</f:Panel>
|
||||
@@ -0,0 +1,172 @@
|
||||
using BLL;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
using System.Data.SqlClient;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
|
||||
namespace FineUIPro.Web.Email_Send
|
||||
{
|
||||
public partial class SelectUserControl : System.Web.UI.UserControl
|
||||
{
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
BindGrid();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
#region BindGrid
|
||||
|
||||
|
||||
private void BindGrid()
|
||||
{
|
||||
// 1.设置总项数(特别注意:数据库分页一定要设置总记录数RecordCount)
|
||||
Grid1.RecordCount = GetTotalCount();
|
||||
|
||||
// 2.获取当前分页数据
|
||||
DataTable table = GetPagedDataTable();
|
||||
|
||||
// 3.绑定到Grid
|
||||
Grid1.DataSource = table;
|
||||
Grid1.DataBind();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 模拟返回总项数
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
private int GetTotalCount()
|
||||
{
|
||||
return GetSource().Rows.Count;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 模拟数据库分页(实际项目中请直接使用SQL语句返回分页数据!)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
private DataTable GetPagedDataTable()
|
||||
{
|
||||
int pageIndex = Grid1.PageIndex;
|
||||
int pageSize = Grid1.PageSize;
|
||||
|
||||
DataTable table = GetSource();
|
||||
|
||||
DataTable paged = table.Clone();
|
||||
int rowbegin = pageIndex * pageSize;
|
||||
int rowend = (pageIndex + 1) * pageSize;
|
||||
if (rowend > table.Rows.Count)
|
||||
{
|
||||
rowend = table.Rows.Count;
|
||||
}
|
||||
for (int i = rowbegin; i < rowend; i++)
|
||||
{
|
||||
paged.ImportRow(table.Rows[i]);
|
||||
}
|
||||
|
||||
return paged;
|
||||
}
|
||||
|
||||
private DataTable GetSource()
|
||||
{
|
||||
string sortField = Grid1.SortField;
|
||||
string sortDirection = Grid1.SortDirection;
|
||||
|
||||
string strSql = @"select UserId,UserName,Email from Sys_User where 1=1";
|
||||
List<SqlParameter> listStr = new List<SqlParameter>();
|
||||
SqlParameter[] parameter = listStr.ToArray();
|
||||
DataTable table2 = SQLHelper.GetDataTableRunText(strSql, parameter);
|
||||
|
||||
|
||||
DataView view2 = table2.DefaultView;
|
||||
view2.Sort = String.Format("{0} {1}", sortField, sortDirection);
|
||||
|
||||
List<string> filters = new List<string>();
|
||||
|
||||
string searchKeyword = ttbSearch.Text.Trim();
|
||||
if (!String.IsNullOrEmpty(searchKeyword) && ttbSearch.ShowTrigger1)
|
||||
{
|
||||
// RowFilter的用法:http://www.csharp-examples.net/dataview-rowfilter/
|
||||
filters.Add(String.Format("UserName LIKE '*{0}*'", EscapeLikeValue(searchKeyword)));
|
||||
}
|
||||
|
||||
|
||||
if (filters.Count > 0)
|
||||
{
|
||||
view2.RowFilter = String.Join(" AND ", filters.ToArray());
|
||||
}
|
||||
|
||||
|
||||
|
||||
return view2.ToTable();
|
||||
}
|
||||
|
||||
// From: http://www.csharp-examples.net/dataview-rowfilter/
|
||||
public static string EscapeLikeValue(string valueWithoutWildcards)
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
for (int i = 0; i < valueWithoutWildcards.Length; i++)
|
||||
{
|
||||
char c = valueWithoutWildcards[i];
|
||||
if (c == '*' || c == '%' || c == '[' || c == ']')
|
||||
sb.Append("[").Append(c).Append("]");
|
||||
else if (c == '\'')
|
||||
sb.Append("''");
|
||||
else
|
||||
sb.Append(c);
|
||||
}
|
||||
return sb.ToString();
|
||||
}
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
#region Events
|
||||
|
||||
|
||||
|
||||
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
|
||||
{
|
||||
//Grid1.PageIndex = e.NewPageIndex;
|
||||
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
protected void Grid1_Sort(object sender, GridSortEventArgs e)
|
||||
{
|
||||
//Grid1.SortDirection = e.SortDirection;
|
||||
//Grid1.SortField = e.SortField;
|
||||
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
|
||||
protected void ttbSearch_Trigger1Click(object sender, EventArgs e)
|
||||
{
|
||||
ttbSearch.Text = String.Empty;
|
||||
ttbSearch.ShowTrigger1 = false;
|
||||
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
protected void ttbSearch_Trigger2Click(object sender, EventArgs e)
|
||||
{
|
||||
ttbSearch.ShowTrigger1 = true;
|
||||
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,51 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <自动生成>
|
||||
// 此代码由工具生成。
|
||||
//
|
||||
// 对此文件的更改可能导致不正确的行为,如果
|
||||
// 重新生成代码,则所做更改将丢失。
|
||||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.Email_Send {
|
||||
|
||||
|
||||
public partial class SelectUserControl {
|
||||
|
||||
/// <summary>
|
||||
/// Panel7 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Panel Panel7;
|
||||
|
||||
/// <summary>
|
||||
/// Form5 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Form Form5;
|
||||
|
||||
/// <summary>
|
||||
/// ttbSearch 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TwinTriggerBox ttbSearch;
|
||||
|
||||
/// <summary>
|
||||
/// Grid1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Grid Grid1;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user