k94314517
2025-07-18 f93f455134ff234be9d257c0f432c8052f1c32cd
small-program/pages/certification-results/certification-results.vue
@@ -1,56 +1,66 @@
<template>
   <view class="box">
      <!-- <view class="box-head">
      <view class="box-head" v-if="info && info.auditStatus ==2">
         <image src="/static/icon/ic_pass@2x.png" mode="widthFix"></image>
         <text>供餐认证已通过</text>
      </view> -->
      <view class="box-error">
         <text >{{typeName}}已通过</text>
      </view>
      <view class="box-error"  v-if="info && info.auditStatus ==3">
         <view class="box-error-top">
            <image src="/static/icon/ic_fail@2x.png" mode="widthFix"></image>
            <text>供餐认证已拒绝</text>
            <text>{{typeName}}已拒绝</text>
         </view>
         <view class="box-error-info">营业执照过期,请重新提交审核</view>
         <view class="box-error-info">{{info.auditRemark}}</view>
      </view>
      <view class="box-ing"  v-if="info && (info.auditStatus||1) ==1">
         <view class="box-ing-top">
            <image src="/static/icon/ic_renzhengzhong@2x.png" mode="widthFix"></image>
            <text>认证中</text>
         </view>
         <view class="box-ing-info">认证结果将通过短信/订阅消息通知您</view>
      </view>
      <view class="box-error" v-if="!info">
         <view class="box-error-top">
            <image src="/static/icon/ic_fail@2x.png" mode="widthFix"></image>
            <text>未查询到申请记录</text>
         </view>
      </view>
      <view class="box-list">
         <view class="box-list-item">
            <view class="box-list-item-label">认证类型</view>
            <view class="box-list-item-val">
               <text>个人</text>
               <text>{{info.authType == 1?'企业':'个人'}}</text>
            </view>
         </view>
         <view class="box-list-item">
            <view class="box-list-item-label">联系人</view>
            <view class="box-list-item-val">
               <text>李万海</text>
               <text>{{info.linkName}}</text>
            </view>
         </view>
         <view class="box-list-item">
            <view class="box-list-item-label">手机号</view>
            <view class="box-list-item-val">
               <text>18155446667</text>
               <text>{{info.telephone}}</text>
            </view>
         </view>
         <view class="box-list-item">
            <view class="box-list-item-label">接单位置</view>
            <view class="box-list-item-val">
               <text>安徽省合肥市经开区莲花科技园F座402</text>
               <view class="box-list-item-val-edit">修改</view>
               <text>{{info.location}}</text>
               <view class="box-list-item-val-edit"  v-if="info && info.auditStatus ==2" @click="goEditAddr">修改</view>
            </view>
         </view>
         <view class="box-list-info">
            <view class="box-list-info-label">身份信息</view>
         <view class="box-list-info" >
            <view class="box-list-info-label">{{info.authType==1?'认证资料':'身份信息'}}</view>
            <view class="box-list-info-list">
               <view class="box-list-info-list-image">
                  <image src="/static/image/btn_guohui@2x.png" mode="widthFix"></image>
               </view>
               <view class="box-list-info-list-image">
                  <image src="/static/image/btn_guohui@2x.png" mode="widthFix"></image>
               </view>
               <view class="box-list-info-list-image" v-for="item in info.imgList">
                  <image :src="item" @click="previemImg(item)" mode="widthFix"></image>
               </view>
            </view>
         </view>
      </view>
      <view class="box-footer">
         <view class="box-footer-btn">重新认证</view>
      <view class="box-footer" v-if="info &&info.auditStatus ==3">
         <view class="box-footer-btn" @click="goRenzheng">重新认证</view>
      </view>
   </view>
</template>
@@ -59,8 +69,136 @@
   export default {
      data() {
         return {
            title: '用户认证申请',
            typeName: '用户认证',
            flag: null,
            loading:false,
            info: {},
         };
      },
      onLoad(options) {
         console.log(options)
         var flag = options.flag
         this.flag = flag
         this.getApplyData()
         switch(flag){
            case '1':
                this.title = '货运认证申请'
               this.typeName='货运认证'
               break;
            case '2':
                this.title = '供餐认证申请'
               this.typeName='供餐认证'
               break;
             default:
               this.title = '用工认证申请'
               this.typeName='用工认证'
               break;
         }
         uni.setNavigationBarTitle({
            title:this.title
         })
      },
      methods:{
         goRenzheng(){
            uni.navigateTo({
               url: '/pages/employment-certification/employment-certification?flag='+this.flag
            })
         },
         getApplyData(){
            var that = this
            var param ={ type:that.flag}
            this.$u.api.getIdentityInfo(param).then(res =>{
               if(res.code ===200){
                  that.info = res.data
               }
             })
         },
         previemImg(src){
            uni.previewImage({
               current: src, // 当前显示图片的http链接
               urls: [src] // 需要预览的图片http链接列表
              });
         },
         goEditAddr(){
            var that =this
            uni.chooseLocation({
               success:(res)=> {
                  console.log(res);
                  var param ={
                     id:that.info.id,
                     lat:res.latitude,
                     location:res.address,
                     lgt:res.longitude
                  }
                  that.$u.api.updateLocation(param).then(res1 =>{
                     if(res1.code ===200){
                        uni.showToast({
                           title: '修改成功 ',
                           icon: "none",
                           duration: 2000
                        });
                        that.info.location=param.location
                        that.info.lat=param.lat
                        that.info.lgt=param.lgt
                      }
                   })
               },
               fail:()=>{
                  // 如果用uni.chooseLocation没有获取到地理位置,则需要获取当前的授权信息,判断是否有地理授权信息
                  uni.getSetting({
                     success: (res) => {
                        console.log(res);
                        var status = res.authSetting;
                        if(!status['scope.userLocation']){
                        // 如果授权信息中没有地理位置的授权,则需要弹窗提示用户需要授权地理信息
                           uni.showModal({
                              title:"是否授权当前位置",
                              content:"需要获取您的地理位置,请确认授权,否则地图功能将无法使用",
                              success:(tip)=>{
                                 if(tip.confirm){
                                 // 如果用户同意授权地理信息,则打开授权设置页面,判断用户的操作
                                    uni.openSetting({
                                       success:(data)=>{
                                       // 如果用户授权了地理信息在,则提示授权成功
                                          if(data.authSetting['scope.userLocation']===true){
                                             uni.showToast({
                                                title:"授权成功",
                                                icon:"success",
                                                duration:1000
                                             })
                                             // 授权成功后,然后再次chooseLocation获取信息
                                             uni.chooseLocation({
                                                success: (res) => {
                                                   console.log("详细地址",res);
                                                   // this.getRegionFn(res);
                                                }
                                             })
                                          }else{
                                             uni.showToast({
                                                title:"授权失败",
                                                icon:"none",
                                                duration:1000
                                             })
                                          }
                                       }
                                    })
                                 }
                              }
                           })
                        }
                     },
                     fail: (res) => {
                        uni.showToast({
                           title:"调用授权窗口失败",
                           icon:"none",
                           duration:1000
                        })
                     }
                  })
               }
            })
         }
      }
   }
</script>
@@ -115,6 +253,37 @@
            margin-top: 32rpx;
         }
      }
      .box-ing {
         width: 100%;
         height: 248rpx;
         background: rgba(255, 114, 0, 0.10);
         display: flex;
         flex-direction: column;
         align-items: center;
         justify-content: center;
         .box-ing-top {
            display: flex;
            align-items: center;
            justify-content: center;
            image {
               width: 60rpx;
               height: 60rpx;
               margin-right: 24rpx;
            }
            text {
               font-weight: 600;
               font-size: 40rpx;
               color: #FF7200;
            }
         }
         .box-ing-info {
            font-weight: 400;
            font-size: 28rpx;
            color: #333333;
            margin-top: 32rpx;
         }
      }
      .box-head {
         width: 100%;
         height: 172rpx;
@@ -151,9 +320,11 @@
               display: flex;
               align-items: center;
               justify-content: space-between;
               flex-wrap: wrap;
               .box-list-info-list-image {
                  width: 334rpx;
                  width: 314rpx;
                  height: 216rpx;
                  margin: 10rpx;
                  border-radius: 16rpx;
                  overflow: hidden;
                  display: flex;