录播教室预约系统(十)-客户端部门管理员重置本单位其他人员密码

录播教室预约系统(十)-客户端部门管理员重置本单位其他人员密码

客户端代码:

 //发出的数据类型为int类型  ItemID为用户对应的ID
            ResMessage resMessage = tcpConnnection.SendReceiveObject<ResMessage>("ReqResetPsw", "ResResetPsw", 5000, itemID);            if (resMessage.Message == "操作成功")
            {
                paramHelper.ChangeParam("操作成功");

                MessageBox.Show("操作成功,用户密码为:123456");

                button1.Enabled = false;
            }            else
            {
                MessageBox.Show("出现错误,错误信息为:" + resMessage.Message);
            }

服务器端代码:

            //客户端管理员修改用户的密码
            NetworkComms.AppendGlobalIncomingPacketHandler<int>("ReqResetPsw", HandleResetPassword);

处理方法:

        //根据管理员提供的用户ID修改相应用户的密码

        private void HandleResetPassword(PacketHeader header, Connection connection, int  itemID)
        {
          Users theUser= DoUsers.GetUsers(itemID);
          //把密码恢复成123456
          theUser.Password = "123456";

          DoUsers.Save(theUser);

          ResMessage theMessage = new ResMessage();

          theMessage.Message = "操作成功";

          connection.SendObject("ResResetPsw", theMessage);

        }

操作类:

DoUsers

Users类:

[ProtoContract]    public class Users
    {        #region Constructors        public Users()
        { }        #endregion

        #region Private Properties        private int id = -1;        private string userID = string.Empty;        private string name = string.Empty;        private string password = string.Empty;        private string declaring = string.Empty;        private int status = -1;        private bool isMale = false;        private int userLevel = -1;        private bool enabled = false;        private DateTime registerTime = DateTime.UtcNow;        private DateTime lastLoginTime = DateTime.UtcNow;        private int depID = -1;        private string department = string.Empty;        #endregion

        #region Public Properties

        [ProtoMember(1)]        public int Id
        {            get { return id; }            set { id = value; }
        }
        [ProtoMember(2)]        public string UserID
        {            get { return userID; }            set { userID = value; }
        }
        [ProtoMember(3)]        public string Name
        {            get { return name; }            set { name = value; }
        }
        [ProtoMember(4)]        public string Password
        {            get { return password; }            set { password = value; }
        }
        [ProtoMember(5)]        public string Declaring
        {            get { return declaring; }            set { declaring = value; }
        }
        [ProtoMember(6)]        public int Status
        {            get { return status; }            set { status = value; }
        }
        [ProtoMember(7)]        public bool IsMale
        {            get { return isMale; }            set { isMale = value; }
        }
        [ProtoMember(8)]        public int UserLevel
        {            get { return userLevel; }            set { userLevel = value; }
        }
        [ProtoMember(9)]        public bool Enabled
        {            get { return enabled; }            set { enabled = value; }
        }
        [ProtoMember(10)]        public DateTime RegisterTime
        {            get { return registerTime; }            set { registerTime = value; }
        }
        [ProtoMember(11)]        public DateTime LastLoginTime
        {            get { return lastLoginTime; }            set { lastLoginTime = value; }
        }
        [ProtoMember(12)]        public int DepID
        {            get { return depID; }            set { depID = value; }
        }
        [ProtoMember(13)]        public string Department
        {            get { return department; }            set { department = value; }
        }        #endregion

    }
				
时间: 2024-12-15 01:38:47

录播教室预约系统(十)-客户端部门管理员重置本单位其他人员密码的相关文章

录播教室预约系统(八)-客户端部门管理员增加教室

录播教室预约系统(八)-客户端部门管理员增加教室 管理员增加完成后,其他用户就可以看到多个教室了,如图: 我们看一下客户端增加教室的代码: 添加教室:             //声明一个教室实体类             ClassRoom classRoom = == = tcpConnection.SendReceiveObject<ResMessage>(, ,  (resMessage.Message == =  + 我们看一下服务器端的处理程序 构造函数中声明: //学校管理员添加

录播教室预约系统(九)-客户端部门管理员设定教室的预约规则

录播教室预约系统(九)-客户端部门管理员设定教室的预约规则 设置预约规则的客户端代码:              int stopHourInt = (int)stopHour.Value;            int stopMinuteInt = (int)stopMinute.Value;            //截止的时间             int stopTimeInt = stopHourInt * 100 + stopMinuteInt;            //提前的

录播教室预约系统(十一)-客户端获取本单位的所有教室

客户端用户登陆后,在主界面中可以看到本单位的所有教室,我们来看一下是如何获取的: 客户端代码:    //根据用户获取功能教室列表         private void GetRooms(Users user)         {              //把当前用户信息发送个服务器端,并获取到本用户相关的教室列表              RoomList roomList = newTcpConnection.SendReceiveObject<RoomList>("Ge

录播教室预约系统(七)-客户端更改密码

界面如下: 客户端代码:  //用这2个属性映射新密码和旧密码             //原密码            this.currentUser.Password = textBox1.Text.Trim();             //新密码            this.currentUser.NewPassword = textBox2.Text.Trim();             //把带有密码信息的契约类 currentUser发送到服务器端,并获取返回结果     

录播教室预约系统序言

大概一年多年前吧,朋友让我帮他做一个预约系统,当时刚好在学习networkcomms.net的2.3.1版本(本人当时已购买商业版),正好想测试一下networkcomms.net通讯框架的稳定性,于是便开发了此预约系统,基于networkcomms2.3.1 .部署后,系统非常的稳定,平时的cpu占有率非常的低,很少有达到5%以上的情况,当然用户数也并不多,并发数最多大概100左右,没有出现过宕机等情况. 下面将会写一系列文章,来介绍录播教室预约系统的开发,诸位朋友可以了解如何基于networ

录播教室预约系统(六)-注册新用户

预约系统中,新用户可以自己注册,然后管理员开通. 注册界面如下: 客户端新用户注册代码:       button1_Click((txtUserID.Text.Trim ()==|| txtUserName.Text.Trim ()=== ==== = newTcpConnection.SendReceiveObject<ResMessage>(, ,  (resMessage.Message ==  + 服务器端的相关处理代码: 构造函数中声明:   //注册新用户            

录播教室预约系统(四)-ClassRoom表[带有外键的表]

ClassRoom是与教室信息相关的表,包含教室的名称 这个表比前面介绍的DepTable表稍微复杂点,他有一列DepID 这列是与DepTable表中的ID相对应的的. 有了DepID这一列,我们就可以根据DepID 获取某单位的所有教室. 我们暂时把DepID这一列叫做外键列吧.对于拥有外键列的表,仍然可以用我们的codesmith模板生成相关的存储过程和类.有的时候我们希望能够以外键为参数查找相关的数据, 所以在对应的codesmith模板中增加了以外键为参数查找和以外键为参数自动分页查找

录播教室预约系统(五)-用户登陆

客户端登陆界面如下: 客户端代码:                    Program.cs 中                    NetworkComms.IgnoreUnknownPacketTypes = =  ConnectionInfo(, =                     MainForm mainForm =                      frmLogin loginForm =                       (loginForm.Show

录播教室预约系统(一)-数据库表

数据库用的是mssql2005. 数据库表如下: USE [RoomSchedule] GO /****** 对象: Table [dbo].[ClassRoom] 脚本日期: 02/07/2015 22:41:56 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[ClassRoom]( [Id] [int] IDENTITY(1000,1) NOT NULL, [RoomName] [nv