ferment_function.js 42 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223
  1. function inputVacuum() {
  2. var status = "off";
  3. var check = $("input[name=input_vacuum_status]:checked"); // 這裡面是 jQuery 撈取資料的方法, jQuery 常使用到 $ 錢字號
  4. console.log('check:', check);
  5. //大於0代表有被選中, 如果有多個可以呈現勾取的項目數量
  6. if (check.length > 0) {
  7. status = "on";
  8. $("#cmn-toggle-02").prop('checked', false); // 確認是否勾選
  9. if (!confirm("你確定要開啟入料儲豆槽真空吸料機嗎?")) {
  10. return false;
  11. };
  12. } else {
  13. $("#cmn-toggle-02").prop('checked', true);
  14. if (!confirm("你確定要關閉入料儲豆槽真空吸料機嗎?")) {
  15. return false;
  16. };
  17. };
  18. var data = { "tank_num": "FI" + tank_num, "command": "input_vacuum_status", "value": status };
  19. $.post('/mqtt/' + tank_num, data, function (res) { //res:HTTP response argument to the middleware function
  20. console.log('data:', data)
  21. if (res == 'on') {
  22. $("#cmn-toggle-02").prop('checked', true);
  23. setTimeout("alert('入料儲豆槽真空吸料機_開啟成功!')", 500);
  24. } else if (res == 'off') {
  25. $("#cmn-toggle-02").prop('checked', false);
  26. setTimeout("alert('入料儲豆槽真空吸料機_關閉成功!')", 500);
  27. } else {
  28. console.log('res error');
  29. };
  30. }, 'text')
  31. };
  32. function inputVacuum_ON() {
  33. var data = { "tank_num": "FI" + tank_num, "command": "input_vacuum_status", "value": "on" };
  34. $.post('/mqtt/' + tank_num, data, function (res) { //res:HTTP response argument to the middleware function
  35. console.log('data:', data)
  36. if (res == 'on') {
  37. $("#cmn-toggle-02").prop('checked', true);
  38. } else if (res == 'off') {
  39. $("#cmn-toggle-02").prop('checked', false);
  40. } else {
  41. console.log('res error');
  42. };
  43. }, 'text')
  44. };
  45. function inputVacuum_OFF() {
  46. var data = { "tank_num": "FI" + tank_num, "command": "input_vacuum_status", "value": "off" };
  47. $.post('/mqtt/' + tank_num, data, function (res) { //res:HTTP response argument to the middleware function
  48. console.log('data:', data)
  49. if (res == 'on') {
  50. $("#cmn-toggle-02").prop('checked', true);
  51. } else if (res == 'off') {
  52. $("#cmn-toggle-02").prop('checked', false);
  53. } else {
  54. console.log('res error');
  55. };
  56. }, 'text')
  57. // setTimeout(function () { location.reload(); }, 500);
  58. };
  59. function tankVacuum() {
  60. var status = "off";
  61. var check = $("input[name=tank_vacuum_status]:checked");
  62. console.log('check:', check);
  63. //大於0代表有被選中
  64. if (check.length > 0) {
  65. status = "on";
  66. $("#cmn-toggle-05").prop('checked', false);
  67. if (!confirm("你確定要開啟真空吸料機嗎?")) {
  68. return false;
  69. };
  70. } else {
  71. $("#cmn-toggle-05").prop('checked', true);
  72. if (!confirm("你確定要關閉真空吸料機嗎?")) {
  73. return false;
  74. };
  75. };
  76. var data = { "tank_num": "F" + tank_num, "command": "tank_vacuum_status", "value": status };
  77. $.post('/mqtt/' + tank_num, data, function (res) {
  78. console.log('data:', data)
  79. if (res == 'on') {
  80. $("#cmn-toggle-05").prop('checked', true);
  81. setTimeout("alert('真空吸料機_開啟成功!')", 500);
  82. } else if (res == 'off') {
  83. $("#cmn-toggle-05").prop('checked', false);
  84. setTimeout("alert('真空吸料機_關閉成功!')", 500);
  85. } else {
  86. alert(res);
  87. };
  88. }, 'text')
  89. // setTimeout(function () { location.reload(); }, 500);
  90. };
  91. function tankVacuum_ON() {
  92. var data = { "tank_num": "F" + tank_num, "command": "tank_vacuum_status", "value": "on" };
  93. $.post('/mqtt/' + tank_num, data, function (res) {
  94. console.log('data:', data)
  95. if (res == 'on') {
  96. $("#cmn-toggle-05").prop('checked', true);
  97. } else if (res == 'off') {
  98. $("#cmn-toggle-05").prop('checked', false);
  99. } else {
  100. console.log('res error');
  101. };
  102. }, 'text')
  103. // setTimeout(function () { location.reload(); }, 500);
  104. };
  105. function tankVacuum_OFF() {
  106. var data = { "tank_num": "F" + tank_num, "command": "tank_vacuum_status", "value": "off" };
  107. $.post('/mqtt/' + tank_num, data, function (res) {
  108. console.log('data:', data)
  109. if (res == 'on') {
  110. $("#cmn-toggle-05").prop('checked', true);
  111. } else if (res == 'off') {
  112. $("#cmn-toggle-05").prop('checked', false);
  113. } else {
  114. console.log('res error');
  115. };
  116. }, 'text')
  117. // setTimeout(function () { location.reload(); }, 500);
  118. };
  119. // Benson 真空吸料機 (END)
  120. function tankThreeWayValveInput() {
  121. //<!--setInterval(Relay,10000);-->
  122. var status = "off";
  123. var check = $("input[name=tank_threewayvalve_input_status]:checked");
  124. //大於0代表有被選中
  125. if (check.length > 0) {
  126. status = "on";
  127. $("#cmn-toggle-08").prop('checked', false);
  128. if (!confirm("你確定要開啟入料三通閥嗎?")) {
  129. return false;
  130. };
  131. } else {
  132. $("#cmn-toggle-08").prop('checked', true);
  133. if (!confirm("你確定要關閉入料三通閥嗎?")) {
  134. return false;
  135. };
  136. };
  137. var data = { "tank_num": "F" + tank_num, "command": "tank_threewayvalve_input_status", "value": status };
  138. $.post('/mqtt/' + tank_num, data, function (res) {
  139. console.log('data:', data)
  140. if (res == 'on') {
  141. $("#cmn-toggle-08").prop('checked', true);
  142. setTimeout("alert('入料三通閥入料_開啟成功!')", 500);
  143. } else if (res == 'off') {
  144. $("#cmn-toggle-08").prop('checked', false);
  145. setTimeout("alert('入料三通閥排氣_關閉成功!')", 500);
  146. } else {
  147. alert(res);
  148. };
  149. }, 'text')
  150. // setTimeout(function () { location.reload(); }, 500);
  151. };
  152. function tankThreeWayValveInput_ON() {
  153. var data = { "tank_num": "F" + tank_num, "command": "tank_threewayvalve_input_status", "value": "on" };
  154. $.post('/mqtt/' + tank_num, data, function (res) {
  155. console.log('data:', data)
  156. if (res == 'on') {
  157. $("#cmn-toggle-08").prop('checked', true);
  158. } else if (res == 'off') {
  159. $("#cmn-toggle-08").prop('checked', false);
  160. } else {
  161. console.log('res error');
  162. };
  163. }, 'text')
  164. // setTimeout(function () { location.reload(); }, 500);
  165. };
  166. function tankThreeWayValveInput_OFF() {
  167. var data = { "tank_num": "F" + tank_num, "command": "tank_threewayvalve_input_status", "value": "off" };
  168. $.post('/mqtt/' + tank_num, data, function (res) {
  169. console.log('data:', data)
  170. if (res == 'on') {
  171. $("#cmn-toggle-08").prop('checked', true);
  172. } else if (res == 'off') {
  173. $("#cmn-toggle-08").prop('checked', false);
  174. } else {
  175. console.log('res error');
  176. };
  177. }, 'text')
  178. // setTimeout(function () { location.reload(); }, 500);
  179. };
  180. // Benson cargo2_actuator.html 控制蝴蝶閥函數 (START)
  181. function tankDiskValve() {
  182. //<!--setInterval(Relay,10000);-->
  183. var status = "off";
  184. var check = $("input[name=tank_diskvalve_status]:checked");
  185. //大於0代表有被選中
  186. if (check.length > 0) {
  187. status = "on";
  188. $("#cmn-toggle-11").prop('checked', false);
  189. if (!confirm("你確定要開啟蝴蝶閥嗎?")) {
  190. return false;
  191. };
  192. } else {
  193. $("#cmn-toggle-11").prop('checked', true);
  194. if (!confirm("你確定要關閉蝴蝶閥嗎?")) {
  195. return false;
  196. };
  197. };
  198. var data = { "tank_num": "F" + tank_num, "command": "tank_diskvalve_status", "value": status };
  199. $.post('/mqtt/' + tank_num, data, function (res) {
  200. console.log('data:', data)
  201. if (res == 'on') {
  202. $("#cmn-toggle-11").prop('checked', true);
  203. setTimeout("alert('蝴蝶閥_開啟成功!')", 500);
  204. } else if (res == 'off') {
  205. $("#cmn-toggle-11").prop('checked', false);
  206. setTimeout("alert('蝴蝶閥_關閉成功!')", 500);
  207. } else {
  208. alert(res);
  209. };
  210. }, 'text')
  211. // setTimeout(function () { location.reload(); }, 500);
  212. };
  213. function tankDiskValve_ON() {
  214. var data = { "tank_num": "F" + tank_num, "command": "tank_diskvalve_status", "value": "on" };
  215. $.post('/mqtt/' + tank_num, data, function (res) {
  216. console.log('data:', data)
  217. if (res == 'on') {
  218. $("#cmn-toggle-11").prop('checked', true);
  219. } else if (res == 'off') {
  220. $("#cmn-toggle-11").prop('checked', false);
  221. } else {
  222. console.log('res error');
  223. };
  224. }, 'text')
  225. // setTimeout(function () { location.reload(); }, 500);
  226. };
  227. function tankDiskValve_OFF() {
  228. var data = { "tank_num": "F" + tank_num, "command": "tank_diskvalve_status", "value": "off" };
  229. $.post('/mqtt/' + tank_num, data, function (res) {
  230. console.log('data:', data)
  231. if (res == 'on') {
  232. $("#cmn-toggle-11").prop('checked', true);
  233. } else if (res == 'off') {
  234. $("#cmn-toggle-11").prop('checked', false);
  235. } else {
  236. console.log('res error');
  237. };
  238. }, 'text')
  239. // setTimeout(function () { location.reload(); }, 500);
  240. };
  241. // Benson cargo2_actuator.html 閥 (START) 電磁閥 總進水
  242. function tankSolenoidWaterTotal() {
  243. var status = "off";
  244. var check = $("input[name=tank_solenoid_water_total_status]:checked");
  245. //大於0代表有被選中
  246. if (check.length > 0) {
  247. status = "on";
  248. $("#cmn-toggle-14").prop('checked', false);
  249. if (!confirm("你確定要開啟總進水電磁閥嗎?")) {
  250. return false;
  251. };
  252. } else {
  253. $("#cmn-toggle-14").prop('checked', true);
  254. if (!confirm("你確定要關閉總進水電磁閥嗎?")) {
  255. return false;
  256. };
  257. };
  258. var data = { "tank_num": "F" + tank_num, "command": "tank_solenoid_water_total_status", "value": status };
  259. $.post('/mqtt/' + tank_num, data, function (res) {
  260. console.log('data:', data)
  261. if (res == 'on') {
  262. $("#cmn-toggle-14").prop('checked', true);
  263. setTimeout("alert('總進水電磁閥_開啟成功!')", 500);
  264. } else if (res == 'off') {
  265. $("#cmn-toggle-14").prop('checked', false);
  266. setTimeout("alert('總進水電磁閥_關閉成功!')", 500);
  267. } else {
  268. alert(res);
  269. };
  270. }, 'text')
  271. // setTimeout(function () { location.reload(); }, 500);
  272. };
  273. function tankSolenoidWaterTotal_ON() {
  274. var data = { "tank_num": "F" + tank_num, "command": "tank_solenoid_water_total_status", "value": "on" };
  275. $.post('/mqtt/' + tank_num, data, function (res) {
  276. console.log('data:', data)
  277. if (res == 'on') {
  278. $("#cmn-toggle-14").prop('checked', true);
  279. } else if (res == 'off') {
  280. $("#cmn-toggle-14").prop('checked', false);
  281. } else {
  282. console.log('res error');
  283. };
  284. }, 'text')
  285. // setTimeout(function () { location.reload(); }, 500);
  286. };
  287. function tankSolenoidWaterTotal_OFF() {
  288. var data = { "tank_num": "F" + tank_num, "command": "tank_solenoid_water_total_status", "value": "off" };
  289. $.post('/mqtt/' + tank_num, data, function (res) {
  290. console.log('data:', data)
  291. if (res == 'on') {
  292. $("#cmn-toggle-14").prop('checked', true);
  293. } else if (res == 'off') {
  294. $("#cmn-toggle-14").prop('checked', false);
  295. } else {
  296. console.log('res error');
  297. };
  298. }, 'text')
  299. // setTimeout(function () { location.reload(); }, 500);
  300. };
  301. // Benson cargo2_actuator.html 閥 (START) 電磁閥消毒打菌
  302. function tankSolenoidDisinfect() {
  303. var status = "off";
  304. var check = $("input[name=tank_solenoid_disinfect_status]:checked");
  305. //大於0代表有被選中
  306. if (check.length > 0) {
  307. status = "on";
  308. $("#cmn-toggle-17").prop('checked', false);
  309. if (!confirm("你確定要開啟消毒電磁閥嗎?")) {
  310. return false;
  311. };
  312. } else {
  313. $("#cmn-toggle-17").prop('checked', true);
  314. if (!confirm("你確定要關閉消毒電磁閥嗎?")) {
  315. return false;
  316. };
  317. };
  318. var data = { "tank_num": "F" + tank_num, "command": "tank_solenoid_disinfect_status", "value": status };
  319. $.post('/mqtt/' + tank_num, data, function (res) {
  320. console.log('data:', data)
  321. if (res == 'on') {
  322. $("#cmn-toggle-17").prop('checked', true);
  323. setTimeout("alert('消毒電磁閥_開啟成功!')", 500);
  324. } else if (res == 'off') {
  325. $("#cmn-toggle-17").prop('checked', false);
  326. setTimeout("alert('消毒電磁閥_關閉成功!')", 500);
  327. } else {
  328. alert(res);
  329. };
  330. }, 'text')
  331. // setTimeout(function () { location.reload(); }, 500);
  332. };
  333. function tankSolenoidDisinfect_ON() {
  334. var data = { "tank_num": "F" + tank_num, "command": "tank_solenoid_disinfect_status", "value": "on" };
  335. $.post('/mqtt/' + tank_num, data, function (res) {
  336. console.log('data:', data)
  337. if (res == 'on') {
  338. $("#cmn-toggle-17").prop('checked', true);
  339. } else if (res == 'off') {
  340. $("#cmn-toggle-17").prop('checked', false);
  341. } else {
  342. console.log('res error');
  343. };
  344. }, 'text')
  345. // setTimeout(function () { location.reload(); }, 500);
  346. };
  347. function tankSolenoidDisinfect_OFF() {
  348. var data = { "tank_num": "F" + tank_num, "command": "tank_solenoid_disinfect_status", "value": "off" };
  349. $.post('/mqtt/' + tank_num, data, function (res) {
  350. console.log('data:', data)
  351. if (res == 'on') {
  352. $("#cmn-toggle-17").prop('checked', true);
  353. } else if (res == 'off') {
  354. $("#cmn-toggle-17").prop('checked', false);
  355. } else {
  356. console.log('res error');
  357. };
  358. }, 'text')
  359. // setTimeout(function () { location.reload(); }, 500);
  360. };
  361. // 電磁閥 保溫夾層加水
  362. function outerSolenoidWater() {
  363. var status = "off";
  364. var check = $("input[name=outer_solenoid_water_status]:checked");
  365. //大於0代表有被選中
  366. if (check.length > 0) {
  367. status = "on";
  368. $("#cmn-toggle-38").prop('checked', false);
  369. if (!confirm("你確定要開啟\"保溫夾層\"進水電磁閥嗎?")) {
  370. return false;
  371. };
  372. } else {
  373. $("#cmn-toggle-38").prop('checked', true);
  374. if (!confirm("你確定要關閉\"保溫夾層\"進水電磁閥嗎?")) {
  375. return false;
  376. };
  377. };
  378. var data = { "tank_num": "F" + tank_num, "command": "outer_solenoid_water_status", "value": status };
  379. $.post('/mqtt/' + tank_num, data, function (res) {
  380. console.log('data:', data)
  381. if (res == 'on') {
  382. $("#cmn-toggle-38").prop('checked', true);
  383. setTimeout("alert('\"保溫夾層\"進水電磁閥_開啟成功!')", 500);
  384. } else if (res == 'off') {
  385. $("#cmn-toggle-38").prop('checked', false);
  386. setTimeout("alert('\"保溫夾層\"進水電磁閥_關閉成功!')", 500);
  387. } else {
  388. alert(res);
  389. };
  390. }, 'text')
  391. // setTimeout(function () { location.reload(); }, 500);
  392. };
  393. function outerSolenoidWater_ON() {
  394. var data = { "tank_num": "F" + tank_num, "command": "outer_solenoid_water_status", "value": "on" };
  395. $.post('/mqtt/' + tank_num, data, function (res) {
  396. console.log('data:', data)
  397. if (res == 'on') {
  398. $("#cmn-toggle-38").prop('checked', true);
  399. } else if (res == 'off') {
  400. $("#cmn-toggle-38").prop('checked', false);
  401. } else {
  402. console.log('res error');
  403. };
  404. }, 'text')
  405. // setTimeout(function () { location.reload(); }, 500);
  406. };
  407. function outerSolenoidWater_OFF() {
  408. var data = { "tank_num": "F" + tank_num, "command": "outer_solenoid_water_status", "value": "off" };
  409. $.post('/mqtt/' + tank_num, data, function (res) {
  410. console.log('data:', data)
  411. if (res == 'on') {
  412. $("#cmn-toggle-38").prop('checked', true);
  413. } else if (res == 'off') {
  414. $("#cmn-toggle-38").prop('checked', false);
  415. } else {
  416. console.log('res error');
  417. };
  418. }, 'text')
  419. // setTimeout(function () { location.reload(); }, 500);
  420. };
  421. // 電磁閥 桶內加水
  422. function tankSolenoidWaterIn() {
  423. var status = "off";
  424. var check = $("input[name=tank_solenoid_water_in_status]:checked");
  425. //大於0代表有被選中
  426. if (check.length > 0) {
  427. status = "on";
  428. $("#cmn-toggle-50").prop('checked', false);
  429. if (!confirm("你確定要開啟\"桶內\"進水電磁閥嗎?")) {
  430. return false;
  431. };
  432. } else {
  433. $("#cmn-toggle-50").prop('checked', true);
  434. if (!confirm("你確定要關閉\"桶內\"進水電磁閥嗎?")) {
  435. return false;
  436. };
  437. };
  438. var data = { "tank_num": "F" + tank_num, "command": "tank_solenoid_water_in_status", "value": status };
  439. $.post('/mqtt/' + tank_num, data, function (res) {
  440. console.log('data:', data)
  441. if (res == 'on') {
  442. $("#cmn-toggle-50").prop('checked', true);
  443. setTimeout("alert('\"桶內\"進水電磁閥_開啟成功!')", 500);
  444. } else if (res == 'off') {
  445. $("#cmn-toggle-50").prop('checked', false);
  446. setTimeout("alert('\"桶內\"進水電磁閥_關閉成功!')", 500);
  447. } else {
  448. alert(res);
  449. };
  450. }, 'text')
  451. // setTimeout(function () { location.reload(); }, 500);
  452. };
  453. function tankSolenoidWaterIn_ON() {
  454. var data = { "tank_num": "F" + tank_num, "command": "tank_solenoid_water_in_status", "value": "on" };
  455. $.post('/mqtt/' + tank_num, data, function (res) {
  456. console.log('data:', data)
  457. if (res == 'on') {
  458. $("#cmn-toggle-50").prop('checked', true);
  459. } else if (res == 'off') {
  460. $("#cmn-toggle-50").prop('checked', false);
  461. } else {
  462. console.log('res error');
  463. };
  464. }, 'text')
  465. // setTimeout(function () { location.reload(); }, 500);
  466. };
  467. function tankSolenoidWaterIn_OFF() {
  468. var data = { "tank_num": "F" + tank_num, "command": "tank_solenoid_water_in_status", "value": "off" };
  469. $.post('/mqtt/' + tank_num, data, function (res) {
  470. console.log('data:', data)
  471. if (res == 'on') {
  472. $("#cmn-toggle-50").prop('checked', true);
  473. } else if (res == 'off') {
  474. $("#cmn-toggle-50").prop('checked', false);
  475. } else {
  476. console.log('res error');
  477. };
  478. }, 'text')
  479. // setTimeout(function () { location.reload(); }, 500);
  480. };
  481. // 感測器用 pump 雙核隔膜泵
  482. function tankPumpSensor() {
  483. var status = "off";
  484. var check = $("input[name=tank_pump_sensor_status]:checked");
  485. //大於0代表有被選中
  486. if (check.length > 0) {
  487. status = "on";
  488. $("#cmn-toggle-41").prop('checked', false);
  489. if (!confirm("你確定要開啟感測器用 pump 雙核隔膜泵嗎?")) {
  490. return false;
  491. };
  492. } else {
  493. $("#cmn-toggle-41").prop('checked', true);
  494. if (!confirm("你確定要關閉感測器用 pump 雙核隔膜泵嗎?")) {
  495. return false;
  496. };
  497. };
  498. var data = { "tank_num": "F" + tank_num, "command": "tank_pump_sensor_status", "value": status };
  499. $.post('/mqtt/' + tank_num, data, function (res) {
  500. console.log('data:', data)
  501. if (res == 'on') {
  502. $("#cmn-toggle-41").prop('checked', true);
  503. setTimeout("alert('感測器用 pump _開啟成功!')", 500);
  504. } else if (res == 'off') {
  505. $("#cmn-toggle-41").prop('checked', false);
  506. setTimeout("alert('感測器用 pump _關閉成功!')", 500);
  507. } else {
  508. alert(res);
  509. };
  510. }, 'text')
  511. // setTimeout(function () { location.reload(); }, 500);
  512. };
  513. function tankPumpSensor_ON() {
  514. var data = { "tank_num": "F" + tank_num, "command": "tank_pump_sensor_status", "value": "on" };
  515. $.post('/mqtt/' + tank_num, data, function (res) {
  516. console.log('data:', data)
  517. if (res == 'on') {
  518. $("#cmn-toggle-41").prop('checked', true);
  519. } else if (res == 'off') {
  520. $("#cmn-toggle-41").prop('checked', false);
  521. } else {
  522. console.log('res error');
  523. };
  524. }, 'text')
  525. // setTimeout(function () { location.reload(); }, 500);
  526. }
  527. function tankPumpSensor_OFF() {
  528. var data = { "tank_num": "F" + tank_num, "command": "tank_pump_sensor_status", "value": "off" };
  529. $.post('/mqtt/' + tank_num, data, function (res) {
  530. console.log('data:', data)
  531. if (res == 'on') {
  532. $("#cmn-toggle-41").prop('checked', true);
  533. } else if (res == 'off') {
  534. $("#cmn-toggle-41").prop('checked', false);
  535. } else {
  536. console.log('res error');
  537. };
  538. }, 'text')
  539. // setTimeout(function () { location.reload(); }, 500);
  540. }
  541. // 感測模組下豆三通閥
  542. function tankThreeWayValveBean() {
  543. var status = "off";
  544. var check = $("input[name=tank_threewayvalve_bean_status]:checked");
  545. //大於0代表有被選中
  546. if (check.length > 0) {
  547. status = "on";
  548. $("#cmn-toggle-44").prop('checked', false);
  549. if (!confirm("你確定要開啟感測模組下豆三通閥嗎?")) {
  550. return false;
  551. };
  552. } else {
  553. $("#cmn-toggle-44").prop('checked', true);
  554. if (!confirm("你確定要關閉感測模組下豆三通閥嗎?")) {
  555. return false;
  556. };
  557. };
  558. var data = { "tank_num": "F" + tank_num, "command": "tank_threewayvalve_bean_status", "value": status };
  559. $.post('/mqtt/' + tank_num, data, function (res) {
  560. console.log('data:', data)
  561. if (res == 'on') {
  562. $("#cmn-toggle-44").prop('checked', true);
  563. setTimeout("alert('感測模組下豆三通閥_開啟成功!')", 500);
  564. } else if (res == 'off') {
  565. $("#cmn-toggle-44").prop('checked', false);
  566. setTimeout("alert('感測模組下豆三通閥_關閉成功!')", 500);
  567. } else {
  568. alert(res);
  569. };
  570. }, 'text')
  571. // setTimeout(function () { location.reload(); }, 500);
  572. };
  573. function tankThreeWayValveBean_ON() {
  574. var data = { "tank_num": "F" + tank_num, "command": "tank_threewayvalve_bean_status", "value": "on" };
  575. $.post('/mqtt/' + tank_num, data, function (res) {
  576. console.log('data:', data)
  577. if (res == 'on') {
  578. $("#cmn-toggle-44").prop('checked', true);
  579. } else if (res == 'off') {
  580. $("#cmn-toggle-44").prop('checked', false);
  581. } else {
  582. console.log('res error');
  583. };
  584. }, 'text')
  585. // setTimeout(function () { location.reload(); }, 500);
  586. };
  587. function tankThreeWayValveBean_OFF() {
  588. var data = { "tank_num": "F" + tank_num, "command": "tank_threewayvalve_bean_status", "value": "off" };
  589. $.post('/mqtt/' + tank_num, data, function (res) {
  590. console.log('data:', data)
  591. if (res == 'on') {
  592. $("#cmn-toggle-44").prop('checked', true);
  593. } else if (res == 'off') {
  594. $("#cmn-toggle-44").prop('checked', false);
  595. } else {
  596. console.log('res error');
  597. };
  598. }, 'text')
  599. // setTimeout(function () { location.reload(); }, 500);
  600. };
  601. // 外桶浮選三通閥
  602. function outerThreeWayValveFloat() {
  603. var status = "off";
  604. var check = $("input[name=outer_threewayvalve_float_status]:checked");
  605. //大於0代表有被選中
  606. if (check.length > 0) {
  607. status = "on";
  608. $("#cmn-toggle-47").prop('checked', false);
  609. if (!confirm("你確定要開啟外桶浮選三通閥嗎?")) {
  610. return false;
  611. };
  612. } else {
  613. $("#cmn-toggle-47").prop('checked', true);
  614. if (!confirm("你確定要關閉外桶浮選三通閥嗎?")) {
  615. return false;
  616. };
  617. };
  618. var data = { "tank_num": "F" + tank_num, "command": "outer_threewayvalve_float_status", "value": status };
  619. $.post('/mqtt/' + tank_num, data, function (res) {
  620. console.log('data:', data)
  621. if (res == 'on') {
  622. $("#cmn-toggle-47").prop('checked', true);
  623. setTimeout("alert('外桶浮選三通閥_開啟成功!')", 500);
  624. } else if (res == 'off') {
  625. $("#cmn-toggle-47").prop('checked', false);
  626. setTimeout("alert('外桶浮選三通閥_關閉成功!')", 500);
  627. } else {
  628. alert(res);
  629. };
  630. }, 'text')
  631. // setTimeout(function () { location.reload(); }, 500);
  632. };
  633. function outerThreeWayValveFloat_ON() {
  634. var data = { "tank_num": "F" + tank_num, "command": "outer_threewayvalve_float_status", "value": "on" };
  635. $.post('/mqtt/' + tank_num, data, function (res) {
  636. console.log('data:', data)
  637. if (res == 'on') {
  638. $("#cmn-toggle-47").prop('checked', true);
  639. } else if (res == 'off') {
  640. $("#cmn-toggle-47").prop('checked', false);
  641. } else {
  642. console.log('res error');
  643. };
  644. }, 'text')
  645. // setTimeout(function () { location.reload(); }, 500);
  646. };
  647. function outerThreeWayValveFloat_OFF() {
  648. var data = { "tank_num": "F" + tank_num, "command": "outer_threewayvalve_float_status", "value": "off" };
  649. $.post('/mqtt/' + tank_num, data, function (res) {
  650. console.log('data:', data)
  651. if (res == 'on') {
  652. $("#cmn-toggle-47").prop('checked', true);
  653. } else if (res == 'off') {
  654. $("#cmn-toggle-47").prop('checked', false);
  655. } else {
  656. console.log('res error');
  657. };
  658. }, 'text')
  659. // setTimeout(function () { location.reload(); }, 500);
  660. };
  661. // Benson cargo2_actuator.html 脫皮機馬達 (START) 馬達攪拌棒
  662. function tankMotor() {
  663. var motor_data = $("input[id=motor_rpm_data]").val();
  664. if (motor_data == '') {
  665. //$("#cmn-toggle-20").prop('checked', false);
  666. alert("請先輸入要運轉的值!");
  667. return false;
  668. } else if (motor_data == 0) {
  669. alert("轉速 0 為關閉馬達");
  670. } else if (Number(motor_data) < -50 || Number(motor_data) > 50 || !Number(motor_data)) {
  671. //
  672. //$("#cmn-toggle-20").prop('checked', false);
  673. alert("您輸入的值已超過範圍,請重新輸入!" + !Number(motor_data));
  674. return false;
  675. };
  676. var value = "off";
  677. //var check = $("input[name=peeling-machine-on]:checked");
  678. if (motor_data != 0) {
  679. value = motor_data;
  680. //$("#cmn-toggle-20").prop('checked', false);
  681. if (!confirm("你確定要開啟攪拌馬達,運轉速度為 " + motor_data + " RPM 嗎?")) {
  682. return false;
  683. };
  684. } else {
  685. //$("#cmn-toggle-20").prop('checked', true);
  686. if (!confirm("你確定要關閉攪拌馬達嗎?")) {
  687. return false;
  688. };
  689. };
  690. var data = { "tank_num": "F" + tank_num, "command": "tank_motor_status", "value": motor_data };
  691. $.post('/mqtt/' + tank_num, data, function (res) {
  692. console.log('data:', data)
  693. if (res == 'on') {
  694. //$("#cmn-toggle-14").prop('checked', true); // prop 設置元素屬型與元素值, 設定 checked 屬性為 true
  695. setTimeout("alert('攪拌馬達_開啟成功!')", 500); // 設定時間執行函式 delay(500), 只執行一次
  696. var timer = setInterval(Rotate, 60000); // 啟動後會在 60000 毫秒(更新時間一分鐘)內不斷執行 (原因須配合更新時間?)
  697. } else if (res == 'off') {
  698. //$("#cmn-toggle-14").prop('checked', false);
  699. setTimeout("alert('攪拌馬達_關閉成功!')", 500);
  700. clearInterval(timer); // 取消 timer 的不斷執行
  701. $("#motor_rpm_status").text(''); // 設置 #motor_rpm_status 的文字為空, #井字號
  702. } else {
  703. alert(res);
  704. };
  705. }, 'text')
  706. // setTimeout(function () { location.reload(); }, 500);
  707. };
  708. function tankMotor_ON() {
  709. var data = { "tank_num": "F" + tank_num, "command": "tank_motor_status", "value": "20" };
  710. $.post('/mqtt/' + tank_num, data, function (res) {
  711. console.log('data:', data)
  712. if (res == 'on') {
  713. var timer = setInterval(Rotate, 60000); // 啟動後會在 60000 毫秒(更新時間一分鐘)內不斷執行 (原因須配合更新時間?)
  714. } else if (res == 'off') {
  715. clearInterval(timer); // 取消 timer 的不斷執行
  716. $("#motor_rpm_status").text(''); // 設置 #motor_rpm_status 的文字為空, #井字號
  717. } else {
  718. console.log('res error');
  719. };
  720. }, 'text')
  721. // setTimeout(function () { location.reload(); }, 500);
  722. };
  723. function tankMotor_OFF() {
  724. var data = { "tank_num": "F" + tank_num, "command": "tank_motor_status", "value": "0" };
  725. $.post('/mqtt/' + tank_num, data, function (res) {
  726. console.log('data:', data)
  727. if (res == 'on') {
  728. var timer = setInterval(Rotate, 60000); // 啟動後會在 60000 毫秒(更新時間一分鐘)內不斷執行 (原因須配合更新時間?)
  729. } else if (res == 'off') {
  730. clearInterval(timer); // 取消 timer 的不斷執行
  731. $("#motor_rpm_status").text(''); // 設置 #motor_rpm_status 的文字為空, #井字號
  732. } else {
  733. console.log('res error');
  734. };
  735. }, 'text')
  736. // setTimeout(function () { location.reload(); }, 500);
  737. };
  738. function Rotate() {
  739. $.get('/peeling', '', function (res) {
  740. //console.log(res.peeling);
  741. $("#motor_rpm_status-status").text(res.peeling + ' rpm(每1分鐘更新一次)');
  742. }, 'json');
  743. // setTimeout(function () { location.reload(); }, 500);
  744. };
  745. // Benson cargo2_actuator.html 鼓風機 (START)
  746. //電熱管1函數
  747. function tankHeater1() {
  748. var status = "off";
  749. var check = $("input[name=tank_heater1_status]:checked");
  750. //大於0代表有被選中
  751. if (check.length > 0) {
  752. status = "on";
  753. $("#cmn-toggle-26").prop('checked', false);
  754. if (!confirm("你確定要開啟電熱管1嗎?")) {
  755. return false;
  756. };
  757. } else {
  758. $("#cmn-toggle-26").prop('checked', true);
  759. if (!confirm("你確定要關閉電熱管1嗎?")) {
  760. return false;
  761. };
  762. };
  763. var data = { "tank_num": "F" + tank_num, "command": "tank_heater1_status", "value": status };
  764. $.post('/mqtt/' + tank_num, data, function (res) {
  765. console.log('data:', data)
  766. if (res == 'on') {
  767. $("#cmn-toggle-26").prop('checked', true);
  768. setTimeout("alert('電熱管1_開啟成功!')", 500);
  769. } else if (res == 'off') {
  770. $("#cmn-toggle-26").prop('checked', false);
  771. setTimeout("alert('電熱管1_關閉成功!')", 500);
  772. } else {
  773. alert(res);
  774. };
  775. }, 'text')
  776. // setTimeout(function () { location.reload(); }, 500);
  777. };
  778. function tankHeater1_ON() {
  779. var data = { "tank_num": "F" + tank_num, "command": "tank_heater1_status", "value": "on" };
  780. $.post('/mqtt/' + tank_num, data, function (res) {
  781. console.log('data:', data)
  782. if (res == 'on') {
  783. $("#cmn-toggle-26").prop('checked', true);
  784. } else if (res == 'off') {
  785. $("#cmn-toggle-26").prop('checked', false);
  786. } else {
  787. console.log('res error');
  788. };
  789. }, 'text')
  790. // setTimeout(function () { location.reload(); }, 500);
  791. };
  792. function tankHeater1_OFF() {
  793. var data = { "tank_num": "F" + tank_num, "command": "tank_heater1_status", "value": "off" };
  794. $.post('/mqtt/' + tank_num, data, function (res) {
  795. console.log('data:', data)
  796. if (res == 'on') {
  797. $("#cmn-toggle-26").prop('checked', true);
  798. } else if (res == 'off') {
  799. $("#cmn-toggle-26").prop('checked', false);
  800. } else {
  801. console.log('res error');
  802. };
  803. }, 'text')
  804. // setTimeout(function () { location.reload(); }, 500);
  805. };
  806. //電熱管2函數
  807. function tankHeater2() {
  808. var status = "off";
  809. var check = $("input[name=tank_heater2_status]:checked");
  810. //大於0代表有被選中
  811. if (check.length > 0) {
  812. status = "on";
  813. $("#cmn-toggle-29").prop('checked', false);
  814. if (!confirm("你確定要開啟電熱管2嗎?")) {
  815. return false;
  816. };
  817. } else {
  818. $("#cmn-toggle-29").prop('checked', true);
  819. if (!confirm("你確定要關閉電熱管2嗎?")) {
  820. return false;
  821. };
  822. };
  823. var data = { "tank_num": "F" + tank_num, "command": "tank_heater2_status", "value": status };
  824. $.post('/mqtt/' + tank_num, data, function (res) {
  825. console.log('data:', data)
  826. if (res == 'on') {
  827. $("#cmn-toggle-29").prop('checked', true);
  828. setTimeout("alert('電熱管2_開啟成功!')", 500);
  829. } else if (res == 'off') {
  830. $("#cmn-toggle-29").prop('checked', false);
  831. setTimeout("alert('電熱管2_關閉成功!')", 500);
  832. } else {
  833. alert(res);
  834. };
  835. }, 'text')
  836. // setTimeout(function () { location.reload(); }, 500);
  837. };
  838. function tankHeater2_ON() {
  839. var data = { "tank_num": "F" + tank_num, "command": "tank_heater2_status", "value": "on" };
  840. $.post('/mqtt/' + tank_num, data, function (res) {
  841. console.log('data:', data)
  842. if (res == 'on') {
  843. $("#cmn-toggle-29").prop('checked', true);
  844. } else if (res == 'off') {
  845. $("#cmn-toggle-29").prop('checked', false);
  846. } else {
  847. console.log('res error');
  848. };
  849. }, 'text')
  850. // setTimeout(function () { location.reload(); }, 500);
  851. };
  852. function tankHeater2_OFF() {
  853. var data = { "tank_num": "F" + tank_num, "command": "tank_heater2_status", "value": "off" };
  854. $.post('/mqtt/' + tank_num, data, function (res) {
  855. console.log('data:', data)
  856. if (res == 'on') {
  857. $("#cmn-toggle-29").prop('checked', true);
  858. } else if (res == 'off') {
  859. $("#cmn-toggle-29").prop('checked', false);
  860. } else {
  861. console.log('res error');
  862. };
  863. }, 'text')
  864. // setTimeout(function () { location.reload(); }, 500);
  865. };
  866. // 溫度控制
  867. function tankTempEnable() {
  868. var status = "off";
  869. var check = $("input[name=tank_temp_enable_status]:checked");
  870. //大於0代表有被選中
  871. if (check.length > 0) {
  872. status = "on";
  873. $("#cmn-toggle-35").prop('checked', false);
  874. if (!confirm("你確定要開啟溫度控制嗎?")) {
  875. return false;
  876. };
  877. } else {
  878. $("#cmn-toggle-35").prop('checked', true);
  879. if (!confirm("你確定要關閉溫度控制嗎?")) {
  880. return false;
  881. };
  882. };
  883. var data = { "tank_num": "F" + tank_num, "command": "tank_temp_enable_status", "value": status };
  884. $.post('/mqtt/' + tank_num, data, function (res) {
  885. console.log('data:', data)
  886. if (res == 'on') {
  887. $("#cmn-toggle-35").prop('checked', true);
  888. setTimeout("alert('溫度控制_開啟成功!')", 500);
  889. } else if (res == 'off') {
  890. $("#cmn-toggle-35").prop('checked', false);
  891. setTimeout("alert('溫度控制_關閉成功!')", 500);
  892. } else {
  893. alert(res);
  894. };
  895. }, 'text')
  896. // setTimeout(function () { location.reload(); }, 500);
  897. };
  898. function tankTempEnable_ON() {
  899. var data = { "tank_num": "F" + tank_num, "command": "tank_temp_enable_status", "value": "on" };
  900. $.post('/mqtt/' + tank_num, data, function (res) {
  901. console.log('data:', data)
  902. if (res == 'on') {
  903. $("#cmn-toggle-35").prop('checked', true);
  904. } else if (res == 'off') {
  905. $("#cmn-toggle-35").prop('checked', false);
  906. } else {
  907. console.log('res error');
  908. };
  909. }, 'text')
  910. // setTimeout(function () { location.reload(); }, 500);
  911. };
  912. function tankTempEnable_OFF() {
  913. var data = { "tank_num": "F" + tank_num, "command": "tank_temp_enable_status", "value": "off" };
  914. $.post('/mqtt/' + tank_num, data, function (res) {
  915. console.log('data:', data)
  916. if (res == 'on') {
  917. $("#cmn-toggle-35").prop('checked', true);
  918. } else if (res == 'off') {
  919. $("#cmn-toggle-35").prop('checked', false);
  920. } else {
  921. console.log('res error');
  922. };
  923. }, 'text')
  924. // setTimeout(function () { location.reload(); }, 500);
  925. };
  926. // 判斷是否整數
  927. function isInteger(obj) {
  928. return obj % 1 === 0
  929. }
  930. isInteger(3) // true
  931. // 設定溫度
  932. function tankTemp() {
  933. var temp_data = $("input[id=tank_temp_data]").val();
  934. if (temp_data == '') {
  935. //$("#cmn-toggle-20").prop('checked', false);
  936. alert("請先輸入設定溫度!");
  937. return false;
  938. } else if (!isInteger(temp_data)) {
  939. //$("#cmn-toggle-20").prop('checked', false);
  940. alert("溫度設定僅限整數,請重新輸入!" + !Number(temp_data));
  941. return false;
  942. };
  943. var value = "0";
  944. //var check = $("input[name=peeling-machine-on]:checked");
  945. if ($("#cmn-toggle-35").prop('checked')) {
  946. value = temp_data;
  947. //$("#cmn-toggle-20").prop('checked', false);
  948. if (!confirm("你確定要設定內桶溫度為 " + temp_data + " ℃ 嗎?")) {
  949. return false;
  950. };
  951. } else {
  952. //$("#cmn-toggle-20").prop('checked', true);
  953. //你確定要停止桶內溫度設定嗎
  954. if (!confirm("請先開啟溫控開關, 再設定桶內溫度")) {
  955. return false;
  956. };
  957. };
  958. var data = { "tank_num": "F" + tank_num, "command": "tank_temp_status", "value": temp_data };
  959. $.post('/mqtt/' + tank_num, data, function (res) {
  960. console.log('data:', data)
  961. if (res == 'on') {
  962. //$("#cmn-toggle-14").prop('checked', true); // prop 設置元素屬型與元素值, 設定 checked 屬性為 true
  963. setTimeout("alert('溫度設定_開啟成功!')", 500); // 設定時間執行函式 delay(500), 只執行一次
  964. var timer = setInterval(Rotate, 60000); // 啟動後會在 60000 毫秒(更新時間一分鐘)內不斷執行 (原因須配合更新時間?)
  965. } else if (res == 'off') {
  966. //$("#cmn-toggle-14").prop('checked', false);
  967. setTimeout("alert('溫度設定_關閉成功!')", 500);
  968. clearInterval(timer); // 取消 timer 的不斷執行
  969. $("#motor_rpm_status").text(''); // 設置 #motor_rpm_status 的文字為空, #井字號
  970. } else {
  971. alert(res);
  972. };
  973. }, 'text')
  974. // setTimeout(function () { location.reload(); }, 500);
  975. };
  976. function setTemp() {
  977. var temp_data = $("input[id=tank_temp_data]").val();
  978. if (temp_data == '') {
  979. alert("請先輸入設定溫度!");
  980. return false;
  981. }
  982. tankTempEnable_ON()
  983. var data = { "tank_num": "F" + tank_num, "command": "tank_temp_status", "value": temp_data };
  984. $.post('/mqtt/' + tank_num, data, function (res) {
  985. console.log('data:', data)
  986. if (res == 'on') {
  987. //$("#cmn-toggle-14").prop('checked', true); // prop 設置元素屬型與元素值, 設定 checked 屬性為 true
  988. setTimeout("alert('溫度設定_開啟成功!')", 500); // 設定時間執行函式 delay(500), 只執行一次
  989. } else if (res == 'off') {
  990. //$("#cmn-toggle-14").prop('checked', false);
  991. setTimeout("alert('溫度設定_關閉成功!')", 500);
  992. } else {
  993. console.log(res)
  994. };
  995. }, 'text')
  996. /*
  997. $.get('/loading/F' + tank_num, '', function (res) {
  998. $("#tank_temp_data").attr("placeholder", res.tank_temp1);
  999. }, 'json');
  1000. */
  1001. // window.location.reload();
  1002. };
  1003. function tankTemp_ON() {
  1004. var data = { "tank_num": "F" + tank_num, "command": "tank_temp_status", "value": "30" };
  1005. $.post('/mqtt/' + tank_num, data, function (res) {
  1006. console.log('data:', data)
  1007. if (res == 'on') {
  1008. } else if (res == 'off') {
  1009. } else {
  1010. console.log('res error');
  1011. };
  1012. }, 'text')
  1013. // setTimeout(function () { location.reload(); }, 500);
  1014. };
  1015. function tankTemp_OFF() {
  1016. var data = { "tank_num": "F" + tank_num, "command": "tank_temp_status", "value": "0" };
  1017. $.post('/mqtt/' + tank_num, data, function (res) {
  1018. console.log('data:', data)
  1019. if (res == 'on') {
  1020. } else if (res == 'off') {
  1021. } else {
  1022. console.log('res error');
  1023. };
  1024. }, 'text')
  1025. // setTimeout(function () { location.reload(); }, 500);
  1026. };
  1027. // Benson 真空吸料機 (START) 出料儲豆槽
  1028. function outputVacuum() {
  1029. var status = "off";
  1030. var check = $("input[name=output_vacuum_status]:checked");
  1031. //大於0代表有被選中
  1032. if (check.length > 0) {
  1033. status = "on";
  1034. $("#cmn-toggle-32").prop('checked', false);
  1035. if (!confirm("你確定要開啟出料儲豆槽真空吸料機嗎?")) {
  1036. return false;
  1037. };
  1038. } else {
  1039. $("#cmn-toggle-32").prop('checked', true);
  1040. if (!confirm("你確定要關閉出料儲豆槽真空吸料機嗎?")) {
  1041. return false;
  1042. };
  1043. };
  1044. var data = { "tank_num": "FO" + tank_num, "command": "output_vacuum_status", "value": status };
  1045. console.log('data:', data)
  1046. $.post('/mqtt/' + tank_num, data, function (res) {
  1047. if (res == 'on') {
  1048. $("#cmn-toggle-32").prop('checked', true);
  1049. setTimeout("alert('出料儲豆槽真空吸料機_開啟成功!')", 500);
  1050. } else if (res == 'off') {
  1051. $("#cmn-toggle-32").prop('checked', false);
  1052. setTimeout("alert('出料儲豆槽真空吸料機_關閉成功!')", 500);
  1053. } else {
  1054. alert(res);
  1055. };
  1056. }, 'text')
  1057. };
  1058. function outputVacuum_ON() {
  1059. var data = { "tank_num": "FO" + tank_num, "command": "output_vacuum_status", "value": "on" };
  1060. console.log('data:', data)
  1061. $.post('/mqtt/' + tank_num, data, function (res) {
  1062. if (res == 'on') {
  1063. $("#cmn-toggle-32").prop('checked', true);
  1064. } else if (res == 'off') {
  1065. $("#cmn-toggle-32").prop('checked', false);
  1066. } else {
  1067. console.log('res error');
  1068. };
  1069. }, 'text')
  1070. };
  1071. function outputVacuum_OFF() {
  1072. var data = { "tank_num": "FO" + tank_num, "command": "output_vacuum_status", "value": "off" };
  1073. console.log('data:', data)
  1074. $.post('/mqtt/' + tank_num, data, function (res) {
  1075. if (res == 'on') {
  1076. $("#cmn-toggle-32").prop('checked', true);
  1077. } else if (res == 'off') {
  1078. $("#cmn-toggle-32").prop('checked', false);
  1079. } else {
  1080. console.log('res error');
  1081. };
  1082. }, 'text')
  1083. };