Public Class 到離職管理
    ReadOnly ds, ds1 As New DataSet
    Dim 生效 As String
    Private Sub 讀取人員資料表()
        人員_dgv.DataSource = Nothing : ds.Clear()
        人員_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
        人員_dgv.ColumnHeadersHeight = 25
        人員_dgv.AllowUserToAddRows = False
        SQL_考勤明細表_人員()
        da.Fill(ds) : 人員_dgv.DataSource = ds.Tables(0) : conn.Close()
        人員_dgv.Columns(0).FillWeight = 70 : 人員_dgv.Columns(1).FillWeight = 80 : 人員_dgv.Columns(2).FillWeight = 100 : 人員_dgv.Columns(3).Visible = False
        人員_dgv.Columns(4).Visible = False : 人員_dgv.Columns(5).Visible = False : 人員_dgv.Columns(6).Visible = False : 人員_dgv.Columns(7).Visible = False
        人員_dgv.Columns(8).Visible = False : 人員_dgv.Columns(9).Visible = False : 人員_dgv.Columns("到職日").Visible = False
        For i As Integer = 0 To 人員_dgv.Rows.Count - 1
            人員_dgv.Rows(i).Cells("No.").Value = i + 1
        Next
    End Sub
    Private Sub 年份_下拉表單資料載入()
        SQL_考勤明細表_年份_下拉()
        年份_cb.Items.Clear()
        While (dr.Read()) : 年份_cb.Items.Add(dr("年份")) : End While
        conn.Close()
    End Sub
    Private Sub Set_考勤明細()
        月清單_DGV.DataSource = Nothing : ds1.Clear()
        月清單_DGV.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
        月清單_DGV.ColumnHeadersHeight = 40
        月清單_DGV.AllowUserToAddRows = False
        PA = 員工編號_tb.Text : PA1 = 年份_cb.Text : PA2 = 月份_cb.Text : SQL_國定假日設定_月份考勤()
        da.Fill(ds1) : 月清單_DGV.DataSource = ds1.Tables(0) : conn.Close()

        月清單_DGV.Columns(0).FillWeight = 100 : 月清單_DGV.Columns(1).FillWeight = 80 : 月清單_DGV.Columns(2).FillWeight = 90 : 月清單_DGV.Columns(3).FillWeight = 90
        月清單_DGV.Columns("圖片資料庫").Visible = False : 月清單_DGV.Columns("圖片編號").Visible = False : 月清單_DGV.Columns("申請時數").Visible = False
        For I As Integer = 0 To 月清單_DGV.Rows.Count - 1
            If 月清單_DGV.Rows(I).Cells("星期").Value.ToString = "星期六" Then : 月清單_DGV.Rows(I).DefaultCellStyle.BackColor = Color.LightPink
            ElseIf 月清單_DGV.Rows(I).Cells("星期").Value.ToString = "星期日" Then : 月清單_DGV.Rows(I).DefaultCellStyle.BackColor = Color.LightPink
            ElseIf 月清單_DGV.Rows(I).Cells("請假類別").Value.ToString = "國定假日" Then : 月清單_DGV.Rows(I).DefaultCellStyle.BackColor = Color.LightPink
            ElseIf 月清單_DGV.Rows(I).Cells("請假類別").Value.ToString <> "" Then : 月清單_DGV.Rows(I).DefaultCellStyle.BackColor = Color.LightYellow
            End If
        Next
    End Sub
    Private Sub 到離職管理_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        年份_下拉表單資料載入()
        年份_cb.Text = Year(Today) : 月份_cb.SelectedIndex = Month(Today) - 1 : 請假類別_cb.SelectedIndex = 0
        PA1 = 年份_cb.Text : PA2 = 月份_cb.Text
        讀取人員資料表()

        If CC(16) = False Then
            人員_dgv.Enabled = False
            申請人_tb.Text = gUserName
            SQL_考勤明細表_讀取編號() : If dr.Read() Then : 員工編號_tb.Text = dr("DIN") : End If
            Set_考勤明細()
        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("編號", e.RowIndex).Value.ToString : 申請人_tb.Text = 人員_dgv("姓名", e.RowIndex).Value.ToString
            Set_考勤明細()
        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("日期", e.RowIndex).Value.ToString
            事由_tb.Text = 月清單_DGV("事由", e.RowIndex).Value.ToString
            生效 = 月清單_DGV("是否生效", e.RowIndex).Value.ToString
        End If
    End Sub
    Private Sub 申請_bt_Click(sender As Object, e As EventArgs) Handles 申請_bt.Click
        If 特假日期_tb.Text = "" Then
            MsgBox("日期不能為空白")
        Else
            If 生效 = "已核准" Or 生效 = "未核准" Then
                MsgBox("已簽核的資料不能再做修改")
            Else
                SQL_申請刪除1() : SQL_申請新增1() : Set_考勤明細() : MsgBox("儲存完成")
            End If
        End If
    End Sub
    Private Sub 月份_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 月份_cb.SelectedIndexChanged
        PA1 = 年份_cb.Text : PA2 = 月份_cb.Text
        讀取人員資料表()
        Set_考勤明細()
    End Sub
    Private Sub 月清單_DGV_RowPostPaint(ByVal sender As Object, ByVal e As DataGridViewRowPostPaintEventArgs) Handles 月清單_DGV.RowPostPaint
        For I As Integer = 0 To 月清單_DGV.Rows.Count - 1
            If 月清單_DGV.Rows(I).Cells("星期").Value.ToString = "星期六" Then : 月清單_DGV.Rows(I).DefaultCellStyle.BackColor = Color.LightPink
            ElseIf 月清單_DGV.Rows(I).Cells("星期").Value.ToString = "星期日" Then : 月清單_DGV.Rows(I).DefaultCellStyle.BackColor = Color.LightPink
            ElseIf 月清單_DGV.Rows(I).Cells("請假類別").Value.ToString = "國定假日" Then : 月清單_DGV.Rows(I).DefaultCellStyle.BackColor = Color.LightPink
            ElseIf 月清單_DGV.Rows(I).Cells("請假類別").Value.ToString <> "" Then : 月清單_DGV.Rows(I).DefaultCellStyle.BackColor = Color.LightYellow
            End If
        Next
    End Sub
End Class