diff --git a/packages/ui/certd-client/src/views/sys/account/api.ts b/packages/ui/certd-client/src/views/sys/account/api.ts new file mode 100644 index 00000000..16de399a --- /dev/null +++ b/packages/ui/certd-client/src/views/sys/account/api.ts @@ -0,0 +1,9 @@ +import { request } from "/@/api/service"; + +export function PreBindUser(userId: number) { + request({ + url: "/sys/account/preBindUser", + method: "post", + data: { userId } + }); +} diff --git a/packages/ui/certd-client/src/views/sys/account/index.vue b/packages/ui/certd-client/src/views/sys/account/index.vue index 463a53ff..1bc949b2 100644 --- a/packages/ui/certd-client/src/views/sys/account/index.vue +++ b/packages/ui/certd-client/src/views/sys/account/index.vue @@ -9,7 +9,7 @@ import { IframeClient } from "@certd/lib-iframe"; import { onMounted, ref } from "vue"; import { useUserStore } from "/@/store/modules/user"; import { useSettingStore } from "/@/store/modules/settings"; - +import * as api from "./api"; const iframeRef = ref(); const userStore = useUserStore(); @@ -22,7 +22,7 @@ type SubjectInfo = { }; onMounted(() => { const iframeClient = new IframeClient(iframeRef.value); - iframeClient.register("getSubjectInfo", (req) => { + iframeClient.register("getSubjectInfo", async (req) => { const subjectInfo: SubjectInfo = { subjectId: settingStore.installInfo.siteId, installTime: settingStore.installInfo.installTime, @@ -31,11 +31,22 @@ onMounted(() => { }; return subjectInfo; }); + + iframeClient.register("preBindSubject", async (req) => { + const userId = req.data.userId; + await api.PreBindUser(userId); + }); });