From 6d2f9910457034b99e4218b877db56d4a54428df Mon Sep 17 00:00:00 2001
From: YWQ HK IX <568170040@qq.com>
Date: Mon, 25 Sep 2023 22:07:03 +0800
Subject: [PATCH] upload
---
src/api/camera.js | 16 +++++++---------
src/pages/camera/index.vue | 25 ++++++++++++++++++++++---
2 files changed, 29 insertions(+), 12 deletions(-)
diff --git a/src/api/camera.js b/src/api/camera.js
index c6e5d41..73c1114 100644
--- a/src/api/camera.js
+++ b/src/api/camera.js
@@ -15,17 +15,15 @@ export function getImageQrcode(machineQrcodeId) {
})
}
-/**
-* @description:生成画报
-* @param {appId,img}
-* @return: data
+/**
+* @description:轮询-获取扫码上传照片
+* @param id
+* @return: imgUrl
*/
-export function getUserQrcodeApi(data) {
+export function findImage(id) {
return request({
- url: `/api/miniApp/getUserQrcode`,
- method: 'POST',
- responseType: "arraybuffer",
- data
+ url: `/api/screenImg/findImage?id=${id}`,
+ method: 'get'
})
}
diff --git a/src/pages/camera/index.vue b/src/pages/camera/index.vue
index d060fcc..40353f2 100644
--- a/src/pages/camera/index.vue
+++ b/src/pages/camera/index.vue
@@ -67,7 +67,7 @@
- 打开微信扫码登录小程序
+ 打开微信扫码上传照片
取 消
@@ -78,7 +78,7 @@
import { ref, onMounted } from "vue";
import { onLoad, onShow, onUnload } from "@dcloudio/uni-app";
-import { getImageQrcode } from "../../api/camera.js";
+import { getImageQrcode, findImage } from "../../api/camera.js";
let imgSrc = ref("");
let isSuccess = ref(false);
@@ -88,6 +88,8 @@ let modelUrl = ref("");
let QRCodeUrl = ref("");
let showQrCode = ref(false);
+let timer = ref(null);
+
const startCamera = () => {
function getUserMedia(constraints, success, error) {
if (navigator.mediaDevices.getUserMedia) {
@@ -184,8 +186,10 @@ const takePicture = () => {
console.log("Take Picture !");
};
+// 确认照片
const confirmPhoto = () => {};
+// 不满意,重新拍一张
const reTry = () => {
isSuccess.value = false;
isShowCanvas.value = true;
@@ -202,6 +206,21 @@ const uploadImg = async () => {
const res = await getImageQrcode(UserId);
QRCodeUrl.value = res.data.wxQrcode;
showQrCode.value = true;
+
+ // 成功展示二维码之后,轮询获取上传照片状态
+ timer.value = setInterval(() => {
+ refreshUploadStatus(UserId);
+ }, 1000);
+ console.log(res, "res");
+ } catch (error) {
+ console.log(error, "error");
+ }
+};
+
+// 刷新状态,直到返回用户上传的图片url
+const refreshUploadStatus = async (id) => {
+ try {
+ const res = await findImage(id);
console.log(res, "res");
} catch (error) {
console.log(error, "error");
@@ -215,7 +234,7 @@ onLoad((options) => {
onMounted(() => {
console.log(this);
-
+ clearInterval(timer.value);
startCamera();
});