Ingen beskrivning
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

加班申請系統.vb 25KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288
  1. Imports System.IO
  2. Public Class 加班申請系統
  3. Private Sub 語言轉換讀取()
  4. If 系統語言 = "繁體中文" Then : 語言 = "CH" : ElseIf 系統語言 = "English" Then : 語言 = "EN" : ElseIf 系統語言 = "Indonesian" Then : 語言 = "IN" : End If
  5. If BL = False Then : Me.Text = 系統語言字典("H001-303-" & 語言) : Else : Me.Text = 系統語言字典("H001-304-" & 語言) : End If
  6. ToolTip1.ToolTipTitle = 系統語言字典("G000-108-" & 語言) : Label7.Text = 系統語言字典("G000-343-" & 語言) : 申請單位_lb.Text = 系統語言字典("G000-344-" & 語言)
  7. 職務_lb.Text = 系統語言字典("H002-112-" & 語言) : 姓名_lb.Text = 系統語言字典("H601-103-" & 語言) : 理由_lb.Text = 系統語言字典("G000-345-" & 語言)
  8. 加班地點_lb.Text = 系統語言字典("G000-346-" & 語言) : 加班時間_lb.Text = 系統語言字典("G000-347-" & 語言) : 直到_lb.Text = 系統語言字典("G000-348-" & 語言)
  9. 加班時數_lb.Text = 系統語言字典("G000-349-" & 語言) : 簽核時數_lb.Text = 系統語言字典("G000-350-" & 語言) : 申請人_lb.Text = 系統語言字典("H204-107-" & 語言)
  10. 單位主管_lb.Text = 系統語言字典("G000-351-" & 語言) : 部門主管_lb.Text = 系統語言字典("G000-352-" & 語言) : 管理部_lb.Text = 系統語言字典("G000-353-" & 語言)
  11. 未歸檔_ch.Text = 系統語言字典("H510-116-" & 語言) : 已歸檔_ch.Text = 系統語言字典("H507-121-" & 語言) : 已作廢_ch.Text = 系統語言字典("H510-117-" & 語言)
  12. 表頭(0) = 系統語言字典("H904-104-" & 語言) : 表頭(1) = 系統語言字典("H601-103-" & 語言) : 表頭(2) = 系統語言字典("H204-107-" & 語言)
  13. 表頭(3) = 系統語言字典("G000-351-" & 語言) : 表頭(4) = 系統語言字典("G000-352-" & 語言)
  14. End Sub
  15. Private Sub Set_清單()
  16. Dim ds As New DataSet
  17. 清單1_dgv.DataSource = Nothing : ds.Clear()
  18. 清單1_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  19. 清單1_dgv.ColumnHeadersHeight = 40 : 清單1_dgv.AllowUserToAddRows = False : 清單1_dgv.RowTemplate.Height = 35
  20. If 未歸檔_ch.Checked = True Then
  21. SQL2 = " WHERE 人員加班紀錄.管理部 LIKE N'' AND 人員加班紀錄.單位主管 NOT LIKE N'Close%' AND 人員加班紀錄.部門主管 NOT LIKE N'Close%' "
  22. ElseIf 已歸檔_ch.Checked = True Then
  23. SQL2 = " WHERE 人員加班紀錄.管理部 NOT LIKE N'Close%' AND 人員加班紀錄.管理部 NOT LIKE N'' "
  24. ElseIf 已作廢_ch.Checked = True Then
  25. SQL2 = " WHERE 人員加班紀錄.管理部 LIKE N'Close%' OR 人員加班紀錄.單位主管 LIKE N'Close%' OR 人員加班紀錄.部門主管 LIKE N'Close%' "
  26. End If
  27. SQL_加班單()
  28. da.Fill(ds) : 清單1_dgv.DataSource = ds.Tables(0) : conn.Close()
  29. 清單1_dgv.Columns(0).Visible = False : 清單1_dgv.Columns(3).Visible = False : 清單1_dgv.Columns(4).Visible = False : 清單1_dgv.Columns(5).Visible = False
  30. 清單1_dgv.Columns(6).Visible = False : 清單1_dgv.Columns(7).Visible = False : 清單1_dgv.Columns(8).Visible = False : 清單1_dgv.Columns(9).Visible = False
  31. 清單1_dgv.Columns(10).Visible = False : 清單1_dgv.Columns(11).Visible = False : 清單1_dgv.Columns(13).Visible = False : 清單1_dgv.Columns(15).Visible = False
  32. 清單1_dgv.Columns(17).Visible = False : 清單1_dgv.Columns(18).Visible = False : 清單1_dgv.Columns(19).Visible = False
  33. SQL_加班地點讀取() : 加班地點_cb.Items.Clear() : While (dr.Read()) : 加班地點_cb.Items.Add(dr("加班地點")) : End While : conn.Close()
  34. End Sub
  35. Private Sub 使用者下拉表單資料載入()
  36. SQL_使用者資料讀取1() : 姓名_cb.Items.Clear() : While (dr.Read()) : 姓名_cb.Items.Add(dr("姓名")) : End While : conn.Close()
  37. End Sub
  38. Private Sub 使用者部門資料載入()
  39. PA = 姓名_cb.Text : If 系統語言 = "繁體中文" Then : SQL_使用者資料讀取_中() : Else : SQL_使用者資料讀取_英() : End If
  40. If dr.Read Then : 帳號_tb.Text = dr("帳號").ToString : 申請單位_tb.Text = dr("部門").ToString : 職務_tb.Text = dr("職稱").ToString : End If
  41. End Sub
  42. Private Sub 時間重置入()
  43. 開始日期_dtp.Value = Strings.Format(Today(), "yyyy/MM/dd") & " 17:00:00" : 開始時間_dtp.Value = Strings.Format(Today(), "yyyy/MM/dd") & " 17:00:00"
  44. 結束日期_dtp.Value = Strings.Format(Today(), "yyyy/MM/dd") & " 17:00:00" : 結束時間_dtp.Value = Strings.Format(Today(), "yyyy/MM/dd") & " 17:00:00"
  45. End Sub
  46. Private Sub 新增_bt_MouseEnter(sender As Object, e As EventArgs) Handles 新增_bt.MouseEnter
  47. ToolTip1.SetToolTip(Me.新增_bt, 系統語言字典("G000-109-" & 語言))
  48. End Sub
  49. Private Sub 修改_bt_MouseEnter(sender As Object, e As EventArgs) Handles 修改_bt.MouseEnter
  50. ToolTip1.SetToolTip(Me.修改_bt, 系統語言字典("G000-111-" & 語言))
  51. End Sub
  52. Private Sub 刪除_bt_MouseEnter(sender As Object, e As EventArgs) Handles 刪除_bt.MouseEnter
  53. ToolTip1.SetToolTip(Me.刪除_bt, 系統語言字典("G000-112-" & 語言))
  54. End Sub
  55. Private Sub 審核通過_bt_MouseEnter(sender As Object, e As EventArgs) Handles 審核通過_bt.MouseEnter
  56. ToolTip1.SetToolTip(Me.審核通過_bt, 系統語言字典("H507-118-" & 語言))
  57. End Sub
  58. Private Sub 單據作廢_bt_MouseEnter(sender As Object, e As EventArgs) Handles 單據作廢_bt.MouseEnter
  59. ToolTip1.SetToolTip(Me.單據作廢_bt, 系統語言字典("G000-219-" & 語言))
  60. End Sub
  61. Private Sub 加班申請系統_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  62. H(620) = True : 介面 = "H620" : 語言轉換讀取() : 顯示說明(999, False)
  63. 首次開啟 = True : 公司選擇_cb.Text = "HX" : Panel1.SendToBack()
  64. 時間重置入()
  65. If BL = False Then '----申請端進入------
  66. 申請_p.Visible = True : 審核_p.Visible = False : 申請人_tb.Text = gUserName : 姓名_cb.Text = gUserName : 使用者部門資料載入()
  67. Else '----審核端進入------
  68. 申請_p.Visible = False : 審核_p.Visible = True
  69. End If
  70. End Sub
  71. Private Sub 加班申請系統_Shown(sender As Object, e As EventArgs) Handles MyBase.Shown
  72. 使用者下拉表單資料載入() : Set_清單() : 首次開啟 = False
  73. End Sub
  74. Private Sub 加班申請系統_SizeChanged(sender As Object, e As EventArgs) Handles MyBase.SizeChanged
  75. MyMod.清單字體大小調整()
  76. 清單1_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", HX_PGS_ERP_SYS.字體_NUD.Value)
  77. End Sub
  78. Private Sub 加班申請系統_Closed(sender As Object, e As EventArgs) Handles MyBase.Closed
  79. H(620) = False : MyMod.虛擬桌面開啟()
  80. End Sub
  81. Private Sub 語轉扭_bt_Click(sender As Object, e As EventArgs) Handles 語轉扭_bt.Click
  82. 介面 = "H620" : 語言轉換讀取() : Set_清單()
  83. End Sub
  84. Private Sub 登入閒置控制_MouseMove(sender As Object, e As EventArgs) Handles MyBase.MouseMove
  85. timeNow = 0 : HX_PGS_ERP_SYS.Timer1.Enabled = False : HX_PGS_ERP_SYS.Timer1.Enabled = True
  86. End Sub
  87. Private Sub 登入閒置控制_KeyPress(sender As Object, e As EventArgs) Handles MyBase.KeyPress
  88. timeNow = 0 : HX_PGS_ERP_SYS.Timer1.Enabled = False : HX_PGS_ERP_SYS.Timer1.Enabled = True
  89. End Sub
  90. Private Sub 清單1_dgv_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles 清單1_dgv.CellClick
  91. If e.RowIndex = -1 Then : Else
  92. 單號_tb.Text = 清單1_dgv(0, e.RowIndex).Value.ToString : 姓名_cb.Text = 清單1_dgv(2, e.RowIndex).Value.ToString : 使用者部門資料載入()
  93. 理由_tb.Text = 清單1_dgv(4, e.RowIndex).Value.ToString : 加班地點_cb.Text = 清單1_dgv(5, e.RowIndex).Value.ToString
  94. 首次開啟 = True : 開始日期_dtp.Text = 清單1_dgv(6, e.RowIndex).Value.ToString : 開始時間_dtp.Text = 清單1_dgv(7, e.RowIndex).Value.ToString
  95. 結束日期_dtp.Text = 清單1_dgv(8, e.RowIndex).Value.ToString : 首次開啟 = False : 結束時間_dtp.Text = 清單1_dgv(9, e.RowIndex).Value.ToString
  96. 簽核時數_nud.Text = 清單1_dgv(11, e.RowIndex).Value.ToString : 申請人_tb.Text = 清單1_dgv(12, e.RowIndex).Value.ToString
  97. 單位主管_tb.Text = 清單1_dgv(14, e.RowIndex).Value.ToString : 簽核時間1_tb.Text = 清單1_dgv(15, e.RowIndex).Value.ToString
  98. 部門主管_tb.Text = 清單1_dgv(16, e.RowIndex).Value.ToString : 簽核時間2_tb.Text = 清單1_dgv(17, e.RowIndex).Value.ToString
  99. 管理部_tb.Text = 清單1_dgv(18, e.RowIndex).Value.ToString : 簽核時間3_tb.Text = 清單1_dgv(19, e.RowIndex).Value.ToString
  100. End If
  101. End Sub
  102. Private Sub 公司選擇_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 公司選擇_cb.SelectedIndexChanged
  103. If 公司選擇_cb.Text = "HX" Then : PictureBox1.BringToFront() : ElseIf 公司選擇_cb.Text = "PGS" Then : PictureBox2.BringToFront() : Else : PictureBox1.BringToFront() : End If
  104. End Sub
  105. Private Sub 姓名_cb_Click(sender As Object, e As EventArgs) Handles 姓名_cb.Click
  106. CB選擇清單(姓名_cb, 姓名_cb.Text) : 使用者部門資料載入()
  107. End Sub
  108. Private Sub 申請人_tb_TextChanged(sender As Object, e As EventArgs) Handles 申請人_tb.TextChanged
  109. PA1 = 申請人_tb.Text : SQL_主管簽名檔讀取() : 簽名圖4_pb.Image = Nothing
  110. While dr.Read() = True : Dim unused As Byte() = New Byte(-1) {} : Dim bytes As Byte() = DirectCast(dr.Item("簽名檔圖片"), Byte()) : Dim oStream As New MemoryStream(bytes)
  111. 簽名圖4_pb.Image = Bitmap.FromStream(oStream)
  112. End While : conn.Close() : 簽名圖4_pb.SizeMode = 4
  113. End Sub
  114. Private Sub 單位主管_tb_TextChanged(sender As Object, e As EventArgs) Handles 單位主管_tb.TextChanged
  115. PA1 = 單位主管_tb.Text : SQL_主管簽名檔讀取() : 簽名圖3_pb.Image = Nothing
  116. While dr.Read() = True : Dim unused As Byte() = New Byte(-1) {} : Dim bytes As Byte() = DirectCast(dr.Item("簽名檔圖片"), Byte()) : Dim oStream As New MemoryStream(bytes)
  117. 簽名圖3_pb.Image = Bitmap.FromStream(oStream)
  118. End While : conn.Close() : 簽名圖3_pb.SizeMode = 4
  119. End Sub
  120. Private Sub 部門主管_tb_TextChanged(sender As Object, e As EventArgs) Handles 部門主管_tb.TextChanged
  121. PA1 = 部門主管_tb.Text : SQL_主管簽名檔讀取() : 簽名圖2_pb.Image = Nothing
  122. While dr.Read() = True : Dim unused As Byte() = New Byte(-1) {} : Dim bytes As Byte() = DirectCast(dr.Item("簽名檔圖片"), Byte()) : Dim oStream As New MemoryStream(bytes)
  123. 簽名圖2_pb.Image = Bitmap.FromStream(oStream)
  124. End While : conn.Close() : 簽名圖2_pb.SizeMode = 4
  125. End Sub
  126. Private Sub 管理部_tb_TextChanged(sender As Object, e As EventArgs) Handles 管理部_tb.TextChanged
  127. PA1 = 管理部_tb.Text : SQL_主管簽名檔讀取() : 簽名圖1_pb.Image = Nothing
  128. While dr.Read() = True : Dim unused As Byte() = New Byte(-1) {} : Dim bytes As Byte() = DirectCast(dr.Item("簽名檔圖片"), Byte()) : Dim oStream As New MemoryStream(bytes)
  129. 簽名圖1_pb.Image = Bitmap.FromStream(oStream)
  130. End While : conn.Close() : 簽名圖1_pb.SizeMode = 4
  131. End Sub
  132. Private Sub Set_日期格式轉換()
  133. DTP = Format(Today(), "yyyy/MM/dd") : DTP1 = Format(Today(), "yyyyMMdd")
  134. End Sub
  135. Private Sub 新增_bt_Click(sender As Object, e As EventArgs) Handles 新增_bt.Click
  136. If 姓名_cb.Text = "" Or 申請單位_tb.Text = "" Or 職務_tb.Text = "" Or 帳號_tb.Text = "" Then : MGB(系統語言字典("G000-354-" & 語言), 1) : Else
  137. If 理由_tb.Text = "" Then : MGB(系統語言字典("G000-355-" & 語言), 1) : Else
  138. If 加班地點_cb.Text = "" Then : MGB(系統語言字典("G000-356-" & 語言), 1) : Else
  139. If 加班時數_nud.Value = 0 Then : MGB(系統語言字典("G000-357-" & 語言), 1) : Else
  140. If 簽核時數_nud.Value = 0 Then : MGB(系統語言字典("G000-358-" & 語言), 1) : Else
  141. Set_日期格式轉換() : Dim NUM1 As Integer : 申請人_tb.Text = gUserName
  142. For i As Integer = 1 To 999
  143. NUM1 = 0 + i
  144. If NUM1 < 10 Then : 單號_tb.Text = "OT-" & DTP1 & "-00" & NUM1
  145. ElseIf NUM1 > 9 And NUM1 < 100 Then : 單號_tb.Text = "OT-" & DTP1 & "-0" & NUM1
  146. ElseIf NUM1 > 99 Then : 單號_tb.Text = "OT-" & DTP1 & "-" & NUM1 : End If
  147. PA1 = 單號_tb.Text : SQL_加班單號查詢()
  148. If dr.Read() Then : Else : i = 999 : conn.Close() : End If : conn.Close()
  149. Next
  150. PA1 = 單號_tb.Text : PA2 = DTP : PA3 = 帳號_tb.Text : PA4 = 理由_tb.Text : PA5 = 加班地點_cb.Text : PA6 = 開始日期_dtp.Text : PA7 = 開始時間_dtp.Text
  151. PA8 = 結束日期_dtp.Text : PA9 = 結束時間_dtp.Text : PA10 = 加班時數_nud.Value : PA11 = 簽核時數_nud.Value : PA12 = 申請人_tb.Text : PA13 = DTP
  152. SQL_加班申請() : Set_清單() : MGB(系統語言字典("H905-103-" & 語言), 1)
  153. End If
  154. End If
  155. End If
  156. End If
  157. End If
  158. End Sub
  159. Private Sub 修改_bt_Click(sender As Object, e As EventArgs) Handles 修改_bt.Click
  160. If 單位主管_tb.Text <> "" Or 部門主管_tb.Text <> "" Or 管理部_tb.Text <> "" Then : MGB(系統語言字典("G000-361-" & 語言), 1) : Else
  161. If 單號_tb.Text = "" Then : MGB(系統語言字典("H204-130-" & 語言), 1) : Else
  162. If 申請人_tb.Text <> gUserName Then : MGB(系統語言字典("G000-360-" & 語言), 1) : Else
  163. PA1 = 單號_tb.Text : PA2 = DTP : PA3 = 帳號_tb.Text : PA4 = 理由_tb.Text : PA5 = 加班地點_cb.Text : PA6 = 開始日期_dtp.Text : PA7 = 開始時間_dtp.Text
  164. PA8 = 結束日期_dtp.Text : PA9 = 結束時間_dtp.Text : PA10 = 加班時數_nud.Value : PA11 = 簽核時數_nud.Value : PA12 = 申請人_tb.Text : PA13 = DTP
  165. SQL_加班申請修改() : Set_清單() : MGB(系統語言字典("H299-128-" & 語言), 1)
  166. End If
  167. End If
  168. End If
  169. End Sub
  170. Private Sub 刪除_bt_Click(sender As Object, e As EventArgs) Handles 刪除_bt.Click
  171. If 單位主管_tb.Text <> "" Or 部門主管_tb.Text <> "" Or 管理部_tb.Text <> "" Then : MGB(系統語言字典("G000-361-" & 語言), 1) : Else
  172. If 單號_tb.Text = "" Then : MGB(系統語言字典("H204-130-" & 語言), 1) : Else
  173. If 申請人_tb.Text <> gUserName Then : MGB(系統語言字典("G000-360-" & 語言), 1) : Else
  174. PA1 = 單號_tb.Text : SQL_加班申請刪除() : Set_清單() : MGB(系統語言字典("H299-130-" & 語言), 1)
  175. End If
  176. End If
  177. End If
  178. End Sub
  179. Private Sub 開始日期_dtp_ValueChanged(sender As Object, e As EventArgs) Handles 開始日期_dtp.ValueChanged
  180. 結束日期_dtp.Value = 開始日期_dtp.Value
  181. End Sub
  182. Private Sub 結束日期_dtp_ValueChanged(sender As Object, e As EventArgs) Handles 結束日期_dtp.ValueChanged
  183. 開始日期_dtp.Value = 結束日期_dtp.Value
  184. End Sub
  185. Private Sub Set_加班計算()
  186. If 首次開啟 = False Then : Dim 開始時間 As DateTime = 開始時間_dtp.Text : Dim 結束時間 As DateTime = 結束時間_dtp.Text
  187. If 開始時間 < 結束時間 Then
  188. Dim 時間差 As TimeSpan = 結束時間 - 開始時間 : Dim AA As String = 時間差.TotalHours.ToString("F2")
  189. 加班時數_nud.Value = AA : 簽核時數_nud.Value = Math.Round(加班時數_nud.Value, 0, MidpointRounding.AwayFromZero)
  190. ElseIf 開始時間 = 結束時間 Then : 加班時數_nud.Value = 0 : 簽核時數_nud.Value = 0
  191. Else : MGB(系統語言字典("H904-119-" & 語言), 1) : 時間重置入() : End If
  192. End If
  193. End Sub
  194. Private Sub 開始時間_dtp_ValueChanged(sender As Object, e As EventArgs) Handles 開始時間_dtp.ValueChanged
  195. Set_加班計算()
  196. End Sub
  197. Private Sub 結束時間_dtp_ValueChanged(sender As Object, e As EventArgs) Handles 結束時間_dtp.ValueChanged
  198. Set_加班計算()
  199. End Sub
  200. Private Sub 未歸檔_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 未歸檔_ch.Click
  201. 未歸檔_ch.Checked = True : 已歸檔_ch.Checked = False : 已作廢_ch.Checked = False : Set_清單() : 審核_p.Enabled = True : 申請_p.Enabled = True
  202. End Sub
  203. Private Sub 已歸檔_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 已歸檔_ch.Click
  204. 未歸檔_ch.Checked = False : 已歸檔_ch.Checked = True : 已作廢_ch.Checked = False : Set_清單() : 審核_p.Enabled = False : 申請_p.Enabled = False
  205. End Sub
  206. Private Sub 已作廢_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 已作廢_ch.Click
  207. 未歸檔_ch.Checked = False : 已歸檔_ch.Checked = False : 已作廢_ch.Checked = True : Set_清單() : 審核_p.Enabled = False : 申請_p.Enabled = False
  208. End Sub
  209. Private Sub 審核通過_bt_Click(sender As Object, e As EventArgs) Handles 審核通過_bt.Click
  210. Dim 部門別 As String : PA = gUserName : SQL_使用者資料讀取_中() : If dr.Read Then : 部門別 = dr("部門").ToString : End If : Set_日期格式轉換()
  211. Dim 申請方 As String : PA = 姓名_cb.Text : SQL_使用者資料讀取_中() : If dr.Read Then : 申請方 = dr("部門").ToString : End If
  212. If 部門別 = "管理部" And 申請方 <> "管理部" Then
  213. 管理部_tb.Text = gUserName : 審核通過()
  214. ElseIf 部門別 = "管理部" And 申請方 = "管理部" And CInt(登入人級別) > 5 Then
  215. If 單位主管_tb.Text <> "" Then : Else : 單位主管_tb.Text = gUserName : End If
  216. ElseIf 部門別 = "管理部" And 申請方 = "管理部" And CInt(登入人級別) <= 5 Then
  217. 管理部_tb.Text = gUserName : 部門主管_tb.Text = gUserName : 審核通過()
  218. If 單位主管_tb.Text <> "" Then : Else : 單位主管_tb.Text = gUserName : End If
  219. ElseIf CInt(登入人級別) > 5 And 部門別 = 申請方 Then
  220. If 單位主管_tb.Text <> "" Then : Else : 單位主管_tb.Text = gUserName : End If
  221. ElseIf CInt(登入人級別) <= 5 And 部門別 = 申請方 Then
  222. If 部門主管_tb.Text <> "" Then : Else : 部門主管_tb.Text = gUserName : End If
  223. If 單位主管_tb.Text <> "" Then : Else : 單位主管_tb.Text = gUserName : End If
  224. ElseIf 部門別 <> 申請方 Then : MGB(系統語言字典("G000-362-" & 語言), 1) : Exit Sub
  225. End If : PA1 = 單號_tb.Text
  226. If 簽核時間1_tb.Text = "" Then
  227. If 單位主管_tb.Text <> "" Then : PA3 = "單位主管 = N'" & 單位主管_tb.Text & "', 簽核日期1 = N'" & DTP & "'" : Else : PA3 = "單位主管 = N'', 簽核日期1 = N''" : End If
  228. Else : PA3 = "" : End If
  229. If 簽核時間2_tb.Text = "" Then
  230. If 部門主管_tb.Text <> "" Then : PA4 = "部門主管 = N'" & 部門主管_tb.Text & "', 簽核日期2 = N'" & DTP & "'" : Else : PA4 = "部門主管 = N'', 簽核日期2 = N''" : End If
  231. Else : PA4 = "" : End If
  232. If 簽核時間3_tb.Text = "" Then
  233. If 管理部_tb.Text <> "" Then : PA5 = "管理部 = N'" & 管理部_tb.Text & "', 簽核日期3 = N'" & DTP & "'" : Else : PA5 = "管理部 = N'', 簽核日期3 = N''" : End If
  234. Else : PA5 = "" : End If
  235. If PA3 = "" And PA4 = "" And PA5 = "" Then
  236. ElseIf PA3 <> "" And PA4 = "" And PA5 = "" Then : SQL2 = PA3 : SQL_加班申請簽核() : MGB(系統語言字典("H904-119-" & 語言), 1)
  237. ElseIf PA3 = "" And PA4 <> "" And PA5 = "" Then : SQL2 = PA4 : SQL_加班申請簽核() : MGB(系統語言字典("H904-119-" & 語言), 1)
  238. ElseIf PA3 = "" And PA4 = "" And PA5 <> "" Then : SQL2 = PA5 : SQL_加班申請簽核() : MGB(系統語言字典("H904-119-" & 語言), 1)
  239. ElseIf PA3 <> "" And PA4 <> "" And PA5 = "" Then : SQL2 = PA3 & ", " & PA4 : SQL_加班申請簽核() : MGB(系統語言字典("H904-119-" & 語言), 1)
  240. ElseIf PA3 <> "" And PA4 = "" And PA5 <> "" Then : SQL2 = PA3 & ", " & PA5 : SQL_加班申請簽核() : MGB(系統語言字典("H904-119-" & 語言), 1)
  241. ElseIf PA3 = "" And PA4 <> "" And PA5 <> "" Then : SQL2 = PA4 & ", " & PA5 : SQL_加班申請簽核() : MGB(系統語言字典("H904-119-" & 語言), 1)
  242. ElseIf PA3 <> "" And PA4 <> "" And PA5 <> "" Then : SQL2 = PA3 & ", " & PA4 & ", " & PA5 : SQL_加班申請簽核() : MGB(系統語言字典("H904-119-" & 語言), 1) : End If : Set_清單()
  243. End Sub
  244. Private Sub 審核通過()
  245. SQL_加班單查詢(單號_tb.Text)
  246. If dr.Read() Then
  247. Dim ID卡號 As String = dr("ID卡號") : Dim 日期 As String = dr("開始日期") : SQL_部門聯絡函_查詢考勤(ID卡號, 日期)
  248. If dr.Read() Then : SQL_部門聯絡函_修改考勤("1", ID卡號, 日期) : Else : SQL_部門聯絡函_新增考勤(ID卡號, 日期) : End If
  249. End If
  250. End Sub
  251. Private Sub 單據作廢_bt_Click(sender As Object, e As EventArgs) Handles 單據作廢_bt.Click
  252. Dim 部門別 As String : PA = gUserName : SQL_使用者資料讀取_中() : If dr.Read Then : 部門別 = dr("部門").ToString : End If : Set_日期格式轉換()
  253. Dim 申請方 As String : PA = 姓名_cb.Text : SQL_使用者資料讀取_中() : If dr.Read Then : 申請方 = dr("部門").ToString : End If
  254. If 部門別 = "管理部" And 申請方 <> "管理部" Then
  255. 管理部_tb.Text = "Close-" & gUserName
  256. ElseIf 部門別 = "管理部" And 申請方 = "管理部" And CInt(登入人級別) > 5 Then
  257. If 單位主管_tb.Text <> "" Then : Else : 單位主管_tb.Text = "Close-" & gUserName : End If
  258. ElseIf 部門別 = "管理部" And 申請方 = "管理部" And CInt(登入人級別) <= 5 Then
  259. 管理部_tb.Text = "Close-" & gUserName : 部門主管_tb.Text = "Close-" & gUserName
  260. If 單位主管_tb.Text <> "" Then : Else : 單位主管_tb.Text = "Close-" & gUserName : End If
  261. ElseIf CInt(登入人級別) > 5 And 部門別 = 申請方 Then
  262. If 單位主管_tb.Text <> "" Then : Else : 單位主管_tb.Text = "Close-" & gUserName : End If
  263. ElseIf CInt(登入人級別) <= 5 And 部門別 = 申請方 Then
  264. If 部門主管_tb.Text <> "" Then : Else : 部門主管_tb.Text = "Close-" & gUserName : End If
  265. If 單位主管_tb.Text <> "" Then : Else : 單位主管_tb.Text = "Close-" & gUserName : End If
  266. ElseIf 部門別 <> 申請方 Then : MGB(系統語言字典("G000-362-" & 語言), 1) : Exit Sub
  267. End If : PA1 = 單號_tb.Text
  268. If 簽核時間1_tb.Text = "" Then
  269. If 單位主管_tb.Text <> "" Then : PA3 = "單位主管 = N'" & 單位主管_tb.Text & "', 簽核日期1 = N'" & DTP & "'" : Else : PA3 = "單位主管 = N'', 簽核日期1 = N''" : End If
  270. Else : PA3 = "" : End If
  271. If 簽核時間2_tb.Text = "" Then
  272. If 部門主管_tb.Text <> "" Then : PA4 = "部門主管 = N'" & 部門主管_tb.Text & "', 簽核日期2 = N'" & DTP & "'" : Else : PA4 = "部門主管 = N'', 簽核日期2 = N''" : End If
  273. Else : PA4 = "" : End If
  274. If 簽核時間3_tb.Text = "" Then
  275. If 管理部_tb.Text <> "" Then : PA5 = "管理部 = N'" & 管理部_tb.Text & "', 簽核日期3 = N'" & DTP & "'" : Else : PA5 = "管理部 = N'', 簽核日期3 = N''" : End If
  276. Else : PA5 = "" : End If
  277. If PA3 = "" And PA4 = "" And PA5 = "" Then
  278. ElseIf PA3 <> "" And PA4 = "" And PA5 = "" Then : SQL2 = PA3 : SQL_加班申請簽核() : MGB(系統語言字典("H904-119-" & 語言), 1)
  279. ElseIf PA3 = "" And PA4 <> "" And PA5 = "" Then : SQL2 = PA4 : SQL_加班申請簽核() : MGB(系統語言字典("H904-119-" & 語言), 1)
  280. ElseIf PA3 = "" And PA4 = "" And PA5 <> "" Then : SQL2 = PA5 : SQL_加班申請簽核() : MGB(系統語言字典("H904-119-" & 語言), 1)
  281. ElseIf PA3 <> "" And PA4 <> "" And PA5 = "" Then : SQL2 = PA3 & ", " & PA4 : SQL_加班申請簽核() : MGB(系統語言字典("H904-119-" & 語言), 1)
  282. ElseIf PA3 <> "" And PA4 = "" And PA5 <> "" Then : SQL2 = PA3 & ", " & PA5 : SQL_加班申請簽核() : MGB(系統語言字典("H904-119-" & 語言), 1)
  283. ElseIf PA3 = "" And PA4 <> "" And PA5 <> "" Then : SQL2 = PA4 & ", " & PA5 : SQL_加班申請簽核() : MGB(系統語言字典("H904-119-" & 語言), 1)
  284. ElseIf PA3 <> "" And PA4 <> "" And PA5 <> "" Then : SQL2 = PA3 & ", " & PA4 & ", " & PA5 : SQL_加班申請簽核() : MGB(系統語言字典("H904-119-" & 語言), 1) : End If : Set_清單()
  285. End Sub
  286. End Class