protected void btndelinfo_Click(object sender, EventArgs e) { HyoaClass.Hyoa_dept Hyoa_dept = new HyoaClass.Hyoa_dept(); HyoaClass.Hyoa_user Hyoa_user = new HyoaClass.Hyoa_user(); String[] v_uids = this.txtuids.Value.Split(','); for(var i=0;i<v_uids.Length;i++) { if (v_uids[i] != "") { //this.Response.Write("<script>alert('aaa')</script>"); //判断是否有人员 DataTable dt_dept = Hyoa_dept.Getdept(v_uids[i]); DataTable dt_user = Hyoa_user.Getusersbydeptid(v_uids[i]); if (dt_user.Rows.Count > 0) { Response.Write("<script>alert('" + dt_dept.Rows[0]["hy_deptname"].ToString() + "下存在人员,不能进行删除!');</script>"); return; } //判断是否有子部门 DataTable dt_subdept = Hyoa_dept.GetSubDepts(v_uids[i]); if (dt_subdept.Rows.Count > 0) { Response.Write("<script>alert('" + dt_dept.Rows[0]["hy_deptname"].ToString() + "下存在子部门,不能进行删除!');</script>"); return; } //写删除部门系统日志start HyoaClass.Hyoa_log Hyoa_log = new HyoaClass.Hyoa_log(); Hyoa_log.ID = System.Guid.NewGuid().ToString(); Hyoa_log.hy_createtime = System.DateTime.Now.ToString(); string userip = Request.ServerVariables["HTTP_X_FORWARDED_FOR"]; if (userip == null || userip == "") { userip = Request.ServerVariables["REMOTE_ADDR"]; } Hyoa_log.hy_oppip = userip; Hyoa_log.hy_opptype = "删除"; Hyoa_log.hy_oppcontent = "删除部门:" + dt_dept.Rows[0]["hy_deptname"].ToString(); Hyoa_log.hy_oppuserid = this.Session["hyuid"].ToString(); Hyoa_log.hy_oppusername = this.Session["hyuname"].ToString(); Hyoa_log.Insert(); Hyoa_dept.hy_deptid = v_uids[i]; Hyoa_dept.Delete(); } } this.txtuids.Value = ""; //DataPlay(1); DataPlay(System.Int32.Parse(this.curpage.Text)); }
//递归函数 public string GetNextDept(string ls_deptid) { string ls_retrun = ""; //根据部门ID得到下一级的部门 HyoaClass.Hyoa_dept Hyoa_dept = new HyoaClass.Hyoa_dept(); DataTable dt = Hyoa_dept.GetSubDepts(ls_deptid); if (dt.Rows.Count > 0) { for (var i = 0; i < dt.Rows.Count; i++) { //判断是否有子部门 DataTable dtsub = Hyoa_dept.GetSubDepts(dt.Rows[i]["hy_deptid"].ToString()); if (dtsub.Rows.Count > 0) { ls_retrun += "<dd class=\"folderClose\">"; ls_retrun += "<a href=\"/system/list_user.aspx?deptid=" + dt.Rows[i]["hy_deptid"].ToString() + "\" target=\"RightIframeWin\">" + dt.Rows[i]["hy_deptname"].ToString(); ls_retrun += "</a><dl>"; //输出子部门 ls_retrun += GetNextDept(dt.Rows[i]["hy_deptid"].ToString()); ls_retrun += "</dl>"; ls_retrun += "</dd>"; } else { //没有子部门 ls_retrun += "<dt>"; ls_retrun += "<a href=\"/system/list_user.aspx?deptid=" + dt.Rows[i]["hy_deptid"].ToString() + "\" target=\"RightIframeWin\">" + dt.Rows[i]["hy_deptname"].ToString(); ls_retrun += "</a></dt>"; } } } return ls_retrun; }
//得到下一级部门的信息 private void GetNextDept(string pis_DeptId, string pis_DeptName, string pi_num, string pis_name, string ls_string) { //循环二级部门 HyoaClass.Hyoa_dept Hyoa_dept = new HyoaClass.Hyoa_dept(); DataTable dtdept = Hyoa_dept.GetSubDepts(pis_DeptId); if (dtdept.Rows.Count > 0) { for (var i = 0; i < dtdept.Rows.Count; i++) { //判断是否有三级部门 if (Hyoa_dept.isHaveSubDept(dtdept.Rows[i]["hy_deptid"].ToString()) == true) { //存在三级部门 Response.Write("<dd class=\"folderClose\">"); if (ls_string != "") { if (ls_string == dtdept.Rows[i]["hy_deptid"].ToString()) { Response.Write("<input type=\"checkbox\" name=\"" + dtdept.Rows[i]["hy_deptid"].ToString() + "\" value=\"" + dtdept.Rows[i]["hy_deptid"].ToString() + "\" text=\"" + dtdept.Rows[i]["hy_deptname"].ToString() + "\" checked=\"checked\" align=\"left\" style=\"width:13;\"> "); Response.Write(dtdept.Rows[i]["hy_deptname"].ToString()); } else { Response.Write("<input type=\"checkbox\" name=\"" + dtdept.Rows[i]["hy_deptid"].ToString() + "\" value=\"" + dtdept.Rows[i]["hy_deptid"].ToString() + "\" text=\"" + dtdept.Rows[i]["hy_deptname"].ToString() + "\" align=\"left\" style=\"width:13;\"> "); Response.Write(dtdept.Rows[i]["hy_deptname"].ToString()); } } else { Response.Write("<input type=\"checkbox\" name=\"" + dtdept.Rows[i]["hy_deptid"].ToString() + "\" value=\"" + dtdept.Rows[i]["hy_deptid"].ToString() + "\" text=\"" + dtdept.Rows[i]["hy_deptname"].ToString() + "\" align=\"left\" style=\"width:13;\"> "); Response.Write(dtdept.Rows[i]["hy_deptname"].ToString()); } Response.Write("<dl>"); //显示子部门以及部门人员 GetNextDept(dtdept.Rows[i]["hy_deptid"].ToString(), dtdept.Rows[i]["hy_deptname"].ToString(), i.ToString(), "Dept" + dtdept.Rows[i]["hy_deptid"].ToString(), ls_string); Response.Write("</dl>"); Response.Write("</dd>"); } else { //不存在子部门 Response.Write("<dt>"); if (ls_string != "") { if (ls_string == dtdept.Rows[i]["hy_deptid"].ToString()) { Response.Write("<input type=\"checkbox\" name=\"" + dtdept.Rows[i]["hy_deptid"].ToString() + "\" value=\""); Response.Write(dtdept.Rows[i]["hy_deptid"].ToString() + "\" text=\"" + dtdept.Rows[i]["hy_deptname"].ToString() + "\" checked=\"checked\" align=\"left\" style=\"width:13;\"> "); } else { Response.Write("<input type=\"checkbox\" name=\"" + dtdept.Rows[i]["hy_deptid"].ToString() + "\" value=\""); Response.Write(dtdept.Rows[i]["hy_deptid"].ToString() + "\" text=\"" + dtdept.Rows[i]["hy_deptname"].ToString() + "\" align=\"left\" style=\"width:13;\"> "); } } else { Response.Write("<input type=\"checkbox\" name=\"" + dtdept.Rows[i]["hy_deptid"].ToString() + "\" value=\""); Response.Write(dtdept.Rows[i]["hy_deptid"].ToString() + "\" text=\"" + dtdept.Rows[i]["hy_deptname"].ToString() + "\" align=\"left\" style=\"width:13;\"> "); } Response.Write(dtdept.Rows[i]["hy_deptname"].ToString()); Response.Write("</dt>"); } } } }
//得到下一级部门的信息 private void GetNextDept(string pis_DeptId, string pis_DeptName, string pi_num, string pis_name, string ls_users) { //循环二级部门 HyoaClass.Hyoa_dept Hyoa_dept = new HyoaClass.Hyoa_dept(); DataTable dtdept = Hyoa_dept.GetSubDepts(pis_DeptId); if (dtdept.Rows.Count > 0) { for (var i = 0; i < dtdept.Rows.Count; i++) { //判断是否有三级部门 if (Hyoa_dept.isHaveSubDept(dtdept.Rows[i]["hy_deptid"].ToString()) == true) { //存在三级部门 Response.Write("<dd class=\"folderClose\">"); Response.Write("<input type=\"checkbox\" name=\"Dept" + dtdept.Rows[i]["hy_deptid"].ToString() + "\" value=\"" + dtdept.Rows[i]["hy_deptid"].ToString() + "\" align=\"left\" onclick=\"SelDept(this.name)\" style=\"width:13;\"> "); Response.Write(dtdept.Rows[i]["hy_deptname"].ToString()); Response.Write("<dl>"); //显示三级部门以及部门人员 GetNextDept(dtdept.Rows[i]["hy_deptid"].ToString(), dtdept.Rows[i]["hy_deptname"].ToString(), i.ToString() + i.ToString() + i.ToString(), pis_name + "_sub" + i.ToString(), ls_users); Response.Write("</dl>"); Response.Write("</dd>"); } else { //不存在子部门 Response.Write("<dd class=\"folderClose\">"); Response.Write("<input type=\"checkbox\" name=\""+pis_name+"_sub"+i.ToString()+"\" value=\"" + dtdept.Rows[i]["hy_deptid"].ToString()+"\" align=\"left\" onclick=\"SelDept(this.name)\" style=\"width:13;\"> "); Response.Write(dtdept.Rows[i]["hy_deptname"].ToString()); Response.Write("<dl>"); //输出当前部门下的人员 HyoaClass.Hyoa_user Hyoa_user = new HyoaClass.Hyoa_user(); DataTable dtuser = Hyoa_user.GetUsers(dtdept.Rows[i]["hy_deptid"].ToString()); if (dtuser.Rows.Count > 0) { for (var j = 0; j < dtuser.Rows.Count; j++) { //判断已选中 if (ls_users.Contains("," + dtuser.Rows[j]["hy_userid"].ToString() + ",")) { Response.Write("<dt>"); Response.Write("<input type=\"checkbox\" checked=\"checked\" name=\"" + pis_name + "_subuser" + j.ToString() + "\" value=\""); Response.Write(dtuser.Rows[j]["hy_userid"].ToString() + "\" text=\"" + dtuser.Rows[j]["hy_username"].ToString() + "\" align=\"left\" style=\"width:13;\"> "); Response.Write(dtuser.Rows[j]["hy_username"].ToString()); Response.Write("</dt>"); } else { Response.Write("<dt>"); Response.Write("<input type=\"checkbox\" name=\"" + pis_name + "_subuser" + j.ToString() + "\" value=\""); Response.Write(dtuser.Rows[j]["hy_userid"].ToString() + "\" text=\"" + dtuser.Rows[j]["hy_username"].ToString() + "\" align=\"left\" style=\"width:13;\"> "); Response.Write(dtuser.Rows[j]["hy_username"].ToString()); Response.Write("</dt>"); } } } Response.Write("</dl>"); Response.Write("</dd>"); } } } //显示当前部门下的人员 HyoaClass.Hyoa_user Hyoa_user_curdept = new HyoaClass.Hyoa_user(); DataTable dtuser_curdept = Hyoa_user_curdept.GetUsers(pis_DeptId); if (dtuser_curdept.Rows.Count > 0) { for (var k = 0; k < dtuser_curdept.Rows.Count; k++) { //判断已选中 if (ls_users.Contains("," + dtuser_curdept.Rows[k]["hy_userid"].ToString() + ",")) { Response.Write("<dt>"); Response.Write("<input type=\"checkbox\" checked=\"checked\" name=\"" + pis_name + "_sub_subuser" + k.ToString() + "\" value=\""); Response.Write(dtuser_curdept.Rows[k]["hy_userid"].ToString() + "\" text=\"" + dtuser_curdept.Rows[k]["hy_username"].ToString() + "\" align=\"left\" style=\"width:13;\"> "); Response.Write(dtuser_curdept.Rows[k]["hy_username"].ToString()); Response.Write("</dt>"); } else { Response.Write("<dt>"); Response.Write("<input type=\"checkbox\" name=\"" + pis_name + "_sub_subuser" + k.ToString() + "\" value=\""); Response.Write(dtuser_curdept.Rows[k]["hy_userid"].ToString() + "\" text=\"" + dtuser_curdept.Rows[k]["hy_username"].ToString() + "\" align=\"left\" style=\"width:13;\"> "); Response.Write(dtuser_curdept.Rows[k]["hy_username"].ToString()); Response.Write("</dt>"); } } } }
private void DataPlay(int PageNo) { //判断当前用户是否有新建删除权限 HyoaClass.Hyoa_global Hyoa_global = new HyoaClass.Hyoa_global(); if (Hyoa_global.isHaveRole("Role9999", this.Session["hyuid"].ToString())) { this.isrole.Value = "1"; this.tdnewdoc.Visible = true; //新建 this.tddeldoc.Visible = true; //删除 } else { this.isrole.Value = "0"; this.tdnewdoc.Visible = false; //新建 this.tddeldoc.Visible = false; //删除 } //如果depid等于空,则返回按钮隐藏 if (this.Request.QueryString["deptid"] == null || this.Request.QueryString["deptid"] == "") { this.btnreturnback.Visible = false; } //得到当前页号 this.curpage.Text = PageNo.ToString(); HyoaClass.Hyoa_dept Hyoa_dept = new HyoaClass.Hyoa_dept(); DataTable dt; if (this.hy_deptname.Value != "") { //先判断是不是查询的,如果是查询的话,就不用管是哪一级了。全部列出来 Hyoa_dept.hy_deptname = this.hy_deptname.Value; dt = Hyoa_dept.GetdeptsBydeptname(); } else { if (this.txtdeptid.Value == "") { dt = Hyoa_dept.GetFirstlevdepts(); } else { dt = Hyoa_dept.GetSubDepts(this.txtdeptid.Value); } } DataTable tempTable = dt.Clone(); for (int i = (PageNo - 1) * System.Int32.Parse(PageSize.Text); i < PageNo * System.Int32.Parse(PageSize.Text); i++) { if (i > dt.Rows.Count - 1) break; DataRow dr = tempTable.NewRow(); for (int j = 0; j < dt.Columns.Count; j++) { dr[dt.Columns[j].ColumnName] = dt.Rows[i][j]; } tempTable.Rows.Add(dr); } int TotalRecord = dt.Rows.Count; this.sumts.Text = TotalRecord.ToString(); this.sumts2.Text = TotalRecord.ToString(); this.ShowTotalRecord.Text = TotalRecord.ToString(); //计算及显示总页数 int TotalPage; if (TotalRecord < System.Int32.Parse(PageSize.Text)) { TotalPage = 1; } else { if (TotalRecord % System.Int32.Parse(PageSize.Text) != 0) { TotalPage = TotalRecord / System.Int32.Parse(PageSize.Text) + 1; } else { TotalPage = TotalRecord / System.Int32.Parse(PageSize.Text); } } this.ShowTotalPage.Text = TotalPage.ToString(); this.rptlist.DataSource = tempTable; this.rptlist.DataBind(); dt.Clear(); }