feat:增加人脸蓝牙应答后的api请求逻辑

This commit is contained in:
liyi 2025-03-08 10:17:29 +08:00
parent 8647526d8e
commit e7d5826a2a

View File

@ -16,22 +16,32 @@ import {
writeBLECharacteristicValue
} from './uni/basic'
import {
addCustomPasswordRequest, addFingerprintRequest, addIcCardRequest,
changeAdminKeyboardPwdRequest, clearAllFingerprint, clearAllIcCard, deleteFingerprintRequest, deleteIcCardRequest,
addCustomPasswordRequest, addFaceRequest,
addFingerprintRequest,
addIcCardRequest,
changeAdminKeyboardPwdRequest, clearAllFace,
clearAllFingerprint,
clearAllIcCard,
deleteFaceRequest,
deleteFingerprintRequest,
deleteIcCardRequest,
deleteLockRequest,
deletePasswordRequest,
getLastRecordTimeRequest,
getLockNetTokenRequest,
getStarCloudToken,
getUserNoListRequest,
updateElectricQuantityRequest, updateFingerprintRequest, updateIcCardRequest,
updateElectricQuantityRequest,
updateFaceRequest,
updateFingerprintRequest,
updateIcCardRequest,
updateLockUserNoRequest,
updatePasswordRequest,
uploadRecordRequest
} from './api'
import {
buildNumber,
emitRegisterCardConfirmEvent,
emitRegisterCardConfirmEvent, emitRegisterFaceConfirmEvent, emitRegisterFaceProcessEvent,
emitRegisterFingerprintConfirmEvent, emitRegisterFingerprintProcessEvent,
getStorage,
setStorage,
@ -1003,7 +1013,6 @@ export async function parsingCharacteristicValue(binaryData) {
}
break;
case subCmdIds.registerFingerprint:
console.log('注册指纹开始回调', decrypted)
if (decrypted[2] === Result.Success.code) {
// 锁版应答成功
switch (this.requestParams.operate) {
@ -1048,7 +1057,6 @@ export async function parsingCharacteristicValue(binaryData) {
}
break;
case subCmdIds.registerFingerprintProcess:
console.log('注册指纹过程回调', decrypted)
emitRegisterFingerprintProcessEvent({
status: decrypted[5],
process: decrypted[6]
@ -1074,6 +1082,76 @@ export async function parsingCharacteristicValue(binaryData) {
await this.disconnectDevice()
}
break;
case subCmdIds.registerFace:
if (decrypted[2] === Result.Success.code) {
// 锁版应答成功
switch (this.requestParams.operate) {
case 0:
// 注册开始返回最大注册次数
this.characteristicValueCallback(new Result(Result.Success.code, {
maxRegCount: decrypted[11],
}, Result.Success.message))
await this.disconnectDevice()
break;
case 1:
// 修改
const updateResult = await updateFaceRequest({
...this.requestParams,
faceId: this.requestParams.faceId,
faceRight: this.requestParams.isAdmin
})
this.characteristicValueCallback(updateResult)
await this.disconnectDevice()
break;
case 2:
// 删除
const deleteResult = await deleteFaceRequest({
faceId: this.requestParams.faceId,
lockId: this.lockInfo.lockId,
})
this.characteristicValueCallback(deleteResult)
await this.disconnectDevice()
break;
case 3:
// 删除全部
const deleteAllResult = await clearAllFace({
lockId: this.lockInfo.lockId,
})
this.characteristicValueCallback(deleteAllResult)
await this.disconnectDevice()
break;
default:
this.characteristicValueCallback(new Result(decrypted[2]))
break;
}
}
break;
case subCmdIds.registerFaceProcess:
emitRegisterFaceProcessEvent({
status: decrypted[5],
process: decrypted[6]
})
break;
case subCmdIds.registerFaceConfirm:
if (this.requestParams.operate === 0) {
const addResult = await addFaceRequest({
...this.requestParams,
isCoerced: this.requestParams.isForce,
fingerRight: this.requestParams.isAdmin,
lockId: this.lockInfo.lockId,
faceNumber: this.requestParams.no || this.requestParams.faceNumber,
faceUserNo: this.requestParams.faceUserNo
})
if (addResult.code === Result.Success.code) {
// 增加返回一个序号
addResult.data.faceNumber = decrypted[9] * 256 + decrypted[10];
}
// 触发事件
emitRegisterFaceConfirmEvent(addResult)
// 断开蓝牙连接
await this.disconnectDevice()
}
break;
default:
break
}