Browse Source

Merge branch 'master' of gitea.intra.yunpaper.com:zhangqi/kuailelunwen_new_houtai into zq-slider-menu

pull/47/head
zq 2 weeks ago
parent
commit
3e2b49418c
  1. 4
      src/views/super/Ranking/RankDetail.vue
  2. 119
      src/views/super/Ranking/RankList.vue

4
src/views/super/Ranking/RankDetail.vue

@ -422,6 +422,10 @@ export default {
return true;
}
if(!obj && this.type == 'month'){
obj = {sort_by: 1, sort_order: 1}
}
this.getRankingDetail(obj)
},
getRankingDetail(obj) {

119
src/views/super/Ranking/RankList.vue

@ -13,24 +13,18 @@
</CustomDropdown>
</div>
<div v-if="dataRank == 1" style="margin-bottom: 20px;text-align: left">
<el-alert type="info" :closable="false" show-icon>
<template #title>
未计成本
</template>
<div style="margin-top: 8px; line-height: 1.6; font-size: 14px; color: #606266;">
<template v-if="dataType == 'ver_type'">
1. AI服务器成本<span v-if="view == 'year'" style="color:red;">2025年后计入成本</span><br />
2. Turnitin <span v-if="view == 'year'" style="color:red;">2025年后计入成本</span><br />
3. 学术知网PMLC硕博VIP<span v-if="view == 'year'" style="color:red;">2025年后计入成本</span><br />
</template>
<template v-if="dataType == 'check_type'">
1. AI服务器成本<br />
2. Turnitin国际版TurnitinUK版Turnitin国际版+AI<br />
3. 知网PMLC硕博VIP <span v-if="view == 'year'" style="color:red;">2025年后计入成本</span><br />
</template>
<div v-if="dataRank == 1 && (dataType == 'ver_type' || dataType == 'check_type')" style="margin-bottom: 20px;text-align: left" class="beforeNotice">
<p class="noticeTop flex"><img src="@/assets/site/siteSemInfo_Icon.svg" alt=""> 未计成本</p>
<div v-if="dataType == 'ver_type'" class="noticeBot column">
<p>1. AI服务器成本<span v-if="view == 'year'" style="color:red;">2025年后计入成本</span></p>
<p>2. Turnitin <span v-if="view == 'year'" style="color:red;">2025年后计入成本</span></p>
<p>3. 学术知网PMLC硕博VIP<span v-if="view == 'year'" style="color:red;">2025年后计入成本</span></p>
</div>
<div v-if="dataType == 'check_type'" class="noticeBot column">
<p>1. AI服务器成本</p>
<p>2. Turnitin国际版TurnitinUK版Turnitin国际版+AI</p>
<p>3. 知网PMLC硕博VIP <span v-if="view == 'year'" style="color:red;">2025年后计入成本</span></p>
</div>
</el-alert>
</div>
<div class=" flex-common">
@ -70,7 +64,14 @@
<el-table-column v-else prop="name" :label="type_desc[dataType]"></el-table-column>
<el-table-column prop="rate" label="毛利占比" v-if="dataRank == 1 && dataType == 'check_type'"></el-table-column>
<el-table-column prop="rate" label="毛利占比" v-if="dataRank == 1 && dataType == 'check_type'">
<template slot-scope="scope">
{{ scope.row.rate }} %
</template>
</el-table-column>
<el-table-column v-if="dataRank == 1 && dataType == 'check_type'" prop="value_3" label="收入"></el-table-column>
<el-table-column v-if="dataRank == 1 && dataType == 'check_type'" prop="value_4" label="成本"></el-table-column>
<el-table-column prop="1" :label="rank_type_desc[dataRank]" sortable="custom">
<template v-slot="{ row, $index }">
@ -89,20 +90,27 @@
<div class="flex-between flex pop-top">
<h3>
{{ text }} {{ row.name }} {{ rank_type_desc[dataRank] }}
<span @click="goLookMoreData(row.id)">查看更多</span>
<span @click="goLookAgentMoreRank(row.id)">查看更多</span>
</h3>
<span class="flex point" @click="closePop(row,'id')">
关闭<img src="@/assets/register/close.svg">
</span>
</div>
<el-table :data="tableData1" style="width: 100%">
<el-table-column prop="value_1" width="208" label="日期"></el-table-column>
<el-table-column prop="value_2" width="208" :label="rank_type_desc[dataRank]"></el-table-column>
<el-table-column prop="name" width="208" label="服务名称"></el-table-column>
<el-table-column prop="rate" width="208" label="毛利占比"></el-table-column>
<el-table-column prop="value_1" width="208" label="毛利润"></el-table-column>
<el-table-column prop="value_2" width="208" label="订单数"></el-table-column>
</el-table>
</div>
<div class="flex" slot="reference">
{{ row.value_1 }}
<!--代理商利润排行 展示查看代理商产品排行-->
<HoverImage v-if="row.value_1 != 0 && dataRank == 1 && dataType == 'agent' && show_detail_index == row.sort"
@click="handleClick3(row, $index, 'id')"
:normal="require('@/assets/super/list-detail.svg')"
:hover="require('@/assets/super/list-detail-hover.svg')"/>
</div>
</el-popover>
@ -389,6 +397,17 @@ export default {
query: query
}).href, '_blank')
},
goLookAgentMoreRank(id) {
let query = {}
query.date = this.text
query.rank_type = this.dataRank
query.type = 'check_type'
query.aid = id
window.open(this.$router.resolve({
path: '/super/ranking/list',
query: query
}).href, '_blank')
},
closePop(row, type) {
row[type + '_popover'] = false;
row[type + '_popover_2'] = false;
@ -439,6 +458,26 @@ export default {
}
this.getRankingDetail(obj);
},
handleClick3(row, index, type) {
//
this.tableData.forEach((item, i) => {
item[type + '_popover'] = false;
if (i !== index) {
item[type + '_popover_2'] = false;
}
});
//
row[type + '_popover_2'] = true;
let obj = {}
if (this.dataType == 'agent') {
obj.aid = row.id
}
if (this.dataType == 'ver_type') {
obj.ver_type = row.id
}
this.getAgentTypeRankingList();
},
popshow() {
var ariaEls = document.querySelectorAll('.el-popover')
ariaEls.forEach((item) => {
@ -596,6 +635,23 @@ export default {
console.error(error, 'error')
})
},
getAgentTypeRankingList(obj) {
const that = this
that.tableData1 = []
this.$http('POST', '/supernew/ajax_get_type_rank_list', {
date: that.text,
rank_type: that.dataRank,
cur_page: 1,
page_size: 5,
...obj
}).then(response => {
this.$nextTick(() => {
that.tableData1 = response.data.list.slice(0, 5)
})
}).catch(error => {
console.error(error, 'error')
})
},
getLossList() {
const that = this
that.tableData = []
@ -667,4 +723,25 @@ export default {
}
}
}
.beforeNotice {
margin-top: 12px;
border-radius: 4px;
background: #F2F7FF;
border: 1px solid #BFDAFF;
padding: 20px 14px;
color: #1E2226;
letter-spacing: 0.08em;
.noticeTop {
gap: 8px;
margin-bottom: 12px;
}
.noticeBot {
gap: 10px;
}
}
</style>
Loading…
Cancel
Save