|
|
@ -0,0 +1,471 @@
|
|
|
|
|
|
|
|
<template>
|
|
|
|
|
|
|
|
<Dialog title="新增客户" v-model="dialogVisible">
|
|
|
|
|
|
|
|
<el-form ref="formRef" :model="formData" :rules="formRules" label-width="100px" v-loading="formLoading">
|
|
|
|
|
|
|
|
<el-form-item label="客户名称" prop="name">
|
|
|
|
|
|
|
|
<el-input v-model="formData.name" placeholder="请输入客户名称" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="分类(0:一级 1:二级 2:三级)" prop="calssify">
|
|
|
|
|
|
|
|
<el-select v-model="formData.calssify" placeholder="请选择">
|
|
|
|
|
|
|
|
<el-option v-for="dict in getIntDictOptions(DICT_TYPE.CUSTOMER_CALSSIFY)" :key="dict.value" :label="dict.label"
|
|
|
|
|
|
|
|
:value="dict.value" />
|
|
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="客户名称" prop="name">
|
|
|
|
|
|
|
|
<el-input v-model="formData.name" placeholder="请输入客户名称" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="公司logo" prop="logo">
|
|
|
|
|
|
|
|
<el-input v-model="formData.logo" placeholder="请输入公司logo" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="企业性质(0:国有企业 1:集体企业 2:私营企业 3:股份制企业 4:外资企业 5:合资企业)" prop="enterpriseNature">
|
|
|
|
|
|
|
|
<el-input v-model="formData.enterpriseNature" placeholder="请输入企业性质(0:国有企业 1:集体企业 2:私营企业 3:股份制企业 4:外资企业 5:合资企业)" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="行业分类(0:家用电器 1:交通运输 2:商务服务 3:家具用品 4:电工电气 5:通信产品 6:办公文教 7:运动休闲 8:传媒广电)" prop="industryClassify">
|
|
|
|
|
|
|
|
<el-input v-model="formData.industryClassify"
|
|
|
|
|
|
|
|
placeholder="请输入行业分类(0:家用电器 1:交通运输 2:商务服务 3:家具用品 4:电工电气 5:通信产品 6:办公文教 7:运动休闲 8:传媒广电)" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="客户来源(0:电话营销 1:主动来电 2:客户介绍 3:朋友介绍 4:独立开发 5:网络搜索 6:广告杂志 7:展会促销 8:其他途径)" prop="customerSource">
|
|
|
|
|
|
|
|
<el-input v-model="formData.customerSource"
|
|
|
|
|
|
|
|
placeholder="请输入客户来源(0:电话营销 1:主动来电 2:客户介绍 3:朋友介绍 4:独立开发 5:网络搜索 6:广告杂志 7:展会促销 8:其他途径)" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="客户星级(0:一星 1:二星 2:三星 3:四星 4:五星)" prop="customerStarrating">
|
|
|
|
|
|
|
|
<el-input v-model="formData.customerStarrating" placeholder="请输入客户星级(0:一星 1:二星 2:三星 3:四星 4:五星)" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="业务进度(0:了解跟进 1:资料收集 2:客户评审 3:风控核准 4:合作洽谈 5:准备签约 6:已经签约 7:合作叫停 8:暂时搁置)" prop="industrySchedule">
|
|
|
|
|
|
|
|
<el-input v-model="formData.industrySchedule"
|
|
|
|
|
|
|
|
placeholder="请输入业务进度(0:了解跟进 1:资料收集 2:客户评审 3:风控核准 4:合作洽谈 5:准备签约 6:已经签约 7:合作叫停 8:暂时搁置)" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="归属人员" prop="belongingPeople">
|
|
|
|
|
|
|
|
<el-input v-model="formData.belongingPeople" placeholder="请输入归属人员" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="所在城市" prop="city">
|
|
|
|
|
|
|
|
<el-input v-model="formData.city" placeholder="请输入所在城市" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="国家" prop="country">
|
|
|
|
|
|
|
|
<el-input v-model="formData.country" placeholder="请输入国家" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="详细地址" prop="address">
|
|
|
|
|
|
|
|
<el-input v-model="formData.address" placeholder="请输入详细地址" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="公司电话" prop="phone">
|
|
|
|
|
|
|
|
<el-input v-model="formData.phone" placeholder="请输入公司电话" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="公司传真" prop="companyFax">
|
|
|
|
|
|
|
|
<el-input v-model="formData.companyFax" placeholder="请输入公司传真" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="公司网址" prop="companyHttp">
|
|
|
|
|
|
|
|
<el-input v-model="formData.companyHttp" placeholder="请输入公司网址" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="客户状态(0:待提交 1:待审核 2:待核准 3:带启用 4:已启用 5:已禁用 6:已关闭)" prop="customerStatus">
|
|
|
|
|
|
|
|
<el-select v-model="formData.customerStatus" placeholder="请选择客户状态(0:待提交 1:待审核 2:待核准 3:带启用 4:已启用 5:已禁用 6:已关闭)">
|
|
|
|
|
|
|
|
<el-option v-for="dict in getStrDictOptions(DICT_TYPE.CUSTOMER_STATUS)" :key="dict.value" :label="dict.label"
|
|
|
|
|
|
|
|
:value="dict.value" />
|
|
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="社会信息代码证(营业执照)" prop="socialInformationCodeCertificate">
|
|
|
|
|
|
|
|
<el-input v-model="formData.socialInformationCodeCertificate" placeholder="请输入社会信息代码证(营业执照)" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="注册地址" prop="registerAddress">
|
|
|
|
|
|
|
|
<el-input v-model="formData.registerAddress" placeholder="请输入注册地址" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="社会统一信息代码" prop="informationCode">
|
|
|
|
|
|
|
|
<el-input v-model="formData.informationCode" placeholder="请输入社会统一信息代码" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="经营时间开始" prop="operateStart">
|
|
|
|
|
|
|
|
<el-input v-model="formData.operateStart" placeholder="请输入经营时间开始" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="经营时间结束" prop="operateEnd">
|
|
|
|
|
|
|
|
<el-input v-model="formData.operateEnd" placeholder="请输入经营时间结束" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="注册资金" prop="registerCapital">
|
|
|
|
|
|
|
|
<el-input v-model="formData.registerCapital" placeholder="请输入注册资金" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="经营范围" prop="businessScope">
|
|
|
|
|
|
|
|
<el-input v-model="formData.businessScope" placeholder="请输入经营范围" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="实缴资金证明" prop="proofPaidCapital">
|
|
|
|
|
|
|
|
<el-input v-model="formData.proofPaidCapital" placeholder="请输入实缴资金证明" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="资产证明" prop="assetCertificate">
|
|
|
|
|
|
|
|
<el-input v-model="formData.assetCertificate" placeholder="请输入资产证明" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="资产抵押证明" prop="assetCertificateMortgage">
|
|
|
|
|
|
|
|
<el-input v-model="formData.assetCertificateMortgage" placeholder="请输入资产抵押证明" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="其他资质文件" prop="otherQualifications">
|
|
|
|
|
|
|
|
<el-input v-model="formData.otherQualifications" placeholder="请输入其他资质文件" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="合作时间开始" prop="collaborationStart">
|
|
|
|
|
|
|
|
<el-input v-model="formData.collaborationStart" placeholder="请输入合作时间开始" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="合作时间结束" prop="collaborationEnd">
|
|
|
|
|
|
|
|
<el-input v-model="formData.collaborationEnd" placeholder="请输入合作时间结束" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="需求量(每月下限)" prop="demandVolumeDown">
|
|
|
|
|
|
|
|
<el-input v-model="formData.demandVolumeDown" placeholder="请输入需求量(每月下限)" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="需求量(每月上限)" prop="demandVolumeUpper">
|
|
|
|
|
|
|
|
<el-input v-model="formData.demandVolumeUpper" placeholder="请输入需求量(每月上限)" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="资金额度" prop="fundLimit">
|
|
|
|
|
|
|
|
<el-input v-model="formData.fundLimit" placeholder="请输入资金额度" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="营业时间" prop="businessHours">
|
|
|
|
|
|
|
|
<el-input v-model="formData.businessHours" placeholder="请输入营业时间" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="营业时间开始" prop="businessStart">
|
|
|
|
|
|
|
|
<el-input v-model="formData.businessStart" placeholder="请输入营业时间开始" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="营业时间结束" prop="businessEnd">
|
|
|
|
|
|
|
|
<el-input v-model="formData.businessEnd" placeholder="请输入营业时间结束" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="允许卸货时间开始" prop="allowableUnloadingStart">
|
|
|
|
|
|
|
|
<el-input v-model="formData.allowableUnloadingStart" placeholder="请输入允许卸货时间开始" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="允许卸货时间结束" prop="allowableUnloadingEnd">
|
|
|
|
|
|
|
|
<el-input v-model="formData.allowableUnloadingEnd" placeholder="请输入允许卸货时间结束" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="卸货时长" prop="unloading">
|
|
|
|
|
|
|
|
<el-input v-model="formData.unloading" placeholder="请输入卸货时长" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="卸货效率" prop="unloadingEfficiency">
|
|
|
|
|
|
|
|
<el-input v-model="formData.unloadingEfficiency" placeholder="请输入卸货效率" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="允许装货时间开始" prop="allowableShipmentStart">
|
|
|
|
|
|
|
|
<el-input v-model="formData.allowableShipmentStart" placeholder="请输入允许装货时间开始" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="允许装货时间结束" prop="allowableShipmentEnd">
|
|
|
|
|
|
|
|
<el-input v-model="formData.allowableShipmentEnd" placeholder="请输入允许装货时间结束" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="装货时长" prop="shipment">
|
|
|
|
|
|
|
|
<el-input v-model="formData.shipment" placeholder="请输入装货时长" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="装货效果" prop="shipmentEffciency">
|
|
|
|
|
|
|
|
<el-input v-model="formData.shipmentEffciency" placeholder="请输入装货效果" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="付款方式(0:无 1:现金 2:银行转账 3:承兑汇票 4:有赞代收 5:支付宝 6:微信 7:国家列表)" prop="paymentMethod">
|
|
|
|
|
|
|
|
<el-input v-model="formData.paymentMethod"
|
|
|
|
|
|
|
|
placeholder="请输入付款方式(0:无 1:现金 2:银行转账 3:承兑汇票 4:有赞代收 5:支付宝 6:微信 7:国家列表)" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="账户名称" prop="accountName">
|
|
|
|
|
|
|
|
<el-input v-model="formData.accountName" placeholder="请输入账户名称" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="银行账号" prop="bankAccount">
|
|
|
|
|
|
|
|
<el-input v-model="formData.bankAccount" placeholder="请输入银行账号" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="开户银行" prop="bankDeposit">
|
|
|
|
|
|
|
|
<el-input v-model="formData.bankDeposit" placeholder="请输入开户银行" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="开户地区" prop="depositArea">
|
|
|
|
|
|
|
|
<el-input v-model="formData.depositArea" placeholder="请输入开户地区" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="支行名称" prop="bankBranch">
|
|
|
|
|
|
|
|
<el-input v-model="formData.bankBranch" placeholder="请输入支行名称" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="公司税号" prop="companyTaxNumber">
|
|
|
|
|
|
|
|
<el-input v-model="formData.companyTaxNumber" placeholder="请输入公司税号" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="企业名称" prop="enterpriseName">
|
|
|
|
|
|
|
|
<el-input v-model="formData.enterpriseName" placeholder="请输入企业名称" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="单位地址" prop="workAddress">
|
|
|
|
|
|
|
|
<el-input v-model="formData.workAddress" placeholder="请输入单位地址" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="合作方式(0:买断 1:联营)" prop="collaborationMethod">
|
|
|
|
|
|
|
|
<el-input v-model="formData.collaborationMethod" placeholder="请输入合作方式(0:买断 1:联营)" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="结算方式(0:先货后款 1:先款后货)" prop="settlementMethod">
|
|
|
|
|
|
|
|
<el-input v-model="formData.settlementMethod" placeholder="请输入结算方式(0:先货后款 1:先款后货)" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="账期" prop="accountPeriod">
|
|
|
|
|
|
|
|
<el-input v-model="formData.accountPeriod" placeholder="请输入账期" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="压款方式(0:无 1:按金额 2:按比例)" prop="underpaymentMethod">
|
|
|
|
|
|
|
|
<el-input v-model="formData.underpaymentMethod" placeholder="请输入压款方式(0:无 1:按金额 2:按比例)" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="申请压款比例" prop="applyForUnderpaymentRatio">
|
|
|
|
|
|
|
|
<el-input v-model="formData.applyForUnderpaymentRatio" placeholder="请输入申请压款比例" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="保证金方式(0:无 1:按金额 2:按比例)" prop="marginMethod">
|
|
|
|
|
|
|
|
<el-input v-model="formData.marginMethod" placeholder="请输入保证金方式(0:无 1:按金额 2:按比例)" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="申请保证金比例" prop="applyForMarginRatio">
|
|
|
|
|
|
|
|
<el-input v-model="formData.applyForMarginRatio" placeholder="请输入申请保证金比例" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="逾期利率(0:按年化1:按月化)" prop="overdueInterestRate">
|
|
|
|
|
|
|
|
<el-input v-model="formData.overdueInterestRate" placeholder="请输入逾期利率(0:按年化1:按月化)" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="申请逾期利率" prop="applyForOverdueRatio">
|
|
|
|
|
|
|
|
<el-input v-model="formData.applyForOverdueRatio" placeholder="请输入申请逾期利率" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="预留字段1" prop="reservedFields1">
|
|
|
|
|
|
|
|
<el-input v-model="formData.reservedFields1" placeholder="请输入预留字段1" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="预留字段2" prop="reservedFields2">
|
|
|
|
|
|
|
|
<el-input v-model="formData.reservedFields2" placeholder="请输入预留字段2" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="预留字段3" prop="reservedFields3">
|
|
|
|
|
|
|
|
<el-input v-model="formData.reservedFields3" placeholder="请输入预留字段3" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="预留字段4" prop="reservedFields4">
|
|
|
|
|
|
|
|
<el-input v-model="formData.reservedFields4" placeholder="请输入预留字段4" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="预留字段5" prop="reservedFields5">
|
|
|
|
|
|
|
|
<el-input v-model="formData.reservedFields5" placeholder="请输入预留字段5" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="预留字段6" prop="reservedFields6">
|
|
|
|
|
|
|
|
<el-input v-model="formData.reservedFields6" placeholder="请输入预留字段6" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="信用级别(0:S 1:A 2:B)" prop="creditRating">
|
|
|
|
|
|
|
|
<el-input v-model="formData.creditRating" placeholder="请输入信用级别(0:S 1:A 2:B)" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="信用级别(0:开启 1:关闭)" prop="autoCreditRating">
|
|
|
|
|
|
|
|
<el-input v-model="formData.autoCreditRating" placeholder="请输入信用级别(0:开启 1:关闭)" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="应收款上限" prop="accountsReceivableUpper">
|
|
|
|
|
|
|
|
<el-input v-model="formData.accountsReceivableUpper" placeholder="请输入应收款上限" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="订单量下限" prop="orderQuantityDown">
|
|
|
|
|
|
|
|
<el-input v-model="formData.orderQuantityDown" placeholder="请输入订单量下限" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="订单量上限" prop="orderQuantityUpper">
|
|
|
|
|
|
|
|
<el-input v-model="formData.orderQuantityUpper" placeholder="请输入订单量上限" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="应收款项逾期限制" prop="accountsReceivableOverdue">
|
|
|
|
|
|
|
|
<el-input v-model="formData.accountsReceivableOverdue" placeholder="请输入应收款项逾期限制" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="完税证明超时限制" prop="taxPaymentCertificate">
|
|
|
|
|
|
|
|
<el-input v-model="formData.taxPaymentCertificate" placeholder="请输入完税证明超时限制" />
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
</el-form>
|
|
|
|
|
|
|
|
<template #footer>
|
|
|
|
|
|
|
|
<el-button @click="submitForm" type="primary" :disabled="formLoading">确 定</el-button>
|
|
|
|
|
|
|
|
<el-button @click="dialogVisible = false">取 消</el-button>
|
|
|
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
</Dialog>
|
|
|
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
<script setup lang="ts">
|
|
|
|
|
|
|
|
import { DICT_TYPE, getStrDictOptions, getIntDictOptions } from '@/utils/dict'
|
|
|
|
|
|
|
|
import * as SubjectBasicApi from '@/api/xxjj/subjectBasic'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const { t } = useI18n() // 国际化
|
|
|
|
|
|
|
|
const message = useMessage() // 消息弹窗
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const dialogVisible = ref(false) // 弹窗的是否展示
|
|
|
|
|
|
|
|
const dialogTitle = ref('') // 弹窗的标题
|
|
|
|
|
|
|
|
const formLoading = ref(false) // 表单的加载中:1)修改时的数据加载;2)提交的按钮禁用
|
|
|
|
|
|
|
|
const formType = ref('') // 表单的类型:create - 新增;update - 修改
|
|
|
|
|
|
|
|
const formData = ref({
|
|
|
|
|
|
|
|
id: undefined,
|
|
|
|
|
|
|
|
name: undefined,
|
|
|
|
|
|
|
|
businessType: undefined,
|
|
|
|
|
|
|
|
calssify: undefined,
|
|
|
|
|
|
|
|
logo: undefined,
|
|
|
|
|
|
|
|
enterpriseNature: undefined,
|
|
|
|
|
|
|
|
industryClassify: undefined,
|
|
|
|
|
|
|
|
customerSource: undefined,
|
|
|
|
|
|
|
|
customerStarrating: undefined,
|
|
|
|
|
|
|
|
industrySchedule: undefined,
|
|
|
|
|
|
|
|
belongingPeople: undefined,
|
|
|
|
|
|
|
|
city: undefined,
|
|
|
|
|
|
|
|
country: undefined,
|
|
|
|
|
|
|
|
address: undefined,
|
|
|
|
|
|
|
|
phone: undefined,
|
|
|
|
|
|
|
|
companyFax: undefined,
|
|
|
|
|
|
|
|
companyHttp: undefined,
|
|
|
|
|
|
|
|
companyProfile: undefined,
|
|
|
|
|
|
|
|
customerStatus: undefined,
|
|
|
|
|
|
|
|
socialInformationCodeCertificate: undefined,
|
|
|
|
|
|
|
|
registerAddress: undefined,
|
|
|
|
|
|
|
|
informationCode: undefined,
|
|
|
|
|
|
|
|
operateStart: undefined,
|
|
|
|
|
|
|
|
operateEnd: undefined,
|
|
|
|
|
|
|
|
registerCapital: undefined,
|
|
|
|
|
|
|
|
businessScope: undefined,
|
|
|
|
|
|
|
|
proofPaidCapital: undefined,
|
|
|
|
|
|
|
|
assetCertificate: undefined,
|
|
|
|
|
|
|
|
assetCertificateMortgage: undefined,
|
|
|
|
|
|
|
|
otherQualifications: undefined,
|
|
|
|
|
|
|
|
collaborationStart: undefined,
|
|
|
|
|
|
|
|
collaborationEnd: undefined,
|
|
|
|
|
|
|
|
demandVolumeDown: undefined,
|
|
|
|
|
|
|
|
demandVolumeUpper: undefined,
|
|
|
|
|
|
|
|
fundLimit: undefined,
|
|
|
|
|
|
|
|
businessHours: undefined,
|
|
|
|
|
|
|
|
businessStart: undefined,
|
|
|
|
|
|
|
|
businessEnd: undefined,
|
|
|
|
|
|
|
|
allowableUnloadingStart: undefined,
|
|
|
|
|
|
|
|
allowableUnloadingEnd: undefined,
|
|
|
|
|
|
|
|
unloading: undefined,
|
|
|
|
|
|
|
|
unloadingEfficiency: undefined,
|
|
|
|
|
|
|
|
allowableShipmentStart: undefined,
|
|
|
|
|
|
|
|
allowableShipmentEnd: undefined,
|
|
|
|
|
|
|
|
shipment: undefined,
|
|
|
|
|
|
|
|
shipmentEffciency: undefined,
|
|
|
|
|
|
|
|
paymentMethod: undefined,
|
|
|
|
|
|
|
|
accountName: undefined,
|
|
|
|
|
|
|
|
bankAccount: undefined,
|
|
|
|
|
|
|
|
bankDeposit: undefined,
|
|
|
|
|
|
|
|
depositArea: undefined,
|
|
|
|
|
|
|
|
bankBranch: undefined,
|
|
|
|
|
|
|
|
companyTaxNumber: undefined,
|
|
|
|
|
|
|
|
enterpriseName: undefined,
|
|
|
|
|
|
|
|
workAddress: undefined,
|
|
|
|
|
|
|
|
collaborationMethod: undefined,
|
|
|
|
|
|
|
|
settlementMethod: undefined,
|
|
|
|
|
|
|
|
accountPeriod: undefined,
|
|
|
|
|
|
|
|
underpaymentMethod: undefined,
|
|
|
|
|
|
|
|
applyForUnderpaymentRatio: undefined,
|
|
|
|
|
|
|
|
marginMethod: undefined,
|
|
|
|
|
|
|
|
applyForMarginRatio: undefined,
|
|
|
|
|
|
|
|
overdueInterestRate: undefined,
|
|
|
|
|
|
|
|
applyForOverdueRatio: undefined,
|
|
|
|
|
|
|
|
reservedFields1: undefined,
|
|
|
|
|
|
|
|
reservedFields2: undefined,
|
|
|
|
|
|
|
|
reservedFields3: undefined,
|
|
|
|
|
|
|
|
reservedFields4: undefined,
|
|
|
|
|
|
|
|
reservedFields5: undefined,
|
|
|
|
|
|
|
|
reservedFields6: undefined,
|
|
|
|
|
|
|
|
creditRating: undefined,
|
|
|
|
|
|
|
|
autoCreditRating: undefined,
|
|
|
|
|
|
|
|
accountsReceivableUpper: undefined,
|
|
|
|
|
|
|
|
orderQuantityDown: undefined,
|
|
|
|
|
|
|
|
orderQuantityUpper: undefined,
|
|
|
|
|
|
|
|
accountsReceivableOverdue: undefined,
|
|
|
|
|
|
|
|
taxPaymentCertificate: undefined
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
const formRules = reactive({
|
|
|
|
|
|
|
|
name: [{ required: true, message: '客户名称不能为空', trigger: 'change' }],
|
|
|
|
|
|
|
|
businessType: [{ required: true, message: '业务类型(0:客户 1:供应商 2:服务商)不能为空', trigger: 'change' }],
|
|
|
|
|
|
|
|
calssify: [{ required: true, message: '分类(0:一级 1:二级 2:三级)不能为空', trigger: 'blur' }],
|
|
|
|
|
|
|
|
customerStatus: [{ required: true, message: '客户状态(0:待提交 1:待审核 2:待核准 3:带启用 4:已启用 5:已禁用 6:已关闭)不能为空', trigger: 'change' }]
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
const formRef = ref() // 表单 Ref
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** 打开弹窗 */
|
|
|
|
|
|
|
|
const open = async (type: string, id?: number) => {
|
|
|
|
|
|
|
|
dialogVisible.value = true
|
|
|
|
|
|
|
|
dialogTitle.value = t('action.' + type)
|
|
|
|
|
|
|
|
formType.value = type
|
|
|
|
|
|
|
|
resetForm()
|
|
|
|
|
|
|
|
// 修改时,设置数据
|
|
|
|
|
|
|
|
if (id) {
|
|
|
|
|
|
|
|
formLoading.value = true
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
|
|
|
formData.value = await SubjectBasicApi.getSubjectBasic(id)
|
|
|
|
|
|
|
|
} finally {
|
|
|
|
|
|
|
|
formLoading.value = false
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
defineExpose({ open }) // 提供 open 方法,用于打开弹窗
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** 提交表单 */
|
|
|
|
|
|
|
|
const emit = defineEmits(['success']) // 定义 success 事件,用于操作成功后的回调
|
|
|
|
|
|
|
|
const submitForm = async () => {
|
|
|
|
|
|
|
|
// 校验表单
|
|
|
|
|
|
|
|
if (!formRef) return
|
|
|
|
|
|
|
|
const valid = await formRef.value.validate()
|
|
|
|
|
|
|
|
if (!valid) return
|
|
|
|
|
|
|
|
// 提交请求
|
|
|
|
|
|
|
|
formLoading.value = true
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
|
|
|
const data = formData.value as unknown as SubjectBasicApi.SubjectBasicVO
|
|
|
|
|
|
|
|
if (formType.value === 'create') {
|
|
|
|
|
|
|
|
await SubjectBasicApi.createSubjectBasic(data)
|
|
|
|
|
|
|
|
message.success(t('common.createSuccess'))
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
await SubjectBasicApi.updateSubjectBasic(data)
|
|
|
|
|
|
|
|
message.success(t('common.updateSuccess'))
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
dialogVisible.value = false
|
|
|
|
|
|
|
|
// 发送操作成功的事件
|
|
|
|
|
|
|
|
emit('success')
|
|
|
|
|
|
|
|
} finally {
|
|
|
|
|
|
|
|
formLoading.value = false
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** 重置表单 */
|
|
|
|
|
|
|
|
const resetForm = () => {
|
|
|
|
|
|
|
|
formData.value = {
|
|
|
|
|
|
|
|
id: undefined,
|
|
|
|
|
|
|
|
businessType: undefined,
|
|
|
|
|
|
|
|
calssify: undefined,
|
|
|
|
|
|
|
|
name: undefined,
|
|
|
|
|
|
|
|
logo: undefined,
|
|
|
|
|
|
|
|
enterpriseNature: undefined,
|
|
|
|
|
|
|
|
industryClassify: undefined,
|
|
|
|
|
|
|
|
customerSource: undefined,
|
|
|
|
|
|
|
|
customerStarrating: undefined,
|
|
|
|
|
|
|
|
industrySchedule: undefined,
|
|
|
|
|
|
|
|
belongingPeople: undefined,
|
|
|
|
|
|
|
|
city: undefined,
|
|
|
|
|
|
|
|
country: undefined,
|
|
|
|
|
|
|
|
address: undefined,
|
|
|
|
|
|
|
|
phone: undefined,
|
|
|
|
|
|
|
|
companyFax: undefined,
|
|
|
|
|
|
|
|
companyHttp: undefined,
|
|
|
|
|
|
|
|
companyProfile: undefined,
|
|
|
|
|
|
|
|
customerStatus: undefined,
|
|
|
|
|
|
|
|
socialInformationCodeCertificate: undefined,
|
|
|
|
|
|
|
|
registerAddress: undefined,
|
|
|
|
|
|
|
|
informationCode: undefined,
|
|
|
|
|
|
|
|
operateStart: undefined,
|
|
|
|
|
|
|
|
operateEnd: undefined,
|
|
|
|
|
|
|
|
registerCapital: undefined,
|
|
|
|
|
|
|
|
businessScope: undefined,
|
|
|
|
|
|
|
|
proofPaidCapital: undefined,
|
|
|
|
|
|
|
|
assetCertificate: undefined,
|
|
|
|
|
|
|
|
assetCertificateMortgage: undefined,
|
|
|
|
|
|
|
|
otherQualifications: undefined,
|
|
|
|
|
|
|
|
collaborationStart: undefined,
|
|
|
|
|
|
|
|
collaborationEnd: undefined,
|
|
|
|
|
|
|
|
demandVolumeDown: undefined,
|
|
|
|
|
|
|
|
demandVolumeUpper: undefined,
|
|
|
|
|
|
|
|
fundLimit: undefined,
|
|
|
|
|
|
|
|
businessHours: undefined,
|
|
|
|
|
|
|
|
businessStart: undefined,
|
|
|
|
|
|
|
|
businessEnd: undefined,
|
|
|
|
|
|
|
|
allowableUnloadingStart: undefined,
|
|
|
|
|
|
|
|
allowableUnloadingEnd: undefined,
|
|
|
|
|
|
|
|
unloading: undefined,
|
|
|
|
|
|
|
|
unloadingEfficiency: undefined,
|
|
|
|
|
|
|
|
allowableShipmentStart: undefined,
|
|
|
|
|
|
|
|
allowableShipmentEnd: undefined,
|
|
|
|
|
|
|
|
shipment: undefined,
|
|
|
|
|
|
|
|
shipmentEffciency: undefined,
|
|
|
|
|
|
|
|
paymentMethod: undefined,
|
|
|
|
|
|
|
|
accountName: undefined,
|
|
|
|
|
|
|
|
bankAccount: undefined,
|
|
|
|
|
|
|
|
bankDeposit: undefined,
|
|
|
|
|
|
|
|
depositArea: undefined,
|
|
|
|
|
|
|
|
bankBranch: undefined,
|
|
|
|
|
|
|
|
companyTaxNumber: undefined,
|
|
|
|
|
|
|
|
enterpriseName: undefined,
|
|
|
|
|
|
|
|
workAddress: undefined,
|
|
|
|
|
|
|
|
collaborationMethod: undefined,
|
|
|
|
|
|
|
|
settlementMethod: undefined,
|
|
|
|
|
|
|
|
accountPeriod: undefined,
|
|
|
|
|
|
|
|
underpaymentMethod: undefined,
|
|
|
|
|
|
|
|
applyForUnderpaymentRatio: undefined,
|
|
|
|
|
|
|
|
marginMethod: undefined,
|
|
|
|
|
|
|
|
applyForMarginRatio: undefined,
|
|
|
|
|
|
|
|
overdueInterestRate: undefined,
|
|
|
|
|
|
|
|
applyForOverdueRatio: undefined,
|
|
|
|
|
|
|
|
reservedFields1: undefined,
|
|
|
|
|
|
|
|
reservedFields2: undefined,
|
|
|
|
|
|
|
|
reservedFields3: undefined,
|
|
|
|
|
|
|
|
reservedFields4: undefined,
|
|
|
|
|
|
|
|
reservedFields5: undefined,
|
|
|
|
|
|
|
|
reservedFields6: undefined,
|
|
|
|
|
|
|
|
creditRating: undefined,
|
|
|
|
|
|
|
|
autoCreditRating: undefined,
|
|
|
|
|
|
|
|
accountsReceivableUpper: undefined,
|
|
|
|
|
|
|
|
orderQuantityDown: undefined,
|
|
|
|
|
|
|
|
orderQuantityUpper: undefined,
|
|
|
|
|
|
|
|
accountsReceivableOverdue: undefined,
|
|
|
|
|
|
|
|
taxPaymentCertificate: undefined
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
formRef.value?.resetFields()
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
</script>
|