CRM_26-04-22#story#8495,潜在供应商H5页面提交信息,信息审核,提交补充信息与退回理由的优化与修复(默认停用)

This commit is contained in:
2026-06-09 16:10:19 +08:00
parent 7c40fbc4c5
commit 4a2513e100
8 changed files with 53 additions and 22 deletions

View File

@@ -26,6 +26,7 @@
data() {
return {
name: '',
potentialFlag: '',
formPayload: null,
qrCodeUrl: '',
qrCode: '',
@@ -35,6 +36,8 @@
}
},
async mounted() {
const urlParams = new URLSearchParams(window.location.search);
this.potentialFlag = this.$route.query.potentialFlag || urlParams.get('potentialFlag') || '';
const cached = localStorage.getItem('supplierAddForm');
if (cached) {
this.formPayload = JSON.parse(cached);
@@ -83,9 +86,9 @@
if (res?.code != 0) {
Dialog.alert({ title: '提示', message: '该服务商已存在,查看信息' }).then(() => {
localStorage.removeItem('supplierAddForm');
const target = { name: 'supplierInfo', query: { id: res?.code } };
const target = { name: 'supplierInfo', query: { id: res?.code, potentialFlag: this.potentialFlag } };
localStorage.setItem('lastRoute', JSON.stringify(target));
this.goPage('supplierInfo', { id: res?.code });
this.goPage('supplierInfo', { id: res?.code, potentialFlag: this.potentialFlag });
});
} else {
Toast('该服务商已存在');
@@ -93,7 +96,8 @@
} else {
localStorage.removeItem('supplierAddForm');
const supplierId = res?.data;
const target = { name: 'supplierAddResult', query: { id: supplierId } };
const potentialFlag = this.potentialFlag;
const target = { name: 'supplierAddResult', query: { id: supplierId, potentialFlag } };
localStorage.setItem('lastRoute', JSON.stringify(target));
Dialog.confirm({
title: '提示',
@@ -101,11 +105,11 @@
confirmButtonText: '去添加',
cancelButtonText: '取消',
}).then(() => {
localStorage.setItem('lastRoute', JSON.stringify({ name: 'vehicleManage', query: { id: supplierId } }));
this.goPage('vehicleManage', { id: supplierId });
localStorage.setItem('lastRoute', JSON.stringify({ name: 'vehicleManage', query: { id: supplierId, potentialFlag } }));
this.goPage('vehicleManage', { id: supplierId, potentialFlag });
}).catch(() => {
localStorage.setItem('lastRoute', JSON.stringify({ name: 'supplierAddResult', query: { id: supplierId } }));
this.goPage('supplierAddResult', { id: supplierId });
localStorage.setItem('lastRoute', JSON.stringify({ name: 'supplierAddResult', query: { id: supplierId, potentialFlag } }));
this.goPage('supplierAddResult', { id: supplierId, potentialFlag });
});
}
} catch (e) {

View File

@@ -122,7 +122,7 @@
<span>司机状态</span>
</div>
<div class="isJoin">
<van-radio-group v-model="states" @change="isUse" class="joinWrap">
<van-radio-group v-model="states" @change="isUse" :disabled="statesDisabled" :class="{ 'disabled-tree': statesDisabled }" class="joinWrap">
<van-radio :name="1" style="margin-right: 26px" class="item">
启用
<img
@@ -185,6 +185,7 @@ export default {
iconList: [],
driverInfo: {},
drivingLicenceName: '',
potentialFlag: '',
idCardAuthority:'',
idCardValidStartTime:'',
idCardValidEndTime:'',
@@ -222,6 +223,11 @@ export default {
this.identityCardFront = this.$route.params?.identityCardFront;
this.driverInfo.lssueDate = this.$route.params?.lssueDate;
this.drivingLicenceName = this.$route.params?.drivingLicenceName;
this.potentialFlag = this.$route.params?.potentialFlag || '';
console.log('this.potentialFlagthis.potentialFlag', this.potentialFlag)
if(!this.id && this.potentialFlag === '1') {
this.states = 0;
}
if( this.identityCardFront ) {
this.identityCardFrontList = [{ url : this.identityCardFront }];
}
@@ -242,7 +248,7 @@ export default {
const selectedValue = selectElement.value;
this.drivingModel=selectedValue
});
console.log('statesDisabled', this.statesDisabled)
},
methods:{
isUse(e){
@@ -456,6 +462,11 @@ export default {
},2000)
},
},
computed: {
statesDisabled() {
return !this.id && this.potentialFlag === '1';
}
},
components:{
TwoCommonBtn,
CellGroup

View File

@@ -137,6 +137,7 @@ export default {
supplierId: '',
routeId: '',
initialized: false,
potentialFlag: '',
supplierType:'',
count: 0,
isLoading: false,
@@ -186,6 +187,7 @@ export default {
this.supplierId = rawId ? Number(rawId) : '';
const potentialId = this.$route.query.potentialId || urlParams.get('potentialId');
this.routeId = potentialId;
this.potentialFlag = this.$route.query.potentialFlag || urlParams.get('potentialFlag') || '';
if(!rawId) {
this.getPermissions();
}
@@ -193,8 +195,8 @@ export default {
},
methods:{
nextToResult() {
localStorage.setItem('lastRoute', JSON.stringify({ name: 'supplierAddResult', query: { id: this.routeId } }));
this.goPage('supplierAddResult', { id: this.routeId });
localStorage.setItem('lastRoute', JSON.stringify({ name: 'supplierAddResult', query: { id: this.routeId, potentialFlag: this.potentialFlag } }));
this.goPage('supplierAddResult', { id: this.routeId, potentialFlag: this.potentialFlag });
},
isMiniProgram(item) {
return item.registerFrom === '小程序' || (item.jobNumber && item.jobNumber.includes('小程序'))
@@ -255,7 +257,7 @@ export default {
}else{
this.$router.push({
name: 'driverAdd',
params: this.supplierId ? { supplierId: this.supplierId } : {}
params: { supplierId: this.supplierId || undefined, potentialFlag: this.potentialFlag || undefined }
})
}
},

View File

@@ -314,7 +314,7 @@
serviceAreaCode: checkArr.join(','),
};
localStorage.setItem('supplierAddForm', JSON.stringify(payload));
this.goPage('addWechat', {});
this.goPage('addWechat', { potentialFlag: 1 });
}
},
async QrCodeResult() { //获取添加企微结果

View File

@@ -19,6 +19,7 @@
data() {
return {
id: '',
potentialFlag: '',
name: '',
qrCodeUrl: '',
qrCode: '',
@@ -29,14 +30,15 @@
async mounted() {
const urlParams = new URLSearchParams(window.location.search);
this.id = this.$route.query.id || urlParams.get('id');
this.potentialFlag = this.$route.query.potentialFlag || urlParams.get('potentialFlag') || '';
if (this.id) {
localStorage.setItem('lastRoute', JSON.stringify({ name: 'supplierAddResult', query: { id: this.id } }));
localStorage.setItem('lastRoute', JSON.stringify({ name: 'supplierAddResult', query: { id: this.id, potentialFlag: this.potentialFlag } }));
}
},
methods: {
async searchInfo() {
localStorage.setItem('lastRoute', JSON.stringify({ name: 'supplierInfo', query: { id: this.id } }));
this.goPage('supplierInfo', { id: this.id })
localStorage.setItem('lastRoute', JSON.stringify({ name: 'supplierInfo', query: { id: this.id, potentialFlag: this.potentialFlag } }));
this.goPage('supplierInfo', { id: this.id, potentialFlag: this.potentialFlag })
}
}
}

View File

@@ -154,6 +154,7 @@
supplierInfo: {},
type: 'show',
origin: '',
potentialFlag: '',
}
},
async mounted() {
@@ -161,13 +162,14 @@
this.id=this.$route.query.id || urlParams.get('id');
this.type=this.$route.query.type || urlParams.get('type') || 'show';
this.origin = this.$route.query.origin || ''
this.potentialFlag = this.$route.query.potentialFlag || urlParams.get('potentialFlag') || '';
await this.getInfoHandler();
},
methods: {
goAddVehicle() {
const supplierId = this.id
localStorage.setItem('lastRoute', JSON.stringify({ name: 'vehicleManage', query: { id: supplierId } }));
this.goPage('vehicleManage', { id: supplierId });
localStorage.setItem('lastRoute', JSON.stringify({ name: 'vehicleManage', query: { id: supplierId, potentialFlag: this.potentialFlag } }));
this.goPage('vehicleManage', { id: supplierId, potentialFlag: this.potentialFlag });
},
goModifyPage() {
this.goPage('supplierAdd', { id : this.id })

View File

@@ -197,7 +197,7 @@
<span>车辆状态</span>
</div>
<div class="isJoin">
<van-radio-group v-model="vehicleStatus" :class="{ 'disabled-tree': vehicleInfoDisabled }" :disabled="vehicleInfoDisabled" @change="isVehicleChange" class="joinWrap">
<van-radio-group v-model="vehicleStatus" :class="{ 'disabled-tree': vehicleInfoDisabled || vehicleStatusDisabled }" :disabled="vehicleInfoDisabled || vehicleStatusDisabled" @change="isVehicleChange" class="joinWrap">
<van-radio :name="1" style="margin-right: 14px">
启用
<img
@@ -471,6 +471,7 @@ export default {
checkList: [],
virtualVehicle: '',
vehicleStatus: '',
potentialFlag: '',
showDatePicker: false,
dateVal: '',
trailerService: '',//拖车服务
@@ -648,6 +649,9 @@ export default {
} else {
return false
}
},
vehicleStatusDisabled() {
return !this.id && this.potentialFlag === '1';
}
},
watch:{
@@ -689,6 +693,7 @@ export default {
const urlParams = new URLSearchParams(window.location.search);
const rawId = this.$route.query.supplierId || urlParams.get('supplierId');
this.supplierId = rawId ? Number(rawId) : '';
this.potentialFlag = this.$route.query.potentialFlag || urlParams.get('potentialFlag') || '';
await this.getSupplierServiceTree();
await this.getTypeList();
if( this.id){
@@ -705,6 +710,9 @@ export default {
liabilityInsuranceEndTime:'',
insurancePicturePhoto:''
}
if(this.potentialFlag === '1') {
this.vehicleStatus = 2;
}
}
},
methods:{

View File

@@ -11,7 +11,7 @@
@click-left="goBack"
>
<template slot="right" v-if="permissonList.includes('vehicleAddBtn') || supplierId">
<div class="rightWrap" @click="goPage('vehicleAdd', supplierId ? { supplierId } : {})">
<div class="rightWrap" @click="goPage('vehicleAdd', supplierId ? { supplierId, potentialFlag } : {})">
<img src="@/assets/addImg.png" />
<span class="addTxt">添加</span>
</div>
@@ -149,6 +149,7 @@ export default {
searchVal: '',
authStates: [],
liabilityInsuranceAuditList: [],
potentialFlag: '',
inputStatusListOptions: [{
name: '行驶证未录入',
value: 0
@@ -199,6 +200,7 @@ export default {
async mounted() {
const urlParams = new URLSearchParams(window.location.search);
const rawId = this.$route.query.id || urlParams.get('id');
this.potentialFlag = this.$route.query.potentialFlag || urlParams.get('potentialFlag') || '';
if (rawId) {
this.routeId = rawId;
await this.getSupplierById(Number(rawId));
@@ -212,8 +214,8 @@ export default {
},
methods:{
nextToDriver() {
localStorage.setItem('lastRoute', JSON.stringify({ name: 'driverManage', query: { id: this.supplierId, potentialId: this.routeId } }));
this.goPage('driverManage', { id: this.supplierId, potentialId: this.routeId });
localStorage.setItem('lastRoute', JSON.stringify({ name: 'driverManage', query: { id: this.supplierId, potentialId: this.routeId, potentialFlag: this.potentialFlag } }));
this.goPage('driverManage', { id: this.supplierId, potentialId: this.routeId, potentialFlag: this.potentialFlag });
},
async getSupplierById(id) {
let res = await supplierSelectById({ id });