Browse Source

2025.04.17 rfq以及审批优化

java8
jiayang yue 9 months ago
parent
commit
7d4e6bf53c
  1. 1
      src/views/modules/auth/authInfo.vue
  2. 8
      src/views/modules/auth/authInquiry.vue
  3. 76
      src/views/modules/auth/authQuote.vue
  4. 92
      src/views/modules/inquiry/inquiryTechnicalMaterialsNoBuilt.vue
  5. 1
      src/views/modules/part/quicklyCreateBom.vue
  6. 56
      src/views/modules/quote/detail/quoteDetail.vue

1
src/views/modules/auth/authInfo.vue

@ -80,6 +80,7 @@
<span v-if="scope.row.status === 'C'">草稿</span> <span v-if="scope.row.status === 'C'">草稿</span>
<span v-else-if="scope.row.status === 'B'">下达</span> <span v-else-if="scope.row.status === 'B'">下达</span>
<span v-else-if="scope.row.status === 'A'">已报价</span> <span v-else-if="scope.row.status === 'A'">已报价</span>
<span v-else-if="scope.row.status === 'D'">已驳回</span>
<span v-else>{{ scope.row.status }}</span> <span v-else>{{ scope.row.status }}</span>
</span> </span>
<span v-if="item.columnImage"><img :src="scope.row[item.columnProp]" <span v-if="item.columnImage"><img :src="scope.row[item.columnProp]"

8
src/views/modules/auth/authInquiry.vue

@ -135,8 +135,10 @@
<div v-else-if="item.columnProp === 'status'"> <div v-else-if="item.columnProp === 'status'">
<span v-if="!item.columnHidden"> <span v-if="!item.columnHidden">
<span v-if="scope.row.status === 'C'">草稿</span> <span v-if="scope.row.status === 'C'">草稿</span>
<span v-if="scope.row.status === 'B'">下达</span>
<span v-if="scope.row.status === 'A'">已报价</span>
<span v-else-if="scope.row.status === 'B'">下达</span>
<span v-else-if="scope.row.status === 'A'">已报价</span>
<span v-else-if="scope.row.status === 'D'">已驳回</span>
<span v-else>{{ scope.row.status }}</span>
</span> </span>
<span v-if="item.columnImage"><img :src="scope.row[item.columnProp]" <span v-if="item.columnImage"><img :src="scope.row[item.columnProp]"
style="width: 100px; height: 80px"/></span> style="width: 100px; height: 80px"/></span>
@ -1468,6 +1470,8 @@ export default {
this.modalData.actAuthorizator = row.userName this.modalData.actAuthorizator = row.userName
this.modalData.remark = row.authHistRemark this.modalData.remark = row.authHistRemark
this.modalData.actAuthorizeDate = row.strActAuthorizeDate this.modalData.actAuthorizeDate = row.strActAuthorizeDate
this.modalData.orderRef1 = row.rfqNo
this.modalData.orderRef2 = row.buNo
if (val === "Y") { if (val === "Y") {
if (row.lastStepFlag === 'Y') { if (row.lastStepFlag === 'Y') {
this.modalData.approveResult = "已审批" this.modalData.approveResult = "已审批"

76
src/views/modules/auth/authQuote.vue

@ -80,7 +80,7 @@
<!-- 询价列表 --> <!-- 询价列表 -->
<el-table <el-table
@header-dragend="handleColumnResize" @header-dragend="handleColumnResize"
height="30vh"
:height="this.height + 350"
:data="dataList" :data="dataList"
border border
ref="mainTable" ref="mainTable"
@ -110,6 +110,7 @@
width="180" width="180"
label="操作"> label="操作">
<template slot-scope="scope"> <template slot-scope="scope">
<el-link style="cursor: pointer" @click="quoteRuleDetailModalFlag = true">详情</el-link>
<el-link style="cursor: pointer" @click="updateModal(scope.row)">审批</el-link> <el-link style="cursor: pointer" @click="updateModal(scope.row)">审批</el-link>
</template> </template>
</el-table-column> </el-table-column>
@ -126,8 +127,9 @@
layout="total, sizes, prev, pager, next, jumper"> layout="total, sizes, prev, pager, next, jumper">
</el-pagination> </el-pagination>
<el-tabs style="margin-top: 0px; width: 100%; height: 100%;" v-model="activeName" class="customer-tab" type="border-card" @tab-click="tabClick">
<el-tab-pane label="报价信息" name="quotationInformation">
<el-dialog title="报价信息" v-drag @close="closeQuoteRuleDetailDataDialog"
:close-on-click-modal="false" style="margin-top: -20px" :visible.sync="quoteRuleDetailModalFlag"
width="1480px">
<el-form :inline="true" label-width="120px" label-position="top"> <el-form :inline="true" label-width="120px" label-position="top">
<el-form-item label="Application"> <el-form-item label="Application">
<el-input v-model="quoteCurrentRow.application" style="width: 210px" readonly></el-input> <el-input v-model="quoteCurrentRow.application" style="width: 210px" readonly></el-input>
@ -151,8 +153,38 @@
</el-form-item> </el-form-item>
</el-form> </el-form>
<quote-detail :quote="quoteCurrentRow" :auth-flag="true" :height="'33vh'"></quote-detail> <quote-detail :quote="quoteCurrentRow" :auth-flag="true" :height="'33vh'"></quote-detail>
</el-tab-pane>
</el-tabs>
<footer style="height:30px;margin-top: 5px;margin-left:-35px;text-align:center">
<el-button @click="closeQuoteRuleDetailDataDialog">{{'关闭'}}</el-button>
</footer>
</el-dialog>
<!-- <el-tabs style="margin-top: 0px; width: 100%; height: 100%;" v-model="activeName" class="customer-tab" type="border-card" @tab-click="tabClick">-->
<!-- <el-tab-pane label="报价信息" name="quotationInformation">-->
<!-- <el-form :inline="true" label-width="120px" label-position="top">-->
<!-- <el-form-item label="Application">-->
<!-- <el-input v-model="quoteCurrentRow.application" style="width: 210px" readonly></el-input>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="Customer">-->
<!-- <el-input v-model="quoteCurrentRow.customerDesc" readonly></el-input>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="年需求量">-->
<!-- <el-input v-model="quoteCurrentRow.annualDemand" class="right-aligned-input" readonly></el-input>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="Cost Model">-->
<!-- <el-input v-model="quoteCurrentRow.costModel" style="width: 210px" readonly></el-input>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="Markup">-->
<!-- <el-input v-model="quoteCurrentRow.markup" class="right-aligned-input" readonly></el-input>-->
<!-- </el-form-item>-->
<!-- </el-form>-->
<!-- <el-form :inline="true" label-width="120px" label-position="top">-->
<!-- <el-form-item label="报价备注">-->
<!-- <el-input type="textarea" :rows="2" v-model="quoteCurrentRow.remark" style="width: 1019px" readonly></el-input>-->
<!-- </el-form-item>-->
<!-- </el-form>-->
<!-- <quote-detail :quote="quoteCurrentRow" :auth-flag="true" :height="'33vh'"></quote-detail>-->
<!-- </el-tab-pane>-->
<!-- </el-tabs>-->
<el-dialog title="申请单审核" :visible.sync="reviewFlag" width="520px" :close-on-click-modal="false" <el-dialog title="申请单审核" :visible.sync="reviewFlag" width="520px" :close-on-click-modal="false"
v-drag> v-drag>
@ -246,18 +278,15 @@ export default {
DictDataSelect, DictDataSelect,
Chooselist Chooselist
}, },
props:{
height:{
type:Number,
default:200
}
},
data() { data() {
return { return {
height: 200,
userBuList: [], userBuList: [],
copyPriceCheckDetail:{}, copyPriceCheckDetail:{},
loading:false, loading:false,
attributeDialog:true, attributeDialog:true,
quoteRuleDetailModalFlag: false,
activeName: 'quotationInformation', activeName: 'quotationInformation',
priceCheckRule: { priceCheckRule: {
associatedPartNo:[{required: true, message: ' ', trigger: 'change'},], associatedPartNo:[{required: true, message: ' ', trigger: 'change'},],
@ -729,8 +758,7 @@ export default {
}, },
mounted () { mounted () {
this.$nextTick(() => { this.$nextTick(() => {
/*第二个表格高度的动态调整*/
this.height = window.innerHeight - 210;
this.height = window.innerHeight - 558
}) })
}, },
created() { created() {
@ -794,7 +822,7 @@ export default {
*/ */
tabClick(tab, event) { tabClick(tab, event) {
// //
this.refreshCurrentTabTable()
// this.refreshCurrentTabTable()
}, },
// ======== ======== // ======== ========
@ -815,14 +843,14 @@ export default {
if (row) { if (row) {
this.quoteCurrentRow = JSON.parse(JSON.stringify(row)) this.quoteCurrentRow = JSON.parse(JSON.stringify(row))
// //
this.refreshCurrentTabTable()
// this.refreshCurrentTabTable()
} }
}, },
/** /**
* 刷新页签的table数据 * 刷新页签的table数据
*/ */
refreshCurrentTabTable() {
},
// refreshCurrentTabTable() {
// },
// ======== ======== // ======== ========
/** /**
@ -993,9 +1021,9 @@ export default {
this.modalData.orderRef1 = row.quoteVersionNo this.modalData.orderRef1 = row.quoteVersionNo
if (val === "Y") { if (val === "Y") {
if (row.lastStepFlag === 'Y') { if (row.lastStepFlag === 'Y') {
this.modalData.approveResult = "审批"
this.modalData.approveResult = "全部审批"
} else { } else {
this.modalData.approveResult = "审批"
this.modalData.approveResult = "部分审批"
} }
} else if (val === "N") { } else if (val === "N") {
this.modalData.approveResult = "未通过" this.modalData.approveResult = "未通过"
@ -1111,6 +1139,9 @@ export default {
} }
this.modalFlag = false this.modalFlag = false
}, },
closeQuoteRuleDetailDataDialog() {
this.quoteRuleDetailModalFlag = false
},
rowStyle({row}) { rowStyle({row}) {
if (this.quoteCurrentRow.id === row.id) { if (this.quoteCurrentRow.id === row.id) {
return {'background-color': '#E8F7F6', cursor: 'pointer'}; return {'background-color': '#E8F7F6', cursor: 'pointer'};
@ -1243,3 +1274,10 @@ div.table-el-date /deep/ input.el-input__inner{
} }
</style> </style>
<style lang="scss" scoped>
.el-table /deep/ .cell{
height: auto;
line-height: 1.5;
}
</style>

92
src/views/modules/inquiry/inquiryTechnicalMaterialsNoBuilt.vue

@ -320,17 +320,25 @@
</el-tabs> </el-tabs>
<el-dialog :title="inquiryPartModalData.title" v-drag @close="closeInquiryPartSaveDataDialog" <el-dialog :title="inquiryPartModalData.title" v-drag @close="closeInquiryPartSaveDataDialog"
:close-on-click-modal="false" top="10%" :visible.sync="inquiryPartModalFlag" width="422px">
:close-on-click-modal="false" top="10%" :visible.sync="inquiryPartModalFlag" width="526px">
<!-- @open="openInquiryPartSaveDataDialog"--> <!-- @open="openInquiryPartSaveDataDialog"-->
<el-form :inline="true" label-position="top" :model="inquiryPartModalData" :rules="inquiryPartRules" style="margin-top: -5px;"> <el-form :inline="true" label-position="top" :model="inquiryPartModalData" :rules="inquiryPartRules" style="margin-top: -5px;">
<!-- <el-form-item prop="partNo" label="产品编码">-->
<!-- <el-input v-model="inquiryPartModalData.partNo" disabled style="width: 128px;"></el-input>-->
<!-- </el-form-item>-->
<el-form-item prop="partDesc" label="产品名称">
<el-input v-model="inquiryPartModalData.partDesc" style="width: 128px"></el-input>
<el-form-item prop="partNo" :rules="inquiryPartRules.partNo">
<span v-if="noFlag === 'N' || !inquiryPartModalDisableFlag" style="cursor: pointer" slot="label"
@click="getBaseList(2005)"><a
herf="#">产品编码
</a></span>
<span v-else style="cursor: pointer" slot="label">产品编码</span>
<el-input v-model="inquiryPartModalData.partNo" :disabled="noFlag === 'Y' || inquiryPartModalDisableFlag" @blur="partNoBlur(2005)"
style="width: 128px"></el-input>
</el-form-item>
<el-form-item prop="partDesc" label="产品名称" style="margin-left: -10px">
<el-input v-model="inquiryPartModalData.partDesc" :disabled="noFlag === 'N' || inquiryPartModalDisableFlag"
style="width: 178px;"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="BU" prop="bu" :rules="inquiryPartRules.bu">
<el-select v-model="inquiryPartModalData.bu" placeholder="请选择" :disabled="inquiryPartModalDisableFlag" style="width: 118px">
<el-form-item label="BU" prop="bu" :rules="inquiryPartRules.bu" style="margin-left: -10px">
<el-select v-model="inquiryPartModalData.bu" placeholder="请选择" :disabled="inquiryPartModalDisableFlag"
style="width: 78px;">
<el-option <el-option
v-for = "i in userBuList" v-for = "i in userBuList"
:key = "i.buNo" :key = "i.buNo"
@ -339,8 +347,9 @@
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="询价数量" prop="inquiryQty" :rules="inquiryPartRules.inquiryQty">
<el-input-number :controls="false" :step="0" v-model="inquiryPartModalData.inquiryQty" style="width: 118px;"></el-input-number>
<el-form-item :label="' '">
<el-checkbox v-model="noFlag" true-label="Y" false-label="N" :disabled="inquiryPartModalDisableFlag">{{ '产品编码为' + ' ' + '*'
}}</el-checkbox><br>
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-form :inline="true" label-position="top" :model="inquiryPartModalData" :rules="inquiryPartRules" style="margin-top: -5px;"> <el-form :inline="true" label-position="top" :model="inquiryPartModalData" :rules="inquiryPartRules" style="margin-top: -5px;">
@ -349,6 +358,10 @@
<el-input v-model="inquiryPartModalData.umId" @blur="umIdBlur(510)" style="width: 128px"></el-input> <el-input v-model="inquiryPartModalData.umId" @blur="umIdBlur(510)" style="width: 128px"></el-input>
<el-input v-model="inquiryPartModalData.umName" disabled style="width: 260px"></el-input> <el-input v-model="inquiryPartModalData.umName" disabled style="width: 260px"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="询价数量" prop="inquiryQty" :rules="inquiryPartRules.inquiryQty">
<el-input-number :controls="false" :step="0" v-model="inquiryPartModalData.inquiryQty"
style="width: 90px;"></el-input-number>
</el-form-item>
</el-form> </el-form>
<el-form :inline="true" label-position="top" :model="inquiryPartModalData" :rules="inquiryPartRules" style="margin-top: -5px;"> <el-form :inline="true" label-position="top" :model="inquiryPartModalData" :rules="inquiryPartRules" style="margin-top: -5px;">
<el-form-item prop="codeNo" :rules="rules.codeNo"> <el-form-item prop="codeNo" :rules="rules.codeNo">
@ -509,6 +522,15 @@ export default {
} }
}, },
watch: { watch: {
noFlag: {
handler: function (newV, oldV) {
if (this.noFlag === 'Y') {
this.inquiryPartModalData.partNo = '*'
} else {
this.inquiryPartModalData.partNo = ''
}
}
},
searchData: { searchData: {
deep: true, deep: true,
handler: function (newV, oldV) { handler: function (newV, oldV) {
@ -544,6 +566,7 @@ export default {
copyPriceCheckDetail:{}, copyPriceCheckDetail:{},
loading:false, loading:false,
attributeDialog:true, attributeDialog:true,
noFlag:'Y',
priceCheckRule: { priceCheckRule: {
associatedPartNo:[{required: true, message: ' ', trigger: 'change'},], associatedPartNo:[{required: true, message: ' ', trigger: 'change'},],
materialRequired:[{required: true, message: ' ', trigger: 'change'},], materialRequired:[{required: true, message: ' ', trigger: 'change'},],
@ -2139,6 +2162,10 @@ export default {
conSql = " and b.site = '" + this.$store.state.user.site + "'" conSql = " and b.site = '" + this.$store.state.user.site + "'"
} }
} }
if (val === 2005) {
strVal = this.inquiryPartModalData.partNo ? this.inquiryPartModalData.partNo : ''
conSql = " and a.site = '" + this.$store.state.user.site + "'"
}
this.$refs.baseList.init(val, strVal, conSql) this.$refs.baseList.init(val, strVal, conSql)
}) })
}, },
@ -2190,6 +2217,10 @@ export default {
this.modalData.requesterName = val.user_display this.modalData.requesterName = val.user_display
} }
} }
if (this.tagNo === 2005) {
this.inquiryPartModalData.partNo = val.part_no
this.inquiryPartModalData.partDesc = val.part_desc
}
}, },
// ======== ======== // ======== ========
@ -2223,7 +2254,7 @@ export default {
buNo: this.inquiryCurrentRow.buNo, buNo: this.inquiryCurrentRow.buNo,
buDesc: this.inquiryCurrentRow.buDesc, buDesc: this.inquiryCurrentRow.buDesc,
rfqId: this.inquiryCurrentRow.id, rfqId: this.inquiryCurrentRow.id,
partNo: '',
partNo: '*',
partDesc: '', partDesc: '',
inquiryQty: '', inquiryQty: '',
umId: '', umId: '',
@ -2240,6 +2271,13 @@ export default {
async saveInquiryPartData() { async saveInquiryPartData() {
await this.modelBlur(220) await this.modelBlur(220)
await this.umIdBlur(510) await this.umIdBlur(510)
if (this.noFlag === 'N'){
await this.partNoBlur(2005)
}
if (this.inquiryPartModalData.partNo === '' || this.inquiryPartModalData.partNo == null) {
this.$message.warning('请输入产品编码!')
return
}
if (this.inquiryPartModalData.partDesc === '' || this.inquiryPartModalData.partDesc == null) { if (this.inquiryPartModalData.partDesc === '' || this.inquiryPartModalData.partDesc == null) {
this.$message.warning('请输入产品描述!') this.$message.warning('请输入产品描述!')
return return
@ -2522,6 +2560,37 @@ export default {
} }
}, },
async partNoBlur(tagNo) {
if (this.inquiryPartModalData.partNo != null && this.inquiryPartModalData.partNo !== '') {
let tempData = {
tagno: tagNo,
conditionSql: " and a.part_no = '" + this.inquiryPartModalData.partNo + "'" +
" and a.site = '" + this.inquiryPartModalData.bu.split('_')[0] + "'"
};
// Promise
return verifyData(tempData).then(({ data }) => {
if (data && data.code === 0) {
if (data.baseListData.length > 0) {
this.inquiryPartModalData.partDesc = data.baseListData[0].part_desc;
} else {
this.inquiryPartModalData.partDesc = '';
}
} else {
this.$message.warning(data.msg);
this.inquiryPartModalData.partDesc = '';
}
}).catch(error => {
console.error(error);
this.$message.error('校验失败,请重试');
this.inquiryPartModalData.partDesc = '';
});
} else {
this.inquiryPartModalData.partDesc = '';
return Promise.resolve(); // umId resolved Promise
}
},
// ======== ======== // ======== ========
/** /**
* 导出excel * 导出excel
@ -2686,6 +2755,7 @@ export default {
remark: '', remark: '',
createBy: '' createBy: ''
} }
this.noFlag = 'Y'
this.inquiryPartModalFlag = false this.inquiryPartModalFlag = false
}, },
rowStyle({row}) { rowStyle({row}) {

1
src/views/modules/part/quicklyCreateBom.vue

@ -357,7 +357,6 @@ export default {
}) })
}, },
activated() { activated() {
console.log(this.$route.query.data)
if (this.$route.query.data) { if (this.$route.query.data) {
this.searchData = this.$route.query.data this.searchData = this.$route.query.data
this.searchData.partDesc = this.$route.query.data.testPartDesc this.searchData.partDesc = this.$route.query.data.testPartDesc

56
src/views/modules/quote/detail/quoteDetail.vue

@ -29,10 +29,6 @@ export default {
type:Object, type:Object,
required:true required:true
}, },
height:{
type:[Number,String],
default:300
},
authFlag:{ authFlag:{
type:Boolean, type:Boolean,
default:false default:false
@ -47,6 +43,7 @@ export default {
}, },
data(){ data(){
return{ return{
height: 300,
quoteDetail:{ quoteDetail:{
id:null, id:null,
partNo:'', partNo:'',
@ -127,7 +124,7 @@ export default {
sortLv: 0, sortLv: 0,
status: true, status: true,
fixed: '', fixed: '',
columnWidth: 120
columnWidth: 90
}, },
{ {
userId: this.$store.state.user.name, userId: this.$store.state.user.name,
@ -145,7 +142,7 @@ export default {
sortLv: 0, sortLv: 0,
status: true, status: true,
fixed: '', fixed: '',
columnWidth: 320
columnWidth: 170
}, },
{ {
userId: this.$store.state.user.name, userId: this.$store.state.user.name,
@ -181,7 +178,7 @@ export default {
sortLv: 0, sortLv: 0,
status: true, status: true,
fixed: '', fixed: '',
columnWidth: 100
columnWidth: 80
}, },
{ {
userId: this.$store.state.user.name, userId: this.$store.state.user.name,
@ -199,7 +196,7 @@ export default {
sortLv: 0, sortLv: 0,
status: true, status: true,
fixed: '', fixed: '',
columnWidth: 130
columnWidth: 80
}, },
{ {
userId: this.$store.state.user.name, userId: this.$store.state.user.name,
@ -217,7 +214,7 @@ export default {
sortLv: 0, sortLv: 0,
status: true, status: true,
fixed: '', fixed: '',
columnWidth: 120
columnWidth: 80
}, },
{ {
userId: this.$store.state.user.name, userId: this.$store.state.user.name,
@ -235,7 +232,7 @@ export default {
sortLv: 0, sortLv: 0,
status: true, status: true,
fixed: '', fixed: '',
columnWidth: 120
columnWidth: 80
}, },
{ {
userId: this.$store.state.user.name, userId: this.$store.state.user.name,
@ -253,7 +250,7 @@ export default {
sortLv: 0, sortLv: 0,
status: true, status: true,
fixed: '', fixed: '',
columnWidth: 120
columnWidth: 80
} }
,{ ,{
userId: this.$store.state.user.name, userId: this.$store.state.user.name,
@ -271,7 +268,7 @@ export default {
sortLv: 0, sortLv: 0,
status: true, status: true,
fixed: '', fixed: '',
columnWidth: 140
columnWidth: 90
}, },
{ {
userId: this.$store.state.user.name, userId: this.$store.state.user.name,
@ -289,7 +286,7 @@ export default {
sortLv: 0, sortLv: 0,
status: true, status: true,
fixed: '', fixed: '',
columnWidth: 140
columnWidth: 70
}, },
{ {
userId: this.$store.state.user.name, userId: this.$store.state.user.name,
@ -307,7 +304,7 @@ export default {
sortLv: 0, sortLv: 0,
status: true, status: true,
fixed: '', fixed: '',
columnWidth: 260
columnWidth: 130
}, },
{ {
userId: this.$store.state.user.name, userId: this.$store.state.user.name,
@ -325,7 +322,7 @@ export default {
sortLv: 0, sortLv: 0,
status: true, status: true,
fixed: '', fixed: '',
columnWidth: 260
columnWidth: 130
}, },
{ {
userId: this.$store.state.user.name, userId: this.$store.state.user.name,
@ -343,7 +340,7 @@ export default {
sortLv: 0, sortLv: 0,
status: true, status: true,
fixed: '', fixed: '',
columnWidth: 260
columnWidth: 130
}, },
{ {
userId: this.$store.state.user.name, userId: this.$store.state.user.name,
@ -361,7 +358,7 @@ export default {
sortLv: 0, sortLv: 0,
status: true, status: true,
fixed: '', fixed: '',
columnWidth: 260
columnWidth: 130
}, },
{ {
userId: this.$store.state.user.name, userId: this.$store.state.user.name,
@ -379,7 +376,7 @@ export default {
sortLv: 0, sortLv: 0,
status: true, status: true,
fixed: '', fixed: '',
columnWidth: 200
columnWidth: 70
}, },
], ],
partVisible:false, partVisible:false,
@ -494,7 +491,11 @@ export default {
this.queryLoading = true; this.queryLoading = true;
queryQuoteDetail(params).then(({data})=>{ queryQuoteDetail(params).then(({data})=>{
if (data && data.code === 0){ if (data && data.code === 0){
if (this.authFlag){
this.dataList = data.rows1
} else {
this.dataList = data.rows this.dataList = data.rows
}
}else { }else {
this.$message.warning(data.msg); this.$message.warning(data.msg);
} }
@ -656,6 +657,13 @@ export default {
this.quoteDetail.profitRate = this.quote.markup this.quoteDetail.profitRate = this.quote.markup
this.quoteDetail.quoteProfitRate = this.quote.markup this.quoteDetail.quoteProfitRate = this.quote.markup
this.handleQueryQuoteDetail(); this.handleQueryQuoteDetail();
},
mounted () {
if (!this.authFlag){
this.$nextTick(() => {
this.height = window.innerHeight - 150
})
}
} }
} }
</script> </script>
@ -665,7 +673,8 @@ export default {
<template v-if="saveAuth"> <template v-if="saveAuth">
<el-button type="primary" v-if="!authFlag" :disabled="quote.status !== '草稿' || !quote.status" @click="handleSaveQuoteDetail(null)">新增</el-button> <el-button type="primary" v-if="!authFlag" :disabled="quote.status !== '草稿' || !quote.status" @click="handleSaveQuoteDetail(null)">新增</el-button>
</template> </template>
<el-table v-loading="queryLoading" border :data="dataList" style="width: 100%;margin-top: 5px" :height="height" @header-dragend="handleColumnResize">
<el-table v-loading="queryLoading" border :data="dataList" style="width: 100%;margin-top: 5px" :height="height +
150" @header-dragend="handleColumnResize">
<el-table-column width="80" align="center" label="默认报价行" v-if="quoteGroupDetail && quoteGroupDetail.status === '草稿'"> <el-table-column width="80" align="center" label="默认报价行" v-if="quoteGroupDetail && quoteGroupDetail.status === '草稿'">
<template slot-scope="{row}"> <template slot-scope="{row}">
<el-radio <el-radio
@ -675,7 +684,7 @@ export default {
></el-radio> ></el-radio>
</template> </template>
</el-table-column>· </el-table-column>·
<el-table-column type="index" width="55" align="center" label="序号"></el-table-column>
<el-table-column type="index" v-if="!authFlag" width="55" align="center" label="序号"></el-table-column>
<el-table-column <el-table-column
v-for="(item,index) in columns" :key="index" v-for="(item,index) in columns" :key="index"
:sortable="item.columnSortable" :sortable="item.columnSortable"
@ -847,3 +856,10 @@ export default {
display: none; display: none;
} }
</style> </style>
<style lang="scss" scoped>
.el-table /deep/ .cell{
height: auto;
line-height: 1.5;
}
</style>
Loading…
Cancel
Save