|
|
const WXAPI = require('./request')
|
|
export default class ICINLocker {
|
|
/**
|
|
* *添加用户
|
|
* @param {锁ID} _lockId
|
|
* @param {门锁IMEI} _imei
|
|
* @param {添加的用户ID} _userId
|
|
* @param {用户的keyId} _keyId
|
|
* @param {00普通用户 01管理员 FF超级管理员} _role
|
|
* @param {操作类型 1: 添加 2: 删除} _action
|
|
* @param {回调} callback
|
|
*/
|
|
static addUserToLock(_lockId, _imei, _userId, _role, _action, order, _cardName,_roomName, callback) {
|
|
var data = {
|
|
lockerId: _lockId,
|
|
imei: _imei,
|
|
lockerUserId: _userId,
|
|
keyId: _userId,
|
|
role: _role,
|
|
action: _action,
|
|
order: order,
|
|
cardName: _cardName,
|
|
roomName:_roomName
|
|
};
|
|
WXAPI.ZGduserOperation(data).then(res => {
|
|
callback(res)
|
|
})
|
|
}
|
|
|
|
/**
|
|
* *添加指纹
|
|
* @param {门锁ID} _lockId
|
|
* @param {门锁IMEI} _imei
|
|
* @param {用户ID – 最多20字节} _userId
|
|
* @param {指纹类型 0:普通指纹,1:胁迫指} _fingerType
|
|
* @param {文件字节数组} _file
|
|
* @param {设置开始时间-8位timestamp字符串,eg:'00000000'} _startTime
|
|
* @param {设置结束时间-8位timestamp字符串,eg:'FFFFFFFF'} _endTime
|
|
* @param {是否为报警指纹,'00'为否,'01'为是} _alarmFinger
|
|
* @param {超管的commonKey} _commonKey
|
|
* @param {回调方法} callback
|
|
*/
|
|
static addFingerPrints(_lockId, _imei, _userId, _fingerType, _file, _startTime, _endTime, _cardName,
|
|
_roomName, callback) {
|
|
var data3 = {
|
|
code: "zg/addFingerPrint",
|
|
data: {
|
|
lockerId: _lockId,
|
|
imei: _imei,
|
|
lockerUserId: _userId,
|
|
keyId: _userId,
|
|
fingerType: _fingerType,
|
|
order: 6216,
|
|
file: _file,
|
|
startTime: _startTime,
|
|
endTime: _endTime,
|
|
cardName: _cardName,
|
|
roomName: _roomName
|
|
}
|
|
};
|
|
WXAPI.sendCommand(data3).then((res) => {
|
|
callback(res)
|
|
})
|
|
}
|
|
|
|
/**
|
|
* *删除指纹
|
|
* @param {门锁ID} _lockId
|
|
* @param {门锁IMEI} _imei
|
|
* @param {用户ID – 最多20字节} _userId
|
|
* @param {指纹类型 0:普通指纹,1:胁迫指} _fingerType
|
|
* @param {2:删除 3:修改} _action
|
|
* @param {指纹模板号} _fingerId
|
|
* @param {设置开始时间-8位timestamp字符串,eg:'00000000'} _startTime
|
|
* @param {设置结束时间-8位timestamp字符串,eg:'FFFFFFFF'} _endTime
|
|
* @param {是否为报警指纹,'00'为否,'01'为是} _alarmFinger
|
|
* @param {超管的commonKey} _commonKey
|
|
* @param {回调方法} callback
|
|
*/
|
|
static delFingerPrints(_lockId, _imei, _userId, _action, _fingerId, _fingerType, _startTime, _endTime, _cardName, _roomName, callback) {
|
|
var data3 = {
|
|
code: "zg/fpOperate",
|
|
data: {
|
|
lockerId: _lockId,
|
|
imei: _imei,
|
|
lockerUserId: _userId,
|
|
keyId: _userId,
|
|
fingerId: _fingerId,
|
|
fingerType: _fingerType,
|
|
order: 6218,
|
|
action: _action,
|
|
startTime: _startTime,
|
|
endTime: _endTime,
|
|
cardName: _cardName,
|
|
roomName: _roomName
|
|
}
|
|
};
|
|
WXAPI.sendCommand(data3).then((res) => {
|
|
callback(res)
|
|
})
|
|
}
|
|
/**
|
|
* *修改指纹时间
|
|
* @param {门锁ID} _lockId
|
|
* @param {门锁IMEI} _imei
|
|
* @param {用户ID – 最多20字节} _userId
|
|
* @param {指纹类型 0:普通指纹,1:胁迫指} _fingerType
|
|
* @param {2:删除 3:修改} _action
|
|
* @param {指纹模板号} _fingerId
|
|
* @param {设置开始时间-8位timestamp字符串,eg:'00000000'} _startTime
|
|
* @param {设置结束时间-8位timestamp字符串,eg:'FFFFFFFF'} _endTime
|
|
* @param {是否为报警指纹,'00'为否,'01'为是} _alarmFinger
|
|
* @param {超管的commonKey} _commonKey
|
|
* @param {回调方法} callback
|
|
*/
|
|
static modifyFingerPrints(_lockId, _imei, _userId, _action, _fingerId, _fingerType, _startTime, _endTime,
|
|
_cardName, _roomName,
|
|
callback) {
|
|
var data3 = {
|
|
code: "zg/fpOperate",
|
|
data: {
|
|
lockerId: _lockId,
|
|
imei: _imei,
|
|
lockerUserId: _userId,
|
|
keyId: _userId,
|
|
fingerId: _fingerId,
|
|
fingerType: _fingerType,
|
|
order: 6217,
|
|
action: _action,
|
|
startTime: _startTime,
|
|
endTime: _endTime,
|
|
cardName: _cardName,
|
|
roomName: _roomName
|
|
}
|
|
};
|
|
WXAPI.sendCommand(data3).then((res) => {
|
|
callback(res)
|
|
})
|
|
}
|
|
/**
|
|
* *添加身份证
|
|
* @param {门锁ID} _lockId
|
|
* @param {门锁IMEI} _imei
|
|
* @param {用户ID – 最多20字节} _userId
|
|
* @param {操作类型 1: 添加 2: 删除 3:修改} _action
|
|
* @param {文件字节数组} _taskStatus 任务状态 1:提交任务
|
|
* @param {文件字节数组} _cardNo 卡号 卡片唯一标识
|
|
* @param {文件字节数组} _cardType 卡类型 (16 进制) :typeA 在线卡 0x21 Mifare 在线卡 0x22 typeB 在线卡 0x23 身份证(在线)0x24 typeA 离线卡 0x71 Mifare 离线卡 0x72 typeB 离线卡 0x73
|
|
* @param {设置开始时间-8位timestamp字符串,eg:'00000000'} _startTime
|
|
* @param {设置结束时间-8位timestamp字符串,eg:'FFFFFFFF'} _endTime
|
|
* @param {回调方法} callback
|
|
*/
|
|
static RfCardRegister(_lockId, _imei, _userId, _action, _taskStatus, _cardNo, _cardType, _startTime, _endTime,
|
|
order, _cardName, _roomName, callback) {
|
|
var data3 = {
|
|
code: "zg/cardOperate",
|
|
data: {
|
|
lockerId: _lockId,
|
|
imei: _imei,
|
|
lockerUserId: _userId,
|
|
keyId: _userId,
|
|
action: _action,
|
|
taskStatus: _taskStatus,
|
|
order: order,
|
|
startTime: _startTime,
|
|
endTime: _endTime,
|
|
cardType: _cardType,
|
|
cardNo: _cardNo,
|
|
cardName: _cardName,
|
|
roomName: _roomName
|
|
},
|
|
};
|
|
WXAPI.sendCommand(data3).then((res) => {
|
|
callback(res)
|
|
})
|
|
}
|
|
static delCardRegister(_lockId, _imei, _userId, _action, _taskStatus, _cardNo, _cardType, _startTime, _endTime,
|
|
order, cardIndex, _cardName , _roomName, callback) {
|
|
var data3 = {
|
|
code: "zg/cardOperate",
|
|
data: {
|
|
lockerId: _lockId,
|
|
imei: _imei,
|
|
lockerUserId: _userId,
|
|
keyId: _userId,
|
|
action: _action,
|
|
taskStatus: _taskStatus,
|
|
order: order,
|
|
startTime: _startTime,
|
|
endTime: _endTime,
|
|
cardType: _cardType,
|
|
cardNo: _cardNo,
|
|
cardIndex: cardIndex,
|
|
cardName: _cardName,
|
|
roomName: _roomName
|
|
},
|
|
};
|
|
WXAPI.sendCommand(data3).then((res) => {
|
|
callback(res)
|
|
})
|
|
}
|
|
|
|
/**
|
|
* *添加密码
|
|
* @param {门锁ID} _lockId
|
|
* @param {门锁IMEI} _imei
|
|
* @param {用户ID – 最多20字节} _userId
|
|
* @param {r 操作类型 1: 添加 2: 删除 3:修} _action
|
|
* @param {文件字节数组} password 密码长度为 6 位,建议不要采用同样数字组合和连续简单组合
|
|
* @param {回调方法} callback
|
|
*/
|
|
static addForeverPassword(_lockId, _imei, _userId, _action, _password, _passwordCount, _startTime, _endTime, order,
|
|
_cardName, _roomName,
|
|
callback) {
|
|
var data3 = {
|
|
code: "zg/tempPassword",
|
|
data: {
|
|
lockerId: _lockId,
|
|
imei: _imei,
|
|
order: order,
|
|
lockerUserId: _userId,
|
|
passwordCount: _passwordCount,
|
|
keyId: _userId,
|
|
passwordStartTime: _startTime,
|
|
passwordEndTime: _endTime,
|
|
action: _action,
|
|
password: _password,
|
|
cardName: _cardName,
|
|
roomName: _roomName
|
|
},
|
|
};
|
|
WXAPI.sendCommand(data3).then((res) => {
|
|
callback(res)
|
|
})
|
|
}
|
|
static delForeverPassword(_lockId, _imei, _userId, _action, _password, _passwordCount, _startTime, _endTime, order,
|
|
passwordIndex, _cardName, _roomName, callback) {
|
|
var data3 = {
|
|
code: "zg/tempPassword",
|
|
data: {
|
|
lockerId: _lockId,
|
|
imei: _imei,
|
|
order: order,
|
|
lockerUserId: _userId,
|
|
passwordCount: _passwordCount,
|
|
keyId: _userId,
|
|
passwordStartTime: _startTime,
|
|
passwordEndTime: _endTime,
|
|
action: _action,
|
|
password: _password,
|
|
passwordIndex: passwordIndex,
|
|
cardName: _cardName,
|
|
roomName: _roomName
|
|
},
|
|
};
|
|
WXAPI.sendCommand(data3).then((res) => {
|
|
callback(res)
|
|
})
|
|
}
|
|
|
|
|
|
|
|
/*
|
|
LD下发函数
|
|
*/
|
|
/**
|
|
* *添加用户
|
|
* @param {锁ID} _deviceNum
|
|
* @param {门锁IMEI} _imei
|
|
* @param {添加的用户ID} _userTelephone
|
|
* @param {用户的keyId} _userPassword
|
|
* @param {用户的蓝牙密码password} _pwd
|
|
* @param {操作类型} _mode
|
|
* @param {操作指令} _order
|
|
* @param {锁用户有效期开始时间} _passwordStartTime
|
|
* @param {锁用户有效期结束时间} _passwordEndTime
|
|
* @param {回调} callback
|
|
*/
|
|
static LDAddUser(_deviceNum, _imei, _userTelephone, _userPassword, _pwd, _passwordStartTime, _passwordEndTime,
|
|
_mode, _order, _cardName,_roomName, callback) {
|
|
var data = {
|
|
imei: _imei,
|
|
deviceNum: _deviceNum,
|
|
userTelephone: _userTelephone,
|
|
userPassword: _userPassword,
|
|
password: _pwd,
|
|
operateMode: _mode,
|
|
order: _order,
|
|
passwordStartTime: _passwordStartTime,
|
|
passwordEndTime: _passwordEndTime,
|
|
is: false,
|
|
cardName: _cardName,
|
|
roomName:_roomName
|
|
};
|
|
WXAPI.getDeviceOperateUserInfo(data).then((res) => {
|
|
callback(res)
|
|
})
|
|
}
|
|
/**
|
|
* *删除用户
|
|
* @param {锁ID} _deviceNum
|
|
* @param {门锁IMEI} _imei
|
|
* @param {添加的用户ID} _userTelephone
|
|
* @param {用户的keyId} _userPassword
|
|
* @param {用户的蓝牙密码password} _pwd
|
|
* @param {操作类型} _mode
|
|
* @param {操作指令} _order
|
|
* @param {锁用户有效期开始时间} _passwordStartTime
|
|
* @param {锁用户有效期结束时间} _passwordEndTime
|
|
* @param {回调} callback
|
|
*/
|
|
static LDDeleteUser(_deviceNum, _imei, _userTelephone, _userPassword, _cardName,_roomName, callback) {
|
|
var data = {
|
|
imei: _imei,
|
|
deviceNum: _deviceNum,
|
|
userTelephone: _userTelephone,
|
|
userPassword: _userPassword,
|
|
password: "20210816",
|
|
passwordStartTime: "20210813010101",
|
|
passwordEndTime: "20680813010101",
|
|
operateMode: 3,
|
|
order: 6203,
|
|
is: false,
|
|
cardName: _cardName,
|
|
roomName: _roomName
|
|
};
|
|
WXAPI.getDeviceOperateUserInfo(data).then((res)=> {
|
|
callback(res)
|
|
})
|
|
}
|
|
/**
|
|
* *添加指纹
|
|
* @param {锁ID} _deviceNum
|
|
* @param {门锁IMEI} _imei
|
|
* @param {添加的用户ID} _userTelephone
|
|
* @param {用户的keyId} _userPassword
|
|
* @param {用户的蓝牙密码password} _pwd
|
|
* @param {操作类型} _mode
|
|
* @param {操作指令} _order
|
|
* @param {锁用户有效期开始时间} _passwordStartTime
|
|
* @param {锁用户有效期结束时间} _passwordEndTime
|
|
* @param {指纹数据长度length} _length
|
|
* @param {指纹fpTimeId} _fpTimeId
|
|
* @param {指纹数据fingerprint} _fingerprint
|
|
* @param {回调} callback
|
|
*/
|
|
static LDAddFingerPrints(_deviceNum, _imei, _userTelephone, _userPassword, _pwd, _passwordStartTime,
|
|
_passwordEndTime,
|
|
_mode, _order, _length, _fpTimeId, _fingerprint, _cardName, _roomName, callback) {
|
|
var data = {
|
|
imei: _imei,
|
|
deviceNum: _deviceNum,
|
|
userTelephone: _userTelephone,
|
|
userPassword: _userPassword,
|
|
password: _pwd,
|
|
operateMode: _mode,
|
|
order: _order,
|
|
fingerprintStartTime: _passwordStartTime,
|
|
fingerprintEndTime: _passwordEndTime,
|
|
length: _length,
|
|
fpTimeId: _fpTimeId,
|
|
fingerprint: _fingerprint,
|
|
is: false,
|
|
cardName: _cardName,
|
|
roomName: _roomName
|
|
};
|
|
WXAPI.fingerprintTransfer(data).then((res)=> {
|
|
callback(res)
|
|
})
|
|
}
|
|
/**
|
|
* *添加身份证
|
|
* @param {锁ID} _deviceNum
|
|
* @param {门锁IMEI} _imei
|
|
* @param {添加的用户ID} _userTelephone
|
|
* @param {用户的keyId} _userPassword
|
|
* @param {用户的蓝牙密码password} _pwd
|
|
* @param {操作类型} _mode
|
|
* @param {操作指令} _order
|
|
* @param {锁用户有效期开始时间} _passwordStartTime
|
|
* @param {锁用户有效期结束时间} _passwordEndTime
|
|
* @param {指纹数据长度length} _length
|
|
* @param {指纹fpTimeId} _fpTimeId
|
|
* @param {指纹数据fingerprint} _fingerprint
|
|
* @param {回调} callback
|
|
*/
|
|
static LDRfCardRegister(_deviceNum, _imei, _userTelephone, _userPassword, _pwd, _passwordStartTime,
|
|
_passwordEndTime,
|
|
_mode, _order, _cardName, _roomName, callback) {
|
|
var data = {
|
|
imei: _imei,
|
|
deviceNum: _deviceNum,
|
|
userTelephone: _userTelephone,
|
|
userPassword: _userPassword,
|
|
password: _pwd,
|
|
operateMode: _mode,
|
|
order: _order,
|
|
passwordStartTime: _passwordStartTime,
|
|
passwordEndTime: _passwordEndTime,
|
|
is: false,
|
|
cardName: _cardName,
|
|
roomName: _roomName
|
|
};
|
|
WXAPI.getDeviceOperateUserInfo(data).then((res) => {
|
|
callback(res)
|
|
})
|
|
}
|
|
static resetInitialization(row, callback) {
|
|
if (row.manufactureId == 201||row.manufactureId == 221) {
|
|
var data3 = {
|
|
code: "zg/deleteAllUsers",
|
|
data: {
|
|
lockerId: row.deviceNum,
|
|
imei: row.imei,
|
|
order: 6501,
|
|
},
|
|
};
|
|
WXAPI.sendCommand(data3).then((res) => {
|
|
if (res.success) {
|
|
this.$message.success("重置成功");
|
|
} else {
|
|
callback(false)
|
|
}
|
|
});
|
|
} else if (row.manufactureId == 101) {
|
|
var data2 = {
|
|
code: "isp/restoreSetting",
|
|
data: {
|
|
order: 6501,
|
|
imei: row.imei,
|
|
deviceNum: row.deviceNum,
|
|
managerTelephone: "18270949468",
|
|
managerPassword: "202108",
|
|
},
|
|
};
|
|
WXAPI.sendCommand(data2).then((res2) => {
|
|
if (res2.success) {
|
|
var str = {
|
|
deviceNum: row.deviceNum,
|
|
imei: row.imei,
|
|
order: 6101,
|
|
};
|
|
WXAPI.getDeviceRegisterManager(str).then((res1) => {
|
|
var str1 = {
|
|
imei: row.imei, //row.imsi,
|
|
deviceNum: row.deviceNum, //row.deviceNum,
|
|
operateMode: 7,
|
|
is: true,
|
|
order: 6207,
|
|
passwordStartTime: "20210813010101",
|
|
passwordEndTime: "20680813010101",
|
|
};
|
|
WXAPI.getDeviceOperateUserInfo(str1).then((res2) => {});
|
|
var str2 = {
|
|
imei: row.imei, //row.imsi,
|
|
deviceNum: row.deviceNum, //row.deviceNum,
|
|
operateMode: 4,
|
|
is: true,
|
|
order: 6204,
|
|
passwordStartTime: "20210813010101",
|
|
passwordEndTime: "20680813010101",
|
|
};
|
|
WXAPI.getDeviceOperateUserInfo(str2).then((res3) => {
|
|
if (res3.success) {
|
|
callback(true)
|
|
}
|
|
});
|
|
});
|
|
} else {
|
|
callback(false)
|
|
}
|
|
});
|
|
}
|
|
}
|
|
static getPersonCallback(person, alllist, callback) {
|
|
var personlist = []
|
|
person.map(li => {
|
|
var obj = {
|
|
person: li,
|
|
data: alllist.filter((item) => {
|
|
if (item.deviceNum && item.cardId == li.cardId) {
|
|
return item
|
|
}
|
|
})
|
|
}
|
|
personlist.push(obj)
|
|
})
|
|
callback(personlist)
|
|
}
|
|
}
|