|
@@ -86,19 +86,6 @@
|
|
|
<div class="intercept-tip-container" v-show="interceptTipText">
|
|
|
<AppIcon name="tishi" /> {{ interceptTipText }}
|
|
|
</div>
|
|
|
- <!-- 超前项目推荐 & 定制化分析报告 P611需求:将报告插到列表第一条数据后面位置 -->
|
|
|
- <div class="recommend-card-container" v-show="cardLoaded">
|
|
|
- <RecommendCard
|
|
|
- v-if="recommendInfo.show"
|
|
|
- :key="recommendInfo.key"
|
|
|
- v-model="recommendInfo.showContent"
|
|
|
- :chart-data="recommendInfo.chart"
|
|
|
- :brief-list="recommendInfo.brief"
|
|
|
- :project-list="recommendInfo.project"
|
|
|
- :keys="pageState.splitKeys"
|
|
|
- @do-leave="saveState"
|
|
|
- />
|
|
|
- </div>
|
|
|
</div>
|
|
|
<div class="j-main list-container" ref="listContainer">
|
|
|
<div class="tab-search-info" v-show="tabSearchInfoShow">
|
|
@@ -176,6 +163,20 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
+ <!-- 超前项目推荐 & 定制化分析报告 P611需求:将报告插到列表第一条数据后面位置 -->
|
|
|
+ <div class="recommend-card-container">
|
|
|
+ <RecommendCard
|
|
|
+ ref="recommendCardRef"
|
|
|
+ v-if="recommendInfo.show"
|
|
|
+ :key="recommendInfo.key"
|
|
|
+ v-model="recommendInfo.showContent"
|
|
|
+ :chart-data="recommendInfo.chart"
|
|
|
+ :brief-list="recommendInfo.brief"
|
|
|
+ :project-list="recommendInfo.project"
|
|
|
+ :keys="pageState.splitKeys"
|
|
|
+ @do-leave="saveState"
|
|
|
+ />
|
|
|
+ </div>
|
|
|
<van-list
|
|
|
v-show="pageState.listTabActive !== 'table'"
|
|
|
v-model="listState.loading"
|
|
@@ -329,7 +330,10 @@
|
|
|
>
|
|
|
</AppEmpty>
|
|
|
</van-list>
|
|
|
- <div class="table-container" v-show="pageState.listTabActive === 'table'">
|
|
|
+ <div
|
|
|
+ class="table-container calc-height-1px"
|
|
|
+ v-show="pageState.listTabActive === 'table'"
|
|
|
+ >
|
|
|
<div class="scroll" v-show="listState.list.length">
|
|
|
<table class="table">
|
|
|
<tr class="table-header">
|
|
@@ -412,7 +416,11 @@
|
|
|
</tr>
|
|
|
</table>
|
|
|
</div>
|
|
|
- <div class="to-look-more" v-show="listState.list.length > 20">
|
|
|
+ <div
|
|
|
+ class="to-look-more"
|
|
|
+ :class="{ 'ios-look-more': $envs.inIOS }"
|
|
|
+ v-show="listState.list.length > 20"
|
|
|
+ >
|
|
|
<van-button plain size="small" type="primary" @click="dataExport"
|
|
|
>查看更多</van-button
|
|
|
>
|
|
@@ -974,7 +982,7 @@ export default {
|
|
|
},
|
|
|
calcFilterText() {
|
|
|
const params = this.getSaveFilterToHistoryParams()
|
|
|
- const { label } = this.formatFilterItems(params)
|
|
|
+ const { label } = this.formatFilterItems(params, 'text')
|
|
|
return label
|
|
|
},
|
|
|
// 默认筛选条件(不可更改赋值)用于清空操作,原defaultFilterState会被缓存赋值(版本需求)
|
|
@@ -1010,42 +1018,13 @@ export default {
|
|
|
'推荐使用电脑浏览器访问剑鱼标讯网站\njianyu360.cn查看数据表格,体验更佳。'
|
|
|
})
|
|
|
}
|
|
|
- // 市场分析报告插到表格头部位置
|
|
|
- this.$nextTick(() => {
|
|
|
- const recommend = document.querySelector('.recommend-card-container')
|
|
|
- const table = document.querySelector('.table')
|
|
|
- if (recommend && table) {
|
|
|
- const parentNode = table.parentNode
|
|
|
- parentNode.insertBefore(recommend, table)
|
|
|
- this.cardLoaded = true
|
|
|
- }
|
|
|
- })
|
|
|
- } else {
|
|
|
- this.$toast.clear()
|
|
|
- // 市场分析报告插到第一条数据后面位置
|
|
|
- this.$nextTick(() => {
|
|
|
- const recommend = document.querySelector('.recommend-card-container')
|
|
|
- const cellList = document.querySelectorAll('.project-cell')
|
|
|
- if (recommend && cellList[0]) {
|
|
|
- const parentNode = cellList[0].parentNode
|
|
|
- parentNode.insertBefore(recommend, cellList[0].nextSibling)
|
|
|
- this.cardLoaded = true
|
|
|
- }
|
|
|
- })
|
|
|
}
|
|
|
+ this.moveRecommendCard(n)
|
|
|
},
|
|
|
searchList(list) {
|
|
|
- if (list && list.length) {
|
|
|
+ if (list && list.length && this.pageState.listTabActive === 'list') {
|
|
|
// 市场分析报告插到第一条数据后面位置
|
|
|
- this.$nextTick(() => {
|
|
|
- const recommend = document.querySelector('.recommend-card-container')
|
|
|
- const cellList = document.querySelectorAll('.project-cell')
|
|
|
- if (recommend && cellList[0]) {
|
|
|
- const parentNode = cellList[0].parentNode
|
|
|
- parentNode.insertBefore(recommend, cellList[0].nextSibling)
|
|
|
- this.cardLoaded = true
|
|
|
- }
|
|
|
- })
|
|
|
+ this.moveRecommendCard('list')
|
|
|
}
|
|
|
}
|
|
|
},
|
|
@@ -1350,6 +1329,12 @@ export default {
|
|
|
}
|
|
|
if (filters.price) {
|
|
|
const key = 'price'
|
|
|
+ if (!filters[key].start) {
|
|
|
+ filters[key].start = ''
|
|
|
+ }
|
|
|
+ if (!filters[key].end) {
|
|
|
+ filters[key].end = ''
|
|
|
+ }
|
|
|
if (filters[key].start || filters[key].end) {
|
|
|
this.filters.priceCheckbox = ['custom']
|
|
|
}
|
|
@@ -2265,9 +2250,22 @@ export default {
|
|
|
className: 'j-confirm-dialog',
|
|
|
confirmButtonText: '立即升级'
|
|
|
})
|
|
|
- // 设置完区域后跳至关键词订阅页面
|
|
|
+ // 设置完区域后跳至关键词订阅页面,区域设置成功后关键词要同步设置(要携带参数过去)
|
|
|
+ const { moreKeywordsMode } = this.filters
|
|
|
+ const { tags, wordsMode } = moreKeywordsMode
|
|
|
+ // 订阅的关键词 = 主关键词 + 多关键词
|
|
|
+ let formatKeyword = ''
|
|
|
+ if (tags && tags.length) {
|
|
|
+ formatKeyword = this.filters.keywords + ' ' + tags.join(' ')
|
|
|
+ } else {
|
|
|
+ formatKeyword = this.filters.keywords
|
|
|
+ }
|
|
|
this.toSetArea({
|
|
|
- query: { url: LINKS.关键词列表[this.$env.platform] }
|
|
|
+ query: {
|
|
|
+ url: LINKS.关键词列表[this.$env.platform],
|
|
|
+ keywords: formatKeyword,
|
|
|
+ wordsMode
|
|
|
+ }
|
|
|
})
|
|
|
return
|
|
|
}
|
|
@@ -2373,6 +2371,7 @@ export default {
|
|
|
// 保存筛选条件
|
|
|
async saveFilterToHistory() {
|
|
|
const params = this.getSaveFilterToHistoryParams()
|
|
|
+ console.log(params, 'params')
|
|
|
// 如未输入关键词(包含顶部搜索框及更多筛选条件设置的多关键词、采购单位、中标单位和招标代理机构)则toast提示“请输入关键词”
|
|
|
if (
|
|
|
!params.searchvalue &&
|
|
@@ -2447,7 +2446,7 @@ export default {
|
|
|
done()
|
|
|
}
|
|
|
},
|
|
|
- formatFilterItems(item) {
|
|
|
+ formatFilterItems(item, type = 'dialog') {
|
|
|
item.scope = item.selectType
|
|
|
item.infotype = item.subtype
|
|
|
const formatted = FilterHistoryAjaxModel2ViewModel.formatAll(item)
|
|
@@ -2484,7 +2483,7 @@ export default {
|
|
|
.filter((v) => {
|
|
|
if (v.label.includes('信息类型')) {
|
|
|
const isChecked = deepCompareInfoType(v.text)
|
|
|
- v.text = isChecked ? '' : v.text
|
|
|
+ v.text = type === 'text' && isChecked ? '' : v.text
|
|
|
}
|
|
|
if (this.topSearch.input) {
|
|
|
return v && v.text
|
|
@@ -2834,6 +2833,8 @@ export default {
|
|
|
// 清空已选筛选条件,恢复到默认值
|
|
|
onClearFilter() {
|
|
|
const noChangeDefaultFilterState = this.noChangeDefaultFilterState
|
|
|
+ this.filters.infoType = noChangeDefaultFilterState.infoType
|
|
|
+ this.pageState.searchGroup = '0'
|
|
|
for (const key in noChangeDefaultFilterState) {
|
|
|
this.$set(this.filters, key, noChangeDefaultFilterState[key])
|
|
|
}
|
|
@@ -2845,6 +2846,39 @@ export default {
|
|
|
keyStr,
|
|
|
'<span class="highlight-text-orange-bd">' + keyStr + '</span>'
|
|
|
)
|
|
|
+ },
|
|
|
+ moveRecommendCard(n) {
|
|
|
+ if (n === 'table') {
|
|
|
+ // 市场分析报告插到表格头部位置
|
|
|
+ this.$nextTick(() => {
|
|
|
+ const recommend = document.querySelector('.recommend-card-container')
|
|
|
+ const scroll = document.querySelector('.table-container .scroll')
|
|
|
+ const recommendChild = document.querySelector('.recommend-bg')
|
|
|
+ if (recommend && scroll) {
|
|
|
+ const parentNode = scroll.parentNode
|
|
|
+ parentNode.insertBefore(recommend, scroll)
|
|
|
+ this.cardLoaded = true
|
|
|
+ if (recommendChild) {
|
|
|
+ recommendChild.style.margin = '0 8px'
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ // 市场分析报告插到第一条数据后面位置
|
|
|
+ this.$nextTick(() => {
|
|
|
+ const recommend = document.querySelector('.recommend-card-container')
|
|
|
+ const cellList = document.querySelectorAll('.project-cell')
|
|
|
+ const recommendChild = document.querySelector('.recommend-bg')
|
|
|
+ if (recommend && cellList[0]) {
|
|
|
+ const parentNode = cellList[0].parentNode
|
|
|
+ parentNode.insertBefore(recommend, cellList[0].nextSibling)
|
|
|
+ this.cardLoaded = true
|
|
|
+ if (recommendChild) {
|
|
|
+ recommendChild.style.margin = '8px 8px 0'
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -3177,6 +3211,10 @@ export default {
|
|
|
rgba(255, 255, 255, 1),
|
|
|
rgba(255, 255, 255, 1)
|
|
|
);
|
|
|
+ &.ios-look-more {
|
|
|
+ height: 180px;
|
|
|
+ padding-bottom: 50px;
|
|
|
+ }
|
|
|
}
|
|
|
.sub-this-keywords {
|
|
|
display: flex;
|
|
@@ -3267,7 +3305,7 @@ export default {
|
|
|
}
|
|
|
}
|
|
|
.tab-saved {
|
|
|
- padding: 8px 12px;
|
|
|
+ padding: 2px 12px 8px;
|
|
|
background: #fff;
|
|
|
&-left {
|
|
|
flex: 1;
|
|
@@ -3276,6 +3314,7 @@ export default {
|
|
|
color: #171826;
|
|
|
font-size: 13px;
|
|
|
line-height: 20px;
|
|
|
+ font-weight: bold;
|
|
|
}
|
|
|
&-value {
|
|
|
font-size: 12px;
|
|
@@ -3289,7 +3328,7 @@ export default {
|
|
|
font-size: 12px;
|
|
|
line-height: 18px;
|
|
|
.clear-action {
|
|
|
- margin-right: 4px;
|
|
|
+ margin-right: 10px;
|
|
|
padding: 1px 4px;
|
|
|
}
|
|
|
.save-action {
|