From 5f41b51873e1cf8b4a6b1e20ca360acabf4c7c57 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BE=90=E5=8B=A4=E6=B0=91?= Date: Tue, 3 Sep 2024 18:35:09 +0800 Subject: [PATCH] =?UTF-8?q?=E6=89=AB=E7=A0=81=E7=AD=BE=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/ets/bean/data/SignBindBatchData.ets | 14 ++++++++ src/main/ets/bean/data/SignBindData.ets | 13 +++++++ src/main/ets/http/ApiConfig.ets | 15 ++++++++ src/main/ets/manager/SignManagerReal.ets | 51 +++++++++++++++++++++++++--- 4 files changed, 88 insertions(+), 5 deletions(-) create mode 100644 src/main/ets/bean/data/SignBindBatchData.ets create mode 100644 src/main/ets/bean/data/SignBindData.ets diff --git a/src/main/ets/bean/data/SignBindBatchData.ets b/src/main/ets/bean/data/SignBindBatchData.ets new file mode 100644 index 0000000..8ed7fd6 --- /dev/null +++ b/src/main/ets/bean/data/SignBindBatchData.ets @@ -0,0 +1,14 @@ +export class SignBindBatchData { + uniqueIdList: string[] + timestamp: string + userId: string + + constructor(uniqueIdList: string[], timestamp: string, userId: string) { + this.uniqueIdList = uniqueIdList + this.timestamp = timestamp + this.userId = userId + } + + + +} \ No newline at end of file diff --git a/src/main/ets/bean/data/SignBindData.ets b/src/main/ets/bean/data/SignBindData.ets new file mode 100644 index 0000000..5c61fb4 --- /dev/null +++ b/src/main/ets/bean/data/SignBindData.ets @@ -0,0 +1,13 @@ +export class SignBindData { + uniqueId: string + timestamp: string + userId: string + + constructor(uniqueId: string, timestamp: string, userId: string) { + this.uniqueId = uniqueId + this.timestamp = timestamp + this.userId = userId + } + + +} \ No newline at end of file diff --git a/src/main/ets/http/ApiConfig.ets b/src/main/ets/http/ApiConfig.ets index 69f1fcb..faa3181 100644 --- a/src/main/ets/http/ApiConfig.ets +++ b/src/main/ets/http/ApiConfig.ets @@ -160,6 +160,21 @@ export const oauthSure: ApiElem = { apiNo: 'oauthSure', url: 'am/v3/bjca/authorize/authentication' } +/** + * 将待签数据绑定给到用户 + */ +export const signBind: ApiElem = { + apiNo: 'signBind', + url: 'am/v3/recipe/signBind' +} + +/** + * 将待签数据绑定给到用户(批量) + */ +export const signBindBatch: ApiElem = { + apiNo: 'signBindBatch', + url: 'am/v3/recipe/batchSignBind' +} diff --git a/src/main/ets/manager/SignManagerReal.ets b/src/main/ets/manager/SignManagerReal.ets index 9a89fcb..c2d3ed1 100644 --- a/src/main/ets/manager/SignManagerReal.ets +++ b/src/main/ets/manager/SignManagerReal.ets @@ -9,6 +9,8 @@ import { getSignAutoInfo, getSignAutoQuit, oauthSure, + signBind, + signBindBatch, signWithServer, sureSignForSignAuto, verifyPin @@ -29,6 +31,8 @@ import { QrCenterScene } from '../qr/QrCenterScene'; import { ValueScene } from '../qr/ValueScene'; import { OAuthGrantModel } from '../bean/model/OAuthGrantModel'; import { SignForOAuthData } from '../bean/data/SignForOAuthData'; +import { SignBindData } from '../bean/data/SignBindData'; +import { SignBindBatchData } from '../bean/data/SignBindBatchData'; export class SignManagerReal { @@ -340,7 +344,7 @@ export class SignManagerReal { }).catch((error: Error) => { console.log('>>>>>', JSON.stringify(error)) listener && listener({ - code: 1003, + code: BJCACallMsg.FAILED.code, msg: error.message }) }) @@ -418,12 +422,49 @@ export class SignManagerReal { } break; case QrCenterScene.OAUTH_SIGN: - // SignBindManage.qrSignBind(activity, clientId, qrContentModel.getClientId(), - // qrContentModel.getUniqueId(), qrContentModel.getTimestamp(), listener); + ApiUtils.post(signBind, new SignBindData(qrContentModel.uniqueId ?? '', qrContentModel.timestamp ?? '', + GlobalValue.getInstance().userId ?? '')) + .then(() => { + SignManagerReal.signWithFirmId([qrContentModel.uniqueId ?? ''], res => { + if (res.code === BJCACallMsg.SUCCESS.code) { + listener && listener(BJCACallMsg.SUCCESS) + } else { + listener && listener({ + code: res.code, + msg: res.msg + }) + } + }) + + }).catch((error: Error) => { + listener && listener({ + code: BJCACallMsg.FAILED.code, + msg: error.message + }) + }) break; case QrCenterScene.OAUTH_SIGN_BATCH: - // SignBindManage.qrSignBindBatch(activity, clientId, qrContentModel.getClientId(), - // qrContentModel.getUniqueIdList(), qrContentModel.getTimestamp(), listener); + ApiUtils.post(signBindBatch, + new SignBindBatchData(qrContentModel.uniqueIdList ?? [], qrContentModel.timestamp ?? '', + GlobalValue.getInstance().userId ?? '')) + .then(() => { + SignManagerReal.signWithFirmId(qrContentModel.uniqueIdList ?? [], res => { + if (res.code === BJCACallMsg.SUCCESS.code) { + listener && listener(BJCACallMsg.SUCCESS) + } else { + listener && listener({ + code: res.code, + msg: res.msg + }) + } + }) + + }).catch((error: Error) => { + listener && listener({ + code: BJCACallMsg.FAILED.code, + msg: error.message + }) + }) break; case QrCenterScene.SELF_SIGN: if (qrContentModel.userId === GlobalValue.getInstance().userId) {