Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.

index.js 6.9KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297
  1. /**obu蓝牙设备SDK */
  2. // const wjApi = require("../etc/WJAPI/wjBleAPI");
  3. // import * as wjApi from '../../lib/etc/WJAPI/wjBleAPI'
  4. // const jlApi = require("../etc/JLAPI/JLObuSDK.js");
  5. // import * as jlApi from '../../lib/etc/JLAPI/JLObuSDK.js'
  6. const jyApi = require("../etc/JYAPI/GenvictBleUtil.js");
  7. // import * as jyApi from '../../lib/etc/JYAPI/GenvictBleUtil.js'
  8. const jlQZApi = require("../etc/JLQZAPI/JLObuSDK.js");
  9. // import * as jlQZApi from '../../lib/etc/JLQZAPI/JLObuSDK.js'
  10. const atApi = require("../etc/ATAPI/ArtcBleUtil.js");
  11. // import * as atApi from '../../lib/etc/ATAPI/ArtcBleUtil.js'
  12. const jtApi = require("../etc/JTAPI/BleUtil.js");
  13. // import * as jtApi from '../../lib/etc/JTAPI/BleUtil.js'
  14. const wqApi = require("../etc/WQAPI/WCDObuSdk.js");
  15. // import * as wqApi from '../../lib/etc/WQAPI/WCDObuSdk.js'
  16. const cgApi = require("../etc/CGAPI/cguBle.js");
  17. // import * as cgApi from '../../lib/etc/CGAPI/cguBle.js'
  18. // const tdApi = require("../etc/TDAPI/TDRObuSDK.js");
  19. // import * as tdApi from '../../lib/etc/TDAPI/TDRObuSDK.js'
  20. const zzApi = require("../etc/WJAPI/wjBleAPI.js");
  21. // import * as zzApi from '../../lib/etc/WJAPI/wjBleAPI'
  22. const datas = require("./datas.js");
  23. // import * as datas from '../../../utils/common/datas.js';
  24. const tools = require('./tools.js');
  25. const jlApi = require("../../static/etc/JLAPI/JLObuSDK.js"); //聚力SDK
  26. const wjApi = require("../etc/WJAPI/wjBleAPI");
  27. let tdApi = require("../etc/TDAPI/TDRObuSDK.js");
  28. // #ifdef MP-ALIPAY
  29. // 这部分代码将仅在支付宝小程序平台下执行
  30. // jlApi = require("../../static/etc/JLObuSDK/JLObuSDK.js");
  31. // wjApi = require("../etc/WJBLE/WJBleAPI");
  32. tdApi = require("../etc/TDRAPI/TDRObuSDK.js");
  33. // 执行支付宝小程序的特定功能
  34. // #endif
  35. /**
  36. * 断开蓝牙
  37. */
  38. function disconnectDevice() {
  39. var connectPrefixName = datas.getData("connectPrefixName");
  40. switch (connectPrefixName) {
  41. case "WJ":
  42. wjApi.disconnectDevice(function(res) {
  43. datas.setData("bluLinkStatus", false);
  44. datas.setData("connectPrefixName", "");
  45. // console.log(res)
  46. });
  47. break;
  48. case "JL":
  49. jlApi.disconnectDevice(function(res) {
  50. datas.setData("bluLinkStatus", false);
  51. datas.setData("connectPrefixName", "");
  52. // console.log(res)
  53. });
  54. break;
  55. case "ETC":
  56. jlQZApi.disconnectDevice(function(res) {
  57. datas.setData("bluLinkStatus", false);
  58. datas.setData("connectPrefixName", "");
  59. // console.log(res)
  60. });
  61. break;
  62. case "JY":
  63. jyApi.disconnectDevice(function(res) {
  64. datas.setData("bluLinkStatus", false);
  65. datas.setData("connectPrefixName", "");
  66. // console.log(res)
  67. });
  68. break;
  69. case "AT":
  70. atApi.disconnectDevice(function(res) {
  71. datas.setData("bluLinkStatus", false);
  72. datas.setData("connectPrefixName", "");
  73. // console.log(res)
  74. });
  75. break;
  76. case "JT":
  77. jtApi.disconnectDevice(function(res) {
  78. datas.setData("bluLinkStatus", false);
  79. datas.setData("connectPrefixName", "");
  80. // console.log(res)
  81. });
  82. break;
  83. case "WQ":
  84. wqApi.disconnectDevice(function(res) {
  85. datas.setData("bluLinkStatus", false);
  86. datas.setData("connectPrefixName", "");
  87. // console.log(res)
  88. });
  89. break;
  90. case "CG":
  91. cgApi.disconnectDevice(function(res) {
  92. datas.setData("bluLinkStatus", false);
  93. datas.setData("connectPrefixName", "");
  94. // console.log(res)
  95. });
  96. break;
  97. case "TD":
  98. tdApi.disConnectDevice(function(res) {
  99. datas.setData("bluLinkStatus", false);
  100. datas.setData("connectPrefixName", "");
  101. // console.log(res)
  102. });
  103. break;
  104. case "ZZ":
  105. zzApi.disconnectDevice(function(res) {
  106. datas.setData("bluLinkStatus", false);
  107. datas.setData("connectPrefixName", "");
  108. // console.log(res)
  109. });
  110. break;
  111. default:
  112. break;
  113. }
  114. }
  115. /**
  116. * 透传
  117. * type 10 写卡 20 写OBU
  118. */
  119. function transCmd(cmdArr, type, func, callBack = null) {
  120. var connectPrefixName = datas.getData("connectPrefixName");
  121. switch (connectPrefixName) {
  122. case "WJ":
  123. // #ifdef MP-ALIPAY
  124. wjApi.transCmd(cmdArr, '00', type == '10' ? 'A3' : 'AC', function(res) {
  125. if (res.code == 0) {
  126. func(res.data);
  127. } else {
  128. if (callBack != null) {
  129. callBack(res.msg);
  130. } else {
  131. alertF(res.msg);
  132. }
  133. }
  134. });
  135. // #endif
  136. // #ifdef MP-WEIXIN
  137. wjApi.transCmd(cmdArr, type, function(res) {
  138. if (res.code == 0) {
  139. func(res.data);
  140. } else {
  141. if (callBack != null) {
  142. callBack(res.msg);
  143. } else {
  144. alertF(res.msg);
  145. }
  146. }
  147. });
  148. // #endif
  149. break;
  150. case "JL":
  151. jlApi.transCmd(cmdArr, type, function(res) {
  152. if (res.code == 0) {
  153. func(res.data);
  154. } else {
  155. if (callBack != null) {
  156. callBack(res.msg);
  157. } else {
  158. alertF(res.msg);
  159. }
  160. }
  161. });
  162. break;
  163. case "ETC":
  164. jlQZApi.transCmd(cmdArr, type, function(res) {
  165. if (res.code == 0) {
  166. func(res.data);
  167. } else {
  168. if (callBack != null) {
  169. callBack(res.msg);
  170. } else {
  171. alertF(res.msg);
  172. }
  173. }
  174. });
  175. break;
  176. case "JY":
  177. jyApi.transCmd(cmdArr, type, function(res) {
  178. if (res.code == 0) {
  179. func(res.data);
  180. } else {
  181. if (callBack != null) {
  182. callBack(res.msg);
  183. } else {
  184. alertF(res.msg);
  185. }
  186. }
  187. });
  188. break;
  189. case "AT":
  190. atApi.transCmd(cmdArr, type, function(res) {
  191. if (res.code == 0) {
  192. func(res.data);
  193. } else {
  194. if (callBack != null) {
  195. callBack(res.msg);
  196. } else {
  197. alertF(res.msg);
  198. }
  199. }
  200. });
  201. break;
  202. case "JT":
  203. jtApi.transCmd(cmdArr, type, function(res) {
  204. if (res.code == 0) {
  205. func(res.data);
  206. } else {
  207. if (callBack != null) {
  208. callBack(res.msg);
  209. } else {
  210. alertF(res.msg);
  211. }
  212. }
  213. });
  214. break;
  215. case "WQ":
  216. wqApi.transCmd(cmdArr, type, function(res) {
  217. if (res.code == 0) {
  218. func(res.data);
  219. } else {
  220. if (callBack != null) {
  221. callBack(res.msg);
  222. } else {
  223. alertF(res.msg);
  224. }
  225. }
  226. });
  227. break;
  228. case "CG":
  229. cgApi.transCmd(cmdArr, type, function(res) {
  230. if (res.code == 0) {
  231. func(res.data);
  232. } else {
  233. if (callBack != null) {
  234. callBack(res.msg);
  235. } else {
  236. alertF(res.msg);
  237. }
  238. }
  239. });
  240. break;
  241. case "TD":
  242. tdApi.transCmd(cmdArr, type, function(res) {
  243. if (res.code == 0) {
  244. func(res.data);
  245. } else {
  246. if (callBack != null) {
  247. callBack(res.msg);
  248. } else {
  249. alertF(res.msg);
  250. }
  251. }
  252. });
  253. break;
  254. case "ZZ":
  255. zzApi.transCmd(cmdArr, type, function(res) {
  256. if (res.code == 0) {
  257. func(res.data);
  258. } else {
  259. if (callBack != null) {
  260. callBack(res.msg);
  261. } else {
  262. alertF(res.msg);
  263. }
  264. }
  265. });
  266. break;
  267. default:
  268. datas.setData("bluLinkStatus", false);
  269. datas.setData("connectPrefixName", "");
  270. if (callBack != null) {
  271. callBack("没有找到设备");
  272. } else {
  273. alertF("没有找到设备");
  274. }
  275. break;
  276. }
  277. }
  278. /**
  279. * 提示加关蓝牙
  280. */
  281. function alertF(msg) {
  282. // 隐藏加载框
  283. tools.hideLoadingAlert();
  284. // 提示对话框
  285. tools.showModalAlert(msg);
  286. }
  287. module.exports = {
  288. disconnectDevice,
  289. transCmd,
  290. };