|
@@ -152,6 +152,7 @@
|
|
|
<el-form-item label="首次开通人数:" label-width="150px" prop="firstOpenNum" style="width: 100%">
|
|
|
<el-input-number size="small" :min="0" controls-position="right" v-model.number="formInline.firstOpenNum" :disabled="finalize" style="width: 100px"></el-input-number> 人
|
|
|
</el-form-item>
|
|
|
+ <el-divider><i class="el-icon-s-check"></i></el-divider>
|
|
|
<el-form-item label="甲方账号:" label-width="150px">
|
|
|
32050188143600000075
|
|
|
</el-form-item>
|
|
@@ -164,9 +165,9 @@
|
|
|
<el-form-item label="乙方开户行:" label-width="150px" prop="secondPartyBankOfDeposit">
|
|
|
<el-input size="small" controls-position="right" v-model="formInline.secondPartyBankOfDeposit" :disabled="finalize" style="width: 300px"></el-input>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="乙方开票名称:" label-width="150px" prop="secondPartyBillingName">
|
|
|
+ <!-- <el-form-item label="乙方开票名称:" label-width="150px" prop="secondPartyBillingName">
|
|
|
<el-input size="small" controls-position="right" v-model="formInline.secondPartyBillingName" :disabled="finalize" style="width: 200px"></el-input>
|
|
|
- </el-form-item>
|
|
|
+ </el-form-item> -->
|
|
|
<el-form-item label="乙方纳税人识别号:" label-width="150px" prop="secondPartyTIN">
|
|
|
<el-input size="small" controls-position="right" v-model="formInline.secondPartyTIN" :disabled="finalize" style="width: 200px"></el-input>
|
|
|
</el-form-item>
|
|
@@ -186,14 +187,14 @@
|
|
|
<el-button type="primary" @click="ConfirmB('formInline')" :loading="listLoading" v-if="!finalize">确定</el-button>
|
|
|
<!-- <el-button type="primary" @click="ConfirmC()" :loading="listLoading" v-if="!finalize">合同定稿</el-button> -->
|
|
|
<el-popconfirm confirm-button-text='确定' cancel-button-text='取消' icon="el-icon-info" icon-color="#E6A23C" title="合同定稿将无法再继续编辑 是否确认?" @confirm="ConfirmC()">
|
|
|
- <el-button slot="reference" :loading="listLoading" v-if="!finalize">合同定稿</el-button>
|
|
|
+ <el-button slot="reference" :loading="listLoading" v-if="!finalize&&this.contractData.secondParty!=null">合同定稿</el-button>
|
|
|
</el-popconfirm>
|
|
|
</span>
|
|
|
</el-dialog>
|
|
|
<!-- 合同预览/下载 -->
|
|
|
<el-dialog v-if="editDialogC" :visible.sync="editDialogC" title="合同预览">
|
|
|
<!-- <el-link type="primary" :underline="false" :href="downloadUrl2" id="moban" :download=" this.softwareName+'销售合同-'+this.secondParty+ '.docx'">下载合同</el-link> -->
|
|
|
- <el-link type="primary" :underline="false" :href="downloadUrl2" ref="moban" :download=" this.softwareName+'销售合同-'+this.secondParty+ '.docx'">下载合同</el-link>
|
|
|
+ <el-link type="primary" :underline="false" :href="downloadUrl2" ref="moban" :download=" this.formInline.softwareName+'销售合同-'+this.formInline.secondParty+ '.docx'">下载合同</el-link>
|
|
|
<el-link type="primary" :underline="false" @click="preview2()">点击预览</el-link>
|
|
|
</el-dialog>
|
|
|
</section>
|
|
@@ -315,25 +316,30 @@ import axios from 'axios'
|
|
|
secondParty: [{ required: true, message: '请输入乙方名称', trigger: 'blur' }],
|
|
|
secondPartyAddr: [{ required: true, message: '请输入乙方地址', trigger: 'blur' }],
|
|
|
secondPartyContacts: [{ required: true, message: '请输入乙方联系人', trigger: 'blur' }],
|
|
|
- secondPartyTel: [{ required: true, message: '请输入乙方电话', trigger: 'blur' }],
|
|
|
+ secondPartyTel: [
|
|
|
+ { required: true, message: '请输入乙方电话', trigger: 'blur' },
|
|
|
+ { required: true, pattern:/^[0-9]{1,16}$/, message: '请输入正确的电话号码', trigger: 'change' },
|
|
|
+ ],
|
|
|
softwareName: [{ required: true, message: '请输入软件名称', trigger: 'blur' }],
|
|
|
- serviceDate: [{ required: true, message: '请输入服务周期', trigger: 'blur' }],
|
|
|
+ serviceDate: [
|
|
|
+ { required: true, message: '请确认服务周期', trigger: 'blur' },
|
|
|
+ ],
|
|
|
startDate: [{ required: true, message: '请选择服务开始日期', trigger: 'blur' }],
|
|
|
serviceChargeOfYear: [
|
|
|
{ required: true, message: '请输入年服务费', trigger: 'blur' },
|
|
|
- { required: true, pattern:/^[a-zA-Z0-9_-]{1,16}$/, message: '请输入数字', trigger: 'change' },
|
|
|
+ { required: true, pattern:/^[0-9]{1,16}$/, message: '请输入数字', trigger: 'change' },
|
|
|
],
|
|
|
customDevelopmentCosts: [
|
|
|
{ required: true, message: '请输入定制开发费', trigger: 'blur' },
|
|
|
- { required: true, pattern:/^[a-zA-Z0-9_-]{1,16}$/, message: '请输入数字', trigger: 'change' },
|
|
|
+ { required: true, pattern:/^[0-9]{1,16}$/, message: '请输入数字', trigger: 'change' },
|
|
|
],
|
|
|
standardUnitPrice: [
|
|
|
{ required: true, message: '请输入标准单价', trigger: 'blur' },
|
|
|
- { required: true, pattern:/^[a-zA-Z0-9_-]{1,16}$/, message: '请输入数字', trigger: 'change' },
|
|
|
+ { required: true, pattern:/^[0-9]{1,16}$/, message: '请输入数字', trigger: 'change' },
|
|
|
],
|
|
|
firstOpenNum: [
|
|
|
{ required: true, message: '请输入首次开通人数', trigger: 'blur' },
|
|
|
- { required: true, pattern:/^[a-zA-Z0-9_-]{1,16}$/, message: '请输入数字', trigger: 'change' },
|
|
|
+ { required: true, pattern:/^[0-9]{1,16}$/, message: '请输入数字', trigger: 'change' },
|
|
|
],
|
|
|
secondPartyAccount: [{ required: true, message: '请输入乙方账号', trigger: 'blur' }],
|
|
|
secondPartyBankOfDeposit: [{ required: true, message: '请输入乙方开户行', trigger: 'blur' }],
|
|
@@ -588,27 +594,27 @@ import axios from 'axios'
|
|
|
if (res.code == "ok") {
|
|
|
this.contractData = res.data;
|
|
|
if(this.contractData){
|
|
|
- this.secondParty=this.contractData.secondParty;
|
|
|
- this.secondPartyAddr=this.contractData.secondPartyAddr;
|
|
|
- this.secondPartyContacts=this.contractData.secondPartyContacts;
|
|
|
- this.secondPartyTel=this.contractData.secondPartyTel;
|
|
|
- this.softwareName=this.contractData.softwareName;
|
|
|
- this.serviceDate=this.contractData.serviceDate;
|
|
|
- this.startDate=this.contractData.startDate;
|
|
|
- this.serviceChargeOfYear=this.contractData.serviceChargeOfYear;
|
|
|
- this.customDevelopmentCosts=this.contractData.customDevelopmentCosts;
|
|
|
- this.standardUnitPrice=this.contractData.standardUnitPrice;
|
|
|
- this.firstOpenNum=this.contractData.firstOpenNum;
|
|
|
- this.secondPartyAccount=this.contractData.secondPartyAccount;
|
|
|
- this.secondPartyBankOfDeposit=this.contractData.secondPartyBankOfDeposit;
|
|
|
- this.secondPartyBillingName=this.contractData.secondPartyBillingName;
|
|
|
- this.secondPartyTIN=this.contractData.secondPartyTIN;
|
|
|
- this.billingAmount=this.contractData.billingAmount;
|
|
|
- this.invoiceType=this.contractData.invoiceType;
|
|
|
+ this.formInline.secondParty=this.contractData.secondParty;
|
|
|
+ this.formInline.secondPartyAddr=this.contractData.secondPartyAddr;
|
|
|
+ this.formInline.secondPartyContacts=this.contractData.secondPartyContacts;
|
|
|
+ this.formInline.secondPartyTel=this.contractData.secondPartyTel;
|
|
|
+ this.formInline.softwareName=this.contractData.softwareName;
|
|
|
+ this.formInline.serviceDate=this.contractData.serviceDate;
|
|
|
+ this.formInline.startDate=this.contractData.startDate;
|
|
|
+ this.formInline.serviceChargeOfYear=this.contractData.serviceChargeOfYear;
|
|
|
+ this.formInline.customDevelopmentCosts=this.contractData.customDevelopmentCosts;
|
|
|
+ this.formInline.standardUnitPrice=this.contractData.standardUnitPrice;
|
|
|
+ this.formInline.firstOpenNum=this.contractData.firstOpenNum;
|
|
|
+ this.formInline.secondPartyAccount=this.contractData.secondPartyAccount;
|
|
|
+ this.formInline.secondPartyBankOfDeposit=this.contractData.secondPartyBankOfDeposit;
|
|
|
+ this.formInline.secondPartyBillingName=this.contractData.secondPartyBillingName;
|
|
|
+ this.formInline.secondPartyTIN=this.contractData.secondPartyTIN;
|
|
|
+ this.formInline.billingAmount=this.contractData.billingAmount;
|
|
|
+ this.formInline.invoiceType=this.contractData.invoiceType;
|
|
|
this.finalize=this.contractData.finalize ? true : false;
|
|
|
}
|
|
|
console.log(this.signingData);
|
|
|
- this.downloadUrl2 = `/upload/${this.softwareName}销售合同-${this.secondParty}.docx`
|
|
|
+ this.downloadUrl2 = `/upload/${this.formInline.softwareName}销售合同-${this.formInline.secondParty}.docx`
|
|
|
console.log(this.downloadUrl2)
|
|
|
} else {
|
|
|
this.$message({
|