|
|
|
@ -785,6 +785,21 @@
|
|
|
|
:before-close="handleDrawerClose"
|
|
|
|
:before-close="handleDrawerClose"
|
|
|
|
>
|
|
|
|
>
|
|
|
|
<div style="padding: 0 20px">
|
|
|
|
<div style="padding: 0 20px">
|
|
|
|
|
|
|
|
<div style="margin-bottom: 15px;">
|
|
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
|
|
v-model="contractSelect.keyword"
|
|
|
|
|
|
|
|
placeholder="关键字搜索"
|
|
|
|
|
|
|
|
clearable
|
|
|
|
|
|
|
|
@clear="handleKeywordClear"
|
|
|
|
|
|
|
|
@keyup.enter.native="handleKeywordSearch"
|
|
|
|
|
|
|
|
>
|
|
|
|
|
|
|
|
<el-button
|
|
|
|
|
|
|
|
slot="append"
|
|
|
|
|
|
|
|
icon="el-icon-search"
|
|
|
|
|
|
|
|
@click="handleKeywordSearch"
|
|
|
|
|
|
|
|
></el-button>
|
|
|
|
|
|
|
|
</el-input>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
<xy-table
|
|
|
|
<xy-table
|
|
|
|
:list="contractList"
|
|
|
|
:list="contractList"
|
|
|
|
ref="contractToContractsTable"
|
|
|
|
ref="contractToContractsTable"
|
|
|
|
@ -1153,6 +1168,7 @@ export default {
|
|
|
|
page: 1,
|
|
|
|
page: 1,
|
|
|
|
page_size: 10,
|
|
|
|
page_size: 10,
|
|
|
|
is_framework: 1,
|
|
|
|
is_framework: 1,
|
|
|
|
|
|
|
|
keyword: "",
|
|
|
|
},
|
|
|
|
},
|
|
|
|
contractList: [],
|
|
|
|
contractList: [],
|
|
|
|
loading: false,
|
|
|
|
loading: false,
|
|
|
|
@ -1463,9 +1479,40 @@ export default {
|
|
|
|
this.contractList = res.list.data;
|
|
|
|
this.contractList = res.list.data;
|
|
|
|
this.contractTotal = res.list.total;
|
|
|
|
this.contractTotal = res.list.total;
|
|
|
|
},
|
|
|
|
},
|
|
|
|
|
|
|
|
// 关键字搜索
|
|
|
|
|
|
|
|
handleKeywordSearch() {
|
|
|
|
|
|
|
|
this.contractSelect.page = 1;
|
|
|
|
|
|
|
|
this.getContractToContracts();
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 清除关键字
|
|
|
|
|
|
|
|
handleKeywordClear() {
|
|
|
|
|
|
|
|
this.contractSelect.keyword = "";
|
|
|
|
|
|
|
|
this.contractSelect.page = 1;
|
|
|
|
|
|
|
|
this.getContractToContracts();
|
|
|
|
|
|
|
|
},
|
|
|
|
closeTag (i) {
|
|
|
|
closeTag (i) {
|
|
|
|
this.form.contract_to_contracts.splice(this.form.contract_to_contracts.findIndex(j => j.to_contract_id === i.id),1)
|
|
|
|
// 从表格中找到对应的行并取消选中
|
|
|
|
this.$refs['contractToContractsTable']?.toggleRowSelection(this.$refs['contractToContractsTable']?.getSelection().find(j => i.id === j.id),true)
|
|
|
|
const table = this.$refs['contractToContractsTable'];
|
|
|
|
|
|
|
|
if (table) {
|
|
|
|
|
|
|
|
const currentSelections = table.getSelection();
|
|
|
|
|
|
|
|
const rowToDeselect = currentSelections.find(j => j.id === i.id);
|
|
|
|
|
|
|
|
if (rowToDeselect) {
|
|
|
|
|
|
|
|
// 取消选中该行(第二个参数为 false 表示取消选中)
|
|
|
|
|
|
|
|
table.toggleRowSelection(rowToDeselect, false);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
// 更新 form.contract_to_contracts
|
|
|
|
|
|
|
|
const newSelections = table.getSelection();
|
|
|
|
|
|
|
|
this.form.contract_to_contracts = newSelections.map(item => {
|
|
|
|
|
|
|
|
return this.id ? {
|
|
|
|
|
|
|
|
contract_id: this.contractId,
|
|
|
|
|
|
|
|
to_contract_id: item.id,
|
|
|
|
|
|
|
|
use_money: this.form.plan_price
|
|
|
|
|
|
|
|
} : {
|
|
|
|
|
|
|
|
to_contract_id: item.id,
|
|
|
|
|
|
|
|
use_money: this.form.plan_price
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
}
|
|
|
|
},
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
|
|
async getDetail () {
|
|
|
|
async getDetail () {
|
|
|
|
@ -1786,6 +1833,7 @@ export default {
|
|
|
|
page: 1,
|
|
|
|
page: 1,
|
|
|
|
page_size: 10,
|
|
|
|
page_size: 10,
|
|
|
|
is_framework: 1,
|
|
|
|
is_framework: 1,
|
|
|
|
|
|
|
|
keyword: "",
|
|
|
|
};
|
|
|
|
};
|
|
|
|
this.contractList = [];
|
|
|
|
this.contractList = [];
|
|
|
|
this.contractTotal = 0;
|
|
|
|
this.contractTotal = 0;
|
|
|
|
|