Imports System.Runtime.InteropServices.ComTypes Public Class 員工手機考勤驗證管理 Dim HH As String Private Sub Set_使用者清單() Dim ds, ds1, ds2 As New DataSet 清單_dgv.DataSource = Nothing : ds.Clear() 清單_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing 清單_dgv.ColumnHeadersHeight = 25 : 清單_dgv.AllowUserToAddRows = False : 清單_dgv.RowTemplate.Height = 25 清單1_dgv.DataSource = Nothing : ds1.Clear() 清單1_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing 清單1_dgv.ColumnHeadersHeight = 25 : 清單1_dgv.AllowUserToAddRows = False : 清單1_dgv.RowTemplate.Height = 25 If 小間距1_ch.Checked = False And 中間距1_ch.Checked = False And 大間距1_ch.Checked = True Then : 清單1_dgv.RowTemplate.Height = 75 ElseIf 小間距1_ch.Checked = False And 中間距1_ch.Checked = True And 大間距1_ch.Checked = False Then : 清單1_dgv.RowTemplate.Height = 45 ElseIf 小間距1_ch.Checked = True And 中間距1_ch.Checked = False And 大間距1_ch.Checked = False Then : 清單1_dgv.RowTemplate.Height = 25 : End If If 在職 = True Then : SQL2 = " WHERE IsLockedOut = 0 " : ElseIf 在職 = False Then : SQL2 = " WHERE IsLockedOut = 1 " : Else : SQL2 = "" : End If SQL_系統使用者管理_使用者清單() da.Fill(ds) : 清單_dgv.DataSource = ds.Tables(0) : da.Fill(ds1) : 清單1_dgv.DataSource = ds1.Tables(0) : conn.Close() 清單1_dgv.Columns("帳號").Visible = False End Sub Private Sub Set_驗證清單() Dim ds1 As New DataSet 驗證_dgv.DataSource = Nothing : ds1.Clear() 驗證_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing 驗證_dgv.ColumnHeadersHeight = 40 : 驗證_dgv.AllowUserToAddRows = False : 驗證_dgv.RowTemplate.Height = 25 SQL_考勤系統手機綁定清單() da.Fill(ds1) : 驗證_dgv.DataSource = ds1.Tables(0) : conn.Close() 驗證_dgv.Columns("帳號").Visible = False 驗證_dgv.Columns(0).FillWeight = 150 : 驗證_dgv.Columns(1).FillWeight = 100 : 驗證_dgv.Columns(2).FillWeight = 50 : 驗證_dgv.Columns(3).FillWeight = 250 驗證_dgv.Columns(5).FillWeight = 50 : 驗證_dgv.Columns(6).FillWeight = 50 : 驗證_dgv.Columns(7).FillWeight = 50 For i As Integer = 0 To 驗證_dgv.Rows.Count - 1 If IsDBNull(驗證_dgv.Rows(i).Cells(5).Value) Then : 驗證_dgv.Rows(i).Cells(5).Value = False : End If If IsDBNull(驗證_dgv.Rows(i).Cells(6).Value) Then : 驗證_dgv.Rows(i).Cells(6).Value = False : End If Next End Sub Private Sub 查詢_bt_MouseEnter(sender As Object, e As EventArgs) Handles 查詢_bt.MouseEnter ToolTip1.SetToolTip(Me.查詢_bt, "查詢") End Sub Private Sub 新增_bt_MouseEnter(sender As Object, e As EventArgs) Handles 新增_bt.MouseEnter ToolTip1.SetToolTip(Me.新增_bt, "新增") End Sub Private Sub 確認新增_bt_MouseEnter(sender As Object, e As EventArgs) Handles 確認新增_bt.MouseEnter ToolTip1.SetToolTip(Me.確認新增_bt, "存檔") End Sub Private Sub 刪除_bt_MouseEnter(sender As Object, e As EventArgs) Handles 刪除_bt.MouseEnter ToolTip1.SetToolTip(Me.刪除_bt, "刪除") End Sub Private Sub 員工手機考勤驗證管理_Load(sender As Object, e As EventArgs) Handles MyBase.Load 在職 = True : Panel1.SendToBack() : 清單_dgv.SendToBack() 小間距1_ch.Checked = True : 中間距1_ch.Checked = False : 大間距1_ch.Checked = False 驗證_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 7.6) 清單_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 7.6) 清單1_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 7.6) End Sub Private Sub 員工手機考勤驗證管理_Shown(sender As Object, e As EventArgs) Handles MyBase.Shown 計算分流.Enabled = True End Sub Private Sub 計算分流_Tick(sender As Object, e As EventArgs) Handles 計算分流.Tick 計算分流.Enabled = False : Set_使用者清單() : Set_驗證清單() : 首次開啟 = False End Sub Private Sub 清單1_dgv_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles 清單1_dgv.CellClick If e.RowIndex = -1 Then : Else 姓名_tb.Text = 清單1_dgv.Rows(e.RowIndex).Cells("姓名").Value.ToString : 帳號_tb.Text = 清單1_dgv.Rows(e.RowIndex).Cells("帳號").Value.ToString 職稱1_cb.Text = 清單1_dgv.Rows(e.RowIndex).Cells("職稱").Value.ToString : 驗證碼_tb.Text = 清單1_dgv.Rows(e.RowIndex).Cells("系統編號").Value.ToString lastFoundRowIndex = -1 : lastFoundColIndex = -1 : 查詢DGV中的關鍵字_自動(驗證_dgv, 帳號_tb) If lastFoundRowIndex > -1 Then 獨立打卡_ch.Checked = 驗證_dgv.Rows(lastFoundRowIndex).Cells(5).Value End If End If End Sub Private Sub 驗證_dgv_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles 驗證_dgv.CellClick If e.RowIndex = -1 Then : Else 姓名_tb.Text = 驗證_dgv.Rows(e.RowIndex).Cells(1).Value.ToString : 帳號_tb.Text = 驗證_dgv.Rows(e.RowIndex).Cells(4).Value.ToString 職稱1_cb.Text = 驗證_dgv.Rows(e.RowIndex).Cells(0).Value.ToString : 驗證碼_tb.Text = 驗證_dgv.Rows(e.RowIndex).Cells(3).Value.ToString 獨立打卡_ch.Checked = 驗證_dgv.Rows(e.RowIndex).Cells(5).Value : 不鎖定_ch.Checked = 驗證_dgv.Rows(e.RowIndex).Cells(6).Value End If End Sub Private Sub 小間距1_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 小間距1_ch.Click 小間距1_ch.Checked = True : 中間距1_ch.Checked = False : 大間距1_ch.Checked = False : Set_使用者清單() End Sub Private Sub 中間距1_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 中間距1_ch.Click 小間距1_ch.Checked = False : 中間距1_ch.Checked = True : 大間距1_ch.Checked = False : Set_使用者清單() End Sub Private Sub 大間距1_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 大間距1_ch.Click 小間距1_ch.Checked = False : 中間距1_ch.Checked = False : 大間距1_ch.Checked = True : Set_使用者清單() End Sub Private Sub 在職_bt_Click(sender As Object, e As EventArgs) Handles 在職_bt.Click 在職 = True : Set_使用者清單() End Sub Private Sub 離職_bt_Click(sender As Object, e As EventArgs) Handles 離職_bt.Click 在職 = False : Set_使用者清單() End Sub Private Sub 工人_BT_Click(sender As Object, e As EventArgs) 在職 = True : Set_使用者清單() End Sub Private Sub 查詢_bt_Click(sender As Object, e As EventArgs) Handles 查詢_bt.Click PA20 = InputBox("請輸入關鍵字!!") : 姓名_tb.Text = PA20 lastFoundRowIndex = -1 : lastFoundColIndex = -1 : 查詢DGV中的關鍵字_自動(清單1_dgv, 姓名_tb) If lastFoundRowIndex > -1 Then 姓名_tb.Text = 清單1_dgv.Rows(lastFoundRowIndex).Cells("姓名").Value.ToString : 帳號_tb.Text = 清單1_dgv.Rows(lastFoundRowIndex).Cells("帳號").Value.ToString 職稱1_cb.Text = 清單1_dgv.Rows(lastFoundRowIndex).Cells("職稱").Value.ToString : 驗證碼_tb.Text = 清單1_dgv.Rows(lastFoundRowIndex).Cells("系統編號").Value.ToString lastFoundRowIndex = -1 : lastFoundColIndex = -1 : 查詢DGV中的關鍵字_自動(驗證_dgv, 帳號_tb) Else lastFoundRowIndex = -1 : lastFoundColIndex = -1 : 查詢DGV中的關鍵字_自動(驗證_dgv, 姓名_tb) If lastFoundRowIndex > -1 Then 姓名_tb.Text = 驗證_dgv.Rows(lastFoundRowIndex).Cells(1).Value.ToString : 帳號_tb.Text = 驗證_dgv.Rows(lastFoundRowIndex).Cells(4).Value.ToString 職稱1_cb.Text = 驗證_dgv.Rows(lastFoundRowIndex).Cells(0).Value.ToString : 驗證碼_tb.Text = 驗證_dgv.Rows(lastFoundRowIndex).Cells(3).Value.ToString Else : 姓名_tb.Text = "" : 帳號_tb.Text = "" : 職稱1_cb.Text = "" : 驗證碼_tb.Text = "" : End If End If End Sub Private Sub 新增_bt_Click(sender As Object, e As EventArgs) Handles 新增_bt.Click 獨立打卡_ch.Checked = False : 不鎖定_ch.Checked = False If 姓名_tb.Text = "" Or 帳號_tb.Text = "" Or 職稱1_cb.Text = "" Or 驗證碼_tb.Text = "" Then : MsgBox("必要的資料沒有選擇或有缺失!!") : Else PA1 = 帳號_tb.Text : SQL_考勤系統手機綁定資料重複確認() If dr.Read Then : MsgBox("資料重複,請從新輸入或檢查!!") : Else PA1 = 帳號_tb.Text : PA2 = 驗證碼_tb.Text : PA3 = 獨立打卡_ch.Checked : PA4 = 不鎖定_ch.Checked : SQL_考勤系統手機綁定資料新增() : Set_驗證清單() : MsgBox("新增完成!!") End If End If End Sub Private Sub 確認新增_bt_Click(sender As Object, e As EventArgs) Handles 確認新增_bt.Click If 姓名_tb.Text = "" Or 帳號_tb.Text = "" Or 職稱1_cb.Text = "" Or 驗證碼_tb.Text = "" Then : MsgBox("必要的資料沒有選擇或有缺失!!") : Else PA1 = 帳號_tb.Text : PA2 = 驗證碼_tb.Text : PA3 = 獨立打卡_ch.Checked : PA4 = 不鎖定_ch.Checked : SQL_考勤系統手機綁定資料修改() : Set_驗證清單() : MsgBox("修改完成!!") End If End Sub Private Sub 刪除_bt_Click(sender As Object, e As EventArgs) Handles 刪除_bt.Click If 姓名_tb.Text = "" Or 帳號_tb.Text = "" Or 職稱1_cb.Text = "" Or 驗證碼_tb.Text = "" Then : MsgBox("必要的資料沒有選擇或有缺失!!") : Else PA20 = InputBox("確定刪除項目請輸入 [YES] !") If PA20 = "YES" Then : PA1 = 帳號_tb.Text : SQL_考勤系統手機綁定資料刪除() : Set_驗證清單() : MsgBox("刪除完成!!") : End If End If End Sub End Class