|
@@ -89,9 +89,17 @@
|
|
<span v-if="scope.row.finishStatus == 2" style="color: #67C23A;">履约完成</span>
|
|
<span v-if="scope.row.finishStatus == 2" style="color: #67C23A;">履约完成</span>
|
|
</template>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table-column>
|
|
- <el-table-column prop="customerContact" label="供应商联系人" min-width="190"></el-table-column>
|
|
|
|
- <el-table-column prop="customerPhone" label="对方联系电话" min-width="190"></el-table-column>
|
|
|
|
- <el-table-column prop="useDepartment" label="使用部门" min-width="190"></el-table-column>
|
|
|
|
|
|
+ <!-- <el-table-column prop="customerContact" label="供应商联系人" min-width="190"></el-table-column> -->
|
|
|
|
+ <!-- <el-table-column prop="customerPhone" label="对方联系电话" min-width="190"></el-table-column> -->
|
|
|
|
+ <el-table-column label="供应商联系人及电话" min-width="240">
|
|
|
|
+ <template slot-scope="scope">
|
|
|
|
+ <div>
|
|
|
|
+ {{ scope.row.customerContact }}
|
|
|
|
+ <span v-if="scope.row.customerPhone">({{ scope.row.customerPhone }})</span>
|
|
|
|
+ </div>
|
|
|
|
+ </template>
|
|
|
|
+ </el-table-column>
|
|
|
|
+ <el-table-column prop="useDepartment" label="合同承办部门" min-width="190"></el-table-column>
|
|
<el-table-column prop="fundsSource" label="经费来源" min-width="190">
|
|
<el-table-column prop="fundsSource" label="经费来源" min-width="190">
|
|
<template slot-scope="scope">
|
|
<template slot-scope="scope">
|
|
<span v-if="scope.row.fundsSource == 1">科研</span>
|
|
<span v-if="scope.row.fundsSource == 1">科研</span>
|
|
@@ -156,7 +164,7 @@
|
|
<el-form ref="contractForm" :model="contractForm" label-width="160px" :rules="rules" class="contractForm">
|
|
<el-form ref="contractForm" :model="contractForm" label-width="160px" :rules="rules" class="contractForm">
|
|
<el-form-item :label="$t('contractno')">
|
|
<el-form-item :label="$t('contractno')">
|
|
<el-input v-model="contractForm.number" :disabled="contractForm.status == 0" :maxlength="50"
|
|
<el-input v-model="contractForm.number" :disabled="contractForm.status == 0" :maxlength="50"
|
|
- style="width:260px;" show-word-limit :placeholder="$t('peaseenterthe')" clearable
|
|
|
|
|
|
+ style="width:300px;" show-word-limit :placeholder="$t('peaseenterthe')" clearable
|
|
@input="searchProject"></el-input>
|
|
@input="searchProject"></el-input>
|
|
<span style="margin-left:20px;">{{ $t('rselatedprojects') }}</span>
|
|
<span style="margin-left:20px;">{{ $t('rselatedprojects') }}</span>
|
|
<el-select v-model="contractForm.projectId" filterable clearable style="width:260px;"
|
|
<el-select v-model="contractForm.projectId" filterable clearable style="width:260px;"
|
|
@@ -199,8 +207,14 @@
|
|
<el-input v-model="contractForm.customerPhone" :disabled="contractForm.status == 0"
|
|
<el-input v-model="contractForm.customerPhone" :disabled="contractForm.status == 0"
|
|
:placeholder="$t('peaseenterthe')" clearable></el-input>
|
|
:placeholder="$t('peaseenterthe')" clearable></el-input>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
|
+ <el-form-item label="是否为平台采购">
|
|
|
|
+ <el-select v-model="contractForm.isPlatformBuy" :disabled="contractForm.status == 0" placeholder="请选择" style="width:300px;">
|
|
|
|
+ <el-option label="是" :value="true"></el-option>
|
|
|
|
+ <el-option label="否" :value="false"></el-option>
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-form-item>
|
|
<el-form-item label="采购方式">
|
|
<el-form-item label="采购方式">
|
|
- <el-select v-model="contractForm.procurementWay" :disabled="contractForm.status == 0" placeholder="请选择">
|
|
|
|
|
|
+ <el-select v-model="contractForm.procurementWay" :disabled="contractForm.status == 0" placeholder="请选择" style="width:300px;">
|
|
<el-option label="公开招标" :value="0"></el-option>
|
|
<el-option label="公开招标" :value="0"></el-option>
|
|
<el-option label="邀请招标" :value="1"></el-option>
|
|
<el-option label="邀请招标" :value="1"></el-option>
|
|
<el-option label="询比价" :value="2"></el-option>
|
|
<el-option label="询比价" :value="2"></el-option>
|
|
@@ -213,7 +227,7 @@
|
|
:placeholder="$t('peaseenterthe')" clearable></el-input>
|
|
:placeholder="$t('peaseenterthe')" clearable></el-input>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="经费来源">
|
|
<el-form-item label="经费来源">
|
|
- <el-select v-model="contractForm.fundsSource" :disabled="contractForm.status == 0" placeholder="请选择">
|
|
|
|
|
|
+ <el-select v-model="contractForm.fundsSource" :disabled="contractForm.status == 0" placeholder="请选择" style="width:300px;">
|
|
<el-option label="科研" value="1"></el-option>
|
|
<el-option label="科研" value="1"></el-option>
|
|
<el-option label="其他(专项等)" value="2"></el-option>
|
|
<el-option label="其他(专项等)" value="2"></el-option>
|
|
</el-select>
|
|
</el-select>
|
|
@@ -228,19 +242,19 @@
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="签订日期">
|
|
<el-form-item label="签订日期">
|
|
<el-date-picker v-model="contractForm.signDate" :disabled="contractForm.status == 0"
|
|
<el-date-picker v-model="contractForm.signDate" :disabled="contractForm.status == 0"
|
|
- value-format="yyyy-MM-dd" type="date" :placeholder="$t('optiondate')"></el-date-picker>
|
|
|
|
|
|
+ value-format="yyyy-MM-dd" type="date" :placeholder="$t('optiondate')" style="width:300px;"></el-date-picker>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="合同生效日期">
|
|
<el-form-item label="合同生效日期">
|
|
<el-date-picker v-model="contractForm.startDate" :disabled="contractForm.status == 0"
|
|
<el-date-picker v-model="contractForm.startDate" :disabled="contractForm.status == 0"
|
|
- value-format="yyyy-MM-dd" type="date" :placeholder="$t('optiondate')"></el-date-picker>
|
|
|
|
|
|
+ value-format="yyyy-MM-dd" type="date" :placeholder="$t('optiondate')" style="width:300px;"></el-date-picker>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="合同终止日期">
|
|
<el-form-item label="合同终止日期">
|
|
<el-date-picker v-model="contractForm.endDate" :disabled="contractForm.status == 0"
|
|
<el-date-picker v-model="contractForm.endDate" :disabled="contractForm.status == 0"
|
|
- value-format="yyyy-MM-dd" type="date" :placeholder="$t('optiondate')"></el-date-picker>
|
|
|
|
|
|
+ value-format="yyyy-MM-dd" type="date" :placeholder="$t('optiondate')" style="width:300px;"></el-date-picker>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="备案日期">
|
|
<el-form-item label="备案日期">
|
|
<el-date-picker v-model="contractForm.filingsDate" :disabled="contractForm.status == 0"
|
|
<el-date-picker v-model="contractForm.filingsDate" :disabled="contractForm.status == 0"
|
|
- value-format="yyyy-MM-dd" type="date" :placeholder="$t('optiondate')"></el-date-picker>
|
|
|
|
|
|
+ value-format="yyyy-MM-dd" type="date" :placeholder="$t('optiondate')" style="width:300px;"></el-date-picker>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="合同金额(元)/含税价">
|
|
<el-form-item label="合同金额(元)/含税价">
|
|
<el-input v-model="contractForm.amounts" :disabled="contractForm.status == 0 || !contractForm.isAmountFixed"
|
|
<el-input v-model="contractForm.amounts" :disabled="contractForm.status == 0 || !contractForm.isAmountFixed"
|
|
@@ -262,7 +276,7 @@
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="是否固定金额">
|
|
<el-form-item label="是否固定金额">
|
|
<el-select v-model="contractForm.isAmountFixed" :disabled="contractForm.status == 0" placeholder="请选择"
|
|
<el-select v-model="contractForm.isAmountFixed" :disabled="contractForm.status == 0" placeholder="请选择"
|
|
- @change="processingContractAmount()">
|
|
|
|
|
|
+ @change="processingContractAmount()" style="width:300px;">
|
|
<el-option label="是" :value="true"></el-option>
|
|
<el-option label="是" :value="true"></el-option>
|
|
<el-option label="否" :value="false"></el-option>
|
|
<el-option label="否" :value="false"></el-option>
|
|
</el-select>
|
|
</el-select>
|
|
@@ -272,21 +286,21 @@
|
|
:placeholder="$t('peaseenterthe')" clearable></el-input>
|
|
:placeholder="$t('peaseenterthe')" clearable></el-input>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="合同状态(是否结清)">
|
|
<el-form-item label="合同状态(是否结清)">
|
|
- <el-select v-model="contractForm.finishStatus" :disabled="contractForm.status == 0" placeholder="请选择">
|
|
|
|
|
|
+ <el-select v-model="contractForm.finishStatus" :disabled="contractForm.status == 0" placeholder="请选择" style="width:300px;">
|
|
<el-option label="履约中" :value="1"></el-option>
|
|
<el-option label="履约中" :value="1"></el-option>
|
|
<el-option label="履约完成" :value="2"></el-option>
|
|
<el-option label="履约完成" :value="2"></el-option>
|
|
</el-select>
|
|
</el-select>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="合同印花税缴纳状态">
|
|
<el-form-item label="合同印花税缴纳状态">
|
|
<el-select v-model="contractForm.stampDutyStatus" :disabled="!permissions.contractStampDuty" placeholder="请选择"
|
|
<el-select v-model="contractForm.stampDutyStatus" :disabled="!permissions.contractStampDuty" placeholder="请选择"
|
|
- @change="stampDutyStatusChange()">
|
|
|
|
|
|
+ @change="stampDutyStatusChange()" style="width:300px;">
|
|
<el-option v-for="item in stampDutyStatusList" :key="item.id" :label="item.label" :value="item.id"></el-option>
|
|
<el-option v-for="item in stampDutyStatusList" :key="item.id" :label="item.label" :value="item.id"></el-option>
|
|
</el-select>
|
|
</el-select>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="合同印花税缴纳时间">
|
|
<el-form-item label="合同印花税缴纳时间">
|
|
<el-date-picker v-model="contractForm.stampDutyTime" value-format="yyyy-MM-dd" type="date"
|
|
<el-date-picker v-model="contractForm.stampDutyTime" value-format="yyyy-MM-dd" type="date"
|
|
placeholder="选择缴纳日期" :disabled="[0, 1].includes(contractForm.stampDutyStatus) || !permissions.contractStampDuty"
|
|
placeholder="选择缴纳日期" :disabled="[0, 1].includes(contractForm.stampDutyStatus) || !permissions.contractStampDuty"
|
|
- :clearable="false" @change="stampDutyTimeChange()"></el-date-picker>
|
|
|
|
|
|
+ :clearable="false" @change="stampDutyTimeChange()" style="width:300px;"></el-date-picker>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item :label="$t('bei-zhu')">
|
|
<el-form-item :label="$t('bei-zhu')">
|
|
<el-input v-model="contractForm.remarks" :disabled="contractForm.status == 0"
|
|
<el-input v-model="contractForm.remarks" :disabled="contractForm.status == 0"
|
|
@@ -426,11 +440,20 @@
|
|
<el-form-item label="供应商名称">
|
|
<el-form-item label="供应商名称">
|
|
{{ contractForm.customerOrg }}
|
|
{{ contractForm.customerOrg }}
|
|
</el-form-item>
|
|
</el-form-item>
|
|
- <el-form-item label="供应商联系人">
|
|
|
|
|
|
+ <!-- <el-form-item label="供应商联系人">
|
|
{{ contractForm.customerContact }}
|
|
{{ contractForm.customerContact }}
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="对方联系电话">
|
|
<el-form-item label="对方联系电话">
|
|
{{ contractForm.customerPhone }}
|
|
{{ contractForm.customerPhone }}
|
|
|
|
+ </el-form-item> -->
|
|
|
|
+ <el-form-item label="供应商联系人及电话">
|
|
|
|
+ <div>
|
|
|
|
+ {{ contractForm.customerContact }}
|
|
|
|
+ <span v-if="contractForm.customerPhone">({{ contractForm.customerPhone }})</span>
|
|
|
|
+ </div>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="是否为平台采购">
|
|
|
|
+ {{ contractForm.isPlatformBuy ? '是' : '否' }}
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="采购方式">
|
|
<el-form-item label="采购方式">
|
|
{{ ['公开招标', '邀请招标', '询比价', '竞争性谈判', '单一来源'][contractForm.procurementWay] }}
|
|
{{ ['公开招标', '邀请招标', '询比价', '竞争性谈判', '单一来源'][contractForm.procurementWay] }}
|
|
@@ -887,11 +910,9 @@ export default {
|
|
},
|
|
},
|
|
//添加合同回款情况
|
|
//添加合同回款情况
|
|
addItem() {
|
|
addItem() {
|
|
- // let p = 0;
|
|
|
|
- // this.contractPaymentList.push( { contractId:this.contractForm.id, isPayed:false,payDate: null, amount:0.0});
|
|
|
|
const { isAmountFixed, stampDutyStatus } = this.contractForm
|
|
const { isAmountFixed, stampDutyStatus } = this.contractForm
|
|
if(!isAmountFixed && stampDutyStatus == 2) {
|
|
if(!isAmountFixed && stampDutyStatus == 2) {
|
|
- this.contractForm.stampDutyStatus = 3
|
|
|
|
|
|
+ // this.contractForm.stampDutyStatus = 3
|
|
setTimeout(() => {
|
|
setTimeout(() => {
|
|
if ([0, 1].includes(this.contractForm.stampDutyStatus)) {
|
|
if ([0, 1].includes(this.contractForm.stampDutyStatus)) {
|
|
this.contractForm.stampDutyTime = ''
|
|
this.contractForm.stampDutyTime = ''
|
|
@@ -1025,6 +1046,10 @@ export default {
|
|
parameter.startDate = this.dateArray[0]
|
|
parameter.startDate = this.dateArray[0]
|
|
parameter.endDate = this.dateArray[1]
|
|
parameter.endDate = this.dateArray[1]
|
|
}
|
|
}
|
|
|
|
+ if (this.paymentDate && this.paymentDate.length == 2) {
|
|
|
|
+ parameter.paymentStartDate = this.paymentDate[0]
|
|
|
|
+ parameter.paymentEndDate = this.paymentDate[1]
|
|
|
|
+ }
|
|
|
|
|
|
if (this.customerOrgs) {
|
|
if (this.customerOrgs) {
|
|
parameter.customerOrg = this.customerOrgs
|
|
parameter.customerOrg = this.customerOrgs
|
|
@@ -1034,6 +1059,10 @@ export default {
|
|
parameter.finishStatus = this.finishStatuss
|
|
parameter.finishStatus = this.finishStatuss
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ if(this.stampDutyStatusVal || this.stampDutyStatusVal === 0) {
|
|
|
|
+ parameter.stampDutyStatus = this.stampDutyStatusVal
|
|
|
|
+ }
|
|
|
|
+
|
|
this.http.post('/contract/exportContractOneToMany', parameter,
|
|
this.http.post('/contract/exportContractOneToMany', parameter,
|
|
res => {
|
|
res => {
|
|
if (res.code == 'ok') {
|
|
if (res.code == 'ok') {
|
|
@@ -1152,14 +1181,6 @@ export default {
|
|
if ([0, 1].includes(val)) {
|
|
if ([0, 1].includes(val)) {
|
|
this.contractForm.stampDutyTime = ''
|
|
this.contractForm.stampDutyTime = ''
|
|
}
|
|
}
|
|
- if(!this.contractForm.isAmountFixed && [2, 3].includes(val)) {
|
|
|
|
- this.contractPaymentList = (this.contractPaymentList || []).map(item => {
|
|
|
|
- return {
|
|
|
|
- ...item,
|
|
|
|
- stampDutyTime: ''
|
|
|
|
- }
|
|
|
|
- })
|
|
|
|
- }
|
|
|
|
},
|
|
},
|
|
newlyAdd() {
|
|
newlyAdd() {
|
|
this.dialogTitle = this.$t('add')
|
|
this.dialogTitle = this.$t('add')
|
|
@@ -1373,14 +1394,21 @@ export default {
|
|
})
|
|
})
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
|
|
+ const flagList = this.returnValuableData(this.contractPaymentList)
|
|
|
|
+ const modifyState = flagList.some(item => !item.hasOwnProperty('stampDutyTime'));
|
|
|
|
+ if(!this.contractForm.isAmountFixed && modifyState) {
|
|
|
|
+ this.contractForm.stampDutyStatus = 3
|
|
|
|
+ }
|
|
|
|
+
|
|
this.submitLoading = true
|
|
this.submitLoading = true
|
|
delete this.contractForm.files
|
|
delete this.contractForm.files
|
|
- this.contractForm.paymentListStr = JSON.stringify(this.returnValuableData(this.contractPaymentList));
|
|
|
|
|
|
+ this.contractForm.paymentListStr = JSON.stringify(flagList);
|
|
delete this.contractForm.msg
|
|
delete this.contractForm.msg
|
|
delete this.contractForm.nextPaymentDate
|
|
delete this.contractForm.nextPaymentDate
|
|
delete this.contractForm.nextPaymentAmount
|
|
delete this.contractForm.nextPaymentAmount
|
|
delete this.contractForm.payCustomizedData
|
|
delete this.contractForm.payCustomizedData
|
|
delete this.contractForm.checkerId
|
|
delete this.contractForm.checkerId
|
|
|
|
+
|
|
this.http.post(this.dialogTitle == this.$t('add') ? '/contract/addContract' : '/contract/editContract', this.contractForm,
|
|
this.http.post(this.dialogTitle == this.$t('add') ? '/contract/addContract' : '/contract/editContract', this.contractForm,
|
|
res => {
|
|
res => {
|
|
this.submitLoading = false
|
|
this.submitLoading = false
|