/******************************************************************************* * Copyright(c) 2014 DongkeSoft All rights reserved. / Confidential * 类的信息: * 1.程序名称:F_MST_0208.cs * 2.功能描述:用户管理 * 编辑履历: * 作者 日期 版本 修改内容 * 孔赫 2024/06/12 1.00 新建 *******************************************************************************/ using System; using System.Collections.Generic; using System.Data; using System.Windows.Forms; using Dongke.IBOSS.PRD.Basics.BaseControls; using Dongke.IBOSS.PRD.Basics.BaseResources; using Dongke.IBOSS.PRD.Basics.DockPanel; using Dongke.IBOSS.PRD.Client.CommonModule; using Dongke.IBOSS.PRD.WCF.DataModels; using Dongke.IBOSS.PRD.WCF.Proxys; using Dongke.IBOSS.PRD.WCF.Proxys.SystemModuleService; namespace Dongke.IBOSS.PRD.Client.SystemModule { /// /// 用户管理 /// public partial class F_MST_0208 : DockPanelBase { #region 成员变量 // 单例模式 private static F_MST_0208 _instance; // 最后选择行 private int _selecedRow; // 用户管理实体类 private SUserEntity _userInfo; public enum ActionTypeEnum { /// /// pc登录 /// PC登录 = 0, /// /// PC登出 /// PC登出 = 1, /// /// 移动设备登录 /// 移动设备登录 = 2, /// /// 移动设备登出 /// 移动设备登出 = 3, /// /// PC登录MBC /// PC登录MBC = 4, /// /// PC登出MBC /// /// PC登出MBC = 5 } #endregion #region 单例模式 /// /// 单例模式,防止重复创建窗体 /// public static F_MST_0208 Instance { get { if (_instance == null) { _instance = new F_MST_0208(); } return _instance; } } #endregion #region 构造函数 public F_MST_0208() { InitializeComponent(); this.Text = FormTitles.F_MST_0208; this.gbxCondition.Text = Constant.LABEL_QUERY_CONDITIONS; this.btnSearch.Text = ButtonText.BTN_SEARCH; this.btnClearCondition.Text = ButtonText.BTN_CLEARCONDITION; DataTable dt = new DataTable(); dt.Columns.Add("id", typeof(string)); dt.Columns.Add("actiontype", typeof(string)); DataRow dr = dt.NewRow(); int d = 0; var type = typeof(ActionTypeEnum); foreach (string name in Enum.GetNames(type)) { dr = dt.NewRow(); dr[0] = (int)Enum.Parse(type, name); dr[1] = name; dt.Rows.Add(dr); d++; } dr = dt.NewRow(); dr[0] = 6; dr[1] = "web质量登记"; dt.Rows.Add(dr); cbActionType.DisplayMember = "actiontype"; cbActionType.DataSource = dt; cbActionType.Text = ""; } #endregion #region 事件 /// /// 窗体加载事件 /// /// /// private void FrmUser_Load(object sender, EventArgs e) { try { //加载权限 //FormPermissionManager.FormPermissionControl(this.Name, this, // Dongke.IBOSS.PRD.Client.DataModels.LogInUserInfo.CurrentUser.CurrentUserEntity.UserRightData, // Dongke.IBOSS.PRD.Client.DataModels.LogInUserInfo.CurrentUser.CurrentUserEntity.FunctionData); // 设置表格不自动创建列 this.dgvUserLogin.AutoGenerateColumns = false; this.SetToolStripButtonEnable(); this.scbOrganization.EditReadOnly = true; this.opentime.Value = DateTime.Now.AddHours(-1); this.closetime.Value = DateTime.Now; } catch (Exception ex) { // 对异常进行共通处理 ExceptionManager.HandleEventException(this.ToString(), System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex); } } /// /// 搜索按钮事件 /// /// /// private void btnSearch_Click(object sender, EventArgs e) { try { this.btnSearch.Enabled = false; this.btnClearCondition.Enabled = false; DataSet userDataSet = this.SearchUserData(); this.btnSearch.Enabled = true; this.btnClearCondition.Enabled = true; this.scbOrganization.EditReadOnly = true; if (userDataSet != null) { base.DataSource = (DataSet)userDataSet; if (this.DataSource != null && this.DataSource.Tables.Count > Constant.INT_IS_ZERO) { this.dgvUserLogin.DataSource = this.DataSource.Tables[0]; #region //foreach (DataGridViewRow gvrFor in this.dgvUser.Rows) //{ // string ValueStr = ""; // string ValueNum = gvrFor.Cells["ValueFlag"].Value.ToString(); // switch (ValueNum) // { // case "1": // ValueStr = "正常"; // break; // case "0": // ValueStr = "停用"; // break; // default: // break; // } // gvrFor.Cells["checkValueFlag"].Value = ValueStr; // string StateStr = gvrFor.Cells["IsLocked"].Value.ToString(); // if (StateStr == "1") // { // gvrFor.Cells["IsLocked"].Value = "锁死"; // } // else // { // gvrFor.Cells["IsLocked"].Value = "正常"; // } //} #endregion if (this.DataSource.Tables[0].Rows.Count <= Constant.INT_IS_ZERO) { // 提示未查找到数据 MessageBox.Show(Messages.MSG_CMN_I002, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information); } } } this.SetToolStripButtonEnable(); } catch (Exception ex) { this.btnSearch.Enabled = true; this.btnClearCondition.Enabled = true; // 对异常进行共通处理 ExceptionManager.HandleEventException(this.ToString(), System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex); } } /// /// 清空输入查询寻条件 /// /// /// private void btnClear_Click(object sender, EventArgs e) { this.txtUserCode.Clear(); this.txtUserName.Clear(); this.scbOrganization.ClearValue(); this.cbActionType.Text = ""; this.opentime.Value = DateTime.Now.AddHours(-1); this.closetime.Value = DateTime.Now; } /// /// 窗体关闭事件 /// /// /// private void F_MST_0203_FormClosed(object sender, FormClosedEventArgs e) { _instance = null; } /// /// 自动适应列宽事件 /// /// /// private void tsbtnAdaptive_Click(object sender, EventArgs e) { this.dgvUserLogin.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells); } /// /// 窗体关闭事件 /// /// /// private void tsbtnClose_Click(object sender, EventArgs e) { this.Close(); } /// /// 数据表格鼠标点击事件 /// /// /// private void dgvUser_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e) { //if (e.RowIndex != -Constant.INT_IS_ONE) //{ // string ValueFlag = this.dgvUser.Rows[e.RowIndex].Cells["IsLocked"].Value.ToString(); // if (ValueFlag == "锁死" || ValueFlag == "1") // { // this.tsbtnUnlock.Enabled = true; // } // else // { // this.tsbtnUnlock.Enabled = false; // } //} } /// /// 打印工号事件 /// /// /// private void tsbPrintCode_Click(object sender, EventArgs e) { try { if (this.dgvUserLogin.Rows.Count == Constant.INT_IS_ZERO) { // 提示信息 MessageBox.Show(Messages.MSG_CMN_W023, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } List codeList = new List(); foreach (DataGridViewRow row in this.dgvUserLogin.Rows) { codeList.Add(row.Cells["UserCode"].Value.ToString()); } F_MST_0205 fMST0205 = new F_MST_0205(); fMST0205.BarcodeList = codeList; fMST0205.ShowDialog(); } catch (Exception ex) { // 对异常进行共通处理 ExceptionManager.HandleEventException(this.ToString(), System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex); } } #endregion #region 私有方法 /// /// 获取用户列表 /// /// private DataSet SearchUserData() { try { ClientRequestEntity cre = new ClientRequestEntity(); cre.NameSpace = "F_MST_0208"; cre.Name = "GetUserLoginLog"; cre.Properties["UserCode"] = this.txtUserCode.Text.Trim(); cre.Properties["UserName"] = this.txtUserName.Text.Trim(); cre.Properties["Organization"] = this.scbOrganization.CheckedValue + ""; cre.Properties["ActionType"] = cbActionType.Text; cre.Properties["opentime"] =this.opentime.Value; cre.Properties["closetime"] = this.closetime.Value; ServiceResultEntity sre = SystemModuleProxy.Service.DoRequest(cre); if (sre.Status == Basics.BaseResources.Constant.ServiceResultStatus.Success) { return sre.Data; } return null; } catch (Exception ex) { throw ex; } } /// /// 获取输入的用户信息 /// /// private SUserEntity GetUserEntityFromLayout() { this._userInfo = new SUserEntity(); // 用户编码 this._userInfo.UserCode = this.txtUserCode.Text.Trim(); // 用户姓名 this._userInfo.UserName = this.txtUserName.Text.Trim(); // 所属部门 this._userInfo.OrganizationCode = this.scbOrganization.SearchedValue + ""; // 所属部门 this._userInfo.OrganizationID = scbOrganization.SearchedPKMember; // MAC //this._userInfo.LimitMAC = this.txtMAC.Text.Trim(); //// 备注 //this._userInfo.Remarks = this.txtRemarks.Text.Trim(); //if (this.chkVYes.Checked != this.chkVNo.Checked) //{ // if (this.chkVNo.Checked) // { // this._userInfo.IsValueFlag = "0"; // } // else if (this.chkVYes.Checked) // { // this._userInfo.IsValueFlag = "1"; // } //} //if (this.chkLYes.Checked != this.chkLNo.Checked) //{ // if (this.chkLNo.Checked) // { // this._userInfo.IsLocked = "1"; // } // else if (this.chkLYes.Checked) // { // this._userInfo.IsLocked = "0"; // } //} return _userInfo; } /// /// 设置工具按钮的可用状态 /// private void SetToolStripButtonEnable() { //if (this.dgvUserLogin.CurrentCell != null) //{ // //this.tsbtnUnlock.Enabled = true; // //this.tsbtnResetPassword.Enabled = true; // //this.tsbtnEdit.Enabled = true; // //this.tsbtnCopy.Enabled = true; // //this.tsbtnPurviewRight.Enabled = true; // //this.tsbtnFunctionRight.Enabled = true; // //int valueFlag = Convert.ToInt32(dgvUser.CurrentRow.Cells["valueFlag"].Value.ToString()); // string valueFlag = this.dgvUserLogin.Rows[dgvUserLogin.CurrentCell.RowIndex].Cells["IsLocked"].Value.ToString(); // if (valueFlag == "1") // { // //this.tsbtnUnlock.Enabled = true; // } // else // { // //this.tsbtnUnlock.Enabled = false; // } // // admin用户不能分配权限 // //if ("ADMIN".Equals(dgvUser.CurrentRow.Cells["UserCode"].Value.ToString().ToUpper())) // //{ // // this.tsbtnFunctionRight.Enabled = false; // //} //} //else //{ // //this.tsbtnUnlock.Enabled = false; // //this.tsbtnResetPassword.Enabled = false; // //this.tsbtnEdit.Enabled = false; // //this.tsbtnCopy.Enabled = false; // //this.tsbtnPurviewRight.Enabled = false; // //this.tsbtnFunctionRight.Enabled = false; //} } /// /// 保存组织机构 /// /// 影响的行数 private object UnlockUserStatus() { try { return SystemModuleProxy.Service.UnlockUserStatus(Convert.ToInt32(this.dgvUserLogin.CurrentRow.Cells["UserID"].Value)); } catch (Exception ex) { throw ex; } } #endregion } }