'工作证'

This commit is contained in:
unknown 2025-11-01 07:56:04 +08:00
parent 63097d8870
commit 6e8d2563d5
4 changed files with 314 additions and 101 deletions

View File

@ -64,9 +64,10 @@ export default{
});
},
linkOrder(){
uni.navigateTo({
url: '/pages/type/type'
});
// uni.navigateTo({
// url: '/pages/type/type'
// });
this.$emit('centerClick','')
}
},
mounted(){

View File

@ -13,7 +13,7 @@
<view class="menuLine" v-show="menuNum == 2"></view>
</view>
</view>
<view class="cityBox flex-center" @click="showCityClick">
<view class="cityBox flex-center">
{{cityText||'选择城市'}}
</view>
</view>
@ -249,25 +249,27 @@
<view class="popOneBtn flex-center">好的</view>
</view>
</u-popup>
<u-popup :show="pop2Show" @open="open" mode="center" :round="30">
<view class="popBoxTwo">
<u-popup :show="pop2Show" @click="pop2Show=false" mode="center" :round="30">
<view class="popBoxTwo" @click="pop2Show=false">
<image :src="path+'/assets/img/icon/bg4.png'" class="popTwoImg"></image>
<view class="popContent">
<text class="popTwoText1">工作证</text>
<text class="popTwoText2">张天辰</text>
<text class="popTwoText3">工号GH02301~</text>
<image :src="path+'/assets/img/icon/bg4.png'" class="popTowHeadImg"></image>
<text class="popTwoText2">{{personInfo.realname}}</text>
<!-- <text class="popTwoText3">工号GH02301~</text> -->
<image :src="userinfo.avatar" class="popTowHeadImg"></image>
<view class="flex-center" style="margin-top: 40rpx;">
<view class="flex-center">
<text class="text1">人身保险</text>
<view class="status">已上传</view>
<view class="status" v-if="personInfo.personal_insurance">已上传</view>
<view class="status">待上传</view>
</view>
<view class="flex-center" style="margin-left: 37rpx;">
<text class="text1">健康证</text>
<view class="status">已上传</view>
<view class="status" v-if="personInfo.health_certificate">已上传</view>
<view class="status">待上传</view>
</view>
</view>
<view class="popTwoText4">高空作业证</view>
<!-- <view class="popTwoText4">高空作业证</view> -->
</view>
</view>
</u-popup>
@ -329,7 +331,7 @@
</view>
</u-popup>
<cancleOrder @cancleReason="cancleReason" :cancleShow="cancleShow" @closeCancle="cancleShow=false"></cancleOrder>
<custom-tab-bar :current-page="0" />
<custom-tab-bar :current-page="0" @centerClick="centerClick" />
<!-- <u-popup :show="showCity"> -->
<view v-show="showCity" style="width:750upx;height: 100%;position: fixed;left: 0;top:0;z-index: 999;">
@ -352,6 +354,8 @@
export default {
data() {
return {
userinfo: {},
personInfo: {},
jscode:'',
// limit:3,
typelist: [],
@ -467,6 +471,7 @@
onHide() {
},
onLoad() {
this.getauth()
// this.getdata()
// this.getquestion()
// this.recycleOrderList()
@ -510,6 +515,21 @@
}
},
methods: {
centerClick(val){
console.log(val,'fff')
this.pop2Show = true;
},
getauth(){
var _this = this;
_this.$api.userInfo({},res=>{
if(res.code == '1'){
_this.userinfo = res.data.user
_this.personInfo = res.data.person
_this.cityText = res.data.person.city_ids_show
}else{
}
})
},
back_city(res){
if(res){
this.cityText = res.cityName;
@ -1489,5 +1509,16 @@
color: #333333;
line-height: 36rpx;
}
.rightText2{
width: 115rpx;
height: 48rpx;
line-height: 48rpx;
text-align: center;
background: rgba(251,143,12,0.1);
border-radius: 10rpx;
font-weight: 400;
font-size: 30rpx;
color: #FB8F0C;
}
</style>

View File

@ -1,98 +1,113 @@
<template>
<view class="content">
<view class="moduleWrap">
<view class="moduleBox" style="padding-bottom: 40rpx;">
<view class="monthBox">
<view class="text1">身份证信息</view>
<text class="text2">上传本人身份证照片保持图片清晰完整</text>
</view>
<view class="flex-between" style="margin-top: 20rpx;">
<view>
<img-upload @imgList="imgListz" style="width: 300rpx;height: 190rpx;">
<template v-slot:upLoadImg>
<image :src="path+'/assets/img/icon/IDbgz.png'" mode="widthFix" style="width: 300rpx;height: 190rpx;">
</image>
</template>
</img-upload>
<view v-if="!userinfo.id_card_number">
<view class="moduleWrap">
<view class="moduleBox" style="padding-bottom: 40rpx;">
<view class="monthBox">
<view class="text1">身份证信息</view>
<text class="text2">上传本人身份证照片保持图片清晰完整</text>
</view>
<view>
<img-upload @imgList="imgListf" style="width: 300rpx;height: 190rpx;">
<template v-slot:upLoadImg>
<image :src="path+'/assets/img/icon/IDbgf.png'" mode="widthFix" style="width: 300rpx;height: 190rpx;">
</image>
</template>
</img-upload>
<view class="flex-between" style="margin-top: 20rpx;">
<view>
<img-upload @imgList="imgListz" style="width: 300rpx;height: 190rpx;">
<template v-slot:upLoadImg>
<image :src="path+'/assets/img/icon/IDbgz.png'" mode="widthFix" style="width: 300rpx;height: 190rpx;">
</image>
</template>
</img-upload>
</view>
<view>
<img-upload @imgList="imgListf" style="width: 300rpx;height: 190rpx;">
<template v-slot:upLoadImg>
<image :src="path+'/assets/img/icon/IDbgf.png'" mode="widthFix" style="width: 300rpx;height: 190rpx;">
</image>
</template>
</img-upload>
</view>
</view>
</view>
</view>
</view>
<view class="moduleWrap">
<view class="moduleBox">
<view class="text4">真实姓名</view>
<view class="inputBox">
<input v-model="realname" class="input1" type="text" placeholder="输入和身份证姓名一致" />
<view class="moduleWrap">
<view class="moduleBox">
<view class="text4">真实姓名</view>
<view class="inputBox">
<input v-model="realname" class="input1" type="text" placeholder="输入和身份证姓名一致" />
</view>
</view>
<view class="moduleBox">
<view class="text4">身份证号</view>
<view class="inputBox">
<input v-model="id_card_number" class="input1" type="text" placeholder="输入18位身份证号" />
</view>
</view>
<view class="moduleBox">
<view class="text4">有效日期</view>
<view class="inputBox inputTwoBox">
<text class="input1" @click="showStartDate=true">{{id_card_start_date||'开始时间'}}</text>
<!-- <input class="input1" type="text" placeholder="开始日期" /> -->
<text class="centerIcon"></text>
<text class="input2" @click="showEndDate=true">{{id_card_end_date||'结束时间'}}</text>
<!-- <input class="input2" type="text" placeholder="开始日期" /> -->
</view>
<u-datetime-picker
:show="showStartDate"
v-model="dateStart"
mode="date"
@confirm="confirmStartDate"
></u-datetime-picker>
<u-datetime-picker
:show="showEndDate"
v-model="dateEnd"
mode="date"
@confirm="confirmEndDate"
></u-datetime-picker>
</view>
<view class="moduleBox">
<view class="text4">证件地址</view>
<view class="inputBox">
<input v-model="id_card_address" class="input1" type="text" placeholder="与身份证住址保持一致" />
</view>
</view>
<view class="moduleBox">
<view class="text4">联系电话</view>
<view class="inputBox">
<input v-model="mobile" class="input1" type="text" placeholder="输入您的联系方式" />
</view>
</view>
<view class="moduleBox" style="padding-bottom: 60rpx;">
<view class="text4">代理区域</view>
<view class="inputBox inputTwoBox2">
<!-- <input class="input1" type="text" placeholder="请选择省份" /> -->
<view class="input1" @click="showProvince = true">{{provinceName||'请选择省份'}}</view>
<text class="centerIcon">-</text>
<view @click="showCity = true" class="input2">{{cityName||'请选择城市'}}</view>
<!-- <input class="input2" type="text" placeholder="请选择城市" /> -->
</view>
</view>
</view>
<view class="moduleBox">
<view class="text4">身份证号</view>
<view class="inputBox">
<input v-model="id_card_number" class="input1" type="text" placeholder="输入18位身份证号" />
</view>
<u-picker :show="showProvince" :columns="[provinceList]" keyName="label" @confirm="confirmProvince"></u-picker>
<u-picker :show="showCity" :columns="[cityList]" keyName="label" @confirm="confirmCity"></u-picker>
<view class="tipBox">
Tips我们会在3个工作日内审核并与您联系请注意接听电话
</view>
<view class="moduleBox">
<view class="text4">有效日期</view>
<view class="inputBox inputTwoBox">
<text class="input1" @click="showStartDate=true">{{id_card_start_date||'开始时间'}}</text>
<!-- <input class="input1" type="text" placeholder="开始日期" /> -->
<text class="centerIcon"></text>
<text class="input2" @click="showEndDate=true">{{id_card_end_date||'结束时间'}}</text>
<!-- <input class="input2" type="text" placeholder="开始日期" /> -->
</view>
<u-datetime-picker
:show="showStartDate"
v-model="dateStart"
mode="date"
@confirm="confirmStartDate"
></u-datetime-picker>
<u-datetime-picker
:show="showEndDate"
v-model="dateEnd"
mode="date"
@confirm="confirmEndDate"
></u-datetime-picker>
</view>
<view class="moduleBox">
<view class="text4">证件地址</view>
<view class="inputBox">
<input v-model="id_card_address" class="input1" type="text" placeholder="与身份证住址保持一致" />
</view>
</view>
<view class="moduleBox">
<view class="text4">联系电话</view>
<view class="inputBox">
<input v-model="mobile" class="input1" type="text" placeholder="输入您的联系方式" />
</view>
</view>
<view class="moduleBox" style="padding-bottom: 60rpx;">
<view class="text4">代理区域</view>
<view class="inputBox inputTwoBox2">
<!-- <input class="input1" type="text" placeholder="请选择省份" /> -->
<view class="input1" @click="showProvince = true">{{provinceName||'请选择省份'}}</view>
<text class="centerIcon">-</text>
<view @click="showCity = true" class="input2">{{cityName||'请选择城市'}}</view>
<!-- <input class="input2" type="text" placeholder="请选择城市" /> -->
<view style="height: 130rpx;"></view>
<view class="btnBox">
<view class="btnEle flex-center" @click="apply">
提交申请
</view>
</view>
</view>
<u-picker :show="showProvince" :columns="[provinceList]" keyName="label" @confirm="confirmProvince"></u-picker>
<u-picker :show="showCity" :columns="[cityList]" keyName="label" @confirm="confirmCity"></u-picker>
<view class="tipBox">
Tips我们会在3个工作日内审核并与您联系请注意接听电话
</view>
<view style="height: 130rpx;"></view>
<view class="btnBox">
<view class="btnEle flex-center" @click="apply">
提交申请
<view v-else class="userBox">
<view class="userTitle">已经申请加盟</view>
<view class="userContent">
<view class="userName flex-between">
<view>姓名</view>
<view>{{userinfo.realname}}</view>
</view>
<view class="userID flex-between">
<view>身份证号</view>
<view>{{userinfo.id_card_number}}</view>
</view>
</view>
</view>
</view>
@ -105,6 +120,7 @@
export default {
data() {
return {
userinfo: {},
showStartDate: false,
showEndDate: false,
dateStart: Number(new Date()),
@ -129,12 +145,38 @@
imgUpload
},
onLoad() {
this.getauth()
this.allarealist()
},
onShow() {
},
methods: {
getauth(){
var _this = this;
let obj = uni.getStorageSync('personInfo');
obj.realname = this.maskName(obj.realname)
obj.id_card_number = this.maskName(obj.id_card_number);
_this.userinfo = obj;
// _this.$api.userInfo({},res=>{
// if(res.code == '1'){
// _this.userinfo = res.data.person
// }else{
// }
// })
},
maskName(name) {
if (name.length > 1) {
return name.slice(0, 1) + '*'.repeat(name.length - 1);
} else {
return name; //
}
},
maskIdCard(idCard) {
if (idCard.length <= 2) return idCard; // 2
return idCard.slice(0, 1) + '*'.repeat(idCard.length - 2) + idCard.slice(-1);
},
confirmProvince(val){
console.log(val,val.value[0],val.value[0].children)
this.cityList = val.value[0].children
@ -313,4 +355,30 @@
line-height: 36rpx;
}
}
.userBox{
padding-top: 100rpx;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
.userTitle{
font-size: 36rpx;
font-weight: bold;
}
.userContent{
background: #fff;
width: 700rpx;
margin-top: 100rpx;
padding: 30rpx;
border-radius: 20rpx;
.userName{
border-bottom: 1rpx solid #F5F5FA;
padding-bottom: 30rpx;
}
.userID{
margin-top: 30rpx;
}
}
}
</style>

View File

@ -276,7 +276,31 @@
</view> -->
<view style="height: 220rpx; flex-shrink: 0;"></view>
</view>
<custom-tab-bar :current-page="1" />
<u-popup :show="pop2Show" @click="pop2Show=false" mode="center" :round="30">
<view class="popBoxTwo" @click="pop2Show=false">
<image :src="path+'/assets/img/icon/bg4.png'" class="popTwoImg"></image>
<view class="popContent">
<text class="popTwoText1">工作证</text>
<text class="popTwoText2">{{personInfo.realname}}</text>
<!-- <text class="popTwoText3">工号GH02301~</text> -->
<image :src="userinfo.avatar" class="popTowHeadImg"></image>
<view class="flex-center" style="margin-top: 40rpx;">
<view class="flex-center">
<text class="text1">人身保险</text>
<view class="status" v-if="personInfo.personal_insurance">已上传</view>
<view class="status">待上传</view>
</view>
<view class="flex-center" style="margin-left: 37rpx;">
<text class="text1">健康证</text>
<view class="status" v-if="personInfo.health_certificate">已上传</view>
<view class="status">待上传</view>
</view>
</view>
<!-- <view class="popTwoText4">高空作业证</view> -->
</view>
</view>
</u-popup>
<custom-tab-bar :current-page="1" @centerClick="centerClick" />
</view>
</template>
@ -292,6 +316,7 @@
person_money:0,
exchange_shop:'',
userinfo:{},
personInfo: {},
headflag:false,
nickname:'微信用户',
person:{},
@ -303,7 +328,8 @@
passwordShow: false,
eyeOpen: false,
chargeShow: false,
chargeNum: ''
chargeNum: '',
pop2Show: false
}
},
components:{
@ -334,6 +360,10 @@
},
methods: {
centerClick(val){
console.log(val,'fff')
this.pop2Show = true;
},
createRecharge(){
console.log(this.person)
let data = {
@ -400,12 +430,15 @@
if(res.data.user.avatar){
_this.avatar = res.data.user.avatar
}
_this.userinfo = res.data.user
_this.personInfo = res.data.person
// console.log(res.data.user)
_this.nickname = res.data.user.nickname
_this.point = res.data.user.user_point
_this.user_money = res.data.user.money
_this.person_money = res.data.user.person_money
_this.person = res.data.person
uni.setStorageSync('personInfo', res.data.person);
}else if(res.code == '0'){
_this.avatar = '/static/img/t2.png';
@ -949,4 +982,84 @@ button::after{
font-size: 28rpx;
color: #FFFFFF;
}
.popBoxTwo{
width: 520rpx;
height: 800rpx;
.popTwoImg{
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
z-index: 1;
}
.popContent{
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
z-index: 2;
display: flex;
flex-direction: column;
justify-content: flex-start;
align-items: center;
.popTwoText1{
font-weight: bold;
font-size: 48rpx;
color: #7F5C2A;
line-height: 60rpx;
margin-top: 106rpx;
}
.popTwoText2{
font-weight: bold;
font-size: 36rpx;
color: #4F3D24;
margin-top: 29rpx;
}
.popTwoText3{
font-weight: 400;
font-size: 24rpx;
color: #B8A58B;
}
.popTwoText4{
width: 420rpx;
height: 60rpx;
line-height: 60rpx;
padding-left: 27rpx;
background: rgba(255,141,96,0.1);
border-radius: 10rpx;
// opacity: 0.1;
font-weight: 400;
font-size: 24rpx;
color: #C56742;
margin-top: 15rpx;
}
.popTowHeadImg{
width: 300rpx;
height: 300rpx;
background: #FCA30D;
border-radius: 30rpx;
margin-top: 23rpx;
}
.text1{
font-weight: 500;
font-size: 24rpx;
color: #000000;
}
.status{
width: 80rpx;
height: 36rpx;
line-height: 36rpx;
background: #FF8D60;
border-radius: 10rpx;
font-weight: 500;
font-size: 20rpx;
color: #FFFFFF;
margin-left: 9rpx;
text-align: center;
}
}
}
</style>