InitBasfTcc11

This commit is contained in:
2024-05-08 16:27:28 +08:00
commit f1000143a0
3754 changed files with 382456 additions and 0 deletions
@@ -0,0 +1,89 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="LogList.aspx.cs" Inherits="FineUIPro.Web.common.SysManage.LogList" %>
<!DOCTYPE html>
<html>
<head id="Head1" runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<link href="../../res/css/common.css" rel="stylesheet" type="text/css" />
</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="LogId" AllowCellEditing="true" ClicksToEdit="2" DataIDField="LogId"
AllowSorting="true" SortField="OperationTime" SortDirection="DESC" OnSort="Grid1_Sort"
AllowPaging="true" IsDatabasePaging="true" PageSize="15" OnPageIndexChange="Grid1_PageIndexChange">
<Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server">
<Items>
<f:DropDownList ID="drpProject" runat="server" Label="操作项目" EnableEdit="true"
Width="240px" LabelWidth="80px" >
</f:DropDownList>
<f:TextBox ID="txtUserName" runat="server" Label="操作人员"
Width="160px" LabelWidth="80px">
</f:TextBox>
<f:DatePicker runat="server" Label="操作时间" ID="txtStartDate" LabelWidth="75px" Width="175px">
</f:DatePicker>
<f:DatePicker runat="server" Label="至" ID="txtEndDate" LabelWidth="20px" Width="120px">
</f:DatePicker>
<f:Button ID="btnQuery" ToolTip="查询" Icon="SystemSearch"
EnablePostBack="true" OnClick="btnQuery_Click" runat="server" >
</f:Button>
<f:ToolbarFill ID="ToolbarFill1" runat="server">
</f:ToolbarFill>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:TemplateField Width="50px" HeaderText="序号">
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="200px" ColumnID="ProjectName" DataField="ProjectName" SortField="ProjectName"
FieldType="String" HeaderText="操作项目" EnableFilter="true" HeaderTextAlign="Center"
TextAlign="Left">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="UserName" DataField="UserName" SortField="UserName"
FieldType="String" HeaderText="操作人员" EnableFilter="true" HeaderTextAlign="Center"
TextAlign="Center">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="OperationTime" DataField="OperationTime" SortField="OperationTime"
FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="操作时间"
HeaderTextAlign="Center" TextAlign="Center" EnableFilter="true">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="Ip" DataField="Ip" SortField="Ip" FieldType="String"
HeaderTextAlign="Center" TextAlign="Left" HeaderText="IP地址">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="HostName" DataField="HostName" SortField="HostName"
HeaderTextAlign="Center" TextAlign="Left" FieldType="String" HeaderText="主机名">
</f:RenderField>
<f:RenderField Width="250px" ColumnID="OperationLog" DataField="OperationLog" SortField="OperationLog"
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="每页记录数:">
</f:ToolbarText>
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true"
OnSelectedIndexChanged="ddlPageSize_SelectedIndexChanged">
<f:ListItem Text="10" Value="15" />
<f:ListItem Text="15" Value="20" />
<f:ListItem Text="20" Value="25" />
<f:ListItem Text="25" Value="30" />
</f:DropDownList>
</PageItems>
</f:Grid>
</Items>
</f:Panel>
</form>
</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;
using System.Data.SqlClient;
using BLL;
using System.Data;
namespace FineUIPro.Web.common.SysManage
{
public partial class LogList : PageBase
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BLL.Base_ProjectService.InitProjectDropDownList(drpProject, true, CurrUser.UserId, null, CurrUser.LoginProjectArea, Resources.Lan.PleaseSelect);
BindGrid();
}
}
#region BindGrid
private void BindGrid()
{
string projectIds = BLL.Base_ProjectService.GetStrProjectIds(this.CurrUser.UserId, null);
string strSql = @"select o.LogId, o.OperationTime,o.Ip,o.HostName,u.UserName,p.ProjectName,
(o.ButtonName+menu.MenuName) AS OperationLog
from dbo.Sys_Log o
left join Sys_User u on u.UserId=o.UserId
left join Base_Project p on p.ProjectId=o.ProjectId
LEFT JOIN dbo.Sys_Menu menu ON menu.MenuId=o.MenuId
where 1=1";
if (this.GetLanguage == "en-US")
{
strSql = @"select o.LogId, o.OperationTime,o.Ip,o.HostName,u.UserName,p.ProjectName,
((SELECT TOP 1 b.ButtonEnName FROM dbo.Sys_ButtonToMenu b WHERE b.MenuId=o.MenuId AND b.ButtonName=o.ButtonName)
+menu.MenuEnName) AS OperationLog
from dbo.Sys_Log o
left join Sys_User u on u.UserId=o.UserId
left join Base_Project p on p.ProjectId=o.ProjectId
LEFT JOIN dbo.Sys_Menu menu ON menu.MenuId=o.MenuId
where 1=1";
}
List<SqlParameter> listStr = new List<SqlParameter>();
if (drpProject.SelectedValue != BLL.Const._Null)
{
strSql += " AND o.ProjectId = @ProjectId";
listStr.Add(new SqlParameter("@ProjectId", this.drpProject.SelectedValue));
}
else
{
strSql += " AND (CHARINDEX(o.ProjectId,@ProjectId)>0 OR o.ProjectId is null) ";
listStr.Add(new SqlParameter("@ProjectId", projectIds));
}
if (!string.IsNullOrEmpty(this.txtUserName.Text.Trim()))
{
strSql += " AND u.UserName LIKE @UserName";
listStr.Add(new SqlParameter("@UserName", "%" + this.txtUserName.Text.Trim() + "%"));
}
if (!string.IsNullOrEmpty(this.txtStartDate.Text.Trim()))
{
strSql += " AND o.OperationTime >= @OperationTime";
listStr.Add(new SqlParameter("@OperationTime", Convert.ToDateTime(txtStartDate.Text.Trim())));
}
if (!string.IsNullOrEmpty(this.txtEndDate.Text.Trim()))
{
strSql += " AND o.OperationTime <= @OperationTime";
listStr.Add(new SqlParameter("@OperationTime", Convert.ToDateTime(txtEndDate.Text.Trim())));
}
strSql += " order by o.OperationTime desc ,o.ProjectId";
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
Grid1.RecordCount = tb.Rows.Count;
var table = this.GetPagedDataTable(Grid1, tb);
Grid1.DataSource = table;
Grid1.DataBind();
}
/// <summary>
/// 查询
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnQuery_Click(object sender, EventArgs e)
{
this.BindGrid();
}
#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,159 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.common.SysManage {
public partial class LogList {
/// <summary>
/// Head1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlHead Head1;
/// <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>
/// drpProject 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpProject;
/// <summary>
/// txtUserName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtUserName;
/// <summary>
/// txtStartDate 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtStartDate;
/// <summary>
/// txtEndDate 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtEndDate;
/// <summary>
/// btnQuery 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnQuery;
/// <summary>
/// ToolbarFill1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarFill ToolbarFill1;
/// <summary>
/// Label1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label Label1;
/// <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,100 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="RoleList.aspx.cs" Inherits="FineUIPro.Web.common.SysManage.RoleList" %>
<!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>
<link href="../../res/css/common.css" rel="stylesheet" type="text/css" />
</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="true" Title="角色管理" EnableCollapse="true"
runat="server" BoxFlex="1" DataKeyNames="RoleId" AllowCellEditing="true" EnableColumnLines="true"
ClicksToEdit="2" DataIDField="RoleId" AllowSorting="true" SortField="RoleName"
SortDirection="ASC" 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:TextBox ID="txtRoleName" runat="server" Label="角色名称" EmptyText="输入查询条件"
Width="250px" LabelWidth="80px">
</f:TextBox>
<f:Button ID="btnQuery" ToolTip="查询" Icon="SystemSearch"
EnablePostBack="true" OnClick="btnQuery_Click" runat="server" >
</f:Button>
<f:ToolbarFill ID="ToolbarFill1" runat="server">
</f:ToolbarFill>
<f:Button ID="btnNew" ToolTip="新增" Icon="Add" EnablePostBack="true"
runat="server" OnClick="btnNew_Click">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:TemplateField Width="50px" HeaderText="序号" HeaderTextAlign="Center" TextAlign="Center">
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="300px" ColumnID="RoleName" DataField="RoleName"
SortField="RoleName" FieldType="String" HeaderText="角色名称" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:CheckBoxField Width="120px" RenderAsStaticField="true" TextAlign="Center" DataField="IsAuditFlow" HeaderText="是否参与审批" />
<f:RenderField Width="350px" ColumnID="Remark" DataField="Remark" SortField="Remark"
FieldType="String" HeaderText="备注" HeaderTextAlign="Center" TextAlign="Center">
</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="每页记录数:">
</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:DropDownList>
</PageItems>
</f:Grid>
</Items>
</f:Panel>
<f:Window ID="Window1" Title="编辑角色" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Self" EnableResize="true" runat="server" OnClose="Window1_Close" IsModal="true"
Width="600px" Height="360px">
</f:Window>
<f:Menu ID="Menu1" runat="server">
<f:MenuButton ID="btnMenuEdit" OnClick="btnMenuEdit_Click" Icon="BulletEdit" EnablePostBack="true"
runat="server" Text="编辑">
</f:MenuButton>
<f:MenuButton ID="btnMenuDelete" OnClick="btnMenuDelete_Click" EnablePostBack="true"
Icon="Delete" ConfirmText="删除选中行?" ConfirmTarget="Top" runat="server"
Text="删除">
</f:MenuButton>
<f:MenuButton ID="btnMenuView" OnClick="btnMenuView_Click" Icon="Find" EnablePostBack="true"
runat="server" Text="查看">
</f:MenuButton>
</f:Menu>
</form>
<script type="text/javascript">
var menuID = '<%= Menu1.ClientID %>';
// 返回false,来阻止浏览器右键菜单
function onRowContextMenu(event, rowId) {
F(menuID).show();
return false;
}
function reloadGrid() {
__doPostBack(null, 'reloadGrid');
}
</script>
</body>
</html>
@@ -0,0 +1,263 @@
namespace FineUIPro.Web.common.SysManage
{
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using BLL;
public partial class RoleList : PageBase
{
/// <summary>
/// 加载页面
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
// 绑定表格
BindGrid();
}
}
#region /
/// <summary>
/// 绑定数据
/// </summary>
private void BindGrid()
{
string strSql = @"SELECT RoleId,RoleName,IsAuditFlow,Remark,RoleType FROM dbo.Sys_Role ORDER BY SortIndex";
DataTable dt = SQLHelper.GetDataTableRunText(strSql, null);
// 2.获取当前分页数据
//var table = this.GetPagedDataTable(Grid1, tb1);
Grid1.RecordCount = dt.Rows.Count;
var table = this.GetPagedDataTable(Grid1, dt);
Grid1.DataSource = table;
Grid1.DataBind();
}
/// <summary>
/// 查询
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnQuery_Click(object sender, EventArgs e)
{
this.BindGrid();
}
#endregion
#region
/// <summary>
/// 增加按钮事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnNew_Click(object sender, EventArgs e)
{
if (CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.RoleMenuId, Const.BtnAdd))
{
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("RoleListEdit.aspx", "新增 - ")));
}
else
{
Alert.ShowInTop("您没有这个权限,请与管理员联系!", MessageBoxIcon.Warning);
return;
}
}
#endregion
#region //
/// <summary>
/// 编辑
/// </summary>
private void EditData()
{
if (GetButtonPower(BLL.Const.BtnModify))
{
if (Grid1.SelectedRowIndexArray.Length == 0)
{
Alert.ShowInParent("请至少选择一条记录!");
return;
}
string Id = Grid1.SelectedRowID;
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("RoleListEdit.aspx?roleId={0}", Id, "编辑 - ")));
}
else
{
ShowNotify("您没有这个权限,请与管理员联系!", MessageBoxIcon.Warning);
}
}
/// <summary>
/// Grid行双击事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
{
EditData();
}
/// <summary>
/// 右键编辑事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnMenuEdit_Click(object sender, EventArgs e)
{
this.EditData();
}
protected void btnMenuView_Click(object sender, EventArgs e)
{
if (GetButtonPower(BLL.Const.BtnSee))
{
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("RoleListView.aspx?userId={0}", Grid1.SelectedRowID, "查看 - ")));
}
else
{
Alert.ShowInTop(Resources.Lan.NoPrivilegePrompt, MessageBoxIcon.Warning);
return;
}
}
/// <summary>
/// 批量删除数据
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnMenuDelete_Click(object sender, EventArgs e)
{
if (GetButtonPower(BLL.Const.BtnDelete))
{
if (Grid1.SelectedRowIndexArray.Length > 0)
{
string strShowNotify = string.Empty;
foreach (int rowIndex in Grid1.SelectedRowIndexArray)
{
string rowID = Grid1.DataKeys[rowIndex][0].ToString();
var role = BLL.Sys_RoleService.GetRole(rowID);
string content = judgementDelete(rowID);
if (role != null)
{
if (role.RoleType == "0")
{
ShowNotify("内置项,不允许删除!", MessageBoxIcon.Warning);
return;
}
else
{
if (string.IsNullOrEmpty(content))
{
BLL.Sys_RoleService.DeleteRole(rowID);
BLL.Sys_LogService.AddLog(Const.System_1, this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.RoleMenuId, Const.BtnDelete, rowID);
}
else
{
strShowNotify += Resources.Lan.Role + "" + role.RoleName + content;
}
}
}
}
BindGrid();
if (!string.IsNullOrEmpty(strShowNotify))
{
Alert.ShowInTop(strShowNotify, MessageBoxIcon.Warning);
}
else
{
ShowNotify(Resources.Lan.DeletedSuccessfully, MessageBoxIcon.Success);
}
}
}
else
{
Alert.ShowInTop(Resources.Lan.NoPrivilegePrompt, MessageBoxIcon.Warning);
return;
}
}
#endregion
#region /
/// <summary>
/// 分页
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
{
Grid1.PageIndex = e.NewPageIndex;
BindGrid();
}
/// <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();
}
/// <summary>
/// 排序
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_Sort(object sender, FineUIPro.GridSortEventArgs e)
{
Grid1.SortDirection = e.SortDirection;
Grid1.SortField = e.SortField;
BindGrid();
}
#endregion
/// <summary>
/// 关闭窗口
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Window1_Close(object sender, EventArgs e)
{
BindGrid();
}
/// <summary>
/// 获取按钮权限
/// </summary>
/// <param name="button"></param>
/// <returns></returns>
private bool GetButtonPower(string button)
{
return BLL.CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.RoleMenuId, button);
}
#region
/// <summary>
/// 判断是否可以删除
/// </summary>
/// <returns></returns>
private string judgementDelete(string id)
{
string content = string.Empty;
if (Funs.DB.Sys_User.FirstOrDefault(x => x.RoleIds.Contains(id)) != null)
{
content = "该角色已在【用户信息】中使用,不能删除!";
}
return content;
}
#endregion
}
}
@@ -0,0 +1,177 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能会导致不正确的行为,并且如果
// 重新生成代码,这些更改将会丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.common.SysManage {
public partial class RoleList {
/// <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>
/// txtRoleName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtRoleName;
/// <summary>
/// btnQuery 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnQuery;
/// <summary>
/// ToolbarFill1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarFill ToolbarFill1;
/// <summary>
/// btnNew 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnNew;
/// <summary>
/// Label1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label Label1;
/// <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;
/// <summary>
/// btnMenuView 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.MenuButton btnMenuView;
}
}
@@ -0,0 +1,52 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="RoleListEdit.aspx.cs" Inherits="FineUIPro.Web.common.SysManage.RoleListEdit" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>编辑角色</title>
<link href="../../res/css/common.css" rel="stylesheet" type="text/css" />
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" AutoSizePanelID="SimpleForm1" runat="server" />
<f:Form ID="SimpleForm1" ShowBorder="false" ShowHeader="false" AutoScroll="true"
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
<Rows>
<f:FormRow>
<Items>
<f:TextBox ID="txtRoleName" runat="server" Label="角色名称" Required="true" ShowRedStar="true">
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:CheckBox ID="chkIsAuditFlow" MarginLeft="40px" runat="server" Text="是否参与审批">
</f:CheckBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:NumberBox ID="numSortIndex" runat="server" Label="排列序号" NoNegative="true" NoDecimal="true"></f:NumberBox>
</Items>
</f:FormRow>
<f:FormRow MarginTop="5px" >
<Items>
<f:TextArea ID="txtRemark" runat="server" Label="备注" ></f:TextArea>
</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="提交数据" ValidateForms="SimpleForm1"
OnClick="btnSave_Click">
</f:Button>
<f:Button ID="btnClose" EnablePostBack="false" Text="关闭" runat="server" Icon="SystemClose">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
</f:Form>
</form>
</body>
</html>
@@ -0,0 +1,118 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using BLL;
namespace FineUIPro.Web.common.SysManage
{
public partial class RoleListEdit : PageBase
{
/// <summary>
/// 角色编辑页面
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
LoadData();
string roleId = Request.Params["roleId"];
if (!string.IsNullOrEmpty(roleId))
{
var role = BLL.Sys_RoleService.GetRole(roleId);
if (role != null)
{
this.txtRoleName.Text = role.RoleName;
if (role.IsAuditFlow == true)
{
chkIsAuditFlow.Checked = true;
}
else
{
chkIsAuditFlow.Checked = false;
}
this.txtRemark.Text = role.Remark;
this.numSortIndex.Text = role.SortIndex != null ? role.SortIndex.Value.ToString() : "";
if (role.RoleType == "0")//如果是内置项,不允许修改
{
this.btnSave.Hidden = true;
}
}
}
}
}
/// <summary>
/// 加载页面
/// </summary>
private void LoadData()
{
btnClose.OnClientClick = ActiveWindow.GetHideReference();
}
/// <summary>
/// 提交按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnSave_Click(object sender, EventArgs e)
{
if (CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.RoleMenuId, Const.BtnSave))
{
string roleId = Request.Params["roleId"];
if (BLL.Sys_RoleService.IsExistRoleName(roleId, this.txtRoleName.Text.Trim()))
{
Alert.ShowInParent("角色名称已存在!");
return;
}
else
{
Model.Sys_Role newRole = new Model.Sys_Role();
newRole.RoleName = this.txtRoleName.Text.Trim();
newRole.RoleType = "1";
if(this.numSortIndex.Text!=string.Empty)
{
newRole.SortIndex = Convert.ToInt32(this.numSortIndex.Text);
}
newRole.Remark = this.txtRemark.Text.Trim();
if (this.chkIsAuditFlow.Checked)
{
newRole.IsAuditFlow = true;
}
else
{
newRole.IsAuditFlow = false;
}
if (string.IsNullOrEmpty(roleId))
{
string newKeyID = SQLHelper.GetNewID(typeof(Model.Sys_Role));
newRole.RoleId = newKeyID;
BLL.Sys_RoleService.AddRole(newRole);
BLL.Sys_LogService.AddLog(Const.System_1, this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.RoleMenuId, Const.BtnAdd, newKeyID);
}
else
{
newRole.RoleId = roleId;
BLL.Sys_RoleService.UpdateRole(newRole);
BLL.Sys_LogService.AddLog(Const.System_1, this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.RoleMenuId, Const.BtnModify, roleId);
}
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
}
}
else
{
ShowNotify("您没有这个权限,请与管理员联系!");
}
}
}
}
@@ -0,0 +1,105 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.common.SysManage {
public partial class RoleListEdit {
/// <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>
/// txtRoleName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtRoleName;
/// <summary>
/// chkIsAuditFlow 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.CheckBox chkIsAuditFlow;
/// <summary>
/// numSortIndex 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.NumberBox numSortIndex;
/// <summary>
/// txtRemark 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextArea txtRemark;
/// <summary>
/// Toolbar1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// btnSave 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSave;
/// <summary>
/// btnClose 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnClose;
}
}
@@ -0,0 +1,73 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="RolePower.aspx.cs" Inherits="FineUIPro.Web.common.SysManage.RolePower" %>
<!DOCTYPE html>
<html>
<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" ShowBorder="false" ShowHeader="false" Layout="Region">
<Items>
<f:Panel runat="server" ID="panelLeftRegion" RegionPosition="Left" RegionSplit="true"
EnableCollapse="true" Width="220px" Title="角色" ShowBorder="true" Layout="VBox"
ShowHeader="true" AutoScroll="true" BodyPadding="5px" IconFont="ArrowCircleLeft">
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Top" runat="server" ToolbarAlign="Left">
<Items>
<f:TextBox ID="txtRoleName" runat="server" Label="角色" EmptyText="输入查询条件" AutoPostBack="true"
OnTextChanged="TextBox_TextChanged" Width="180px" LabelWidth="80px" LabelAlign="Right">
</f:TextBox>
</Items>
</f:Toolbar>
</Toolbars>
<Items>
<f:Tree ID="tvRole" ShowHeader="false" OnNodeCommand="tvRole_NodeCommand" runat="server"
ShowBorder="false" EnableCollapse="true" EnableSingleClickExpand="true"
AutoLeafIdentification="true" EnableSingleExpand="true" EnableTextSelection="true">
</f:Tree>
</Items>
</f:Panel>
<f:Panel runat="server" ID="panelCenterRegion" RegionPosition="Center" ShowBorder="true"
Layout="VBox" ShowHeader="false" BodyPadding="5px" IconFont="PlusCircle" Title="单位信息"
TitleToolTip="单位信息" AutoScroll="true">
<Items>
<f:Grid ID="Grid1" IsFluid="true" CssClass="blockpanel" ShowBorder="true" ShowHeader="false" Title="角色授权"
runat="server" EnableCollapse="false" DataKeyNames="MenuId,SuperMenu" OnRowDataBound="Grid1_RowDataBound"
EnableTree="true" ExpandAllTreeNodes="true" TreeColumn="MenuName" DataIDField="MenuId" DataParentIDField="SuperMenu">
<Toolbars>
<f:Toolbar ID="Toolbar3" Position="Top" ToolbarAlign="Right" runat="server">
<Items>
<f:DropDownList ID="drpMenuModule" Label="模块" runat="server" Width="250px" LabelWidth="80px" EmptyText="请选择角色授权模块"></f:DropDownList>
<f:Button ID="btnQuery" ToolTip="查询" Icon="SystemSearch"
EnablePostBack="true" OnClick="btnQuery_Click" runat="server">
</f:Button>
<f:ToolbarFill ID="ToolbarFill1" runat="server">
</f:ToolbarFill>
<f:Button ID="btnSave" ToolTip="提交" Icon="SystemSave" EnablePostBack="true"
runat="server" OnClick="btnSave_Click">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:RowNumberField />
<f:BoundField ColumnID="MenuName" ExpandUnusedSpace="true" DataField="MenuName" HeaderText="菜单名称" />
<f:TemplateField ColumnID="ButtonPower" Width="750px" HeaderText="按钮权限" HeaderTextAlign="Left" TextAlign="Left">
<ItemTemplate>
<asp:CheckBoxList runat="server" RepeatLayout="Flow" RepeatDirection="Horizontal"
ID="cblButtonPower">
</asp:CheckBoxList>
</ItemTemplate>
</f:TemplateField>
</Columns>
</f:Grid>
</Items>
</f:Panel>
</Items>
</f:Panel>
</form>
</body>
</html>
@@ -0,0 +1,279 @@
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using BLL;
namespace FineUIPro.Web.common.SysManage
{
public partial class RolePower : PageBase
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
string lan = string.Empty;
if (this.GetLanguage == "en-US")
{
lan = "en";
}
else
{
lan = "zh";
}
var module = from x in BLL.DropListService.GetSystemList(lan) where x.Value != Const.System_4 select x;
drpMenuModule.DataTextField = "Text";
drpMenuModule.DataValueField = "Value";
drpMenuModule.DataSource = module;
drpMenuModule.DataBind();
Funs.FineUIPleaseSelect(drpMenuModule);
InitTreeMenu();
//BindGrid();
}
}
#region BindGrid
private void BindGrid()
{
string strSql = @"SELECT MenuId,MenuName,SuperMenu FROM dbo.Sys_Menu
WHERE MenuModule=@MenuModule
ORDER BY MenuModule, SortIndex";
if (this.GetLanguage == "en-US")
{
strSql = @"SELECT MenuId,MenuEnName AS MenuName,SuperMenu FROM dbo.Sys_Menu
WHERE MenuModule=@MenuModule
ORDER BY MenuModule, SortIndex";
}
List<SqlParameter> parms = new List<SqlParameter>();
parms.Add(new SqlParameter("@MenuModule", this.drpMenuModule.SelectedValue));
SqlParameter[] parameter = parms.ToArray();
DataTable dt = SQLHelper.GetDataTableRunText(strSql, parameter);
Grid1.DataSource = dt;
Grid1.DataBind();
}
#endregion
/// <summary>
/// 查询
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnQuery_Click(object sender, EventArgs e)
{
if (tvRole.SelectedNode == null || tvRole.SelectedNodeID == "0")
{
Alert.ShowInTop("请选择角色!", MessageBoxIcon.Warning);
return;
}
if (drpMenuModule.SelectedValue == Const._Null)
{
Alert.ShowInTop("请选择授权模块!", MessageBoxIcon.Warning);
return;
}
this.BindGrid();
}
#region
/// <summary>
/// 增加按钮事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnSave_Click(object sender, EventArgs e)
{
if (CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.RolePowerMenuId, Const.BtnSave))
{
if (tvRole.SelectedNode == null || tvRole.SelectedNodeID == "0")
{
Alert.ShowInTop("请选择角色!", MessageBoxIcon.Warning);
return;
}
if (drpMenuModule.SelectedValue == Const._Null)
{
Alert.ShowInTop("请选择授权模块!", MessageBoxIcon.Warning);
return;
}
Model.HJGLDB db = Funs.DB;
var power = from x in db.Sys_RolePower
join y in db.Sys_Menu on x.MenuId equals y.MenuId
where x.RoleId == tvRole.SelectedNodeID && y.MenuModule == drpMenuModule.SelectedValue
select x;
db.Sys_RolePower.DeleteAllOnSubmit(power);
db.SubmitChanges();
for (int i = 0; i < this.Grid1.Rows.Count; i++)
{
string buttonToMenuIds = string.Empty;
System.Web.UI.WebControls.CheckBoxList cblButtonPower = (System.Web.UI.WebControls.CheckBoxList)(this.Grid1.Rows[i].FindControl("cblButtonPower"));
if (cblButtonPower.SelectedItem != null)
{
foreach (System.Web.UI.WebControls.ListItem item in cblButtonPower.Items)
{
if (item.Selected)
{
buttonToMenuIds += item.Value + ",";
}
}
if (!string.IsNullOrEmpty(buttonToMenuIds))
{
buttonToMenuIds = buttonToMenuIds.Substring(0, buttonToMenuIds.LastIndexOf(","));
}
string newKeyID = SQLHelper.GetNewID(typeof(Model.Sys_RolePower));
Model.Sys_RolePower newPower = new Model.Sys_RolePower();
newPower.RolePowerId = newKeyID;
newPower.RoleId = tvRole.SelectedNodeID;
newPower.MenuId = Grid1.DataKeys[i][0].ToString();
newPower.ButtonToMenus = buttonToMenuIds;
//newPower.ProjectId = this.CurrUser.LoginProjectId;
db.Sys_RolePower.InsertOnSubmit(newPower);
db.SubmitChanges();
string supMenuId = Grid1.DataKeys[i][1].ToString();
InsertSuperMenu(supMenuId, tvRole.SelectedNodeID);
}
}
ShowNotify("角色权限设置成功!");
BLL.Sys_LogService.AddLog(Const.System_1, this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.RolePowerMenuId, Const.BtnSave, "");
}
else
{
Alert.ShowInTop(Resources.Lan.NoPrivilegePrompt, MessageBoxIcon.Warning);
return;
}
}
#endregion
protected void Grid1_RowDataBound(object sender, GridRowEventArgs e)
{
System.Web.UI.WebControls.CheckBoxList cblButtonPower = (System.Web.UI.WebControls.CheckBoxList)(this.Grid1.Rows[e.RowIndex].FindControl("cblButtonPower"));
string menuId = e.Row.RowID;
var menu = from x in Funs.DB.Sys_Menu where x.MenuId == menuId select x;
if (menu != null && menu.Count() > 0)
{
var b = from x in Funs.DB.Sys_ButtonToMenu where x.MenuId == menu.First().MenuId orderby x.SortIndex select x;
if (b != null && b.Count() > 0)
{
cblButtonPower.DataTextField = "ButtonName";
if (this.GetLanguage == "en-US")
{
cblButtonPower.DataTextField = "ButtonEnName";
}
cblButtonPower.DataValueField = "ButtonToMenuId";
cblButtonPower.DataSource = b.ToList();
cblButtonPower.DataBind();
}
if (tvRole.SelectedNode != null && tvRole.SelectedNodeID != "0")
{
var power = from x in Funs.DB.Sys_RolePower where x.MenuId == menu.First().MenuId
&& x.RoleId == tvRole.SelectedNodeID select x;
if (power != null && power.Count() > 0)
{
for (int i = 0; i < cblButtonPower.Items.Count; i++)
{
if (power.First().ButtonToMenus.Contains(cblButtonPower.Items[i].Value))
{
cblButtonPower.Items[i].Selected = true;
}
}
}
}
}
}
protected void tvRole_NodeCommand(object sender, EventArgs e)
{
this.InitTreeMenu();
}
protected void TextBox_TextChanged(object sender, EventArgs e)
{
this.BindGrid();
}
private void InitTreeMenu()
{
this.tvRole.Nodes.Clear();
TreeNode rootRole = new TreeNode();
rootRole.Text = "角色";
if (this.GetLanguage == "en-US")
{
rootRole.Text = "Roles";
}
rootRole.NodeID = "0";
rootRole.Expanded = true;
this.tvRole.Nodes.Add(rootRole);
BoundTree(rootRole.Nodes);
}
/// <summary>
/// 添加项目
/// </summary>
/// <param name="nodes"></param>
/// <param name="parentId"></param>
/// <param name="type"></param>
private void BoundTree(TreeNodeCollection nodes)
{
List<Model.Sys_Role> roles = BLL.Sys_RoleService.GetRoleList();
if (!string.IsNullOrEmpty(this.txtRoleName.Text))
{
roles = roles.Where(e => e.RoleName.Contains(this.txtRoleName.Text.Trim())).ToList();
}
if (roles.Count() > 0)
{
TreeNode tn = null;
foreach (var q in roles)
{
tn = new TreeNode();
tn.Text = q.RoleName;
tn.NodeID = q.RoleId;
tn.ToolTip = q.Remark;
tn.EnableClickEvent = true;
nodes.Add(tn);
}
}
}
private void InsertSuperMenu(string supMenuId,string roleId)
{
Model.HJGLDB db = Funs.DB;
var menuPower = from x in db.Sys_RolePower where x.RoleId==roleId && x.MenuId == supMenuId select x;
if (menuPower.Count() == 0 && supMenuId != "0")
{
string newKeyID = SQLHelper.GetNewID(typeof(Model.Sys_RolePower));
Model.Sys_RolePower newPower = new Model.Sys_RolePower();
newPower.RolePowerId = newKeyID;
newPower.RoleId = roleId;
newPower.MenuId = supMenuId;
//newPower.ProjectId = this.CurrUser.LoginProjectId;
db.Sys_RolePower.InsertOnSubmit(newPower);
db.SubmitChanges();
var menu = from x in db.Sys_Menu where x.MenuId == supMenuId select x;
if (menu.Count() > 0)
{
InsertSuperMenu(menu.First().SuperMenu, roleId);
}
}
}
}
}
@@ -0,0 +1,150 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.common.SysManage {
public partial class RolePower {
/// <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>
/// panelLeftRegion 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel panelLeftRegion;
/// <summary>
/// Toolbar1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// txtRoleName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtRoleName;
/// <summary>
/// tvRole 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Tree tvRole;
/// <summary>
/// panelCenterRegion 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel panelCenterRegion;
/// <summary>
/// Grid1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid Grid1;
/// <summary>
/// Toolbar3 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar3;
/// <summary>
/// drpMenuModule 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpMenuModule;
/// <summary>
/// btnQuery 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnQuery;
/// <summary>
/// ToolbarFill1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarFill ToolbarFill1;
/// <summary>
/// btnSave 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSave;
/// <summary>
/// cblButtonPower 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.CheckBoxList cblButtonPower;
}
}
@@ -0,0 +1,109 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="UpdatePassword.aspx.cs" Inherits="FineUIPro.Web.common.SysManage.UpdatePassword" %>
<!DOCTYPE html>
<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="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="UserId" AllowCellEditing="true" EnableColumnLines="true"
ClicksToEdit="2" DataIDField="UserId" AllowSorting="true" SortField="UnitName,UserCode"
SortDirection="ASC" OnSort="Grid1_Sort"
AllowPaging="true" IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange"
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick" >
<Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server">
<Items>
<f:TextBox ID="txtUserName" runat="server" Label="姓名" EmptyText="输入查询条件"
Width="250px" LabelWidth="80px">
</f:TextBox>
<f:DropDownList ID="drpUnit" runat="server" Label="单位" EnableEdit="true"
Width="250px" LabelWidth="80px" >
</f:DropDownList>
<f:Button ID="btnQuery" ToolTip="查询" Icon="SystemSearch"
EnablePostBack="true" OnClick="btnQuery_Click" runat="server" >
</f:Button>
<f:ToolbarFill ID="ToolbarFill1" runat="server">
</f:ToolbarFill>
<f:Button ID="btnEdit" Text="编辑" ToolTip="编辑修改密码" Icon="Pencil" runat="server" OnClick="btnEdit_Click">
</f:Button>
<f:Button ID="btnRefresh" Text="重置密码" Icon="Delete" ConfirmText="确定重置当前用户的初始密码?" OnClick="btnRefresh_Click"
runat="server">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:TemplateField Width="50px" HeaderText="序号" HeaderTextAlign="Center" TextAlign="Center">
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="120px" ColumnID="Account" DataField="Account"
SortField="Account" FieldType="String" HeaderText="账号" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="UserName" DataField="UserName" EnableFilter="true"
SortField="UserName" FieldType="String" HeaderText="姓名" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="UserCode" DataField="UserCode"
SortField="UserCode" FieldType="String" HeaderText="编号" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:TemplateField ColumnID="RoleName" Width="200px" HeaderText="所属角色" HeaderTextAlign="Center" TextAlign="Center">
<ItemTemplate>
<asp:Label ID="lbRoleName" runat="server" Text='<%# ConvertRoleName(Eval("RoleIds")) %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="200px" ColumnID="UnitName" DataField="UnitName" EnableFilter="true"
SortField="UnitName" FieldType="String" HeaderText="所属单位" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="180px" ColumnID="DepartName" DataField="DepartName"
SortField="DepartName" FieldType="String" HeaderText="所属部门" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderCheckField Width="80px" ColumnID="IsPost" DataField="IsPost" HeaderText="是否在岗" EnableColumnEdit="false" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList3" runat="server">
<f:ListItem Text="等于" Value="equal" Selected="true"/>
</f:DropDownList>
</Operator>
</Filter>
</f:RenderCheckField>
</Columns>
<PageItems>
<f:ToolbarSeparator ID="ToolbarSeparator1" runat="server">
</f:ToolbarSeparator>
<f:ToolbarText ID="ToolbarText1" runat="server" Text="每页记录数:">
</f:ToolbarText>
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true"
OnSelectedIndexChanged="ddlPageSize_SelectedIndexChanged">
<f:ListItem Text="10" Value="10" />
<f:ListItem Text="15" Value="15" />
<f:ListItem Text="20" Value="20" />
<f:ListItem Text="25" Value="25" />
</f:DropDownList>
</PageItems>
</f:Grid>
</Items>
</f:Panel>
<f:Window ID="Window1" Title="修改密码" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Self" EnableResize="true" runat="server" OnClose="Window1_Close" IsModal="true"
Width="500px" Height="350px">
</f:Window>
</form>
</body>
</html>
@@ -0,0 +1,210 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Data;
using System.Data.SqlClient;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using BLL;
namespace FineUIPro.Web.common.SysManage
{
public partial class UpdatePassword : PageBase
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BLL.Base_UnitService.InitUnitDropDownList(drpUnit, true, null,Resources.Lan.PleaseSelect);
ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
if (this.CurrUser.UserId != Const.GlyId)
{
txtUserName.Hidden = true;
drpUnit.Hidden = true;
btnQuery.Hidden = true;
}
// 绑定表格
BindGrid();
}
}
/// <summary>
/// 绑定数据
/// </summary>
private void BindGrid()
{
string strSql = @"SELECT u.UserId,u.Account,u.UserCode,u.UserName,u.IsPost,u.RoleIds,un.UnitName
FROM dbo.Sys_User u
LEFT JOIN dbo.Base_Unit un ON un.UnitId = u.UnitId
where 1=1";
List<SqlParameter> parms = new List<SqlParameter>();
if (this.CurrUser.Account != BLL.Const.Gly)
{
strSql += " and u.Account = @Account";
}
parms.Add(new SqlParameter("@Account", this.CurrUser.Account));
if (!string.IsNullOrEmpty(this.txtUserName.Text))
{
strSql += " and u.UserName LIKE @UserName";
parms.Add(new SqlParameter("@UserName", "%" + this.txtUserName.Text.Trim() + "%"));
}
if (this.drpUnit.SelectedValue != Const._Null)
{
strSql += " and u.UnitId = @UnitId";
parms.Add(new SqlParameter("@UnitId", this.drpUnit.SelectedValue));
}
SqlParameter[] parameter = parms.ToArray();
DataTable dt = SQLHelper.GetDataTableRunText(strSql, parameter);
// 2.获取当前分页数据
Grid1.RecordCount = dt.Rows.Count;
var table = this.GetPagedDataTable(Grid1, dt);
Grid1.DataSource = table;
Grid1.DataBind();
}
/// <summary>
/// 查询
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnQuery_Click(object sender, EventArgs e)
{
this.BindGrid();
}
#region
/// <summary>
/// 分页
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
{
Grid1.PageIndex = e.NewPageIndex;
BindGrid();
}
/// <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();
}
#endregion
/// <summary>
/// 排序
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_Sort(object sender, FineUIPro.GridSortEventArgs e)
{
Grid1.SortDirection = e.SortDirection;
Grid1.SortField = e.SortField;
BindGrid();
}
/// <summary>
/// 关闭窗口
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Window1_Close(object sender, EventArgs e)
{
BindGrid();
}
#region
/// <summary>
/// 批量删除数据
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnRefresh_Click(object sender, EventArgs e)
{
if (Grid1.SelectedRowIndexArray.Length > 0)
{
foreach (int rowIndex in Grid1.SelectedRowIndexArray)
{
string rowID = Grid1.DataKeys[rowIndex][0].ToString();
BLL.Sys_UserService.UpdatePassword(rowID, "abc.1234");
}
BindGrid();
//BLL.Sys_LogService.AddLog(BLL.Const.System_1, this.CurrUser.LoginProjectId, this.CurrUser.UserId, "重置密码");
ShowNotify("密码已重置为初始密码!");
}
else
{
ShowNotify("请至少选中一行!");
}
}
#endregion
/// <summary>
/// 编辑
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnEdit_Click(object sender, EventArgs e)
{
if (Grid1.SelectedRowIndexArray.Length == 0)
{
Alert.ShowInParent("请至少选择一条记录!");
return;
}
string Id = Grid1.SelectedRowID;
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("UpdatePasswordEdit.aspx?userId={0}", Id, "编辑 - ")));
}
/// <summary>
/// Grid行双击事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
{
btnEdit_Click(null, null);
}
#region
/// <summary>
/// 转换热处理类型
/// </summary>
/// <param name="pt"></param>
/// <returns></returns>
protected string ConvertRoleName(object roleIds)
{
string roleNames = string.Empty;
if (roleIds != null)
{
string[] roles = roleIds.ToString().Split('|');
foreach (string r in roles)
{
var q = BLL.Sys_RoleService.GetRole(r);
if (q != null)
{
roleNames = roleNames + q.RoleName + ",";
}
}
}
if (roleNames.Length > 0)
{
roleNames = roleNames.Substring(0, roleNames.Length - 1);
}
return roleNames;
}
#endregion
}
}
@@ -0,0 +1,186 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.common.SysManage {
public partial class UpdatePassword {
/// <summary>
/// Head1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlHead Head1;
/// <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>
/// txtUserName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtUserName;
/// <summary>
/// drpUnit 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpUnit;
/// <summary>
/// btnQuery 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnQuery;
/// <summary>
/// ToolbarFill1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarFill ToolbarFill1;
/// <summary>
/// btnEdit 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnEdit;
/// <summary>
/// btnRefresh 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnRefresh;
/// <summary>
/// Label1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label Label1;
/// <summary>
/// lbRoleName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label lbRoleName;
/// <summary>
/// DropDownList3 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropDownList3;
/// <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;
}
}
@@ -0,0 +1,64 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="UpdatePasswordEdit.aspx.cs" Inherits="FineUIPro.Web.common.SysManage.UpdatePasswordEdit" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>修改密码</title>
<link href="../../res/css/common.css" rel="stylesheet" type="text/css" />
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" AutoSizePanelID="SimpleForm1" runat="server" />
<f:Form ID="SimpleForm1" ShowBorder="false" ShowHeader="false" AutoScroll="true"
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
<Rows>
<f:FormRow>
<Items>
<f:Label ID="txtUserName" runat="server" Label="姓名">
</f:Label>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:Label ID="txtAccount" runat="server" Label="账号">
</f:Label>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtOldPassword" Label="原密码" TextMode="Password" FocusOnPageLoad="true"
EmptyText="输入原密码" Required="true" ShowRedStar="true" runat="server">
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtNewPassword" Label="新密码" TextMode="Password" Regex="^(?![a-zA-Z0-9]+$)(?![^a-zA-Z/D]+$)(?![^0-9/D]+$).{8,20}$"
RegexMessage="密码是由不小于8位的字母数字和特殊字符组成!" EmptyText="输入新密码" Required="true" ShowRedStar="true" runat="server">
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtConfirmPassword" Label="确认密码" TextMode="Password"
EmptyText="再次输入新密码" Required="true" ShowRedStar="true" runat="server" EnableBlurEvent="true" OnBlur="txtConfirmPassword_Blur">
</f:TextBox>
</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="保存数据" ValidateForms="SimpleForm1"
OnClick="btnSave_Click">
</f:Button>
<f:Button ID="btnClose" EnablePostBack="false" Text="关闭" runat="server" Icon="SystemClose">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
</f:Form>
</form>
</body>
</html>
@@ -0,0 +1,125 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using BLL;
namespace FineUIPro.Web.common.SysManage
{
public partial class UpdatePasswordEdit : PageBase
{
#region
/// <summary>
/// 用户主键
/// </summary>
public string UserId
{
get
{
return (string)ViewState["UserId"];
}
set
{
ViewState["UserId"] = value;
}
}
#endregion
/// <summary>
/// 修改密码页面
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
LoadData();
this.UserId = Request.Params["userId"];
if (this.CurrUser.Account == BLL.Const.Gly)
{
this.txtOldPassword.Hidden = true;
this.txtNewPassword.Focus();
}
if (!string.IsNullOrEmpty(this.UserId))
{
var user = BLL.Sys_UserService.GetUsersByUserId(this.UserId);
if (user != null)
{
this.txtUserName.Text = user.UserName;
this.txtAccount.Text = user.Account;
}
}
}
}
/// <summary>
/// 加载页面
/// </summary>
private void LoadData()
{
btnClose.OnClientClick = ActiveWindow.GetHideReference();
}
/// <summary>
/// 保存按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnSave_Click(object sender, EventArgs e)
{
if (BLL.CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.UpdatePasswordMenuId, Const.BtnSave))
{
var user = BLL.Sys_UserService.GetUsersByUserId(this.UserId);
if (user != null)
{
if (this.CurrUser.Account != BLL.Const.Gly)
{
if (string.IsNullOrEmpty(this.txtOldPassword.Text))
{
Alert.ShowInParent("请输入原密码!");
return;
}
if (user.Password != BLL.Sys_UserService.EncryptionPassword(this.txtOldPassword.Text))
{
Alert.ShowInParent("原密码输入不正确!");
return;
}
}
if (this.txtNewPassword.Text != this.txtConfirmPassword.Text)
{
Alert.ShowInParent("密码与确认密码输入不一致!");
return;
}
BLL.Sys_UserService.UpdatePassword(user.UserId, this.txtNewPassword.Text);
BLL.Sys_LogService.AddLog(Const.System_1, this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.UpdatePasswordMenuId, Const.BtnSave, this.UserId);
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
}
}
else
{
Alert.ShowInTop(Resources.Lan.NoPrivilegePrompt, MessageBoxIcon.Warning);
return;
}
}
/// <summary>
/// 确认密码
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void txtConfirmPassword_Blur(object sender, EventArgs e)
{
if (this.txtNewPassword.Text != this.txtConfirmPassword.Text)
{
Alert.ShowInParent("密码与确认密码输入不一致!");
return;
}
}
}
}
@@ -0,0 +1,114 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.common.SysManage {
public partial class UpdatePasswordEdit {
/// <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>
/// txtUserName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label txtUserName;
/// <summary>
/// txtAccount 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label txtAccount;
/// <summary>
/// txtOldPassword 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtOldPassword;
/// <summary>
/// txtNewPassword 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtNewPassword;
/// <summary>
/// txtConfirmPassword 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtConfirmPassword;
/// <summary>
/// Toolbar1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// btnSave 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSave;
/// <summary>
/// btnClose 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnClose;
}
}
@@ -0,0 +1,131 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="UserList.aspx.cs" Inherits="FineUIPro.Web.common.SysManage.UserList" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>用户信息</title>
<link href="../../res/css/common.css" rel="stylesheet" type="text/css" />
</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="UserId" AllowCellEditing="true" EnableColumnLines="true"
ClicksToEdit="2" DataIDField="UserId" AllowSorting="true" SortField="UnitName,UserCode"
SortDirection="ASC" OnSort="Grid1_Sort"
AllowPaging="true" IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange"
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick" >
<Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server">
<Items>
<f:TextBox ID="txtUserName" runat="server" Label="姓名" EmptyText="输入查询条件"
Width="250px" LabelWidth="80px">
</f:TextBox>
<f:DropDownList ID="drpUnit" runat="server" Label="单位" EnableEdit="true"
Width="250px" LabelWidth="80px" >
</f:DropDownList>
<f:DropDownList ID="drpIsPost" runat="server" Label="是否在岗" EnableEdit="true"
Width="250px" LabelWidth="80px" >
</f:DropDownList>
<f:Button ID="btnQuery" ToolTip="查询" Icon="SystemSearch"
EnablePostBack="true" OnClick="btnQuery_Click" runat="server" >
</f:Button>
<f:ToolbarFill ID="ToolbarFill1" runat="server">
</f:ToolbarFill>
<f:Button ID="btnNew" ToolTip="新增" Icon="Add" EnablePostBack="true"
runat="server" OnClick="btnNew_Click">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:TemplateField Width="50px" HeaderText="序号" HeaderTextAlign="Center" TextAlign="Center">
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="120px" ColumnID="Account" DataField="Account"
SortField="Account" FieldType="String" HeaderText="账号" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="UserName" DataField="UserName"
SortField="UserName" FieldType="String" HeaderText="姓名" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="UserCode" DataField="UserCode"
SortField="UserCode" FieldType="String" HeaderText="编号" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:TemplateField ColumnID="RoleName" Width="200px" HeaderText="所属角色" HeaderTextAlign="Center" TextAlign="Center">
<ItemTemplate>
<asp:Label ID="lbRoleName" runat="server" Text='<%# ConvertRoleName(Eval("RoleName")) %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="200px" ColumnID="UnitName" DataField="UnitName"
SortField="UnitName" FieldType="String" HeaderText="所属单位" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="180px" ColumnID="Email" DataField="Email"
SortField="Email" FieldType="String" HeaderText="电子邮箱" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderCheckField Width="80px" ColumnID="IsPost" DataField="IsPost" HeaderText="是否在岗" EnableColumnEdit="false" >
</f:RenderCheckField>
</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="每页记录数:">
</f:ToolbarText>
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true"
OnSelectedIndexChanged="ddlPageSize_SelectedIndexChanged">
<f:ListItem Text="10" Value="10" />
<f:ListItem Text="15" Value="15" />
<f:ListItem Text="20" Value="20" />
<f:ListItem Text="25" Value="25" />
</f:DropDownList>
</PageItems>
</f:Grid>
</Items>
</f:Panel>
<f:Window ID="Window1" Title="编辑用户" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Self" EnableResize="true" runat="server" OnClose="Window1_Close" IsModal="true"
Width="900px" Height="480px">
</f:Window>
<f:Menu ID="Menu1" runat="server">
<f:MenuButton ID="btnMenuEdit" OnClick="btnMenuEdit_Click" Icon="BulletEdit" EnablePostBack="true"
runat="server" Text="编辑">
</f:MenuButton>
<f:MenuButton ID="btnMenuUnLock" OnClick="btnMenuUnLock_Click" Icon="LockGo" EnablePostBack="true"
runat="server" Text="解锁">
</f:MenuButton>
<f:MenuButton ID="btnMenuDelete" OnClick="btnMenuDelete_Click" EnablePostBack="true"
Icon="Delete" ConfirmText="删除选中行?" ConfirmTarget="Top" runat="server"
Text="删除">
</f:MenuButton>
<f:MenuButton ID="btnMenuView" OnClick="btnMenuView_Click" Icon="Find" EnablePostBack="true"
runat="server" Text="查看">
</f:MenuButton>
</f:Menu>
</form>
<script type="text/javascript">
var menuID = '<%= Menu1.ClientID %>';
// 返回false,来阻止浏览器右键菜单
function onRowContextMenu(event, rowId) {
F(menuID).show();
return false;
}
function reloadGrid() {
__doPostBack(null, 'reloadGrid');
}
</script>
</body>
</html>
@@ -0,0 +1,331 @@
namespace FineUIPro.Web.common.SysManage
{
using System;
using System.Data;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Linq;
using System.Web.UI;
using BLL;
public partial class UserList : PageBase
{
/// <summary>
/// 加载页面
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BLL.Base_UnitService.InitUnitDropDownList(drpUnit, true, null,Resources.Lan.PleaseSelect);
ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
if (CurrUser.Account == Const.Gly)
{
btnMenuUnLock.Hidden = false;
}
else
{
btnMenuUnLock.Hidden = true;
}
// 绑定表格
BindGrid();
}
}
#region /
/// <summary>
/// 绑定数据
/// </summary>
private void BindGrid()
{
string strSql = @"SELECT Users.UserId,Users.Account, Users.UserCode, Users.UserName,
Users.IsPost, Users.Email,Users.RoleIds as RoleName,Unit.UnitName,
Unit.UnitCode, Users.Phone
FROM dbo.Sys_User AS Users
LEFT JOIN dbo.Base_Unit AS Unit ON Users.UnitId =Unit.UnitId
where Users.UserId !=@Gly ";
List<SqlParameter> parms = new List<SqlParameter>();
parms.Add(new SqlParameter("@Gly", Const.GlyId));
if (!string.IsNullOrEmpty(this.txtUserName.Text))
{
strSql += " and Users.UserName LIKE @UserName";
parms.Add(new SqlParameter("@UserName", "%" + this.txtUserName.Text.Trim() + "%"));
}
if (this.drpUnit.SelectedValue != Const._Null)
{
strSql += " and Users.UnitId = @UnitId";
parms.Add(new SqlParameter("@UnitId", this.drpUnit.SelectedValue));
}
SqlParameter[] parameter = parms.ToArray();
DataTable dt = SQLHelper.GetDataTableRunText(strSql, parameter);
// 2.获取当前分页数据
Grid1.RecordCount = dt.Rows.Count;
var table = this.GetPagedDataTable(Grid1, dt);
Grid1.DataSource = table;
Grid1.DataBind();
}
/// <summary>
/// 查询
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnQuery_Click(object sender, EventArgs e)
{
this.BindGrid();
}
#endregion
#region
/// <summary>
/// 增加按钮事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnNew_Click(object sender, EventArgs e)
{
if (GetButtonPower(BLL.Const.BtnAdd))
{
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("UserListEdit.aspx", "新增 - ")));
}
else
{
Alert.ShowInTop("您没有这个权限,请与管理员联系!", MessageBoxIcon.Warning);
return;
}
}
#endregion
#region //
/// <summary>
/// 编辑
/// </summary>
private void EditData()
{
if (GetButtonPower(BLL.Const.BtnModify))
{
if (Grid1.SelectedRowIndexArray.Length == 0)
{
Alert.ShowInParent("请至少选择一条记录!");
return;
}
string Id = Grid1.SelectedRowID;
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("UserListEdit.aspx?userId={0}", Id, "编辑 - ")));
}
else
{
ShowNotify("您没有这个权限,请与管理员联系!");
}
}
/// <summary>
/// Grid行双击事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
{
EditData();
}
/// <summary>
/// 右键编辑事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnMenuEdit_Click(object sender, EventArgs e)
{
this.EditData();
}
/// <summary>
/// 解锁
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnMenuUnLock_Click(object sender, EventArgs e)
{
if (!string.IsNullOrEmpty(Grid1.SelectedRowID))
{
string userId = Grid1.SelectedRowID;
Sys_UserService.UpdateErrorNum(userId, 0);
Sys_UserService.UpdateLockTime(userId, null);
ShowNotify("该用户解锁成功!", MessageBoxIcon.Success);
}
else
{
ShowNotify("请选择要解锁的用户!");
}
}
protected void btnMenuView_Click(object sender, EventArgs e)
{
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("UserView.aspx?userId={0}", Grid1.SelectedRowID, "查看 - ")));
}
/// <summary>
/// 批量删除数据
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnMenuDelete_Click(object sender, EventArgs e)
{
if (GetButtonPower(BLL.Const.BtnDelete))
{
if (Grid1.SelectedRowIndexArray.Length > 0)
{
string strShowNotify = string.Empty;
foreach (int rowIndex in Grid1.SelectedRowIndexArray)
{
string rowID = Grid1.DataKeys[rowIndex][0].ToString();
var user = BLL.Sys_UserService.GetUsersByUserId(rowID);
string content = judgementDelete(rowID);
if (user != null)
{
if (string.IsNullOrEmpty(content))
{
BLL.Sys_UserService.DeleteUser(rowID);
BLL.Sys_LogService.AddLog(Const.System_1, this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.UserMenuId, Const.BtnDelete, rowID);
}
else
{
strShowNotify += Resources.Lan.UserName + "" + user.UserName + content;
}
}
}
BindGrid();
if (!string.IsNullOrEmpty(strShowNotify))
{
Alert.ShowInTop(strShowNotify, MessageBoxIcon.Warning);
}
else
{
ShowNotify(Resources.Lan.DeletedSuccessfully, MessageBoxIcon.Success);
}
}
}
else
{
Alert.ShowInTop(Resources.Lan.NoPrivilegePrompt, MessageBoxIcon.Warning);
return;
}
}
#endregion
#region /
/// <summary>
/// 分页
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
{
Grid1.PageIndex = e.NewPageIndex;
BindGrid();
}
/// <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();
}
/// <summary>
/// 排序
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_Sort(object sender, FineUIPro.GridSortEventArgs e)
{
Grid1.SortDirection = e.SortDirection;
Grid1.SortField = e.SortField;
BindGrid();
}
#endregion
#region
/// <summary>
/// 关闭窗口
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Window1_Close(object sender, EventArgs e)
{
BindGrid();
}
#endregion
#region
/// <summary>
/// 获取按钮权限
/// </summary>
/// <param name="button"></param>
/// <returns></returns>
private bool GetButtonPower(string button)
{
return BLL.CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.UserMenuId, button);
}
#endregion
#region
/// <summary>
/// 转换热处理类型
/// </summary>
/// <param name="pt"></param>
/// <returns></returns>
protected string ConvertRoleName(object roleIds)
{
string roleNames = string.Empty;
if (roleIds != null)
{
string[] roles = roleIds.ToString().Split('|');
foreach (string r in roles)
{
var q = BLL.Sys_RoleService.GetRole(r);
if (q != null)
{
roleNames = roleNames + q.RoleName + ",";
}
}
}
if (roleNames.Length > 0)
{
roleNames = roleNames.Substring(0, roleNames.Length - 1);
}
return roleNames;
}
#endregion
#region
/// <summary>
/// 判断是否可以删除
/// </summary>
/// <returns></returns>
private string judgementDelete(string userId)
{
string content = string.Empty;
if (Funs.DB.Project_User.FirstOrDefault(x => x.UserId== userId) != null)
{
content = "该用户已在【项目用户】中使用,不能删除!";
}
return content;
}
#endregion
}
}
@@ -0,0 +1,213 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.common.SysManage {
public partial class UserList {
/// <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>
/// txtUserName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtUserName;
/// <summary>
/// drpUnit 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpUnit;
/// <summary>
/// drpIsPost 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpIsPost;
/// <summary>
/// btnQuery 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnQuery;
/// <summary>
/// ToolbarFill1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarFill ToolbarFill1;
/// <summary>
/// btnNew 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnNew;
/// <summary>
/// Label1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label Label1;
/// <summary>
/// lbRoleName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label lbRoleName;
/// <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>
/// btnMenuUnLock 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.MenuButton btnMenuUnLock;
/// <summary>
/// btnMenuDelete 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.MenuButton btnMenuDelete;
/// <summary>
/// btnMenuView 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.MenuButton btnMenuView;
}
}
@@ -0,0 +1,92 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="UserListEdit.aspx.cs" Inherits="FineUIPro.Web.common.SysManage.UserListEdit" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>编辑用户</title>
<link href="../../res/css/common.css" rel="stylesheet" type="text/css" />
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" AutoSizePanelID="SimpleForm1" runat="server" />
<f:Form ID="SimpleForm1" ShowBorder="false" ShowHeader="false" AutoScroll="true"
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
<Rows>
<f:FormRow>
<Items>
<f:TextBox ID="txtUserName" runat="server" Label="姓名" Required="true" ShowRedStar="true" FocusOnPageLoad="true">
</f:TextBox>
</Items>
<Items>
<f:TextBox ID="txtAccount" runat="server" Label="账号" Required="true" ShowRedStar="true">
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:DropDownBox runat="server" Label="角色" ID="ddbRole" DataControlID="ckbRole" EnableMultiSelect="true" >
<PopPanel>
<f:SimpleForm ID="SimpleForm3" BodyPadding="10px" runat="server" AutoScroll="true"
ShowBorder="True" ShowHeader="false" Hidden="true">
<Items>
<f:Label ID="Label2" runat="server" Text="请选择用户角色(可有多个角色):"></f:Label>
<f:CheckBoxList ID="ckbRole" ColumnNumber="3" runat="server">
</f:CheckBoxList>
</Items>
</f:SimpleForm>
</PopPanel>
</f:DropDownBox>
</Items>
<Items>
<f:TextBox ID="txtUserCode" runat="server" Label="编号" >
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:DropDownList ID="drpUnit" runat="server" Label="单位" EnableEdit="true" EnableGroup="true"
ForceSelection="true" Required="true" ShowRedStar="true">
</f:DropDownList>
</Items>
<Items>
<f:TextBox ID="txtDepart" runat="server" Label="部门" >
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtEmail" runat="server" Label="电子邮箱" RegexPattern="EMAIL" >
</f:TextBox>
</Items>
<Items>
<f:TextBox ID="txtEmailPassword" runat="server" Label="邮箱密码" TextMode="Password">
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:CheckBox ID="cbIsPost" Checked="true" Label="是否在岗" runat="server" />
</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="保存数据" ValidateForms="SimpleForm1"
OnClick="btnSave_Click">
</f:Button>
<f:Button ID="btnClose" EnablePostBack="false" Text="关闭" runat="server" Icon="SystemClose">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
</f:Form>
</form>
</body>
</html>
@@ -0,0 +1,182 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Data;
using System.Data.SqlClient;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using BLL;
namespace FineUIPro.Web.common.SysManage
{
public partial class UserListEdit : PageBase
{
#region
/// <summary>
/// 用户主键
/// </summary>
public string UserId
{
get
{
return (string)ViewState["UserId"];
}
set
{
ViewState["UserId"] = value;
}
}
#endregion
/// <summary>
/// 用户编辑页面
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
LoadData();
this.UserId = Request.Params["userId"];
this.ckbRole.DataTextField = "RoleName";
ckbRole.DataValueField = "RoleId";
ckbRole.DataSource = BLL.Sys_RoleService.GetRoleList();
ckbRole.DataBind();
// 绑定单位
BLL.Base_UnitService.InitUnitDropDownList(drpUnit, true, null,Resources.Lan.PleaseSelect);
if (!string.IsNullOrEmpty(this.CurrUser.UnitId))
{
this.drpUnit.SelectedValue = this.CurrUser.UnitId;
}
if (!string.IsNullOrEmpty(this.UserId))
{
var user = BLL.Sys_UserService.GetUsersByUserId(this.UserId);
if (user != null)
{
if (!string.IsNullOrEmpty(user.UnitId))
{
this.drpUnit.SelectedValue = user.UnitId;
}
this.txtUserCode.Text = user.UserCode;
this.txtUserName.Text = user.UserName;
this.txtAccount.Text = user.Account;
this.txtDepart.Text = user.Depart;
if (user.IsPost.HasValue)
{
this.cbIsPost.Checked = user.IsPost.Value;
}
if (user.RoleIds != null)
{
string[] roles = user.RoleIds.Split('|');
ddbRole.Values = roles;
}
}
}
}
}
/// <summary>
/// 加载页面
/// </summary>
private void LoadData()
{
btnClose.OnClientClick = ActiveWindow.GetHideReference();
}
/// <summary>
/// 保存按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnSave_Click(object sender, EventArgs e)
{
if (CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.UserMenuId, Const.BtnSave))
{
if (BLL.Sys_UserService.IsExistUserAccount(this.UserId, this.txtAccount.Text.Trim()))
{
Alert.ShowInParent("用户账号已存在!");
return;
}
else
{
Model.Sys_User newUser = new Model.Sys_User();
newUser.UserCode = this.txtUserCode.Text.Trim();
newUser.UserName = this.txtUserName.Text.Trim();
newUser.Account = this.txtAccount.Text.Trim();
newUser.Depart = this.txtDepart.Text.Trim();
newUser.Password = Sys_UserService.EncryptionPassword("abc.1234");//默认密码“abc.1234”
if (this.drpUnit.SelectedValue != Const._Null)
{
newUser.UnitId = this.drpUnit.SelectedValue;
}
newUser.IsPost = cbIsPost.Checked;
newUser.RoleIds = String.Join("|", ddbRole.Values);
newUser.Email = this.txtEmail.Text.Trim();
if (!String.IsNullOrEmpty(this.txtEmailPassword.Text.Trim()))
{
newUser.EmailPassword = this.txtEmailPassword.Text.Trim();
}
if (string.IsNullOrEmpty(this.UserId))
{
string newKeyID = SQLHelper.GetNewID(typeof(Model.Sys_User));
newUser.UserId = newKeyID;
BLL.Sys_UserService.AddUser(newUser);
BLL.Sys_LogService.AddLog(Const.System_1, this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.UserMenuId, Const.BtnAdd, newKeyID);
ShowNotify("增加用户数据成功!(表格数据已重新绑定)");
}
else
{
newUser.UserId = this.UserId;
BLL.Sys_UserService.UpdateUser(newUser);
BLL.Sys_LogService.AddLog(Const.System_1, this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.UserMenuId, Const.BtnModify, this.UserId);
ShowNotify("修改用户数据成功!(表格数据已重新绑定)");
}
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
}
}
else
{
ShowNotify("您没有这个权限,请与管理员联系!");
}
}
protected void drpRole_SelectedIndexChanged(object sender, EventArgs e)
{
}
/// <summary>
/// 部门选择框变化
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
//protected void drpDepart_SelectedIndexChanged(object sender, EventArgs e)
//{
// var dep = BLL.Base_DepartService.GetDepart(this.drpDepart.SelectedValue);
// if (dep != null)
// {
// this.txtDepCode.Text = dep.DepartCode;
// }
// else
// {
// this.txtDepCode.Text = string.Empty;
// }
//}
}
}
@@ -0,0 +1,177 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.common.SysManage {
public partial class UserListEdit {
/// <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>
/// txtUserName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtUserName;
/// <summary>
/// txtAccount 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtAccount;
/// <summary>
/// ddbRole 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownBox ddbRole;
/// <summary>
/// SimpleForm3 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.SimpleForm SimpleForm3;
/// <summary>
/// Label2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label Label2;
/// <summary>
/// ckbRole 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.CheckBoxList ckbRole;
/// <summary>
/// txtUserCode 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtUserCode;
/// <summary>
/// drpUnit 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpUnit;
/// <summary>
/// txtDepart 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtDepart;
/// <summary>
/// txtEmail 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtEmail;
/// <summary>
/// txtEmailPassword 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtEmailPassword;
/// <summary>
/// cbIsPost 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.CheckBox cbIsPost;
/// <summary>
/// Toolbar1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// btnSave 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSave;
/// <summary>
/// btnClose 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnClose;
}
}