From 376ac09a54e8c95190d06bf39f295c890829c103 Mon Sep 17 00:00:00 2001 From: zhangwei <1504152376@qq.com> Date: 星期二, 03 九月 2024 15:43:25 +0800 Subject: [PATCH] 查看工人详情 --- src/pages/mine/apply.vue | 278 +++++++++++++++++++++---------------------------------- 1 files changed, 106 insertions(+), 172 deletions(-) diff --git a/src/pages/mine/apply.vue b/src/pages/mine/apply.vue index a4378db..a07b706 100644 --- a/src/pages/mine/apply.vue +++ b/src/pages/mine/apply.vue @@ -1,11 +1,11 @@ <template> <view class="full-page-fff"> <view class="content"> - <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"> + <up-form labelPosition="left" :model="userInfo" :rules="rules" ref="formRef" labelWidth='80'> + <up-form-item label="韬唤璇佹闈�" prop="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="completeFront" width="300" height="150"> <image :src="userInfo.idCardFace?userInfo.idCardFace:'/static/positive.png'" mode="widthFix" style="width: 300rpx;height: 150rpx;"></image> </fui-upload> @@ -13,28 +13,28 @@ <up-icon name="arrow-right"></up-icon> </template> --> </up-form-item> - <up-form-item label="韬唤璇佸弽闈�" prop="userInfo.idCardBack" required> - <fui-upload immediate :url="`${apiBaseUrl}api/UpFile/UploadIdCord?PageName=Back`" ref="uploadB" + <up-form-item label="韬唤璇佸弽闈�" prop="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-form-item label="濮撳悕" required prop="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-form-item label="鑱旂郴鐢佃瘽" required prop="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-form-item label="韬唤璇佸彿" required prop="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-form-item label="鑱旂郴鍦板潃" required prop="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 label="绠�鍘嗘弿杩�" required prop="resume" ref="item1"> + </up-form-item> <up-textarea v-model="userInfo.resume" placeholder="璇疯緭鍏ョ畝鍘嗘弿杩�"></up-textarea> <!-- <up-form-item label="鎬у埆" required prop="Gender" ref="item2"> @@ -67,13 +67,15 @@ <script setup> import { onLoad, - onShow + onShow, + onReady } from "@dcloudio/uni-app"; import { apiBaseUrl } from '@/common/setting/constVarsHelper.js'; import { + onMounted, getCurrentInstance } from 'vue' const { @@ -90,9 +92,9 @@ // let webgl = ref() onLoad(() => { let data = JSON.parse($db.get('userInfo')) - if (data) { - userInfo.idCardFace = data.userWorker.idCardFace //韬唤璇佹闈㈣矾寰� - userInfo.idCardBack = data.userWorker.idCardBack //韬唤璇佸弽闈㈣矾寰� + if (data && data.userWorker) { + userInfo.idCardFace = data.userWorker?data.userWorker.idCardFace:'' //韬唤璇佹闈㈣矾寰� + userInfo.idCardBack = data.userWorker?data.userWorker.idCardBack:'' //韬唤璇佸弽闈㈣矾寰� userInfo.name = data.userWorker.name //濮撳悕 userInfo.phone = data.userWorker.phone //鐢佃瘽鍙风爜 userInfo.idCode = data.userWorker.idCode //韬唤璇佸彿 @@ -100,29 +102,57 @@ 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() + console.log(userInfo,data && data.userWorker,'data && data.userWorker'); }) - - let status = ref(false) - let form1 = ref() - let radiolist1 = [{ - name: '鐢�', - }, - { - name: '濂�', + let rules = { + idCardFace: { + required: true, + message: '璇蜂笂浼犺韩浠借瘉姝i潰', + trigger: ['blur', 'change'] + }, //钀ヤ笟鎵х収璺緞 + idCardBack: { + required: true, + message: '璇蜂笂浼犺韩浠借瘉鍙嶉潰', + trigger: ['blur', 'change'] + }, //浼佷笟鍚嶇О + name: { + required: true, + message: '濮撳悕涓嶈兘涓虹┖', + trigger: ['blur', 'change'] + }, //娉ㄥ唽鏃堕棿 + idCode: { + required: true, + message: '韬唤璇佸彿涓嶈兘涓虹┖', + trigger: ['blur', 'change'] + }, //鑱旂郴鍦板潃 + address: { + required: true, + message: '鑱旂郴鍦板潃涓嶈兘涓虹┖', + trigger: ['blur', 'change'] + }, //浼佷笟娉ㄥ唽鍙� + resume: { + required: true, + message: '绠�鍘嗘弿杩颁笉鑳戒负绌�', + trigger: ['blur', 'change'] + }, //鍏徃绠�浠� + phone: { + required: true, + message: '鐢佃瘽鍙风爜涓嶈兘涓虹┖', + trigger: ['blur', 'change'] } - ] - const userInfo = reactive({ + } + let status = ref(false) + const formRef = ref() + onReady(() => { + formRef.value.setRules(rules); + }) + onMounted(() => { + formRef.value.setRules(rules); + console.log(formRef.value, 'formRef'); // 璁块棶瀛愮粍浠禗emo涓殑灞炴�� + }); + let gender = ref() + let idCardFaceBase64 = ref('') + let userInfo = reactive({ idCardFace: '', //韬唤璇佹闈㈣矾寰� idCardBack: '', //韬唤璇佸弽闈㈣矾寰� name: '', //濮撳悕 @@ -132,105 +162,49 @@ resume: '', //绠�鍘嗘弿杩� id: 0 }) - // 浣跨敤 reactive 鍒涘缓鍝嶅簲寮忕姸鎬� - const state = reactive({ - showSex: false, - model1: { - userInfo: { - name: '', - sex: '', - }, - }, - actions: [{ - name: '鐢�' - }, - { - name: '濂�' - }, - { - name: '淇濆瘑' - }, - ], - - radio: '', - switchVal: false, - }); - - // 浣跨敤 ref 鍒涘缓鍝嶅簲寮忓紩鐢� - const formRef = ref(null); - - const IaiAddPerso = (e) => { } const saveUserWorker = (e) => { - $api.saveUserWorker(userInfo).then(res => { - if (res.code == 1) { - $util.showToast({ - title: "淇濆瓨鎴愬姛锛�", - icon: "success" - }) + formRef.value.validate().then(res => { + let obj = { + imgBase64: idCardFaceBase64, + cordId: userInfo.idCode, //韬唤璇佸彿鐮� + name: userInfo.name, //濮撳悕 + gender: gender.value == '鐢�' ? 1 : 2 //鎬у埆 } + $api.IaiAddPersoBase64(obj).then(res => { + if (res.data.isOK == true) { + $api.saveUserWorker(userInfo).then(res => { + if (res.code == 1) { + $util.showToast({ + title: "淇濆瓨鎴愬姛锛�", + icon: "success" + }) + } + }) + } + }) + }).catch(errors => { + console.log(errors) + uni.$u.toast(errors[0].message) }) - 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, "") || "{}") + console.log(res.data.url, text, res.data.url && text == 'FRONT'); 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 + gender.value = res.data.info.sex } else { userInfo.idCardBack = res.data.url //韬唤璇佸弽闈㈣矾寰� } @@ -238,66 +212,26 @@ //涓婁紶澶辫触鏃惰Е鍙� const error = (e) => {} //閫夋嫨鍥剧墖鎴栦笂浼犲畬鎴愭椂瑙﹀彂 + const completeFront = (e) => { + if (e.action == 'delete') { + // 鍒犻櫎澶勭悊 + userInfo.idCardFace = '' //韬唤璇佹闈㈣矾寰� + userInfo.idCode = '' //韬唤璇佸彿 + userInfo.name = '' + userInfo.address = '' + gender.value = '' + } + console.log(e, '鍒犻櫎') + $util.pathToBase64(e.urls[0]).then(res => { + idCardFaceBase64 = res + }) + } const complete = (e) => { if (e.action == 'delete') { // 鍒犻櫎澶勭悊 - + userInfo.idCardBack = '' } 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> -- Gitblit v1.9.1