Browse Source

2023-09-26 plm报价提交

master
杨奉源 2 years ago
parent
commit
f2f11d716b
  1. 107
      src/views/modules/quotation/requestForQuote.vue

107
src/views/modules/quotation/requestForQuote.vue

@ -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: '确定'
})
}
})
}
},
/**
* 提交客户报价

Loading…
Cancel
Save