|
|
|
@ -2,7 +2,6 @@ |
|
|
|
<div class="mod-config"> |
|
|
|
<!-- 查询条件 --> |
|
|
|
<el-form :inline="true" label-position="top" :model="searchData" @keyup.enter.native="getDataList()"> |
|
|
|
<yzz></yzz> |
|
|
|
<el-form-item :label="'客户编码'"> |
|
|
|
<el-input v-model="searchData.customerNo" clearable style="width: 120px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
@ -131,13 +130,7 @@ |
|
|
|
</el-table-column> |
|
|
|
</el-table> |
|
|
|
|
|
|
|
<div style="float:left; margin-top: 10px; font-size: 13px"> |
|
|
|
<label style="color: gray">共</label> |
|
|
|
<label style="color: #17B3A3">{{ dataList.length }}</label> |
|
|
|
<label style="color: gray"> 条 记 录,已 选 </label> |
|
|
|
<label style="color: #17B3A3">{{ quotationSelections.length }}</label> |
|
|
|
<label style="color: gray"> 条</label> |
|
|
|
</div> |
|
|
|
<selectDiv ref="selectDiv"></selectDiv> |
|
|
|
|
|
|
|
<!-- 分页插件 --> |
|
|
|
<el-pagination style="margin-top: 0px" |
|
|
|
@ -385,7 +378,7 @@ |
|
|
|
<!-- 页签 --> |
|
|
|
<el-tabs v-model="activeTable" style="margin-top: 0px; width: 100%; height: 100%;" type="border-card" @tab-click="tabClick" class="customer-tab"> |
|
|
|
<!-- 报价详细信息页签 --> |
|
|
|
<el-tab-pane label="报价详细信息" name="quotation_detail_information" style="height: 240px"> |
|
|
|
<el-tab-pane label="报价详细信息" name="quotation_detail_information" style="height: 448px"> |
|
|
|
<el-form :inline="true" label-position="top" :model="quotationDetailData" style="margin-left: 10px;margin-top: 10px;"> |
|
|
|
<el-form-item label="技术注意事项"> |
|
|
|
<el-input |
|
|
|
@ -410,26 +403,26 @@ |
|
|
|
</el-form> |
|
|
|
</el-tab-pane> |
|
|
|
<!-- 报价结果页签 --> |
|
|
|
<el-tab-pane label="报价结果" name="quotation_result" style="height: 510px"> |
|
|
|
<el-form :inline="true" label-position="top" :model="quotationResultData" style="margin-left: 10px;margin-top: 10px;"> |
|
|
|
<el-tab-pane label="报价结果" name="quotation_result" style="height: 454px"> |
|
|
|
<el-form :inline="true" label-position="top" :model="quotationResultData" style="margin-left: 10px;margin-top: 5px;"> |
|
|
|
<el-button v-if="quotationResultData.quotationResultStatus === '' || quotationResultData.quotationResultStatus == null" type="primary" @click="quotationResultModal()">录入报价结果</el-button> |
|
|
|
<el-button v-if="quotationResultData.quotationResultStatus === 'E'" type="primary" @click="submitQuotationModal()">提交客户报价</el-button> |
|
|
|
<el-button v-if="quotationResultData.quotationResultStatus === 'S'" type="primary" @click="customerResponseModal()">客户回复</el-button> |
|
|
|
</el-form> |
|
|
|
<el-form :inline="true" label-position="top" :model="quotationResultData" style="margin-left: 10px;margin-top: 10px;"> |
|
|
|
<el-form :inline="true" label-position="top" :model="quotationResultData" style="margin-left: 10px;margin-top: 2px;"> |
|
|
|
<el-form-item label="实际报价日期"> |
|
|
|
<el-date-picker v-model="quotationResultData.actualityQuotationDate" readonly type="date" value-format="yyyy-MM-dd" style="width: 240px"></el-date-picker> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-form :inline="true" label-position="top" :model="quotationResultData" style="margin-left: 10px;margin-top: 5px;"> |
|
|
|
<el-form :inline="true" label-position="top" :model="quotationResultData" style="margin-left: 10px;margin-top: -1px;"> |
|
|
|
<el-form-item label="报价结果信息"> |
|
|
|
<el-input type="textarea" v-model="quotationResultData.quotationResultInformation" readonly :rows="2" resize='none' show-word-limit style="width: 760px;height: 30px"></el-input> |
|
|
|
<el-input type="textarea" v-model="quotationResultData.quotationResultInformation" readonly :rows="2" resize='none' show-word-limit style="width: 760px;height: 20px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-form :inline="true" label-position="top" :model="quotationResultData" style="margin-left: 10px;margin-top: 32px;"> |
|
|
|
<el-form :inline="true" label-position="top" :model="quotationResultData" style="margin-left: 10px;margin-top: 26px;"> |
|
|
|
<el-form-item label="附件清单"> |
|
|
|
<el-table |
|
|
|
:height="100" |
|
|
|
:height="90" |
|
|
|
:data="fileContentList" |
|
|
|
border |
|
|
|
v-loading="dataListLoading" |
|
|
|
@ -462,7 +455,7 @@ |
|
|
|
</el-table> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-form :inline="true" label-position="top" :model="quotationResultData" style="margin-left: 10px;margin-top: 83px;"> |
|
|
|
<el-form :inline="true" label-position="top" :model="quotationResultData" style="margin-left: 10px;margin-top: 69px;"> |
|
|
|
<el-form-item label="实际提交看客户日期"> |
|
|
|
<el-date-picker v-model="quotationResultData.actualitySubmissionDate" readonly type="date" value-format="yyyy-MM-dd" style="width: 240px"></el-date-picker> |
|
|
|
</el-form-item> |
|
|
|
@ -470,12 +463,12 @@ |
|
|
|
<el-input v-model="quotationResultData.submissionMethod" readonly style="width: 240px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-form :inline="true" label-position="top" :model="quotationResultData" style="margin-left: 10px;margin-top: 5px;"> |
|
|
|
<el-form :inline="true" label-position="top" :model="quotationResultData" style="margin-left: 10px;margin-top: -2px;"> |
|
|
|
<el-form-item label="提交备注"> |
|
|
|
<el-input type="textarea" v-model="quotationResultData.submissionRemark" readonly :rows="2" resize='none' show-word-limit style="width: 760px;height: 30px"></el-input> |
|
|
|
<el-input type="textarea" v-model="quotationResultData.submissionRemark" readonly :rows="2" resize='none' show-word-limit style="width: 760px;height: 20px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-form :inline="true" label-position="top" :model="quotationResultData" style="margin-left: 10px;margin-top: 32px;"> |
|
|
|
<el-form :inline="true" label-position="top" :model="quotationResultData" style="margin-left: 10px;margin-top: 26px;"> |
|
|
|
<el-form-item label="客户是否回复"> |
|
|
|
<el-checkbox type="checkbox" v-if="quotationResultData.quotationResultStatus === 'R'" checked onclick="return false"/> |
|
|
|
<el-checkbox type="checkbox" v-if="quotationResultData.quotationResultStatus !== 'R'" onclick="return false"/> |
|
|
|
@ -490,14 +483,15 @@ |
|
|
|
<el-input v-model="quotationResultData.confirmBy" readonly style="width: 205px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-form :inline="true" label-position="top" :model="quotationResultData" style="margin-left: 10px;margin-top: 5px;"> |
|
|
|
<el-form :inline="true" label-position="top" :model="quotationResultData" style="margin-left: 10px;margin-top: -2px;"> |
|
|
|
<el-form-item label="客户回复信息"> |
|
|
|
<el-input type="textarea" v-model="quotationResultData.confirmInformation" readonly :rows="2" resize='none' show-word-limit style="width: 760px;height: 30px"></el-input> |
|
|
|
<el-input type="textarea" v-model="quotationResultData.confirmInformation" readonly :rows="2" resize='none' show-word-limit style="width: 760px;height: 20px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
</el-tab-pane> |
|
|
|
</el-tabs> |
|
|
|
|
|
|
|
<!-- chooseList模态框 --> |
|
|
|
<Chooselist ref="baseList" @getBaseData="getBaseData"></Chooselist> |
|
|
|
|
|
|
|
<!-- 上传文件的modal --> |
|
|
|
@ -1271,7 +1265,7 @@ |
|
|
|
}, |
|
|
|
mounted () { |
|
|
|
this.$nextTick(() => { |
|
|
|
this.height = window.innerHeight / 2 - 30; |
|
|
|
this.height = window.innerHeight / 2 - 240; |
|
|
|
/*第二个表格高度的动态调整*/ |
|
|
|
this.secondHeight = window.innerHeight / 2 - 206; |
|
|
|
}) |
|
|
|
@ -1375,6 +1369,7 @@ |
|
|
|
this.pageIndex = data.page.currPage |
|
|
|
this.pageSize = data.page.pageSize |
|
|
|
this.totalPage = data.page.totalCount |
|
|
|
this.$refs.selectDiv.setLengthAll( this.dataList.length) |
|
|
|
//判断是否全部存在数据 |
|
|
|
if(this.totalPage > 0){ |
|
|
|
//设置选中行 |
|
|
|
@ -1663,19 +1658,21 @@ |
|
|
|
|
|
|
|
// ======== 列表操作方法 ======== |
|
|
|
/** |
|
|
|
* 单机选中客户信息 |
|
|
|
* 单机选中报价信息 |
|
|
|
* @param row |
|
|
|
*/ |
|
|
|
quotationClickRow (row) { |
|
|
|
this.$refs.quotationTable.toggleRowSelection(row); |
|
|
|
this.quotationCurrentRow = JSON.parse(JSON.stringify(row)) |
|
|
|
this.quotationDetailData = row |
|
|
|
}, |
|
|
|
/** |
|
|
|
* 复选客户信息 |
|
|
|
* 复选报价信息 |
|
|
|
* @param val |
|
|
|
*/ |
|
|
|
selectionQuotation (val) { |
|
|
|
this.quotationSelections = val |
|
|
|
this.$refs.selectDiv.setLengthselected(this.quotationSelections.length) |
|
|
|
}, |
|
|
|
|
|
|
|
// ======== 报价结果相关方法 ======== |
|
|
|
@ -1693,10 +1690,9 @@ |
|
|
|
updateBy: this.$store.state.user.name |
|
|
|
} |
|
|
|
this.quotationSelections.forEach(val => { |
|
|
|
this.enterResultData.quotationNo += val.quotationNo + ';' |
|
|
|
this.enterResultData.quotationNo += ';' + val.quotationNo |
|
|
|
}) |
|
|
|
this.enterResultData.quotationNo = this.enterResultData.quotationNo.substring(1) |
|
|
|
console.log() |
|
|
|
this.enterResultModalFlag = true |
|
|
|
}, |
|
|
|
/** |
|
|
|
@ -1711,23 +1707,50 @@ |
|
|
|
this.$message.warning('请填写报价结果信息!') |
|
|
|
return |
|
|
|
} |
|
|
|
saveQuotationResult(this.enterResultData).then(({data}) => { |
|
|
|
if (data && data.code === 0) { |
|
|
|
this.getQuotationResult() |
|
|
|
this.enterResultModalFlag = false |
|
|
|
this.$message({ |
|
|
|
message: '操作成功', |
|
|
|
type: 'success', |
|
|
|
duration: 1500, |
|
|
|
onClose: () => { |
|
|
|
if (this.quotationSelections.length > 1) { |
|
|
|
this.$confirm(`是否录入多条报价结果?`, '提示', { |
|
|
|
confirmButtonText: '确定', |
|
|
|
cancelButtonText: '取消', |
|
|
|
type: 'warning' |
|
|
|
}).then(() => { |
|
|
|
saveQuotationResult(this.enterResultData).then(({data}) => { |
|
|
|
if (data && data.code === 0) { |
|
|
|
this.getQuotationResult() |
|
|
|
this.enterResultModalFlag = false |
|
|
|
this.$message({ |
|
|
|
message: '操作成功', |
|
|
|
type: 'success', |
|
|
|
duration: 1500, |
|
|
|
onClose: () => { |
|
|
|
} |
|
|
|
}) |
|
|
|
} else { |
|
|
|
this.$alert(data.msg, '错误', { |
|
|
|
confirmButtonText: '确定' |
|
|
|
}) |
|
|
|
} |
|
|
|
}) |
|
|
|
} else { |
|
|
|
this.$alert(data.msg, '错误', { |
|
|
|
confirmButtonText: '确定' |
|
|
|
}) |
|
|
|
} |
|
|
|
}) |
|
|
|
}).catch(() => { |
|
|
|
}) |
|
|
|
} else { |
|
|
|
saveQuotationResult(this.enterResultData).then(({data}) => { |
|
|
|
if (data && data.code === 0) { |
|
|
|
this.getQuotationResult() |
|
|
|
this.enterResultModalFlag = false |
|
|
|
this.$message({ |
|
|
|
message: '操作成功', |
|
|
|
type: 'success', |
|
|
|
duration: 1500, |
|
|
|
onClose: () => { |
|
|
|
} |
|
|
|
}) |
|
|
|
} else { |
|
|
|
this.$alert(data.msg, '错误', { |
|
|
|
confirmButtonText: '确定' |
|
|
|
}) |
|
|
|
} |
|
|
|
}) |
|
|
|
} |
|
|
|
}, |
|
|
|
/** |
|
|
|
* 提交客户报价 |
|
|
|
|