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

📄 formattendance.vb

📁 人事管理系统(VB.NET2005+SQL Server2005)
💻 VB
📖 第 1 页 / 共 2 页
字号:
        Me.dgCurrent.Location = New System.Drawing.Point(8, 56)
        Me.dgCurrent.Name = "dgCurrent"
        Me.dgCurrent.ReadOnly = True
        Me.dgCurrent.Size = New System.Drawing.Size(464, 56)
        Me.dgCurrent.TabIndex = 4
        '
        'btnRecord
        '
        Me.btnRecord.Location = New System.Drawing.Point(296, 24)
        Me.btnRecord.Name = "btnRecord"
        Me.btnRecord.TabIndex = 3
        Me.btnRecord.Text = "记  录"
        '
        'txtCount
        '
        Me.txtCount.Location = New System.Drawing.Point(192, 24)
        Me.txtCount.Name = "txtCount"
        Me.txtCount.Size = New System.Drawing.Size(56, 21)
        Me.txtCount.TabIndex = 2
        Me.txtCount.Text = "1"
        '
        'Label2
        '
        Me.Label2.Location = New System.Drawing.Point(16, 24)
        Me.Label2.Name = "Label2"
        Me.Label2.Size = New System.Drawing.Size(72, 21)
        Me.Label2.TabIndex = 1
        Me.Label2.Text = "选择考勤项"
        '
        'cmbAttendanceItem
        '
        Me.cmbAttendanceItem.DisplayMember = "Name"
        Me.cmbAttendanceItem.Location = New System.Drawing.Point(96, 24)
        Me.cmbAttendanceItem.Name = "cmbAttendanceItem"
        Me.cmbAttendanceItem.Size = New System.Drawing.Size(88, 20)
        Me.cmbAttendanceItem.TabIndex = 0
        Me.cmbAttendanceItem.ValueMember = "Id"
        '
        'lblUnit
        '
        Me.lblUnit.Location = New System.Drawing.Point(256, 24)
        Me.lblUnit.Name = "lblUnit"
        Me.lblUnit.Size = New System.Drawing.Size(30, 21)
        Me.lblUnit.TabIndex = 1
        Me.lblUnit.Text = "天"
        '
        'btnCheckAttendance
        '
        Me.btnCheckAttendance.Location = New System.Drawing.Point(384, 24)
        Me.btnCheckAttendance.Name = "btnCheckAttendance"
        Me.btnCheckAttendance.TabIndex = 3
        Me.btnCheckAttendance.Text = "考  勤"
        '
        'Label1
        '
        Me.Label1.Location = New System.Drawing.Point(16, 16)
        Me.Label1.Name = "Label1"
        Me.Label1.Size = New System.Drawing.Size(80, 21)
        Me.Label1.TabIndex = 1
        Me.Label1.Text = "日期"
        '
        'DateTimePicker1
        '
        Me.DateTimePicker1.Location = New System.Drawing.Point(96, 16)
        Me.DateTimePicker1.Name = "DateTimePicker1"
        Me.DateTimePicker1.Size = New System.Drawing.Size(192, 21)
        Me.DateTimePicker1.TabIndex = 0
        '
        'Label4
        '
        Me.Label4.Location = New System.Drawing.Point(296, 16)
        Me.Label4.Name = "Label4"
        Me.Label4.Size = New System.Drawing.Size(64, 23)
        Me.Label4.TabIndex = 5
        Me.Label4.Text = "当前用户"
        '
        'FormAttendance
        '
        Me.AcceptButton = Me.btnRecord
        Me.AutoScaleBaseSize = New System.Drawing.Size(6, 14)
        Me.CancelButton = Me.btnExit
        Me.ClientSize = New System.Drawing.Size(712, 438)
        Me.Controls.Add(Me.Panel2)
        Me.Controls.Add(Me.Splitter1)
        Me.Controls.Add(Me.Panel1)
        Me.Name = "FormAttendance"
        Me.Text = "日常考勤"
        Me.Panel1.ResumeLayout(False)
        Me.Panel2.ResumeLayout(False)
        Me.GroupBox2.ResumeLayout(False)
        CType(Me.dgHistory, System.ComponentModel.ISupportInitialize).EndInit()
        Me.GroupBox1.ResumeLayout(False)
        CType(Me.dgCurrent, System.ComponentModel.ISupportInitialize).EndInit()
        Me.ResumeLayout(False)

    End Sub

#End Region

    Private Sub InitialTree(Optional ByVal bShowAll As Boolean = False)
        'Initial tvEmployee
        tvEmployee.Nodes.Clear()
        Dim dsCompany As DataSet
        dsCompany = DbBase.DataInterface().Execute4DS("select top 1 id,name from company")
        Dim tnRoot As TreeNode
        tnRoot = New TreeNode(dsCompany.Tables(0).Rows(0).Item("name"))
        tnRoot.Tag = dsCompany.Tables(0).Rows(0).Item("id")
        tnRoot.ImageIndex = 0
        tnRoot.SelectedImageIndex = 0
        Dim dsDeparts As DataSet
        dsDeparts = DbBase.DataInterface().Execute4DS("select number,name from department order by number")
        'Add Deparments to tvEmployee
        Dim iNodeIndex As Integer
        For Each drDepart As DataRow In dsDeparts.Tables(0).Rows
            Dim tnDepart As TreeNode
            tnDepart = New TreeNode(drDepart.Item("name"))
            tnDepart.Tag = drDepart.Item("number")
            tnDepart.ImageIndex = 1
            tnDepart.SelectedImageIndex = 1
            If Microsoft.VisualBasic.Right(drDepart.Item("number"), 1) = "0" Then
                tnRoot.Nodes.Add(tnDepart)
                iNodeIndex = tnDepart.Index
            Else
                Dim dsEmployee As DataSet
                Dim sSql As String
                If bShowAll Then
                    sSql = "select name,number from v_employee where department_number = '" & tnDepart.Tag & "'"
                Else
                    sSql = "select name,number from v_employee where department_number = '" & tnDepart.Tag & "' and status = '在职'"
                End If
                dsEmployee = DbBase.DataInterface().Execute4DS(sSql)
                For Each drEmployee As DataRow In dsEmployee.Tables(0).Rows
                    Dim tnEmployee As TreeNode
                    tnEmployee = New TreeNode(drEmployee.Item("name"), 2, 2)
                    tnEmployee.Tag = drEmployee.Item("number")
                    tnDepart.Nodes.Add(tnEmployee)
                Next
                tnRoot.Nodes.Item(iNodeIndex).Nodes.Add(tnDepart)
            End If
        Next
        tvEmployee.Nodes.Add(tnRoot)
        tvEmployee.ExpandAll()
    End Sub

    Private Sub tvEmployee_MouseDown(ByVal send As Object, ByVal e As MouseEventArgs) Handles tvEmployee.MouseDown
        Dim tnClicked As TreeNode
        tnClicked = tvEmployee.GetNodeAt(New Point(e.X, e.Y))
        If Not tnClicked Is Nothing And Not tnClicked Is tvEmployee.Nodes(0) Then
            tvEmployee.SelectedNode = tnClicked
        End If
    End Sub

    Private Sub tvEmployee_AfterSelect(ByVal send As Object, ByVal e As TreeViewEventArgs) Handles tvEmployee.AfterSelect
        If e.Node.ImageIndex = 2 Then
            lblEmployee.Text = e.Node.Text
            lblEmployee.Tag = e.Node.Tag
            oAttendance = New Attendance(CStr(e.Node.Tag), CDate(DateTimePicker1.Text))
            InitialData()
        End If
    End Sub

    Private Sub InitialData()
        cmbAttendanceItem.DataSource = Attendance.Items
        oAttendance.FillRecord()
        dgCurrent.DataSource = Attendance.ItemRecordTable.DefaultView
        dgHistory.DataSource = Attendance.LastMonthRecord(lblEmployee.Tag).DefaultView
    End Sub

    Private Sub FormAttendance_Load(ByVal sender As Object, ByVal e As EventArgs) Handles MyBase.Load
        InitialTree()
    End Sub

    Private Sub cmbAttendanceItem_SelectedIndexChanged(ByVal send As Object, ByVal e As EventArgs) Handles cmbAttendanceItem.SelectedIndexChanged
        lblUnit.Text = oAttendance(cmbAttendanceItem.SelectedValue).Unit
    End Sub

    Private Sub btnExit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnExit.Click
        Me.Close()
    End Sub

    Private Sub btnRecord_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnRecord.Click
        If txtCount.Text = "" Then
            MessageBox.Show("请输入考勤计时值", "出错", MessageBoxButtons.OK)
        ElseIf lblEmployee.Text = "" Then
            MessageBox.Show("请选择一个用户", "出错", MessageBoxButtons.OK)
        Else
            oAttendance.RecordItem(cmbAttendanceItem.SelectedValue, CDbl(txtCount.Text))
        End If
    End Sub

    Private Sub lblEmployee_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles lblEmployee.Click
        If lblEmployee.Tag <> "" Then
            Dim oFormEmployee As FormEmployee
            oFormEmployee = New FormEmployee
            oFormEmployee.SelectedEmployee = New Employee(CStr(lblEmployee.Tag))
            oFormEmployee.Show()
        End If
    End Sub

    Private Sub btnCheckAttendance_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCheckAttendance.Click
        If MessageBox.Show("记录" & lblEmployee.Text & " " & DateTimePicker1.Text & " 的考勤记录,确认?", "确认考勤记录", MessageBoxButtons.OKCancel) = Windows.Forms.DialogResult.OK Then
            If oAttendance.CheckAttendance() = 0 Then
                MessageBox.Show("考勤记录成功更新到数据库!")
            End If
        End If
    End Sub
End Class

⌨️ 快捷键说明

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