This commit is contained in:
qijq 2025-08-23 08:41:10 +08:00
parent e989dac546
commit b6d789a975
3 changed files with 157 additions and 63 deletions

View File

@ -126,3 +126,21 @@ export function createSubAccount(params) {
data: params, data: params,
}) })
} }
/**
* @name 检查店铺名字
* @api api_url + '/admin/shop/esign/signed/contract/file'
* @param { mchMobile }
* @returns
*/
export function checkShopName(params) {
return request({
url: URL.shop.merch.checkShopName,
method: 'post',
headers: {
'Content-Type': 'application/json',
},
data: params,
})
}

View File

@ -447,6 +447,8 @@ let url = {
createShop: api_url + '/admin/shop/shop-store-base/mchinfo/to/storeinfo', createShop: api_url + '/admin/shop/shop-store-base/mchinfo/to/storeinfo',
//创建分账(补偿机制) //创建分账(补偿机制)
createSubAccount: api_url + '/mobile/pay/lakala/ledger/applyLedgerMer', createSubAccount: api_url + '/mobile/pay/lakala/ledger/applyLedgerMer',
//检查店铺名字可用不
checkShopName: api_url + '/mobile/shop/store/check-store-name-exists',
}, },
activity: { activity: {
lottery: { lottery: {

View File

@ -18,27 +18,28 @@
class="item-input" class="item-input"
v-model="form.store_id" v-model="form.store_id"
clearable clearable
readonly :readonly="isReadonly"
/> />
</div> </div>
<div class="item-block"> <div class="item-block">
<div class="item-lable">店铺名称</div> <div class="item-lable">店铺名称</div>
<el-input <el-input
class="item-input" class="item-input"
style="width: 300px" style="width: 300px;margin-right: 0;"
v-model="form.store_name" v-model="form.store_name"
clearable clearable
readonly :readonly="isReadonly"
/> />
<el-button v-if="!isReadonly && form.store_name != sourceFormData.store_name" type="primary" style="margin-left: 20px;" @click="handlerCheckShowName">检查名字</el-button>
</div> </div>
<div class="item-block"> <div class="item-block" style="margin-left: 30px;">
<div class="item-lable">经营品类</div> <div class="item-lable">经营品类</div>
<el-input <el-input
class="item-input" class="item-input"
v-model="form.biz_category" v-model="form.biz_category"
clearable clearable
readonly :readonly="isReadonly"
/> />
</div> </div>
</div> </div>
@ -49,7 +50,7 @@
class="item-input" class="item-input"
v-model="form.contact_name" v-model="form.contact_name"
clearable clearable
readonly :readonly="isReadonly"
/> />
</div> </div>
<div class="item-block"> <div class="item-block">
@ -58,7 +59,7 @@
class="item-input" class="item-input"
v-model="form.login_mobile" v-model="form.login_mobile"
clearable clearable
readonly :readonly="true"
/> />
</div> </div>
</div> </div>
@ -66,12 +67,21 @@
<div class="item-info"> <div class="item-info">
<div class="item-block"> <div class="item-block">
<div class="item-lable">店铺所在的省</div> <div class="item-lable">店铺所在的省</div>
<el-input <el-select class="item-input"
v-model="form.province_nmae" filterable placeholder="请选择" :disabled="isReadonly">
<el-option
v-for="item in areaData"
:key="item.id"
:label="item.name"
:value="item.id">
</el-option>
</el-select>
<!-- <el-input
class="item-input" class="item-input"
v-model="form.province_nmae" v-model="form.province_nmae"
clearable clearable
readonly :readonly="isReadonly"
/> /> -->
</div> </div>
<div class="item-block"> <div class="item-block">
<div class="item-lable">店铺所在的市</div> <div class="item-lable">店铺所在的市</div>
@ -79,7 +89,7 @@
class="item-input" class="item-input"
v-model="form.city_name" v-model="form.city_name"
clearable clearable
readonly :readonly="isReadonly"
/> />
</div> </div>
<div class="item-block"> <div class="item-block">
@ -88,7 +98,7 @@
class="item-input" class="item-input"
v-model="form.county_name" v-model="form.county_name"
clearable clearable
readonly :readonly="isReadonly"
/> />
</div> </div>
</div> </div>
@ -99,7 +109,7 @@
class="item-input" class="item-input"
v-model="form.store_longitude" v-model="form.store_longitude"
clearable clearable
readonly :readonly="isReadonly"
/> />
</div> </div>
<div class="item-block"> <div class="item-block">
@ -108,7 +118,7 @@
class="item-input" class="item-input"
v-model="form.store_latitude" v-model="form.store_latitude"
clearable clearable
readonly :readonly="isReadonly"
/> />
</div> </div>
</div> </div>
@ -120,7 +130,7 @@
v-model="form.store_address" v-model="form.store_address"
style="width: 580px" style="width: 580px"
clearable clearable
readonly :readonly="isReadonly"
/> />
</div> </div>
</div> </div>
@ -156,22 +166,16 @@
class="item-input" class="item-input"
v-model="form.split_ratio" v-model="form.split_ratio"
clearable clearable
readonly :readonly="isReadonly"
> >
<template slot="append">%</template> <template slot="append">%</template>
</el-input> </el-input>
</div> </div>
<div class="item-block" > <div class="item-block" >
<div class="item-lable">资金结算交割天数</div> <div class="item-lable"> 结算类型{{ form.settlement_method > 0 ? "次日结算" : "秒到" }}</div>
<el-input
class="item-input"
v-model="form.settlement_method"
clearable
readonly
>
<template slot="append"></template>
</el-input>
</div> </div>
</div> </div>
<div class="item-title">入驻类型</div> <div class="item-title">入驻类型</div>
<div class="item-info"> <div class="item-info">
@ -181,7 +185,7 @@
class="item-input" class="item-input"
v-model="entityType[form.entity_type - 1]" v-model="entityType[form.entity_type - 1]"
clearable clearable
readonly :readonly="isReadonly"
></el-input> ></el-input>
</div> </div>
</div> </div>
@ -194,7 +198,7 @@
class="item-input" class="item-input"
v-model="form.legal_person_name" v-model="form.legal_person_name"
clearable clearable
readonly :readonly="isReadonly"
></el-input> ></el-input>
</div> </div>
</div> </div>
@ -205,7 +209,7 @@
class="item-input" class="item-input"
v-model="form.biz_license_company" v-model="form.biz_license_company"
clearable clearable
readonly :readonly="isReadonly"
></el-input> ></el-input>
</div> </div>
</div> </div>
@ -217,7 +221,7 @@
v-model="form.biz_license_number" v-model="form.biz_license_number"
style="width: 600px" style="width: 600px"
clearable clearable
readonly :readonly="isReadonly"
></el-input> ></el-input>
</div> </div>
</div> </div>
@ -229,7 +233,7 @@
v-model="form.biz_license_period_begin" v-model="form.biz_license_period_begin"
style="width: 600px" style="width: 600px"
clearable clearable
readonly :readonly="isReadonly"
></el-input> ></el-input>
</div> </div>
</div> </div>
@ -241,7 +245,7 @@
v-model="form.biz_license_period_end" v-model="form.biz_license_period_end"
style="width: 600px" style="width: 600px"
clearable clearable
readonly :readonly="isReadonly"
></el-input> ></el-input>
</div> </div>
</div> </div>
@ -265,7 +269,7 @@
style="width: 600px" style="width: 600px"
clearable clearable
:autosize="{ minRows: 15 }" :autosize="{ minRows: 15 }"
readonly :readonly="isReadonly"
></el-input> ></el-input>
</div> </div>
</div> </div>
@ -276,7 +280,7 @@
class="item-input" class="item-input"
v-model="licenseType[form.license_type - 1]" v-model="licenseType[form.license_type - 1]"
clearable clearable
readonly :readonly="isReadonly"
></el-input> ></el-input>
</div> </div>
</div> </div>
@ -288,7 +292,7 @@
v-model="form.license_number" v-model="form.license_number"
style="width: 600px" style="width: 600px"
clearable clearable
readonly :readonly="isReadonly"
></el-input> ></el-input>
</div> </div>
</div> </div>
@ -313,7 +317,7 @@
v-model="form.legal_person_name" v-model="form.legal_person_name"
style="width: 300px" style="width: 300px"
clearable clearable
readonly :readonly="isReadonly"
></el-input> ></el-input>
</div> </div>
</div> </div>
@ -325,7 +329,7 @@
v-model="form.legal_person_mobile" v-model="form.legal_person_mobile"
style="width: 300px" style="width: 300px"
clearable clearable
readonly :readonly="isReadonly"
></el-input> ></el-input>
</div> </div>
</div> </div>
@ -337,7 +341,7 @@
v-model="form.legal_person_id_number" v-model="form.legal_person_id_number"
style="width: 300px" style="width: 300px"
clearable clearable
readonly :readonly="isReadonly"
></el-input> ></el-input>
</div> </div>
</div> </div>
@ -349,7 +353,7 @@
v-model="form.legal_person_id_addr" v-model="form.legal_person_id_addr"
style="width: 300px" style="width: 300px"
clearable clearable
readonly :readonly="isReadonly"
></el-input> ></el-input>
</div> </div>
</div> </div>
@ -361,7 +365,7 @@
v-model="form.legal_person_id_period_begin" v-model="form.legal_person_id_period_begin"
style="width: 300px" style="width: 300px"
clearable clearable
readonly :readonly="isReadonly"
></el-input> ></el-input>
</div> </div>
</div> </div>
@ -373,7 +377,7 @@
v-model="form.legal_person_id_period_end" v-model="form.legal_person_id_period_end"
style="width: 300px" style="width: 300px"
clearable clearable
readonly :readonly="isReadonly"
></el-input> ></el-input>
</div> </div>
</div> </div>
@ -413,7 +417,7 @@
v-model="form.individual_id_name" v-model="form.individual_id_name"
style="width: 300px" style="width: 300px"
clearable clearable
readonly :readonly="isReadonly"
></el-input> ></el-input>
</div> </div>
</div> </div>
@ -425,7 +429,7 @@
v-model="form.individual_id_number" v-model="form.individual_id_number"
style="width: 300px" style="width: 300px"
clearable clearable
readonly :readonly="isReadonly"
></el-input> ></el-input>
</div> </div>
</div> </div>
@ -437,7 +441,7 @@
v-model="form.individual_id_addr" v-model="form.individual_id_addr"
style="width: 300px" style="width: 300px"
clearable clearable
readonly :readonly="isReadonly"
></el-input> ></el-input>
</div> </div>
</div> </div>
@ -449,7 +453,7 @@
v-model="form.individual_id_period_begin" v-model="form.individual_id_period_begin"
style="width: 300px" style="width: 300px"
clearable clearable
readonly :readonly="isReadonly"
></el-input> ></el-input>
</div> </div>
</div> </div>
@ -461,7 +465,7 @@
v-model="form.individual_id_period_end" v-model="form.individual_id_period_end"
style="width: 300px" style="width: 300px"
clearable clearable
readonly :readonly="isReadonly"
></el-input> ></el-input>
</div> </div>
</div> </div>
@ -501,7 +505,7 @@
v-model="form.bank_name" v-model="form.bank_name"
style="width: 400px" style="width: 400px"
clearable clearable
readonly :readonly="isReadonly"
></el-input> ></el-input>
</div> </div>
<!-- <div class="item-block"> <!-- <div class="item-block">
@ -511,7 +515,7 @@
v-model="form.bank_branch_name" v-model="form.bank_branch_name"
style="width: 400px" style="width: 400px"
clearable clearable
readonly :readonly="isReadonly"
></el-input> ></el-input>
</div> --> </div> -->
</div> </div>
@ -523,7 +527,7 @@
v-model="form.account_holder_name" v-model="form.account_holder_name"
style="width: 400px" style="width: 400px"
clearable clearable
readonly :readonly="isReadonly"
></el-input> ></el-input>
</div> </div>
</div> </div>
@ -535,7 +539,7 @@
v-model="form.account_number" v-model="form.account_number"
style="width: 400px" style="width: 400px"
clearable clearable
readonly :readonly="isReadonly"
></el-input> ></el-input>
</div> </div>
</div> </div>
@ -548,7 +552,7 @@
v-model="form.lkl_ec_no" v-model="form.lkl_ec_no"
style="width: 400px" style="width: 400px"
clearable clearable
readonly :readonly="isReadonly"
></el-input> ></el-input>
</div> </div>
</div> </div>
@ -560,7 +564,7 @@
v-model="form.contract_download_url" v-model="form.contract_download_url"
style="width: 400px" style="width: 400px"
clearable clearable
readonly :readonly="isReadonly"
></el-input> ></el-input>
<el-button v-if="form.contract_download_url" type="primary" @click="downloadFile" :loading="downloading"> {{ downloading ? '下载中...' : '下载合同' }}</el-button> <el-button v-if="form.contract_download_url" type="primary" @click="downloadFile" :loading="downloading"> {{ downloading ? '下载中...' : '下载合同' }}</el-button>
</div> </div>
@ -801,13 +805,16 @@ import {
getCreateByFile, getCreateByFile,
getCheckContractFile, getCheckContractFile,
createShop, createShop,
createSubAccount createSubAccount,
checkShopName,
} from '@/api/shopAudit/shopAudit' } from '@/api/shopAudit/shopAudit'
import { GetCategoryList } from '@/api/base/store/category' import { GetCategoryList } from '@/api/base/store/category'
import city from './cityData.js' import city from './cityData.js'
import config from './formConfig' import config from './formConfig'
import { color } from 'echarts' import { color } from 'echarts'
import { copy } from 'clipboard' import { copy } from 'clipboard'
import { getAreaJSON } from '@/utils/static'
export default { export default {
props: { props: {
show: { show: {
@ -955,10 +962,19 @@ export default {
srcList6: [], srcList6: [],
srcList7: [], srcList7: [],
srcList8: [], srcList8: [],
downloading: false downloading: false,
sourceFormData:{},
isShopNamePass:true,
areaData:[],
cityData:[],
provinceData:[],
} }
}, },
computed: { computed: {
isReadonly(){
return this.form.approval_status == 1 && this.form.has_apply_mer == 1
},
signedStatusClass() { signedStatusClass() {
@ -1058,16 +1074,21 @@ export default {
this.title = `店铺审核详情 ( 个人入驻 )` this.title = `店铺审核详情 ( 个人入驻 )`
} }
if(this.form.individual_id_period_end == '9999-12-31' ||
this.form.legal_person_id_period_end == '9999-12-31' || if(this.form.individual_id_period_end == '9999-12-31'){
this.form.biz_license_period_end == '9999-12-31'
)
{
this.form.legal_person_id_period_end = '长期' this.form.legal_person_id_period_end = '长期'
}
if( this.form.legal_person_id_period_end == '9999-12-31'){
this.form.individual_id_period_end = '长期' this.form.individual_id_period_end = '长期'
}
if(this.form.biz_license_period_end == '9999-12-31'){
this.form.biz_license_period_end = '长期' this.form.biz_license_period_end = '长期'
} }
if(this.form.store_area){ if(this.form.store_area){
let areaArr = this.form.store_area.split('/'); let areaArr = this.form.store_area.split('/');
if(areaArr[0]){ if(areaArr[0]){
@ -1120,8 +1141,38 @@ export default {
this.srcList7.push(res.data.individual_id_images) this.srcList7.push(res.data.individual_id_images)
this.srcList8.push(res.data.individual_id_images2) this.srcList8.push(res.data.individual_id_images2)
} }
//
this.sourceFormData = JSON.parse(JSON.stringify(this.form));
this.showLoading = false this.showLoading = false
await this.getCategoryList(); await this.getCategoryList();
const areaData = await getAreaJSON()
if (areaData) {
this.areaData = this.formatAreaData(areaData[0]['provinces'])
console.log(this.areaData)
}
},
formatAreaData(data){
let provinces = []
data.forEach((item) => {
let province = {
pid: 0,
id: item.id,
name: item.name,
}
let citys = []
item.citys.forEach((iCity) => {
let city = {
pid: item.id,
id: iCity.id,
name: iCity.name,
}
citys.push(city)
})
province.citys = citys
provinces.push(province)
})
return provinces
}, },
downloadFile(){ downloadFile(){
this.downloading = true this.downloading = true
@ -1401,6 +1452,29 @@ export default {
}) })
} }
this.getMerchDetail(); this.getMerchDetail();
},
async handlerCheckShowName(){
let parems = {
storeName:this.form.store_name
}
let res = await checkShopName(parems)
if(res.status == 200){
if(res.data.flag == 1){
this.$message({
type: 'success',
message: res.msg,
})
this.isShopNamePass = true
}else{
this.$message({
type: 'error',
message: res.msg,
})
this.isShopNamePass = false
}
}
} }
}, },
} }