|
|
- // pages/addperson/addperson.js
- const app = getApp()
- const WXAPI = require('../../utils/request')
- import ICINLocker from "../../utils/ICINPakage/ICINLocker"
- var util = require('../../utils/util');
-
-
- var util1 = require('../../utils/util1');
- const config = require('../../config')
- const plugin = requirePlugin("myPlugin")
-
-
- var methods = require('../../utils/methods');
- var md5 = require('../../utils/md5.js');
- var bleall = require('../../utils/bleall');
- import moment from "../../utils/moment"
- import {
- BLE
- } from "../../utils/btls/ble";
- const emitter = app.globalData.emitter
- const ADD_NFC_MODE = 10
- // ArrayBuffer转16进度字符串示例
- function ab2hex(buffer) {
- var hexArr = Array.prototype.map.call(
- new Uint8Array(buffer),
- function (bit) {
- return ('00' + bit.toString(16)).slice(-2)
- }
- )
- return hexArr.join(',');
- }
-
- function CurentTime() {
- var now = new Date();
- var year = now.getFullYear(); //年
- var month = now.getMonth() + 1; //月
- var day = now.getDate(); //日
- var hh = now.getHours(); //时
- var mm = now.getMinutes(); //分
- var clock = year + "-";
- if (month < 10)
- clock += "0";
- clock += month + "-";
- if (day < 10)
- clock += "0";
- clock += day + " ";
- // if (hh < 10)
- // clock += "0";
- // clock += '00' + ":";
- // // if (mm < 10) clock += '0';
- clock += '00:00:00';
- return (clock);
- }
-
- function CurentTime1() {
- var now = new Date();
- var year = now.getFullYear() + 3; //年
- var month = now.getMonth() + 1; //月
- var day = now.getDate(); //日
- var hh = now.getHours(); //时
- var mm = now.getMinutes(); //分
- var clock = year + "-";
- if (month < 10)
- clock += "0";
- clock += month + "-";
- if (day < 10)
- clock += "0";
- clock += day + " ";
- // if (hh < 10)
- // clock += "0";
- // clock += hh + ":";
- // if (mm < 10) clock += '0';
- // clock += mm;
- clock += '23:59:59';
- return (clock);
- }
- var date = new Date()
- var isConnected = false
- var connectedDeviceId = ''
- var basecode = 29283991
- var lockId = 1
- var lockManagerId = 1
- var lockMac = ''
- var isInitReady = false
- var lockModel
- var lockDevice
- var taskId = 0
-
- var pincode = -1
- var pincodeIndex = -1
-
- var rfCardId = -1
- var rfCardIndex = -1
-
- var fingerprintIndex = -1
- var passwordLiAll = {
- id: ''
- }
- var isLockLogin = false
- var serialNumber = ''
- let letterRandom = [
- "0",
- "1",
- "2",
- "3",
- "4",
- "5",
- "6",
- "7",
- "8",
- "9",
- "a",
- "b",
- "c",
- "d",
- "e",
- "f",
- "g",
- "h",
- "i",
- "j",
- "k",
- "l",
- "m",
- "n",
- "o",
- "p",
- "q",
- "r",
- "s",
- "t",
- "u",
- "v",
- "w",
- "x",
- "y",
- "z",
- "A",
- "B",
- "C",
- "D",
- "E",
- "F",
- "G",
- "H",
- "I",
- "J",
- "K",
- "L",
- "M",
- "N",
- "O",
- "P",
- "Q",
- "R",
- "S",
- "T",
- "U",
- "V",
- "W",
- "X",
- "Y",
- "Z",
- ];
-
- function randomMethods() {
- let str = ''
- for (let i = 0; i < 8; i++) {
- str +=
- letterRandom[Math.round(Math.random() * (letterRandom.length - 1))];
- }
- return str
- }
- Page({
-
- /**
- * 页面的初始数据
- */
- data: {
- isBindLock: false,
- isPincodeAdd: false,
- isRfCardAdd: false,
- isFingerprintAdd: false,
- isUnloked: false,
- isMuted: false,
- isNbEnable: true,
- lockModel: 0,
- lock: {},
- isSearch: app.globalData.isSearch,
-
- activeKey: 0,
- NfcList: [],
- FpList: [],
- passwordList: [],
- show: false,
- datetimerange: [CurentTime(), CurentTime1()],
- minDate: '',
- minDate1: '',
- endtime: '',
- starttime: '',
- addIndex: 0,
- pzname: '',
- current: '',
- currentIndex: '',
- fingerprintId: '',
- backstatus: false,
- radioDetil: '',
- passwordStatus: true,
- items: [{
- value: '0',
- name: '左手大拇指',
- checked: false
- },
- {
- value: '1',
- name: '左手食指',
- checked: false
- },
- {
- value: '2',
- name: '右手大拇指',
- checked: false
- },
- {
- value: '3',
- name: '右手食指',
- checked: false
- }
- ],
- showLoading: false,
- requestSatatus: true,
- password: ''
- },
-
- /**
- * 生命周期函数--监听页面加载
- */
- onLoad: function (options) {
- var cgInfo = wx.getStorageSync('cgInfo')
- var deviceinfo = wx.getStorageSync('deviceinfo')
- var personLi = wx.getStorageSync('personLi')
- console.log("242",personLi);
- let minDate = moment(personLi.startTime).format('YYYY-MM-DD HH:mm:ss')
- let minDate1 = moment(personLi.endTime).format('YYYY-MM-DD HH:mm:ss')
- // let minDate = wx.getStorageSync('minDate')
- // let minDate1 = wx.getStorageSync('minDate1')
- this.setData({
- cgInfo: cgInfo,
- minDate,
- minDate1,
- starttime: minDate,
- endtime: minDate1,
- deviceinfo: deviceinfo,
- personLi: personLi,
- isSearch: false
- })
- this.getPassword()
- this.getNfc()
- this.getCarId()
- this.getFp()
- if (deviceinfo.manufactureId == 1201) {
- this.searchDevicesMethods()
- } else if (deviceinfo.manufactureId == 101) {
- app.watch(this.getcartcount, 'backdata')
- app.watch(this.fingerprintFun, 'fingerprintId')
- }
- if(deviceinfo.bluetoothMac){
- let superAdmin = []
- var superAdminIdlist = deviceinfo.bluetoothMac.slice(deviceinfo.bluetoothMac.length - 11, deviceinfo.bluetoothMac.length).split(":").join("")
- for (let i = 0; i < superAdminIdlist.length; i++) {
- if (superAdminIdlist[i] >= 0 && superAdminIdlist[i] <= 9) {
- superAdmin.push(superAdminIdlist[i])
- } else {
- let adminid = superAdminIdlist.charCodeAt(i)
- superAdmin.push(adminid)
- }
- }
- let superAdminId = superAdmin.join('').slice(superAdmin.length - 8, superAdmin.length)
- basecode = superAdminId
- console.log(basecode, "basecode");
- }
- },
- // 指纹选择
- radioChange(e) {
- var personLi = wx.getStorageSync('personLi')
- var pzname = ''
- if (e.detail.value == 0) {
- pzname = "左手大拇指"
- } else if (e.detail.value == 1) {
- pzname = "左手食指"
- } else if (e.detail.value == 2) {
- pzname = "右手大拇指"
- } else if (e.detail.value == 3) {
- pzname = "右手食指"
- }
- this.setData({
- radioDetil: pzname
- })
- this.getfingerprintMrhods(pzname, personLi.cardId, 11)
- },
- getfingerprintMrhods(pzname, id, type) {
- var that = this
- var items = [{
- value: '0',
- name: '左手大拇指',
- checked: false
- },
- {
- value: '1',
- name: '左手食指',
- checked: false
- },
- {
- value: '2',
- name: '右手大拇指',
- checked: false
- },
- {
- value: '3',
- name: '右手食指',
- checked: false
- }
- ]
- var data = {
- pageNum: 0,
- pageSize: 0,
- orderBy: "create_at desc",
- q: {
- cardId: id,
- types: type,
- deviceNum: this.data.deviceinfo.deviceNum,
- inStatus: '0,1,702'
- },
- };
- WXAPI.getCertificates(data).then(res => {
- var dataOne = util.zlib_unzip(res.data)
- if (res.success) {
- dataOne.map(li => {
- var content = JSON.parse(li.content)
- if (content.fingerprintAlias == pzname) {
- wx.showModal({
- title: '提示',
- content: '该指纹已存在,请选择其他',
- success(res1) {
- if (res1.confirm) {
- console.log('用户点击确定')
- that.setData({
- items,
- radioDetil: ''
- })
- } else if (res1.cancel) {
- console.log('用户点击取消')
- that.setData({
- items,
- radioDetil: ''
- })
- }
- }
- })
- }
- })
- } else {
- wx.showToast({
- title: '获取失败',
- mask: true,
- duration: '2000',
- icon: 'none'
- })
- }
- })
- },
- fingerprintFun() {
- this.data.fingerprintId = app.globalData.fingerprintId
- },
- getcartcount(val) {
- var that = this
- var _this = this
- let deviceNum = that.data.deviceinfo.deviceNum
- var timestamp = moment().format("x")
- wx.showLoading({
- title: '添加指纹中',
- mask: true
- })
- if (app.globalData.backdata == 3 && this.data.backstatus) {
- bleall.startFp_29(deviceNum, 0x02, timestamp, function (res) {})
- } else if (app.globalData.backdata == 2 && this.data.backstatus) {
- bleall.startFp_29(deviceNum, 0x01, timestamp, function (res) {})
- } else if (app.globalData.backdata == 1 && this.data.backstatus) {
- console.log(app.globalData.backdata, this.data.backstatus, 'app.globalData.backdata, this.data.backstatus', this.data.fingerprintId)
- if (this.data.fingerprintId != 255) {
- var info = JSON.parse(this.data.personLi.info)
- var time1 = moment(this.data.datetimerange[0]).format("YYYYMMDDHHmmss")
- var time2 = moment(this.data.datetimerange[1]).format("YYYYMMDDHHmmss")
- var time3 = new Date(this.data.datetimerange[0].replace(/-/g, '/'))
- var time4 = new Date(this.data.datetimerange[1].replace(/-/g, '/'))
- var passwordStartTime = time3.getTime() / 1000
- var passwordEndTime = time4.getTime() / 1000
- var data = {
- managerTelephone: "18270949468",
- managerPassword: "202108",
- userTelephone: info.userTelephone,
- userPassword: info.userPassword,
- startTime: time1,
- endTime: time2
- }
- console.log(data, this.data.fingerprintId)
- // if(app.globalData.fingerprintId != -1){
- // setTimeout(() => {
- // app.globalData.backdata = -1
- this.setData({
- backstatus: false
- })
- let fingerprintId = ''
- console.log(_this.data.fingerprintId, typeof (_this.data.fingerprintId))
- if (Number(_this.data.fingerprintId) < 9) {
- fingerprintId = '0' + _this.data.fingerprintId.toString(16)
- } else {
- fingerprintId = _this.data.fingerprintId.toString(16)
- }
- let deviceinfo = that.data.deviceinfo
- bleall.startFp_63(data.managerTelephone, data.managerPassword, data.userTelephone, data.userPassword,
- data.startTime, data.endTime, 16, this.data.fingerprintId, timestamp,
- function (res) {
- console.log(res, 'resres')
- if (res.success) {
- wx.hideLoading()
- var cardName = '',
- pzname = ''
- if (that.data.pzname) {
- cardName = that.data.personLi.name + '-蓝牙-' + that.data.pzname
- pzname = '蓝牙-' + that.data.pzname
- } else {
- cardName = that.data.personLi.name + '-蓝牙-指纹' + that.data.FpList.length + 1
- pzname = '蓝牙-指纹' + that.data.FpList.length + 1
- }
- var str = {
- // cardId: this.personInfo.cardId,
- imei: _this.data.deviceinfo.imei,
- pzname: pzname,
- password: '',
- userTelephone: info.userTelephone,
- operateMode: 16,
- fingerprintAlias: _this.data.radioDetil,
- userPassword: info.userPassword,
- passwordStartTime: time1,
- passwordEndTime: time2,
- is: false,
- pass: true
- }
- var data3 = {
- code: "ble/operateUserInfo",
- data: {
- deviceNum: deviceinfo.deviceNum,
- imei: deviceinfo.imei,
- userTelephone: info.userTelephone,
- userPassword: info.userPassword,
- password: fingerprintId,
- userStartTime: time1,
- userEndTime: time2,
- passwordStartTime: time1,
- passwordEndTime: time2,
- operateMode: 16,
- order: 6216,
- timestamp: timestamp,
- managerTelephone: '18270949468',
- managerPassword: '202108',
- passwordLength: 10,
- permission: 4294967295,
- times: 255,
- recycleTime: "65535",
- roomName: _this.data.deviceinfo.roomName,
- cardName: cardName,
- }
- }
- console.log(data3, 'pppppp')
- WXAPI.sendCommand(data3).then(res3 => {
- console.log(res3, 'resres3')
- if (res3.success) {
- var data4 = {
- result: 1,
- serial: res3.data.serialNumber
- }
- WXAPI.updatePush(data4).then(res4 => {
-
- })
- var data6 = {
- result: 1,
- serial: res3.data.serialNumber,
- face: fingerprintId
- }
- WXAPI.editPushBySerial(data6).then(res4 => {
-
- })
- var data = {
- cardId: _this.data.personLi.cardId,
- content: JSON.stringify(str), //operateMode:NFC-10、把人员添加到凭证-1
- deviceNum: _this.data.deviceinfo.deviceNum,
- type: 1,
- imei: _this.data.deviceinfo.imei,
- serial: res3.data.serialNumber,
- startTime: passwordStartTime,
- endTime: passwordEndTime,
- };
- var datalist = {
- cardId: _this.data.personLi.cardId,
- content: JSON.stringify(str), //operateMode:NFC-10、把人员添加到凭证-1
- type: 11,
- startTime: passwordStartTime,
- endTime: passwordEndTime,
- };
- WXAPI.addCertificates(datalist).then(res6 => {})
- console.log(data, '添加凭证')
- WXAPI.addCertificates(data).then(res4 => {
- if (res4.success) {
- var updatedata = {
- id: res4.data,
- status: 1
- };
- WXAPI.updateCertificates(updatedata).then((res2) => {});
- console.log(res3, '添加凭证成功')
- _this.getFp()
- _this.setData({
- show: false
- })
- wx.hideLoading()
- wx.showToast({
- title: '添加成功',
- icon: 'none',
- mask: true,
- duration: 2000
- })
- } else {
- wx.hideLoading()
- wx.showToast({
- title: '添加失败',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- }
- })
-
- } else {
- wx.hideLoading()
- wx.showToast({
- title: res3.msg,
- mask: true,
- icon: 'none',
- duration: 2000
- })
- }
- })
- } else {
- wx.hideLoading()
- wx.showToast({
- title: '添加失败',
- duration: 2000,
- icon: 'none'
- })
- }
- if (res.data == "蓝牙功能暂不支持") {
- _this.startconnect()
- }
- })
- // }, 200)
- // }
- } else {
- wx.hideLoading()
- wx.showToast({
- title: '添加失败',
- mask: true,
- duration: 2000,
- icon: 'none'
- })
- }
- }
- },
- // 删除开锁方式
- delMode(e) {
- var current = e.currentTarget.dataset.current
- var index = e.currentTarget.dataset.index
- var cgInfo = this.data.cgInfo
- var deviceinfo = this.data.deviceinfo
- this.setData({
- current: current,
- currentIndex: index
- })
- if (deviceinfo.manufactureId == 101) {
- if (current == 1) {
- this.delPassword1(index)
- } else if (current == 2) {
- this.delNfc1(index)
- } else if (current == 3) {
- this.delFp1(index)
- }
- } else if (deviceinfo.manufactureId == 201 || deviceinfo.manufactureId == 221) {
- if (current == 1) {
- this.delPassword(index)
- } else if (current == 2) {
- this.delNfc1(index)
- } else if (current == 3) {
- this.delFp(index)
- }
- } else if (deviceinfo.manufactureId == 1201 || deviceinfo.manufactureId == 1241) {
- if (this.data.isSearch) {
- if (current == 1) {
- this.delPasswordLwj(index)
- } else if (current == 2) {
- this.delNfcLwj(index)
- } else if (current == 3) {
- this.delFpLwj(index)
- }
- }else{
- this.searchDevicesMethods()
- }
- }
- },
- getNFCIndexLwj(index, callback) {
- var data = {
- q: JSON.stringify({
- cardId: this.data.personLi.cardId,
- inStatus: "1",
- types: '3',
- deviceNum: this.data.NfcList[index].deviceNum,
- // this.data.NfcList[index].serial,
- // result:1
- }),
- pageNum: 1,
- pageSize: 10,
- orderBy: "create_at desc"
- };
- WXAPI.getCertificates(data).then(res => {
- if (res.success) {
- var dataOne = util.zlib_unzip(res.data)
- console.log(dataOne, 'ddd')
- callback(dataOne)
- } else {
- wx.showToast({
- title: '获取失败',
- mask: true,
- duration: 2000,
- icon: 'none'
- })
- }
- })
- },
- getNFCIndex(index, callback) {
- var data = {
- q: JSON.stringify({
- serial: this.data.NfcList[index].serial,
- result: 1
- }),
- pageNum: 1,
- pageSize: 10,
- };
- WXAPI.getDeviceResult(data).then(res => {
- if (res.success) {
- var dataOne = util.zlib_unzip(res.data)
- console.log(dataOne, 'ddd')
- callback(dataOne)
- } else {
- wx.showToast({
- title: '获取失败',
- mask: true,
- duration: 2000,
- icon: 'none'
- })
- }
- })
- },
- getFpIndex(index, callback) {
- var data = {
- q: JSON.stringify({
- serial: this.data.FpList[index].serial,
- }),
- pageNum: 1,
- pageSize: 10,
- };
- WXAPI.getDeviceResult(data).then(res => {
- if (res.success) {
- var dataOne = util.zlib_unzip(res.data)
- console.log(dataOne, 'ddd')
- callback(dataOne)
- } else {
- wx.showToast({
- title: '获取失败',
- duration: 2000,
- mask: true,
- icon: 'none'
- })
- }
- })
- },
- addPassword(e) {
- this.setData({
- show: true,
- current: e.currentTarget.dataset.current,
- addIndex: e.currentTarget.dataset.addindex
- })
- },
- onChange1(event) {
- // event.detail 为当前输入的值
- this.setData({
- password: event.detail
- })
- },
- onChange2(event) {
- // event.detail 为当前输入的值
- this.setData({
- pzname: event.detail
- })
- },
- bindDateChange: function (e) {
- var str = e.detail.value + " 00:00:00"
- this.data.datetimerange[0] = str
- this.setData({
- starttime: str,
- })
- },
- bindDateChange1: function (e) {
- var str = e.detail.value + " 23:59:59"
- this.data.datetimerange[1] = str
- this.setData({
- endtime: str
- })
- },
- delNfc1(index) {
- wx.showLoading({
- title: '正在删除',
- mask: true
- })
- var cgInfo = this.data.cgInfo
- var personLi = this.data.NfcList[index]
- var deviceinfo = this.data.deviceinfo
- var info = JSON.parse(personLi.content)
- var personInfo = JSON.parse(this.data.personLi.info)
- var _this = this
- this.getNFCIndex(index, function (data) {
- console.log(data, 'datatdatata', data[0])
- if (data.length > 0 && data[0].face != null) {
- var FPindex = data[0].face
- var dataPasswod = {
- code: "zg/cardOperate",
- data: {
- lockerId: deviceinfo.deviceNum,
- imei: deviceinfo.imei,
- lockerUserId: personInfo.userId,
- keyId: personInfo.userId,
- action: 2,
- taskStatus: 1,
- cardType: 50,
- cardNo: info.password,
- cardIndex: FPindex,
- startTime: personLi.startTime,
- endTime: personLi.endTime,
- order: 6212,
- type: 12,
- roomName: _this.data.deviceinfo.roomName,
- cardName: _this.data.personLi.name + personLi.pzname,
- }
- }
- WXAPI.sendCommand(dataPasswod).then(res => {
- console.log(res, '获取索引', FPindex)
- if (res.success) {
- var serialNumber = res.data.serialNumber
- var fingerNo = FPindex.toString(16)
- if (fingerNo.length == 1) {
- fingerNo = '0' + fingerNo
- } else {
- fingerNo = fingerNo
- }
- ICINLocker.getSignKey(cgInfo.lockerId, cgInfo.superId, cgInfo.superId,
- (callback) => {
- console.log(callback, fingerNo)
- if (callback.status == '00') {
- ICINLocker.getCommonKey(cgInfo.lockerId, cgInfo.superId, cgInfo.superId, callback.signKey, (callback1) => {
- console.log(callback1)
- if (callback1.status == '00') {
- var startTime = personLi.startTime.toString(16).toUpperCase()
- var endTime = personLi.endTime.toString(16).toUpperCase()
- console.log(cgInfo.lockerId, cgInfo.superId, personInfo.userId, personInfo.userId, fingerNo.toUpperCase(), '--', '01', callback.signKey, startTime, endTime, callback1.commonKey)
- ICINLocker.modifyRFCard(cgInfo.lockerId, cgInfo.superId, personInfo.userId, personInfo.userId, fingerNo.toUpperCase(), '', '01', callback.signKey, startTime, endTime, callback1.commonKey, (
- callback2) => {
- console.log(callback2)
- if (callback2.status == '00') {
- var datacom = {
- code: "zg/bleSendVoucherReply",
- data: {
- lockerId: deviceinfo.deviceNum,
- serialNumber: serialNumber,
- index: FPindex,
- type: 12,
- result: 1
- }
- }
- WXAPI.sendCommand(datacom).then(res2 => {
- console.log(res2, '成功----')
- })
- wx.showToast({
- title: '下发成功',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- var data = {
- ids: [personLi.id]
- }
- wx.hideLoading()
- WXAPI.deleteCertificates(data).then(res1 => {
- if (res1.success) {
- _this.getNfc()
- wx.showToast({
- title: '删除成功',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- } else {
- wx.showToast({
- title: '删除失败',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- }
- })
- } else {
- wx.hideLoading()
- wx.showToast({
- title: '删除失败',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- var datacom = {
- code: "zg/bleSendVoucherReply",
- data: {
- lockerId: deviceinfo.deviceNum,
- serialNumber: serialNumber,
- index: FPindex,
- type: 12,
- result: 0
- }
- }
- WXAPI.sendCommand(datacom).then(res2 => {
- console.log(res2, '失败')
- })
- }
- })
- } else {
- wx.hideLoading()
- wx.showToast({
- title: '删除失败',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- var datacom = {
- code: "zg/bleSendVoucherReply",
- data: {
- lockerId: deviceinfo.deviceNum,
- serialNumber: serialNumber,
- index: FPindex,
- type: 12,
- result: 0
- }
- }
- WXAPI.sendCommand(datacom).then(res2 => {
- console.log(res2, '失败')
- })
- }
- })
- } else {
- wx.hideLoading()
- wx.showToast({
- title: '删除失败',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- var datacom = {
- code: "zg/bleSendVoucherReply",
- data: {
- lockerId: deviceinfo.deviceNum,
- serialNumber: serialNumber,
- index: FPindex,
- type: 12,
- result: 0
- }
- }
- WXAPI.sendCommand(datacom).then(res2 => {
- console.log(res2, '失败')
- })
- }
- })
- } else {
- wx.showToast({
- title: res.msg,
- mask: true,
- icon: 'none',
- duration: 2000
- })
- }
- })
- } else {
- wx.hideLoading()
- wx.showToast({
- title: '删除失败',
- mask: true,
- duration: 2000,
- icon: 'none'
- })
- }
- })
- },
- delNfcLwj(index) {
- wx.showLoading({
- title: '正在删除',
- mask: true
- })
- var personLi = this.data.NfcList[index]
- passwordLiAll = personLi
- var deviceinfo = this.data.deviceinfo
- var info = JSON.parse(personLi.content)
- var personInfo = JSON.parse(this.data.personLi.info)
- var _this = this
- this.getNFCIndexLwj(index, function (data) {
- if (data.length > 0) {
- let passwordIndex = info.index
- var dataPasswod = {
- code: "lwj/cardOperate",
- data: {
- lockerId: deviceinfo.deviceNum,
- lockerUserId: personInfo.userId,
- startTime: personLi.startTime,
- endTime: personLi.endTime,
- order: 6212,
- operateMode: 12,
- action: 2,
- cardNo: info.password,
- type: 12,
- cardName: _this.data.personLi.name,
- roomName: deviceinfo.roomName,
- cardIndex: info.index
- }
- }
- console.log(dataPasswod, 'dataPasswod', info)
- WXAPI.sendCommand(dataPasswod).then(res => {
- console.log(res, '获取索引')
- if (res.success) {
- rfCardIndex = res.data.index
- serialNumber = res.data.serialNumber
- rfCardId = info.password
- taskId = 62
- _this.initBluetooth()
- } else {
- wx.hideLoading()
- wx.showToast({
- title: res.msg,
- mask: true,
- icon: 'none',
- duration: 2000
- })
- }
- })
- } else {
- wx.hideLoading()
- wx.showToast({
- title: '删除失败',
- mask: true,
- duration: 2000,
- icon: 'none'
- })
- }
- })
- },
- delFp1(index) {
- wx.showLoading({
- title: '正在删除',
- mask: true
- })
- var cgInfo = this.data.cgInfo
- var personLi = this.data.FpList[index]
- var deviceinfo = this.data.deviceinfo
- var info = JSON.parse(personLi.content)
- var person = this.data.personLi
- var _this = this
- this.getFpIndex(index, function (data) {
- if (data.length > 0) {
- var FPindex = data[0].face
- var timestamp = moment().format("x")
- var fingerprintId = ''
- if (Number(FPindex) < 9) {
- fingerprintId = '0' + FPindex.toString(16)
- } else {
- fingerprintId = FPindex.toString(16)
- }
- var data1 = {
- managerTelephone: "18270949468",
- managerPassword: '202108',
- userTelephone: info.userTelephone,
- userPassword: info.userPassword,
- password: fingerprintId,
- startTime: "20210813010101",
- endTime: "20680813010101"
- }
- bleall.startFp1_63(data1.managerTelephone, data1.managerPassword, data1.userTelephone,
- data1.userPassword, data1.password, data1.startTime, data1.endTime, 18, timestamp,
- function (res) {
- if (res.success) {
- var dataPasswod = {
- code: "ble/operateUserInfo",
- data: {
- deviceNum: deviceinfo.deviceNum,
- imei: deviceinfo.imei,
- userTelephone: info.userTelephone,
- userPassword: info.userPassword,
- password: fingerprintId,
- userStartTime: info.passwordStartTime,
- userEndTime: info.passwordEndTime,
- passwordStartTime: info.passwordStartTime,
- passwordEndTime: info.passwordEndTime,
- operateMode: 18,
- order: 6218,
- timestamp: timestamp,
- managerTelephone: '18270949468',
- managerPassword: '202108',
- passwordLength: 10,
- permission: 4294967295,
- times: 255,
- recycleTime: "65535",
- roomName: _this.data.deviceinfo.roomName,
- cardName: _this.data.personLi.name,
- }
- }
- var data = {
- ids: [personLi.id]
- }
- wx.hideLoading()
- WXAPI.deleteCertificates(data).then(res1 => {
- if (res1.success) {
- _this.getFp()
- wx.showToast({
- title: '删除成功',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- } else {
- wx.showToast({
- title: '删除失败',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- }
- })
- WXAPI.sendCommand(dataPasswod).then(res1 => {
- console.log(res1, '获取索引')
- if (res1.success) {
- var data4 = {
- result: 1,
- serial: res1.data.serialNumber
- }
- WXAPI.updatePush(data4).then(res4 => {
-
- })
- } else {
- wx.showToast({
- title: res1.msg,
- mask: true,
- icon: 'none',
- duration: 2000
- })
- }
- })
- } else {
- wx.hideLoading()
- }
- })
- } else {
- wx.hideLoading()
- wx.showToast({
- title: '获取指纹ID失败',
- mask: true,
- duration: 2000,
- icon: 'none'
- })
- }
- })
- },
- delFpLwj(index) {
- console.log("删除指纹");
- wx.showLoading({
- title: '正在删除',
- mask: true
- })
- var cgInfo = this.data.cgInfo
- var personLi = this.data.FpList[index]
- passwordLiAll = personLi
- var deviceinfo = this.data.deviceinfo
- var info = JSON.parse(personLi.content)
- var person = this.data.personLi
- var _this = this
- console.log(personLi, "personLi");
- this.getFpIndex(index, function (data) {
- if (data.length > 0) {
- // 删除
- var dataFP = {
- code: "lwj/fpOperate",
- data: {
- fpIndex: info.index,
- lockerId: deviceinfo.deviceNum,
- lockerUserId: info.userPassword,
- keyId: info.userPassword,
- operateMode: 18,
- order: 6218,
- roomName: deviceinfo.roomName,
- startTime: personLi.startTime,
- endTime: personLi.endTime,
- action: 2,
- cardName: personLi.name
- }
- }
- console.log(dataFP);
- WXAPI.sendCommand(dataFP).then(res => {
- console.log(res, "获取索引");
- if(res.success){
- // fingerprintIndex = res.data.index
- fingerprintIndex = JSON.parse(personLi.content).index
- serialNumber = res.data.serialNumber
- taskId = 72
- _this.initBluetooth()
- }else{
- wx.hideLoading()
- wx.showToast({
- title: res.msg,
- mask: true,
- icon: 'none',
- duration: 2000
- })
- }
- })
- } else {
- wx.hideLoading()
- wx.showToast({
- title: '获取指纹ID失败',
- mask: true,
- duration: 2000,
- icon: 'none'
- })
- }
- })
- },
- delFp(index) {
- wx.showLoading({
- title: '正在删除',
- mask: true
- })
- var cgInfo = this.data.cgInfo
- var personLi = this.data.FpList[index]
- var deviceinfo = this.data.deviceinfo
- var info = JSON.parse(personLi.content)
- var personInfo = JSON.parse(this.data.personLi.info)
- var _this = this
- this.getFpIndex(index, function (data) {
- if (data.length > 0) {
- var FPindex = data[0].face
- var dataPasswod = {
- code: "zg/fpOperate",
- data: {
- lockerId: deviceinfo.deviceNum,
- imei: deviceinfo.imei,
- lockerUserId: personInfo.userId,
- keyId: personInfo.userId,
- fingerId: FPindex,
- fingerType: '0',
- startTime: personLi.startTime,
- endTime: personLi.endTime,
- order: 6218,
- action: 2,
- type: 1,
- roomName: _this.data.deviceinfo.roomName,
- cardName: _this.data.personLi.name,
- }
- }
- WXAPI.sendCommand(dataPasswod).then(res => {
- console.log(res, '获取索引')
- if (res.success) {
- var fingerNo = FPindex.toString(16)
- if (fingerNo < 10) {
- fingerNo = '000' + fingerNo
- } else {
- fingerNo = '00' + fingerNo
- }
- ICINLocker.getSignKey(cgInfo.lockerId, cgInfo.superId, cgInfo.superId,
- (callback) => {
- console.log(callback)
- if (callback.status == '00') {
- ICINLocker.getCommonKey(cgInfo.lockerId, cgInfo.superId, cgInfo.superId, callback.signKey, (callback1) => {
- console.log(callback1)
- if (callback1.status == '00') {
- var startTime = personLi.startTime.toString(16).toUpperCase()
- var endTime = personLi.endTime.toString(16).toUpperCase()
- console.log(cgInfo.lockerId, cgInfo.superId, personInfo.userId, personInfo.userId, '01', fingerNo, '', callback.signKey, '00', startTime, endTime, callback1.commonKey, '-----')
- ICINLocker.modifyFingerPrints(cgInfo.lockerId, cgInfo.superId, personInfo.userId, personInfo.userId, '01', fingerNo, '', callback.signKey, '00', startTime, endTime, callback1.commonKey, (
- callback2) => {
- console.log(callback2)
- if (callback2.status == '00') {
- var datacom = {
- code: "zg/bleSendVoucherReply",
- data: {
- lockerId: deviceinfo.deviceNum,
- serialNumber: res.data.serialNumber,
- index: FPindex,
- type: 18,
- result: 1
- }
- }
- WXAPI.sendCommand(datacom).then(res2 => {
- console.log(res2, '成功----')
- })
- wx.showToast({
- title: '下发成功',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- var data = {
- ids: [personLi.id]
- }
- wx.hideLoading()
- WXAPI.deleteCertificates(data).then(res1 => {
- if (res1.success) {
- _this.getFp()
- wx.showToast({
- title: '删除成功',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- } else {
- wx.showToast({
- title: '删除失败',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- }
- })
- } else {
- wx.hideLoading()
- wx.showToast({
- title: '删除失败',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- var datacom = {
- code: "zg/bleSendVoucherReply",
- data: {
- lockerId: deviceinfo.deviceNum,
- serialNumber: res.data.serialNumber,
- index: FPindex,
- type: 18,
- result: 0
- }
- }
- WXAPI.sendCommand(datacom).then(res2 => {
- console.log(res2, '失败')
- })
- }
- })
- } else {
- wx.hideLoading()
- wx.showToast({
- title: '删除失败',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- var datacom = {
- code: "zg/bleSendVoucherReply",
- data: {
- lockerId: deviceinfo.deviceNum,
- serialNumber: res.data.serialNumber,
- index: FPindex,
- type: 18,
- result: 0
- }
- }
- WXAPI.sendCommand(datacom).then(res2 => {
- console.log(res2, '失败')
- })
- }
- })
- } else {
- wx.hideLoading()
- wx.showToast({
- title: '删除失败',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- var datacom = {
- code: "zg/bleSendVoucherReply",
- data: {
- lockerId: deviceinfo.deviceNum,
- serialNumber: res.data.serialNumber,
- index: FPindex,
- type: 18,
- result: 0
- }
- }
- WXAPI.sendCommand(datacom).then(res2 => {
- console.log(res2, '失败')
- })
- }
- })
- } else {
- var datacom = {
- code: "zg/bleSendVoucherReply",
- data: {
- lockerId: deviceinfo.deviceNum,
- serialNumber: res.data.serialNumber,
- index: FPindex,
- type: 18,
- result: 0
- }
- }
- WXAPI.sendCommand(datacom).then(res2 => {
- console.log(res2, '失败')
- })
- var data = {
- ids: [personLi.id]
- }
- wx.hideLoading()
- WXAPI.deleteCertificates(data).then(res1 => {
- if (res1.success) {
- _this.getFp()
- }
- })
- wx.hideLoading()
- wx.showToast({
- title: res.msg,
- mask: true,
- icon: 'none',
- duration: 2000
- })
- }
- })
- } else {
- wx.hideLoading()
- wx.showToast({
- title: '获取失败',
- mask: true,
- duration: 2000,
- icon: 'none'
- })
- }
- })
- },
- delPassword1(index) {
- wx.showLoading({
- title: '正在删除',
- mask: true
- })
- var _this = this
- var deviceinfo = this.data.deviceinfo
- var passwordLi = this.data.passwordList[index]
- passwordLiAll = passwordLi
- var info = JSON.parse(passwordLi.content)
- var data = {
- managerTelephone: "18270949468",
- managerPassword: "202108",
- userTelephone: info.userTelephone,
- userPassword: info.userPassword,
- password: info.password,
- startTime: info.passwordStartTime,
- endTime: info.passwordEndTime
- }
- console.log(data)
- var timestamp = moment().format("x")
- bleall.startFp1_63(data.managerTelephone, data.managerPassword, data.userTelephone,
- data.userPassword, data.password, data.startTime, data.endTime, 9, timestamp,
- function (res) {
- if (res.success) {
- var data = {
- ids: [passwordLi.id]
- }
- WXAPI.deleteCertificates(data).then(res1 => {
- if (res1.success) {
- var data3 = {
- code: "ble/operateUserInfo",
- data: {
- deviceNum: deviceinfo.deviceNum,
- imei: deviceinfo.imei,
- userTelephone: info.userTelephone,
- userPassword: info.userPassword,
- password: info.password,
- userStartTime: info.passwordStartTime,
- userEndTime: info.passwordEndTime,
- passwordStartTime: info.passwordStartTime,
- passwordEndTime: info.passwordEndTime,
- operateMode: 9,
- order: 6209,
- timestamp: timestamp,
- managerTelephone: '18270949468',
- managerPassword: '202108',
- passwordLength: 10,
- permission: 4294967295,
- times: 255,
- recycleTime: "65535",
- roomName: _this.data.deviceinfo.roomName,
- cardName: _this.data.personLi.name,
- }
- }
- WXAPI.sendCommand(data3).then(res => {
- if (res.success) {
- var data4 = {
- result: 1,
- serial: res.data.serialNumber
- }
- WXAPI.updatePush(data4).then(res4 => {
-
- })
- }
- })
- _this.getPassword()
- wx.hideLoading()
- wx.showToast({
- title: '删除成功',
- icon: 'none',
- mask: true,
- duration: 2000
- })
- } else {
- wx.hideLoading()
- wx.showToast({
- title: '删除失败',
- icon: 'none',
- mask: true,
- duration: 2000
- })
- }
- })
- }
- if (res.data == "蓝牙功能暂不支持") {
- // wx.hideLoading()
- // wx.showLoading({
- // title: '重新连接蓝牙中'
- // })
- _this.startconnect()
- }
- })
- },
- startconnect() {
- wx.showLoading({
- title: "连接蓝牙中",
- mask: true
- })
- this.setData({
- showLoading: true
- })
- // this.setData({
- // showLoading:true
- // })
- var deviceinfo = this.data.deviceinfo
- const ble = new BLE(this.data.deviceinfo.deviceNum, emitter)
- app.globalData.ble = ble
- this.watchBLE()
- app.globalData.ble.init()
- // }
- },
- watchBLE() {
- var that = this
- if (app.globalData.ble) {
- app.globalData.ble.listen(res => {
- if (res.type == 'connect') {
- if (res.data == "未打开适配器") {
- this.setData({
- showLoading: false
- })
- wx.hideLoading()
- wx.showModal({
- title: "提示",
- content: "请检查手机蓝牙和定位功能是否打开?",
- showCancel: false,
- confirmText: "确定",
- success(res) {}
- });
- } else {
- if (res.data == '蓝牙已连接') {
- app.globalData.bleStatus = res.data
- this.setData({
- showLoading: false
- })
- if (this.data.current == 0) {
- this.sendPassword()
- } else if (that.data.current == 1) {
- this.delPassword1(this.data.currentIndex)
- } else if (that.data.current == 2) {
- this.sendFp()
- }
- }
- }
- }
- })
- }
- },
- delPasswordLwj(index) {
- wx.showLoading({
- title: '正在删除',
- mask: true
- })
- var _this = this
- var deviceinfo = this.data.deviceinfo
- var passwordLi = this.data.passwordList[index]
- passwordLiAll = passwordLi
- var info = JSON.parse(passwordLi.content)
- var personInfo = JSON.parse(this.data.personLi.info)
- var cgInfo = this.data.cgInfo
- var dataPasswod = {
- code: "lwj/passwordOperate",
- data: {
- lockerId: deviceinfo.deviceNum,
- lockerUserId: personInfo.userId,
- startTime: passwordLi.startTime,
- endTime: passwordLi.endTime,
- order: 6209,
- operateMode: 9,
- action: 2,
- password: info.password,
- type: 9,
- cardName: _this.data.personLi.name,
- roomName: deviceinfo.roomName
- }
- }
- console.log(dataPasswod, 'dataPasswod', info)
- WXAPI.sendCommand(dataPasswod).then(res => {
- console.log(res, '获取索引')
- if (res.success) {
- pincodeIndex = res.data.index
- serialNumber = res.data.serialNumber
- taskId = 52
- _this.initBluetooth()
- } else {
- wx.hideLoading()
- wx.showToast({
- title: res.msg,
- mask: true,
- icon: 'none',
- duration: 2000
- })
- }
- })
- },
- onDelRfCard: function () {
- var that = this
- wx.showLoading({
- title: '删除房卡中',
- })
- var bytes = plugin.delRfCard(lockDevice.name, basecode, 0, rfCardIndex)
- console.debug('bytes', bytes)
- that.sendBytes(bytes)
- },
- onDelFingerprint: function() {
- var that = this
- wx.showLoading({
- title: '删除指纹中',
- })
- var bytes = plugin.delFingerprint(lockDevice.name, basecode, fingerprintIndex)
- console.debug('bytes', bytes);
- that.sendBytes(bytes)
- },
- onDelPincode: function () {
- var that = this
- wx.showLoading({
- title: '删除密码中',
- })
- var bytes = plugin.delPincode(lockDevice.name, basecode, pincode, pincodeIndex)
- console.debug('bytes', bytes)
- that.sendBytes(bytes)
- },
- delPassword(index) {
- wx.showLoading({
- title: '正在删除',
- mask: true
- })
- var _this = this
- var deviceinfo = this.data.deviceinfo
- var passwordLi = this.data.passwordList[index]
- passwordLiAll = passwordLi
- var info = JSON.parse(passwordLi.content)
- var personInfo = JSON.parse(this.data.personLi.info)
- var cgInfo = this.data.cgInfo
- var dataPasswod = {
- code: "zg/tempPassword",
- data: {
- lockerId: deviceinfo.deviceNum,
- imei: deviceinfo.imei,
- passwordCount: 255,
- lockerUserId: personInfo.userId,
- keyId: personInfo.userId,
- passwordStartTime: passwordLi.startTime,
- passwordEndTime: passwordLi.endTime,
- order: 6209,
- action: 2,
- password: info.password,
- type: 1,
- cardName: _this.data.personLi.name,
- roomName: deviceinfo.roomName
- }
- }
- console.log(dataPasswod, 'dataPasswod', info)
- WXAPI.sendCommand(dataPasswod).then(res => {
- console.log(res, '获取索引')
- if (res.success) {
- var pwdNo = res.data.index.toString(16)
- // var pwdNo = res.data.index
- var passwordIndex = res.data.index
- if (pwdNo.length < 9) {
- pwdNo = '0' + pwdNo
- } else {
- pwdNo = pwdNo
- }
- console.log("1626", pwdNo);
- ICINLocker.getUserSignKey(cgInfo.lockerId, cgInfo.superId, personInfo.userId, cgInfo.superId, cgInfo.authKey, '01', (callback) => {
- console.log("1628",callback)
- if (callback.status == '00') {
- var userSignKey = callback.userSignKey
- ICINLocker.getCommonKey(cgInfo.lockerId, personInfo.userId, personInfo.userId, userSignKey, (callback) => {
- console.log("1632", callback);
- if (callback.status == '00') {
- console.log(callback, 'commonKey')
- var commonKey = callback.commonKey
- var startTime = passwordLi.startTime.toString(16).toUpperCase()
- var endTime = passwordLi.endTime.toString(16).toUpperCase()
- ICINLocker.handlePwd(deviceinfo.deviceNum, cgInfo.superId, personInfo.userId, info.password, pwdNo, cgInfo.superId, cgInfo.authKey, '', startTime, endTime, 0, commonKey, (callback) => {
- console.log("1639",callback)
- if (callback.status == '00') {
- var datacom = {
- code: "zg/bleSendVoucherReply",
- data: {
- lockerId: deviceinfo.deviceNum,
- serialNumber: res.data.serialNumber,
- index: passwordIndex,
- type: 9,
- result: 1
- }
- }
- WXAPI.sendCommand(datacom).then(res2 => {
- if (res2.success) {}
- })
- var data = {
- ids: [passwordLiAll.id]
- }
- WXAPI.deleteCertificates(data).then(res1 => {
- if (res1.success) {
- _this.getPassword()
- wx.hideLoading()
- wx.showToast({
- title: '删除成功',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- } else {
- wx.hideLoading()
- wx.showToast({
- title: '删除失败',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- }
- })
- } else {
- wx.hideLoading()
- wx.showToast({
- title: '删除失败',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- var datacom = {
- code: "zg/bleSendVoucherReply",
- data: {
- lockerId: deviceinfo.deviceNum,
- serialNumber: res.data.serialNumber,
- index: res.data.index,
- type: 9,
- result: 0
- }
- }
- WXAPI.sendCommand(datacom).then(res2 => {
- console.log(res2, '失败')
- })
- }
- })
- } else {
- wx.hideLoading()
- wx.showToast({
- title: '删除失败',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- }
- })
- } else {
- wx.hideLoading()
- wx.showToast({
- title: '删除失败',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- }
- })
- } else {
- wx.hideLoading()
- wx.showToast({
- title: res.msg,
- mask: true,
- icon: 'none',
- duration: 2000
- })
- }
- })
- },
- getPassWordMehods(content, id, type) {
- var that = this
- var data = {
- pageNum: 0,
- pageSize: 0,
- orderBy: "create_at desc",
- q: {
- cardId: id,
- password: content,
- deviceNum: this.data.deviceinfo.deviceNum,
- types: type,
- inStatus: '0,1,702'
- },
- };
- WXAPI.getCertificates(data).then(res => {
- if (res.success) {
- var dataOne = util.zlib_unzip(res.data)
- if (dataOne.length > 0) {
- wx.showModal({
- title: '提示',
- content: '该密码已存在,不能重复添加',
- success(res1) {
- if (res1.confirm) {
- console.log('用户点击确定')
- that.setData({
- password: '',
- passwordStatus: false
- })
- } else if (res1.cancel) {
- console.log('用户点击取消')
- that.setData({
- password: '',
- passwordStatus: false
- })
- }
- }
- })
- } else {
- this.setData({
- passwordStatus: true
- })
- }
- } else {
- wx.showToast({
- title: '获取失败',
- duration: '2000',
- mask: true,
- icon: 'none'
- })
- }
- })
- },
- sendPassword() {
- let passwordLength = this.data.password.toString()
- if (passwordLength.length != 6) {
- wx.showToast({
- title: '格式错误,密码为6位数字!',
- icon: 'none'
- })
- return false;
- }
- wx.showLoading({
- title: '正在添加',
- mask: true,
- })
- var time3 = new Date(this.data.datetimerange[0].replace(/-/g, '/'))
- var time4 = new Date(this.data.datetimerange[1].replace(/-/g, '/'))
- var passwordStartTimecontrast = time3.getTime() / 1000
- var passwordEndTimecontrast = time4.getTime() / 1000
- this.getPassWordMehods(this.data.password, this.data.personLi.cardId, 14)
- if (this.data.password == '') {
- wx.showToast({
- title: '密码不能为空',
- mask: true,
- duration: 2000,
- icon: 'none'
- })
- return
- }
- if (!this.data.passwordStatus) {
- wx.showToast({
- title: '已存在该密码,请重输',
- duration: 2000,
- mask: true,
- icon: 'none'
- })
- return
- }
- if (passwordStartTimecontrast > passwordEndTimecontrast) {
- wx.showToast({
- title: '开始时间不能大于结束时间',
- duration: 2000,
- mask: true,
- icon: 'none'
- })
- return
- }
- wx.showLoading({
- title: '正在添加',
- mask: true
- })
- var _this = this
- var deviceinfo = this.data.deviceinfo
- var info = JSON.parse(this.data.personLi.info)
- if (deviceinfo.manufactureId == 101) {
- var time1 = moment(this.data.datetimerange[0]).format("YYYYMMDDHHmmss")
- var time2 = moment(this.data.datetimerange[1]).format("YYYYMMDDHHmmss")
- var time3 = new Date(_this.data.datetimerange[0].replace(/-/g, '/'))
- var time4 = new Date(_this.data.datetimerange[1].replace(/-/g, '/'))
- var passwordStartTime = time3.getTime() / 1000
- var passwordEndTime = time4.getTime() / 1000
- var data1 = {
- managerTelephone: "18270949468",
- managerPassword: '202108',
- userTelephone: info.userTelephone,
- userPassword: info.userPassword,
- password: this.data.password,
- startTime: time1,
- endTime: time2
- }
- var timestamp = moment().format("x")
- bleall.startFp1_63(data1.managerTelephone, data1.managerPassword, data1.userTelephone,
- data1.userPassword, data1.password, data1.startTime, data1.endTime, 7, timestamp,
- function (res) {
- console.log(res)
- if (res.success) {
- var pzname = '',
- cardName = ''
- pzname = '蓝牙-密码' + (_this.data.passwordList.length + 1)
- cardName = _this.data.personLi.name + '-蓝牙-密码' + (_this.data.passwordList.length + 1)
- var str = {
- // cardId: this.personInfo.cardId,
- pzname: pzname,
- imei: _this.data.deviceinfo.imei,
- password: _this.data.password.toString(),
- userTelephone: JSON.parse(_this.data.personLi.info).userTelephone,
- operateMode: 7,
- userPassword: JSON.parse(_this.data.personLi.info).userPassword,
- passwordStartTime: time1,
- passwordEndTime: time2,
- is: false,
- pass: true
- }
- var data3 = {
- code: "ble/operateUserInfo",
- data: {
- deviceNum: _this.data.deviceinfo.deviceNum,
- imei: _this.data.deviceinfo.imei,
- userTelephone: info.userTelephone,
- userPassword: info.userPassword,
- password: _this.data.password,
- userStartTime: time1,
- userEndTime: time2,
- passwordStartTime: time1,
- passwordEndTime: time2,
- operateMode: 7,
- order: 6207,
- timestamp: timestamp,
- managerTelephone: '18270949468',
- managerPassword: '202108',
- passwordLength: 10,
- permission: 4294967295,
- times: 255,
- recycleTime: "65535",
- roomName: _this.data.deviceinfo.roomName,
- cardName: cardName,
- }
- }
- WXAPI.sendCommand(data3).then(res3 => {
- if (res3.success) {
- var data4 = {
- result: 1,
- serial: res3.data.serialNumber
- }
- WXAPI.updatePush(data4).then(res4 => {
-
- })
- var data = {
- cardId: _this.data.personLi.cardId,
- content: JSON.stringify(str), //operateMode:NFC-10、把人员添加到凭证-1
- deviceNum: _this.data.deviceinfo.deviceNum,
- type: 4,
- imei: _this.data.deviceinfo.imei,
- serial: res3.data.serialNumber,
- startTime: passwordStartTime,
- endTime: passwordEndTime,
- };
- var datalist = {
- cardId: _this.data.personLi.cardId,
- content: JSON.stringify(str), //operateMode:NFC-10、把人员添加到凭证-1
- type: 14,
- startTime: passwordStartTime,
- endTime: passwordEndTime,
- };
- console.log(datalist, '密码11')
- WXAPI.addCertificates(datalist).then(res6 => {
- console.log(datalist, '密码22')
- })
- WXAPI.addCertificates(data).then(res3 => {
- if (res3.success) {
- var updatedata = {
- id: res3.data,
- status: 1
- };
- WXAPI.updateCertificates(updatedata).then((res2) => {});
- _this.getPassword()
- _this.setData({
- show: false
- })
- wx.hideLoading()
- wx.showToast({
- title: '添加成功',
- icon: 'none',
- mask: true,
- duration: 2000
- })
- } else {
- wx.hideLoading()
- wx.showToast({
- title: '添加失败',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- }
- })
- } else {
- wx.showToast({
- title: res3.msg,
- mask: true,
- icon: 'none',
- duration: 2000
- })
- }
- })
- } else {
- wx.hideLoading()
- if (res.data == "蓝牙功能暂不支持") {
- // wx.showToast({
- // title: '重新连接蓝牙中',
- // duration: 2000,
- // icon: "none"
- // })
- _this.startconnect()
- } else {
- wx.showToast({
- title: '下发失败',
- mask: true,
- duration: 2000,
- icon: "none"
- })
- }
- }
- })
- } else if (deviceinfo.manufactureId == 201 || deviceinfo.manufactureId == 221) {
- var cgInfo = this.data.cgInfo
- var time1 = new Date(_this.data.datetimerange[0].replace(/-/g, '/'))
- var time2 = new Date(_this.data.datetimerange[1].replace(/-/g, '/'))
- var passwordStartTime = time1.getTime() / 1000
- var passwordEndTime = time2.getTime() / 1000
- var pzname = '',
- cardName = ''
- pzname = '蓝牙-密码' + (_this.data.passwordList.length + 1)
- cardName = _this.data.personLi.name + '-蓝牙-密码' + (_this.data.passwordList.length + 1)
- var dataPasswod = {
- code: "zg/tempPassword",
- data: {
- lockerId: deviceinfo.deviceNum,
- imei: deviceinfo.imei,
- passwordCount: 255,
- lockerUserId: info.userId,
- keyId: info.userId,
- passwordStartTime: passwordStartTime,
- passwordEndTime: passwordEndTime,
- order: 6207,
- action: 1,
- password: this.data.password.toString(),
- type: 1,
- roomName: this.data.deviceinfo.roomName,
- cardName: cardName,
- }
- }
- WXAPI.sendCommand(dataPasswod).then(res => {
- console.log(res, '获取索引')
- if (res.success) {
- var pwdNo = res.data.index
- var passwordIndex = res.data.index
- // var str = res.data.index
- pwdNo = pwdNo.toString(16)
- if (pwdNo.length < 2) {
- pwdNo = '0' + pwdNo
- }
- var startTime = passwordStartTime.toString(16).toUpperCase()
- var endTime = passwordEndTime.toString(16).toUpperCase()
- info.startTime = startTime
- info.endTime = endTime
- info.pwdNo = pwdNo
- info.password = this.data.password.toString()
- methods.bluetoothOperation_ZH(cgInfo, info, 3).then(result => {
- if (result.status == '00' || result.status == '0a') {
- var datacom = {
- code: "zg/bleSendVoucherReply",
- data: {
- lockerId: deviceinfo.deviceNum,
- serialNumber: res.data.serialNumber,
- index: passwordIndex,
- type: 7,
- result: 1
- }
- }
- var str = {
- // cardId: this.personInfo.cardId,
- imei: _this.data.deviceinfo.imei,
- pzname: pzname,
- password: _this.data.password.toString(),
- userTelephone: JSON.parse(_this.data.personLi.info).userTelephone,
- operateMode: 7,
- userPassword: JSON.parse(_this.data.personLi.info).userPassword,
- passwordStartTime: passwordStartTime,
- passwordEndTime: passwordEndTime,
- is: false,
- pass: true
- }
- var data = {
- cardId: _this.data.personLi.cardId,
- content: JSON.stringify(str), //operateMode:NFC-10、把人员添加到凭证-1
- deviceNum: _this.data.deviceinfo.deviceNum,
- type: 4,
- imei: _this.data.deviceinfo.imei,
- serial: res.data.serialNumber,
- startTime: passwordStartTime,
- endTime: passwordEndTime,
- };
- var datalist = {
- cardId: _this.data.personLi.cardId,
- content: JSON.stringify(str), //operateMode:NFC-10、把人员添加到凭证-1
- type: 14,
- startTime: passwordStartTime,
- endTime: passwordEndTime,
- };
- console.log(datalist, '密码11')
- WXAPI.addCertificates(datalist).then(res6 => {
- console.log(datalist, '密码22', res6)
- })
- console.log(data, '添加凭证')
- WXAPI.addCertificates(data).then(res3 => {
- if (res3.success) {
- var updatedata = {
- id: res3.data,
- status: 1
- };
- WXAPI.updateCertificates(updatedata).then((res2) => {});
- WXAPI.sendCommand(datacom).then(res2 => {
- if (res2.success) {}
- })
- console.log(res3, '添加凭证成功')
- _this.getPassword()
- _this.setData({
- show: false
- })
- wx.hideLoading()
- wx.showToast({
- title: '添加成功',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- } else {
- wx.hideLoading()
- wx.showToast({
- title: '添加失败',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- }
- })
- } else {
- wx.showToast({
- title: '添加失败',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- var datacom = {
- code: "zg/bleSendVoucherReply",
- data: {
- lockerId: deviceinfo.deviceNum,
- serialNumber: res.data.serialNumber,
- index: res.data.index,
- type: 7,
- result: 0
- }
- }
- WXAPI.sendCommand(datacom).then(res2 => {
- console.log(res2, '失败')
- _this.setData({
- show: false
- })
- })
- }
- }).catch(err => {
- wx.hideLoading()
- wx.showToast({
- title: '添加失败',
- icon: 'none',
- mask: true,
- duration: 2000
- })
- var datacom = {
- code: "zg/bleSendVoucherReply",
- data: {
- lockerId: deviceinfo.deviceNum,
- serialNumber: res.data.serialNumber,
- index: res.data.index,
- type: 7,
- result: 0
- }
- }
- WXAPI.sendCommand(datacom).then(res2 => {
- console.log(res2, '失败')
- _this.setData({
- show: false
- })
- })
- })
- } else {
- wx.showToast({
- title: res.msg,
- duration: 2000,
- mask: true,
- icon: 'none'
- })
- }
- })
- } else if (deviceinfo.manufactureId == 1201 || deviceinfo.manufactureId == 1241) {
- console.log(this.data.isSearch);
- if (this.data.isSearch) {
- wx.hideLoading()
- this.addPincode()
- } else {
- this.searchDevicesMethods()
- }
- }
- },
- onAddPincode: function () {
- console.log("2073123");
- var that = this
- wx.showLoading({
- title: '添加密码中',
- })
- var info = JSON.parse(this.data.personLi.info)
- let deviceinfo = this.data.deviceinfo
- var time1 = new Date(that.data.starttime.replace(/-/g, '/'))
- var time2 = new Date(that.data.endtime.replace(/-/g, '/'))
- var passwordStartTime = time1.getTime() / 1000
- var passwordEndTime = time2.getTime() / 1000
- var pzname = '',
- cardName = ''
- pzname = '蓝牙-密码' + (that.data.passwordList.length + 1)
- cardName = that.data.personLi.name + '-蓝牙-密码' + (that.data.passwordList.length + 1)
- var dataPasswod = {
- code: "lwj/passwordOperate",
- data: {
- lockerId: deviceinfo.deviceNum,
- lockerUserId: info.userId,
- startTime: passwordStartTime,
- endTime: passwordEndTime,
- order: 6207,
- operateMode: 7,
- action: 1,
- password: this.data.password.toString(),
- type: 7,
- roomName: this.data.deviceinfo.roomName,
- cardName: cardName,
- }
- }
- console.log(dataPasswod);
- WXAPI.sendCommand(dataPasswod).then(res => {
- console.log(res, '获取索引')
- if (res.success) {
- var pwdNo = res.data.index
- serialNumber = res.data.serialNumber
- pincodeIndex = pwdNo
- that.sendAddPincode()
- }
- })
- // var startTime = util1.getLocalTime(8)
- // var endTime = new Date(startTime.getTime() + 5 * 60 * 1000) //有效期5分钟
- },
- sendAddPincode() {
- var that = this
- var startTime = new Date(Number(moment(that.data.starttime).format('x')))
- var endTime = new Date(Number(moment(that.data.endtime).format('x')))
- pincode = this.data.password
- console.log(lockDevice.name, basecode, pincode, pincodeIndex, startTime, endTime)
- let bytes = plugin.addPincode(lockDevice.name, basecode, pincode, pincodeIndex, startTime, endTime)
- console.log('bytes', bytes)
- that.sendBytes(bytes)
- },
- addPincode: function () {
- console.log("2124");
- var that = this
- taskId = 51
- that.initBluetooth()
- },
- initBluetooth: function () {
- var that = this
- wx.getConnectedBluetoothDevices({
- services: [config.uuid.serviceUuid],
- success: function (res) {
- res.devices.map(function (it) {
- if (it.deviceId == connectedDeviceId || it.name == that.data.deviceinfo.deviceNum) {
- isConnected = true
- }
- })
- that.setData({
- isConnected: isConnected
- })
- console.log(isInitReady, 'isConnected', isConnected)
- if (isConnected) {
- console.log("2144");
- if (isInitReady) {
- console.log("2146");
- that.doWork()
- } else {
- that.setupConnection()
- }
- } else {
- that.connectTo()
- }
- },
- })
- },
- setupConnection: function () {
- var that = this
- wx.showLoading({
- title: '初始化连接中',
- })
- wx.getBLEDeviceServices({
- deviceId: lockDevice.deviceId,
- success: function (res) {
- console.log('Services', res)
- wx.getBLEDeviceCharacteristics({
- deviceId: lockDevice.deviceId,
- serviceId: config.uuid.serviceUuid.toUpperCase(),
- success: function (res) {
- console.log('Characteristics', res)
- wx.showToast({
- title: '连接成功',
- duration: 1000,
- icon: 'none'
- })
- wx.onBLECharacteristicValueChange(function (res) {
- console.log(res, 'reslllllll')
- var bytes = new Uint8Array(res.value)
- console.log('bytes', bytes)
- var data = plugin.parseBytes(lockDevice.name, basecode, bytes)
- console.log('data', data)
- switch (data.cmd) {
- case 'reportLockBattery': {
- if (data.data.battery < 10) {
- wx.showModal({
- title: '电量报警',
- content: `门锁当前电量${data.data.battery}%!\n电量严重不足,请立即更换电池!`,
- showCancel: false
- })
- } else if (data.data.battery < 30) {
- wx.showModal({
- title: '电量预警',
- content: `门锁当前电量${data.data.battery}%!\n请及时更换电池!`,
- showCancel: false
- })
- }
- break
- }
- case 'reportRfCardResult': {
- if (taskId == 61) {
- wx.showModal({
- title: '检测到新卡',
- content: `是否添加此房卡,卡号:${data.data.cardId}?`,
- success: function (res) {
- if (res.confirm) {
- console.log(data.data, 'rfCardIdrfCardId')
- // rfCardId = randomMethods()//data.data.cardId
- that.onAddRfCard()
- }
- }
- })
- } else {
- if (lockModel > 70) {
- if (data.data.isValid) {
- wx.showModal({
- title: '提示',
- content: `房卡开锁成功,序号:${data.data.index}!`,
- showCancel: false
- })
- } else {
- wx.showModal({
- title: '提示',
- content: `多次刷房卡开锁失败!`,
- showCancel: false
- })
- }
- } else {
- if (data.data.isValid) {
- wx.showModal({
- title: '提示',
- content: `房卡开锁成功,卡号:${data.data.cardId}!`,
- showCancel: false
- })
- } else {
- wx.showModal({
- title: '提示',
- content: `房卡未授权,卡号:${data.data.cardId}!`,
- showCancel: false
- })
- }
- }
- }
- break
- }
- case 'reportPincodeResult': {
- if (lockModel > 70) {
- if (data.data.isValid) {
- wx.showModal({
- title: '提示',
- content: `密码开锁成功,序号:${data.data.index}!`,
- showCancel: false
- })
- } else {
- wx.showModal({
- title: '提示',
- content: `多次密码开锁失败!`,
- showCancel: false
- })
- }
- } else {
- if (data.data.isValid) {
- wx.showModal({
- title: '提示',
- content: `密码:${data.data.pincode}开锁成功!`,
- showCancel: false
- })
- } else {
- wx.showModal({
- title: '提示',
- content: `密码:${data.data.pincode}未授权!`,
- showCancel: false
- })
- }
- }
- break
- }
- case 'reportFingerprintResult': {
- if (data.data.isValid) {
- wx.showModal({
- title: '提示',
- content: `指纹开锁成功,序号:${data.data.index}!`,
- showCancel: false
- })
- } else {
- wx.showModal({
- title: '提示',
- content: `多次指纹开锁失败!`,
- showCancel: false
- })
- }
- break
- }
- case 'queryLockState': {
- wx.hideLoading()
- if (data.code != 200) {
- wx.showModal({
- title: '提示',
- content: '查询失败!',
- showCancel: false,
- success: function (res) {}
- })
- break
- }
- that.setData({
- lock: {
- mac: data.data.mac,
- lockType: util1.getLockType(lockModel),
- },
- isBindLock: data.data.isBind
- })
- lockMac = data.data.mac
-
- if (taskId > 0) {
- if (data.data.isBind) {
- // wx.showModal({
- // title: data.data.mac,
- // content: '此设备已经硬件绑定!',
- // showCancel: false,
- // success: function (res) {}
- // })
- } else {
- wx.showModal({
- title: data.data.mac,
- content: '此设备硬件未绑定!',
- showCancel: false,
- success: function (res) {}
- })
- }
- }
- taskId = 0
- break
- }
- case 'queryLockBattery': {
- wx.hideLoading()
- if (data.code != 200) {
- wx.showModal({
- title: '提示',
- content: '查询失败!',
- showCancel: false,
- success: function (res) {}
- })
- break
- }
- taskId = 0
- wx.showModal({
- title: '提示',
- content: `此门锁电量为${data.data.battery}%`,
- showCancel: false,
- success: function (res) {}
- })
- break
- }
- case 'queryNbImei': {
- wx.hideLoading()
- if (data.code != 200) {
- wx.showModal({
- title: '提示',
- content: '查询失败!',
- showCancel: false,
- success: function (res) {}
- })
- break
- }
- taskId = 0
- wx.showModal({
- title: '提示',
- content: `此NB设备IMEI为${data.data.imei}`,
- showCancel: false,
- success: function (res) {}
- })
- break
- }
- case 'setNbFun': {
- wx.hideLoading()
- if (data.code != 200) {
- wx.showModal({
- title: '提示',
- content: '设置Nb功能失败!',
- showCancel: false,
- success: function (res) {}
- })
- break
- }
- taskId = 0
- wx.showModal({
- title: '提示',
- content: that.data.isNbEnable ? 'NB功能已禁用' : 'NB功能已打开',
- showCancel: false,
- })
- that.setData({
- isNbEnable: !that.data.isNbEnable
- })
- break
- }
- case 'sendBindLock': {
- wx.hideLoading()
- if (data.code != 200) {
- wx.showModal({
- title: '提示',
- content: '绑定失败!',
- showCancel: false,
- success: function (res) {}
- })
- break
- }
- taskId = 0
- that.setData({
- isBindLock: data.data.isBind
- })
- if (data.data.isBind) {
- wx.showToast({
- title: '绑定成功!',
- })
- } else {
- wx.showToast({
- title: '绑定失败!',
- })
- }
- break
- }
-
- case 'sendUnbindLock': {
- wx.hideLoading()
- if (data.code != 200) {
- wx.showModal({
- title: '提示',
- content: '解绑失败!',
- showCancel: false,
- success: function (res) {}
- })
- break
- }
- taskId = 0
- that.setData({
- isBindLock: data.data.isBind
- })
- if (data.data.isBind) {
- wx.showToast({
- title: '解绑失败!',
- })
- } else {
- wx.showToast({
- title: '解绑成功!',
- })
- }
- break
- }
- case 'login1':
- case 'sendOpenLockP1': {
- if (data.code != 200) {
- wx.hideLoading()
- if (taskId == 41) {
- wx.showModal({
- title: '提示',
- content: that.data.isJack ? '上电失败!' : '解锁失败!',
- showCancel: false,
- success: function (res) {}
- })
- } else if (taskId == 32) {
- wx.showModal({
- title: '提示',
- content: '登录失败!',
- showCancel: false,
- success: function (res) {}
- })
- }
-
- break
- }
- if (taskId == 41) {
- var bytes = plugin.sendOpenLockP2(lockDevice.name, basecode, data.data.randomN)
- console.debug('bytes', bytes)
- that.sendBytes(bytes)
- } else if (taskId == 32) {
- var bytes = plugin.login2(lockDevice.name, basecode, data.data.randomN)
- console.debug('bytes', bytes)
- that.sendBytes(bytes)
- }
- break;
- }
- case 'login':
- case 'sendOpenLockP2': {
- wx.hideLoading()
- if (data.code != 200) {
- if (taskId == 41) {
- wx.showModal({
- title: '提示',
- content: that.data.isJack ? '上电失败!' : '解锁失败!',
- showCancel: false,
- success: function (res) {}
- })
- } else if (taskId == 32) {
- wx.showModal({
- title: '提示',
- content: '登录失败!',
- showCancel: false,
- success: function (res) {}
- })
- }
- break
- }
-
- isLockLogin = true
- if (taskId == 41) {
- // var data = {
- // code: "zg/bleUnlockRecord",
- // data: {
- // lockerId: that.data.deviceinfo.deviceNum,
- // roomId:that.data.deviceinfo.roomId,
- // roomName:that.data.deviceinfo.roomName,
- // cardName:that.data.userInfo.username
- // }
- // }
- var data = {
- code: "ble/bleUnlockRecord",
- data: {
- deviceNum: that.data.deviceinfo.deviceNum,
- roomId: that.data.deviceinfo.roomId,
- roomName: that.data.deviceinfo.roomName,
- cardName: that.data.userInfo.username,
- productId: that.data.deviceinfo.manufactureId,
- userId: '29283991'
- }
- }
- WXAPI.sendCommand(data).then(res => {
- console.log(res)
- })
- wx.showToast({
- title: that.data.isJack ? '上电成功!' : '解锁成功!',
- })
- } else if (taskId == 32) {
- wx.showToast({
- title: '登录成功!',
- })
- }
- taskId = 0
- break;
- }
-
- case 'syncClock': {
- wx.hideLoading()
- if (data.code != 200) {
- wx.showModal({
- title: '提示',
- content: '同步时间失败!' + data.data.msg,
- showCancel: false,
- success: function (res) {}
- })
- break
- }
- taskId = 0
- wx.showModal({
- title: '提示',
- content: '时间更新成功!',
- showCancel: false
- })
- break;
- }
- case 'addPincode': {
- // console.log(data.data,'data.data')
- // wx.hideLoading()
- let data2 = {
- "code": "ble/bleSendVoucherReply",
- "data": {
- "deviceNum": that.data.deviceinfo.deviceNum,
- "serialNumber": serialNumber,
- "index": pincodeIndex,
- "type": 7,
- "result": 1,
- "productId": that.data.deviceinfo.manufactureId
- }
- }
- if (data.code != 200) {
- data2 = {
- "code": "ble/bleSendVoucherReply",
- "data": {
- "deviceNum": that.data.deviceinfo.deviceNum,
- "serialNumber": serialNumber,
- "index": pincodeIndex,
- "type": 7,
- "result": 0,
- "productId": that.data.deviceinfo.manufactureId
- }
- }
- WXAPI.sendCommand(data2).then(res => {
-
- })
- wx.showModal({
- title: '提示',
- content: '添加密码失败!' + data.data.msg,
- showCancel: false,
- success: function (res) {}
- })
- break
- }
- var time1 = new Date(that.data.starttime.replace(/-/g, '/'))
- var time2 = new Date(that.data.endtime.replace(/-/g, '/'))
- var passwordStartTime = time1.getTime() / 1000
- var passwordEndTime = time2.getTime() / 1000
- var pzname = '',
- cardName = '';
- pzname = '蓝牙-密码' + (that.data.passwordList.length + 1)
- cardName = that.data.personLi.name + '-蓝牙-密码' + (that.data.passwordList.length + 1)
- var str = {
- // cardId: this.personInfo.cardId,
- imei: that.data.deviceinfo.imei,
- pzname: pzname,
- password: that.data.password.toString(),
- userTelephone: JSON.parse(that.data.personLi.info).userTelephone,
- operateMode: 7,
- userPassword: JSON.parse(that.data.personLi.info).userPassword,
- passwordStartTime: passwordStartTime,
- passwordEndTime: passwordEndTime,
- index: pincodeIndex,
- is: false,
- pass: true
- }
- var data1 = {
- cardId: that.data.personLi.cardId,
- content: JSON.stringify(str), //operateMode:NFC-10、把人员添加到凭证-1
- deviceNum: that.data.deviceinfo.deviceNum,
- type: 4,
- imei: that.data.deviceinfo.imei,
- serial: serialNumber,
- startTime: passwordStartTime,
- endTime: passwordEndTime,
- };
- var datalist = {
- cardId: that.data.personLi.cardId,
- content: JSON.stringify(str), //operateMode:NFC-10、把人员添加到凭证-1
- type: 14,
- startTime: passwordStartTime,
- endTime: passwordEndTime,
- };
- WXAPI.addCertificates(datalist).then(res6 => {
- console.log(datalist, '密码22', res6)
- })
- WXAPI.addCertificates(data1).then(res3 => {
- if (res3.success) {
- var updatedata = {
- id: res3.data,
- status: 1
- };
- WXAPI.updateCertificates(updatedata).then((res2) => {});
- WXAPI.sendCommand(data2).then(res => {
-
- })
- that.getPassword()
- that.setData({
- show: false
- })
- wx.hideLoading()
- wx.showToast({
- title: '添加成功',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- } else {
- wx.hideLoading()
- wx.showToast({
- title: '添加失败',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- }
- })
- taskId = 0
- that.setData({
- isPincodeAdd: true,
- show: false
- })
- wx.showModal({
- title: '提示',
- content: `添加密码${pincode}成功!`,
- showCancel: false
- })
- break
- }
-
- case 'delPincode': {
- wx.hideLoading()
- if (data.code != 200) {
- var datacom = {
- code: "lwj/passwordOperate",
- data: {
- lockerId: that.data.deviceinfo.deviceNum,
- serialNumber: serialNumber,
- index: pincodeIndex,
- action: 2,
- type: 9,
- result: 0
- }
- }
- WXAPI.sendCommand(datacom).then(res2 => {
- console.log(res2, '失败')
- })
-
- wx.showModal({
- title: '提示',
- content: '删除密码失败!',
- showCancel: false,
- success: function (res) {}
- })
- break
- }
- taskId = 0
- wx.showModal({
- title: '提示',
- content: `删除密码成功!`,
- showCancel: false,
- })
- var datacom = {
- code: "lwj/passwordOperate",
- data: {
- lockerId: that.data.deviceinfo.deviceNum,
- serialNumber: serialNumber,
- index: pincodeIndex,
- action: 2,
- type: 9,
- result: 1
- }
- }
- WXAPI.sendCommand(datacom).then(res2 => {
- if (res2.success) {}
- })
- var data = {
- ids: [passwordLiAll.id]
- }
- WXAPI.deleteCertificates(data).then(res1 => {
- if (res1.success) {
- that.getPassword()
- wx.hideLoading()
- wx.showToast({
- title: '删除成功',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- } else {
- wx.hideLoading()
- wx.showToast({
- title: '删除失败',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- }
- })
- that.setData({
- isPincodeAdd: false
- })
- pincode = -1
- pincodeIndex = -1
- break
- }
-
- case 'addRfCard': {
- wx.hideLoading()
- if (data.code == 100) {
- wx.showLoading({
- title: data.data.msg,
- })
- break
- } else if (data.code != 200) {
- var datacom = {
- code: "ble/bleSendVoucherReply",
- data: {
- deviceNum: that.data.deviceinfo.deviceNum,
- serialNumber: serialNumber,
- index: rfCardIndex,
- type: ADD_NFC_MODE,
- cardNo: '',
- result: 0,
- productId: that.data.deviceinfo.manufactureId
- }
- }
- WXAPI.sendCommand(datacom).then(res2 => {})
- wx.showModal({
- title: '提示',
- content: '添加房卡失败!' + data.data.msg,
- showCancel: false,
- success: function (res) {}
- })
- break
- }
- taskId = 0
- that.setData({
- isRfCardAdd: true
- })
-
- if (lockModel > 70) {
- console.log(data.data, 'rfCardIndexrfCardIndex')
- // rfCardId = randomMethods()
- wx.showModal({
- title: '提示',
- content: `添加房卡成功,序号${rfCardIndex}!`,
- showCancel: false
- })
- that.addRfcardCertificates()
- } else {
- console.log(data.data, 'rfCardIndexrfCardIndex1')
- // rfCardId = randomMethods()
- wx.showModal({
- title: '提示',
- content: `添加房卡成功,卡号${rfCardId}!`,
- showCancel: false
- })
- that.addRfcardCertificates()
- }
- break
- }
-
- case 'delRfCard': {
- wx.hideLoading()
- if (data.code != 200) {
- var datacom = {
- code: "lwj/cardOperate",
- data: {
- lockerId: that.data.deviceinfo.deviceNum,
- serialNumber: serialNumber,
- index: rfCardIndex,
- action: 2,
- type: 12,
- result: 0
- }
- }
- WXAPI.sendCommand(datacom).then(res2 => {
- console.log(res2, '失败2933')
- })
- wx.showModal({
- title: '提示',
- content: '删除房卡失败!',
- showCancel: false,
- success: function (res) {}
- })
- break
- }
- taskId = 0
- that.setData({
- isRfCardAdd: false
- })
- if (lockModel > 70) {
- wx.showModal({
- title: '提示',
- content: `删除房卡成功,序号${rfCardIndex}!`,
- showCancel: false,
- })
- } else {
- wx.showModal({
- title: '提示',
- content: `删除房卡成功,卡号${rfCardId}!`,
- showCancel: false,
- })
- }
- var datacom = {
- code: "lwj/cardOperate",
- data: {
- lockerId: that.data.deviceinfo.deviceNum,
- serialNumber: serialNumber,
- index: rfCardIndex,
- action: 2,
- type: 12,
- result: 1
- }
- }
- WXAPI.sendCommand(datacom).then(res2 => {
- console.log(res2, '失败')
- })
- var data = {
- ids: [passwordLiAll.id]
- }
- WXAPI.deleteCertificates(data).then(res1 => {
- console.log(res1, '2936');
- if (res1.success) {
- that.getNfc()
- wx.showToast({
- title: '删除成功',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- } else {
- wx.showToast({
- title: '删除失败',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- }
- })
- that.setData({
- isRfCardAdd: false
- })
- rfCardId = -1
- rfCardIndex = -1
- break
- }
-
- case 'addFingerprint': {
- wx.hideLoading()
- if (data.code == 100) {
- wx.showLoading({
- title: data.data.msg,
- })
- break
- } else if (data.code != 200) {
- wx.showModal({
- title: '提示',
- content: '添加指纹失败!' + data.data.msg,
- showCancel: false,
- success: function (res) {}
- })
- var datacom = {
- code: "ble/bleSendVoucherReply",
- data: {
- deviceNum: that.data.deviceinfo.deviceNum,
- serialNumber: serialNumber,
- index: 0,
- type: 16,
- result: 0,
- productId: that.data.deviceinfo.manufactureId
- }
- }
- WXAPI.sendCommand(datacom).then(res2 => {
- if (res2.success) {}
- })
- break
- }
- taskId = 0
- that.setData({
- isFingerprintAdd: true
- })
- wx.showModal({
- title: '提示',
- content: `添加指纹成功,序号${fingerprintIndex}!`,
- showCancel: false
- })
-
- var time1 = new Date(that.data.starttime.replace(/-/g, '/'))
- var time2 = new Date(that.data.endtime.replace(/-/g, '/'))
- var passwordStartTime = time1.getTime() / 1000
- var passwordEndTime = time2.getTime() / 1000
- var cardName = '',
- pzname = ''
- if (that.data.pzname) {
- cardName = that.data.personLi.name + '-蓝牙-' + that.data.pzname
- pzname = '蓝牙-' + that.data.pzname
- } else {
- cardName = that.data.personLi.name + '-蓝牙-指纹' + (that.data.FpList.length + 1)
- pzname = '蓝牙-指纹' + (that.data.FpList.length + 1)
- }
-
- var str = {
- // cardId: this.personInfo.cardId,
- imei: that.data.deviceinfo.imei,
- pzname: pzname,
- password: '',
- fingerprintAlias: that.data.radioDetil,
- userTelephone: JSON.parse(that.data.personLi.info).userTelephone,
- operateMode: 16,
- userPassword: JSON.parse(that.data.personLi.info).userPassword,
- passwordStartTime: passwordStartTime,
- passwordEndTime: passwordEndTime,
- index: fingerprintIndex,
- is: false,
- pass: true
- }
- var data2 = {
- cardId: that.data.personLi.cardId,
- content: JSON.stringify(str), //operateMode:NFC-10、把人员添加到凭证-1
- deviceNum: that.data.deviceinfo.deviceNum,
- type: 1,
- imei: that.data.deviceinfo.imei,
- serial: serialNumber,
- startTime: passwordStartTime,
- endTime: passwordEndTime,
- status: 1
- };
- var datalist = {
- cardId: that.data.personLi.cardId,
- content: JSON.stringify(str), //operateMode:NFC-10、把人员添加到凭证-1
- type: 11,
- startTime: passwordStartTime,
- endTime: passwordEndTime
- };
- var datacom = {
- code: "ble/bleSendVoucherReply",
- data: {
- deviceNum: that.data.deviceinfo.deviceNum,
- serialNumber: serialNumber,
- index: fingerprintIndex,
- type: 16,
- result: 1,
- productId: that.data.deviceinfo.manufactureId
- }
- }
- WXAPI.addCertificates(datalist).then(res6 => {})
- console.log(data, '添加凭证')
- WXAPI.addCertificates(data2).then(res3 => {
- if (res3.success) {
- var updatedata = {
- id: res3.data,
- status: 1
- };
- WXAPI.updateCertificates(updatedata).then((res2) => {});
- WXAPI.sendCommand(datacom).then(res2 => {
- if (res2.success) {}
- })
- console.log(res3, '添加凭证成功')
- that.getFp()
- that.setData({
- show: false
- })
- wx.hideLoading()
- wx.showToast({
- title: '添加成功',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- } else {
- wx.hideLoading()
- wx.showToast({
- title: '添加失败',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- }
- })
- break
- }
-
- case 'delFingerprint': {
- wx.hideLoading()
- if (data.code != 200) {
- var datacom = {
- code: "lwj/fpOperate",
- data: {
- lockerId: that.data.deviceinfo.deviceNum,
- serialNumber: serialNumber,
- index: fingerprintIndex,
- action: 2,
- type: 18,
- result: 0
- }
- }
- WXAPI.sendCommand(datacom).then(res2 => {
- console.log(res2, '失败')
- })
- wx.showModal({
- title: '提示',
- content: '删除指纹失败!',
- showCancel: false,
- success: function (res) {}
- })
- break
- }
- taskId = 0
- wx.showModal({
- title: '提示',
- content: `删除指纹成功,序号${fingerprintIndex}!`,
- showCancel: false,
- })
- var datacom = {
- code: "lwj/fpOperate",
- data: {
- lockerId: that.data.deviceinfo.deviceNum,
- serialNumber: serialNumber,
- index: fingerprintIndex,
- action: 2,
- type: 18,
- result: 1
- }
- }
- WXAPI.sendCommand(datacom).then(res2 => {
- if (res2.success) {}
- })
- var data = {
- ids: [passwordLiAll.id]
- }
- WXAPI.deleteCertificates(data).then(res1 => {
- if (res1.success) {
- that.getFp()
- wx.hideLoading()
- wx.showToast({
- title: '删除成功',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- } else {
- wx.hideLoading()
- wx.showToast({
- title: '删除失败',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- }
- })
- that.setData({
- isFingerprintAdd: false
- })
- fingerprintIndex = -1
- break
- }
-
- case 'changeAdminPincode': {
- wx.hideLoading()
- if (data.code != 200) {
- wx.showModal({
- title: '提示',
- content: '修改管理密码失败!',
- showCancel: false,
- success: function (res) {}
- })
- break
- }
- taskId = 0
- wx.showToast({
- title: '修改管理密码成功!',
- })
- }
-
- case 'queryLockSlotState': {
- wx.hideLoading()
- if (data.code != 200) {
- wx.showModal({
- title: '提示',
- content: '查询失败!',
- showCancel: false,
- success: function (res) {}
- })
- break
- }
- taskId = 0
- wx.showModal({
- title: '提示',
- content: data.data.state == 0 ? '此门锁方舌关闭' : '此门锁方舌打开',
- showCancel: false,
- success: function (res) {}
- })
- break
- }
-
- case 'queryLockUnlockState': {
- wx.hideLoading()
- if (data.code != 200) {
- wx.showModal({
- title: '提示',
- content: '查询失败!',
- showCancel: false,
- success: function (res) {}
- })
- break
- }
- taskId = 0
- wx.showModal({
- title: '提示',
- content: data.data.state == 0 ? '此门锁已关闭' : '此门锁已打开',
- showCancel: false,
- success: function (res) {}
- })
- break
- }
-
- case 'setLockUnlockState': {
- wx.hideLoading()
- if (data.code != 200) {
- wx.showModal({
- title: '提示',
- content: '设置常开指令失败!',
- showCancel: false,
- success: function (res) {}
- })
- break
- }
- taskId = 0
- wx.showModal({
- title: '提示',
- content: data.data.state == 0 ? '常开模式已退出' : '常开模式已开启',
- showCancel: false,
- })
- that.setData({
- isUnloked: data.data.state == 1
- })
- break
- }
-
- case 'setLockMuteState': {
- wx.hideLoading()
- if (data.code != 200) {
- wx.showModal({
- title: '提示',
- content: '设置静音指令失败!',
- showCancel: false,
- success: function (res) {}
- })
- break
- }
- taskId = 0
- wx.showModal({
- title: '提示',
- content: data.data.state == 1 ? '静音模式已退出' : '静音模式已开启',
- showCancel: false,
- })
- that.setData({
- isMuted: data.data.state == 0
- })
- break
- }
- }
- })
-
- wx.notifyBLECharacteristicValueChange({
- deviceId: lockDevice.deviceId,
- serviceId: config.uuid.serviceUuid.toUpperCase(),
- characteristicId: config.uuid.notifyUuid.toUpperCase(),
- state: true,
- success: function (res) {
- console.log('setupNotify', res)
- isInitReady = true
- setTimeout(function () {
- wx.hideLoading()
- // that.onQueryBindState()
- that.login()
- }, 500)
- },
- })
- },
- })
- },
- })
- },
- onQueryBindState: function () {
- var that = this
- wx.showLoading({
- title: '查询中',
- })
-
- var bytes = plugin.queryLockState(lockDevice.name)
- console.debug('bytes', bytes)
- that.sendBytes(bytes)
- },
- queryBindState: function () {
- var that = this
- taskId = 21
- that.initBluetooth()
- },
- doWork: function () {
- var that = this
- console.log(taskId);
- switch (taskId) {
- case 11: {
- that.onBindLock()
- break
- }
- case 12: {
- that.onUnbindLock()
- break
- }
- case 21: {
- that.onQueryBindState()
- break
- }
- case 22: {
- that.onQueryBattery()
- break
- }
-
- case 31: {
- that.onQueryNbImei()
- break
- }
- case 32: {
- that.onLogin()
- break
- }
- case 41: {
- that.LwjonOpenLock()
- break
- }
- case 42: {
- that.onSyncClock()
- break
- }
- case 51: {
- that.onAddPincode()
- break
- }
- case 52: {
- that.onDelPincode()
- break
- }
- case 61: {
- // that.onAddRfCard()
- // if (lockModel > 70) {
- that.sendAddRfcard()
- // } else {
- // wx.showModal({
- // title: '提示',
- // content: '请刷卡!',
- // showCancel: false
- // })
- // }
- break
- }
- case 62: {
- that.onDelRfCard()
- break
- }
- case 71: {
- that.onAddFingerprint()
- break
- }
- case 72: {
- that.onDelFingerprint()
- break
- }
- case 81: {
- that.onChangeAdminPincode()
- break
- }
-
- case 91: {
- that.onQueryLockSlotState()
- break
- }
-
- case 92: {
- that.onQueryLockUnlockState()
- break
- }
-
- case 101: {
- that.onChangeLockUnlockState()
- break
- }
-
- case 102: {
- that.onChangeLockMutedState()
- break
- }
- case 111: {
- this.onChangeLockNbState()
- }
- default: {
-
- }
- }
- },
- connectTo: function () {
- var that = this
- wx.showLoading({
- title: '连接中',
- })
- wx.createBLEConnection({
- deviceId: lockDevice.deviceId,
- timeout: config.ble.connectTimeOut,
- success: function (res) {
- console.log('connectTo', res)
- isConnected = true
- // app.globalData.isConnected = true
- wx.hideLoading()
- setTimeout(function () {
- that.setupConnection()
- }, 500)
- },
- fail: function (e) {
- console.debug('connectTo', e)
- wx.hideLoading()
- switch (e.errCode) {
- case 10003: {
- wx.showModal({
- title: '连接失败',
- content: '是否重新连接?',
- success: function (res) {
- if (res.confirm) {
- that.connectTo()
- }
- }
- })
- break
- }
- case 10012: {
- wx.showModal({
- title: '连接失败',
- content: '蓝牙连接超时',
- showCancel: false
- })
- break
- }
- case 10002: {
- wx.showModal({
- title: '连接失败',
- content: '没有找到指定设备',
- showCancel: false
- })
- break
- }
- }
- }
- })
- },
-
- searchDevicesMethods() {
- var that = this;
- wx.showLoading({
- title: '正在搜索',
- // mask: true
- })
- this.setData({
- searchClick: false
- })
- wx.openBluetoothAdapter({
- success: function (res) {
- wx.startBluetoothDevicesDiscovery({
- success: function (res) {
- wx.getBluetoothDevices({
- success: function (res) {
- res.devices.map(it => {
- var status = it.name.indexOf('WSL_')
- if (status != -1) {
- if (it.RSSI != 127) {
- if (it.advertisData != null) {
- it.adData = util1.ab2hex(it.advertisData)
- if (it.adData.length > 10) {
- var macStr = it.adData.substring(4, 16).toUpperCase()
- //console.log('macStr', macStr)
- it.mac = macStr.substr(10, 2) + ':' + macStr.substr(8, 2) + ':' + macStr.substr(6, 2) + ':' + macStr.substr(4, 2) + ':' + macStr.substr(2, 2) + ':' + macStr.substr(0, 2)
- if (it.adData.substring(1, 2) == '1') {
- it.isLightOn = true
- it.textColor = 'green'
- } else {
- it.isLightOn = false
- it.textColor = 'black'
- }
- if (it.adData.substring(3, 4) == '1') {
- it.textColor = 'pink'
- it.isBind = true
- } else {
- it.isBind = false
- }
- }
- } else {
- it.textColor = 'black'
- }
- lockModel = util1.getLockModel(it.name)
- it.lockType = util1.getLockType(lockModel)
- if (it.name == that.data.deviceinfo.deviceNum) {
- app.addDeviceWithDevName(it.name, it)
- lockDevice = it
- connectedDeviceId = it.deviceId
- that.setData({
- isSearch: true
- })
- that.initBluetooth()
- }
- }
- }
- })
- if (!that.data.isSearch) {
- that.searchDevicesMethods()
- }
- }
- })
- },
- fail: function (res) {
- wx.hideLoading({
- success: (res) => {
- wx.showToast({
- title: res.errMsg,
- duration: 2000,
- icon: 'none'
- })
- },
- })
- }
- })
- },
- fail: function (res) {
- console.log('请打开蓝牙和定位功能')
- wx.hideLoading({
- success: (res) => {
- wx.showToast({
- title: '请打开蓝牙和定位功能',
- duration: 2000,
- icon: 'none'
- })
- },
- })
- }
- })
- },
- LwjonOpenLock: function () {
- var that = this
- wx.showLoading({
- title: that.data.isJack ? '上电中' : '解锁中',
- })
- console.log(lockDevice.name, 'lockDevice.name0')
- var bytes = plugin.sendOpenLockP1(lockDevice.name, basecode)
- console.debug('bytes', bytes)
- that.sendBytes(bytes)
- },
- openLock: function () {
- var that = this
- taskId = 41
- that.initBluetooth()
- },
- sendBytes(bytes) {
- setTimeout(() => {
- wx.writeBLECharacteristicValue({
- deviceId: lockDevice.deviceId,
- serviceId: config.uuid.serviceUuid.toUpperCase(),
- characteristicId: config.uuid.writeUuid.toUpperCase(),
- value: bytes,
- success: function (res) {
-
- },
- })
- }, 50)
- },
- sendNfc() {
- var time3 = new Date(this.data.datetimerange[0].replace(/-/g, '/'))
- var time4 = new Date(this.data.datetimerange[1].replace(/-/g, '/'))
- var passwordStartTimecontrast = time3.getTime() / 1000
- var passwordEndTimecontrast = time4.getTime() / 1000
- if (passwordStartTimecontrast > passwordEndTimecontrast) {
- wx.showToast({
- title: '开始时间不能大于结束时间',
- duration: 2000,
- mask: true,
- icon: 'none'
- })
- return
- }
- wx.showLoading({
- title: '正在添加',
- mask: true
- })
- var _this = this
- var deviceinfo = this.data.deviceinfo
- var info = JSON.parse(this.data.personLi.info)
- if (deviceinfo.manufactureId == 101) {
-
- } else if (deviceinfo.manufactureId == 201 || deviceinfo.manufactureId == 221) {
- var cgInfo = this.data.cgInfo
- var time1 = new Date(_this.data.datetimerange[0].replace(/-/g, '/'))
- var time2 = new Date(_this.data.datetimerange[1].replace(/-/g, '/'))
- var passwordStartTime = time1.getTime() / 1000
- var passwordEndTime = time2.getTime() / 1000
- var pzname = _this.data.pzname,
- cardName = ''
- if (pzname == "") {
- pzname = '蓝牙-NFC' + (_this.data.NfcList.length + 1)
- cardName = _this.data.personLi.name + '-蓝牙-NFC' + (_this.data.NfcList.length + 1)
- } else {
- pzname = '蓝牙-' + pzname
- cardName = _this.data.personLi.name + '-蓝牙-' + pzname
- }
- var dataPasswod = {
- code: "zg/cardOperate",
- data: {
- lockerId: deviceinfo.deviceNum,
- imei: deviceinfo.imei,
- lockerUserId: info.userId,
- keyId: info.userId,
- action: 1,
- taskStatus: 1,
- order: 6210,
- startTime: passwordStartTime,
- endTime: passwordEndTime,
- cardType: 50,
- type: ADD_NFC_MODE,
- roomName: this.data.deviceinfo.roomName,
- cardName: cardName,
- }
- }
- console.log(dataPasswod, 'dataPasswod')
- WXAPI.sendCommand(dataPasswod).then(res => {
- console.log(res, 'resres')
- if (res.success) {
- var pwdNo = res.data.index
- var passwordIndex = res.data.index
- var serialNumber = res.data.serialNumber
- pwdNo = pwdNo.toString(16)
- if (pwdNo.length < 2) {
- pwdNo = '0' + pwdNo
- }
- var startTime = passwordStartTime.toString(16).toUpperCase()
- var endTime = passwordEndTime.toString(16).toUpperCase()
- info.startTime = startTime
- info.endTime = endTime
- info.pwdNo = pwdNo
- methods.bluetoothOperation_ZH(cgInfo, info, 7).then(result => {
- if (result.status == '00') {
- let carNoId = this.processCardNumber(result.cardNo)
- var datacom = {
- code: "zg/bleSendVoucherReply",
- data: {
- lockerId: deviceinfo.deviceNum,
- serialNumber: serialNumber,
- index: passwordIndex,
- type: ADD_NFC_MODE,
- cardNo: carNoId.toUpperCase(),
- result: 1
- }
- }
- WXAPI.sendCommand(datacom).then(res2 => {
- if (res2.success) {
- var str = {
- // cardId: this.personInfo.cardId,
- pzname: pzname,
- imei: _this.data.deviceinfo.imei,
- password: carNoId.toUpperCase(),
- blueCardNo: result.cardNo,
- userTelephone: JSON.parse(_this.data.personLi.info).userTelephone,
- operateMode: 10,
- userPassword: JSON.parse(_this.data.personLi.info).userPassword,
- passwordStartTime: passwordStartTime,
- passwordEndTime: passwordEndTime,
- is: false,
- roomName: _this.data.deviceinfo.roomName,
- }
- var data = {
- cardId: _this.data.personLi.cardId,
- content: JSON.stringify(str), //operateMode:NFC-10、把人员添加到凭证-1
- deviceNum: _this.data.deviceinfo.deviceNum,
- type: 3,
- blueCardNo: result.cardNo,
- imei: _this.data.deviceinfo.imei,
- serial: serialNumber,
- startTime: passwordStartTime,
- endTime: passwordEndTime,
- };
- console.log(data, '添加凭证')
-
- var datalist = {
- cardId: _this.data.personLi.cardId,
- content: JSON.stringify(str), //operateMode:NFC-10、把人员添加到凭证-1
- type: 13,
- startTime: passwordStartTime,
- endTime: passwordEndTime,
- };
- WXAPI.addCertificates(datalist).then(res6 => {
- console.log(datalist, 'NFC', res6)
- })
- WXAPI.addCertificates(data).then(res3 => {
- if (res3.success) {
- var updatedata = {
- id: res3.data,
- status: 1
- };
- WXAPI.updateCertificates(updatedata).then((res2) => {});
- console.log(res3, '添加凭证成功')
- _this.getNfc()
- _this.setData({
- show: false
- })
- wx.hideLoading()
- wx.showToast({
- title: '添加成功',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- } else {
- wx.hideLoading()
- wx.showToast({
- title: '添加失败',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- }
- })
- }
- })
- } else {
- wx.hideLoading()
- wx.showToast({
- title: '添加失败',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- var datacom = {
- code: "zg/bleSendVoucherReply",
- data: {
- lockerId: deviceinfo.deviceNum,
- serialNumber: serialNumber,
- index: passwordIndex,
- type: ADD_NFC_MODE,
- result: 0
- }
- }
- WXAPI.sendCommand(datacom).then(res2 => {
- console.log(res2, '失败')
- _this.setData({
- show: false
- })
- })
- }
- }).catch(err => {
- var datacom = {
- code: "zg/bleSendVoucherReply",
- data: {
- lockerId: deviceinfo.deviceNum,
- serialNumber: serialNumber,
- index: passwordIndex,
- type: ADD_NFC_MODE,
- result: 0
- }
- }
- WXAPI.sendCommand(datacom).then(res2 => {
- _this.setData({
- show: false
- })
- })
- wx.showToast({
- title: '添加失败',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- })
- } else {
- wx.showToast({
- title: res.msg,
- duration: 2000,
- mask: true,
- icon: 'none'
- })
- }
- })
- } else if (deviceinfo.manufactureId == 1201 || deviceinfo.manufactureId == 1241) {
- if (this.data.isSearch) {
- wx.hideLoading()
- this.addRfCard()
- } else {
- this.searchDevicesMethods()
- }
- }
- },
- addRfCard: function () {
- console.log("3691NFC");
- var that = this
- taskId = 61
- that.initBluetooth()
- },
- onAddRfCard: function () {
- var that = this
- wx.showLoading({
- title: '添加房卡中',
- })
- var startTime = new Date(Number(moment(that.data.starttime).format('x')))
- var endTime = new Date(Number(moment(that.data.endtime).format('x')))
- console.log("锁", lockDevice.name, basecode, 0, rfCardIndex, startTime, endTime);
- var bytes = plugin.addRfCard(lockDevice.name, basecode, 0, rfCardIndex, startTime, endTime)
- console.debug('bytes', bytes)
- that.sendBytes(bytes)
- },
- addRfcardCertificates() {
- var that = this
- var time1 = new Date(that.data.starttime.replace(/-/g, '/'))
- var time2 = new Date(that.data.endtime.replace(/-/g, '/'))
- var passwordStartTime = time1.getTime() / 1000
- var passwordEndTime = time2.getTime() / 1000
- var pzname = '',
- cardName = '';
- pzname = '蓝牙-NFC' + (that.data.passwordList.length + 1)
- cardName = that.data.personLi.name + '-蓝牙-NFC' + (that.data.passwordList.length + 1)
- let carNoId = rfCardId
- var datacom = {
- code: "ble/bleSendVoucherReply",
- data: {
- deviceNum: that.data.deviceinfo.deviceNum,
- serialNumber: serialNumber,
- index: rfCardIndex,
- type: ADD_NFC_MODE,
- cardNo: rfCardId.toUpperCase(),
- result: 1,
- productId: that.data.deviceinfo.manufactureId
- }
- }
- WXAPI.sendCommand(datacom).then(res2 => {
- if (res2.success) {
- var str = {
- // cardId: this.personInfo.cardId,
- pzname: pzname,
- imei: that.data.deviceinfo.imei,
- password: carNoId.toUpperCase(),
- blueCardNo: rfCardIndex,
- userTelephone: JSON.parse(that.data.personLi.info).userTelephone,
- operateMode: 10,
- userPassword: JSON.parse(that.data.personLi.info).userPassword,
- passwordStartTime: passwordStartTime,
- passwordEndTime: passwordEndTime,
- is: false,
- index: rfCardIndex,
- roomName: that.data.deviceinfo.roomName,
- }
- var data2 = {
- cardId: that.data.personLi.cardId,
- content: JSON.stringify(str), //operateMode:NFC-10、把人员添加到凭证-1
- deviceNum: that.data.deviceinfo.deviceNum,
- type: 3,
- blueCardNo: carNoId,
- imei: that.data.deviceinfo.imei,
- serial: serialNumber,
- startTime: passwordStartTime,
- endTime: passwordEndTime,
- };
- console.log(data2, '添加凭证')
-
- var datalist = {
- cardId: that.data.personLi.cardId,
- content: JSON.stringify(str), //operateMode:NFC-10、把人员添加到凭证-1
- type: 13,
- startTime: passwordStartTime,
- endTime: passwordEndTime,
- };
- WXAPI.addCertificates(datalist).then(res6 => {
- console.log(datalist, 'NFC', res6)
- })
- WXAPI.addCertificates(data2).then(res3 => {
- if (res3.success) {
- var updatedata = {
- id: res3.data,
- status: 1
- };
- WXAPI.updateCertificates(updatedata).then((res2) => {});
- console.log(res3, '添加凭证成功')
- that.getNfc()
- that.setData({
- show: false
- })
- wx.hideLoading()
- wx.showToast({
- title: '添加成功',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- } else {
- wx.hideLoading()
- wx.showToast({
- title: '添加失败',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- }
- })
- } else {
- wx.showToast({
- title: res2.message,
- duration: 2000,
- icon: 'none'
- })
- }
- })
- },
- sendAddRfcard() {
- var that = this
- var info = JSON.parse(this.data.personLi.info)
- let deviceinfo = this.data.deviceinfo
- var time1 = new Date(that.data.starttime.replace(/-/g, '/'))
- var time2 = new Date(that.data.endtime.replace(/-/g, '/'))
- var passwordStartTime = time1.getTime() / 1000
- var passwordEndTime = time2.getTime() / 1000
- var pzname = '',
- cardName = ''
- if(that.data.pzname == ''){
- pzname = '蓝牙-NFC' + (that.data.NfcList.length + 1)
- }else{
- pzname = '蓝牙-NFC' + that.data.pzname
- }
- cardName = that.data.personLi.name + '-蓝牙-NFC' + (that.data.NfcList.length + 1)
- rfCardId = randomMethods()
- var dataPasswod = {
- code: "lwj/cardOperate",
- data: {
- lockerId: deviceinfo.deviceNum,
- lockerUserId: info.userId,
- startTime: passwordStartTime,
- endTime: passwordEndTime,
- order: 6210,
- operateMode: 10,
- action: 1,
- cardNo: rfCardId,
- type: 10,
- roomName: this.data.deviceinfo.roomName,
- cardName: cardName,
- }
- }
- console.log("平台", dataPasswod);
- WXAPI.sendCommand(dataPasswod).then(res => {
- console.log(res, '获取索引')
- if (res.success) {
- var pwdNo = res.data.index
- serialNumber = res.data.serialNumber
- rfCardIndex = pwdNo
- setTimeout(() => {
- that.onAddRfCard()
- }, 500)
- }
- })
- },
- processCardNumber(cardNo) {
- var str1 = cardNo.substr(0, 8)
- var str2 = cardNo.substr(8, 8)
- var num = str2.split("")
- var status = num.every(item => item == 0)
- console.log(status, num, 'numnum', str1, str2)
- if (status) {
- var bbb = str1.split("")
- var a, b;
- var aIndex = 0;
- var bIndex = 1;
- var arr = [];
- bbb.forEach((str, index) => {
- if (index % 2 === 0) {
- a = str;
- aIndex += 1
- } else {
- b = str
- bIndex += 1
- }
- if (a && b && (bIndex - aIndex === 1)) {
- arr.push(a + b)
- }
- });
- console.log(arr)
- return arr.join("")
- } else {
- var ll = str1 + str2
- return ll
- }
- },
- sendFp() {
- var time3 = new Date(this.data.datetimerange[0].replace(/-/g, '/'))
- var time4 = new Date(this.data.datetimerange[1].replace(/-/g, '/'))
- var passwordStartTimecontrast = time3.getTime() / 1000
- var passwordEndTimecontrast = time4.getTime() / 1000
- if (passwordStartTimecontrast > passwordEndTimecontrast) {
- wx.showToast({
- title: '开始时间不能大于结束时间',
- duration: 2000,
- mask: true,
- icon: 'none'
- })
- return
- }
- if (this.data.radioDetil == '') {
- wx.showToast({
- title: '请选择是那个指纹?',
- mask: true,
- duration: 2000,
- icon: 'none'
- })
- return
- }
- wx.showLoading({
- title: '正在添加指纹',
- mask: true
- })
- var _this = this
- var deviceinfo = this.data.deviceinfo
- var info = JSON.parse(this.data.personLi.info)
- if (deviceinfo.manufactureId == 101) {
- let deviceNum = deviceinfo.deviceNum
- this.setData({
- backstatus: true
- })
- var timestamp = moment().format("x")
- var time1 = moment(this.data.datetimerange[0]).format("YYYYMMDDHHmmss")
- var time2 = moment(this.data.datetimerange[1]).format("YYYYMMDDHHmmss")
- bleall.startFp_29(deviceNum, 0x03, timestamp, function (res) {
- console.log(res, 'resresres')
- if (res.success) {
- wx.showLoading({
- title: '正在添加指纹',
- mask: true
- })
- }
- if (res.data == "蓝牙功能暂不支持") {
- wx.hideLoading()
- _this.startconnect()
- }
- })
-
- } else if (deviceinfo.manufactureId == 201 || deviceinfo.manufactureId == 221) {
- var cgInfo = this.data.cgInfo
- var time1 = new Date(_this.data.datetimerange[0].replace(/-/g, '/'))
- var time2 = new Date(_this.data.datetimerange[1].replace(/-/g, '/'))
- var passwordStartTime = time1.getTime() / 1000
- var passwordEndTime = time2.getTime() / 1000
- var cardName = '',
- pzname = ''
- if (this.data.pzname) {
- cardName = _this.data.personLi.name + '-蓝牙-' + _this.data.pzname
- pzname = '蓝牙-' + _this.data.pzname
- } else {
- cardName = _this.data.personLi.name + '-蓝牙-指纹' + (_this.data.FpList.length + 1)
- pzname = '蓝牙-指纹' + (_this.data.FpList.length + 1)
- }
- var dataPasswod = {
- code: "zg/addFingerPrint",
- data: {
- lockerId: deviceinfo.deviceNum,
- imei: deviceinfo.imei,
- lockerUserId: info.userPassword,
- keyId: info.userPassword,
- fingerType: 0,
- order: 6216,
- fingerId: '',
- roomName: deviceinfo.roomName,
- cardName: cardName,
- startTime: passwordStartTime,
- endTime: passwordEndTime,
- file: '',
- type: 1
- }
- }
- WXAPI.sendCommand(dataPasswod).then(res => {
- console.log(res, '获取索引')
- if (res.success) {
- var startTime = passwordStartTime.toString(16).toUpperCase()
- var endTime = passwordEndTime.toString(16).toUpperCase()
- info.startTime = startTime
- info.endTime = endTime
- methods.bluetoothOperation_ZH(cgInfo, info, 5).then(result => {
- if (result.status == '00' && result.completeFlag == '01') {
- console.log(result, 'callback2callback2')
- var datacom = {
- code: "zg/bleSendVoucherReply",
- data: {
- lockerId: deviceinfo.deviceNum,
- serialNumber: res.data.serialNumber,
- index: result.fingerprintNo,
- type: 16,
- result: 1
- }
- }
- console.log(datacom)
- var str = {
- // cardId: this.personInfo.cardId,
- imei: _this.data.deviceinfo.imei,
- pzname: pzname,
- password: '',
- fingerprintAlias: _this.data.radioDetil,
- userTelephone: JSON.parse(_this.data.personLi.info).userTelephone,
- operateMode: 16,
- userPassword: JSON.parse(_this.data.personLi.info).userPassword,
- passwordStartTime: passwordStartTime,
- passwordEndTime: passwordEndTime,
- is: false,
- pass: true
- }
- var data = {
- cardId: _this.data.personLi.cardId,
- content: JSON.stringify(str), //operateMode:NFC-10、把人员添加到凭证-1
- deviceNum: _this.data.deviceinfo.deviceNum,
- type: 1,
- imei: _this.data.deviceinfo.imei,
- serial: res.data.serialNumber,
- startTime: passwordStartTime,
- endTime: passwordEndTime,
- status: 1
- };
- var datalist = {
- cardId: _this.data.personLi.cardId,
- content: JSON.stringify(str), //operateMode:NFC-10、把人员添加到凭证-1
- type: 11,
- startTime: passwordStartTime,
- endTime: passwordEndTime
- };
- WXAPI.addCertificates(datalist).then(res6 => {})
- console.log(data, '添加凭证')
- WXAPI.addCertificates(data).then(res3 => {
- if (res3.success) {
- var updatedata = {
- id: res3.data,
- status: 1
- };
- WXAPI.updateCertificates(updatedata).then((res2) => {});
- WXAPI.sendCommand(datacom).then(res2 => {
- if (res2.success) {}
- })
- console.log(res3, '添加凭证成功')
- _this.getFp()
- _this.setData({
- show: false
- })
- wx.hideLoading()
- wx.showToast({
- title: '添加成功',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- } else {
- wx.hideLoading()
- wx.showToast({
- title: '添加失败',
- mask: true,
- icon: 'none',
- duration: 2000
- })
- }
- })
- }
- }).catch(err => {
- var datacom = {
- code: "zg/bleSendVoucherReply",
- data: {
- lockerId: deviceinfo.deviceNum,
- serialNumber: res.data.serialNumber,
- index: 0,
- type: 16,
- result: 0
- }
- }
- WXAPI.sendCommand(datacom).then(res2 => {
- if (res2.success) {}
- })
- })
- } else {
- var datacom = {
- code: "zg/bleSendVoucherReply",
- data: {
- lockerId: deviceinfo.deviceNum,
- serialNumber: res.data.serialNumber,
- index: 0,
- type: 16,
- result: 0
- }
- }
- WXAPI.sendCommand(datacom).then(res2 => {
- if (res2.success) {}
- })
- wx.showToast({
- title: res.msg,
- duration: 2000,
- mask: true,
- icon: 'none'
- })
- }
- })
- } else if (deviceinfo.manufactureId == 1201 || deviceinfo.manufactureId == 1241) {
- if (this.data.isSearch) {
- // fingerprintIndex = 1
- // serialNumber = 1686309639840
- // this.onAddFingerprint()
- // return
- var time1 = new Date(_this.data.datetimerange[0].replace(/-/g, '/'))
- var time2 = new Date(_this.data.datetimerange[1].replace(/-/g, '/'))
- var passwordStartTime = time1.getTime() / 1000
- var passwordEndTime = time2.getTime() / 1000
- var cardName = '',
- pzname = ''
- if (this.data.pzname) {
- cardName = _this.data.personLi.name + '-蓝牙-' + _this.data.pzname
- pzname = '蓝牙-' + _this.data.pzname
- } else {
- cardName = _this.data.personLi.name + '-蓝牙-指纹' + (_this.data.FpList.length + 1)
- pzname = '蓝牙-指纹' + (_this.data.FpList.length + 1)
- }
- var dataPasswod = {
- code: "lwj/fpOperate",
- data: {
- lockerId: deviceinfo.deviceNum,
- action: 1,
- lockerUserId: info.userPassword,
- fpData: '',
- operateMode: 16,
- order: 6216,
- roomName: deviceinfo.roomName,
- cardName: cardName,
- startTime: passwordStartTime,
- endTime: passwordEndTime,
- type: 1
- }
- }
- console.log(dataPasswod);
- WXAPI.sendCommand(dataPasswod).then(res => {
- console.log(res);
- if (res.success) {
- fingerprintIndex = res.data.index
- serialNumber = res.data.serialNumber
- this.onAddFingerprint()
- }
- })
- } else {
- this.searchDevicesMethods()
- }
- }
- },
-
- login: function () {
- var that = this
- taskId = 32
- that.initBluetooth()
- },
- onLogin: function () {
- var that = this
- wx.showLoading({
- title: '登录中',
- })
-
- var bytes = plugin.login1(lockDevice.name, basecode)
- console.debug('bytes', bytes)
- that.sendBytes(bytes)
- },
- onAddFingerprint: function () {
- var that = this
- wx.showLoading({
- title: '添加指纹中',
- })
- // var startTime = util1.getLocalTime(8)
- // var endTime = new Date(startTime.getTime() + 5 * 60 * 1000) //有效期5分钟
- var startTime = new Date(Number(moment(that.data.starttime).format('x')))
- var endTime = new Date(Number(moment(that.data.endtime).format('x')))
- // fingerprintIndex = Math.floor(Math.random() * 100)
- var bytes = plugin.addFingerprint(lockDevice.name, basecode, fingerprintIndex, startTime, endTime)
- console.debug('bytes', bytes)
- that.sendBytes(bytes)
- },
- // 关闭添加人员弹窗
- onClose() {
- this.setData({
- show: false
- });
- },
- onChange(event) {
- console.log(event.detail)
- this.setData({
- activeKey: event.detail
- })
- },
- getPassword() {
- var data = {
- pageNum: 0,
- pageSize: 0,
- q: JSON.stringify({
- cardId: this.data.personLi.cardId,
- deviceNum: this.data.deviceinfo.deviceNum,
- types: "4",
- inStatus: '0,1,702'
- })
- }
- console.log(data)
- WXAPI.getCertificates(data).then(res => {
- var dataOne = util.zlib_unzip(res.data)
- if (res.success) {
- dataOne.map(li => {
- li['pzname'] = JSON.parse(li.content).pzname
- li['password'] = util.plusXing(JSON.parse(li.content).password, 2, 2, '*')
- })
- this.setData({
- passwordList: dataOne
- })
- }
- })
- },
- getNfc() {
- var data = {
- pageNum: 0,
- pageSize: 0,
- q: JSON.stringify({
- cardId: this.data.personLi.cardId,
- deviceNum: this.data.deviceinfo.deviceNum,
- types: "3",
- inStatus: '0,1,702'
- })
- }
- WXAPI.getCertificates(data).then(res => {
- console.log(res)
- var dataOne = util.zlib_unzip(res.data)
- console.log(dataOne)
- if (res.success) {
- dataOne.map(li => {
- li['pzname'] = JSON.parse(li.content).pzname
- li['password'] = util.plusXing(JSON.parse(li.content).password, 2, 2, '*')
- })
- this.setData({
- NfcList: dataOne
- })
- }
- })
- },
- getFp() {
- var data = {
- pageNum: 0,
- pageSize: 0,
- q: JSON.stringify({
- cardId: this.data.personLi.cardId,
- deviceNum: this.data.deviceinfo.deviceNum,
- types: "1",
- inStatus: '0,1,702'
- })
- }
- WXAPI.getCertificates(data).then(res => {
- var dataOne = util.zlib_unzip(res.data)
- if (res.success) {
- dataOne.map(li => {
- li['pzname'] = JSON.parse(li.content).pzname
- li['password'] = ''
- li['fingerprintAlias'] = JSON.parse(li.content).fingerprintAlias || ''
- })
- this.setData({
- FpList: dataOne
- })
- }
- })
- },
- getCarId() {
- var data = {
- pageNum: 0,
- pageSize: 0,
- q: JSON.stringify({
- cardId: this.data.personLi.cardId,
- deviceNum: this.data.deviceinfo.deviceNum,
- types: "2",
- inStatus: '0,1,702'
- })
- }
- WXAPI.getCertificates(data).then(res => {
- var dataOne = util.zlib_unzip(res.data)
- if (res.success) {
- dataOne.map(li => {
- li['pzname'] = JSON.parse(li.content).pzname
- li['password'] = util.plusXing(JSON.parse(li.content).password, 2, 2, '*')
- })
- this.setData({
- CarIdList: dataOne
- })
- }
- })
- },
- /**
- * 生命周期函数--监听页面初次渲染完成
- */
- onReady: function () {
-
- },
-
- /**
- * 生命周期函数--监听页面显示
- */
- onShow: function () {
-
- },
-
- /**
- * 生命周期函数--监听页面隐藏
- */
- onHide: function () {
-
- },
-
- /**
- * 生命周期函数--监听页面卸载
- */
- onUnload: function () {
- if (isConnected) {
- console.log(connectedDeviceId, 'connectedDeviceId')
- wx.closeBLEConnection({
- deviceId: connectedDeviceId,
- success: function (res) {
- isConnected = false
- app.globalData.isConnected = false
- },
- })
- }
- },
-
- /**
- * 页面相关事件处理函数--监听用户下拉动作
- */
- onPullDownRefresh: function () {
-
- },
-
- /**
- * 页面上拉触底事件的处理函数
- */
- onReachBottom: function () {
-
- },
-
- /**
- * 用户点击右上角分享
- */
- onShareAppMessage: function () {
-
- }
- })
|