From 447e19fa298ae11a1c3a3fa2d2ff3a1a8dba0501 Mon Sep 17 00:00:00 2001
From: zhangwei <1504152376@qq.com>
Date: 星期四, 29 八月 2024 17:15:29 +0800
Subject: [PATCH] -
---
src/pages/mine/apply.vue | 284 +++++++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 256 insertions(+), 28 deletions(-)
diff --git a/src/pages/mine/apply.vue b/src/pages/mine/apply.vue
index 84abc6d..a4378db 100644
--- a/src/pages/mine/apply.vue
+++ b/src/pages/mine/apply.vue
@@ -1,33 +1,62 @@
<template>
- <view class="full-page">
+ <view class="full-page-fff">
<view class="content">
- <up-form labelPosition="left" :model="model1" :rules="rules" ref="form1" labelWidth='90'>
- <up-form-item label="韬唤璇佹闈�" prop="userInfo.sex" required borderBottom @click="showSex = true; hideKeyboard()"
- ref="item1">
- <tem-upload src="/static/positive.png" />
+ <up-form labelPosition="left" :model="userInfo" :rules="rules" ref="form1" labelWidth='80'>
+ <up-form-item label="韬唤璇佹闈�" prop="userInfo.idCardFace" required>
+ <fui-upload immediate :url="`${apiBaseUrl}api/UpFile/UploadIdCord?PageName=FRONT`" ref="uploadF"
+ max='1' background='#fff' @success="success('FRONT',$event)" @error="error" @complete="complete"
+ width="300" height="150">
+ <image :src="userInfo.idCardFace?userInfo.idCardFace:'/static/positive.png'" mode="widthFix"
+ style="width: 300rpx;height: 150rpx;"></image>
+ </fui-upload>
<!-- <template #right>
<up-icon name="arrow-right"></up-icon>
</template> -->
</up-form-item>
- <up-form-item label="韬唤璇佸弽闈�" prop="userInfo.sex" required borderBottom @click="showSex = true; hideKeyboard()"
- ref="item1">
- <tem-upload src="/static/negative.png"/>
+ <up-form-item label="韬唤璇佸弽闈�" prop="userInfo.idCardBack" required>
+ <fui-upload immediate :url="`${apiBaseUrl}api/UpFile/UploadIdCord?PageName=Back`" ref="uploadB"
+ max='1' background='#fff' @success="success('Back',$event)" @error="error" @complete="complete"
+ width="300" height="150">
+ <image :src="userInfo.idCardBack?userInfo.idCardBack:'/static/negative.png'" mode="widthFix"
+ style="width: 300rpx;height: 150rpx;"></image>
+ </fui-upload>
+ </up-form-item>
+ <up-form-item label="濮撳悕" required prop="userInfo.name" ref="item1">
+ <up-input v-model="userInfo.name" border="none" placeholder="璇疯緭鍏ュ鍚�" readonly></up-input>
+ </up-form-item>
+ <up-form-item label="鑱旂郴鐢佃瘽" required prop="userInfo.phone" ref="item1">
+ <up-input v-model="userInfo.phone" border="none" placeholder="璇疯緭鍏ヨ仈绯荤數璇�"></up-input>
+ </up-form-item>
+ <up-form-item label="韬唤璇佸彿" required prop="userInfo.idCode" ref="item1">
+ <up-input v-model="userInfo.idCode" border="none" placeholder="璇疯緭鍏ヨ韩浠借瘉鍙�" readonly></up-input>
+ </up-form-item>
+ <up-form-item label="鑱旂郴鍦板潃" required prop="userInfo.address" ref="item1">
+ <up-input v-model="userInfo.address" border="none" placeholder="璇疯緭鍏ヨ仈绯诲湴鍧�"></up-input>
+ </up-form-item>
+ <up-form-item label="绠�鍘嗘弿杩�" required prop="userInfo.resume" ref="item1">
</up-form-item>
- <up-form-item label="濮撳悕" required prop="userInfo.name" borderBottom ref="item1">
- <up-input v-model="state.model1.userInfo.name" border="none" placeholder="璇疯緭鍏ュ鍚�"></up-input>
- </up-form-item>
- <up-form-item label="鑱旂郴鐢佃瘽" required prop="userInfo.name" borderBottom ref="item1">
- <up-input v-model="state.model1.userInfo.name" border="none" placeholder="璇疯緭鍏ヨ仈绯荤數璇�"></up-input>
- </up-form-item>
- <up-form-item label="韬唤璇佸彿" required prop="userInfo.name" borderBottom ref="item1">
- <up-input v-model="state.model1.userInfo.name" border="none" placeholder="璇疯緭鍏ヨ韩浠借瘉鍙�"></up-input>
- </up-form-item>
- <up-form-item label="绠�鍘嗘弿杩�" required prop="userInfo.name" borderBottom ref="item1">
- <up-textarea v-model="state.model1.userInfo.name" placeholder="璇疯緭鍏ョ畝鍘嗘弿杩�" ></up-textarea>
- </up-form-item>
+ <up-textarea v-model="userInfo.resume" placeholder="璇疯緭鍏ョ畝鍘嗘弿杩�"></up-textarea>
+ <!-- <up-form-item label="鎬у埆" required prop="Gender" ref="item2">
+ <up-radio-group v-model="userInfo.Gender">
+ <up-radio :customStyle="{marginRight: '16px'}" v-for="(item, index) in radiolist1" :key="index"
+ :label="item.name" :name="item.name">
+ </up-radio>
+ </up-radio-group>
+ </up-form-item> -->
+ <!-- <view class="text-area">
+ <camera device-position="front" style="width: 100%; height: 600rpx;"></camera>
+ </view> -->
+ <!-- <view class="tabbtns">
+ <up-button color='#fece01' class="text-69" text="浜鸿劯璇嗗埆" @click='IaiAddPerso'></up-button>
+ </view> -->
+
+
+ <!-- <up-popup :show="show" @close="close" @open="open"> -->
+ <!-- <tem-session/> -->
+ <!-- </up-popup> -->
<view class="tabbtns">
- <up-button color='#fece01' class="text-69" text="淇濆瓨"></up-button>
+ <up-button color='#fece01' class="text-69" text="淇濆瓨" @click='saveUserWorker'></up-button>
</view>
</up-form>
</view>
@@ -37,10 +66,72 @@
<script setup>
import {
+ onLoad,
+ onShow
+ } from "@dcloudio/uni-app";
+
+ import {
+ apiBaseUrl
+ } from '@/common/setting/constVarsHelper.js';
+ import {
+ getCurrentInstance
+ } from 'vue'
+ const {
+ $upload,
+ $api,
+ $util,
+ $db
+ } = getCurrentInstance().appContext.config.globalProperties
+ import {
ref,
reactive
} from 'vue';
+ // let webgl = ref()
+ onLoad(() => {
+ let data = JSON.parse($db.get('userInfo'))
+ if (data) {
+ userInfo.idCardFace = data.userWorker.idCardFace //韬唤璇佹闈㈣矾寰�
+ userInfo.idCardBack = data.userWorker.idCardBack //韬唤璇佸弽闈㈣矾寰�
+ userInfo.name = data.userWorker.name //濮撳悕
+ userInfo.phone = data.userWorker.phone //鐢佃瘽鍙风爜
+ userInfo.idCode = data.userWorker.idCode //韬唤璇佸彿
+ userInfo.address = data.userWorker.address //鑱旂郴鍦板潃
+ userInfo.resume = data.userWorker.resume //绠�鍘嗘弿杩�
+ userInfo.id = data.userWorker.id
+ }
+ // let cameraEngine = wx.createCameraContext()
+ // // 3銆佽幏鍙� Camera 瀹炴椂甯ф暟鎹�
+ // const listener = cameraEngine.onCameraFrame((frame) => {
+ // // console.log(frame)
+ // if (!status.value) {
+ // return
+ // }
+ // jiance(frame)
+ // })
+ // // 5銆佸紑濮嬬洃鍚抚鏁版嵁
+ // listener.start()
+ })
+
+ let status = ref(false)
+ let form1 = ref()
+ let radiolist1 = [{
+ name: '鐢�',
+ },
+ {
+ name: '濂�',
+ }
+ ]
+ const userInfo = reactive({
+ idCardFace: '', //韬唤璇佹闈㈣矾寰�
+ idCardBack: '', //韬唤璇佸弽闈㈣矾寰�
+ name: '', //濮撳悕
+ phone: '', //鐢佃瘽鍙风爜
+ idCode: '', //韬唤璇佸彿
+ address: '', //鑱旂郴鍦板潃
+ resume: '', //绠�鍘嗘弿杩�
+ id: 0
+ })
// 浣跨敤 reactive 鍒涘缓鍝嶅簲寮忕姸鎬�
const state = reactive({
showSex: false,
@@ -60,7 +151,7 @@
name: '淇濆瘑'
},
],
-
+
radio: '',
switchVal: false,
});
@@ -68,18 +159,155 @@
// 浣跨敤 ref 鍒涘缓鍝嶅簲寮忓紩鐢�
const formRef = ref(null);
- // 瀹氫箟鏂规硶
- function sexSelect(e) {
- state.model1.userInfo.sex = e.name;
- if (formRef.value) {
- formRef.value.validateField('userInfo.sex');
+
+
+ const IaiAddPerso = (e) => {
+
+ }
+
+ const saveUserWorker = (e) => {
+ $api.saveUserWorker(userInfo).then(res => {
+ if (res.code == 1) {
+ $util.showToast({
+ title: "淇濆瓨鎴愬姛锛�",
+ icon: "success"
+ })
+ }
+ })
+ console.log(userInfo, form1);
+ }
+ //涓婁紶鍥剧墖Base64
+ const uploadFilesFByBase64s = (el) => {
+ $api.UpdateFileBase64({
+ fileBase64: el
+ }).then(res => {
+
+ // if (res.code == 1) {
+
+ uni.hideLoading();
+ console.log(res.data.src);
+ // } else {
+
+ // }
+ });
+ }
+ const uploadIdCard = (msg, event) => {
+
+ // getBase64(msg.file.url).then(res => {
+ // console.log(res);
+ // // uploadFilesFByBase64s(res)
+ // })
+ // $api.UpdateFileBase64().then(res=>{
+ // console.log(res,'UpdateFileBase64');
+ // })
+ $api.UploadIdCord(msg.file.url, {
+ PageName: 'Back'
+ }).then(res => {
+ console.log(res);
+ })
+ uni.showLoading({
+ title: '涓婁紶涓�...'
+ });
+ // uni.getFileSystemManager().readFile({
+ // filePath: msg.file.url, // 鏇挎崲涓轰綘鐨勬枃浠惰矾寰�
+ // encoding: 'base64',
+ // success: res => {
+ // uploadFilesFByBase64s(res.data)
+ // console.log('鏂囦欢鍐呭鐨刡ase64锛�', res.data);
+ // },
+ // fail: err => {
+ // console.error('璇诲彇鏂囦欢澶辫触锛�', err);
+ // }
+ // });
+
+ }
+ //涓婁紶鎴愬姛鏃惰Е鍙�
+ const success = (text, e) => {
+ //e.res 涓烘湇鍔″櫒杩斿洖鏁版嵁
+ //涓婁紶鎴愬姛鍥炶皟锛屽鐞嗘湇鍔″櫒杩斿洖鏁版嵁銆愭澶勬牴鎹疄闄呰繑鍥炴暟鎹繘琛屽鐞嗐��
+ let res = JSON.parse(e.res.data.replace(/\ufeff/g, "") || "{}")
+ if (res.data.url && text == 'FRONT') {
+ userInfo.idCardFace = res.data.url //韬唤璇佹闈㈣矾寰�
+ userInfo.idCode = res.data.info.idNum //韬唤璇佸彿
+ userInfo.name = res.data.info.name
+ userInfo.address = res.data.info.address
+ } else {
+ userInfo.idCardBack = res.data.url //韬唤璇佸弽闈㈣矾寰�
}
+ }
+ //涓婁紶澶辫触鏃惰Е鍙�
+ const error = (e) => {}
+ //閫夋嫨鍥剧墖鎴栦笂浼犲畬鎴愭椂瑙﹀彂
+ const complete = (e) => {
+ if (e.action == 'delete') {
+ // 鍒犻櫎澶勭悊
+
+ }
+ console.log(e, '鍒犻櫎')
+
+ }
+ const jiance = (imgbuffer) => {
+ // var frameBuffer =
+ const session = wx.createVKSession({
+ track: {
+ face: {
+ mode: 2
+ } // mode: 1 - 浣跨敤鎽勫儚澶达紱2 - 鎵嬪姩浼犲叆鍥惧儚
+ },
+ version: 'v1'
+
+ })
+ const onFrame = timestamp => {
+ console.log(webgl, 'webgl');
+ const frame = session.getVKFrame(webgl.width, webgl.height)
+ if (frame) {
+ console.log(frame);
+ // renderFrame(frame)
+ }
+
+ session.requestAnimationFrame(onFrame)
+ }
+ session.start(errno => {
+ if (errno) {
+ // 濡傛灉澶辫触锛屽皢杩斿洖 errno
+ } else {
+ // 鍚﹀垯锛岃繑鍥瀗ull锛岃〃绀烘垚鍔�
+ session.detectFace({
+ frameBuffer: imgbuffer.data, // 鍥剧墖 ArrayBuffer 鏁版嵁銆備汉鑴稿浘鍍忓儚绱犵偣鏁版嵁锛屾瘡鍥涢」琛ㄧず涓�涓儚绱犵偣鐨� RGBA
+ width: imgbuffer.width, // 鍥惧儚瀹藉害
+ height: imgbuffer.height,
+ scoreThreshold: 0.8, // 璇勫垎闃堝��
+ sourceType: 1,
+ modelMode: 0,
+ })
+ }
+
+ session.requestAnimationFrame(onFrame)
+ })
+
+ session.on('updateAnchors', anchors => {
+ console.log("妫�娴嬪埌浜鸿劯", anchors)
+
+ anchors.forEach(anchor => {
+ console.log('anchor.points', anchor.points)
+ console.log('anchor.origin', anchor.origin)
+ console.log('anchor.size', anchor.size)
+ console.log('anchor.angle', anchor.angle)
+ })
+ })
+ session.on('removeAnchors', () => {
+ console.log("浜鸿劯娑堝け", "removeAnchors")
+ })
}
</script>
<style>
- .content{
+ .content {
background-color: #fff;
padding: 0 20rpx;
}
+
+ .fui-upload__item {
+ margin-top: 20rpx !important;
+ }
</style>
\ No newline at end of file
--
Gitblit v1.9.1