zhangwei
2024-09-11 4eef04aa662cf4f8fbde60ca99c0011b6203c558
src/pages/mine/apply.vue
@@ -4,9 +4,9 @@
         <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"
                  max='1' background='#fff' @success="success('FRONT',$event)" @error="errorFront"
                  @complete="completeFront" width="300" height="150">
                  <image :src="userInfo.idCardFace?userInfo.idCardFace:'/static/positive.png'" mode="widthFix"
                  <image src="/static/positive.png" mode="widthFix"
                     style="width: 300rpx;height: 150rpx;"></image>
               </fui-upload>
               <!-- <template #right>
@@ -17,7 +17,7 @@
               <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"
                  <image src="/static/negative.png" mode="widthFix"
                     style="width: 300rpx;height: 150rpx;"></image>
               </fui-upload>
            </up-form-item>
@@ -56,7 +56,8 @@
            <!-- <tem-session/> -->
            <!-- </up-popup> -->
            <view class="tabbtns">
               <up-button color='#fece01' class="text-69" text="保存" @click='saveUserWorker'></up-button>
               <up-button color='#fece01' class="text-69" text="保存" :loading='isLoading' loadingText="保存中"
                  @click='saveUserWorker'></up-button>
            </view>
         </up-form>
      </view>
@@ -70,7 +71,6 @@
      onShow,
      onReady
   } from "@dcloudio/uni-app";
   import {
      apiBaseUrl
   } from '@/common/setting/constVarsHelper.js';
@@ -91,10 +91,27 @@
   // let webgl = ref()
   onLoad(() => {
      let data = JSON.parse($db.get('userInfo'))
      const userToken = $db.get("userToken");
      if (!userToken) {
         uni.showToast({
            title: '请先登录!',
            icon: 'none',
            duration: 1000,
            complete: function() {
               setTimeout(function() {
                     uni.hideToast();
                     uni.navigateTo({
                        url: '/pages/login/index'
                     });
                  },
                  1000);
            }
         });
      }
      let data = $db.get('userInfo') ? JSON.parse($db.get('userInfo')) : null
      if (data && data.userWorker) {
         userInfo.idCardFace = data.userWorker?data.userWorker.idCardFace:'' //身份证正面路径
         userInfo.idCardBack = data.userWorker?data.userWorker.idCardBack:'' //身份证反面路径
         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 //身份证号
@@ -102,8 +119,11 @@
         userInfo.resume = data.userWorker.resume //简历描述
         userInfo.id = data.userWorker.id
      }
      console.log(userInfo,data && data.userWorker,'data && data.userWorker');
      console.log(userInfo, data && data.userWorker, 'data && data.userWorker');
   })
   let uploadF = ref()
   let uploadB = ref()
   let isLoading = ref(false)
   let rules = {
      idCardFace: {
         required: true,
@@ -145,6 +165,15 @@
   const formRef = ref()
   onReady(() => {
      formRef.value.setRules(rules);
      if(userInfo.idCardBack){
         uploadB.value.urls = [userInfo.idCardBack]
         uploadB.value.status = ['success']
      }
      if(userInfo.idCardFace){
         uploadF.value.urls = [userInfo.idCardFace]
         uploadF.value.status = ['success']
      }
   })
   onMounted(() => {
      formRef.value.setRules(rules);
@@ -169,6 +198,7 @@
   const saveUserWorker = (e) => {
      formRef.value.validate().then(res => {
         isLoading.value = true
         let obj = {
            imgBase64: idCardFaceBase64,
            cordId: userInfo.idCode, //身份证号码
@@ -183,8 +213,18 @@
                        title: "保存成功!",
                        icon: "success"
                     })
                     $api.getUser().then(res => {
                        $db.set('userInfo', JSON.stringify(res.data))
                     })
                     uni.navigateBack()
                  }
                  isLoading.value = false
               })
            } else {
               $util.showToast({
                  title: res.msg
               })
               isLoading.value = false
            }
         })
      }).catch(errors => {
@@ -198,19 +238,31 @@
      //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
      if (res.code == 1) {
         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 //身份证反面路径
         }
      } else {
         userInfo.idCardBack = res.data.url //身份证反面路径
         uni.$u.toast(res.error)
         if (text == 'FRONT') {
            uploadF.value.deleteImage()
         } else {
            uploadB.value.deleteImage()
         }
      }
   }
   //上传失败时触发
   const error = (e) => {}
   const errorFront = (e) => {
      console.log(e, '--------------');
   }
   //选择图片或上传完成时触发
   const completeFront = (e) => {
      if (e.action == 'delete') {
@@ -220,6 +272,7 @@
         userInfo.name = ''
         userInfo.address = ''
         gender.value = ''
         return
      }
      console.log(e, '删除')
      $util.pathToBase64(e.urls[0]).then(res => {