天天看点

ERP部门的添加(十一)

功能需求:

1.有部门管理权限的人员进行添加部门基本信息。

2.有部门权限管理的人员查询部门基本信息。

3.有部门权限管理的人员进行修改部门基本信息。

4.在一个页面中实现,使用弹出对话框方式

存储过程:

-- =============================================
ALTER PROCEDURE  [dbo].[Department_Add]
    @DepartmentName nvarchar(50),
    @Tel1 nvarchar(20),
    @Tel2 nvarchar(20),
    @ReMark nvarchar(200)
    AS
BEGIN
    INSERT INTO Department
    (
        DepartmentName,
        Tel1,
        Tel2,
        ReMark
    
    )
    VALUES
    (
        
        @DepartmentName,
        @Tel1,
        @Tel2,
        @ReMark
    )
    --修改部门显示顺序
    DECLARE @id int 
    SET @id=@@IDENTITY
    UPDATE Department
    SET
        Displayorder =@id
    WHERE DepartmentId=@id
END      

修改:

------------------------------------
ALTER PROCEDURE [dbo].[Department_Update]
@DepartmentId int,
@DepartmentName nvarchar(50),
@Tel1 nvarchar(20),
@Tel2 nvarchar(20),
@Displayorder int,
@ReMark nvarchar(200)
 AS 
  UPDATE [Department] SET 
  [DepartmentName] = @DepartmentName,[Tel1] = @Tel1,[Tel2] = @Tel2,[Displayorder] = @Displayorder,[ReMark] = @ReMark
  WHERE DepartmentId=@DepartmentId      

前台的页面:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="DepartMentManager.aspx.cs" Inherits="BioErpWeb.HRSystem.DepartMentManager" %>

<%@ Register Assembly="AspNetPager" Namespace="Wuqi.Webdiyer" TagPrefix="webdiyer" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
<!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="../Styles/ERPBaseStyle.css" rel="stylesheet" type="text/css" />
    <link href="../Styles/AspNetPagerStyle.css" rel="stylesheet" type="text/css" />
</head>
<body>
    <form id="form1" runat="server">
    <asp:ScriptManager ID="ScriptManager1" runat="server">
    </asp:ScriptManager>
    <div>
       <asp:UpdatePanel id="up_all" runat="server">
        <contenttemplate>

        <asp:ImageButton ID="imgEditBtn" Width="1" Height="1"  runat="server" />
         <cc1:ModalPopupExtender ID="Modal_Add" TargetControlID="btnNew" PopupControlID="Panel_Add" runat="server">
        </cc1:ModalPopupExtender>
        <cc1:ModalPopupExtender ID="Modal_Update" TargetControlID="imgEditBtn" PopupControlID="Panel_Update" runat="server">
        </cc1:ModalPopupExtender>
     <div>
        <asp:Panel ID="Panel_Add" runat="server"  CssClass="pLogo">
         <table  class="tb_mess">
         <thead class="name"><caption>部门信息添加</caption></thead>
         <tr>
          <td>部门名</td><td>
              <asp:TextBox ID="txtDepartMent0" runat="server"></asp:TextBox>
      
             </td>
         </tr>
         <tr>
          <td>电话号码1</td><td>
              <asp:TextBox ID="txtTel10" runat="server"></asp:TextBox>
      
             </td>
         </tr>
            <tr>
          <td>电话号码2</td><td>
              <asp:TextBox ID="txtTel20" runat="server"></asp:TextBox>
        
             </td>
         </tr>
             <tr>
          <td>备注</td><td>
              <asp:TextBox ID="txtReMark" runat="server"></asp:TextBox>
          
             </td>
         </tr>
         <tr>
          <td colspan="2" class="bottomtd">
              <asp:Button ID="btnAdd" runat="server" Text="提交" onclick="btnAdd_Click"/>
              <asp:Button ID="Button1" runat="server" Text="关闭" />
             
             </td>
         </tr>
         </table>
        </asp:Panel>    
    </div>
    <div>
          <asp:Panel ID="Panel_Update" runat="server"  CssClass="pLogo">
         <table  class="tb_mess">
         <thead class="name"><caption>部门信息编辑</caption></thead>
         <tr>
          <td>部门名</td><td>
              <asp:TextBox ID="txtDepartMent1" runat="server"></asp:TextBox>
             
             </td>
         </tr>
         <tr>
          <td>电话号码1</td><td>
              <asp:TextBox ID="txtTel11" runat="server"></asp:TextBox>
             
             </td>
         </tr>
            <tr>
          <td>电话号码2</td><td>
              <asp:TextBox ID="txtTel21" runat="server"></asp:TextBox>
             
             </td>
         </tr>
             <tr>
          <td>显示顺序</td><td>
              <asp:TextBox ID="txtDisplayOrder1" runat="server"></asp:TextBox>
          
             </td>
         </tr>
             <tr>
          <td>备注</td><td>
              <asp:TextBox ID="txtReMark1" runat="server"></asp:TextBox>
          
             </td>
         </tr>
         </tr>
          <td colspan="2" class="bottomtd">
              <asp:Button ID="btnUpdate" runat="server" Text="提交" onclick="btnUpdate_Click" />
              <asp:Button ID="btnClose1" CausesValidation="false" runat="server" Text="关闭" 
                  onclick="btnClose1_Click" /></td>
         </table>
        </asp:Panel>  
    </div>

        <table class="maintable">
            <tr>
                <td class="titlebar">
                   部门信息管理系统
                </td>
            </tr>
            <tr>
                <td  style=" text-align:right; padding-right:10px; ">
                    <asp:Button ID="btnNew" runat="server" Text="添加" BackColor="#CDEAFB" Width="80px" Height="30px" />
                </td>
            </tr>
            <tr>
                <td>
                    <asp:GridView ID="GridView1" Width="100%" AutoGenerateColumns="False" 
                        runat="server" onrowcommand="GridView1_RowCommand"  DataKeyNames="DepartmentId">
                        <Columns>
                           <asp:TemplateField HeaderText="编号">
                                <ItemTemplate>
                                    <asp:Label ID="Label1" runat="server" Text='<%# Eval("DepartmentId") %>'></asp:Label>
                                </ItemTemplate>
                                <ItemStyle HorizontalAlign="Center" />
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="部门名称">
                                <ItemTemplate>
                                    <asp:Label ID="Label2" runat="server" Text='<%# Eval("DepartmentName") %>'></asp:Label>
                                </ItemTemplate>
                                <ItemStyle HorizontalAlign="Center" />
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="电话号码1">
                                <ItemTemplate>
                                    <asp:Label ID="Label3" runat="server" Text='<%# Eval("Tel1") %>'></asp:Label>
                                </ItemTemplate>
                                <ItemStyle HorizontalAlign="Center" />
                            </asp:TemplateField>
                               <asp:TemplateField HeaderText="电话号码2">
                                <ItemTemplate>
                                    <asp:Label ID="Label4" runat="server" Text='<%# Eval("Tel2") %>'></asp:Label>
                                </ItemTemplate>
                                <ItemStyle HorizontalAlign="Center" />
                            </asp:TemplateField>
                                 <asp:TemplateField HeaderText="显示顺序">
                                <ItemTemplate>
                                    <asp:Label ID="Label5" runat="server" Text='<%# Eval("Displayorder") %>'></asp:Label>
                                </ItemTemplate>
                                <ItemStyle HorizontalAlign="Center" />
                            </asp:TemplateField>
                                      <asp:TemplateField HeaderText="说明">
                                <ItemTemplate>
                                    <asp:Label ID="Label6" runat="server" Text='<%# Eval("ReMark") %>'></asp:Label>
                                </ItemTemplate>
                                <ItemStyle HorizontalAlign="Center" />
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="操作">
                                <ItemTemplate>
                                       <asp:ImageButton ID="imgEditBtn" Width="50" Height="20" CommandName="imgEdit" CommandArgument='<%#Eval("DepartmentId") %>' CausesValidation="false" ImageUrl="~/Web/images/Edit.gif" runat="server" />
                                                                    
                                </ItemTemplate>
                                 
                                <ItemStyle HorizontalAlign="Center" />
                            </asp:TemplateField>
                        </Columns>
                    </asp:GridView>
                </td>
            </tr>
            <tr>
            <td>
                <webdiyer:AspNetPager ID="AspNetPager1" CssClass="paginator"  
                    CurrentPageButtonClass="cpb" runat="server" 
                    onpagechanged="AspNetPager1_PageChanged">
                </webdiyer:AspNetPager>
            </td>
            </tr>
        </table>
   
        </contenttemplate>
      
        </asp:UpdatePanel>
    </div>
    
    </form>
</body>
</html>      

 BLL层:

public class DepartMentBLL
    {
       /// <summary>
       /// 添加
       /// </summary>
       /// <param name="de"></param>
       /// <returns></returns>
       public int DepartMentAdd(DepartMent de)
       {
           SqlParameter[] parameters = {
                    new SqlParameter("@DepartmentName", SqlDbType.NVarChar,50),
                    new SqlParameter("@Tel1", SqlDbType.NVarChar,20),
                    new SqlParameter("@Tel2", SqlDbType.NVarChar,20),               
                    new SqlParameter("@ReMark", SqlDbType.NVarChar,200)};
        
           parameters[0].Value = de.DepartmentName;
           parameters[1].Value = de.Tel1;
           parameters[2].Value = de.Tel2;         
           parameters[3].Value = de.ReMark;

         return   DataBaseHelper.ExcuteSqlReturnInt("Department_ADD", CommandType.StoredProcedure, parameters);

       }

       /// <summary>
       /// 修改
       /// </summary>
       /// <param name="de"></param>
       /// <returns></returns>
       public int DepartMentUpdate(DepartMent de)
       {
           SqlParameter[] parameters = {
                    new SqlParameter("@DepartmentId", SqlDbType.Int,4),
                    new SqlParameter("@DepartmentName", SqlDbType.NVarChar,50),
                    new SqlParameter("@Tel1", SqlDbType.NVarChar,20),
                    new SqlParameter("@Tel2", SqlDbType.NVarChar,20),
                    new SqlParameter("@Displayorder", SqlDbType.Int,4),
                    new SqlParameter("@ReMark", SqlDbType.NVarChar,200)};
           parameters[0].Value = de.DepartmentId;
           parameters[1].Value = de.DepartmentName;
           parameters[2].Value = de.Tel1;
           parameters[3].Value = de.Tel2;
           parameters[4].Value = de.Displayorder;
           parameters[5].Value = de.ReMark;

          return DataBaseHelper.ExcuteSqlReturnInt("Department_Update", CommandType.StoredProcedure, parameters);

       }

       /// <summary>
       /// 根据ID获取编号
       /// </summary>
       /// <param name="ID"></param>
       /// <returns></returns>
       public DepartMent getDepartMentById(string ID)
       {
           DepartMent d = new DepartMent();
           return null;
       }
    }      

 界面层:

protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                pagebind();
            }
        }


        public static int pageindex = 0;
        public static int pagesize = 10;
        public static string condition = "";
        protected void pagebind()
        {
            this.AspNetPager1.RecordCount = SqlComm.getDataCountByCondition("Department", condition);
            this.AspNetPager1.PageSize = pagesize;
            this.GridView1.DataSource = SqlComm.getDataByPageIndex("Department", "*", "DepartmentId", condition, pageindex, pagesize);
            this.GridView1.DataBind();
           
        }
        DepartMentBLL debll = new DepartMentBLL();
        protected void btnAdd_Click(object sender, EventArgs e)
        {
            DepartMent de = new DepartMent();
            de.DepartmentName = this.txtDepartMent0.Text;
            de.ReMark = this.txtReMark.Text;
            de.Tel1 = this.txtTel10.Text;
            de.Tel2 = this.txtTel20.Text;
            if (debll.DepartMentAdd(de) != 0)
            {
                pagebind();
            }

            this.Modal_Add.Hide();
            
        }

        protected void AspNetPager1_PageChanged(object sender, EventArgs e)
        {
            pageindex = this.AspNetPager1.CurrentPageIndex - 1;
            pagebind();
        }
    
        protected void btnUpdate_Click(object sender, EventArgs e)
        {
 
        }

        protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            if (e.CommandName == "imgEdit")
            {

                this.Modal_Update.Show();
            }
        }

        protected void btnClose1_Click(object sender, EventArgs e)
        {
            this.Modal_Update.Hide();
        }      

 修改BLL:

/// <summary>
       /// 根据ID获取编号
       /// </summary>
       /// <param name="ID"></param>
       /// <returns></returns>
       public DepartMent getDepartMentById(string ID)
       {
           DepartMent d = new DepartMent();
         SqlDataReader reader=  SqlComm.GetDataReaderByCondition("Department", "*", " DepartmentId= " + ID);
         while (reader.Read())
         {
             d.DepartmentId=int.Parse(reader["DepartmentId"].ToString());
             d.DepartmentName = reader["DepartmentName"].ToString();
             d.Displayorder = int.Parse(reader["Displayorder"].ToString());
             d.ReMark = reader["ReMark"].ToString();
             d.Tel1 = reader["Tel1"].ToString();
             d.Tel2 = reader["Tel2"].ToString();
         }
         reader.Close();
         return d;
       }      

 UI代码:

protected void btnUpdate_Click(object sender, EventArgs e)
        {
            de.DepartmentName = this.txtDepartMent1.Text;
            de.ReMark = this.txtReMark1.Text;
            de.Tel1 = this.txtTel11.Text;
            de.Tel2 = this.txtTel21.Text;
            de.Displayorder = int.Parse(this.txtDisplayOrder1.Text.Trim()) ;

            if (debll.DepartMentUpdate(de) != 0)
            {

                pagebind();
            }
            else
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "test", "alert('修改失败')", true);
            }
            this.Modal_Update.Hide();

        }      

 角色的管理:

公用层:

/// <summary>
        /// 获取员工角色列表
        /// </summary>
        /// <returns>DataTable</returns>
        public static DataTable getUserRoseList()
        {
            return DataBaseHelper.SelectSQLReturnTable("getUserRoseList", CommandType.StoredProcedure);
        }      

 BLL层:

public class RoseBLL
    {
      /// <summary>
      /// 添加一个角色信息
      /// </summary>
      /// <param name="rose"></param>
      /// <returns></returns>
      public int Rose_Add(tbRose rose)
      {
          SqlParameter[] parameters = {
                
                    new SqlParameter("@RoseName", SqlDbType.NVarChar,50)};
                   parameters[0].Value = rose.RoseName;
                   return DataBaseHelper.ExcuteSqlReturnInt("tbRose_ADD", CommandType.StoredProcedure, parameters);
      }

      /// <summary>
      /// 修改一个角色对象
      /// </summary>
      /// <param name="rose"></param>
      /// <returns></returns>
      public int Rose_Update(tbRose rose)
      {
          SqlParameter[] parameters = {
            new SqlParameter("@RoseID", SqlDbType.Int,4),
                    new SqlParameter("@RoseName", SqlDbType.NVarChar,50)};
            parameters[0].Value = rose.RoseID;
            parameters[1].Value = rose.RoseName;
            return DataBaseHelper.ExcuteSqlReturnInt("tbRose_Update", CommandType.StoredProcedure, parameters);

      }

      /// <summary>
      /// 根据ID获取Rose对象
      /// </summary>
      /// <param name="id">id</param>
      /// <returns>tbRose</returns>
      public tbRose getRoseById(string id)
      {
          tbRose r = new tbRose();
          SqlDataReader reader = SqlComm.GetDataReaderByCondition("tbRose", "*", " RoseID=" + id);
          if (reader != null)
          {
              while (reader.Read())
              {
                  r.RoseID = int.Parse(reader["RoseID"].ToString());
                  r.RoseName = reader["RoseName"].ToString();
              }
          
          reader.Close();
          }
          return r;      
      }

    }      

 页面:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="RoseManager.aspx.cs" Inherits="BioErpWeb.HRSystem.RoseManager" %>

<%@ Register Assembly="AspNetPager" Namespace="Wuqi.Webdiyer" TagPrefix="webdiyer" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
<!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="../Styles/ERPBaseStyle.css" rel="stylesheet" type="text/css" />
    <link href="../Styles/AspNetPagerStyle.css" rel="stylesheet" type="text/css" />
</head>
<body>
    <form id="form1" runat="server">
    <asp:ScriptManager ID="ScriptManager1" runat="server">
    </asp:ScriptManager>
    <div>
       <asp:UpdatePanel id="up_all" runat="server">
        <contenttemplate>

        <asp:ImageButton ID="imgEditBtn" Width="1" Height="1"  runat="server" />
         <cc1:ModalPopupExtender ID="Modal_Add" TargetControlID="btnNew" PopupControlID="Panel_Add" runat="server">
        </cc1:ModalPopupExtender>
        <cc1:ModalPopupExtender ID="Modal_Update" TargetControlID="imgEditBtn" PopupControlID="Panel_Update" runat="server">
        </cc1:ModalPopupExtender>
     <div>
        <asp:Panel ID="Panel_Add" runat="server"  CssClass="pLogo">
         <table  class="tb_mess">
         <thead class="name"><caption>角色添加</caption></thead>
         <tr>
          <td>角色名</td><td>
              <asp:TextBox ID="txtRose0" runat="server"></asp:TextBox>      
             </td>
         </tr>
        
         <tr>
          <td colspan="2" class="bottomtd">
              <asp:Button ID="btnAdd" runat="server" Text="提交" onclick="btnAdd_Click"/>
              <asp:Button ID="Button1" runat="server" Text="关闭" />
             
             </td>
         </tr>
         </table>
        </asp:Panel>    
    </div>
    <div>
          <asp:Panel ID="Panel_Update" runat="server"  CssClass="pLogo">
         <table  class="tb_mess">
         <thead class="name"><caption>角色编辑</caption></thead>
         <tr>
          <td>角色名</td><td>
              <asp:TextBox ID="txtRose1" runat="server"></asp:TextBox>             
             </td>
         </tr>        
         </tr>
          <td colspan="2" class="bottomtd">
              <asp:Button ID="btnUpdate" runat="server" Text="提交" onclick="btnUpdate_Click" />
              <asp:Button ID="btnClose1" CausesValidation="false" runat="server" Text="关闭" 
                  onclick="btnClose1_Click" /></td>
         </table>
        </asp:Panel>  
    </div>

        <table class="maintable">
            <tr>
                <td class="titlebar">
                   企业角色管理系统
                </td>
            </tr>
            <tr>
                <td  style=" text-align:right; padding-right:10px; ">
                    <asp:Button ID="btnNew" runat="server" Text="添加" BackColor="#CDEAFB" Width="80px" Height="30px" />
                </td>
            </tr>
            <tr>
                <td>
                    <asp:GridView ID="GridView1" Width="100%" AutoGenerateColumns="False" 
                        runat="server" onrowcommand="GridView1_RowCommand"  DataKeyNames="RoseID">
                        <Columns>
                           <asp:TemplateField HeaderText="编号">
                                <ItemTemplate>
                                    <asp:Label ID="Label1" runat="server" Text='<%# Eval("RoseID") %>'></asp:Label>
                                </ItemTemplate>
                                <ItemStyle HorizontalAlign="Center" />
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="角色名称">
                                <ItemTemplate>
                                    <asp:Label ID="Label2" runat="server" Text='<%# Eval("RoseName") %>'></asp:Label>
                                </ItemTemplate>
                                <ItemStyle HorizontalAlign="Center" />
                            </asp:TemplateField>
                            
                            <asp:TemplateField HeaderText="操作">
                                <ItemTemplate>
                                       <asp:ImageButton ID="imgEditBtn" Width="50" Height="20" CommandName="imgEdit" CommandArgument='<%#Eval("RoseID") %>' ImageUrl="~/Web/images/Edit.gif" runat="server" />
                                                                    
                                </ItemTemplate>
                                 
                                <ItemStyle HorizontalAlign="Center" />
                            </asp:TemplateField>
                        </Columns>
                    </asp:GridView>
                </td>
            </tr>
            <tr>
            <td>
                <webdiyer:AspNetPager ID="AspNetPager1" CssClass="paginator"  
                    CurrentPageButtonClass="cpb" runat="server" 
                    onpagechanged="AspNetPager1_PageChanged">
                </webdiyer:AspNetPager>
            </td>
            </tr>
        </table>
   
        </contenttemplate>
      
        </asp:UpdatePanel>
    </div>
    
    </form>
</body>
</html>      

 后端:

public partial class RoseManager : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                pagebind();
            }
        }


        public static int pageindex = 0;
        public static int pagesize = 10;
        public static string condition = "";
        protected void pagebind()
        {
            this.AspNetPager1.RecordCount = SqlComm.getDataCountByCondition("tbRose", condition);
            this.AspNetPager1.PageSize = pagesize;
            this.GridView1.DataSource = SqlComm.getDataByPageIndex("tbRose", "RoseID,RoseName", "RoseID", condition, pageindex, pagesize);
            this.GridView1.DataBind();
           
        }

        static tbRose r=new tbRose();
        RoseBLL rosebll = new RoseBLL();
        protected void btnAdd_Click(object sender, EventArgs e)
        {
            if (this.txtRose0.Text == "" || this.txtRose0.Text.Trim().Length == 0)
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "test", "alert('请填写角色名称');", true);
                return;
            }

            r.RoseName = this.txtRose0.Text;
            if (rosebll.Rose_Add(r) != 0)
            {
                pagebind();
            }
            else
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "test", "alert('提交失败');", true);
                
            }
    

            this.Modal_Add.Hide();
            
        }

        protected void AspNetPager1_PageChanged(object sender, EventArgs e)
        {
            pageindex = this.AspNetPager1.CurrentPageIndex - 1;
            pagebind();
        }
    
        protected void btnUpdate_Click(object sender, EventArgs e)
        {
            if (this.txtRose1.Text == "" || this.txtRose1.Text.Trim().Length == 0)
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "test", "alert('请填写角色名称');", true);
                return;
            }
            r.RoseName = this.txtRose1.Text;
            if (rosebll.Rose_Update(r) != 0)
            {
                pagebind();
            }
            else
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "test", "alert('编辑失败');", true);

            }
    
            this.Modal_Update.Hide();

        }

        protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            if (e.CommandName == "imgEdit")
            {
                string roseid = e.CommandArgument.ToString();
                r = rosebll.getRoseById(roseid);
                this.txtRose1.Text = r.RoseName;
                this.Modal_Update.Show();
            }
        }

        protected void btnClose1_Click(object sender, EventArgs e)
        {
            this.Modal_Update.Hide();
        }
             
    }