?? frm_issuereturnbook.vb
字號(hào):
MyCommand.dispose()
End Sub
Sub loadReaderDetails()
MyConnection.Open()
MyCommand = New OleDbCommand("SELECT * FROM ReaderDetails WHERE ReaderNo = '" & TxtReaderNo.Text & "'", MyConnection)
Try
MyReader = MyCommand.ExecuteReader()
While MyReader.Read
TxtReaderName.Text = MyReader("ReaderName").ToString
TxtAddress.Text = MyReader("Address").ToString
TxtTag.Text = MyReader("IssueTag").ToString
TxtIssuedTag.Text = MyReader("IssueTagUsed").ToString
End While
Catch c As Exception
MsgBox("Error Message: Exception Thrown Please Enter a Valid Reader Number" + c.ToString, MsgBoxStyle.Critical, "圖書館管理系統(tǒng)")
End Try
MyConnection.Close()
MyReader.Close()
MyCommand.dispose()
End Sub
Function checkIfBookAlreadyExists() As Boolean
MyConnection.Open()
MyCommand = New OleDbCommand("SELECT * FROM BookDetails WHERE SN ='" & TxtSN.Text & "'", MyConnection)
Dim TempString As String
Try
MyReader = MyCommand.ExecuteReader()
While MyReader.Read
TempString = MyReader("SN")
End While
MyConnection.Close()
MyReader.Close()
MyCommand.dispose()
Catch c As Exception
MsgBox("錯(cuò)誤信息:" + c.ToString, MsgBoxStyle.Critical, "圖書館管理系統(tǒng)")
End Try
If TxtSN.Text = TempString Then
Return True
Else
If TxtSN.Text <> TempString Then
Return False
End If
End If
End Function
Function checkIfReaderAlreadyExists() As Boolean
MyConnection.Open()
MyCommand = New OleDbCommand("SELECT * FROM ReaderDetails WHERE ReaderNo ='" & TxtReaderNo.Text & "'", MyConnection)
Try
MyReader = MyCommand.ExecuteReader()
While MyReader.Read
TextBox15.Text = MyReader("ReaderNo")
End While
MyConnection.Close()
MyReader.Close()
MyCommand.dispose()
Catch c As Exception
MsgBox("Error Message:" + c.ToString, MsgBoxStyle.Critical, "圖書館管理系統(tǒng)")
End Try
If TxtReaderNo.Text = TextBox15.Text Then
Return True
Else
If TxtReaderNo.Text <> TextBox15.Text Then
Return False
End If
End If
End Function
Private Sub frm_IssueReturnBook_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
MyConnection.Open()
MyCommand = New OleDbCommand("SELECT * FROM Charges", MyConnection)
Try
MyReader = MyCommand.ExecuteReader()
While MyReader.Read
ComboChargeType.Items.Add(MyReader("Desc"))
End While
Catch c As Exception
MsgBox("錯(cuò)誤信息:" + c.ToString, MsgBoxStyle.Critical, "圖書館管理系統(tǒng)")
End Try
MyConnection.Close()
MyReader.Close()
MyCommand.dispose()
End Sub
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
Me.Close()
End Sub
Sub clearFields()
TxtSN.Text = ""
TxtISBN.Text = ""
TxtBookName.Text = ""
TxtAuthorName.Text = ""
TxtStatus.Text = ""
TxtReaderNo.Text = ""
TxtReaderName.Text = ""
TxtAddress.Text = ""
TxtTag.Text = ""
TxtIssuedTag.Text = ""
TxtIssueNo.Text = ""
TxtIssueDate.Text = ""
TxtReturnDate.Text = ""
ComboChargeType.Text = ""
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
clearFields()
TxtSN.Focus()
End Sub
Private Sub TxtIssueNo_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TxtIssueNo.KeyPress
Dim strchar As String
strchar = e.KeyChar
Select Case strchar
Case ChrW(System.Windows.Forms.Keys.Enter)
TxtIssueDate.Text = System.DateTime.Now.ToShortDateString
ComboChargeType.Focus()
Case Else
End Select
End Sub
Function getDueDate(ByVal myOption As String) As String
Select Case myOption
Case "超過1天罰款3元"
Return Date.Now.AddDays(1).ToShortDateString
Case "超過7天罰款18元"
Return Date.Now.AddDays(7).ToShortDateString
Case "超過14天罰款50元"
Return Date.Now.AddDays(14).ToShortDateString
End Select
End Function
Private Sub KeyPress_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles ComboChargeType.KeyPress
Dim strChar As String
strChar = e.KeyChar
Select Case strChar
Case ChrW(System.Windows.Forms.Keys.Enter)
TxtReturnDate.Text = getDueDate(ComboChargeType.SelectedItem)
BtnIssue.Focus()
Case Else
End Select
End Sub
Sub issueBook()
MyConnection.Open()
MyCommand = New OleDbCommand("INSERT INTO IssueBook VALUES('" & TxtIssueNo.Text & "','" & TxtSN.Text & "', '" & TxtBookName.Text & "','" & TxtAuthorName.Text & "','" & TxtReaderNo.Text & "','" & TxtReaderName.Text & "','" & TxtIssueDate.Text & "','" & TxtReturnDate.Text & "','" & ComboChargeType.Text & "')", MyConnection)
MyCommand.ExecuteNonQuery()
MyConnection.Close()
MyCommand.dispose()
End Sub
' Sub addIntoReaderHistory()
' MyConnection.Open()
' MyCommand = New OleDbCommand("INSERT INTO ReaderHistory VALUES('" & TxtReaderNo.Text & "','" & TxtSN.Text & "', '" & TxtIssueDate.Text & "','" & TxtReturnDate.Text & "','" & TxtStatus.Text & "')", MyConnection)
' MyCommand.ExecuteNonQuery()
' MyConnection.Close()
' MyCommand.dispose()
' End Sub
Sub updateReaderIssueTag()
Dim CurrentIssueTag As String
Dim CurrentIssueTagUsed As String
Dim itag As Integer
Dim itagused As Integer
CurrentIssueTag = getCurrentReaderIssueTag()
CurrentIssueTagUsed = getCurrentReaderTagUsed()
itag = CInt(CurrentIssueTag)
itagused = CInt(CurrentIssueTagUsed)
itag = itag - 1
itagused = itagused + 1
CurrentIssueTag = itag.ToString
CurrentIssueTagUsed = itagused.ToString
MyConnection.Open()
MyCommand = New OleDbCommand("UPDATE ReaderDetails SET IssueTag ='" & CurrentIssueTag & "',IssueTagUsed = '" & CurrentIssueTagUsed & "' WHERE ReaderNo = '" & TxtReaderNo.Text & "'", MyConnection)
Try
MyCommand.ExecuteNonQuery()
Catch c As Exception
MsgBox(c.ToString)
End Try
MyConnection.Close()
MyCommand.dispose()
End Sub
Sub updateBookStatus()
Dim myStatus As String
myStatus = "被借"
MyConnection.Open()
MyCommand = New OleDbCommand("UPDATE BookDetails SET BookStatus ='" & myStatus & "' WHERE SN = '" & TxtSN.Text & "'", MyConnection)
Try
MyCommand.ExecuteNonQuery()
Catch c As Exception
MsgBox(c.ToString)
End Try
MyConnection.Close()
MyCommand.dispose()
End Sub
Function getCurrentReaderIssueTag() As String
Dim myTag As String
MyConnection.Open()
MyCommand = New OleDbCommand("SELECT * FROM ReaderDetails WHERE ReaderNo = '" & TxtReaderNo.Text & "'", MyConnection)
MyReader = MyCommand.ExecuteReader()
While MyReader.Read
myTag = MyReader("IssueTag")
End While
MyConnection.Close()
MyReader.Close()
MyCommand.dispose()
Return myTag
End Function
Function getCurrentReaderTagUsed() As String
Dim myTag As String
MyConnection.Open()
MyCommand = New OleDbCommand("SELECT * FROM ReaderDetails WHERE ReaderNo = '" & TxtReaderNo.Text & "'", MyConnection)
MyReader = MyCommand.ExecuteReader()
While MyReader.Read
myTag = MyReader("IssueTagUsed")
End While
MyConnection.Close()
MyReader.Close()
MyCommand.dispose()
Return myTag
End Function
Private Sub BtnIssue_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnIssue.Click
If checkStatus() = False Then
MsgBox("該書已被借閱, 請重新選擇!", MsgBoxStyle.Information, "圖書館管理系統(tǒng)")
Else
If checkIssueTag() = False Then
MsgBox("已超過最大借書量!", MsgBoxStyle.Information, "圖書館管理系統(tǒng)")
Else
If checkStatus() = True And checkIssueTag() = True Then
Try
issueBook()
updateReaderIssueTag()
updateBookStatus()
MsgBox("成功借閱", MsgBoxStyle.Information, "圖書館管理系統(tǒng)")
Catch c As Exception
MsgBox(c.ToString)
End Try
End If
End If
End If
End Sub
Function checkStatus() As Boolean
Dim oStatus As String
MyConnection.Open()
MyCommand = New OleDbCommand("SELECT * FROM BookDetails WHERE SN ='" & TxtSN.Text & "'", MyConnection)
MyReader = MyCommand.ExecuteReader()
While MyReader.Read
oStatus = MyReader("BookStatus")
End While
MyConnection.Close()
MyReader.Close()
MyCommand.dispose()
If oStatus = "正常" Then
Return True
Else
If oStatus = "被借" Then
Return False
End If
End If
End Function
Function checkIssueTag() As Boolean
Dim oTag As String
MyConnection.Open()
MyCommand = New OleDbCommand("SELECT * FROM ReaderDetails WHERE ReaderNo ='" & TxtReaderNo.Text & "'", MyConnection)
MyReader = MyCommand.ExecuteReader()
While MyReader.Read
oTag = MyReader("IssueTagUsed")
End While
MyConnection.Close()
MyReader.Close()
MyCommand.dispose()
If oTag = "3" Then
Return False
Else
If oTag <> "3" Then
Return True
End If
End If
End Function
Private Sub BtnPrintReceipt_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnPrintReceipt.Click
Dim frm As New frm_ReceiptViewer
frm.Show()
End Sub
End Class
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -