|
|
|
@ -3,12 +3,14 @@ import DictDataSelect from "../sys/dict-data-select.vue"; |
|
|
|
import {queryQuotationInformationByPage} from "@/api/quote/quotationInformation"; |
|
|
|
import {batchSaveQuote} from "@/api/quote/quote"; |
|
|
|
import {getSiteAndBuByUserName} from "../../../api/qc/qc"; |
|
|
|
import {searchInquiryDetailHeaderInfo} from "../../../api/inquiry/inquiryDetail"; |
|
|
|
import {searchInquiryDetailHeaderInfo, searchInquiryDetailInfo} from "../../../api/inquiry/inquiryDetail"; |
|
|
|
import {getTableDefaultListLanguage, getTableUserListLanguage, updateColumnSize} from "../../../api/table"; |
|
|
|
import OssComponents from "../oss/ossComponents.vue"; |
|
|
|
import {searchInquiryApplicationInfo} from "../../../api/inquiry/inquiryApplication"; |
|
|
|
|
|
|
|
export default { |
|
|
|
name: "quotes", |
|
|
|
components: {DictDataSelect}, |
|
|
|
components: {OssComponents, DictDataSelect}, |
|
|
|
props:{ |
|
|
|
isComponent:{ |
|
|
|
type: Boolean, |
|
|
|
@ -25,6 +27,8 @@ export default { |
|
|
|
pageSize: 50, |
|
|
|
totalPage: 0, |
|
|
|
userBuList:[], |
|
|
|
// 初始页签 |
|
|
|
activeTable: 'inquiryPart', |
|
|
|
queryForm: { |
|
|
|
site: this.$store.state.user.site, |
|
|
|
customerNo: '', |
|
|
|
@ -47,8 +51,9 @@ export default { |
|
|
|
menuId: this.$route.meta.menuId, |
|
|
|
}, |
|
|
|
dataList:[], |
|
|
|
inquiryPartDataList:[], |
|
|
|
queryLoading:false, |
|
|
|
selectionList:[], |
|
|
|
dataListLoading:false, |
|
|
|
columns:[ |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
@ -215,31 +220,49 @@ export default { |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 5012, |
|
|
|
serialNumber: '5012Table2PartNo', |
|
|
|
tableId: '5012Table2', |
|
|
|
tableName: '询价产品表', |
|
|
|
columnProp: 'partNo', |
|
|
|
serialNumber: '5012Table1Status', |
|
|
|
tableId: '5012Table1', |
|
|
|
tableName: '询价信息表', |
|
|
|
columnProp: 'status', |
|
|
|
headerAlign: 'center', |
|
|
|
align: 'center', |
|
|
|
columnLabel: '产品编码', |
|
|
|
columnLabel: '状态', |
|
|
|
columnHidden: false, |
|
|
|
columnImage: false, |
|
|
|
columnSortable: false, |
|
|
|
sortLv: 0, |
|
|
|
status: true, |
|
|
|
fixed: '', |
|
|
|
columnWidth: 120 |
|
|
|
columnWidth: 100 |
|
|
|
}, |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 5012, |
|
|
|
serialNumber: '5012Table2PartDesc', |
|
|
|
tableId: '5012Table2', |
|
|
|
serialNumber: '5012Table1PriorityLevel', |
|
|
|
tableId: '5012Table1', |
|
|
|
tableName: '询价信息表', |
|
|
|
columnProp: 'priorityLevel', |
|
|
|
headerAlign: 'center', |
|
|
|
align: 'center', |
|
|
|
columnLabel: '优先等级', |
|
|
|
columnHidden: false, |
|
|
|
columnImage: false, |
|
|
|
columnSortable: false, |
|
|
|
sortLv: 0, |
|
|
|
status: true, |
|
|
|
fixed: '', |
|
|
|
columnWidth: 80 |
|
|
|
}, |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 5012, |
|
|
|
serialNumber: '5012Table1Remark', |
|
|
|
tableId: '5012Table1', |
|
|
|
tableName: '询价产品表', |
|
|
|
columnProp: 'partDesc', |
|
|
|
columnProp: 'remark', |
|
|
|
headerAlign: 'center', |
|
|
|
align: 'center', |
|
|
|
columnLabel: '产品描述', |
|
|
|
columnLabel: '备注', |
|
|
|
columnHidden: false, |
|
|
|
columnImage: false, |
|
|
|
columnSortable: false, |
|
|
|
@ -251,31 +274,105 @@ export default { |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 5012, |
|
|
|
serialNumber: '5012Table1Status', |
|
|
|
serialNumber: '5012Table1CreateDate', |
|
|
|
tableId: '5012Table1', |
|
|
|
tableName: '询价信息表', |
|
|
|
columnProp: 'status', |
|
|
|
columnProp: 'createDate', |
|
|
|
headerAlign: 'center', |
|
|
|
align: 'center', |
|
|
|
columnLabel: '状态', |
|
|
|
columnLabel: '创建时间', |
|
|
|
columnHidden: false, |
|
|
|
columnImage: false, |
|
|
|
columnSortable: false, |
|
|
|
sortLv: 0, |
|
|
|
status: true, |
|
|
|
fixed: '', |
|
|
|
columnWidth: 100 |
|
|
|
columnWidth: 160 |
|
|
|
}, |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 5012, |
|
|
|
serialNumber: '5012Table1CreateBy', |
|
|
|
tableId: '5012Table1', |
|
|
|
tableName: '询价信息表', |
|
|
|
columnProp: 'createBy', |
|
|
|
headerAlign: 'center', |
|
|
|
align: 'left', |
|
|
|
columnLabel: '创建人', |
|
|
|
columnHidden: false, |
|
|
|
columnImage: false, |
|
|
|
columnSortable: false, |
|
|
|
sortLv: 0, |
|
|
|
status: true, |
|
|
|
fixed: '', |
|
|
|
columnWidth: 80 |
|
|
|
}, |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 5012, |
|
|
|
serialNumber: '5012Table2InquiryQty', |
|
|
|
tableId: '5012Table2', |
|
|
|
serialNumber: '5012Table1UpdateDate', |
|
|
|
tableId: '5012Table1', |
|
|
|
tableName: '询价信息表', |
|
|
|
columnProp: 'updateDate', |
|
|
|
headerAlign: 'center', |
|
|
|
align: 'center', |
|
|
|
columnLabel: '更新时间', |
|
|
|
columnHidden: false, |
|
|
|
columnImage: false, |
|
|
|
columnSortable: false, |
|
|
|
sortLv: 0, |
|
|
|
status: true, |
|
|
|
fixed: '', |
|
|
|
columnWidth: 160 |
|
|
|
}, |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 5012, |
|
|
|
serialNumber: '5012Table1UpdateBy', |
|
|
|
tableId: '5012Table1', |
|
|
|
tableName: '询价信息表', |
|
|
|
columnProp: 'updateBy', |
|
|
|
headerAlign: 'center', |
|
|
|
align: 'left', |
|
|
|
columnLabel: '更新人', |
|
|
|
columnHidden: false, |
|
|
|
columnImage: false, |
|
|
|
columnSortable: false, |
|
|
|
sortLv: 0, |
|
|
|
status: true, |
|
|
|
fixed: '', |
|
|
|
columnWidth: 80 |
|
|
|
} |
|
|
|
], |
|
|
|
inquiryPartColumnList: [ |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 5022, |
|
|
|
serialNumber: '5022Table2BuDesc', |
|
|
|
tableId: '5022Table2', |
|
|
|
tableName: '询价产品表', |
|
|
|
columnProp: 'inquiryQty', |
|
|
|
columnProp: 'buDesc', |
|
|
|
headerAlign: 'center', |
|
|
|
align: 'center', |
|
|
|
columnLabel: '询价数量', |
|
|
|
columnLabel: 'BU', |
|
|
|
columnHidden: false, |
|
|
|
columnImage: false, |
|
|
|
columnSortable: false, |
|
|
|
sortLv: 0, |
|
|
|
status: true, |
|
|
|
fixed: '', |
|
|
|
columnWidth: 80 |
|
|
|
}, |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 5022, |
|
|
|
serialNumber: '5022Table2PartNo', |
|
|
|
tableId: '5022Table2', |
|
|
|
tableName: '询价产品表', |
|
|
|
columnProp: 'partNo', |
|
|
|
headerAlign: 'center', |
|
|
|
align: 'center', |
|
|
|
columnLabel: '产品编码', |
|
|
|
columnHidden: false, |
|
|
|
columnImage: false, |
|
|
|
columnSortable: false, |
|
|
|
@ -286,9 +383,45 @@ export default { |
|
|
|
}, |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 5012, |
|
|
|
serialNumber: '5012Table2Unit', |
|
|
|
tableId: '5012Table2', |
|
|
|
functionId: 5022, |
|
|
|
serialNumber: '5022Table2TestPartDesc', |
|
|
|
tableId: '5022Table2', |
|
|
|
tableName: '询价产品表', |
|
|
|
columnProp: 'testPartDesc', |
|
|
|
headerAlign: 'center', |
|
|
|
align: 'left', |
|
|
|
columnLabel: '产品描述', |
|
|
|
columnHidden: false, |
|
|
|
columnImage: false, |
|
|
|
columnSortable: false, |
|
|
|
sortLv: 0, |
|
|
|
status: true, |
|
|
|
fixed: '', |
|
|
|
columnWidth: 150 |
|
|
|
}, |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 5022, |
|
|
|
serialNumber: '5022Table2InquiryQty', |
|
|
|
tableId: '5022Table2', |
|
|
|
tableName: '询价产品表', |
|
|
|
columnProp: 'inquiryQty', |
|
|
|
headerAlign: 'center', |
|
|
|
align: 'right', |
|
|
|
columnLabel: '询价数量', |
|
|
|
columnHidden: false, |
|
|
|
columnImage: false, |
|
|
|
columnSortable: false, |
|
|
|
sortLv: 0, |
|
|
|
status: true, |
|
|
|
fixed: '', |
|
|
|
columnWidth: 100 |
|
|
|
}, |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 5022, |
|
|
|
serialNumber: '5022Table2Unit', |
|
|
|
tableId: '5022Table2', |
|
|
|
tableName: '询价产品表', |
|
|
|
columnProp: 'umName', |
|
|
|
headerAlign: 'center', |
|
|
|
@ -304,9 +437,9 @@ export default { |
|
|
|
}, |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 5012, |
|
|
|
serialNumber: '5012Table2CodeNo', |
|
|
|
tableId: '5012Table2', |
|
|
|
functionId: 5022, |
|
|
|
serialNumber: '5022Table2CodeNo', |
|
|
|
tableId: '5022Table2', |
|
|
|
tableName: '询价产品表', |
|
|
|
columnProp: 'codeNo', |
|
|
|
headerAlign: 'center', |
|
|
|
@ -318,35 +451,35 @@ export default { |
|
|
|
sortLv: 0, |
|
|
|
status: true, |
|
|
|
fixed: '', |
|
|
|
columnWidth: 120 |
|
|
|
columnWidth: 100 |
|
|
|
}, |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 5012, |
|
|
|
serialNumber: '5012Table1PriorityLevel', |
|
|
|
tableId: '5012Table1', |
|
|
|
tableName: '询价信息表', |
|
|
|
columnProp: 'priorityLevel', |
|
|
|
functionId: 5022, |
|
|
|
serialNumber: '5022Table2PartBomStatus', |
|
|
|
tableId: '5022Table2', |
|
|
|
tableName: '询价产品表', |
|
|
|
columnProp: 'partBomStatus', |
|
|
|
headerAlign: 'center', |
|
|
|
align: 'center', |
|
|
|
columnLabel: '优先等级', |
|
|
|
columnLabel: '状态', |
|
|
|
columnHidden: false, |
|
|
|
columnImage: false, |
|
|
|
columnSortable: false, |
|
|
|
sortLv: 0, |
|
|
|
status: true, |
|
|
|
fixed: '', |
|
|
|
columnWidth: 80 |
|
|
|
columnWidth: 100 |
|
|
|
}, |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 5012, |
|
|
|
serialNumber: '5012Table2Remark', |
|
|
|
tableId: '5012Table2', |
|
|
|
functionId: 5022, |
|
|
|
serialNumber: '5022Table2Remark', |
|
|
|
tableId: '5022Table2', |
|
|
|
tableName: '询价产品表', |
|
|
|
columnProp: 'remark', |
|
|
|
headerAlign: 'center', |
|
|
|
align: 'center', |
|
|
|
align: 'left', |
|
|
|
columnLabel: '备注', |
|
|
|
columnHidden: false, |
|
|
|
columnImage: false, |
|
|
|
@ -354,14 +487,14 @@ export default { |
|
|
|
sortLv: 0, |
|
|
|
status: true, |
|
|
|
fixed: '', |
|
|
|
columnWidth: 120 |
|
|
|
columnWidth: 160 |
|
|
|
}, |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 5012, |
|
|
|
serialNumber: '5012Table1CreateDate', |
|
|
|
tableId: '5012Table1', |
|
|
|
tableName: '询价信息表', |
|
|
|
functionId: 5022, |
|
|
|
serialNumber: '5022Table2CreateDate', |
|
|
|
tableId: '5022Table2', |
|
|
|
tableName: '询价产品表', |
|
|
|
columnProp: 'createDate', |
|
|
|
headerAlign: 'center', |
|
|
|
align: 'center', |
|
|
|
@ -376,13 +509,13 @@ export default { |
|
|
|
}, |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 5012, |
|
|
|
serialNumber: '5012Table1CreateBy', |
|
|
|
tableId: '5012Table1', |
|
|
|
tableName: '询价信息表', |
|
|
|
functionId: 5022, |
|
|
|
serialNumber: '5022Table2CreateBy', |
|
|
|
tableId: '5022Table2', |
|
|
|
tableName: '询价产品表', |
|
|
|
columnProp: 'createBy', |
|
|
|
headerAlign: 'center', |
|
|
|
align: 'center', |
|
|
|
align: 'left', |
|
|
|
columnLabel: '创建人', |
|
|
|
columnHidden: false, |
|
|
|
columnImage: false, |
|
|
|
@ -394,10 +527,10 @@ export default { |
|
|
|
}, |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 5012, |
|
|
|
serialNumber: '5012Table1UpdateDate', |
|
|
|
tableId: '5012Table1', |
|
|
|
tableName: '询价信息表', |
|
|
|
functionId: 5022, |
|
|
|
serialNumber: '5022Table2UpdateDate', |
|
|
|
tableId: '5022Table2', |
|
|
|
tableName: '询价产品表', |
|
|
|
columnProp: 'updateDate', |
|
|
|
headerAlign: 'center', |
|
|
|
align: 'center', |
|
|
|
@ -412,13 +545,13 @@ export default { |
|
|
|
}, |
|
|
|
{ |
|
|
|
userId: this.$store.state.user.name, |
|
|
|
functionId: 5012, |
|
|
|
serialNumber: '5012Table1UpdateBy', |
|
|
|
tableId: '5012Table1', |
|
|
|
tableName: '询价信息表', |
|
|
|
functionId: 5022, |
|
|
|
serialNumber: '5022Table2UpdateBy', |
|
|
|
tableId: '5022Table2', |
|
|
|
tableName: '询价产品表', |
|
|
|
columnProp: 'updateBy', |
|
|
|
headerAlign: 'center', |
|
|
|
align: 'center', |
|
|
|
align: 'left', |
|
|
|
columnLabel: '更新人', |
|
|
|
columnHidden: false, |
|
|
|
columnImage: false, |
|
|
|
@ -430,6 +563,8 @@ export default { |
|
|
|
} |
|
|
|
], |
|
|
|
quoteLoading:false, |
|
|
|
// ======== 选中的当前行数据 ======== |
|
|
|
inquiryCurrentRow: {}, |
|
|
|
} |
|
|
|
}, |
|
|
|
methods:{ |
|
|
|
@ -497,12 +632,19 @@ export default { |
|
|
|
this.queryForm.page = this.pageIndex |
|
|
|
this.queryForm.status = 'B' |
|
|
|
this.queryLoading = true |
|
|
|
searchInquiryDetailHeaderInfo(this.queryForm).then(({data})=>{ |
|
|
|
searchInquiryApplicationInfo(this.queryForm).then(({data})=>{ |
|
|
|
if (data && data.code === 0){ |
|
|
|
this.dataList = data.page.list |
|
|
|
this.pageIndex = data.page.currPage |
|
|
|
this.pageSize = data.page.pageSize |
|
|
|
this.totalPage = data.page.totalCount |
|
|
|
//判断是否全部存在数据 |
|
|
|
if (this.totalPage > 0) { |
|
|
|
//设置选中行 |
|
|
|
this.$refs.mainTable.setCurrentRow(this.dataList[0]) |
|
|
|
this.refreshCurrentTabTable() //加载当前的页签的table |
|
|
|
this.inquiryClickRow(this.dataList[0]) |
|
|
|
} |
|
|
|
}else { |
|
|
|
this.$message.warning(data.msg); |
|
|
|
} |
|
|
|
@ -521,18 +663,13 @@ export default { |
|
|
|
this.pageIndex = val |
|
|
|
this.handleQuery(); |
|
|
|
}, |
|
|
|
handleSelectionChange(val) { |
|
|
|
this.selectionList = val; |
|
|
|
}, |
|
|
|
handleQuote(){ |
|
|
|
if (this.selectionList.length === 0){ |
|
|
|
this.$message.warning("请选择需要报价的单据"); |
|
|
|
return; |
|
|
|
handleQuote(row){ |
|
|
|
let params = { |
|
|
|
inquiryPartDataList: this.inquiryPartDataList, |
|
|
|
createBy: this.$store.state.user.name, |
|
|
|
rfqId: row.id, |
|
|
|
...row |
|
|
|
} |
|
|
|
let params = this.selectionList.map((item)=>{ |
|
|
|
item.createBy = this.$store.state.user.name |
|
|
|
return item |
|
|
|
}) |
|
|
|
this.quoteLoading = true |
|
|
|
batchSaveQuote(params).then(({data})=>{ |
|
|
|
this.quoteLoading = false |
|
|
|
@ -555,7 +692,74 @@ export default { |
|
|
|
}, |
|
|
|
handleDblClick(row){ |
|
|
|
this.$emit('dblclick',row) |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
// ======== 页签切换相关方法 ======== |
|
|
|
/** |
|
|
|
* 列表表格选择替换 |
|
|
|
* @param tab |
|
|
|
* @param event |
|
|
|
*/ |
|
|
|
tabClick(tab, event) { |
|
|
|
// 刷新列表数据 |
|
|
|
this.refreshCurrentTabTable() |
|
|
|
}, |
|
|
|
|
|
|
|
// ======== 列表操作方法 ======== |
|
|
|
/** |
|
|
|
* 单机选中询价信息 |
|
|
|
* @param row |
|
|
|
*/ |
|
|
|
inquiryClickRow(row) { |
|
|
|
this.inquiryCurrentRow = JSON.parse(JSON.stringify(row)) |
|
|
|
}, |
|
|
|
/** |
|
|
|
* 当前值发生变化的时候修改 |
|
|
|
* @param row |
|
|
|
* @param oldRow |
|
|
|
*/ |
|
|
|
changeCurrentRow(row, oldRow) { |
|
|
|
// 判断是否是获取焦点的事件 |
|
|
|
if (row) { |
|
|
|
this.inquiryCurrentRow = JSON.parse(JSON.stringify(row)) |
|
|
|
//刷新当前页表 |
|
|
|
this.refreshCurrentTabTable() |
|
|
|
} |
|
|
|
}, |
|
|
|
/** |
|
|
|
* 刷新页签的table数据 |
|
|
|
*/ |
|
|
|
refreshCurrentTabTable() { |
|
|
|
if (this.activeTable === 'inquiryPart') { |
|
|
|
this.searchInquiryDetailInfo() |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
// ======== 询价产品相关方法 ======== |
|
|
|
searchInquiryDetailInfo() { |
|
|
|
let tempData = { |
|
|
|
rfqId: this.inquiryCurrentRow.id, |
|
|
|
buNo: this.inquiryCurrentRow.buNo, |
|
|
|
page: this.pageIndex, |
|
|
|
limit: this.pageSize |
|
|
|
} |
|
|
|
searchInquiryDetailInfo(tempData).then(({data}) => { |
|
|
|
if (data.code === 0) { |
|
|
|
this.inquiryPartDataList = data.page |
|
|
|
//判断是否全部存在数据 |
|
|
|
if (this.inquiryPartDataList != null && this.inquiryPartDataList.length > 0) { |
|
|
|
//设置选中行 |
|
|
|
this.$refs.secondaryTable.setCurrentRow(this.inquiryPartDataList[0]) |
|
|
|
} |
|
|
|
} |
|
|
|
}) |
|
|
|
}, |
|
|
|
|
|
|
|
rowStyle({row}) { |
|
|
|
if (this.inquiryCurrentRow.id === row.id) { |
|
|
|
return {'background-color': '#E8F7F6', cursor: 'pointer'}; |
|
|
|
} |
|
|
|
}, |
|
|
|
}, |
|
|
|
created() { |
|
|
|
this.handleQuery(); |
|
|
|
@ -663,12 +867,9 @@ export default { |
|
|
|
<el-form-item label="询价单号"> |
|
|
|
<el-input v-model="queryForm.rfqNo" clearable style="width: 120px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="客户编码"> |
|
|
|
<span style="cursor: pointer" slot="label" @click="getBaseList(509,2)"><a herf="#">客户编码</a></span> |
|
|
|
<el-input v-model="queryForm.customerNo" clearable style="width: 120px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item :label="'客户名称'"> |
|
|
|
<el-input v-model="queryForm.customerDesc" clearable style="width: 120px"></el-input> |
|
|
|
<el-form-item :label="'PjM'"> |
|
|
|
<span style="cursor: pointer" slot="label" @click="getBaseList(2004,1)"><a herf="#">PjM</a></span> |
|
|
|
<el-input v-model="queryForm.requesterName" clearable style="width: 120px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item :label="'询价日期'"> |
|
|
|
<el-date-picker |
|
|
|
@ -697,16 +898,12 @@ export default { |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-form :inline="true" label-position="top" :model="queryForm" @keyup.enter.native="handleQuery()"> |
|
|
|
<el-form-item label="产品编码"> |
|
|
|
<span style="cursor: pointer" slot="label" @click="getBaseList(2005)"><a herf="#">产品编码</a></span> |
|
|
|
<el-input v-model="queryForm.partNo" clearable style="width: 120px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item :label="'产品名称'"> |
|
|
|
<el-input v-model="queryForm.partDesc" clearable style="width: 120px"></el-input> |
|
|
|
<el-form-item label="客户编码"> |
|
|
|
<span style="cursor: pointer" slot="label" @click="getBaseList(509,2)"><a herf="#">客户编码</a></span> |
|
|
|
<el-input v-model="queryForm.customerNo" clearable style="width: 120px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item :label="'PjM'"> |
|
|
|
<span style="cursor: pointer" slot="label" @click="getBaseList(2004,1)"><a herf="#">PjM</a></span> |
|
|
|
<el-input v-model="queryForm.requesterName" clearable style="width: 120px"></el-input> |
|
|
|
<el-form-item :label="'客户名称'"> |
|
|
|
<el-input v-model="queryForm.customerDesc" clearable style="width: 120px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item :label="'报价专员'"> |
|
|
|
<span style="cursor: pointer" slot="label" @click="getBaseList(2002,1)"><a herf="#">报价专员</a></span> |
|
|
|
@ -735,7 +932,6 @@ export default { |
|
|
|
</el-form-item> |
|
|
|
<el-form-item :label="' '"> |
|
|
|
<el-button @click="handleQuery()">查询</el-button> |
|
|
|
<el-button type="primary" :loading="quoteLoading" @click="handleQuote" v-if="!isComponent">报价</el-button> |
|
|
|
<!-- <el-button type="primary" icon="el-icon-upload" @click="handleImportQuotation()">导入</el-button>--> |
|
|
|
<!-- <download-excel--> |
|
|
|
<!-- :fields="fields()"--> |
|
|
|
@ -753,8 +949,11 @@ export default { |
|
|
|
<!-- </download-excel>--> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<el-table :data="dataList" border v-loading="queryLoading" :height="height" @selection-change="handleSelectionChange" @row-dblclick="handleDblClick"> |
|
|
|
<el-table-column type="selection" width="55" fixed="left" align="center" v-if="!isComponent"></el-table-column> |
|
|
|
<el-table :data="dataList" border v-loading="queryLoading" height="37vh" |
|
|
|
@row-dblclick="handleDblClick" :row-style="rowStyle" |
|
|
|
ref="mainTable" |
|
|
|
@row-click="inquiryClickRow" |
|
|
|
@current-change="changeCurrentRow"> |
|
|
|
<el-table-column |
|
|
|
v-for="(item,index) in columns" :key="index" |
|
|
|
:sortable="item.columnSortable" |
|
|
|
@ -774,7 +973,7 @@ export default { |
|
|
|
<div v-else-if="item.columnProp === 'status'"> |
|
|
|
<span v-if="!item.columnHidden"> |
|
|
|
<span v-if="scope.row.status === 'C'">草稿</span> |
|
|
|
<span v-if="scope.row.status === 'B'">已下达</span> |
|
|
|
<span v-if="scope.row.status === 'B'">下达</span> |
|
|
|
<span v-if="scope.row.status === 'A'">已报价</span> |
|
|
|
</span> |
|
|
|
<span v-if="item.columnImage"><img :src="scope.row[item.columnProp]" |
|
|
|
@ -782,15 +981,26 @@ export default { |
|
|
|
</div> |
|
|
|
<div v-else-if="item.columnProp === 'priorityLevel'"> |
|
|
|
<span v-if="!item.columnHidden"> |
|
|
|
<span v-if="scope.row.priorityLevel === ' A'">重要客户</span> |
|
|
|
<span v-if="scope.row.priorityLevel === ' B'">潜力客户</span> |
|
|
|
<span v-if="scope.row.priorityLevel === ' C'">一般客户</span> |
|
|
|
<span v-if="scope.row.priorityLevel === 'A'">普通</span> |
|
|
|
<span v-if="scope.row.priorityLevel === ' B'">重要</span> |
|
|
|
<span v-if="scope.row.priorityLevel === ' C'">紧急</span> |
|
|
|
</span> |
|
|
|
<span v-if="item.columnImage"><img :src="scope.row[item.columnProp]" |
|
|
|
style="width: 100px; height: 80px"/></span> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
v-if="!isComponent" |
|
|
|
fixed="right" |
|
|
|
header-align="center" |
|
|
|
align="center" |
|
|
|
width="80" |
|
|
|
label="操作"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<el-link style="cursor: pointer" @click="handleQuote(scope.row)">转报价</el-link> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
</el-table> |
|
|
|
<el-pagination @size-change="handleSizeChange" |
|
|
|
@current-change="handlePageChange" |
|
|
|
@ -800,8 +1010,49 @@ export default { |
|
|
|
:total="totalPage" |
|
|
|
layout="total,sizes, prev, pager, next, jumper"> |
|
|
|
</el-pagination> |
|
|
|
|
|
|
|
<!-- 页签 --> |
|
|
|
<el-tabs style="margin-top: 0px; width: 100%; height: 40vh;" v-model="activeTable" class="customer-tab" type="border-card" @tab-click="tabClick"> |
|
|
|
<!-- 询价详细信息页签 --> |
|
|
|
<el-tab-pane label="产品明细" name="inquiryPart"> |
|
|
|
<!-- 询价产品明细列表 --> |
|
|
|
<el-table |
|
|
|
@header-dragend="handleColumnResize" |
|
|
|
height="37vh" |
|
|
|
:data="inquiryPartDataList" |
|
|
|
border |
|
|
|
ref="secondaryTable" |
|
|
|
v-loading="dataListLoading" |
|
|
|
style="width: 100%;margin-top: 5px"> |
|
|
|
<el-table-column |
|
|
|
v-for="(item,index) in inquiryPartColumnList" :key="index" |
|
|
|
:sortable="item.columnSortable" |
|
|
|
:prop="item.columnProp" |
|
|
|
:header-align="item.headerAlign" |
|
|
|
:align="item.align" |
|
|
|
:fixed="item.fixed === ''?false:item.fixed" |
|
|
|
:min-width="item.columnWidth" |
|
|
|
:label="item.columnLabel"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<span v-if="!item.columnHidden">{{ scope.row[item.columnProp] }}</span> |
|
|
|
<span v-if="item.columnImage"><img :src="scope.row[item.columnProp]" |
|
|
|
style="width: 100px; height: 80px"/></span> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
</el-table> |
|
|
|
</el-tab-pane> |
|
|
|
</el-tabs> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
<style scoped> |
|
|
|
|
|
|
|
<style scoped lang="scss"> |
|
|
|
/deep/ .customer-tab .el-tabs__content { |
|
|
|
padding: 0px !important; |
|
|
|
} |
|
|
|
///deep/ .customer-tab .el-tabs__content { |
|
|
|
// |
|
|
|
//} |
|
|
|
.el-table /deep/ .cell{ |
|
|
|
height: auto; |
|
|
|
line-height: 1.5; |
|
|
|
} |
|
|
|
</style> |