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.

facUtil.js 4.4KB

1 month ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184
  1. //适配各厂家SDK配置项,其中的数据顺序不能变
  2. const config = [
  3. {
  4. svrName: "zjobu-jl",
  5. facSdk: () => require("./JLObuSDK/JLObuSDK.js"),
  6. },
  7. ]
  8. //厂家SDK封装
  9. export const facapi = {
  10. //厂家SDK实例
  11. facSdk: null,
  12. //根据设备名称适配厂家SDK
  13. initFacSdk: (deviceName, callback) => {
  14. let tmp = null
  15. if (!deviceName) return null
  16. console.log("设备名称sdk", deviceName)
  17. tmp = config[0].facSdk()
  18. if (tmp) {
  19. facapi.facSdk = tmp
  20. }
  21. callback(tmp)
  22. },
  23. //连接设备
  24. ConnectDevice: (device, conStateChange, conCallback) => {
  25. if (!device || !device.device_name) {
  26. let result = {
  27. code: 1109,
  28. err_msg: "设备名称为空",
  29. }
  30. typeof conCallback === "function" && conCallback(result)
  31. }
  32. facapi.initFacSdk(device.device_name, (sdk) => {
  33. if (sdk) {
  34. facapi.facSdk.ConnectDevice(device, conStateChange, conCallback)
  35. } else {
  36. let result = {
  37. code: 1110,
  38. err_msg: "未找到蓝牙OBU厂家SDK",
  39. }
  40. typeof conCallback === "function" && conCallback(result)
  41. }
  42. })
  43. },
  44. //断开连接
  45. DisConnectDevice: function (_callback) {
  46. facapi.facSdk.DisconnectDevice(_callback)
  47. },
  48. //打开OBU通道
  49. OpenChannel: function (_callback) {
  50. facapi.facSdk.OpenChannel(_callback)
  51. },
  52. //设备SN号
  53. GetSerialNo: function (_callback) {
  54. facapi.facSdk.GetSerialNo(_callback)
  55. },
  56. //检查卡片
  57. CheckCardExists: function (_callback) {
  58. facapi.facSdk.CheckCardExists(_callback)
  59. },
  60. //打开卡片
  61. OpenCard: function (_callback) {
  62. facapi.facSdk.OpenCard(_callback)
  63. },
  64. //获取卡号
  65. GetCardNo: function (_callback) {
  66. facapi.facSdk.GetCardNo(_callback)
  67. },
  68. //获取0015文件
  69. GetCardFile15: function (_callback) {
  70. facapi.facSdk.GetCardFile15(_callback)
  71. },
  72. //获取0016文件
  73. GetCardFile16: function (_callback) {
  74. facapi.facSdk.GetCardFile16(_callback)
  75. },
  76. //获取自定义文件文件
  77. GetCardFileCustom: function (fileName, length, _callback) {
  78. // facapi.facSdk.GetCardFileCustom('0015', '50', function(code) {
  79. // console.log("返回数据:" + code.data);
  80. // })
  81. facapi.facSdk.GetCardFileCustom(fileName, length, _callback)
  82. },
  83. // getMac: function(rand) {
  84. // console.log("随机数:" + rand);
  85. // var devResult = new Object();
  86. // devResult.data = "00A40000023F00";
  87. //
  88. // return devResult;
  89. // },
  90. //
  91. // getMacc: function(rand, trade_no, mac1, balance) {
  92. // console.log(rand);
  93. // console.log(trade_no);
  94. // console.log(mac1);
  95. // console.log(balance);
  96. //
  97. // var devResult = new Object();
  98. // devResult.data = "00A40000021001";
  99. // return devResult;
  100. // },
  101. //写入0015文件
  102. SetCardFile0015: function (getMac, _callback) {
  103. facapi.facSdk.SetCardFile0015(getMac, _callback)
  104. },
  105. //写入0016文件
  106. SetCardFile0016: function (getMac, _callback) {
  107. facapi.facSdk.SetCardFile0016(getMac, _callback)
  108. },
  109. //写入自定义文件
  110. SetCardFileCustomer: function (getMac, _callback) {
  111. facapi.facSdk.SetCardFileCustomer(getMac, _callback)
  112. },
  113. //圈存
  114. InitLoad: function (pinCode, money, time, termino_no, getMac, _callback) {
  115. // facapi.facSdk.InitLoad(that.getMacc, '123456', '1', '20180611112020', '123456123456', function(code) {
  116. // console.log("返回数据:" + code.data);
  117. // })
  118. facapi.facSdk.InitLoad(
  119. pinCode,
  120. money,
  121. time,
  122. termino_no,
  123. getMac,
  124. _callback
  125. )
  126. },
  127. //获取系统信息
  128. GetSystemInfo: function (_callback) {
  129. facapi.facSdk.GetSystemInfo(_callback)
  130. },
  131. //获取车辆密文
  132. GetVehicleInfo: function (random, _callback) {
  133. facapi.facSdk.GetVehicleInfo(random, _callback)
  134. },
  135. //写系统信息
  136. SetSystemInfo: function (getMac, _callback) {
  137. facapi.facSdk.SetSystemInfo(getMac, _callback)
  138. },
  139. //写车辆信息
  140. SetVehicleInfo: function (getMac, _callback) {
  141. facapi.facSdk.SetVehicleInfo(getMac, _callback)
  142. },
  143. //激活
  144. Activate: function (getMac, _callback) {
  145. facapi.facSdk.Activate(getMac, _callback)
  146. },
  147. //ic卡通道
  148. CpuCommand: function (command, _callback) {
  149. // facapi.facSdk.CpuCommand('00A40000021001', function(code) {
  150. // console.log("返回数据:" + code.data);
  151. // })
  152. facapi.facSdk.CpuCommand(command, _callback)
  153. },
  154. //OBU通道
  155. ObuCommand: function (command, _callback) {
  156. // facapi.facSdk.ObuCommand('00A40000023F00', function(code) {
  157. // console.log("返回数据:" + code.data);
  158. // })
  159. facapi.facSdk.ObuCommand(command, _callback)
  160. },
  161. //设备版本号
  162. GetVesionNo: function (_callback) {
  163. var that = this
  164. facapi.facSdk.GetVesionNo(_callback)
  165. },
  166. }