Nenhuma descrição
Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

SQL_LINE_溫控.vb 23KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326
  1. Imports System.IO
  2. Imports System.Net
  3. Imports System.Text
  4. Imports Microsoft.VisualBasic.ApplicationServices
  5. Imports Newtonsoft.Json
  6. '需要從Nuget安裝套件 Newtonsoft.Json
  7. Module SQL_LINE_溫控
  8. Public 發送對象, LINE_權限代號, PA201, PA202, PA203, PA204, PA205, 通知變數X, 通知變數Y As String
  9. '=======請依照不同公司修改=======
  10. Public LINE_公司名稱 As String = "GCM" : Public LINE_機器人代號 As String = "RB-0002"
  11. '===========================
  12. Public ConStringLINE As String
  13. Public LINE_權限數量 As Integer = 61
  14. Public linecc(61) As Boolean
  15. Public LINE_需通知清單_dgv, LINE_通知內容清單_dgv As New DataTable
  16. Public LINE_系統權限 As String = "CC200,CC201,CC202,CC203,CC204,CC205,CC206,CC207,CC208,CC209,CC210,CC211,CC212,CC213,CC214,CC215,CC216,CC217,
  17. CC218,CC219,CC220,CC221,CC222,CC223,CC224,CC225,CC226,CC227,CC228,CC229,CC230,CC231,CC232,CC233,CC234,CC235,CC236,CC237,
  18. CC238,CC239,CC240,CC241,CC242,CC243,CC244,CC245,CC246,CC247,CC248,CC249,CC250,CC251,CC252,CC253,CC254,CC255,CC256,CC257,
  19. CC258,CC259,CC260"
  20. Public LINE_登入權限 As String = "姓名, 帳號 AS 公司名稱,token,通知語言,電話號碼1,電話號碼2,電話號碼3,Line,WhatsApp,Message," & LINE_系統權限
  21. Public LINE_登入權限_IN As String = "姓名, 帳號 ,token,通知語言,電話號碼1,電話號碼2,電話號碼3,Line,WhatsApp,Message," & LINE_系統權限
  22. Public LINE_登入權限2 As String = "使用者權限管理表_1.姓名, 使用者權限管理表_1.帳號, 使用者權限管理表.token, 使用者權限管理表.通知語言, 使用者權限管理表.電話號碼1,
  23. 使用者權限管理表.電話號碼2, 使用者權限管理表.電話號碼3, 使用者權限管理表.Line, 使用者權限管理表.WhatsApp, 使用者權限管理表.Message," & LINE_系統權限
  24. Friend Sub SQL_連線字串_測試_LINE_SQL()
  25. ConStringLINE = "Data Source=mssql-147629-0.cloudclusters.net,12711;Initial Catalog=GCM-SCADA;Persist Security Info=True;User ID=b70340;Password=Lee0911274990;Max pool size = 200; Connection Timeout=0"
  26. End Sub
  27. Friend Sub ConnOpen_LINE_SQL()
  28. SQL_連線字串_測試_LINE_SQL()
  29. conn.Close() : If conn.State = ConnectionState.Closed Then : conn.ConnectionString = ConStringLINE : conn.Open() : End If
  30. End Sub
  31. ''' <summary>
  32. ''' 使用代號之前,請先到LINE使用者管理去進行設定
  33. ''' 對象 請在LINE使用者管理中去複製字串出來。
  34. ''' </summary>
  35. Public Sub LIN訊息通知X(代號 As String, 對象 As String, Optional ByVal 變數X As String = "", Optional ByVal 變數Y As String = "")
  36. LINE_權限代號 = 代號 : 發送對象 = 對象 : 通知變數X = 變數X : 通知變數Y = 變數Y : LINE_通知模塊()
  37. End Sub
  38. ''' <summary>
  39. ''' 使用代號之前,請先到LINE使用者管理去進行設定
  40. ''' 對象 請在LINE使用者管理中去複製字串出來。
  41. ''' </summary>
  42. Public Sub LIN訊息通知_溫控(代號 As String, 對象 As String, Optional ByVal 變數X As String = "", Optional ByVal 變數Y As String = "")
  43. LINE_權限代號 = 代號 : 發送對象 = 對象 : 通知變數X = 變數X : 通知變數Y = 變數Y : LINE_新通知模塊()
  44. End Sub
  45. '=====LINE_權限代號 = "CC207" : 發送對象 = "tltony1234" : 通知變數X = "王詩文" : 通知變數Y = "9/7號" : LINE_通知模塊()=====
  46. Friend Sub SQL_系統使用者_清單()
  47. ConnOpen()
  48. SQL1 = "SELECT 姓名 FROM 使用者權限管理表 ORDER BY 姓名"
  49. CmdSet_For_DGV()
  50. End Sub
  51. Friend Sub SQL_LINE_使用者管理表_清單載入()
  52. ConnOpen_LINE_SQL()
  53. SQL1 = "SELECT 姓名, UserID, CC200, CC201, CC202, CC203, CC204, CC205, CC206, CC207, CC208, CC209, CC210,
  54. CC211, CC212, CC213, CC214, CC215, CC216, CC217, CC218, CC219, CC220, CC221, CC222, CC223, CC224, CC225,
  55. CC226, CC227, CC228, CC229, CC230, CC231, CC232, CC233, CC234, CC235, CC236, CC237, CC238, CC239, CC240,
  56. CC241, CC242, CC243, CC244, CC245, CC246, CC247, CC248, CC249, CC250, CC251, CC252, CC253, CC254, CC255,
  57. CC256, CC257, CC258, CC259, CC260, 通知語言, Line, WhatsApp, Message, 電話號碼1, 電話號碼2, 電話號碼3
  58. FROM LINE_使用者權限管理表 WHERE 帳號 LIKE N'" & LINE_公司名稱 & "' ORDER BY 姓名 "
  59. CmdSet_For_DGV()
  60. End Sub
  61. Friend Sub SQL_LINE權限一覽_dgv_清單()
  62. ConnOpen_LINE_SQL()
  63. SQL1 = "SELECT 權限代號, 權限名稱 FROM LINE_權限一覽表 WHERE (權限名稱 LIKE N'WS%') OR (權限名稱 LIKE N'GCM%') ORDER BY 權限代號"
  64. CmdSet_For_DGV()
  65. End Sub
  66. Friend Sub SQL_LINE_未綁定LINEid清單載入()
  67. ConnOpen_LINE_SQL()
  68. SQL1 = "SELECT DISTINCT LINE_使用者資料表.UserID
  69. FROM LINE_使用者資料表 LEFT OUTER JOIN
  70. LINE_群組控制表 ON LINE_使用者資料表.GroupID = LINE_群組控制表.GroupID LEFT OUTER JOIN
  71. LINE_使用者權限管理表 ON LINE_使用者資料表.UserID = LINE_使用者權限管理表.UserID
  72. WHERE (LINE_使用者資料表.UserID IS NOT NULL) AND (LINE_使用者權限管理表.姓名 IS NULL OR
  73. LINE_使用者權限管理表.姓名 LIKE N'') AND (LINE_群組控制表.RobotID NOT LIKE N'RB-0001' OR
  74. LINE_群組控制表.RobotID IS NULL)
  75. ORDER BY LINE_使用者資料表.UserID"
  76. CmdSet_For_DGV()
  77. End Sub
  78. Friend Sub SQL_LINE_個人對話紀錄(user_id As String)
  79. ConnOpen_LINE_SQL()
  80. SQL1 = "SELECT createtime AS 日期, text AS 內容 FROM LINE_個人紀錄表 WHERE (UserID LIKE N'" & user_id & "' ) ORDER BY createtime DESC"
  81. CmdSet_For_DGV()
  82. End Sub
  83. Friend Sub SQL_LINE_群組對話紀錄(user_id As String)
  84. ConnOpen_LINE_SQL()
  85. SQL1 = "SELECT createtime AS 日期, text AS 內容
  86. FROM LINE_WS群組紀錄表
  87. WHERE (UserID LIKE N'" & user_id & "')
  88. UNION ALL
  89. SELECT createtime AS 日期, text AS 內容
  90. FROM LINE_MCD群組紀錄表
  91. WHERE (UserID LIKE N'" & user_id & "')
  92. ORDER BY createtime DESC"
  93. CmdSet_For_DGV()
  94. End Sub
  95. Friend Sub SQL_確認是否有重複名稱(姓名 As String, UserID As String)
  96. ConnOpen_LINE_SQL()
  97. SQL1 = "SELECT 姓名, 帳號, token, CC200, CC201, CC202, CC203, CC204, CC205, CC206, CC207, CC208, CC209, CC210,
  98. CC211, CC212, CC213, CC214, CC215, CC216, CC217, CC218, CC219, CC220, CC221, CC222, CC223, CC224, CC225,
  99. CC226, CC227, CC228, CC229, CC230, CC231, CC232, CC233, CC234, CC235, CC236, CC237, CC238, CC239, CC240,
  100. CC241, CC242, CC243, CC244, CC245, CC246, CC247, CC248, CC249, CC250, CC251, CC252, CC253, CC254, CC255,
  101. CC256, CC257, CC258, CC259, CC260, 通知語言, Line, WhatsApp, Message, 電話號碼1, 電話號碼2, 電話號碼3,
  102. UserID FROM LINE_使用者權限管理表
  103. WHERE (姓名 LIKE N'" & 姓名 & "' OR UserID LIKE N'" & UserID & "')"
  104. CmdSet_For_dr()
  105. End Sub
  106. Friend Sub SQL_LINE_新增使用者資料(姓名 As String, 通知語言 As String, Line As Boolean, WhatsApp As Boolean, Message As Boolean, 電話號碼1 As String, 電話號碼2 As String, 電話號碼3 As String, UserID As String)
  107. ConnOpen_LINE_SQL()
  108. SQL1 = "INSERT INTO LINE_使用者權限管理表 (姓名, 帳號, token, CC200, CC201, CC202, CC203, CC204, CC205, CC206, CC207, CC208, CC209, CC210,
  109. CC211, CC212, CC213, CC214, CC215, CC216, CC217, CC218, CC219, CC220, CC221, CC222, CC223, CC224, CC225,
  110. CC226, CC227, CC228, CC229, CC230, CC231, CC232, CC233, CC234, CC235, CC236, CC237, CC238, CC239, CC240,
  111. CC241, CC242, CC243, CC244, CC245, CC246, CC247, CC248, CC249, CC250, CC251, CC252, CC253, CC254, CC255,
  112. CC256, CC257, CC258, CC259, CC260, 通知語言, Line, WhatsApp, Message, 電話號碼1, 電話號碼2, 電話號碼3,
  113. UserID)
  114. VALUES (N'" & 姓名 & "', N'WS', N'','" & linecc(0) & "','" & linecc(1) & "','" & linecc(2) & "','" & linecc(3) & "','" & linecc(4) & "','" & linecc(5) & "','" & linecc(6) & "','" & linecc(7) & "','" & linecc(8) &
  115. "','" & linecc(9) & "','" & linecc(10) & "','" & linecc(11) & "','" & linecc(12) & "','" & linecc(13) & "','" & linecc(14) & "','" & linecc(15) & "','" & linecc(16) &
  116. "','" & linecc(17) & "','" & linecc(18) & "','" & linecc(19) & "','" & linecc(20) & "','" & linecc(21) & "','" & linecc(22) & "','" & linecc(23) & "','" & linecc(24) &
  117. "','" & linecc(25) & "','" & linecc(26) & "','" & linecc(27) & "','" & linecc(28) & "','" & linecc(29) & "','" & linecc(30) & "','" & linecc(31) & "','" & linecc(32) &
  118. "','" & linecc(33) & "','" & linecc(34) & "','" & linecc(35) & "','" & linecc(36) & "','" & linecc(37) & "','" & linecc(38) & "','" & linecc(39) & "','" & linecc(40) &
  119. "','" & linecc(41) & "','" & linecc(42) & "','" & linecc(43) & "','" & linecc(44) & "','" & linecc(45) & "','" & linecc(46) & "','" & linecc(47) & "','" & linecc(48) &
  120. "','" & linecc(49) & "','" & linecc(50) & "','" & linecc(51) & "','" & linecc(52) & "','" & linecc(53) & "','" & linecc(54) & "','" & linecc(55) & "','" & linecc(56) &
  121. "','" & linecc(57) & "','" & linecc(58) & "','" & linecc(59) & "','" & linecc(60) & "',N'" & 通知語言 & "',N'" & Line & "',N'" & WhatsApp & "',N'" & Message &
  122. "',N'" & 電話號碼1 & "',N'" & 電話號碼2 & "',N'" & 電話號碼3 & "',N'" & UserID & "')"
  123. CmdSet_For_dr()
  124. End Sub
  125. Friend Sub SQL_LINE_使用者資料刪除(帳號 As String, 姓名 As String, token As String)
  126. ConnOpen_LINE_SQL() : SQL1 = "DELETE FROM LINE_使用者權限管理表 WHERE (帳號 LIKE N'" & 帳號 & "' AND 姓名 LIKE N'" & 姓名 & "' AND token LIKE N'" & token & "')" : CmdSet_For_dr()
  127. End Sub
  128. Friend Sub SQL_LINE_新增發送通知()
  129. ConnOpen_LINE_SQL()
  130. SQL1 = "INSERT INTO LINE_通知設定表 (token,發送內容,隨機碼,通知語言,發送APP) VALUES (N'" & PA201 & "',N'" & PA202 & "',N'" & PA203 & "',N'" & PA204 & "',N'" & PA205 & "')"
  131. CmdSet_For_dr()
  132. End Sub
  133. Friend Sub SQL_LINE_搜尋符合通知對象()
  134. ConnOpen_LINE_SQL()
  135. SQL1 = "SELECT UserID,token,通知語言,電話號碼1,電話號碼2,電話號碼3,Line,WhatsApp,Message FROM LINE_使用者權限管理表 WHERE(" & LINE_權限代號 & "='True' and 姓名 LIKE N'" & 發送對象 & "')"
  136. CmdSet_For_DGV()
  137. End Sub
  138. Friend Sub SQL_LINE_通知內容清單載入()
  139. ConnOpen_LINE_SQL()
  140. SQL1 = "SELECT LINE_通知內容設定表.權限代號, LINE_權限一覽表.權限名稱, LINE_通知內容設定表.通知內容, LINE_通知內容設定表.通知格式,
  141. LINE_通知內容設定表.變數位置, LINE_通知內容設定表.通知內容1, LINE_通知內容設定表.通知內容2, LINE_通知內容設定表.通知內容3,
  142. LINE_通知內容設定表.已使用
  143. FROM LINE_通知內容設定表 INNER JOIN
  144. LINE_權限一覽表 ON LINE_通知內容設定表.權限代號 = LINE_權限一覽表.權限代號
  145. ORDER BY LINE_通知內容設定表.權限代號"
  146. CmdSet_For_DGV()
  147. End Sub
  148. Friend Sub SQL_LINE_通知內容()
  149. ConnOpen_LINE_SQL()
  150. SQL1 = "SELECT 通知格式,變數位置,通知內容1,通知內容2,通知內容3 FROM LINE_通知內容設定表 WHERE (權限代號='" & LINE_權限代號 & "')"
  151. CmdSet_For_DGV()
  152. End Sub
  153. Friend Sub SQL_LINE_權限清單載入()
  154. ConnOpen_LINE_SQL()
  155. SQL1 = "SELECT LINE_權限一覽表.權限代號, LINE_權限一覽表.權限名稱, LINE_通知內容設定表.已使用
  156. FROM LINE_權限一覽表 LEFT OUTER JOIN LINE_通知內容設定表 ON LINE_權限一覽表.權限代號 = LINE_通知內容設定表.權限代號
  157. ORDER BY LINE_權限一覽表.權限代號"
  158. CmdSet_For_DGV()
  159. End Sub
  160. Friend Sub LINE_新通知模塊()
  161. Dim ds5, ds6 As New DataSet : ds5.Clear() : ds6.Clear()
  162. Dim 通知格式, 變數位置, 通知內容1, 通知內容2, 通知內容3, 發送X, 發送Y As String
  163. Dim L, M, W As Boolean
  164. SQL_LINE_搜尋符合通知對象()
  165. da.Fill(ds5)
  166. LINE_需通知清單_dgv = ds5.Tables(0) : conn.Close()
  167. If 通知變數X = "" Then : 發送X = "未設定通知變數X" : Else : 發送X = 通知變數X : End If
  168. If 通知變數Y = "" Then : 發送Y = "未設定通知變數Y" : Else : 發送Y = 通知變數Y : End If
  169. For x As Integer = 0 To LINE_需通知清單_dgv.Rows.Count - 1
  170. L = LINE_需通知清單_dgv.Rows(x)("Line")
  171. W = LINE_需通知清單_dgv.Rows(x)("WhatsApp")
  172. M = LINE_需通知清單_dgv.Rows(x)("Message")
  173. SQL_LINE_通知內容() : da.Fill(ds6) : LINE_通知內容清單_dgv = ds6.Tables(0) : conn.Close()
  174. If LINE_需通知清單_dgv.Rows.Count = 0 Then : Else
  175. 通知格式 = LINE_通知內容清單_dgv.Rows(0)(0).ToString
  176. 變數位置 = LINE_通知內容清單_dgv.Rows(0)(1).ToString
  177. 通知內容1 = LINE_通知內容清單_dgv.Rows(0)(2).ToString
  178. 通知內容2 = LINE_通知內容清單_dgv.Rows(0)(3).ToString
  179. 通知內容3 = LINE_通知內容清單_dgv.Rows(0)(4).ToString
  180. Dim 發送訊息 As String = "這是一則來自FH智能小幫手的通知訊息"
  181. If 變數位置 = "A" Then
  182. 發送訊息 = 通知內容1
  183. ElseIf 變數位置 = "X" Then
  184. 發送訊息 = 發送X
  185. ElseIf 變數位置 = "A+X" Then
  186. 發送訊息 = 通知內容1 + 發送X
  187. ElseIf 變數位置 = "X+A" Then
  188. 發送訊息 = 發送X + 通知內容1
  189. ElseIf 變數位置 = "X+A+Y" Then
  190. 發送訊息 = 發送X + 通知內容1 + 發送Y
  191. ElseIf 變數位置 = "A+X+B" Then
  192. 發送訊息 = 通知內容1 + 發送X + 通知內容2
  193. ElseIf 變數位置 = "X+A+Y+B" Then
  194. 發送訊息 = 發送X + 通知內容1 + 發送Y + 通知內容2
  195. ElseIf 變數位置 = "A+X+B+Y" Then
  196. 發送訊息 = 通知內容1 + 發送X + 通知內容2 + 發送Y
  197. ElseIf 變數位置 = "A+X+B+Y+C" Then
  198. 發送訊息 = 通知內容1 + 發送X + 通知內容2 + 發送Y + 通知內容3
  199. End If
  200. Dim UserID As String = LINE_需通知清單_dgv.Rows(x)("UserID").ToString
  201. If L = True Then
  202. If UserID = "" Then : Else
  203. PostData(UserID, 發送訊息, LINE_機器人代號)
  204. End If
  205. End If
  206. End If
  207. Next
  208. ds5.Clear() : ds6.Clear() : 通知變數X = "" : 通知變數Y = ""
  209. End Sub
  210. Sub PostData(userID As String, text As String, robotID As String)
  211. ' 定義要請求的 URL
  212. Dim url As String = "https://gcmlineauto-4acbbd534d6e.herokuapp.com/wsw/webhook"
  213. ' 準備要傳送的資料(這裡使用 JSON 格式)
  214. Dim data As New Dictionary(Of String, String) From {
  215. {"userID", userID},
  216. {"text", text},
  217. {"robotID", robotID}
  218. }
  219. Dim json As String = JsonConvert.SerializeObject(data)
  220. ' 建立 HttpWebRequest
  221. Dim request As HttpWebRequest = CType(WebRequest.Create(url), HttpWebRequest)
  222. request.Method = "POST"
  223. request.ContentType = "application/json"
  224. request.ContentLength = Encoding.UTF8.GetByteCount(json)
  225. ' 將 JSON 資料寫入請求中
  226. Using streamWriter As New StreamWriter(request.GetRequestStream())
  227. streamWriter.Write(json)
  228. streamWriter.Flush()
  229. End Using
  230. Try
  231. ' 獲取回應
  232. Dim response As HttpWebResponse = CType(request.GetResponse(), HttpWebResponse)
  233. Using streamReader As New StreamReader(response.GetResponseStream())
  234. Dim result As String = streamReader.ReadToEnd()
  235. Console.WriteLine("回應內容: " & result)
  236. End Using
  237. Catch ex As WebException
  238. ' 如果請求失敗,顯示錯誤
  239. Dim errorResponse As HttpWebResponse = CType(ex.Response, HttpWebResponse)
  240. Console.WriteLine("錯誤: " & errorResponse.StatusCode)
  241. End Try
  242. End Sub
  243. Function SQL_LINE_隨機碼()
  244. Dim rancode As String
  245. Dim RndNum As New Random()
  246. rancode = Str(Date.Now.Year).Trim().PadLeft(4, "0") + Str(Date.Now.Month).Trim().PadLeft(2, "0") + Str(Date.Now.Day).Trim().PadLeft(2, "0") + Str(Date.Now.Hour).Trim().PadLeft(2, "0") + Str(Date.Now.Minute).Trim().PadLeft(2, "0") + Str(Date.Now.Second).Trim().PadLeft(2, "0") + Str(RndNum.Next(1000)).Trim().PadLeft(4, "0")
  247. Return rancode
  248. End Function
  249. Friend Sub LINE_通知模塊()
  250. Dim ds5, ds6 As New DataSet : ds5.Clear() : ds6.Clear()
  251. Dim 通知格式, 變數位置, 通知內容1, 通知內容2, 通知內容3, 發送X, 發送Y As String
  252. Dim L, M, W As Boolean
  253. SQL_LINE_搜尋符合通知對象()
  254. da.Fill(ds5) : LINE_需通知清單_dgv = ds5.Tables(0) : conn.Close()
  255. If 通知變數X = "" Then : 發送X = "未設定通知變數X" : Else : 發送X = 通知變數X : End If
  256. If 通知變數Y = "" Then : 發送Y = "未設定通知變數Y" : Else : 發送Y = 通知變數Y : End If
  257. For x As Integer = 0 To LINE_需通知清單_dgv.Rows.Count - 1
  258. L = LINE_需通知清單_dgv.Rows(x)("Line")
  259. W = LINE_需通知清單_dgv.Rows(x)("WhatsApp")
  260. M = LINE_需通知清單_dgv.Rows(x)("Message")
  261. SQL_LINE_通知內容() : da.Fill(ds6) : LINE_通知內容清單_dgv = ds6.Tables(0) : conn.Close()
  262. If LINE_需通知清單_dgv.Rows.Count = 0 Then : Else
  263. 通知格式 = LINE_通知內容清單_dgv.Rows(0)(0).ToString
  264. 變數位置 = LINE_通知內容清單_dgv.Rows(0)(1).ToString
  265. 通知內容1 = LINE_通知內容清單_dgv.Rows(0)(2).ToString
  266. 通知內容2 = LINE_通知內容清單_dgv.Rows(0)(3).ToString
  267. 通知內容3 = LINE_通知內容清單_dgv.Rows(0)(4).ToString
  268. If 變數位置 = "A" Then
  269. PA202 = 通知內容1
  270. ElseIf 變數位置 = "X" Then
  271. PA202 = 發送X
  272. ElseIf 變數位置 = "A+X" Then
  273. PA202 = 通知內容1 + 發送X
  274. ElseIf 變數位置 = "X+A" Then
  275. PA202 = 發送X + 通知內容1
  276. ElseIf 變數位置 = "X+A+Y" Then
  277. PA202 = 發送X + 通知內容1 + 發送Y
  278. ElseIf 變數位置 = "A+X+B" Then
  279. PA202 = 通知內容1 + 發送X + 通知內容2
  280. ElseIf 變數位置 = "X+A+Y+B" Then
  281. PA202 = 發送X + 通知內容1 + 發送Y + 通知內容2
  282. ElseIf 變數位置 = "A+X+B+Y" Then
  283. PA202 = 通知內容1 + 發送X + 通知內容2 + 發送Y
  284. ElseIf 變數位置 = "A+X+B+Y+C" Then
  285. PA202 = 通知內容1 + 發送X + 通知內容2 + 發送Y + 通知內容3
  286. End If
  287. PA204 = LINE_需通知清單_dgv.Rows(x)(1).ToString
  288. If L = True Then
  289. PA203 = LINE_公司名稱 & "-" & SQL_LINE_隨機碼() : PA201 = LINE_需通知清單_dgv.Rows(x)("token").ToString : PA205 = "Line" : SQL_LINE_新增發送通知()
  290. End If
  291. If W = True Then
  292. If LINE_需通知清單_dgv.Rows(x)("電話號碼1").ToString <> "" Then
  293. PA203 = LINE_公司名稱 & "-" & SQL_LINE_隨機碼() : PA201 = LINE_需通知清單_dgv.Rows(x)("電話號碼1").ToString : PA205 = "WhatsApp" : SQL_LINE_新增發送通知()
  294. End If
  295. If LINE_需通知清單_dgv.Rows(x)("電話號碼2").ToString <> "" Then
  296. PA203 = LINE_公司名稱 & "-" & SQL_LINE_隨機碼() : PA201 = LINE_需通知清單_dgv.Rows(x)("電話號碼2").ToString : PA205 = "WhatsApp" : SQL_LINE_新增發送通知()
  297. End If
  298. If LINE_需通知清單_dgv.Rows(x)("電話號碼3").ToString <> "" Then
  299. PA203 = LINE_公司名稱 & "-" & SQL_LINE_隨機碼() : PA201 = LINE_需通知清單_dgv.Rows(x)("電話號碼3").ToString : PA205 = "WhatsApp" : SQL_LINE_新增發送通知()
  300. End If
  301. End If
  302. If M = True Then
  303. If LINE_需通知清單_dgv.Rows(x)("電話號碼1").ToString <> "" Then
  304. PA203 = LINE_公司名稱 & "-" & SQL_LINE_隨機碼() : PA201 = LINE_需通知清單_dgv.Rows(x)("電話號碼1").ToString : PA205 = "Message" : SQL_LINE_新增發送通知()
  305. End If
  306. If LINE_需通知清單_dgv.Rows(x)("電話號碼2").ToString <> "" Then
  307. PA203 = LINE_公司名稱 & "-" & SQL_LINE_隨機碼() : PA201 = LINE_需通知清單_dgv.Rows(x)("電話號碼2").ToString : PA205 = "Message" : SQL_LINE_新增發送通知()
  308. End If
  309. If LINE_需通知清單_dgv.Rows(x)("電話號碼3").ToString <> "" Then
  310. PA203 = LINE_公司名稱 & "-" & SQL_LINE_隨機碼() : PA201 = LINE_需通知清單_dgv.Rows(x)("電話號碼3").ToString : PA205 = "Message" : SQL_LINE_新增發送通知()
  311. End If
  312. End If
  313. End If
  314. Next
  315. ds5.Clear() : ds6.Clear() : 通知變數X = "" : 通知變數Y = ""
  316. End Sub
  317. End Module