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.

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