⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 frmmain.frm

📁 自考软件工程_宋瑞峰 自考软件工程_宋瑞峰
💻 FRM
📖 第 1 页 / 共 4 页
字号:
            ImageIndex      =   4
         EndProperty
         BeginProperty Button5 {66833FEA-8583-11D1-B16A-00C0F0283628} 
            Caption         =   "图书入库"
            Object.ToolTipText     =   "添加图书"
            ImageIndex      =   5
         EndProperty
         BeginProperty Button6 {66833FEA-8583-11D1-B16A-00C0F0283628} 
            Style           =   3
         EndProperty
         BeginProperty Button7 {66833FEA-8583-11D1-B16A-00C0F0283628} 
            Caption         =   "图书浏览"
            Object.ToolTipText     =   "查询图书"
            ImageIndex      =   6
         EndProperty
         BeginProperty Button8 {66833FEA-8583-11D1-B16A-00C0F0283628} 
            Caption         =   "读者浏览"
            Object.ToolTipText     =   "浏览读者状况"
            ImageIndex      =   7
         EndProperty
         BeginProperty Button9 {66833FEA-8583-11D1-B16A-00C0F0283628} 
            Caption         =   "借阅浏览"
            Object.ToolTipText     =   "浏览借阅关系"
            ImageIndex      =   8
         EndProperty
         BeginProperty Button10 {66833FEA-8583-11D1-B16A-00C0F0283628} 
            Style           =   3
         EndProperty
         BeginProperty Button11 {66833FEA-8583-11D1-B16A-00C0F0283628} 
            Caption         =   "注销用户"
            Object.ToolTipText     =   "切换用户"
            ImageIndex      =   9
         EndProperty
         BeginProperty Button12 {66833FEA-8583-11D1-B16A-00C0F0283628} 
            Style           =   3
         EndProperty
         BeginProperty Button13 {66833FEA-8583-11D1-B16A-00C0F0283628} 
            Caption         =   "关于"
            ImageIndex      =   10
         EndProperty
         BeginProperty Button14 {66833FEA-8583-11D1-B16A-00C0F0283628} 
            Style           =   3
         EndProperty
         BeginProperty Button15 {66833FEA-8583-11D1-B16A-00C0F0283628} 
            Caption         =   "退出系统"
            Object.ToolTipText     =   "退出图书管理系统"
            ImageIndex      =   2
         EndProperty
      EndProperty
   End
   Begin VB.Label Label2 
      Caption         =   "您借阅如下书"
      ForeColor       =   &H000000FF&
      Height          =   255
      Left            =   360
      TabIndex        =   7
      Top             =   5760
      Width           =   1215
   End
   Begin VB.Label Label1 
      BackColor       =   &H00FFFFC0&
      Caption         =   "注意:如果您要借书或者还书请先进行读者登陆。如果还没有进行注册,请先进行注册."
      Height          =   1215
      Left            =   240
      TabIndex        =   6
      Top             =   4080
      Width           =   1335
   End
   Begin VB.Menu 系统 
      Caption         =   "系统(&S)"
      Begin VB.Menu 用户管理 
         Caption         =   "用户管理"
         Shortcut        =   ^U
      End
      Begin VB.Menu 注销用户 
         Caption         =   "注销用户"
         Shortcut        =   ^L
      End
      Begin VB.Menu 系统设置 
         Caption         =   "系统设置"
         Shortcut        =   ^S
      End
      Begin VB.Menu a1 
         Caption         =   "-"
      End
      Begin VB.Menu 退出系统 
         Caption         =   "退出系统"
         Shortcut        =   ^E
      End
   End
   Begin VB.Menu 借阅 
      Caption         =   "借阅(&B)"
      Begin VB.Menu 借书 
         Caption         =   "借书"
         Shortcut        =   ^J
      End
      Begin VB.Menu 还书 
         Caption         =   "还书"
         Shortcut        =   ^H
      End
   End
   Begin VB.Menu 记录查询 
      Caption         =   "记录查询(&V)"
      Begin VB.Menu 图书浏览 
         Caption         =   "图书浏览"
         Shortcut        =   ^T
      End
      Begin VB.Menu 读者浏览 
         Caption         =   "读者浏览"
         Shortcut        =   ^R
      End
      Begin VB.Menu cc 
         Caption         =   "-"
      End
      Begin VB.Menu 借阅浏览 
         Caption         =   "借阅浏览"
         Shortcut        =   ^B
      End
      Begin VB.Menu bb 
         Caption         =   "-"
      End
      Begin VB.Menu 罚款记录 
         Caption         =   "罚款记录"
         Shortcut        =   ^P
      End
   End
   Begin VB.Menu 报表打印 
      Caption         =   "报表打印(&P)"
      Begin VB.Menu 在馆图书 
         Caption         =   "在馆图书"
      End
      Begin VB.Menu 外借图书 
         Caption         =   "外借图书"
      End
   End
   Begin VB.Menu 数据库维护 
      Caption         =   "数据库维护(&D)"
      Begin VB.Menu 表清理 
         Caption         =   "表清理"
      End
      Begin VB.Menu a3 
         Caption         =   "-"
      End
      Begin VB.Menu 数据备份 
         Caption         =   "数据备份"
         Shortcut        =   ^O
      End
      Begin VB.Menu 删除备份 
         Caption         =   "删除备份"
         Shortcut        =   ^D
      End
   End
   Begin VB.Menu 帮助 
      Caption         =   "帮助(&H)"
      Begin VB.Menu 源代码 
         Caption         =   "源代码"
      End
      Begin VB.Menu 我的网站 
         Caption         =   "我的网站"
         Shortcut        =   ^W
      End
      Begin VB.Menu 关于 
         Caption         =   "关于"
         Shortcut        =   {F1}
      End
   End
End
Attribute VB_Name = "FrmMain"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Private Sub CmdBack_Click()
Dim rs As ADODB.Recordset
Dim rsPunish As ADODB.Recordset

Dim SQL As String
Dim iDays As Integer
Dim tempDate As Date
Dim iPunish As Integer

If CmbBookNo.Text = "" Then
    MsgBox "对不起,还书的图书编号不能为空.", vbExclamation + vbOKOnly, "警告"
    Exit Sub
End If
If TxtReaderNo.Text = "" Then
    MsgBox "对不起,请先进行读者登陆.", vbExclamation + vbOKOnly, "警告"
    Exit Sub
End If

If MsgBox("真的要归还该图书吗?", vbQuestion + vbYesNo, "加平图书管理系统") = vbNo Then
    Exit Sub
End If

'选择该借书记录
SQL = "SELECT 借阅日期,归还日期,是否已还 FROM borrow WHERE 借书证号='" & TxtReaderNo2.Text & "' AND 图书编号='" & CmbBookNo.Text & "' AND 是否已还=FALSE"
Set rs = ExecuteSQL(SQL)
If rs.EOF And rs.BOF Then
    rs.Close
    Set rs = Nothing
    Exit Sub
End If

'查看是否已经超出规定天数
dateTemp = rs.Fields("借阅日期")
iDays = Date - dateTemp
If iDays > 90 Then
    iPunish = 0.5 * (iDays - 90)
    MsgBox "您共超出" & iDays - 90 & "天  共需罚款" & iPunish & " 元" & Chr(13) & "以后请及时归还", vbInformation + vbOKOnly, "罚款"
    SQL = "SELECT * FROM punish"
    Set rsPunish = ExecuteSQL(SQL)
    
    rsPunish.AddNew
    rsPunish.Fields("借书证号") = TxtReaderNo2.Text
    rsPunish.Fields("图书编号") = CmbBookNo.Text
    rsPunish.Fields("罚款金额") = iPunish
    rsPunish.Fields("罚款日期") = Date
    rsPunish.Update
    
    rsPunish.Close
    Set rsPunish = Nothing
End If

'将修改借阅记录
rs.Fields("归还日期") = Date
rs.Fields("是否已还") = True
rs.Update
rs.Close
Set rs = Nothing

    '更新读者的已借图书
    SQL = "UPDATE reader SET 已借图书 = 已借图书 -1 WHERE 借书证号= '" & TxtReaderNo.Text & "'"
    ExecuteSQL (SQL)
    
    '更新书库记录
    SQL = "UPDATE book SET 剩余量 = 剩余量 +1 WHERE 图书编号  = '" & TxtBookNo.Text & "'"
    ExecuteSQL (SQL)
    
MsgBox "还书操作成功!", vbInformation + vbOKOnly, "恭喜你"
    
    TxtBookName2.Text = ""
    TxtBookPrice2.Text = ""
    TxtBookPress2.Text = ""
    TxtBookKind2.Text = ""
    TxtBookAuthor2.Text = ""
    TxtBorrowDate.Text = ""
    TxtDays.Text = ""
    CmdBack.Visible = False
    
Call DisplayFlexGrid
End Sub

Private Sub CmdBorrow_Click()
Dim rs As ADODB.Recordset
Dim SQL As String
Dim dateTemp As Date
Dim dateCount As Integer
Dim readDays As Integer
Dim punishDays As Integer
Dim punishMoney As Integer
Dim punishTotal As Single

'首先进行必要检查
If TxtReaderNo.Text = "" Then
    MsgBox "对不起,请进行读者登陆.", vbExclamation + vbOKOnly, "警告"
    Exit Sub
End If
If TxtBookNo.Text = "" Then
    MsgBox "对不起,请输入图书编号.", vbExclamation + vbOKOnly, "警告"
    Exit Sub
End If

'检查该用户是否可以继续借书
SQL = "SELECT 读者类别,已借图书 FROM reader WHERE 借书证号='" & TxtReaderNo.Text & "'"
Set rs = ExecuteSQL(SQL)
Select Case rs.Fields("读者类别")
Case "A"
    readDays = GetPrivateProfileInt("Reader", "A", 10, App.Path & "\lib.ini")
    
Case "B"
    readDays = GetPrivateProfileInt("Reader", "B", 5, App.Path & "\lib.ini")
    
Case "C"
    readDays = GetPrivateProfileInt("Reader", "C", 3, App.Path & "\lib.ini")
End Select

If Val(rs.Fields("已借图书")) >= readDays Then
    MsgBox "对不起,您无法再借书了,请选还掉几本再借..", vbExclamation + vbOKOnly, "警告"
    rs.Close
    Set rs = Nothing
    Exit Sub
End If
    
rs.Close
Set rs = Nothing

'读取罚款设置
punishDays = GetPrivateProfileInt("punish", "days", 10, App.Path & "\lib.ini")
punishMoney = GetPrivateProfileInt("punish", "money", 10, App.Path & "\lib.ini")

'开始执行借书,首先检查该读者是否已经借过此书
SQL = "SELECT * FROM borrow WHERE 图书编号='" & TxtBookNo.Text & "'AND 借书证号='" & TxtReaderNo.Text & "' AND borrow.是否已还=FALSE"
Set rs = ExecuteSQL(SQL)
If rs.EOF And rs.BOF Then
    rs.AddNew
    rs.Fields("图书编号") = TxtBookNo.Text
    rs.Fields("借书证号") = TxtReaderNo.Text
    rs.Fields("借阅日期") = Date
    rs.Fields("归还日期") = Date
    rs.Update
    rs.Close
    Set rs = Nothing
    '更新读者的已借图书
    SQL = "UPDATE reader SET 已借图书 = 已借图书 + 1 WHERE 借书证号= '" & TxtReaderNo.Text & "'"
    ExecuteSQL (SQL)
    
    '更新书库记录
    SQL = "UPDATE book SET 剩余量 = 剩余量 -1 WHERE 图书编号  = '" & TxtBookNo.Text & "'"
    ExecuteSQL (SQL)
    
    MsgBox "借书成功..", vbInformation + vbOKOnly, "恭喜你"
Else
    '如果已经借阅了检察是否超出日期
    dateTemp = rs.Fields("借阅日期")
    dateCount = Date - dateTemp
    If dateCount > punishDays Then
        punishCount = (dateCount - 90) * (punishMoney / 10#)
        MsgBox "你超出了几天了,共需罚款." & punishycount & "元,请尽快归还!", vbExclamation + vbOKOnly, "警告"
        Exit Sub
    End If
    
    '询问是否需要续借
    If MsgBox("是否续借该图书?", vbQuestion + vbYesNo, "加平图书管理系统") = vbYes Then
        SQL = "UPDATE borrow SET 借阅日期='" & Date & "' WHERE 图书编号='" & TxtBookNo.Text & "'AND 借书证号='" & TxtReaderNo.Text & "'"
        ExecuteSQL (SQL)
        MsgBox "续借成功..", vbInformation + vbOKOnly, "恭喜你"
    End If
End If

'刷新FlexGrid
Call DisplayFlexGrid

End Sub

Private Sub CmdDisplay_Click()
Dim rs As New ADODB.Recordset
Dim SQL As String
Dim dateTemp As Date
Dim iDays As Integer

'当用户已借图书下拉框改变时
If CmbBookNo.Text = "" Then
    TxtBookName2.Text = ""
    TxtBookPrice2.Text = ""
    TxtBookPress2.Text = ""
    TxtBookKind2.Text = ""
    TxtBookAuthor2.Text = ""
    TxtBorrowDate.Text = ""
    TxtDays.Text = ""
    CmdBack.Visible = False
Else
    SQL = "SELECT 书名,价钱,出版社,类别,作者,借阅日期 FROM book,borrow WHERE book.图书编号=borrow.图书编号 AND borrow.借书证号='" & TxtReaderNo2.Text & "' AND borrow.图书编号='" & CmbBookNo.Text & "'"
    Set rs = ExecuteSQL(SQL)
    If rs.EOF And rs.BOF Then
        rs.Close
        Set rs = Nothing
        Exit Sub
    End If
    TxtBookName2.Text = rs.Fields("书名")

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -