借阅图书窗体

Imports System.Data
Imports System.Data.OleDb


Public Class frmjyts
    Public adocmd1 As OleDbDataAdapter
    Public cmd As OleDbCommandBuilder
    Public ds1 As DataSet
    Public mytable1 As Data.DataTable
    Public myrow, myrow1 As Data.DataRow
    Public column As Data.DataColumn
    Public readnumber As String
    Public readername, readerphone, readeraddress As String
    Public count As Integer
    Public b2 As Integer


    '监控可借图书量    当前可借图书量 = 可借图书量 - 已借图书量
    Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
        'GroupBox2.Enabled = False
        Dim sql8 As String
        If Texyztj1.Text = "" Then
            'Console.WriteLine("验证条件为空,退出定时处理程序")
            Exit Sub
        End If
        sql8 = "select * from readerinfo where  编号 = '" & Texyztj1.Text & "'"
        'Console.WriteLine("定时处理  sql8 = " & sql8)
        executesql(sql8, "readerinfo")
        'b1 = mytable.Rows.Count
        Try
            Texkjsl.Text = mytable.Rows.Item(0).Item(7)
            Texyjysl.Text = mytable.Rows.Item(0).Item(16)
        Catch
            ' Console.WriteLine("try ing")
        End Try


        'Console.WriteLine("定时处理  Texyjysl.Text = " & Texyjysl.Text)


        Texdqkjsl.Text = (Convert.ToDouble(Texkjsl.Text) - Convert.ToDouble(Texyjysl.Text)).ToString
        b2 = Texdqkjsl.Text


    End Sub


    Public flag As String




    Private Sub frmjyts_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        Butjcts.Enabled = False
        GroupBox2.Enabled = False
        GroupBox3.Enabled = False
        GroupBox4.Enabled = False
        Texdqkjsl.BackColor = Color.White
        Texjysl.BackColor = Color.White
        Texyjysl.BackColor = Color.White


        Texdqkjsl.ReadOnly = True
        Texjysl.ReadOnly = True
        Texyjysl.ReadOnly = True
        Raddzbh.Checked = True
        Radtsbh.Checked = True
        Texyztj1.Focus()
        GroupBox4.Enabled = False
        Texxm.Enabled = False
        Texxb.Enabled = False
        Texxb.Enabled = False
        Texlx.Enabled = False
        Texkjsl.Enabled = False
        Texyjysl.Enabled = False
        Texzjhm.Enabled = False
        Texdjrq.Enabled = False
        Texlxdh.Enabled = False
        Texcsrq.Enabled = False
        Texlxdz.Enabled = False
        Texjycs.Enabled = False
        Texjycs.Text = 0


        change(True)
    End Sub
    '获取读者信息
    Sub aa()
        change(True)
        Texxm.Text = myrow.Item(2)
        readername = Texxm.Text
        Texxb.Text = myrow.Item(4)
        Texlx.Text = myrow.Item(5)
        Texjycs.Text = myrow.Item(6).ToString
        Texkjsl.Text = myrow.Item(7)
        Texyxzj.Text = myrow.Item(8)
        Texzjhm.Text = myrow.Item(9)
        Texdjrq.Text = myrow.Item(10)
        Texlxdh.Text = myrow.Item(11)
        readerphone = Texlxdh.Text


        Texcsrq.Text = myrow.Item(12)
        Texlxdz.Text = myrow.Item(14)
        readeraddress = Texlxdz.Text


        '获取已借数量
        'GroupBox2.Enabled = False
        Dim sql8 As String
        sql8 = "select * from readerinfo where  编号 = '" & Texyztj1.Text & "'"
        Console.WriteLine("aa  sql8 = " & sql8)
        executesql(sql8, "readerinfo")
        'b1 = mytable.Rows.Count
        Texyjysl.Text = mytable.Rows.Item(0).Item(16)
        Console.WriteLine(" aa  Texyjysl.Text = " & Texyjysl.Text)
    End Sub


    Private Sub Butjcts_Click(sender As Object, e As EventArgs) Handles Butjcts.Click
        If Texdqkjsl.Text = 0.ToString Then
            MsgBox("您已经没有借书的权利,请您在归还之后再借书", vbOKOnly, "警告")
            Exit Sub
        End If
        Dim sql6 As String
        Dim a1, a2 As Integer
        sql6 = "select * from borrow"
        executesql(sql6, "borrow")
        Dim newrow As DataRow
        newrow = mytable.NewRow
        newrow.Item(1) = Textsbh.Text
        newrow.Item(2) = readnumber
        newrow.Item(3) = Texxm.Text
        'newrow.Item(4) = readerphone
        newrow.Item(4) = readeraddress
        newrow.Item(5) = Date.Now
        newrow.Item(6) = Texsm.Text
        newrow.Item(7) = Texcbs.Text
        newrow.Item(8) = Texjg.Text
        newrow.Item(9) = Texsjmc.Text
        newrow.Item(10) = bo


        Dim sql7 As String
        Dim day As Integer
        sql7 = "select 可借数量 from  booktypeinfo where 名称 = '" & Textslx.Text & "'"
        'sql7 = "select * from  booktypeinfo"
        'Console.WriteLine("sql7 = " & sql7)
        Dim database_dir As String = com_fdist & "\bookmanage\bookmanage1.mdb "
        adocmd1 = New OleDbDataAdapter(sql7, "provider = microsoft.jet.oledb.4.0;data source = " & database_dir & ";Jet OLEDB:DataBase password = Dhb321;")
        ds1 = New DataSet
        adocmd1.Fill(ds1, "booktypeinfo")


#If 1 Then
        mytable1 = ds1.Tables.Item(0)
        myrow1 = mytable1.Rows.Item(0)
        'Console.WriteLine("myrow1 = " & myrow1.ToString)
        'executesql(sql7, "booktypeinfo")
        day = myrow1.Item(0)
        'day = 3
        'Console.WriteLine("sql7 day = " & day)
        newrow.Item(11) = Date.Now.AddDays(day)


#Else
        executesql(sql7, "booktypeinfo")
        myrow = mytable.Rows.Item(0)
        Console.WriteLine("myrow1 = " & myrow.ToString)


        day = myrow.Item(0)
        'day = 3
        Console.WriteLine("sql7 day = " & day)
        newrow.Item(11) = Date.Now.AddDays(day)
#End If
        'Console.WriteLine("newrow.item(11) = " & newrow.Item(11))
        newrow.Item(12) = Textxm.Text


#If 0 Then
        executesql(sql6, "borrow")
        newrow = mytable.NewRow
#End If


        a1 = mytable.Rows.Count
        For a2 = 0 To a1 - 1
            myrow = mytable.Rows.Item(a2)
            If myrow.Item(1) = newrow.Item(1) And myrow.Item(3) = newrow.Item(3) Then
                If MsgBox("您已经借阅了该图书,不能再次借阅", vbOKOnly + 48, "系统提示") = MsgBoxResult.Ok Then
                    If MsgBox("是否继续办理", MsgBoxStyle.YesNo, "系统提示") = MsgBoxResult.Yes Then
                        Texyztj2.Focus()
                        Texyztj2.Text = ""
                        Butjcts.Enabled = False
                    Else
                        Me.Dispose()


                    End If
                End If
                Exit Sub


            End If
        Next
        mytable.Rows.Add(newrow)
        cmd = New OleDbCommandBuilder(adocmd)
        adocmd.Update(ds, "borrow")
        Timer1.Enabled = True


        '显示当前借阅者所借的图书
        Dim sql8 As String
        sql8 = "select * from borrow where 读者姓名 = '" & readername & "'"
        executesql(sql8, "borrow")
        DataGrid1.DataSource = mytable.DefaultView
        count = count + 1
        Texjysl.Text = count


        Dim sql9 = "select * from bookinfo where 编号 = '" & newrow.Item(1) & "'"
        executesql(sql9, "bookinfo")
        myrow = mytable.Rows.Item(0)


        myrow.Item(11) = myrow.Item(11) - 1
        cmd = New OleDbCommandBuilder(adocmd)
        adocmd.Update(ds, "bookinfo")


        If MsgBox("是否继续借书", vbYesNo, "信息提示框") = MsgBoxResult.Yes Then
            Texyztj2.Focus()
            Butjcts.Enabled = False
            'cc()
        Else
            Dim sql10 As String
            If Raddzbh.Checked = True Then
                sql10 = "select * from readerinfo where 编号 = '" & Texyztj1.Text & "'"
            Else
                sql10 = "select * from readerinfo where 条形码 = '" & Texyztj1.Text & "'"
            End If
            executesql(sql10, "readerinfo")
            myrow = mytable.Rows.Item(0)
            myrow.Item(6) = myrow.Item(6) + 1
            cmd = New OleDbCommandBuilder(adocmd)
            adocmd.Update(ds, "readerinfo")
            Me.Dispose()


        End If






    End Sub


    Sub change(ByVal tf As Boolean)
        Butjcts.Enabled = True


        GroupBox1.Enabled = True
        GroupBox2.Enabled = True
        GroupBox3.Enabled = True
        GroupBox4.Enabled = True
        Texdqkjsl.ReadOnly = True
        Texjysl.ReadOnly = True
        Texyjysl.ReadOnly = True
        Raddzbh.Checked = True
        Texyztj1.Focus()
        Texxm.Enabled = True


        Texxb.Enabled = True
        Texlx.Enabled = True
        Texkjsl.Enabled = True
        Texyjysl.Enabled = True
        Texzjhm.Enabled = True
        Texdjrq.Enabled = True
        Texlxdh.Enabled = True
        Texcsrq.Enabled = True
        Texlxdz.Enabled = True
        Texjycs.Enabled = True


        '''''''''''''''''''''''''
        Textsbh.Enabled = tf
        Textxm.Enabled = tf
        Texsm.Enabled = tf
        GroupBox1.Enabled = tf
        Texzz.Enabled = tf
        GroupBox3.Enabled = tf
        'texflf.enable = tf
        Texjg.Enabled = tf
        GroupBox4.Enabled = tf
        Texxcsl.Enabled = tf










    End Sub


    Private Sub Texyztj1_KeyPress(sender As Object, e As KeyPressEventArgs) Handles Texyztj1.KeyPress
        If e.KeyChar = Chr(13) Then
            Dim sql1, sql5 As String
            Dim a, i, c, j, d, y As Integer
            If Raddzbh.Checked = True Then
                flag = "编号"
                sql1 = "select * from readerinfo where (编号 = '" & Texyztj1.Text & "')"
                readnumber = Texyztj1.Text
                Console.WriteLine("sql1 编号 = " & sql1)
                executesql(sql1, "readerinfo")
                a = mytable.Rows.Count
                Console.WriteLine("a = 编号 = " & a)
                For i = 0 To a - 1
                    myrow = mytable.Rows.Item(i)
                    If myrow.Item(0) = Trim(Texyztj1.Text) Then


                        If myrow.Item(3) = "否" Then
                            GroupBox4.Enabled = True
                            myrow = mytable.Rows.Item(0)
                            aa()
                            Texyztj1.Focus()


                            Texdqkjsl.Text = (Convert.ToDouble(Texkjsl.Text) - Convert.ToDouble(Texyjysl.Text)).ToString
                            i = -1
                            Exit For
                        End If
                    End If
                Next
                If i <> -1 Then
                    MsgBox("该编号的读者不存在,请重新输入", vbOKOnly + vbExclamation, "ERROR")
                    Texyztj1.Text = ""
                    Texyztj1.Focus()
                    Exit Sub
                End If
            ElseIf Raddztxm.Checked = True Then
                flag = "条形码"
                If Texyztj1.Text = "" Then
                    MsgBox("请输入条形码", vbOKOnly + 48, "系统提示")
                    Texyztj1.Text = ""
                    Texyztj1.Focus()
                    Exit Sub
                End If
                'sql5 = "select * from readerinfo where (条形码 = '" & Texyztj1.Text & "')"
                sql5 = "select * from readerinfo where 条形码 = '" & Texyztj1.Text & "'"


                executesql(sql5, "readerinfo")
                d = mytable.Rows.Count
                'Console.WriteLine("SQL5 = " & sql5)
                'Console.WriteLine("d = " & d)
                Console.WriteLine(" readnumber = " & ds.Tables(0).Rows.Item(0).Item(0))
                Try
                    readnumber = ds.Tables(0).Rows.Item(0).Item(0)
                Catch
                End Try
                For y = 0 To d - 1
                    myrow = mytable.Rows.Item(y)
                    If myrow.Item(3) = "否" Then
                        GroupBox4.Enabled = True
                        myrow = mytable.Rows.Item(0)
                        aa()
                        Texdqkjsl.Text = (Convert.ToDouble(Texkjsl.Text) - Convert.ToDouble(Texyjysl.Text)).ToString
                        y = -1
                        Exit For


                    End If
                Next
                If y <> -1 Then
                    MsgBox("该读者条形码不存在,请重新输入!", vbOKOnly + vbExclamation, "ERROR")
                    Texyztj1.Text = ""
                    Texyztj1.Focus()
                    Exit Sub


                End If
            End If
            If Texdqkjsl.Text = 0 Then
                MsgBox("该读者已经不能再借图书", vbOKOnly + vbExclamation, "警告")
                GroupBox4.Enabled = False
                Exit Sub
            End If
        End If
    End Sub


    Private Sub Texyztj2_KeyPress(sender As Object, e As KeyPressEventArgs) Handles Texyztj2.KeyPress
        If e.KeyChar = Chr(13) Then
            Dim sql, aa As String
            Dim a As Integer
            If Radtsbh.Checked = True Then
                aa = "编号"
                sql = "select * from bookinfo where (编号 = '" & Texyztj2.Text & "')"
            ElseIf Radtstxm.Checked = True Then


                aa = "条形码"
                sql = "select * from bookinfo where (条形码 = '" & Texyztj2.Text & "')"


            End If
            executesql(sql, "bookinfo")
            a = mytable.Rows.Count
            If a = 0 Then
                MsgBox("不存在该" & aa & "的图书,请重新输入", vbExclamation, "信息提示")
                Texyztj2.Text = ""
                Texyztj2.Focus()
                Exit Sub
            Else


                Butjcts.Enabled = True
                myrow = mytable.Rows.Item(0)


                Textsbh.Text = myrow.Item(0)
                Textxm.Text = myrow.Item(1)
                Texsm.Text = myrow.Item(2)
                Textslx.Text = myrow.Item(3)
                Texzz.Text = myrow.Item(4)
                Texsjmc.Text = myrow.Item(5)
                Texjg.Text = myrow.Item(7)
                Texcbs.Text = myrow.Item(8)
                Texcbrq.Text = myrow.Item(9)
                Texrksj.Text = myrow.Item(10)
                Texxcsl.Text = myrow.Item(11)


                Textsbh.Enabled = False
                Textxm.Enabled = False
                Texsm.Enabled = False
                Textslx.Enabled = False
                Texzz.Enabled = False
                Texsjmc.Enabled = False
                Texjg.Enabled = False
                Texcbs.Enabled = False
                Texcbrq.Enabled = False
                Texrksj.Enabled = False
                Texxcsl.Enabled = False
                Butjcts.Focus()
                change(True)
            End If


        End If


    End Sub


    Private Sub ToolBar1_ButtonClick(sender As Object, e As ToolBarButtonClickEventArgs) Handles ToolBar1.ButtonClick
        Select Case ToolBar1.Buttons.IndexOf(e.Button)
            Case 0
                GroupBox2.Enabled = True
                Texyztj1.Text = ""
                Texyztj2.Text = ""
                Texxm.Text = ""




                Texxb.Text = ""
                Texlx.Text = ""
                Texjycs.Text = ""
                Texkjsl.Text = ""
                Texyxzj.Text = ""
                Texzjhm.Text = ""
                Texdjrq.Text = ""
                Texlxdh.Text = ""




                Texcsrq.Text = ""
                Texlxdz.Text = ""


                Timer1.Enabled = False
            Case 1
                Me.Dispose()
        End Select
    End Sub
End Class

猜你喜欢

转载自blog.csdn.net/daihuibing389/article/details/80049897