예제 #1
0
        /// <summary>
        /// 检测借书人信息
        /// </summary>
        /// <param name="username">借书人</param>
        /// <returns>提示信息</returns>
        public string Checkuser(string username)
        {
            string         message        = string.Empty;
            UerInfo        userinfo       = new UerInfo();
            GetLoanInfoMgr getLoanInfoMgr = new GetLoanInfoMgr();

            userinfo = getLoanInfoMgr.CheckUserInfo(username);
            if (userinfo.Booknum >= 5)
            {
                userinfo.Isborrow = false;
                message           = "每人最多可以借阅5本书,你已经借阅5本书,不能再借阅。#0";
            }
            else if (userinfo.OutBack > 0)
            {
                GetBookInfoMgr     getBookInfoMgr     = new GetBookInfoMgr();
                GetBookItemInfoMgr getBookItemInfoMgr = new GetBookItemInfoMgr();
                StringBuilder      messagesb          = new StringBuilder("您所借图书:");
                foreach (Guid orderid in userinfo)
                {
                    Guid     bookid         = getBookItemInfoMgr.GetBookID(orderid);
                    Bookinfo borrowbookinfo = getBookInfoMgr.GetBookInfoBybookid(bookid);
                    messagesb.Append("《" + borrowbookinfo.Title + "》");
                }

                messagesb.Append(" 超期依然未归还,请归还再借阅。#0");
                message           = messagesb.ToString();
                userinfo.Isborrow = false;
            }
            else
            {
                message = this.GetreturnMessage(username);
            }

            return(message);
        }
예제 #2
0
        /// <summary>
        /// 查询该人借书超期数量
        /// </summary>
        /// <param name="name">借阅人姓名</param>
        /// <param name="conn">数据库连接</param>
        /// <returns>超期数量</returns>
        private UerInfo GetOutTimebooksum(string name, IDbConnection conn)
        {
            UerInfo userinfo = new UerInfo();

            userinfo = this.loanInfoAccess.GetOutTimebooksum(name, conn);
            return(userinfo);
        }
예제 #3
0
        /// <summary>
        /// 检测借书人借书信息
        /// </summary>
        /// <param name="userName">借书人</param>
        /// <returns>借书人信息</returns>
        public UerInfo CheckUserInfo(string userName)
        {
            UerInfo userinfo = new UerInfo();

            int    booknum = 0;
            string result  = string.Empty;

            booknum          = this.GetbooknumbyUsername(userName);
            userinfo.Booknum = booknum;
            if (booknum < 5)
            {
                userinfo         = this.GetOutTimebooksum(userName);
                userinfo.OutBack = userinfo.Count;
            }

            return(userinfo);
        }
예제 #4
0
        /// <summary>
        /// 查询该人借书超期数量
        /// </summary>
        /// <param name="name">借阅人姓名</param>
        /// <param name="conn">数据库连接</param>
        /// <returns>超期信息</returns>
        public UerInfo GetOutTimebooksum(string name, IDbConnection conn)
        {
            UerInfo userinfo = new UerInfo();

            try
            {
                string         sqlforbookitem = "SELECT LoanDate, OrderNum FROM LoanInfo WHERE UserName= @name";
                SqlParameter[] parameters     = { new SqlParameter("@name", SqlDbType.NVarChar, 50) };
                parameters[0].Value = name;

                // 统计数量
                using (SqlDataReader result = SqlHelper.ExecuteReader(null, conn as SqlConnection, sqlforbookitem, parameters))
                {
                    if (result.HasRows)
                    {
                        DateTime tadytime = DateTime.Now;
                        while (result.Read())
                        {
                            DateTime borrowtime = result.GetDateTime(0);
                            Guid     orderid    = result.GetGuid(1);
                            if ((tadytime - borrowtime).Days >= 30)
                            {
                                userinfo.OutBack++;
                                userinfo.Add(orderid);
                            }
                        }
                    }

                    result.Close();
                }
            }
            catch (Exception exp)
            {
                AppException appexp = new AppException("查询该人借书超期数量", exp, ExceptionLevel.Error);
                LogManager.Log.WriteException(appexp);
            }

            return(userinfo);
        }
예제 #5
0
 /// <summary>
 /// 查询该人借书超期数量
 /// </summary>
 protected override void ExecuteMethods()
 {
     this.uerInfo = this.GetOutTimebooksum(this.userName, this.Connection);
 }