feat:增加指纹的参数校验、对外的指纹列表接口

This commit is contained in:
liyi 2025-03-07 18:10:32 +08:00
parent c844cfbd3c
commit 80d78b00a9

View File

@ -3,9 +3,9 @@ import {cmdIds, Result, subCmdIds} from '../constant'
import {convertWeekdaysToNumber, createPackageEnd, md5Encrypt, parseTimeToList, timestampToArray} from "../format.js";
import {sm4} from "sm-crypto";
import {
checkRepeatCardName,
checkRepeatCardName, checkRepeatFingerprintName,
clearAllIcCard,
deleteIcCardRequest,
deleteIcCardRequest, getFingerprintListRequest,
getIcCardListRequest,
updateIcCardRequest
} from "../api.js";
@ -99,10 +99,35 @@ export async function registerExtendedProducts(params) {
// 如果是指纹的话需要增加的参数
if (params.type === 'fingerprint') {
const cardRequiredFields = ['fingerprintName', 'fingerprintNumber', 'fingerprintType'];
const missingField = _checkRequiredFields(params, cardRequiredFields);
if (missingField) {
return new Result(Result.NotMoreData, null, `指纹信息不完整: ${missingField}`);
if (params.operate === 0) {
const cardRequiredFields = ['fingerprintName', 'fingerprintNumber', 'fingerprintType'];
const missingField = _checkRequiredFields(params, cardRequiredFields);
if (missingField) {
return new Result(Result.NotMoreData, null, `指纹信息不完整: ${missingField}`);
}
// 检查卡昵称是否重复
const checkRepeatCardNameResult = await checkRepeatFingerprintName({
lockId: this.lockInfo.lockId,
fingerprintName: params.fingerprintName
})
if (checkRepeatCardNameResult.code !== Result.Success.code) {
return checkRepeatCardNameResult
}
}
// 修改指纹时的参数校验
if (params.operate === 1 || params.operate === 2) {
let cardRequiredFields = ['fingerprintId'];
if (params.operate === 1) {
cardRequiredFields.push('fingerprintType')
}
if (params.operate === 2) {
cardRequiredFields.push('fingerprintNumber')
}
const missingField = _checkRequiredFields(params, cardRequiredFields);
if (missingField) {
return new Result(Result.NotMoreData, null, `指纹信息不完整: ${missingField}`);
}
}
}
@ -334,4 +359,15 @@ export async function registerExtendedProductsCancel(params) {
*/
export async function getIcCardList(params) {
return await getIcCardListRequest(params)
}
/**
* 获取指纹列表
* @param params.lockId 锁id 必填
* @param params.pageNo 页码选填
* @param params.pageSize 每页显示数选填
* @returns {Promise<unknown>}
*/
export async function getFingerprintList(params) {
return await getFingerprintListRequest(params)
}