SelectUser_List.aspx

using System;
using System.Collections.Generic;
using System.Data;
using System.Text;
using System.Threading;

using CMSC.Class;
using CMSC.Class.CsSubs;
using CMSC.OA.Dal.Sys.Base;
using CMSC.OA.Dal.Sys.Sys;
using CMSC.OA.Model.Sys.Sys;
using CMSC.OA.Web.Com.Class;

namespace CMSC.OA.Web.Com.Select
{
    public partial class SelectUser_List : CsPageSingle
    {
        private int PageNo = 1;
        private int PageSize = 100;
        private string SysCode = "";
        private string SearchMode = "";
        private string SysCode2 = "";
        private string PageFrame = "";
        private string BackObject = "";
        private string BackEvent = "";
        private string BackRow = "";
        private string JobCode = "";
        private string UserCode = "";
        private string UserName = "";
        private string TrueName = "";
        private string Contact = "";
        private string UserFlag = "";
        private string IsSysUser = "";
        private D_Sys_User dal = new D_Sys_User();
        private D_Sys_Org dal2 = new D_Sys_Org();

        protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
                this.PagePermit = "FreeView";
                this.LoginUser = Com_Sys.GetLoginUser(PageCookie);
                this.PageLoadData();
                this.AddScriptFile("table.js");
                this.CreatePage();
            }
            catch (ThreadAbortException) { }
            catch (Exception ex)
            {
                LoadTip.TipText = ex.Message;
                LoadTip.CloseLayer("SelectUser");
                Response.Write(LoadTip.SetScriptHtml());
                Response.End();
            }
        }

        #region 页面加载

        private void PageLoadData()
        {
            #region PageLoadData

            if (Request["pageframe"] == null || Request["pageframe"].ToString().Trim() == "")
                throw new Exception("获取Request参数数据为Null或空值");
            if (Request["obj"] == null || Request["obj"].ToString().Trim() == "")
                throw new Exception("获取Request参数数据为Null或空值");
            if (Request["fn"] == null || Request["fn"].ToString().Trim() == "")
                throw new Exception("获取Request参数数据为Null或空值");

            if (Request["searchmode"] != null && Request["searchmode"].ToString().Trim() != "") SearchMode = Request["searchmode"].ToString().Trim();
            if (Request["syscode2"] != null && Request["syscode2"].ToString().Trim() != "") SysCode2 = Request["syscode2"].ToString().Trim();
            if (Request["syscode"] != null && Request["syscode"].ToString().Trim() != "") SysCode = Request["syscode"].ToString().Trim();
            if (Request["jobcode"] != null && Request["jobcode"].ToString().Trim() != "") JobCode = Request["jobcode"].ToString().Trim();
            if (Request["usercode"] != null && Request["usercode"].ToString().Trim() != "") UserCode = Request["usercode"].ToString().Trim();
            if (Request["username"] != null && Request["username"].ToString().Trim() != "") UserName = Request["username"].ToString().Trim();
            if (Request["truename"] != null && Request["truename"].ToString().Trim() != "") TrueName = Request["truename"].ToString().Trim();
            if (Request["contact"] != null && Request["contact"].ToString().Trim() != "") Contact = Request["contact"].ToString().Trim();
            if (Request["userflag"] != null && Request["userflag"].ToString().Trim() != "") UserFlag = Request["userflag"].ToString().Trim();
            if (Request["issysuser"] != null && Request["issysuser"].ToString().Trim() != "") IsSysUser = Request["issysuser"].ToString().Trim();

            PageFrame = Request["pageframe"].ToString().Trim();
            BackObject = Request["obj"].ToString().Trim();
            BackEvent = Request["fn"].ToString().Trim();
            BackRow = Request["row"].ToString().Trim();
            #endregion
        }

        protected override StringBuilder SetEndHtml()
        {
            #region SetEndHtml
            StringBuilder html = new StringBuilder();

            ContextMenu cm = new ContextMenu();
            cm.AddMenu("mlink", "刷新列表", "refuseUserList();");
            html.Append(cm.BoxHtml());

            HiddenForm sf = new HiddenForm(0, "SearchForm", "get");
            sf.AddFormItem("pageframe", PageFrame);
            sf.AddFormItem("obj", BackObject);
            sf.AddFormItem("fn", BackEvent);
            sf.AddFormItem("row", BackRow);
            sf.AddFormItem("syscode", SysCode);
            sf.AddFormItem("page", "");
            html.Append(sf.BoxHtml());

            HiddenForm hf = new HiddenForm(0, "PostBackForm", "post");
            hf.Action = "SelectUser_List.aspx";
            hf.Target = "HiddenFrame";
            hf.AddFormItem("pageframe", PageFrame);
            hf.AddFormItem("obj", BackObject);
            hf.AddFormItem("fn", BackEvent);
            hf.AddFormItem("row", BackRow);
            hf.AddFormItem("syscode", SysCode);
            hf.AddFormItem("userids", "");
            hf.AddFormItem("delflag", "");
            html.Append(hf.BoxHtml());

            return html;
            #endregion
        }

        protected override StringBuilder EndScript()
        {
            #region EndScript
            StringBuilder js = new StringBuilder();

            js.Append(@"var CMSCTableView = new CMSC.TableView();");

            js.Append(@"function selectUser(userstrs) {");
            js.Append(@"if(CMSCTableView.CheckRowSelect()) {");
            js.Append(@"var datakey = CMSC.$$(""SelectDataKey"").value;");
            js.Append(@"var win = rootElement.CMSC.$$(""" + PageFrame + @""").contentWindow;");
            js.Append(@"win." + BackEvent + @"('" + BackObject + @"',userstrs,'" + BackRow + @"');");
            js.Append(@"rootElement.CMSC.FrameLayerClose(""SelectUser"");");
            js.Append(@"}");
            js.Append(@"}");

            js.Append(@"function addUser() {");
            js.Append(@"var layer = rootElement.CMSC.$$(""LayerForm"");");
            js.Append(@"layer.LayerId.value = ""AddUser"";");
            js.Append(@"layer.Permit.value = ""Sys_Base_User_Add"";");
            js.Append(@"layer.LayerTitle.value = ""添加一名新员工"";");
            js.Append(@"layer.CanMax.value = false;");
            js.Append(@"layer.LayerUrl.value = ""/Sys/Base/User_Add.aspx?select=1&syscode=" + SysCode + @""";");
            js.Append(@"layer.Padding.value = 20;");
            js.Append(@"layer.LayerWidth.value = 640;");
            js.Append(@"layer.LayerHeight.value = 430;");
            js.Append(@"");
            js.Append(@"layer.submit();");
            js.Append(@"}");

            js.Append(@"function editUser() {");
            js.Append(@"if(CMSCTableView.CheckRowSelect()) {");
            js.Append(@"var datakey = CMSC.$$(""SelectDataKey"").value;");
            js.Append(@"var layer = rootElement.CMSC.$$(""LayerForm"");");
            js.Append(@"layer.LayerId.value = ""EditUser"";");
            js.Append(@"layer.Permit.value = ""Sys_Base_User_Edit"";");
            js.Append(@"layer.LayerTitle.value = ""修改员工信息"";");
            js.Append(@"layer.CanMax.value = false;");
            js.Append(@"layer.LayerUrl.value = ""/Sys/Base/User_Edit.aspx?select=1&userid=""+datakey;");
            js.Append(@"layer.Padding.value = 20;");
            js.Append(@"layer.LayerWidth.value = 640;");
            js.Append(@"layer.LayerHeight.value = 430;");
            js.Append(@"");
            js.Append(@"layer.submit();");
            js.Append(@"}");
            js.Append(@"}");

            js.Append(@"function delUser() {");
            js.Append(@"if(CMSCTableView.CheckRowSelect()) {");
            js.Append(@"if(confirm(""确认将选中的员工帐号禁用吗?"")){");
            js.Append(@"var subform = CMSC.$$(""PostBackForm"");");
            js.Append(@"var datakey = CMSC.$$(""SelectDataKeys"").value;");
            js.Append(@"if (datakey=='') datakey = CMSC.$$(""SelectDataKey"").value;");
            js.Append(@"subform.subflag.value = 1;");
            js.Append(@"subform.userids.value = datakey;");
            js.Append(@"subform.submit();");
            js.Append(@"}");
            js.Append(@"}");
            js.Append(@"}");

            js.Append(@"function toPage(page){");
            js.Append(@"var subform = CMSC.$$(""SearchForm"");");
            js.Append(@"subform.subflag.value = 0;");
            js.Append(@"subform.page.value = page;");
            js.Append(@"subform.submit();");
            js.Append(@"}");

            js.Append(Com_Sys.TreeClickScript());

            js.Append(@"function refuseUserList(){");
            js.Append(@"this.location.href = ""SelectUser_List.aspx?pageframe=" + PageFrame + @"&obj=" + BackObject + @"&fn=" + BackEvent + @"&row=" + BackRow + @"&syscode=" + SysCode + @""";");
            js.Append(@"}");

            return js;
            #endregion
        }

        #endregion

        #region 显示表格

        protected override StringBuilder SetHtml()
        {
            #region SetHtml
            StringBuilder html = new StringBuilder();

            TableView tv = new TableView();
            List<M_Sys_Field> celllist = new D_Sys_Sys().GetSysFieldModelList(LoginUser.UserId, "ComSelectUser");
            if (celllist == null || celllist.Count <= 0) throw new Exception("无法获取数据显示结构信息。");
            foreach (M_Sys_Field cell in celllist) tv.AddHeaderColumn(cell.FieldName.Trim(), cell.IsLock, cell.Width);

            string filtersql = "";
            if (SearchMode.Trim() == "")
            {
                filtersql += "a.SysCode='" + SysCode.Replace("'", "") + "' ";
            }
            else
            {
                if (SysCode2.Trim() != "" || JobCode.Trim() != "" || UserCode.Trim() != "" || UserName.Trim() != "" || TrueName.Trim() != "" || Contact.Trim() != "" || UserFlag.Trim() != "" || IsSysUser.Trim() != "")
                {
                    filtersql += "(1=1 ";
                    if (SysCode2.Trim() != "") filtersql += "and a.SysCode like '" + SysCode2.Replace("'", "") + "%' ";
                    if (JobCode.Trim() != "") filtersql += "and a.JobCode='" + JobCode.Replace("'", "") + "' ";
                    if (UserCode.Trim() != "") filtersql += "and a.UserCode='" + UserCode.Replace("'", "") + "' ";
                    if (UserName.Trim() != "") filtersql += "and a.UserName like '%" + UserName.Replace("'", "") + "%' ";
                    if (TrueName.Trim() != "") filtersql += "and a.TrueName like '%" + TrueName.Replace("'", "") + "%' ";
                    if (Contact.Trim() != "") filtersql += "and a.Contact='" + Contact.Replace("'", "") + "' ";
                    if (UserFlag.Trim() != "") filtersql += "and a.UserFlag=" + Convert.ToInt16(UserFlag);
                    if (IsSysUser.Trim() != "") filtersql += "and a.IsSysUser=" + Convert.ToInt16(IsSysUser);
                    filtersql += ")";
                }
            }

            tv.SelectRows = false;
            tv.ShowIndex = true;
            tv.IndexColumnWidth = 50;
            tv.RowKeys = "UserId";

            tv.PageNo = PageNo;
            tv.PageSize = PageSize;
            tv.FilterSql = filtersql;
            tv.OrderSql = "order by pdb.SysCode,pdb.SortCode asc";
            tv.RowCount = dal.GetTableViewRowCount(tv);

            int rowindex = 1;
            DataSet ds = dal.GetTableViewPageDataSet(tv);
            foreach (DataRow dr in ds.Tables[0].Rows)
            {
                tv.AddRowBegin(rowindex, dr);
                foreach (M_Sys_Field cell in celllist) LoadTableViewRow(tv, cell, dr);
                tv.AddRowEnd();
                rowindex++;
            }

            return tv.BoxHtml();
            #endregion
        }

        private void LoadTableViewRow(TableView tv, M_Sys_Field cell, DataRow dr)
        {
            #region LoadTableViewRow

            string lockstr = (cell.IsLock == 0 ? "" : " lockcell");
            switch (cell.FieldValue.Trim())
            {
                case "UserCode":
                    tv.AddRowColumn(dr["UserCode"].ToString().Trim(), "left" + lockstr);
                    break;
                case "UserName":
                    string uname = "&nbsp;";
                    if (dr["UserName"].ToString().Trim() != "") uname = dr["UserName"].ToString().Trim();
                    tv.AddRowColumn(uname, "left" + lockstr);
                    break;
                case "TrueName":
                    tv.AddRowColumn(dr["TrueName"].ToString().Trim(), "left" + lockstr);
                    break;
                case "Select":
                    string aLink = @"<a href=""javascript:selectUser('" + dr["UserId"].ToString().Trim() + @"|" + dr["TrueName"].ToString().Trim() + @"|" + dr["SysCode"].ToString().Trim() + @"|" + dr["OrgName"].ToString().Trim() + @"|" + dr["Contact"].ToString().Trim() + @"');"">选择</a>";
                    tv.AddRowColumn(aLink, "center" + lockstr);
                    break;
            }

            #endregion
        }

        #endregion

        #region 回调函数

        protected override string PostCheckInput(int subflag)
        {
            #region PostCheckInput

            if (!CsClass.CheckParame(new string[] {
                Request.Form["syscode"],
                Request.Form["userids"]
            }))
            {
                return "在接收的数据中检测到异常的空值!";
            }
            else
            {
                return "";
            }

            #endregion
        }

        protected override SaveResult PostSave(int subflag)
        {
            #region PostSave

            try
            {
                if (subflag == 1)
                {
                    string UserIdList = Request.Form["userids"].ToString().Trim();
                    int ExecuteRows = dal.ModifyUserByUserIdList(UserIdList, 1, this.GetSysCodeByPagePermit("Sys_Base_User_Del"));
                    if (ExecuteRows >= 1 ? true : false)
                    {
                        SaveTip.IsOk = true;
                        SaveTip.TipText = "已成功禁用了【" + ExecuteRows + "】名员工!";
                        SaveTip.RefuseFrame("SelectUserFrame", "ListFrame");
                        return SaveTip;
                    }
                    else
                    {
                        SaveTip.IsOk = false;
                        SaveTip.TipText = "禁用员工异常失败!";
                        return SaveTip;
                    }
                }
                return null;
            }
            catch (Exception ex)
            {
                SaveTip.IsOk = false;
                SaveTip.TipText = ex.Message;
                return SaveTip;
            }

            #endregion
        }

        #endregion

    }
}

 

posted @ 2017-07-07 13:48  YueYuePeng  阅读(677)  评论(0编辑  收藏  举报