/// <summary>
        /// 删除管理者正在值班信息
        /// </summary>
        /// <param name="ManID">管理者ID</param>
        private void DeleteOnWork(UserOnWork ManID)
        {
            //利用退出接口,和工厂创建退出的数据管理类。
            LoginOutMangerIDAL idal = (LoginOutMangerIDAL)fact.CreateUser("LoginOutMangerDAL");

            //删除管理者正在值班信息
            idal.DeleteOnWork(ManID);
        }
Beispiel #2
0
        /// <summary>
        /// 向值班表插入用户数据
        /// </summary>
        /// <param name="insertonwork">值班人员</param>
        /// <returns>整数</returns>
        private int InserUserOnWork(UserOnWork insertonwork)
        {
            //调用接口实例化,D层查询类
            LoginIDAL idal = (LoginIDAL)fact.CreateUser("LoginDal");
            //接收接口的返回值
            int Result = idal.InsertUser(insertonwork);

            return(Result);
        }
Beispiel #3
0
        /// <summary>
        /// 用户登录
        /// </summary>
        /// <param name="userlevel">用户</param>
        /// <returns>是否登录成功!</returns>
        public override string UserLogin(UserLevel userlevel, Form form)
        {
            //返回信息
            string StrMesg = "";
            //调用接口实例化D层查询类
            LoginIDAL idal = (LoginIDAL)fact.CreateUser("LoginDal");
            //实例化管理者实体和赋值
            Managerial Manageria = new Managerial();

            Manageria.ManId = userlevel.UserID;//登录id赋值给管理者ID
            //接受管理者信息
            DataTable ManTable = idal.SelectState(Manageria);

            //判断账号是否使用
            if (ManTable.Rows[0][3].ToString().Trim() == "使用")
            {
                #region 判断管理者是否已经登录
                //实例化值班实体与赋值
                UserOnWork userOnWork = new UserOnWork();
                userOnWork.ManId = userlevel.UserID;//值班实体的管理者id赋值
                //接受接口的返回值,返回整个值班表的信息。
                DataTable OnWorkTable = idal.SelectOnUser(userOnWork);
                //判断管理者是否已经登录
                if (OnWorkTable.Rows.Count == 0) //没有登录
                {
                    form.Hide();                 //隐藏窗体
                    #region 向值班表插入信息
                    //给值班实体赋值
                    userOnWork.Level    = userlevel.Userlevel;                              //管理者级别
                    userOnWork.Name     = ManTable.Rows[0][1].ToString().Trim();            //管理者姓名
                    userOnWork.Ondate   = DateTime.Now.Date;                                //登录日期
                    userOnWork.OnTime   = DateTime.Parse(DateTime.Now.ToShortTimeString()); //登录时间
                    userOnWork.Computer = Computer.GetMachineName();                        //计算机名
                    //调用插入方法
                    InserUserOnWork(userOnWork);
                    #endregion
                    //给全局ID赋值
                    UserLevel.UserIdall = userlevel.UserID;
                    StrMesg             = "登录成功!";
                    //显示管理员窗体
                    Form CreatForm = CreatfactForm.CreatFrom("AdminMain"); //实例化管理员窗体
                    CreatForm.Show();                                      //显示窗体
                }
                else
                {
                    StrMesg = "此账号已登录!";
                }
                #endregion
            }
            else
            {
                StrMesg = "此账号未使用,请激活使用!";
            }//end if

            return(StrMesg);
        }
Beispiel #4
0
        /// <summary>
        /// 删除正在值班的管理者
        /// </summary>
        /// <param name="OnWork">值班管理者实体</param>
        /// <returns>受影响行数</returns>
        public int DeleteOnWork(UserOnWork OnWork)
        {
            //定义参数
            SqlParameter[] sqlparams = { new SqlParameter("@ManID", OnWork.ManId) };
            //定义SQL语句
            string sql = @"delete OnWorkMan where ManID=@ManID";
            //接受受影响行数
            int Relust = sqlHelper.ExecuteNonQuery(sql, sqlparams, CommandType.Text);

            return(Relust);//返回受影响行数
        }
Beispiel #5
0
        /// <summary>
        /// 查询正在值班教师
        /// </summary>
        /// <param name="userOnWork">管理者正在工作实体</param>
        /// <returns>正在值班管理信息</returns>
        public DataTable SelectOnManWork(UserOnWork userOnWork)
        {
            //定义参数
            SqlParameter[] sqlpams = { new SqlParameter("@ManLevel", userOnWork.Level) };
            //定义查询参数
            string sql = @"select ManID, ManLevel,OpertionName from OnWorkMan where ManLevel=@ManLevel";
            //接受查询返回值
            DataTable SelectOnWorkTable = sqlHelper.ExecuteQuery(sql, sqlpams, CommandType.Text);

            return(SelectOnWorkTable);
        }
Beispiel #6
0
        /// <summary>
        /// 查询正在值班管理者信息
        /// </summary>
        /// <param name="OnWork">正在值班管理实体</param>
        /// <returns>整个值班表信息</returns>
        public DataTable SelectOnWork(UserOnWork OnWork)
        {
            //定义参数
            SqlParameter[] sqlparams = { new SqlParameter("@ManID", OnWork.ManId) };
            //定义SQL语句
            string sql = @"select * from OnWorkMan where ManID=@ManID";
            //把查询结果储存到临时表
            DataTable OnWorkTable = sqlHelper.ExecuteQuery(sql, sqlparams, CommandType.Text);

            //返回整个表的信息
            return(OnWorkTable);
        }
        /// <summary>
        /// 向管理者值班表插入信息
        /// </summary>
        /// <param name="UserOnWork">值班表实体</param>
        /// <returns>整个值班表信息</returns>
        public int InsertUser(UserOnWork UserOnWork)
        {
            //定义参数
            SqlParameter[] sqlparams = { new SqlParameter("@ManID",        UserOnWork.ManId),
                                         new SqlParameter("@ManLevel",     UserOnWork.Level),
                                         new SqlParameter("@OpertionName", UserOnWork.Name),
                                         new SqlParameter("@OnDate",       UserOnWork.Ondate),
                                         new SqlParameter("@OnTime",       UserOnWork.OnTime),
                                         new SqlParameter("@Computer",     UserOnWork.Computer) };
            //定义SQL语句
            string sql = @"insert into OnWorkMan values(@ManID,@ManLevel,@OpertionName,@OnDate,@OnTime,@Computer)";
            //接受受影响的行数
            int Relust = sqlHelper.ExecuteNonQuery(sql, sqlparams, CommandType.Text);

            return(Relust);//返回受影响的行数
        }
Beispiel #8
0
        /// <summary>
        /// 查询值班的管理者
        /// </summary>
        /// <param name="ManLevel">值班管理者等级</param>
        /// <param name="Strmsg">返回提示信息</param>
        /// <returns>操作员信息</returns>
        public DataTable selectOnManWork(string ManLevel, ref string Strmsg)
        {
            //转换成对应实体
            UserOnWork userOnWork = new UserOnWork();

            userOnWork.Level = ManLevel;
            //调用查询正在值班教师数据层接口
            OnManWorkIDAL onmanWorkIDAL = (OnManWorkIDAL)fact.CreateUser("OnManWorkDAL");
            //调用查询方法
            DataTable SelectOnManWork = onmanWorkIDAL.SelectOnManWork(userOnWork);

            //判断是否有操作员值班信息
            if (SelectOnManWork.Rows.Count != 0)//说明有正在值班操作员数据
            {
                Strmsg = "已显示当前全部值班操作员";
            }
            else
            {
                Strmsg = "暂时没有值班的操作员!";
            }
            return(SelectOnManWork);
        }
        /// <summary>
        /// 管理者退出
        /// </summary>
        /// <param name="ManID">管理者ID</param>
        /// <returns>是否退出成功!</returns>
        public void LoginOutManger(string ManID)
        {
            //转换成正在值班的管理者实体
            UserOnWork OnWork = new UserOnWork();

            OnWork.ManId = int.Parse(ManID);
            //利用退出接口,和工厂创建退出的数据管理类。
            LoginOutMangerIDAL idal = (LoginOutMangerIDAL)fact.CreateUser("LoginOutMangerDAL");
            //接受正在值班者信息
            DataTable OnWorkTable = idal.SelectOnWork(OnWork);

            //判断级别
            if (OnWorkTable.Rows[0][1].ToString() == "管理员")
            {
                //删除正在上机记录
                DeleteOnWork(OnWork);
            }
            else if (OnWorkTable.Rows[0][1].ToString() == "操作员")
            {
                #region 操作员工作记录实体赋值
                OpertionWork opertionWork = new OpertionWork();
                opertionWork.ManId    = int.Parse(OnWorkTable.Rows[0][0].ToString());      //管理者ID
                opertionWork.Level    = OnWorkTable.Rows[0][1].ToString();                 //管理者等级
                opertionWork.Name     = OnWorkTable.Rows[0][2].ToString();                 //管理者姓名
                opertionWork.Ondate   = DateTime.Parse(OnWorkTable.Rows[0][3].ToString()); //管理者登录日期
                opertionWork.OnTime   = OnWorkTable.Rows[0][4].ToString();                 //管理者登录时间
                opertionWork.Update   = DateTime.Now.Date;                                 //管理者下机日期
                opertionWork.UPTime   = DateTime.Now.ToShortTimeString();                  //管理者下机时间
                opertionWork.Computer = OnWorkTable.Rows[0][5].ToString();                 //电脑名字
                #endregion
                //更新操作员工作记录
                idal.InertOpertionWork(opertionWork);
                //删除正在上机记录
                DeleteOnWork(OnWork);
            }
            Environment.Exit(0);//退出程序
        }