Commit b9777807 by 严立

竞价更新

parent 6755508d
...@@ -63,7 +63,6 @@ let output = { ...@@ -63,7 +63,6 @@ let output = {
if (funcDataType === 'object') { if (funcDataType === 'object') {
let funcResultData = JSON.parse(funcResult) let funcResultData = JSON.parse(funcResult)
switch (Number(funcResultData.code)) { switch (Number(funcResultData.code)) {
case 10001: case 10001:
console.log('token overdue') console.log('token overdue')
......
...@@ -58,6 +58,13 @@ let output = { ...@@ -58,6 +58,13 @@ let output = {
} else { } else {
iVue.$message.error(funcInterceptorsResponse.response.message) iVue.$message.error(funcInterceptorsResponse.response.message)
} }
} else {
let funcInterceptorsResponse = iInterceptors.response(funcConfigure, funcXMLHttpRequest.responseText)
if (funcInterceptorsResponse.state) {
funcResolve(funcInterceptorsResponse.response)
} else {
iVue.$message.error(funcInterceptorsResponse.response.message)
}
} }
} }
}).catch((funcError) => { }).catch((funcError) => {
...@@ -94,6 +101,13 @@ let output = { ...@@ -94,6 +101,13 @@ let output = {
} else { } else {
iVue.$message.error(funcInterceptorsResponse.response.message) iVue.$message.error(funcInterceptorsResponse.response.message)
} }
} else {
let funcInterceptorsResponse = iInterceptors.response(funcConfigure, funcXMLHttpRequest.responseText)
if (funcInterceptorsResponse.state) {
funcResolve(funcInterceptorsResponse.response)
} else {
iVue.$message.error(funcInterceptorsResponse.response.message)
}
} }
} }
}).catch((funcError) => { }).catch((funcError) => {
......
...@@ -37,6 +37,24 @@ ...@@ -37,6 +37,24 @@
} }
}, },
computed: {
areaSelection: function () {
return this.$store.state.areaSelection
},
},
watch: {
areaSelection: {
handler: function (funcNewValue, funcOldValue) {
if (funcNewValue.length > 0) {
this.initSelect()
}
},
deep: true,
immediate: true,
},
},
created: function () { created: function () {
this.setArea() this.setArea()
this.setCity() this.setCity()
......
...@@ -27,11 +27,11 @@ ...@@ -27,11 +27,11 @@
}, },
computed: { computed: {
componentSkill: function () { selectionSkill: function () {
return this.$store.state.componentSkill return this.$store.state.selectionSkill
}, },
componentSkillData: function () { dictionarySkill: function () {
return this.$store.state.componentSkillData return this.$store.state.dictionarySkill
} }
}, },
...@@ -43,21 +43,22 @@ ...@@ -43,21 +43,22 @@
deep: true, deep: true,
immediate: true, immediate: true,
}, },
componentSkill: { selectionSkill: {
handler: function (funcNewValue, funcOldValue) { handler: function (funcNewValue, funcOldValue) {
if (funcNewValue.length > 0 && this.skillAll.length > 0) { console.log('selectionSkill', funcNewValue)
if (funcNewValue.length > 0) {
this.selectionIndex = funcNewValue[this.identity] this.selectionIndex = funcNewValue[this.identity]
this.isReady() if (this.skillAll.length > 0) this.isReady()
} }
}, },
deep: true, deep: true,
immediate: true, immediate: true,
}, },
componentSkillData: { dictionarySkill: {
handler: function (funcNewValue, funcOldValue) { handler: function (funcNewValue, funcOldValue) {
if (funcNewValue.length > 0) { if (funcNewValue.length > 0) {
this.skillAll = funcNewValue this.skillAll = funcNewValue
this.isReady() if (this.selectionIndex && this.selectionIndex.length > 0) this.isReady()
} }
}, },
deep: true, deep: true,
...@@ -83,14 +84,9 @@ ...@@ -83,14 +84,9 @@
} }
funcList.push(funcItem) funcList.push(funcItem)
} }
// console.log('funcList', funcList)
// console.log('funcSelectionIndex', funcSelectionIndex)
funcSkillOption.push(funcList) funcSkillOption.push(funcList)
funcSkillItem.push(funcList[funcSelectionIndex]) funcSkillItem.push(funcList[funcSelectionIndex])
// console.log(funcSkillItem)
// 判断是否需要继续遍历 // 判断是否需要继续遍历
if (funcSkillItem[funcSkillItem.length - 1].isChildren) { if (funcSkillItem[funcSkillItem.length - 1].isChildren) {
let funcSelectionIndex = funcLevel let funcSelectionIndex = funcLevel
...@@ -119,9 +115,9 @@ ...@@ -119,9 +115,9 @@
}, },
saveSelection: function () { saveSelection: function () {
let funcSaveSelection = this.$store.getters.componentSkill let funcSaveSelection = this.$store.getters.selectionSkill
funcSaveSelection[this.identity] = this.selectionIndex funcSaveSelection[this.identity] = this.selectionIndex
this.$store.commit('componentSkill', funcSaveSelection) this.$store.commit('selectionSkill', funcSaveSelection)
}, },
returnSelectionId: function () { returnSelectionId: function () {
......
...@@ -22,8 +22,8 @@ export default new Vuex.Store({ ...@@ -22,8 +22,8 @@ export default new Vuex.Store({
contractSelection: {}, contractSelection: {},
// 专家注册组件 // 专家注册组件
componentSkill: [], selectionSkill: [], // 技能选择缓存
componentSkillData: [], dictionarySkill: [], // 技能数据字典
...@@ -94,11 +94,11 @@ export default new Vuex.Store({ ...@@ -94,11 +94,11 @@ export default new Vuex.Store({
state.contractSelection = value state.contractSelection = value
}, },
componentSkill: function (state, value) { selectionSkill: function (state, value) {
state.componentSkill = value state.selectionSkill = value
}, },
componentSkillData: function (state, value) { dictionarySkill: function (state, value) {
state.componentSkillData = value state.dictionarySkill = value
}, },
redirectPath: function (state, value) { redirectPath: function (state, value) {
...@@ -179,12 +179,12 @@ export default new Vuex.Store({ ...@@ -179,12 +179,12 @@ export default new Vuex.Store({
return state.contractSelection return state.contractSelection
}, },
componentSkill: function (state) { selectionSkill: function (state) {
return state.componentSkill return state.selectionSkill
}, },
componentSkillData: function (state) { dictionarySkill: function (state) {
return state.componentSkillData return state.dictionarySkill
}, },
......
...@@ -61,15 +61,8 @@ ...@@ -61,15 +61,8 @@
<!-- 合同列表 - 竞价 --> <!-- 合同列表 - 竞价 -->
<div v-if="[0].indexOf(noticeType) >= 0 && tableShow" class="info-item"> <div v-if="[0].indexOf(noticeType) >= 0 && tableShow" class="info-item">
<div v-for="(item, index) in componentContract" :key="index"> <el-table :data="componentContract" stripe :header-cell-style="tableHeaderStyle">
<el-table :data="[componentContract[index]]" stripe :show-header="!index" :header-cell-style="tableHeaderStyle"> <el-table-column type="index" label="合同包" width="80" align="center"></el-table-column>
<el-table-column label="合同包" width="80" align="center">
<template>
<div class="global-cursor quote-record col">
<span>{{index + 1}}</span>
</div>
</template>
</el-table-column>
<el-table-column prop="object" label="标的"></el-table-column> <el-table-column prop="object" label="标的"></el-table-column>
<el-table-column prop="requirement" label="参数要求"></el-table-column> <el-table-column prop="requirement" label="参数要求"></el-table-column>
<el-table-column prop="quantity" label="数量" align="center"></el-table-column> <el-table-column prop="quantity" label="数量" align="center"></el-table-column>
...@@ -77,19 +70,12 @@ ...@@ -77,19 +70,12 @@
<el-table-column align="center"> <el-table-column align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<div class="global-cursor row"> <div class="global-cursor row">
<span class="global-color-blue" @click="onQueryQuoteRecord(index, scope.row)">报价记录</span> <span class="global-color-blue" @click="onQueryQuoteRecord(scope.row)">报价记录</span>
<span v-if="scope.row.isWin" class="is-win global-color-green">中标</span> <span v-if="scope.row.isWin" class="is-win global-color-green">中标</span>
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<div v-if="quoteRecordActive === index" class="quote-record-list">
<div v-for="(item, index) in quoteRecordList" :key="index" class="row">
<span>{{'报价时间:' + item.time}}</span>
<span>{{'报价价格:' + item.price + ' 元'}}</span>
</div>
</div>
</div>
</div> </div>
<!-- 竞价说明 --> <!-- 竞价说明 -->
...@@ -129,7 +115,7 @@ ...@@ -129,7 +115,7 @@
<!-- 竞价报价 --> <!-- 竞价报价 -->
<el-dialog title="我要报价" :visible.sync="winQuote" :lock-scroll="false" width="1000px" :close-on-click-modal="false"> <el-dialog title="我要报价" :visible.sync="winQuote" :lock-scroll="false" width="1000px" :close-on-click-modal="false">
<div v-if="winOfferSelect"> <div v-if="winQuoteSelection">
<div class="offer-progress row"> <div class="offer-progress row">
<div class="offer-progress-select offer-progress-active row con-c align-c"> <div class="offer-progress-select offer-progress-active row con-c align-c">
<span>选择合同包</span> <span>选择合同包</span>
...@@ -151,7 +137,7 @@ ...@@ -151,7 +137,7 @@
</span> </span>
</div> </div>
<div v-if="winOfferPrice"> <div v-if="winQuoteInput">
<div class="offer-progress row"> <div class="offer-progress row">
<div class="offer-progress-price row con-c align-c"> <div class="offer-progress-price row con-c align-c">
<span>选择合同包</span> <span>选择合同包</span>
...@@ -185,6 +171,15 @@ ...@@ -185,6 +171,15 @@
<!-- 竞价报价记录 -->
<el-dialog title="提示" :visible.sync="winQuoteRecord" :lock-scroll="false" width="400px" :close-on-click-modal="false">
<div class="row con-c">
<span>报价记录</span>
</div>
</el-dialog>
<!-- 下载标书 --> <!-- 下载标书 -->
<el-dialog title="下载标书" :visible.sync="winDocument" :lock-scroll="false" width="1000px" :close-on-click-modal="false"> <el-dialog title="下载标书" :visible.sync="winDocument" :lock-scroll="false" width="1000px" :close-on-click-modal="false">
<el-table :data="componentContract" stripe :header-cell-style="tableHeaderStyle" @selection-change="(selection) => onTableSelectionChange('document', selection)"> <el-table :data="componentContract" stripe :header-cell-style="tableHeaderStyle" @selection-change="(selection) => onTableSelectionChange('document', selection)">
...@@ -271,8 +266,9 @@ ...@@ -271,8 +266,9 @@
winContract: false, winContract: false,
winDocument: false, winDocument: false,
winQuote: false, winQuote: false,
winOfferSelect: false, winQuoteInput: false,
winOfferPrice: false, winQuoteRecord: false,
winQuoteSelection: false,
windowChangeTimer: 0, windowChangeTimer: 0,
} }
...@@ -433,32 +429,34 @@ ...@@ -433,32 +429,34 @@
}, },
onQueryQuoteRecord: function (funcIndex, funcItem) { onQueryQuoteRecord: function (funcItem) {
this.quoteRecordList = [] console.log(funcItem)
this.quoteRecordActive = funcIndex this.winQuoteRecord = true
// this.quoteRecordList = []
let funcParam = { // this.quoteRecordActive = funcIndex
'pageNo': 1,
'pageSize': 5, // let funcParam = {
'biddingPackageId': funcItem.id, // 'pageNo': 1,
} // 'pageSize': 5,
iRequest.request(iHost.base + 'bid/zBiddingPackageOffer/packageHaveBidLogs', funcParam, 'json', 'post') // 'biddingPackageId': funcItem.id,
.then((funcResponse) => { // }
let funcRawData = funcResponse.page.list // iRequest.request(iHost.base + 'bid/zBiddingPackageOffer/packageHaveBidLogs', funcParam, 'json', 'post')
let funcList = [] // .then((funcResponse) => {
for (let i = 0, len = funcRawData.length; i < len; i++) { // let funcRawData = funcResponse.page.list
let funcItem = { // let funcList = []
'time': funcRawData[i].createDate, // for (let i = 0, len = funcRawData.length; i < len; i++) {
'price': funcRawData[i].price, // let funcItem = {
} // 'time': funcRawData[i].createDate,
funcList.push(funcItem) // 'price': funcRawData[i].price,
} // }
this.quoteRecordList = funcList // funcList.push(funcItem)
// }
if (this.quoteRecordList.length === 0) { // this.quoteRecordList = funcList
this.quoteRecordList.push({ 'time': '暂无报价', 'price': 0 })
} // if (this.quoteRecordList.length === 0) {
}) // this.quoteRecordList.push({ 'time': '暂无报价', 'price': 0 })
// }
// })
}, },
onInterceptQuoteRecord: function () { onInterceptQuoteRecord: function () {
...@@ -595,16 +593,16 @@ ...@@ -595,16 +593,16 @@
*/ */
onQuote: function () { onQuote: function () {
this.winQuote = true this.winQuote = true
this.winOfferSelect = true this.winQuoteSelection = true
this.winOfferPrice = false this.winQuoteInput = false
this.tableSelection = [] this.tableSelection = []
this.tableQuote = [] this.tableQuote = []
this.tableQuoteBuffer = [] this.tableQuoteBuffer = []
}, },
onPricePrevious: function () { onPricePrevious: function () {
this.winOfferSelect = true this.winQuoteSelection = true
this.winOfferPrice = false this.winQuoteInput = false
this.tableSelection = [] this.tableSelection = []
this.tableQuote = [] this.tableQuote = []
this.tableQuoteBuffer = [] this.tableQuoteBuffer = []
...@@ -613,8 +611,8 @@ ...@@ -613,8 +611,8 @@
onPriceNext: function (funcType) { onPriceNext: function (funcType) {
switch (funcType) { switch (funcType) {
case 'offer': case 'offer':
this.winOfferSelect = false this.winQuoteSelection = false
this.winOfferPrice = true this.winQuoteInput = true
break break
case 'submit': case 'submit':
......
...@@ -73,13 +73,22 @@ let output = function (thisVue, id, type, isPreview) { ...@@ -73,13 +73,22 @@ let output = function (thisVue, id, type, isPreview) {
// 计算 a 的索引权重 // 计算 a 的索引权重
let funcIndex = a.index.toString().split('-') let funcIndex = a.index.toString().split('-')
let funcA = Number(funcIndex[0]) * funcMainWeight let funcA = Number(funcIndex[0]) * funcMainWeight
if (funcIndex[1]) funcA = funcA + Number(funcIndex[1]) if (funcIndex[1]) {
a.isChild = true
funcA = funcA + Number(funcIndex[1])
} else {
a.isChild = false
}
// 计算 b 的索引权重 // 计算 b 的索引权重
funcIndex = b.index.toString().split('-') funcIndex = b.index.toString().split('-')
let funcB = Number(funcIndex[0]) * funcMainWeight let funcB = Number(funcIndex[0]) * funcMainWeight
if (funcIndex[1]) funcB = funcB + Number(funcIndex[1]) if (funcIndex[1]) {
b.isChild = true
funcB = funcB + Number(funcIndex[1])
} else {
b.isChild = false
}
return funcA - funcB return funcA - funcB
}) })
...@@ -91,6 +100,16 @@ let output = function (thisVue, id, type, isPreview) { ...@@ -91,6 +100,16 @@ let output = function (thisVue, id, type, isPreview) {
'budget': funcRawData[i].fixedPrice, // 预算金额 'budget': funcRawData[i].fixedPrice, // 预算金额
'quantity': funcRawData[i].num, // 标的数量 'quantity': funcRawData[i].num, // 标的数量
'requirement': funcRawData[i].requirement, // 竞价参数要求 'requirement': funcRawData[i].requirement, // 竞价参数要求
'isChild': funcRawData[i].isChild,
}
if (!funcItem.isChild) {
if (funcRawData[i + 1] && funcRawData[i + 1].isChild) {
funcItem.haveChild = true
} else {
funcItem.haveChild = false
}
} else {
funcItem.haveChild = false
} }
funcPackage.push(funcItem) funcPackage.push(funcItem)
} }
......
...@@ -450,14 +450,14 @@ ...@@ -450,14 +450,14 @@
// 重置区域选择数据 // 重置区域选择数据
this.$store.commit('areaSelection', []) this.$store.commit('areaSelection', [])
this.$store.commit('componentSkill', []) this.$store.commit('selectionSkill', [])
this.$store.commit('componentSkillData', [])
}, },
init: function () { init: function () {
console.log('init')
iRequest.request(iHost.base + 'bid/common/getApiProjectTypeOptions', {}, 'json', 'get') iRequest.request(iHost.base + 'bid/common/getApiProjectTypeOptions', {}, 'json', 'get')
.then((funcResponse) => { .then((funcResponse) => {
this.$store.commit('componentSkillData', funcResponse) this.$store.commit('dictionarySkill', funcResponse)
}) })
}, },
...@@ -638,8 +638,9 @@ ...@@ -638,8 +638,9 @@
funcParam.multipleStatement = funcOfficial.join('|') funcParam.multipleStatement = funcOfficial.join('|')
// 设置职称证书 // 设置职称证书
// 以实际存在的技能组件数量为准
let funcSkillId = [] let funcSkillId = []
for (let i = 0, len = this.formRegister.skillId.length; i < len; i++) { for (let i = 0, len = this.skillQuantity; i < len; i++) {
funcSkillId.push(this.formRegister.skillId[i].join(',')) funcSkillId.push(this.formRegister.skillId[i].join(','))
} }
funcParam.projectTypeIds = funcSkillId.join('|') funcParam.projectTypeIds = funcSkillId.join('|')
...@@ -781,10 +782,12 @@ ...@@ -781,10 +782,12 @@
* @returns * @returns
*/ */
onSkillInsert: function () { onSkillInsert: function () {
if (this.skillQuantity < 5) this.skillQuantity = this.skillQuantity + 1 if (this.skillQuantity < 5) {
let funcComponentSkill = this.$store.getters.componentSkill this.skillQuantity = this.skillQuantity + 1
funcComponentSkill.push([0, 0, 0, 0, 0]) let funcSelectionSkill = this.$store.getters.selectionSkill
this.$store.commit('componentSkill', funcComponentSkill) funcSelectionSkill.push([0, 0, 0, 0, 0])
this.$store.commit('selectionSkill', funcSelectionSkill)
}
}, },
/** /**
......
...@@ -365,6 +365,7 @@ ...@@ -365,6 +365,7 @@
// 设置区域标识 // 设置区域标识
this.formRegister.areaArray = funcResponse.area.split(',') this.formRegister.areaArray = funcResponse.area.split(',')
this.$store.commit('areaSelection', this.formRegister.areaArray) this.$store.commit('areaSelection', this.formRegister.areaArray)
console.log(JSON.stringify(this.formRegister.areaArray))
let funImageUrl let funImageUrl
// 设置入库声明图片 // 设置入库声明图片
...@@ -431,7 +432,7 @@ ...@@ -431,7 +432,7 @@
let funcSkillDictionary = iRequest.request(iHost.base + 'bid/common/getApiProjectTypeOptions', {}, 'json', 'get') let funcSkillDictionary = iRequest.request(iHost.base + 'bid/common/getApiProjectTypeOptions', {}, 'json', 'get')
.then((funcResponse) => { .then((funcResponse) => {
this.skillAll = funcResponse this.skillAll = funcResponse
this.$store.commit('componentSkillData', this.skillAll) if (!this.$store.state.dictionarySkill.length) this.$store.commit('dictionarySkill', this.skillAll)
}) })
Promise.all([ funcInfo, funcSkillDictionary ]) Promise.all([ funcInfo, funcSkillDictionary ])
...@@ -481,8 +482,7 @@ ...@@ -481,8 +482,7 @@
// 重置区域选择数据 // 重置区域选择数据
this.$store.commit('areaSelection', []) this.$store.commit('areaSelection', [])
this.$store.commit('componentSkill', []) this.$store.commit('selectionSkill', [])
this.$store.commit('componentSkillData', {})
}, },
setSelectionSkill: function () { setSelectionSkill: function () {
...@@ -518,9 +518,7 @@ ...@@ -518,9 +518,7 @@
funcSelectionIndex[i].push(0) funcSelectionIndex[i].push(0)
} }
} }
this.$store.commit('selectionSkill', funcSelectionIndex)
console.log(JSON.stringify(funcSelectionIndex))
this.$store.commit('componentSkill', funcSelectionIndex)
}, },
/** /**
...@@ -566,11 +564,10 @@ ...@@ -566,11 +564,10 @@
// 设置职称证书 // 设置职称证书
let funcSkillId = [] let funcSkillId = []
for (let i = 0, len = this.formRegister.skillId.length; i < len; i++) { for (let i = 0, len = this.skillQuantity; i < len; i++) {
funcSkillId.push(this.formRegister.skillId[i].join(',')) funcSkillId.push(this.formRegister.skillId[i].join(','))
} }
funcParam.projectTypeIds = funcSkillId.join('|') funcParam.projectTypeIds = funcSkillId.join('|')
console.log(JSON.stringify(funcParam))
iRequest.request(iHost.base + 'bid/zUserExpert/saveUserInfo', funcParam, 'json', 'post') iRequest.request(iHost.base + 'bid/zUserExpert/saveUserInfo', funcParam, 'json', 'post')
.then((funcResponse) => { .then((funcResponse) => {
this.$message({ message: '修改已提交,请等待审核', type: 'success' }) this.$message({ message: '修改已提交,请等待审核', type: 'success' })
...@@ -646,10 +643,12 @@ ...@@ -646,10 +643,12 @@
* @returns * @returns
*/ */
onSkillInsert: function () { onSkillInsert: function () {
if (this.skillQuantity < 5) this.skillQuantity = this.skillQuantity + 1 if (this.skillQuantity < 5) {
let funcComponentSkill = this.$store.getters.componentSkill this.skillQuantity = this.skillQuantity + 1
funcComponentSkill.push([]) let funcSelectionSkill = this.$store.getters.selectionSkill
this.$store.commit('componentSkill', funcComponentSkill) funcSelectionSkill.push([0, 0, 0, 0, 0])
this.$store.commit('selectionSkill', funcSelectionSkill)
}
}, },
/** /**
......
...@@ -292,7 +292,7 @@ ...@@ -292,7 +292,7 @@
let funcSkillDictionary = iRequest.request(iHost.base + 'bid/common/getApiProjectTypeOptions', {}, 'json', 'get') let funcSkillDictionary = iRequest.request(iHost.base + 'bid/common/getApiProjectTypeOptions', {}, 'json', 'get')
.then((funcResponse) => { .then((funcResponse) => {
this.skillRawData = funcResponse this.skillRawData = funcResponse
this.$store.commit('componentSkillData', this.skillRawData) if (!this.$store.state.dictionarySkill.length) this.$store.commit('dictionarySkill', this.skillRawData)
}) })
Promise.all([ funcInfo, funcSkillDictionary ]) Promise.all([ funcInfo, funcSkillDictionary ])
...@@ -355,7 +355,7 @@ ...@@ -355,7 +355,7 @@
funcSkillIndexArray.push(funcSkillIndex) funcSkillIndexArray.push(funcSkillIndex)
} }
this.$store.commit('componentSkill', funcSkillIndexArray) this.$store.commit('selectionSkill', funcSkillIndexArray)
for (let i = 0, l = funcSkillItemArray.length; i < l; i++) { for (let i = 0, l = funcSkillItemArray.length; i < l; i++) {
let funcSkillText = [] let funcSkillText = []
for (let ii = 0, ll = funcSkillItemArray[i].length; ii < ll; ii++) { for (let ii = 0, ll = funcSkillItemArray[i].length; ii < ll; ii++) {
...@@ -370,6 +370,7 @@ ...@@ -370,6 +370,7 @@
}, },
onChange: function () { onChange: function () {
this.$router.push('/specialist/infochange') this.$router.push('/specialist/infochange')
}, },
onChangeRecord: function () { onChangeRecord: function () {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment