提出问题修复

- 首页选择供应类型提示字样,配件商->品牌商
- 需求大厅刚进入时不校验实名和绑卡,接单时才校验并弹窗提示
- 实名认证无个人认证,均为企业认证,姓名拆开为姓氏两个字段填写,调整页面展示及必填项校验
This commit is contained in:
donqi 2022-08-23 18:05:01 +08:00
parent 99aa1737e4
commit a5910fbf5a
5 changed files with 651 additions and 553 deletions

View File

@ -13,8 +13,8 @@ export default {
}) })
let userInfo = _this.getCurUserInfo(); let userInfo = _this.getCurUserInfo();
// request 触发前拼接 url // request 触发前拼接 url
args.url = 'https://www.opsoul.com' + args.url; // args.url = 'https://www.opsoul.com' + args.url;
// args.url = 'http://127.0.0.1:80' + args.url; args.url = 'http://127.0.0.1:80' + args.url;
// args.url = 'http://192.168.2.42:80' + args.url; // args.url = 'http://192.168.2.42:80' + args.url;
if (!args.data) { if (!args.data) {

View File

@ -5,7 +5,7 @@
<view class="cu-dialog"> <view class="cu-dialog">
<view class="padding-xl"> <view class="padding-xl">
<view class="cuIcon-profile big-icon padding-tb text-main-color"></view> <view class="cuIcon-profile big-icon padding-tb text-main-color"></view>
<view>您还未进行实名认证因涉及上门家政服务需完成实名认证填写并通过审核以保证用户安全</view> <view>您还未进行认证</view>
</view> </view>
<view class="cu-bar bg-white solid-top"> <view class="cu-bar bg-white solid-top">
<view class="action margin-0 flex-sub text-black" data-modal="showTakeCertifiedModal" <view class="action margin-0 flex-sub text-black" data-modal="showTakeCertifiedModal"

View File

@ -5,10 +5,10 @@
<view class="cu-dialog"> <view class="cu-dialog">
<view class="padding-xl"> <view class="padding-xl">
<view class="cuIcon-discover big-icon padding-tb text-main-color"></view> <view class="cuIcon-discover big-icon padding-tb text-main-color"></view>
<view>请您选择入驻类型到家服务类请选择-服务商商品销售类请选择-配件</view> <view>请您选择供应类型到家服务类请选-服务商商品销售类请选-品牌</view>
</view> </view>
<view class="cu-bar bg-white"> <view class="cu-bar bg-white">
<view class="action margin-0 flex-sub text-black" data-modal="isShowSteer" @click="chooseEntryType(1)">配件 <view class="action margin-0 flex-sub text-black" data-modal="isShowSteer" @click="chooseEntryType(1)">品牌
</view> </view>
<view class="action margin-0 flex-sub text-main-color solid-left" <view class="action margin-0 flex-sub text-main-color solid-left"
data-modal="isShowSteer" @click="chooseEntryType(0)">服务商</view> data-modal="isShowSteer" @click="chooseEntryType(0)">服务商</view>

View File

@ -277,7 +277,7 @@
methods: { methods: {
async loadData() { async loadData() {
this.curUserInfo = this.$request.getCurUserInfo(); this.curUserInfo = this.$request.getCurUserInfo();
this.checkBankAndCertify(); // this.checkBankAndCertify();
// this.tasks = await this.$api.data('tasks'); // this.tasks = await this.$api.data('tasks');
this.reloadMasterOrderPage(); this.reloadMasterOrderPage();
// this.takeCertify = await this.$api.data('takeCertify'); // this.takeCertify = await this.$api.data('takeCertify');

View File

@ -10,136 +10,148 @@
<!-- 步骤条 --> <!-- 步骤条 -->
<view class="bg-white padding"> <view class="bg-white padding">
<view class="cu-steps"> <view class="cu-steps">
<view class="cu-item" :class="index>curStep?'':'text-main-color'" v-for="(stepName, index) in stepList"> <view class="cu-item" :class="index>curStep?'':'text-main-color'"
v-for="(stepName, index) in stepList">
<text class='cuIcon-radioboxfill'></text> {{stepName}} <text class='cuIcon-radioboxfill'></text> {{stepName}}
</view> </view>
</view> </view>
</view> </view>
<form v-if="curStep === 0"> <form v-if="curStep === 0">
<view class="margin-bottom-with-bar"> <view class="margin-bottom-with-bar margin-top-sm bg-white">
<view class="bg-white margin-top-sm text-red padding"> <!-- <view class="bg-white margin-top-sm text-red padding">
因涉及上门家政服务需完成实名认证填写并通过审核以保证用户安全 因涉及上门家政服务需完成实名认证填写并通过审核以保证用户安全
</view> -->
<radio-group class="flex justify-around padding-tb-sm">
<view class="padding-sm option-card"
:class="realNameInfo.companySize === 0 ? 'border-main-color' : ''"
@click="chooseCompanySize(0)">
<view class="text-black text-lg margin-tb-xs">社区服务</view>
<view class="text-gray option-content margin-tb-xs">个体或公司经营执照认证服务团队1-3</view>
<radio style="transform:scale(1)" class="main-color flex justify-end"
:checked="realNameInfo.companySize === 0"></radio>
</view>
<view class="padding-sm option-card"
:class="realNameInfo.companySize === 1 ? 'border-main-color' : ''"
@click="chooseCompanySize(1)">
<view class="text-black text-lg margin-tb-xs">区域服务</view>
<view class="text-gray option-content margin-tb-xs">个体或公司经营执照认证服务团队3-10</view>
<radio style="transform:scale(1)" class="main-color flex justify-end"
:checked="realNameInfo.companySize === 1"></radio>
</view>
<view class="padding-sm option-card"
:class="realNameInfo.companySize === 2 ? 'border-main-color' : ''"
@click="chooseCompanySize(2)">
<view class="text-black text-lg margin-tb-xs">城市服务</view>
<view class="text-gray option-content margin-tb-xs">个体或公司经营执照认证服务团队10-50</view>
<radio style="transform:scale(1)" class="main-color flex justify-end"
:checked="realNameInfo.companySize === 2"></radio>
</view>
</radio-group>
<view class="cu-form-group">
<view class="title">品牌名称</view>
<input name="brandName" v-model="realNameInfo.brandName" maxlength="7"
placeholder="请填写你的品牌/主体名简称(限7字)"></input>
</view> </view>
<view class="bg-white margin-top-sm"> <view class="cu-bar bg-white solid-top">
<view class="cu-bar padding-lr solid-bottom"> <view class="action">
<view class="text-lg"> 身份证上传正反面
<text class="text-main-color"><text class="cuIcon-titles"></text></text>
<text>个人认证信息<text class="text-red">必填</text></text>
</view>
</view>
<view class="cu-bar bg-white solid-top">
<view class="action">
身份证上传正反面<text class="margin-left-xs text-red">*</text>
</view>
</view>
<view class="cu-form-group">
<view class="grid col-4 grid-square flex-sub">
<view class="bg-img" v-for="(item,index) in realNameInfo.idCardImgList" :key="index"
@tap="viewImage($event, realNameInfo.idCardImgList)" :data-url="item">
<image :src="item" mode="aspectFill"></image>
<view class="cu-tag bg-red" @tap.stop="delImg($event, realNameInfo.idCardImgList)" :data-index="index">
<text class='cuIcon-close'></text>
</view>
</view>
<view class="solids" @tap="chooseImage($event, realNameInfo.idCardImgList)" v-if="realNameInfo.idCardImgList.length<2">
<text class='cuIcon-cameraadd'></text>
</view>
</view>
</view>
<view class="cu-form-group">
<view class="title">姓名<text class="margin-left-xs text-red">*</text></view>
<input name="name" v-model="realNameInfo.name" placeholder="请输入真实姓名"></input>
</view>
<view class="cu-form-group">
<view class="title">身份证号<text class="margin-left-xs text-red">*</text></view>
<input name="idCardNum" type="idcard" v-model="realNameInfo.idCardNum" placeholder="请输入你的身份证号"></input>
</view> </view>
</view> </view>
<view class="bg-white margin-top-sm padding-bottom-sm"> <view class="cu-form-group">
<view class="cu-bar padding-lr solid-bottom"> <view class="grid col-4 grid-square flex-sub">
<view class="text-lg"> <view class="bg-img" v-for="(item,index) in realNameInfo.idCardImgList" :key="index"
<text class="text-main-color"><text class="cuIcon-titles"></text></text> @tap="viewImage($event, realNameInfo.idCardImgList)" :data-url="item">
<text>公司认证信息选填</text> <image :src="item" mode="aspectFill"></image>
</view> <view class="cu-tag bg-red" @tap.stop="delImg($event, realNameInfo.idCardImgList)"
</view> :data-index="index">
<radio-group class="flex justify-around padding-tb-sm"> <text class='cuIcon-close'></text>
<view class="padding-sm option-card" :class="realNameInfo.companySize === 0 ? 'border-main-color' : ''" @click="chooseCompanySize(0)">
<view class="text-black text-lg margin-tb-xs">社区服务</view>
<view class="text-gray option-content margin-tb-xs">个体或公司经营执照认证服务团队1-3</view>
<radio style="transform:scale(1)" class="main-color flex justify-end" :checked="realNameInfo.companySize === 0"></radio>
</view>
<view class="padding-sm option-card" :class="realNameInfo.companySize === 1 ? 'border-main-color' : ''" @click="chooseCompanySize(1)">
<view class="text-black text-lg margin-tb-xs">区域服务</view>
<view class="text-gray option-content margin-tb-xs">个体或公司经营执照认证服务团队3-10</view>
<radio style="transform:scale(1)" class="main-color flex justify-end" :checked="realNameInfo.companySize === 1"></radio>
</view>
<view class="padding-sm option-card" :class="realNameInfo.companySize === 2 ? 'border-main-color' : ''" @click="chooseCompanySize(2)">
<view class="text-black text-lg margin-tb-xs">城市服务</view>
<view class="text-gray option-content margin-tb-xs">个体或公司经营执照认证服务团队10-50</view>
<radio style="transform:scale(1)" class="main-color flex justify-end" :checked="realNameInfo.companySize === 2"></radio>
</view>
</radio-group>
<view class="cu-form-group">
<view class="title">品牌名称</view>
<input name="brandName" v-model="realNameInfo.brandName" maxlength="7" placeholder="请填写你的品牌/主体名简称(限7字)"></input>
</view>
<view class="cu-bar bg-white solid-top">
<view class="action">
公司营业执照公司账户
</view>
</view>
<view class="cu-form-group">
<view class="grid col-4 grid-square flex-sub">
<view class="bg-img" v-for="(item,index) in realNameInfo.licenseImgList" :key="index"
@tap="viewImage($event, realNameInfo.licenseImgList)" :data-url="item">
<image :src="item" mode="aspectFill"></image>
<view class="cu-tag bg-red" @tap.stop="delImg($event, realNameInfo.licenseImgList)" :data-index="index">
<text class='cuIcon-close'></text>
</view>
</view>
<view class="solids" @tap="chooseImage($event, realNameInfo.licenseImgList)" v-if="realNameInfo.licenseImgList.length<1">
<text class='cuIcon-cameraadd'></text>
</view> </view>
</view> </view>
</view> <view class="solids" @tap="chooseImage($event, realNameInfo.idCardImgList)"
<view class="cu-form-group"> v-if="realNameInfo.idCardImgList.length<2">
<view class="title">公司名称</view> <text class='cuIcon-cameraadd'></text>
<input name="companyName" v-model="realNameInfo.companyName" placeholder="请输入公司名称"></input>
</view>
<view class="cu-form-group">
<view class="title">执照号码</view>
<input name="businessLicenseNum" v-model="realNameInfo.businessLicenseNum" placeholder="请输入公司执照号码"></input>
</view>
<view class="cu-form-group">
<view class="title">公司地址</view>
<view class="flex-column-between flex-view">
<picker :mode="'multiSelector'" @change="regionChange" @columnchange="regionColChange" :value="multiIndex" :range-key="'areaName'" :range="areaList">
<view class="picker">
{{realNameInfo.companyArea && realNameInfo.companyArea.length ? realNameInfo.companyArea[0].areaName + '-' + realNameInfo.companyArea[1].areaName + '-' + realNameInfo.companyArea[2].areaName : '请选择'}}
</view>
</picker>
<!-- <view><input name="companyAddress" v-model="realNameInfo.companyAddress" placeholder="请输入营业执照地址/经营地址/服务网点"></input></view> -->
<textarea name="companyAddress" class="solid padding-sm" maxlength="-1" v-model="realNameInfo.companyAddress" placeholder="请输入营业执照地址/经营地址/服务网点" />
</view> </view>
</view> </view>
<view class="cu-form-group"> </view>
<view class="title">法人/负责人</view> <view class="flex solid-top solid-bottom">
<input name="legalPersionName" v-model="realNameInfo.legalPersionName" placeholder="请输入法人名称"></input> <view class="flex-sub form-opt">
<view class="title">姓氏</view>
<input name="surname" v-model="realNameInfo.surname" placeholder="请输入姓氏"></input>
</view> </view>
<view class="cu-form-group"> <view class="flex-sub form-opt">
<view class="title">联系电话</view> <view class="title">名字</view>
<input name="legalPersionPhoneNum" v-model="realNameInfo.legalPersionPhoneNum" placeholder="请输入联系人电话"></input> <input name="name" v-model="realNameInfo.name" placeholder="请输入名字"></input>
</view> </view>
<view class="cu-form-group"> </view>
<view class="title">其他服务</view> <view class="cu-form-group">
<checkbox-group class="radio-view" @change="changeAdditionalServId"> <view class="title">身份证号</view>
<label class="margin-right-sm" v-for="(item, index) in additionalServ"> <input name="idCardNum" type="idcard" v-model="realNameInfo.idCardNum"
<checkbox style="transform:scale(0.7)" class="round main-color" :value="item.id" :checked="checkIfInArray(item.id, realNameInfo.otherServ)"/> placeholder="请输入你的身份证号"></input>
<text class="margin-left-xs">{{item.name}}</text> </view>
</label> <view class="cu-bar bg-white solid-top">
</checkbox-group> <view class="action">
公司营业执照公司账户
</view> </view>
</view> </view>
<view class="cu-form-group">
<view class="grid col-4 grid-square flex-sub">
<view class="bg-img" v-for="(item,index) in realNameInfo.licenseImgList" :key="index"
@tap="viewImage($event, realNameInfo.licenseImgList)" :data-url="item">
<image :src="item" mode="aspectFill"></image>
<view class="cu-tag bg-red" @tap.stop="delImg($event, realNameInfo.licenseImgList)"
:data-index="index">
<text class='cuIcon-close'></text>
</view>
</view>
<view class="solids" @tap="chooseImage($event, realNameInfo.licenseImgList)"
v-if="realNameInfo.licenseImgList.length<1">
<text class='cuIcon-cameraadd'></text>
</view>
</view>
</view>
<view class="cu-form-group">
<view class="title">公司名称</view>
<input name="companyName" v-model="realNameInfo.companyName" placeholder="请输入公司名称"></input>
</view>
<view class="cu-form-group">
<view class="title">执照号码</view>
<input name="businessLicenseNum" v-model="realNameInfo.businessLicenseNum"
placeholder="请输入公司执照号码"></input>
</view>
<view class="cu-form-group">
<view class="title">公司地址</view>
<view class="flex-column-between flex-view">
<picker :mode="'multiSelector'" @change="regionChange" @columnchange="regionColChange"
:value="multiIndex" :range-key="'areaName'" :range="areaList">
<view class="picker">
{{realNameInfo.companyArea && realNameInfo.companyArea.length ? realNameInfo.companyArea[0].areaName + '-' + realNameInfo.companyArea[1].areaName + '-' + realNameInfo.companyArea[2].areaName : '请选择'}}
</view>
</picker>
<!-- <view><input name="companyAddress" v-model="realNameInfo.companyAddress" placeholder="请输入营业执照地址/经营地址/服务网点"></input></view> -->
<textarea name="companyAddress" class="solid padding-sm" maxlength="-1"
v-model="realNameInfo.companyAddress" placeholder="请输入营业执照地址/经营地址/服务网点" />
</view>
</view>
<view class="cu-form-group">
<view class="title">法人/负责人</view>
<input name="legalPersionName" v-model="realNameInfo.legalPersionName"
placeholder="请填姓名"></input>
</view>
<view class="cu-form-group">
<view class="title">法人/负责人联系电话</view>
<input name="legalPersionPhoneNum" v-model="realNameInfo.legalPersionPhoneNum"
placeholder="联系人电话"></input>
</view>
<view class="cu-form-group">
<view class="title">其他服务</view>
<checkbox-group class="radio-view" @change="changeAdditionalServId">
<label class="margin-right-sm" v-for="(item, index) in additionalServ">
<checkbox style="transform:scale(0.7)" class="round main-color" :value="item.id"
:checked="checkIfInArray(item.id, realNameInfo.otherServ)" />
<text class="margin-left-xs">{{item.name}}</text>
</label>
</checkbox-group>
</view>
</view> </view>
<!-- 下一步 --> <!-- 下一步 -->
<view class="cu-bar tabbar border shop fixed-bottom-bar bg-back"> <view class="cu-bar tabbar border shop fixed-bottom-bar bg-back">
@ -165,13 +177,16 @@
<view class="flex align-center margin-bottom-xs"> <view class="flex align-center margin-bottom-xs">
<my-uni-combox class="flex-sub margin-right-xs" :candidates="specialTypeList" <my-uni-combox class="flex-sub margin-right-xs" :candidates="specialTypeList"
:showField="'goodsCategoryName'" placeholder="请选择" :showField="'goodsCategoryName'" placeholder="请选择"
v-model="specialSkill[index].specialTypeObj" @input="chooseSpecialSkill($event, 0, index)"> v-model="specialSkill[index].specialTypeObj"
@input="chooseSpecialSkill($event, 0, index)">
</my-uni-combox> </my-uni-combox>
<my-uni-combox class="flex-sub margin-right-xs" <my-uni-combox class="flex-sub margin-right-xs"
:candidates="specialSkill[index].specialSubTypeList" :showField="'goodsCategoryName'" :candidates="specialSkill[index].specialSubTypeList"
placeholder="请选择" v-model="specialSkill[index].specialSubTypeObj" :showField="'goodsCategoryName'" placeholder="请选择"
v-model="specialSkill[index].specialSubTypeObj"
@input="chooseSpecialSkill($event, 1, index)"></my-uni-combox> @input="chooseSpecialSkill($event, 1, index)"></my-uni-combox>
<my-uni-combox class="flex-sub" :candidates="specialSkill[index].specialSubSubTypeList" <my-uni-combox class="flex-sub"
:candidates="specialSkill[index].specialSubSubTypeList"
:showField="'goodsCategoryName'" placeholder="请选择" :showField="'goodsCategoryName'" placeholder="请选择"
v-model="specialSkill[index].specialSubSubTypeObj" v-model="specialSkill[index].specialSubSubTypeObj"
@input="chooseSpecialSkill($event, 2, index)"></my-uni-combox> @input="chooseSpecialSkill($event, 2, index)"></my-uni-combox>
@ -185,14 +200,18 @@
<view class="flex justify-start align-center margin-top-sm"> <view class="flex justify-start align-center margin-top-sm">
<view>技能证书</view> <view>技能证书</view>
<view class="grid col-1 upload-pic-grid grid-square flex-sub"> <view class="grid col-1 upload-pic-grid grid-square flex-sub">
<view class="bg-img" v-for="(url, index0) in specialSkill[index].skillCert" :key="index0" <view class="bg-img" v-for="(url, index0) in specialSkill[index].skillCert"
@tap="viewImage($event, specialSkill[index].skillCert)" :data-url="url"> :key="index0" @tap="viewImage($event, specialSkill[index].skillCert)"
:data-url="url">
<image :src="url" mode="aspectFill"></image> <image :src="url" mode="aspectFill"></image>
<view class="cu-tag bg-red" @tap.stop="delImg($event, specialSkill[index].skillCert)" :data-index="index0"> <view class="cu-tag bg-red"
@tap.stop="delImg($event, specialSkill[index].skillCert)"
:data-index="index0">
<text class='cuIcon-close'></text> <text class='cuIcon-close'></text>
</view> </view>
</view> </view>
<view class="solids" @tap="chooseImage($event, specialSkill[index].skillCert)" v-if="specialSkill[index].skillCert.length < 1"> <view class="solids" @tap="chooseImage($event, specialSkill[index].skillCert)"
v-if="specialSkill[index].skillCert.length < 1">
<text class='cuIcon-cameraadd'></text> <text class='cuIcon-cameraadd'></text>
</view> </view>
</view> </view>
@ -200,14 +219,18 @@
<view class="flex justify-start align-center margin-top-sm"> <view class="flex justify-start align-center margin-top-sm">
<view>保险证明</view> <view>保险证明</view>
<view class="grid col-1 upload-pic-grid grid-square flex-sub"> <view class="grid col-1 upload-pic-grid grid-square flex-sub">
<view class="bg-img" v-for="(url, index0) in specialSkill[index].insurCert" :key="index0" <view class="bg-img" v-for="(url, index0) in specialSkill[index].insurCert"
@tap="viewImage($event, specialSkill[index].insurCert)" :data-url="url"> :key="index0" @tap="viewImage($event, specialSkill[index].insurCert)"
:data-url="url">
<image :src="url" mode="aspectFill"></image> <image :src="url" mode="aspectFill"></image>
<view class="cu-tag bg-red" @tap.stop="delImg($event, specialSkill[index].insurCert)" :data-index="index0"> <view class="cu-tag bg-red"
@tap.stop="delImg($event, specialSkill[index].insurCert)"
:data-index="index0">
<text class='cuIcon-close'></text> <text class='cuIcon-close'></text>
</view> </view>
</view> </view>
<view class="solids" @tap="chooseImage($event, specialSkill[index].insurCert)" v-if="specialSkill[index].insurCert.length < 1"> <view class="solids" @tap="chooseImage($event, specialSkill[index].insurCert)"
v-if="specialSkill[index].insurCert.length < 1">
<text class='cuIcon-cameraadd'></text> <text class='cuIcon-cameraadd'></text>
</view> </view>
</view> </view>
@ -236,13 +259,13 @@
</view> </view>
<!-- 认证过的展示认证内容及结果 --> <!-- 认证过的展示认证内容及结果 -->
<view v-else> <view v-else>
<view class="bg-white margin-top-sm text-red padding"> <!-- <view class="bg-white margin-top-sm text-red padding">
因涉及上门家政服务需完成实名认证填写并通过审核以保证用户安全 因涉及上门家政服务需完成实名认证填写并通过审核以保证用户安全
</view> </view> -->
<view class="margin-lr-sm margin-top padding margin-bottom-lg bg-white"> <view class="margin-lr-sm margin-top padding margin-bottom-lg bg-white">
<view class="padding-bottom-sm"> <view class="padding-bottom-sm">
<text class="text-black text-bold">姓名</text> <text class="text-black text-bold">姓名</text>
<text>{{curCertifyInfo.name}}</text> <text>{{curCertifyInfo.surname + curCertifyInfo.name}}</text>
</view> </view>
<view class="padding-bottom-sm"> <view class="padding-bottom-sm">
<text class="text-black text-bold">身份证号</text> <text class="text-black text-bold">身份证号</text>
@ -251,28 +274,36 @@
<view class="text-black text-bold">身份证</view> <view class="text-black text-bold">身份证</view>
<view class="grid col-2 grid-square flex-sub padding-bottom-sm padding-top-xs"> <view class="grid col-2 grid-square flex-sub padding-bottom-sm padding-top-xs">
<view class="bg-img"> <view class="bg-img">
<image :src="curCertifyInfo.idCardUrl1" :data-url="curCertifyInfo.idCardUrl1" @click="viewImage($event, [curCertifyInfo.idCardUrl1])" mode="aspectFill"></image> <image :src="curCertifyInfo.idCardUrl1" :data-url="curCertifyInfo.idCardUrl1"
@click="viewImage($event, [curCertifyInfo.idCardUrl1])" mode="aspectFill"></image>
</view> </view>
<view class="bg-img" @click="viewImage($event, [item.credential])"> <view class="bg-img" @click="viewImage($event, [item.credential])">
<image :src="curCertifyInfo.idCardUrl2" :data-url="curCertifyInfo.idCardUrl2" @click="viewImage($event, [curCertifyInfo.idCardUrl2])" mode="aspectFill"></image> <image :src="curCertifyInfo.idCardUrl2" :data-url="curCertifyInfo.idCardUrl2"
@click="viewImage($event, [curCertifyInfo.idCardUrl2])" mode="aspectFill"></image>
</view> </view>
</view> </view>
<view class="text-black text-bold">公司规模</view> <view class="text-black text-bold">公司规模</view>
<radio-group class="flex justify-around padding-top-xs padding-bottom-sm"> <radio-group class="flex justify-around padding-top-xs padding-bottom-sm">
<view class="padding-sm option-card" :class="curCertifyInfo.companySize === 0 ? 'border-main-color' : ''"> <view class="padding-sm option-card"
:class="curCertifyInfo.companySize === 0 ? 'border-main-color' : ''">
<view class="text-black text-lg margin-tb-xs">社区服务</view> <view class="text-black text-lg margin-tb-xs">社区服务</view>
<view class="text-gray option-content margin-tb-xs">个体或公司经营执照认证服务团队1-3</view> <view class="text-gray option-content margin-tb-xs">个体或公司经营执照认证服务团队1-3</view>
<radio style="transform:scale(1)" class="main-color flex justify-end" :checked="curCertifyInfo.companySize === 0" disabled></radio> <radio style="transform:scale(1)" class="main-color flex justify-end"
:checked="curCertifyInfo.companySize === 0" disabled></radio>
</view> </view>
<view class="padding-sm option-card" :class="curCertifyInfo.companySize === 1 ? 'border-main-color' : ''"> <view class="padding-sm option-card"
:class="curCertifyInfo.companySize === 1 ? 'border-main-color' : ''">
<view class="text-black text-lg margin-tb-xs">区域服务</view> <view class="text-black text-lg margin-tb-xs">区域服务</view>
<view class="text-gray option-content margin-tb-xs">个体或公司经营执照认证服务团队3-10</view> <view class="text-gray option-content margin-tb-xs">个体或公司经营执照认证服务团队3-10</view>
<radio style="transform:scale(1)" class="main-color flex justify-end" :checked="curCertifyInfo.companySize === 1" disabled></radio> <radio style="transform:scale(1)" class="main-color flex justify-end"
:checked="curCertifyInfo.companySize === 1" disabled></radio>
</view> </view>
<view class="padding-sm option-card" :class="curCertifyInfo.companySize === 2 ? 'border-main-color' : ''"> <view class="padding-sm option-card"
:class="curCertifyInfo.companySize === 2 ? 'border-main-color' : ''">
<view class="text-black text-lg margin-tb-xs">城市服务</view> <view class="text-black text-lg margin-tb-xs">城市服务</view>
<view class="text-gray option-content margin-tb-xs">个体或公司经营执照认证服务团队10-50</view> <view class="text-gray option-content margin-tb-xs">个体或公司经营执照认证服务团队10-50</view>
<radio style="transform:scale(1)" class="main-color flex justify-end" :checked="curCertifyInfo.companySize === 2" disabled></radio> <radio style="transform:scale(1)" class="main-color flex justify-end"
:checked="curCertifyInfo.companySize === 2" disabled></radio>
</view> </view>
</radio-group> </radio-group>
<view class="padding-bottom-sm"> <view class="padding-bottom-sm">
@ -284,9 +315,11 @@
<text v-if="curCertifyInfo.companyName">{{curCertifyInfo.companyName}}</text> <text v-if="curCertifyInfo.companyName">{{curCertifyInfo.companyName}}</text>
</view> </view>
<view class="text-black text-bold">公司营业执照</view> <view class="text-black text-bold">公司营业执照</view>
<view class="grid col-2 grid-square flex-sub padding-bottom-sm padding-top-xs" v-if="curCertifyInfo.businessLicenseUrl"> <view class="grid col-2 grid-square flex-sub padding-bottom-sm padding-top-xs"
v-if="curCertifyInfo.businessLicenseUrl">
<view class="bg-img"> <view class="bg-img">
<image :src="curCertifyInfo.businessLicenseUrl" :data-url="curCertifyInfo.businessLicenseUrl" @click="viewImage($event, [curCertifyInfo.businessLicenseUrl])" mode="aspectFill"></image> <image :src="curCertifyInfo.businessLicenseUrl" :data-url="curCertifyInfo.businessLicenseUrl"
@click="viewImage($event, [curCertifyInfo.businessLicenseUrl])" mode="aspectFill"></image>
</view> </view>
</view> </view>
<view class="padding-bottom-sm"> <view class="padding-bottom-sm">
@ -309,7 +342,8 @@
<view class="text-black text-bold">其他服务</view> <view class="text-black text-bold">其他服务</view>
<checkbox-group class="padding-bottom-sm padding-top-xs"> <checkbox-group class="padding-bottom-sm padding-top-xs">
<label class="margin-right-sm" v-for="(item, index) in additionalServ"> <label class="margin-right-sm" v-for="(item, index) in additionalServ">
<checkbox disabled style="transform:scale(0.7)" class="round main-color" :checked="checkIfInArray(item.id, curCertifyInfo.otherServArr)" :value="item.id"/> <checkbox disabled style="transform:scale(0.7)" class="round main-color"
:checked="checkIfInArray(item.id, curCertifyInfo.otherServArr)" :value="item.id" />
<text class="margin-left-xs">{{item.name}}</text> <text class="margin-left-xs">{{item.name}}</text>
</label> </label>
</checkbox-group> </checkbox-group>
@ -338,7 +372,8 @@
<text v-if="curCertifyInfo.status === 1" class="text-green">审核通过</text> <text v-if="curCertifyInfo.status === 1" class="text-green">审核通过</text>
<text v-else-if="curCertifyInfo.status === 0" class="text-yellow">审核中</text> <text v-else-if="curCertifyInfo.status === 0" class="text-yellow">审核中</text>
<text v-else-if="curCertifyInfo.status === 2" class="text-red">审核未通过</text> <text v-else-if="curCertifyInfo.status === 2" class="text-red">审核未通过</text>
<button class="cu-btn bg-main-color margin-left-sm shadow-blur" v-if="curCertifyInfo.status === 2 || curCertifyInfo.status === 1" <button class="cu-btn bg-main-color margin-left-sm shadow-blur"
v-if="curCertifyInfo.status === 2 || curCertifyInfo.status === 1"
@click="showForm">重新填写实名信息</button> @click="showForm">重新填写实名信息</button>
</view> </view>
</view> </view>
@ -397,8 +432,7 @@
onLoad() { onLoad() {
this.loadData(); this.loadData();
}, },
onShow() { onShow() {},
},
methods: { methods: {
async loadData() { async loadData() {
this.curUserInfo = this.$request.getCurUserInfo(); this.curUserInfo = this.$request.getCurUserInfo();
@ -424,14 +458,8 @@
this.curStep = this.curStep === 0 ? 0 : --this.curStep; this.curStep = this.curStep === 0 ? 0 : --this.curStep;
}, },
nextStep() { nextStep() {
if (this.curStep === 0){ if (this.curStep === 0 && !this.validData()) {
if (!this.realNameInfo.name || !this.realNameInfo.idCardNum || !this.realNameInfo.idCardImgList || !this.realNameInfo.idCardImgList.length) { return;
uni.showToast({
title: '请完成必填项的填写',
icon: 'none'
})
return;
}
} }
this.curStep = this.curStep === this.stepList.length - 1 ? this.curStep : ++this.curStep; this.curStep = this.curStep === this.stepList.length - 1 ? this.curStep : ++this.curStep;
}, },
@ -446,16 +474,19 @@
}, },
changeAdditionalServId(e) { changeAdditionalServId(e) {
this.realNameInfo.otherServ = e.detail.value; this.realNameInfo.otherServ = e.detail.value;
console.log(this.realNameInfo.otherServ)
}, },
async loadAreaList(idArr) { async loadAreaList(idArr) {
let areaList = await this.$request.areaListByStep(); let areaList = await this.$request.areaListByStep();
areaList = areaList.data; areaList = areaList.data;
let col1Code = idArr ? idArr[0] : areaList[0].areaCode; let col1Code = idArr ? idArr[0] : areaList[0].areaCode;
let subAreaList = await this.$request.areaListByStep({ parentCode: col1Code }); let subAreaList = await this.$request.areaListByStep({
parentCode: col1Code
});
subAreaList = subAreaList.data; subAreaList = subAreaList.data;
let col2Code = idArr ? idArr[1] : subAreaList[0].areaCode; let col2Code = idArr ? idArr[1] : subAreaList[0].areaCode;
let subSubAreaList = await this.$request.areaListByStep({ parentCode: col2Code }); let subSubAreaList = await this.$request.areaListByStep({
parentCode: col2Code
});
subSubAreaList = subSubAreaList.data; subSubAreaList = subSubAreaList.data;
this.areaList.push(areaList); this.areaList.push(areaList);
this.areaList.push(subAreaList); this.areaList.push(subAreaList);
@ -464,7 +495,7 @@
regionChange(e) { regionChange(e) {
this.multiIndex = e.detail.value; this.multiIndex = e.detail.value;
let chosenArea = []; let chosenArea = [];
for(let i = 0; i < this.areaList.length; i++) { for (let i = 0; i < this.areaList.length; i++) {
chosenArea.push(this.areaList[i][this.multiIndex[i]]); chosenArea.push(this.areaList[i][this.multiIndex[i]]);
} }
this.realNameInfo.companyArea = chosenArea; this.realNameInfo.companyArea = chosenArea;
@ -474,10 +505,14 @@
if (colObj.column == 0) { if (colObj.column == 0) {
let subSubAreaList = []; let subSubAreaList = [];
// //
let subAreaList = await this.$request.areaListByStep({parentCode: this.areaList[0][colObj.value].areaCode}); let subAreaList = await this.$request.areaListByStep({
parentCode: this.areaList[0][colObj.value].areaCode
});
subAreaList = subAreaList.data; subAreaList = subAreaList.data;
if (subAreaList && subAreaList.length) { if (subAreaList && subAreaList.length) {
subSubAreaList = await this.$request.areaListByStep({parentCode: subAreaList[0].areaCode}); subSubAreaList = await this.$request.areaListByStep({
parentCode: subAreaList[0].areaCode
});
subSubAreaList = subSubAreaList.data; subSubAreaList = subSubAreaList.data;
} }
this.areaList.pop(); this.areaList.pop();
@ -487,7 +522,9 @@
this.multiIndex = [colObj.value, 0, 0]; this.multiIndex = [colObj.value, 0, 0];
} else if (colObj.column == 1) { } else if (colObj.column == 1) {
// //
let subSubAreaList = await this.$request.areaListByStep({parentCode: this.areaList[1][colObj.value].areaCode}); let subSubAreaList = await this.$request.areaListByStep({
parentCode: this.areaList[1][colObj.value].areaCode
});
subSubAreaList = subSubAreaList.data; subSubAreaList = subSubAreaList.data;
this.areaList.pop(); this.areaList.pop();
this.areaList.push(subSubAreaList); this.areaList.push(subSubAreaList);
@ -607,12 +644,47 @@
}) })
}, },
/* 特殊技能 end */ /* 特殊技能 end */
async submit() { validData() {
if (!this.realNameInfo.name || !this.realNameInfo.idCardNum || !this.realNameInfo.idCardImgList || !this.realNameInfo.idCardImgList.length) { let teamParams = this.realNameInfo;
let errMsg = null;
if (teamParams.companySize == null || teamParams.companySize == undefined) {
errMsg = "请选择经营主体规模";
} else if (!teamParams.brandName) {
errMsg = "请填写品牌名称"
} else if (!teamParams.idCardImgList || !teamParams.idCardImgList.length) {
errMsg = "请上传身份证照片"
} else if (!teamParams.surname) {
errMsg = "请填写姓氏"
} else if (!teamParams.name) {
errMsg = "请填写名字"
} else if (!teamParams.idCardNum) {
errMsg = "请填写身份证号";
} else if (!teamParams.licenseImgList || !teamParams.licenseImgList.length) {
errMsg = "请上传公司营业执照";
} else if (!teamParams.companyName) {
errMsg = "请填写公司名称";
} else if (!teamParams.businessLicenseNum) {
errMsg = "请填写公司营业执照号码";
} else if (!teamParams.companyArea || !teamParams.companyArea.length) {
errMsg = "请选择公司地址所在省市区";
} else if (!teamParams.companyAddress) {
errMsg = "请输入营业执照地址/经营地址/服务网点";
} else if (!teamParams.legalPersionName) {
errMsg = "请填写法人姓名";
} else if (!teamParams.legalPersionPhoneNum) {
errMsg = "请填写法人联系电话";
}
if (errMsg) {
uni.showToast({ uni.showToast({
title: '请完成必填项的填写', icon: 'none',
icon: 'none' title: errMsg
}) })
return false;
}
return true;
},
async submit() {
if (!this.validData()) {
return; return;
} }
@ -634,13 +706,20 @@
// //
let params = { let params = {
...this.realNameInfo, ...this.realNameInfo,
otherServ: this.realNameInfo.otherServ && this.realNameInfo.otherServ.length ? this.realNameInfo.otherServ.join(",") : null, otherServ: this.realNameInfo.otherServ && this.realNameInfo.otherServ.length ? this
idCardUrl1: this.realNameInfo.idCardImgList && this.realNameInfo.idCardImgList.length > 0 ? this.realNameInfo.idCardImgList[0]: null, .realNameInfo.otherServ.join(",") : null,
idCardUrl2: this.realNameInfo.idCardImgList && this.realNameInfo.idCardImgList.length > 1 ? this.realNameInfo.idCardImgList[1]: null, idCardUrl1: this.realNameInfo.idCardImgList && this.realNameInfo.idCardImgList.length > 0 ?
businessLicenseUrl: this.realNameInfo.licenseImgList && this.realNameInfo.licenseImgList.length > 0 ? this.realNameInfo.licenseImgList[0] : null, this.realNameInfo.idCardImgList[0] : null,
companyProvinceId: this.realNameInfo.companyArea && this.realNameInfo.companyArea.length > 2 ? this.realNameInfo.companyArea[0].areaId : null, idCardUrl2: this.realNameInfo.idCardImgList && this.realNameInfo.idCardImgList.length > 1 ?
companyCityId: this.realNameInfo.companyArea && this.realNameInfo.companyArea.length > 2 ? this.realNameInfo.companyArea[1].areaId : null, this.realNameInfo.idCardImgList[1] : null,
companyCountryId: this.realNameInfo.companyArea && this.realNameInfo.companyArea.length > 2 ? this.realNameInfo.companyArea[2].areaId : null, businessLicenseUrl: this.realNameInfo.licenseImgList && this.realNameInfo.licenseImgList
.length > 0 ? this.realNameInfo.licenseImgList[0] : null,
companyProvinceId: this.realNameInfo.companyArea && this.realNameInfo.companyArea.length > 2 ?
this.realNameInfo.companyArea[0].areaId : null,
companyCityId: this.realNameInfo.companyArea && this.realNameInfo.companyArea.length > 2 ? this
.realNameInfo.companyArea[1].areaId : null,
companyCountryId: this.realNameInfo.companyArea && this.realNameInfo.companyArea.length > 2 ?
this.realNameInfo.companyArea[2].areaId : null,
workerId: workerId, workerId: workerId,
specialSkills: specialSkills specialSkills: specialSkills
} }
@ -699,4 +778,23 @@
.option-content { .option-content {
min-height: 155rpx; min-height: 155rpx;
} }
.form-opt .title {
text-align: justify;
padding-right: 10rpx;
font-size: 30rpx;
position: relative;
height: 60rpx;
line-height: 60rpx;
flex-basis: 40%;
}
.form-opt {
background-color: #ffffff;
padding: 1rpx 30rpx;
display: flex;
align-items: center;
min-height: 100rpx;
justify-content: space-between;
}
</style> </style>