using System; using TSingSoft.Web.Pages; using TSingSoft.WebControls2; using System.Web.UI; using BWP.B3DogAuth; using BWP.B3Frameworks; using BWP.Web; using BWP.Web.Utils; using Forks.EnterpriseServices.BusinessInterfaces; namespace Bwp.Web.Pages { class DogLoginUserList : ListPage { protected override void CreateDFBrowseGridColumns(DFBrowseGrid grid) { AddDFBrowseGridColumn(grid, "ID"); AddDFBrowseGridColumn(grid, "User_Name"); AddDFBrowseGridColumn(grid, "Remark"); AddDFBrowseGridColumn(grid, "Stopped"); grid.AllowDeletion = CheckDefaultRole("删除"); } protected override void InitGridToolbar(HLayoutPanel toolbar) { AddInputControls(toolbar ); } private IDogLoginUserBL bl = BIFactory.Create(); void AddInputControls(HLayoutPanel hPanel) { if (!CheckDefaultRole("新建")) return; var dfContainer = new DFContainer(); hPanel.Add(new LiteralControl("序号:")); DFTextBox idInput = hPanel.Add(dfContainer.Add(InputCreator.DFTextBox, "ID")); hPanel.Add(new LiteralControl("用户:")); DFChoiceBox userInput = hPanel.Add(dfContainer.Add(InputCreator.DFChoiceBox("Wpf_Users", "User_Name"), "User_ID")); hPanel.Add(new LiteralControl("备注:")); DFTextBox remarkInput = hPanel.Add(dfContainer.Add(InputCreator.DFTextBoxFromRemark, "Remark")); TSButton button = new TSButton("新建"); hPanel.Add(button); button.Click += delegate(object sender, EventArgs e) { dfContainer.DFObject = new DogLoginUser(); dfContainer.GetFromUI(); bl.Insert(dfContainer.DFObject); idInput.Text = string.Empty; userInput.Value = string.Empty; userInput.DisplayValue = string.Empty; remarkInput.Text = string.Empty; StartQuery(); }; } protected override void AddQueryControls(VLayoutPanel vPanel) { var tablePanel = new TableLayoutPanel(8, 2); vPanel.Add(tablePanel); int row = 0; const int labelWidth = 4; tablePanel.Add(0, 1, row, row + 1, new DFLabel(mDFInfo.Fields["ID"], labelWidth)); tablePanel.Add(1, 2, row, row + 1, mQueryContainer.Add(new DFTextBox(mDFInfo.Fields["ID"]), "ID")); tablePanel.Add(2, 3, row, row + 1, new DFLabel(mDFInfo.Fields["User_Name"], 4)); tablePanel.Add(3, 4, row, row + 1, mQueryContainer.Add(new DFTextBox(mDFInfo.Fields["User_Name"]), "User_Name")); tablePanel.Add(4, 5, row, row + 1, new SimpleLabel("是否停用", 4)); DFBoolComboBox boolComboBox; tablePanel.Add(5, 6, row, row + 1, boolComboBox = mQueryContainer.Add(QueryCreator.DFBoolComboBox(mDFInfo.Fields["Stopped"]), "Stopped")); boolComboBox.Value = false; tablePanel.Add(6, 7, row, row + 1, new DFLabel(mDFInfo.Fields["Remark"], 4)); tablePanel.Add(7,8, row, row + 1, mQueryContainer.Add(new DFTextBox(mDFInfo.Fields["Remark"]), "Remark")); } protected bool CheckDefaultRole(string lastRoleName, bool notExistsAsTrue = false) { string fullRoleName = PluginName + "." + LogicName + "." + lastRoleName; return CurrentUser.EIsInRole(fullRoleName, notExistsAsTrue); } protected override void OnLoad(EventArgs e) { base.OnLoad(e); if (!IsPostBack) { StartQuery(); } } } }