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.

index.js 6.9KB

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