11 changed files with 4 additions and 4786 deletions
@ -1,714 +0,0 @@ |
|||
<template> |
|||
<div class="home-wrap column"> |
|||
<div class="home-main flex"> |
|||
<div class="home-main-left column"> |
|||
<div class="systemNotice common-area"> |
|||
<h2 class="flex-between"> |
|||
<b>系统通知</b> |
|||
<span class="hoverCommon" @click="lookMoreSystem">查看更多</span> |
|||
</h2> |
|||
<div class="systemNotice-main"> |
|||
<div class="sales-item flex" v-for="(item) in systemList" :key="item.name"> |
|||
<img :src="require(`@/assets/home/NEW.svg`)" alt=""> |
|||
<div class="column"> |
|||
<b class="flex">{{ item.label }} <img class="systemIcon" src="@/assets/home/systemIcon.svg" alt=""> </b> |
|||
<p>{{ item.desc }}</p> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<div class="salesStatistics common-area"> |
|||
<h2 class="flex-between"> |
|||
<b>销售统计 <span>2024–10-28数据</span></b> |
|||
<span class="hoverCommon" @click="lookMoreSystem">查看全部</span> |
|||
|
|||
</h2> |
|||
<div class="salesStatistics-main flex"> |
|||
<div class="sales-item flex" v-for="(item, index) in salesList" :key="item.name"> |
|||
<img :src="require(`@/assets/home/sales${index + 1}.png`)" alt=""> |
|||
<div class="column"> |
|||
<p class="flex"><span class="number">{{ item.num }}</span> <span v-if="index < 2" class="unit">元</span></p> |
|||
<span class="label">{{ item.label }}</span> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<div class="supplyPrice common-area"> |
|||
<h2>供货价格 </h2> |
|||
<div class="supplyPrice-main flex"> |
|||
<div :class="['supplyPric-item', 'supplyPric-item' + (index1 + 1)]" v-for="(item1, index1) in supplyList1" |
|||
:key="item1"> |
|||
<div class="item-top flex-between"> |
|||
<div class="flex"> |
|||
<img :src="require(`@/assets/home/supplyPrice${index1 + 1}.png`)" alt=""> |
|||
<b>{{ item1 }}</b> |
|||
</div> |
|||
<span>详情</span> |
|||
</div> |
|||
<div class="list-wrap"> |
|||
<div v-for="(item2, index2) in supplyList" :key="index2" class="item-list"> |
|||
<p class="item-list-name">{{ item2.name }}</p> |
|||
<p class="flex-between" v-for="(item3, index3) in item2.list" :key="index3"> |
|||
{{ item3.name }} |
|||
<span>{{ item3.price }}元/{{ item3.word }}</span> |
|||
</p> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<Footer></Footer> |
|||
|
|||
</div> |
|||
<div class="home-main-right"> |
|||
<div class="accountBalance flex-between common-area"> |
|||
<span>账户余额 <b>4560</b> 元</span> |
|||
<span class="hoverCommon">展开</span> |
|||
</div> |
|||
<div style=" background: #fff"> |
|||
<div class="importantReminder common-area"> |
|||
<h2>重要提醒</h2> |
|||
<div class="reminder1 column"> |
|||
<p>淘宝账号即将过期</p> |
|||
<div @click="lookTaoBaoNum">查看</div> |
|||
</div> |
|||
<div class="reminder2 column hide"> |
|||
<p>请尽快建立站点,开始售卖</p> |
|||
<div @click="lookTaoBaoNum1">立即前往</div> |
|||
</div> |
|||
</div> |
|||
<div class="carouselImage common-area"> |
|||
<!-- 轮播图 --> |
|||
<img src="@/assets/home/home-right.png" alt=""> |
|||
</div> |
|||
<div class="preferredMarket common-area"> |
|||
<h2>优选营销</h2> |
|||
<div class="column"> |
|||
<div class="sales-item flex" v-for="(item, index) in preferredMarketList" :key="item.name"> |
|||
<img :src="require(`@/assets/home/preferredMarket${index + 1}.png`)" alt=""> |
|||
<div class="column"> |
|||
<span class="flex">{{ item.label }} |
|||
<!-- <img class="systemIcon" src="@/assets/home/systemIcon.svg" alt=""> --> |
|||
</span> |
|||
<p>{{ item.desc }}</p> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<div class="usageGuide common-area"> |
|||
<h2 class="flex-between"> |
|||
<b>使用指南</b> |
|||
<span class="hoverCommon">查看全部</span> |
|||
</h2> |
|||
<p class="hoverCommon">我想将商品绑定淘宝店应该怎么做?</p> |
|||
<p class="hoverCommon">基于成交量的推广支持</p> |
|||
<p class="hoverCommon">二级、裂变分销,发展代理网络</p> |
|||
</div> |
|||
<div class="customWrap common-area"> |
|||
<h2>联系客服</h2> |
|||
<img src="@/assets/home/customer.png" alt=""> |
|||
</div> |
|||
</div> |
|||
|
|||
</div> |
|||
</div> |
|||
</div> |
|||
</template> |
|||
|
|||
<script> |
|||
import Footer from '@/components/Footer.vue'; |
|||
|
|||
export default { |
|||
name: 'HomeView', |
|||
data() { |
|||
return { |
|||
preferredMarketList: [ |
|||
{ |
|||
desc: '电脑版、小程序、微信H5', |
|||
label: '多端系统' |
|||
}, |
|||
{ |
|||
desc: '电脑版、小程序、微信H5', |
|||
label: 'OCPC推广' |
|||
}, |
|||
{ |
|||
desc: '电脑版、小程序、微信H5', |
|||
label: '多级分销' |
|||
}, |
|||
{ |
|||
desc: '电脑版、小程序、微信H5', |
|||
label: '嵌入广告' |
|||
}, |
|||
{ |
|||
desc: '电脑版、小程序、微信H5', |
|||
label: '发放卡券' |
|||
}, |
|||
], |
|||
salesList: [ |
|||
{ |
|||
num: 4560, |
|||
label: '销售金额' |
|||
}, |
|||
{ |
|||
num: 1000, |
|||
label: '成本支出' |
|||
}, |
|||
{ |
|||
num: 20, |
|||
label: '查重订单量' |
|||
}, |
|||
{ |
|||
num: 60, |
|||
label: 'AIGC订单量' |
|||
}, |
|||
], |
|||
systemList: [ |
|||
{ |
|||
desc: 'AI中文范文2万字版、AI中文范文万字版已整合到AI中文范文内(可选3000/5000AI中文范文2万字版、AI中文范文万字版已整合到AI中文范文内(可选3000/5000/8000/10000/15000/000000/10000/…', |
|||
label: 'AI范文整合的通知' |
|||
}, |
|||
{ |
|||
desc: 'AI中文范文2万字版、AI中文范文万字版已整合到AI中文范文内(可选3000/5000AI中文范文2万字版、AI中文范文万字版已整合到AI中文范文内(可选3000/5000/8000/10000/15000/000000/10000/…', |
|||
label: 'AI范文整合的通知' |
|||
}, |
|||
], |
|||
supplyList1: [ |
|||
'查重服务', |
|||
'AIGC服务', |
|||
'写作辅助', |
|||
], |
|||
supplyList: [ |
|||
{ |
|||
name: '万方系统', |
|||
list: [ |
|||
{ |
|||
name: '万方硕博版', |
|||
word: '千字符', |
|||
price: 2.4 |
|||
}, |
|||
{ |
|||
name: '万方硕博版', |
|||
word: '千字符', |
|||
price: 2.4 |
|||
}, |
|||
{ |
|||
name: '万方硕博版', |
|||
word: '千字符', |
|||
price: 2.4 |
|||
}, |
|||
] |
|||
|
|||
}, |
|||
{ |
|||
name: '维普系统', |
|||
list: [ |
|||
{ |
|||
name: '维普硕博版', |
|||
word: '千字符', |
|||
price: 2.4 |
|||
}, |
|||
{ |
|||
name: '维普系统硕博版', |
|||
word: '千字符', |
|||
price: 2.4 |
|||
}, |
|||
{ |
|||
name: '维普系统硕博版', |
|||
word: '千字符', |
|||
price: 2.4 |
|||
}, |
|||
] |
|||
|
|||
}, |
|||
{ |
|||
name: 'PaperPass旗舰版', |
|||
list: [ |
|||
{ |
|||
name: '万方硕博版', |
|||
word: '千字符', |
|||
price: 2.4 |
|||
}, |
|||
] |
|||
|
|||
}, |
|||
{ |
|||
name: '学术不端', |
|||
list: [ |
|||
{ |
|||
name: '硕博预审版', |
|||
word: '篇', |
|||
price: 2.4 |
|||
}, |
|||
{ |
|||
name: '期刊小论文小篇幅版', |
|||
word: '篇', |
|||
price: 2.4 |
|||
}, |
|||
{ |
|||
name: '期刊小论文小篇幅版', |
|||
word: '篇', |
|||
price: 2.4 |
|||
}, |
|||
{ |
|||
name: '期刊小论文小篇幅版', |
|||
word: '篇', |
|||
price: 2.4 |
|||
}, |
|||
] |
|||
|
|||
}, |
|||
] |
|||
|
|||
} |
|||
}, |
|||
components: { |
|||
// HelloWorld |
|||
Footer, |
|||
}, |
|||
methods: { |
|||
lookTaoBaoNum() { |
|||
// 查看淘宝账号 |
|||
}, |
|||
lookTaoBaoNum1() { |
|||
// 查看淘宝账号 |
|||
}, |
|||
lookMoreSystem() { |
|||
// 系统通知 -查看更多 |
|||
}, |
|||
lookAllSales() { |
|||
// 销售统计 -查看全部 |
|||
}, |
|||
} |
|||
} |
|||
</script> |
|||
<style scoped lang="scss"> |
|||
.home-wrap { |
|||
padding: 12px; |
|||
|
|||
|
|||
|
|||
.home-main { |
|||
width: 100%; |
|||
display: flex; |
|||
gap: 12px; |
|||
min-width: 1018px; |
|||
max-width: 1750px; |
|||
margin: 0 auto; |
|||
align-items: stretch; |
|||
box-sizing: border-box; |
|||
.home-main-left { |
|||
min-width: 746px; |
|||
max-width: 1398px; |
|||
flex: 1; |
|||
|
|||
.common-area { |
|||
width: 100%; |
|||
padding: 20px 14px; |
|||
box-sizing: border-box; |
|||
/* 确保 padding 不会影响宽度计算 */ |
|||
background: #fff; |
|||
margin-bottom: 12px; |
|||
|
|||
h2 { |
|||
font-size: 16px; |
|||
font-weight: bold; |
|||
letter-spacing: 0.08em; |
|||
color: #1E2226; |
|||
margin: 0 0 20px 0; |
|||
text-align: left; |
|||
|
|||
span { |
|||
font-size: 14px; |
|||
font-weight: normal; |
|||
letter-spacing: 0.08em; |
|||
color: #8A9099; |
|||
} |
|||
} |
|||
} |
|||
|
|||
.systemNotice-main { |
|||
img { |
|||
width: 32px; |
|||
height: 32px; |
|||
margin-right: 8px; |
|||
} |
|||
|
|||
.sales-item { |
|||
width: 100%; |
|||
justify-content: flex-start; |
|||
padding: 18px 12px; |
|||
box-sizing: border-box; |
|||
transition: all .3s; |
|||
|
|||
.systemIcon { |
|||
display: none; |
|||
width: 12px; |
|||
height: 8px; |
|||
} |
|||
|
|||
&:hover { |
|||
background: #F6F7FA; |
|||
|
|||
b { |
|||
color: #006AFF; |
|||
} |
|||
|
|||
.systemIcon { |
|||
margin-left: 12px; |
|||
display: block; |
|||
} |
|||
} |
|||
|
|||
div { |
|||
width: calc(100% - 30px); |
|||
} |
|||
|
|||
/* 确保 padding 不会影响宽度计算 */ |
|||
b { |
|||
font-size: 14px; |
|||
font-weight: normal; |
|||
line-height: normal; |
|||
letter-spacing: 0.08em; |
|||
color: #1E2226; |
|||
} |
|||
|
|||
p { |
|||
width: 100%; |
|||
margin-top: 6px; |
|||
overflow: hidden; |
|||
-webkit-box-orient: vertical; |
|||
text-overflow: ellipsis; |
|||
white-space: nowrap; |
|||
text-align: left; |
|||
color: #8A9099; |
|||
} |
|||
} |
|||
|
|||
} |
|||
|
|||
.salesStatistics-main { |
|||
img { |
|||
width: 54px; |
|||
height: 54px; |
|||
margin-right: 12px; |
|||
} |
|||
|
|||
.sales-item { |
|||
width: 25%; |
|||
justify-content: flex-start; |
|||
padding: 14px 12px; |
|||
transition: all .3s; |
|||
.number{ |
|||
font-size: 22px; |
|||
font-weight: bold; |
|||
font-family: 'Roboto Condensed'; |
|||
display: inline-block; |
|||
margin-right: 2px; |
|||
color: #1E2226; |
|||
line-height: 29px; |
|||
} |
|||
.unit{ |
|||
color: #1E2226; |
|||
font-size: 12px; |
|||
} |
|||
.label{ |
|||
color: #8A9099; |
|||
letter-spacing: 0.08em; |
|||
} |
|||
&:hover { |
|||
border-radius: 8px; |
|||
background: #F6F7FA; |
|||
} |
|||
} |
|||
} |
|||
|
|||
.supplyPrice-main { |
|||
display: flex; |
|||
gap: 20px; |
|||
|
|||
.supplyPric-item { |
|||
padding: 20px 14px; |
|||
box-sizing: border-box; |
|||
color: #8A9099; |
|||
flex: 1; |
|||
border-radius: 4px; |
|||
transition: all .5s; |
|||
cursor: pointer; |
|||
|
|||
.item-top { |
|||
border-bottom: 1px solid #EAECF0; |
|||
padding-bottom: 20px; |
|||
|
|||
b { |
|||
color: #1E2226; |
|||
} |
|||
|
|||
img { |
|||
width: 28px; |
|||
height: 28px; |
|||
margin-right: 12px; |
|||
} |
|||
} |
|||
|
|||
.item-list { |
|||
margin-top: 16px; |
|||
text-align: left; |
|||
line-height: 18px; |
|||
|
|||
p { |
|||
margin-bottom: 8px; |
|||
|
|||
&:last-child { |
|||
margin-bottom: 0; |
|||
} |
|||
} |
|||
|
|||
.item-list-name { |
|||
margin-bottom: 8px; |
|||
color: #1E2226; |
|||
} |
|||
} |
|||
} |
|||
|
|||
.supplyPric-item1 { |
|||
|
|||
background: linear-gradient(180deg, #F3F8FF 0%, #FFFFFF 17%, #FFFFFF 100%); |
|||
border: 1px solid #DFE2E6; |
|||
transition: all .5s ease; |
|||
|
|||
&:hover { |
|||
color: #626573; |
|||
transition: all .5s ease; |
|||
background: linear-gradient(180deg, #F3F8FF 0%, #FFFFFF 60%); |
|||
box-shadow: 0px 2px 14px 0px rgba(0, 0, 0, 0.13); |
|||
} |
|||
} |
|||
|
|||
.supplyPric-item2 { |
|||
background: linear-gradient(180deg, #FFFAF6 1%, rgba(255, 255, 255, 0.6233) 14%); |
|||
border: 1px solid #DFE2E6; |
|||
transition: all .5s ease; |
|||
|
|||
&:hover { |
|||
color: #626573; |
|||
transition: all .5s ease; |
|||
box-shadow: 0px 2px 14px 0px rgba(0, 0, 0, 0.13); |
|||
background: linear-gradient(180deg, #FFFAF6 0%, #FFFFFF 60%); |
|||
} |
|||
} |
|||
|
|||
.supplyPric-item3 { |
|||
background: linear-gradient(180deg, #FFF6F6 0%, rgba(255, 255, 255, 0.8151) 14%, rgba(255, 255, 255, 0) 100%); |
|||
border: 1px solid #DFE2E6; |
|||
transition: all .5s ease; |
|||
|
|||
&:hover { |
|||
color: #626573; |
|||
transition: all .5s ease; |
|||
box-shadow: 0px 2px 14px 0px rgba(0, 0, 0, 0.13); |
|||
background: linear-gradient(180deg, #FFF6F6 0%, #FFFFFF 60%); |
|||
} |
|||
} |
|||
} |
|||
} |
|||
|
|||
.home-main-right { |
|||
flex: 0 0 auto; |
|||
/* 右边盒子不伸缩 */ |
|||
min-width: 260px; |
|||
/* 右边盒子最小宽度 */ |
|||
max-width: 328px; |
|||
/* 右边盒子最大宽度 */ |
|||
width: 260px; |
|||
|
|||
/* 在 1440px 屏幕下的固定宽度 */ |
|||
.common-area { |
|||
padding: 20px 0px; |
|||
margin: 0 14px; |
|||
text-align: left; |
|||
font-size: 14px; |
|||
line-height: normal; |
|||
letter-spacing: 0.08em; |
|||
|
|||
/* text/text_1 */ |
|||
h2 { |
|||
font-weight: bold; |
|||
margin: 0; |
|||
font-size: 16px; |
|||
color: #1E2226; |
|||
|
|||
span { |
|||
font-size: 14px; |
|||
color: #8A9099; |
|||
font-weight: normal; |
|||
} |
|||
} |
|||
} |
|||
|
|||
.accountBalance { |
|||
padding: 27px 14px; |
|||
margin: 0; |
|||
margin-bottom: 12px; |
|||
align-items: baseline; |
|||
background: #fff; |
|||
|
|||
b { |
|||
font-family: Roboto Condensed; |
|||
font-size: 32px; |
|||
font-weight: bold; |
|||
line-height: 27px; |
|||
letter-spacing: normal; |
|||
color: #1F2026; |
|||
} |
|||
|
|||
span { |
|||
font-size: 14px; |
|||
font-weight: normal; |
|||
// color: #8A9099; |
|||
color: #1F2026; |
|||
&:nth-last-child(1){ |
|||
color: #8A9099; |
|||
} |
|||
|
|||
} |
|||
} |
|||
|
|||
.importantReminder { |
|||
border-bottom: 1px solid #EAECF0; |
|||
|
|||
.reminder1, |
|||
.reminder2 { |
|||
border-radius: 4px; |
|||
background: linear-gradient(271deg, #F8DCDC 0%, #FCEEEE 60%); |
|||
padding: 14px 8px; |
|||
border: 1px solid transparent; |
|||
margin-top: 20px; |
|||
transition: all .3s; |
|||
|
|||
&:hover { |
|||
transition: all .3s; |
|||
border-radius: 4px; |
|||
background: linear-gradient(271deg, #F8DCDC 0%, #FCEEEE 60%); |
|||
/* main/main_erro */ |
|||
border: 1px solid #FF4D4F; |
|||
} |
|||
|
|||
div { |
|||
display: flex; |
|||
justify-content: flex-end; |
|||
color: #FF4D4F; |
|||
margin-top: 10px; |
|||
width: 100%; |
|||
} |
|||
} |
|||
} |
|||
|
|||
.carouselImage { |
|||
padding-bottom: 0; |
|||
|
|||
img { |
|||
width: 100%; |
|||
} |
|||
} |
|||
|
|||
.preferredMarket { |
|||
border-bottom: 1px solid #EAECF0; |
|||
|
|||
h2 { |
|||
margin-bottom: 20px; |
|||
} |
|||
|
|||
.sales-item { |
|||
padding: 12px 0; |
|||
color: #8A9099; |
|||
font-size: 12px; |
|||
transition: all .3s ease-in-out; |
|||
|
|||
.systemIcon { |
|||
display: none; |
|||
width: 12px; |
|||
height: 8px; |
|||
margin-left: 12px; |
|||
} |
|||
|
|||
span { |
|||
font-size: 14px; |
|||
color: #1F2026; |
|||
margin-bottom: 6px; |
|||
} |
|||
|
|||
&:hover { |
|||
.systemIcon { |
|||
display: block; |
|||
} |
|||
|
|||
span { |
|||
transition: all .3s ease-in-out; |
|||
color: #006AFF; |
|||
} |
|||
} |
|||
} |
|||
|
|||
img { |
|||
width: 34px; |
|||
height: 34px; |
|||
margin-right: 10px; |
|||
} |
|||
} |
|||
|
|||
.customWrap { |
|||
h2 { |
|||
margin-bottom: 20px; |
|||
} |
|||
|
|||
img { |
|||
/* 自动布局子元素 */ |
|||
width: 106px; |
|||
height: 106px; |
|||
z-index: 0; |
|||
} |
|||
} |
|||
|
|||
.usageGuide { |
|||
border-bottom: 1px solid #EAECF0; |
|||
|
|||
h2 { |
|||
margin-bottom: 20px; |
|||
} |
|||
|
|||
p { |
|||
margin-bottom: 10px; |
|||
|
|||
&:last-child { |
|||
margin-bottom: 0; |
|||
} |
|||
} |
|||
} |
|||
} |
|||
} |
|||
} |
|||
|
|||
@media screen and (max-width: 1440px) { |
|||
.home-main-right { |
|||
transition: all .3s; |
|||
width: 286px !important; |
|||
/* 在 1440px 屏幕下的固定宽度 */ |
|||
} |
|||
} |
|||
|
|||
@media screen and (max-width: 1200px) { |
|||
.home-main-right { |
|||
transition: all .3s; |
|||
width: 260px !important; |
|||
/* 在 1440px 屏幕下的固定宽度 */ |
|||
} |
|||
} |
|||
|
|||
@media screen and (min-width: 1441px) { |
|||
.home-main-right { |
|||
transition: all .3s; |
|||
width: 328px !important; |
|||
/* 在大于 1440px 屏幕下的最大宽度 */ |
|||
} |
|||
} |
|||
</style> |
@ -1,125 +0,0 @@ |
|||
<template> |
|||
<div class="pageTemplete-wrap min-flex"> |
|||
<div class=" flex-common" id=""> |
|||
<h3>模板选择</h3> |
|||
<el-tabs v-model="activeName" @tab-click="handleClick"> |
|||
<el-tab-pane label="混合(AI+查重)" name="1"> |
|||
<div class="templeteImgs"> |
|||
<div class="templeteImgs-item" v-for="item in templeteList" :key="item.tpl_id"> |
|||
<img :src="item.img" alt=""> |
|||
<span class="look">预览</span> |
|||
<img src="@/assets/site/tem-active.svg" class="tem-active" alt=""> |
|||
<p>{{ item.list }}</p> |
|||
</div> |
|||
</div> |
|||
</el-tab-pane> |
|||
<el-tab-pane label="仅查重" name="2"> |
|||
<div class="templeteImgs"> |
|||
<div class="templeteImgs-item" v-for="item in templeteList.filter(item1=> {item1.type == 1})" :key="item.tpl_id"> |
|||
<img :src="require(item.img)" alt=""> |
|||
<span class="look">预览</span> |
|||
<img src="@/assets/site/tem-active.svg" class="tem-active" alt=""> |
|||
<p>{{ item.list }}</p> |
|||
</div> |
|||
</div> |
|||
|
|||
</el-tab-pane> |
|||
<el-tab-pane label="仅AI写作" name="3"></el-tab-pane> |
|||
<div class="templeteImgs"> |
|||
<div class="templeteImgs-item" v-for="item in templeteList.filter(item1=> {item1.type == 0})" :key="item.tpl_id"> |
|||
<img :src="require(item.img)" alt=""> |
|||
<span class="look">预览</span> |
|||
<img src="@/assets/site/tem-active.svg" class="tem-active" alt=""> |
|||
<p>{{ item.list }}</p> |
|||
</div> |
|||
</div> |
|||
</el-tabs> |
|||
</div> |
|||
</div> |
|||
</template> |
|||
<script> |
|||
export default { |
|||
// 站点设置 |
|||
name: '', |
|||
components: { |
|||
// GuipInput, |
|||
// GuipButton, |
|||
// GuipSwitch, |
|||
// GroupFormBtns |
|||
}, |
|||
data() { |
|||
return { |
|||
activeName: '1', |
|||
addImgList: { |
|||
'万方': require('@/assets/register/wanfang.png'), |
|||
'维普': require('@/assets/register/weipu.svg'), |
|||
'学术不端': require('@/assets/register/xueshubuduan.svg'), |
|||
}, |
|||
templeteList:[ |
|||
{ |
|||
name:'清新科技蓝', |
|||
type:1, |
|||
tpl_id:'1', |
|||
img:require('@/assets/site/temImg.png') |
|||
}, |
|||
{ |
|||
name:'清新科技蓝1', |
|||
type:0, |
|||
tpl_id:'11', |
|||
img:require('@/assets/site/temImg.png') |
|||
}, |
|||
{ |
|||
name:'清新科技蓝2', |
|||
tpl_id:'12', |
|||
type:0, |
|||
img:require('@/assets/site/temImg.png') |
|||
}, |
|||
{ |
|||
name:'清新科技蓝3', |
|||
tpl_id:'16', |
|||
type:0, |
|||
img:require('@/assets/site/temImg.png') |
|||
}, |
|||
{ |
|||
name:'清新科技蓝4', |
|||
tpl_id:'13', |
|||
type:1, |
|||
img:require('@/assets/site/temImg.png') |
|||
}, |
|||
{ |
|||
name:'清新科技蓝5', |
|||
tpl_id:'14', |
|||
type:1, |
|||
img:require('@/assets/site/temImg.png') |
|||
}, |
|||
{ |
|||
name:'清新科技蓝6', |
|||
type:1, |
|||
tpl_id:'15', |
|||
img:require('@/assets/site/temImg.png') |
|||
}, |
|||
] |
|||
} |
|||
}, |
|||
methods: { |
|||
handleClick() { |
|||
|
|||
} |
|||
} |
|||
} |
|||
</script> |
|||
<style scoped lang="scss"> |
|||
.pageTemplete-wrap { |
|||
width: 100%; |
|||
letter-spacing: 0.08em; |
|||
padding: 12px; |
|||
// overflow-y: auto; |
|||
box-sizing: border-box; |
|||
} |
|||
|
|||
::v-deep .el-tabs__nav-wrap { |
|||
border-width: 0px 0px 1px 0px; |
|||
border-style: solid; |
|||
border-color: #DFE2E6; |
|||
} |
|||
</style> |
@ -1,62 +0,0 @@ |
|||
<template> |
|||
<div class="domain-wrap"> |
|||
<p>设置自己的域名,需要做 2 步站外操作。如果暂时未准备好,或打算稍后设置,可以先选用平台免费域名,平台随时支持域名修改。 </p> |
|||
<div class="domain-box"> |
|||
<div class="domain-item"> |
|||
<p>1. 域名必须在阿里云完成 ICP 备案</p> |
|||
<p>备案网址:https://beian.aliyun.com</p> |
|||
</div> |
|||
<div class="domain-item"> |
|||
<p>2. 域名要解析到平台服务器上</p> |
|||
<p>备案网址:https://beian.aliyun.com</p> |
|||
</div> |
|||
<div class="domain-item"> |
|||
<p>3. 域名填写</p> |
|||
<el-input placeholder="填写完整域名" /> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</template> |
|||
<script> |
|||
// import GuipInput from '@/components/GuipInput.vue'; |
|||
|
|||
export default { |
|||
name: '', |
|||
props: [''], |
|||
components: { |
|||
// GuipInput, |
|||
|
|||
}, |
|||
data() { |
|||
return { |
|||
|
|||
} |
|||
}, |
|||
methods: { |
|||
onSwitchChange(data) { |
|||
console.log(data, '---'); |
|||
} |
|||
} |
|||
} |
|||
</script> |
|||
<style lang="scss"> |
|||
.domain-wrap { |
|||
.domain-item{ |
|||
margin-bottom: 10px; |
|||
} |
|||
.domain-item p:last-child{ |
|||
padding-left: 23px; |
|||
color: #8A9099; |
|||
} |
|||
p{ |
|||
text-align: left; |
|||
line-height: 18px; |
|||
margin-bottom: 8px; |
|||
} |
|||
.domain-box { |
|||
display: flex; |
|||
flex-direction: column; |
|||
justify-content: flex-start; |
|||
} |
|||
} |
|||
</style> |
File diff suppressed because it is too large
@ -1,358 +0,0 @@ |
|||
<template> |
|||
<div class="site-setting-wrap min-flex-right"> |
|||
<div class="siteMessage flex-common" id="siteMessage1"> |
|||
<h3>站点信息</h3> |
|||
<el-form :model="siteForm" :rules="siteFormrules" ref="siteForm"> |
|||
<div class="flex-wrap"> |
|||
<div class="flex-left"> |
|||
<GuipInput ref="GuipInput" column="column" label="站点简称" :maxlength="10" :showWordLimit="true" |
|||
desc="这是是右侧文案" v-model="siteForm.site_alias" prop="site_alias" |
|||
placeholder="仅自己区分站点销售渠道,客户看不到" /> |
|||
<GuipInput ref="GuipInput" column="column" label="公司名称" desc="在站点首页底部“关于我们”展示" |
|||
v-model="siteForm.company_name" prop="company_name" placeholder="非必填" /> |
|||
</div> |
|||
<div class="flex-line"></div> |
|||
<div class="flex-right"> |
|||
<GuipInput ref="GuipInput" column="column" label="公司地址" desc="在站点首页底部“关于我们”展示" |
|||
v-model="siteForm.company_address" prop="company_address" placeholder="非必填" /> |
|||
<GuipInput ref="GuipInput" column="column" label="公司电话" desc="在站点首页底部“关于我们”展示" |
|||
v-model="siteForm.company_phone" prop="company_phone" placeholder="非必填" /> |
|||
</div> |
|||
</div> |
|||
</el-form> |
|||
<GroupFormBtns @cancel="cancelClick" @confirm="submitForm('siteForm')" /> |
|||
|
|||
</div> |
|||
<div class="siteMessage flex-common" id="siteMessage2"> |
|||
<h3>站点信息</h3> |
|||
<el-form :model="siteForm1" :rules="siteFormrules1" ref="siteForm1"> |
|||
<div class="flex-wrap"> |
|||
<div class="flex-left"> |
|||
<GuipFormItem column="column" class="mb24" label="域名来源" required="true"> |
|||
<GuipRadio slot="formDom" v-model="siteForm1.domain_source" :options="domain_source" |
|||
prop="domain_source" @change="domain_radioChange" /> |
|||
</GuipFormItem> |
|||
</div> |
|||
<div class="flex-line"></div> |
|||
<div class="flex-right"> |
|||
<GuipFormItem column="column" label="域名设置" required="true"> |
|||
<GuipInput slot="formDom" v-model="siteForm1.domain_set" placeholder="仅支持数字、字母"> |
|||
<span slot="appendshow" style="width: 200px;"> |
|||
<GuipSelect width="200px" v-model="domainSuffix" placeholder="选择后缀" |
|||
:filterable="true" allow-create :options="domainOptions"> |
|||
<!-- <el-option |
|||
v-for="item in domainOptions" |
|||
:key="item" |
|||
:label="item" |
|||
:value="item" |
|||
/> --> |
|||
</GuipSelect> |
|||
</span> |
|||
</GuipInput> |
|||
</GuipFormItem> |
|||
</div> |
|||
</div> |
|||
</el-form> |
|||
<GroupFormBtns @cancel="cancelClick" @confirm="submitForm('siteForm1')" /> |
|||
|
|||
</div> |
|||
<div class="siteMessage flex-common" id="siteMessage3"> |
|||
<h3>店铺收款</h3> |
|||
<el-form :model="siteForm2" ref="formRef"> |
|||
<div class="flex-wrap"> |
|||
<div class="flex-left"> |
|||
<GuipFormItem column="column" class="mb24"> |
|||
<div slot="formLeft" class="form-top-icon"> |
|||
<img src="@/assets/register/weixin.svg" style="width: 26px;height: 26px;" |
|||
alt=""><span>微信收款</span> |
|||
</div> |
|||
<CustomDropdown slot="formDom" width="100%" v-model="siteForm1.weixin_pay" |
|||
:options="options_weixin" @change="changeSelectWeixin" placeholder="请选择" |
|||
:options_null="options_weixin_null" @changeNormal="changeNormalWeixin"> |
|||
<!-- 自定义触发按钮 --> |
|||
<template #trigger> |
|||
<span v-if="selectedItemWeixin" |
|||
style="color: #1E2226;font-family: Microsoft YaHei UI;">{{ |
|||
select_placeholder_weixin ? select_placeholder_weixin : |
|||
selectedItemWeixin.desc }}</span> |
|||
<span v-else>请选择</span> |
|||
</template> |
|||
<template #normal> |
|||
<div class="flex flex-between noraml-jump"> |
|||
<div class="left"> |
|||
<b>绑定新微信收款</b> |
|||
<p class="one">需要使用您公司的微信支付</p> |
|||
<p>需在微信商户平台-产品中心开通Native支付</p> |
|||
</div> |
|||
<div class="right"> |
|||
<GuipButton type="primary" size="medium">前往绑定</GuipButton> |
|||
</div> |
|||
</div> |
|||
</template> |
|||
|
|||
<!-- 自定义下拉选项 --> |
|||
<template #item="{ item }"> |
|||
<div class="flex-between"> |
|||
<div class="left"> |
|||
<p class="one">{{ item.label }}</p> |
|||
<p>{{ item.desc }}</p> |
|||
</div> |
|||
<div class="right"> |
|||
<img v-if="selectedItem.value == item.value" |
|||
src="../assets/register/drop-selected.svg" alt=""> |
|||
</div> |
|||
</div> |
|||
</template> |
|||
</CustomDropdown> |
|||
</GuipFormItem> |
|||
<GuipFormItem column="column"> |
|||
<div slot="formLeft" class="form-top-icon"> |
|||
<img src="@/assets/register/zhifubao.svg" style="width: 26px;height: 26px;" |
|||
alt=""><span>支付宝收款</span> |
|||
</div> |
|||
<!-- <GuipSelect slot="formDom" v-model="siteForm2.zhifubao_pay" prop="zhifubao_pay" |
|||
:options="options_zhifubao" placeholder="未绑定支付宝收款" /> --> |
|||
<CustomDropdown slot="formDom" width="100%" v-model="siteForm1.zhifubao_pay" |
|||
:options="options_weixin" @change="changeSelectWeixin" placeholder="请选择" |
|||
:options_null="options_weixin_null" @changeNormal="changeNormalWeixin"> |
|||
<!-- 自定义触发按钮 --> |
|||
<template #trigger> |
|||
<span v-if="selectedItemWeixin" |
|||
style="color: #1E2226;font-family: Microsoft YaHei UI;">{{ |
|||
select_placeholder_weixin ? select_placeholder_weixin : |
|||
selectedItemWeixin.desc }}</span> |
|||
<span v-else>请选择</span> |
|||
</template> |
|||
<template #normal> |
|||
<div class="flex flex-between noraml-jump"> |
|||
<div class="left"> |
|||
<b>绑定新支付宝收款</b> |
|||
<p class="one">需要使用您公司的支付宝支付</p> |
|||
<p>需在支付宝商户平台-产品中心开通Native支付</p> |
|||
</div> |
|||
<div class="right"> |
|||
<GuipButton type="primary" size="medium">前往绑定</GuipButton> |
|||
</div> |
|||
</div> |
|||
</template> |
|||
|
|||
<!-- 自定义下拉选项 --> |
|||
<template #item="{ item }"> |
|||
<div class="flex-between"> |
|||
<div class="left"> |
|||
<p class="one">{{ item.label }}</p> |
|||
<p>{{ item.desc }}</p> |
|||
</div> |
|||
<div class="right"> |
|||
<img v-if="selectedItem.value == item.value" |
|||
src="../assets/register/drop-selected.svg" alt=""> |
|||
</div> |
|||
</div> |
|||
</template> |
|||
</CustomDropdown> |
|||
</GuipFormItem> |
|||
</div> |
|||
<div class="flex-line"></div> |
|||
<div class="flex-right"> |
|||
<!-- <div>{{ input1 }}</div> --> |
|||
<div class="addStore flex"> |
|||
<div></div> |
|||
添加其他收款方式 |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</el-form> |
|||
<GroupFormBtns @cancel="cancelClick" @confirm="submitForm('siteForm2')" /> |
|||
</div> |
|||
</div> |
|||
</template> |
|||
<script> |
|||
// import GuipInput from '@/components/GuipInput.vue'; |
|||
import store from '../store'; |
|||
import { mapState } from 'vuex'; |
|||
import GuipFormItem from '@/components/GuipFormItem.vue'; |
|||
import GuipInput from '@/components/GuipInput.vue'; |
|||
import GuipRadio from '@/components/GuipRadio.vue'; |
|||
import CustomDropdown from '@/components/CustomDropdown.vue'; |
|||
import GuipButton from '@/components/GuipButton.vue'; |
|||
import GroupFormBtns from '@/components/GroupFormBtns.vue'; |
|||
import GuipSelect from '@/components/GuipSelect.vue'; |
|||
// import {setHighActive} from '@/utils/common'; |
|||
export default { |
|||
// 站点设置 |
|||
name: '', |
|||
props: [''], |
|||
components: { |
|||
GuipRadio, |
|||
GuipFormItem, |
|||
GuipInput, |
|||
CustomDropdown, |
|||
GuipButton, |
|||
GroupFormBtns, |
|||
GuipSelect |
|||
|
|||
}, |
|||
data() { |
|||
return { |
|||
domainInput: '', |
|||
domainSuffix: '.chachongz.com', |
|||
domainOptions: [ |
|||
{ |
|||
value: '1', |
|||
label: '.chachongz.com' |
|||
}, |
|||
{ |
|||
value: '2', |
|||
label: '.turnitin.org.cn' |
|||
}, |
|||
{ |
|||
value: '3', |
|||
label: '.jishu.chachongz.com' |
|||
}, |
|||
], |
|||
siteForm: { |
|||
company_name: '', |
|||
company_address: '', |
|||
company_phone: '', |
|||
site_alias: '', |
|||
}, |
|||
siteFormrules: { |
|||
site_alias: [ |
|||
{ required: true, message: '请输入站点简称', trigger: 'blur' } |
|||
] |
|||
}, |
|||
siteForm1: { |
|||
domain_set: '', |
|||
domain_source: '平台免费域名', |
|||
}, |
|||
siteForm2: { |
|||
zhifubao_pay: '', |
|||
weixin_pay: '', |
|||
}, |
|||
siteFormrules1: { |
|||
domain_source: [ |
|||
{ required: true, message: '请输入站点简称', trigger: 'blur' } |
|||
] |
|||
}, |
|||
domain_source: [ |
|||
{ label: '平台免费域名', value: '平台免费域名', selectedLabel: "平台免费域名" }, |
|||
{ label: '我自己有域名', value: '我自己有域名', selectedLabel: "我自己有域名" }, |
|||
], |
|||
options_weixin_null: { |
|||
label: '暂无收款账号', |
|||
value: '暂时没有收款账号,我想稍后配置', |
|||
desc: '暂无收款账号,稍后配置' |
|||
}, |
|||
select_placeholder_weixin: '暂无收款账号,稍后配置', |
|||
selectedItemWeixin: {},//微信收款方式 |
|||
options_weixin: [], |
|||
options_zhifubao: [], |
|||
} |
|||
}, |
|||
computed: { |
|||
...mapState(['pageTitle','siteSettingData']) // 从Vuex映射showSidebar状态到组件的计算属性中 |
|||
}, |
|||
created(){ |
|||
store.commit('SET_CUSTOMIZE', true); |
|||
store.commit('SET_SLIDER_MENU','siteSettingData'); |
|||
}, |
|||
mounted() { |
|||
store.commit('SET_PAGETITLE', '基本设置'); |
|||
}, |
|||
methods: { |
|||
changeNormalWeixin() { |
|||
|
|||
}, |
|||
changeSelectWeixin(item, flag) { |
|||
if (flag) { |
|||
this.select_placeholder_weixin = this.options_weixin_null.desc; |
|||
return |
|||
} |
|||
this.selectedItem = { ...item }; |
|||
console.log(this.selectedItem, 'this.selectedItem===='); |
|||
}, |
|||
// 销售渠道 |
|||
domain_radioChange(type) { |
|||
console.log(type, '--'); |
|||
}, |
|||
onSwitchChange(data) { |
|||
console.log(data, '---'); |
|||
}, |
|||
submitForm(form) { |
|||
console.log(this.$refs[form], '-----'); |
|||
this.$refs[form].validate((valid) => { |
|||
console.log(this[form], '======formxinxi'); |
|||
if (valid) { |
|||
alert('提交成功!'); |
|||
} else { |
|||
return false; |
|||
} |
|||
}); |
|||
}, |
|||
cancelClick() { |
|||
console.log('quxiao'); |
|||
}, |
|||
confirmClick(type) { |
|||
console.log(type, '确认'); |
|||
} |
|||
|
|||
} |
|||
} |
|||
</script> |
|||
<style lang="scss"> |
|||
.siteMessage { |
|||
border-radius: 4px; |
|||
transition: all .5s; |
|||
border: 1px solid transparent; |
|||
} |
|||
|
|||
.addStore { |
|||
margin-top: 12px; |
|||
// border-radius: 4px; |
|||
// opacity: 1; |
|||
// /* text/text_white_2 */ |
|||
// border: 1px dashed #BABDC2; |
|||
// padding: 15px 20px; |
|||
// color: #626573; |
|||
// justify-content: center; |
|||
|
|||
// img { |
|||
// margin-right: 12px; |
|||
// } |
|||
} |
|||
|
|||
|
|||
.site-setting-wrap { |
|||
width: 100%; |
|||
padding: 12px ; |
|||
box-sizing: border-box; |
|||
} |
|||
|
|||
#siteMessage2 { |
|||
margin: 12px 0; |
|||
} |
|||
|
|||
.domain-wrap { |
|||
.domain-item { |
|||
margin-bottom: 10px; |
|||
} |
|||
|
|||
|
|||
.domain-item p:last-child { |
|||
padding-left: 23px; |
|||
color: #8A9099; |
|||
} |
|||
|
|||
p { |
|||
text-align: left; |
|||
line-height: 18px; |
|||
margin-bottom: 8px; |
|||
} |
|||
|
|||
.domain-box { |
|||
display: flex; |
|||
flex-direction: column; |
|||
justify-content: flex-start; |
|||
} |
|||
} |
|||
</style> |
@ -1,31 +0,0 @@ |
|||
<template> |
|||
<div class="site-personal-wrap min-flex-right"> |
|||
<div class="siteMessage flex-common" id="siteMessage4"> |
|||
<h3>搜索引擎优化(SEO) <span>通过SEO设置,可以免费获得流量、提高网站在搜索引擎中的排名</span></h3> |
|||
|
|||
</div> |
|||
</div> |
|||
</template> |
|||
|
|||
<script> |
|||
// import request from "./utils/request"; |
|||
import { mapState } from 'vuex'; |
|||
import store from '../store'; |
|||
export default { |
|||
name: 'Sidebar', |
|||
props: {}, |
|||
data() { |
|||
return { |
|||
|
|||
} |
|||
}, |
|||
mounted() { |
|||
store.commit('SET_PAGETITLE', '移动端设置'); |
|||
}, |
|||
computed: { |
|||
...mapState(['pageTitle']) // 从Vuex映射showSidebar状态到组件的计算属性中 |
|||
}, |
|||
methods:{ |
|||
} |
|||
} |
|||
</script> |
@ -1,529 +0,0 @@ |
|||
<!-- 站点列表 --> |
|||
<!-- :filters="[{text: '2016-05-01', value: '2016-05-01'}, {text: '2016-05-02', value: '2016-05-02'}, {text: '2016-05-03', value: '2016-05-03'}, {text: '2016-05-04', value: '2016-05-04'}]" |
|||
:filter-method="filterHandler" --> |
|||
<template> |
|||
<div class="siteList-wrap column"> |
|||
<div class="siteList-main "> |
|||
<div class="flex-between site-top"> |
|||
<div class="left flex"> |
|||
<h2>站点列表</h2> |
|||
<GuipButton size="medium" class="addgroupBtn" type="normal" |
|||
:btnstyle="{ width: '115px', hright: '32px' }" @click="addGroupVisiable = true"> |
|||
<img src="@/assets/site/addIcon.svg" alt="">新增分组 |
|||
</GuipButton> |
|||
<div style="width: 120px;"> |
|||
<GuipSelectFilter v-model="selectedValue" :options="options" :searchable="true" placeholder="请选择" |
|||
:filter-method="customFilter" search-placeholder="搜索..." /> |
|||
</div> |
|||
|
|||
<!-- <searchable-select :styleObj="{ |
|||
'width': '140px', 'height': '32px' |
|||
}" v-model="selectedValue1" :options="options1" :searchable="true" placeholder="请选择" |
|||
search-placeholder="关键词搜索" @change="handleChange" /> |
|||
<el-form> |
|||
<GuipSelect width="600px" v-model="selectedValue" :options="options" defaultValue="选项1" /> |
|||
</el-form> |
|||
--> |
|||
<!-- <GuipSelectFilter2 |
|||
v-model="selectedValue" |
|||
:options="options1" |
|||
:searchable="true" |
|||
placeholder="请选择水果" |
|||
search-placeholder="搜索水果名称" |
|||
no-data-text="没有找到匹配的水果" |
|||
@change="handleFruitChange" |
|||
/> --> |
|||
</div> |
|||
<div class="right"> |
|||
<GuipButton size="medium" @click="addSite" :btnstyle="btnstyleObj_add" type="primary">新增站点 |
|||
</GuipButton> |
|||
</div> |
|||
</div> |
|||
<el-form> |
|||
<el-table :data="tableData" style="width: 100%" > |
|||
<!-- 其他列 --> |
|||
<el-table-column prop="short_name" label="站点简称" width="210"> |
|||
<template slot-scope="scope"> |
|||
<a class="name_link flex cell_render" :href="scope.row.domain" target="_blank"> |
|||
{{ scope.row.short_name }} |
|||
<img class="edit_icon" src="@/assets/site/form_link.svg" alt=""> |
|||
</a> |
|||
</template> |
|||
</el-table-column> |
|||
<el-table-column prop="regtime" label="注册时间"></el-table-column> |
|||
|
|||
<!-- 价格列 --> |
|||
<el-table-column label="站点分组" prop="group"> |
|||
<template slot-scope="scope"> |
|||
<!-- <a class="name_link flex cell_render" :href="scope.row.link" target="_blank"> |
|||
{{ scope.row.name }} |
|||
<img class="edit_icon" src="@/assets/site/form_link.svg" alt=""> |
|||
</a> --> |
|||
<!-- <searchable-select slot="reference" :styleObj="{ 'width': '140px', 'height': '32px','position': 'absolute', |
|||
'z-index': '1119' }" v-model="scope.row.group" |
|||
:options="options1" :searchable="true" placeholder="请选择" search-placeholder="关键词搜索" |
|||
@change="handleChange" /> --> |
|||
<!-- <GuipSelect width="600px" v-model="scope.row.group" prop="card" :options="options" |
|||
defaultValue="选项1" /> --> |
|||
<GuipSelectFilter v-model="scope.row.group" :options="options" :searchable="true" |
|||
placeholder="请选择" :filter-method="customFilter" search-placeholder="搜索..." /> |
|||
<!-- <GuipSelectFilter2 |
|||
v-model="scope.row.group" |
|||
:options="options1" |
|||
:searchable="true" |
|||
placeholder="请选择水果" |
|||
search-placeholder="搜索水果名称" |
|||
no-data-text="没有找到匹配的水果" |
|||
@change="handleFruitChange" |
|||
/> --> |
|||
</template> |
|||
<!-- <template v-slot="{ row, $index }"> |
|||
<el-popover v-model="row.group_popover" placement="top" trigger="manual" |
|||
:ref="`popover-${$index}`" @show="popshow"> |
|||
<searchable-select slot="reference" :styleObj="{ 'width': '140px', 'height': '32px' }" v-model="selectedValue1" |
|||
:options="options1" :searchable="true" placeholder="请选择" search-placeholder="关键词搜索" |
|||
@change="handleChange" > |
|||
<span @click="handlePriceClick(row, $index, 'group')"> |
|||
<div class="flex cell_render"> |
|||
<span v-if="row.group" :key="random()">{{ groupList[row.group] }}</span> |
|||
<img class="edit_icon" src="@/assets/site/drop_icon.svg" alt=""> |
|||
</div> |
|||
</span> |
|||
</searchable-select> |
|||
</el-popover> |
|||
</template> --> |
|||
</el-table-column> |
|||
<el-table-column prop="phone_services" label="手机服务" :filters="phoneService" |
|||
:filter-method="filterHandler"> |
|||
</el-table-column> |
|||
<!-- <el-table-column prop="department" label="部门"> |
|||
<template #default="{ row, $index }"> |
|||
<template v-if="editingIndex === $index"> |
|||
<searchable-select v-model="row.department" :options="departmentOptions" |
|||
@change="handleDepartmentChange(row, $index)" @click.native.stop /> |
|||
</template> |
|||
<template v-else> |
|||
<span @click="startEditing($index)">{{ row.department }}</span> |
|||
</template> |
|||
</template> |
|||
</el-table-column> --> |
|||
<el-table-column prop="config_progress_status" label="状态" width="195"> |
|||
<!-- <template v-slot="{ row, $index }">--> |
|||
<!-- <el-popover v-model="row.status_popover" placement="top" trigger="manual"--> |
|||
<!-- :ref="`popover-${$index}`" @show="popshow">--> |
|||
<!-- <!– 弹框内容 –>--> |
|||
<!-- <div class="statusList">--> |
|||
<!-- <p class="flex">--> |
|||
<!-- <img style="margin-right: 8px;" src="@/assets/site/info_filled.svg"--> |
|||
<!-- alt="">自有域名验证未通过--> |
|||
<!-- </p>--> |
|||
<!-- <p class="flex" style="margin: 12px 0;">--> |
|||
<!-- <img style="margin-right: 8px;" src="@/assets/site/info_filled.svg"--> |
|||
<!-- alt="">收款方式未配置--> |
|||
<!-- </p>--> |
|||
<!-- <p class="flex">--> |
|||
<!-- <img style="margin-right: 8px;" src="@/assets/site/info_filled.svg"--> |
|||
<!-- alt="">支付宝收款账号未配置--> |
|||
<!-- </p>--> |
|||
<!-- </div>--> |
|||
<!-- <!– 触发弹框的按钮 –>--> |
|||
<!-- <span slot="reference" @click="handlePriceClick(row, $index, 'status')">--> |
|||
<!-- <div class="flex cell_render">--> |
|||
<!-- <span :class="(row.status == '0' ? 'in_services' : 'in_config')">{{--> |
|||
<!-- row.status == '0' ? '运行中' : '配置中' }}</span>--> |
|||
<!-- <img class="edit_icon" v-if="row.status == '1'"--> |
|||
<!-- src="@/assets/site/more_setIcon.png" alt="">--> |
|||
<!-- </div>--> |
|||
<!-- </span>--> |
|||
|
|||
<!-- </el-popover>--> |
|||
<!-- </template>--> |
|||
</el-table-column> |
|||
<el-table-column fixed="right" label="操作" width="182"> |
|||
<template slot-scope="scope"> |
|||
<div class="flex"> |
|||
<el-button @click="handleServiceClick(scope.row)" type="text">服务列表</el-button> |
|||
<el-button @click="handleSetClick(scope.row)" type="text">站点设置</el-button> |
|||
</div> |
|||
</template> |
|||
</el-table-column> |
|||
</el-table> |
|||
<!-- <el-pagination background @size-change='handleSizeChange' @current-change='handleCurrentChange'--> |
|||
<!-- :current-page="currentPage" :page-size=pageSize layout="prev, pager, next,jumper"--> |
|||
<!-- :total="tableData.length">--> |
|||
<!-- </el-pagination>--> |
|||
</el-form> |
|||
</div> |
|||
<GuipDialog type="normal" width="396px" :dialogVisible="addGroupVisiable" title="温馨提示" :show-close-button="false" |
|||
:show-cancel-button="true" cancelText="取消" confirmText="确定" @confirm="handleConfirmAddGroup" @cancel="handleCancelAddGroup" |
|||
@dialogVisibleChange="dialogVisibleChange"> |
|||
<el-input ref="GuipInput" width="252px" v-model="groupName" label="分组名称" placeholder="请输入名称" /> |
|||
</GuipDialog> |
|||
<Footer></Footer> |
|||
</div> |
|||
</template> |
|||
<script> |
|||
import Footer from '@/components/Footer.vue'; |
|||
// import GuipInput from '@/components/GuipInput.vue'; |
|||
import GuipButton from '@/components/GuipButton.vue'; |
|||
// import GuipSelect from '@/components/GuipSelect.vue'; |
|||
import GuipSelectFilter from '@/components/GuipSelectFilter.vue'; |
|||
import GuipDialog from '@/components/GuipDialog.vue'; |
|||
// import SearchableSelect from '@/components/GuipSelectFilter1.vue'; |
|||
// import GuipSelectFilter2 from '@/components/GuipSelectFilter2.vue'; |
|||
// import SearchableSelect from '@/components/GuipSelectFilter2.vue' |
|||
export default { |
|||
name: 'sitelist', |
|||
components: { |
|||
// HelloWorld |
|||
// GuipInput, |
|||
GuipDialog, |
|||
GuipSelectFilter, |
|||
// SearchableSelect, |
|||
// GuipSelectFilter2, |
|||
// SearchableSelect, |
|||
// GuipSelect, |
|||
Footer, |
|||
GuipButton |
|||
}, |
|||
data() { |
|||
return { |
|||
searchText: '', |
|||
filteredOptions: this.options, |
|||
editingIndex: -1, |
|||
gid: 0,//分组id |
|||
groupName: '',//分组名称 |
|||
addGroupVisiable: false, |
|||
selectedValue: '', |
|||
fruitOptions: [ |
|||
{ label: '苹果', value: 'apple' }, |
|||
{ label: '香蕉', value: 'banana' }, |
|||
{ label: '橙子', value: 'orange' }, |
|||
{ label: '葡萄', value: 'grape' }, |
|||
{ label: '西瓜', value: 'watermelon' }, |
|||
{ label: '菠萝', value: 'pineapple' } |
|||
], |
|||
options: [ |
|||
{ label: '选项1', value: '1' }, |
|||
{ label: '选项2', value: '2' }, |
|||
{ label: '选项3', value: '3' }, |
|||
// 更多选项... |
|||
], |
|||
selectedValue1: '', |
|||
options1: [ |
|||
{ label: '苹果', value: '1' }, |
|||
{ label: '香蕉', value: '2' }, |
|||
{ label: '橙子', value: '22' }, |
|||
{ label: '葡萄', value: '13' }, |
|||
{ label: '西瓜', value: '31' }, |
|||
{ label: '菠萝', value: '32' }, |
|||
{ label: '菠萝1', value: '14' }, |
|||
{ label: '菠萝2', value: '15' }, |
|||
{ label: '菠萝21', value: '156' }, |
|||
{ label: '菠萝22', value: '24' }, |
|||
], |
|||
btnstyleObj_add: { |
|||
width: '90px', |
|||
height: '30px' |
|||
}, |
|||
tableData: [ |
|||
// { |
|||
// name: '哈哈哈', |
|||
// link: 'http://www.chachongz.com', |
|||
// registerDate: '2025.02.18', |
|||
// group: '1', |
|||
// phoneService: '撒大事', |
|||
// status: '1',//配置中中 |
|||
// }, |
|||
// { |
|||
// name: '知网学诚教育', |
|||
// link: 'http://new.checkcopy.com', |
|||
// registerDate: '2025.02.18', |
|||
// group: '2', |
|||
// phoneService: '设计部', |
|||
// status: '0',//运行中 |
|||
// }, |
|||
], |
|||
groupList: { |
|||
1: '内部测试', |
|||
2: '查重站点' |
|||
}, |
|||
phoneServicelist: |
|||
{ |
|||
0: '不限', |
|||
1: ' H5', |
|||
2: '小程序', |
|||
3: '无手机服务' |
|||
|
|||
}, |
|||
currentPage: 1, //当前页 |
|||
pageSize: 2, //每页的容量 |
|||
total: 0, //列表总数 |
|||
phoneService: [ |
|||
{ |
|||
text: '不限', |
|||
value: '0' |
|||
}, |
|||
{ |
|||
text: 'H5', |
|||
value: '1' |
|||
}, |
|||
{ |
|||
text: '小程序', |
|||
value: '2' |
|||
}, |
|||
{ |
|||
text: 'H5以及小程序', |
|||
value: '3' |
|||
}, |
|||
] |
|||
} |
|||
}, |
|||
mounted() { |
|||
const list = ['group', 'status'] |
|||
list.forEach(item => { |
|||
this.tableData = this.tableData.map(item1 => { |
|||
item1[item + '_popover'] = false |
|||
return { |
|||
...item1, |
|||
} |
|||
}) |
|||
}) |
|||
console.log(this.tableData, '000--'); |
|||
|
|||
this.getData() |
|||
}, |
|||
methods: { |
|||
getData() { |
|||
const that = this |
|||
that.tableData = [] |
|||
this.$http('POST', '/agentnew/ajax_get_site_list', { |
|||
gid: that.gid, |
|||
}).then(response => { |
|||
this.$nextTick(() => { |
|||
that.tableData = Object.values(response.data.sitelist); |
|||
}) |
|||
}).catch(error => { |
|||
console.error(error, 'error') |
|||
}) |
|||
}, |
|||
// 处理搜索输入 |
|||
handleSearch(keyword) { |
|||
console.log(keyword,'keyword---'); |
|||
if (this.filterMethod && typeof this.filterMethod === 'function') { |
|||
// 使用自定义筛选方法 |
|||
this.filteredOptions = this.filterMethod(keyword, this.options) |
|||
} else { |
|||
// 默认筛选方法 |
|||
if (!keyword) { |
|||
this.filteredOptions = this.options |
|||
} else { |
|||
const lowerKeyword = keyword.toLowerCase() |
|||
this.filteredOptions = this.options.filter(item => { |
|||
const label = item[this.labelKey] || '' |
|||
return label.toString().toLowerCase().includes(lowerKeyword) |
|||
}) |
|||
} |
|||
} |
|||
}, |
|||
startEditing(index) { |
|||
this.editingIndex = index |
|||
// 保存原始数据以便取消编辑时恢复 |
|||
this.originalData = JSON.parse(JSON.stringify(this.tableData[index])) |
|||
}, |
|||
|
|||
saveEditing() { |
|||
this.editingIndex = -1 |
|||
this.originalData = null |
|||
this.$message.success('保存成功') |
|||
}, |
|||
|
|||
cancelEditing() { |
|||
if (this.originalData) { |
|||
this.$set(this.tableData, this.editingIndex, this.originalData) |
|||
} |
|||
this.editingIndex = -1 |
|||
this.originalData = null |
|||
}, |
|||
|
|||
handleDepartmentChange(row, index) { |
|||
console.log('部门已修改:', index, row.department) |
|||
// 可以在这里添加部门变更后的逻辑 |
|||
}, |
|||
// 确认按钮事件 |
|||
handleConfirmAddGroup() { |
|||
this.$message.success('点击了确认按钮'); |
|||
this.addGroupVisiable = false; |
|||
}, |
|||
// 取消按钮事件 |
|||
handleCancelAddGroup() { |
|||
this.$message.warning('点击了取消按钮'); |
|||
this.addGroupVisiable = false; |
|||
}, |
|||
dialogVisibleChange(data) { |
|||
console.log(data, 'data098908090'); |
|||
}, |
|||
handleChange(value) { |
|||
console.log('选中值变化:', value) |
|||
}, |
|||
popshow() { |
|||
var ariaEls = document.querySelectorAll('.el-popover') |
|||
ariaEls.forEach((item) => { |
|||
item.removeAttribute('aria-hidden') |
|||
}) |
|||
|
|||
ariaEls = document.querySelectorAll('.el-radio__original') |
|||
ariaEls.forEach((item) => { |
|||
item.removeAttribute('aria-hidden') |
|||
}) |
|||
}, |
|||
random() { |
|||
var randomNumber = Math.random(); |
|||
return randomNumber |
|||
}, |
|||
handleSizeChange(val) { |
|||
this.pageSize = val |
|||
}, |
|||
handleCurrentChange(val) { |
|||
this.currentPage = val |
|||
}, |
|||
// 列筛选 |
|||
filterHandler(value, row, column) { |
|||
const property = column['property']; |
|||
return row[property] === value; |
|||
}, |
|||
handleSetClick(row) { |
|||
console.log(row); |
|||
}, |
|||
handleServiceClick(row) { |
|||
console.log(row); |
|||
}, |
|||
addGroup() { |
|||
// 新增分组 |
|||
}, |
|||
addSite() { |
|||
// 新增站点 |
|||
}, |
|||
// 自定义搜索筛选 |
|||
customFilter(keyword, options) { |
|||
if (!keyword) return options |
|||
return options.filter(item => { |
|||
// 自定义筛选逻辑 |
|||
return item.label.includes(keyword) || item.value.includes(keyword) |
|||
}) |
|||
}, |
|||
customFilter1(keyword, options) { |
|||
if (!keyword) return options |
|||
// 自定义筛选逻辑,比如同时匹配 label 和 value |
|||
return options.filter(item => { |
|||
return ( |
|||
item.label.includes(keyword) || |
|||
item.value.toString().includes(keyword) |
|||
) |
|||
}) |
|||
}, |
|||
handleFruitChange(value) { |
|||
console.log('水果选择变化:', value) |
|||
}, |
|||
// 气泡弹出框 |
|||
handlePriceClick(row, index, type) { |
|||
// 关闭其他行的弹框 |
|||
this.tableData.forEach((item, i) => { |
|||
if (i !== index) { |
|||
item[type + '_popover'] = false; |
|||
} |
|||
}); |
|||
// 打开当前行的弹框 |
|||
row[type + '_popover'] = true; |
|||
row['edit_' + type] = row[type] |
|||
// row.edit_price = row.price; // 初始化输入框的值 |
|||
}, |
|||
|
|||
} |
|||
} |
|||
</script> |
|||
<style lang="scss" scoped> |
|||
::v-deep .el-popover { |
|||
padding: 24px 32px !important; |
|||
} |
|||
|
|||
.siteList-wrap { |
|||
padding: 12px 12px 0; |
|||
width: 100%; |
|||
height: 100%; |
|||
box-sizing: border-box; |
|||
|
|||
.in_services { |
|||
color: #0DAF49; |
|||
} |
|||
|
|||
.in_config { |
|||
color: #FF4D4F; |
|||
} |
|||
|
|||
.addgroupBtn { |
|||
margin: 0 12px; |
|||
|
|||
img { |
|||
margin-right: 4px; |
|||
} |
|||
} |
|||
|
|||
.siteList-main { |
|||
flex: 1; |
|||
padding: 32px 36px; |
|||
border-radius: 4px; |
|||
box-sizing: border-box; |
|||
width: 100%; |
|||
background: #FFFFFF; |
|||
|
|||
.site-top { |
|||
margin-bottom: 32px; |
|||
|
|||
.left { |
|||
|
|||
h2 { |
|||
margin: 0; |
|||
} |
|||
} |
|||
} |
|||
|
|||
.statusList { |
|||
padding: 24px 32px; |
|||
|
|||
img { |
|||
margin-right: 8px; |
|||
} |
|||
|
|||
p { |
|||
display: flex; |
|||
align-items: center; |
|||
} |
|||
|
|||
letter-spacing: 0.08em; |
|||
color: #1E2226; |
|||
} |
|||
|
|||
.edit_icon { |
|||
width: 16px; |
|||
height: 16px; |
|||
display: none; |
|||
transition: all .3s; |
|||
margin-left: 8px; |
|||
} |
|||
|
|||
.name_link { |
|||
text-decoration: none; |
|||
color: #1E2226; |
|||
} |
|||
|
|||
.el-table__row:hover { |
|||
.edit_icon { |
|||
display: block; |
|||
transition: all .3s; |
|||
} |
|||
} |
|||
} |
|||
|
|||
} |
|||
</style> |
@ -1,508 +0,0 @@ |
|||
<template> |
|||
<div class="site-personal-wrap min-flex-right"> |
|||
<div class="siteMessage flex-common" id="siteMessage4"> |
|||
<h3>网页模板</h3> |
|||
<el-form ref="formRef"> |
|||
<div class="flex-wrap"> |
|||
<div class="flex-left"> |
|||
<div class="tem-home"> |
|||
<img class="tem-home-top" src="@/assets/register/tem-img-normal.png" alt=""> |
|||
<div class="tem-home-bottom"> |
|||
<b>经典深蓝模板(默认)</b> |
|||
<div> |
|||
<div class="tem-look" @click="lookTemImg"> |
|||
<img src="@/assets/register/look-tem.svg" alt=""> |
|||
预览 |
|||
</div> |
|||
<div @click="editTemImg"> |
|||
<img src="@/assets/register/edit-tem.svg" alt=""> |
|||
修改 |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<div class="flex-line borderNone"></div> |
|||
<div class="flex-right"></div> |
|||
</div> |
|||
</el-form> |
|||
<GroupFormBtns @cancel="cancelClick" @confirm="confirmClick('siteForm')" /> |
|||
</div> |
|||
<div class="siteMessage flex-common mt12" id="siteMessage5"> |
|||
<h3>在线客服</h3> |
|||
<el-form ref="formRef"> |
|||
<el-tabs v-model="activeName" @tab-click="handleClick"> |
|||
<p class="flex siteMessage5_desc"> <img src="@/assets/site/info_filled.svg" alt=""> |
|||
{{ textObj[activeName] }}</p> |
|||
<el-tab-pane label="网站客服" name="1"> |
|||
<div class="flex-wrap"> |
|||
<div class="flex-left"> |
|||
<p class="flex-left-desc">旺旺客服</p> |
|||
<GuipInput ref="GuipInput" class="mt12 mb24" width="98%" |
|||
v-model="personalForm8.checkNum" placeholder="请填写账号"> |
|||
</GuipInput> |
|||
<p class="flex-left-desc">QQ客服</p> |
|||
<div class="qqCode-wrap"> |
|||
<el-upload class="avatar-uploader mt12" accept=".jpg,.png" |
|||
action="https://jsonplaceholder.typicode.com/posts/" :show-file-list="false" |
|||
:on-success="handleAvatarSuccess" :before-upload="beforeAvatarUpload"> |
|||
<GuipButton type="ignore" :btnstyle="{width:'133px'}"> |
|||
<!-- <img src="@/assets/site/uploadIcon.svg" alt="" > --> |
|||
<div class="bgImg"></div> |
|||
上传二维码</GuipButton> |
|||
</el-upload> |
|||
<p class="avatar-desc">支持 jpg、png 格式,大小不超过 2MB </p> |
|||
</div> |
|||
</div> |
|||
<div class="flex-line"></div> |
|||
<div class="flex-right"> |
|||
<p class="flex-left-desc">微信客服</p> |
|||
<div class="flex mt12"> |
|||
<img v-if="imageUrl1" :src="imageUrl1" class="kefuImg"> |
|||
<img e-else src="@/assets/site/kefuTem.png" alt="" class="kefuImg"> |
|||
<div class="qqCode-wrap right"> |
|||
<el-upload class="avatar-uploader" accept=".jpg,.png" |
|||
action="https://jsonplaceholder.typicode.com/posts/" :show-file-list="false" |
|||
:on-success="handleAvatarSuccess" :before-upload="beforeAvatarUpload"> |
|||
<GuipButton type="ignore" :btnstyle="{width:'118px'}"> |
|||
<!-- <img src="@/assets/site/uploadIcon.svg" alt="" > --> |
|||
<div class="bgImg"></div> |
|||
重新上传 |
|||
</GuipButton> |
|||
</el-upload> |
|||
<p class="avatar-desc">支持 jpg、png 格式,大小不超过 2MB </p> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</el-tab-pane> |
|||
<el-tab-pane label="报告页客服" name="2"> |
|||
<div class="flex-wrap"> |
|||
<div class="flex-left"> |
|||
<p class="flex-left-desc">微信客服</p> |
|||
<div class="flex mt12"> |
|||
<img v-if="imageUrl2" :src="imageUrl2" class="kefuImg"> |
|||
<img e-else src="@/assets/site/kefuTem.png" alt="" class="kefuImg"> |
|||
<div class="qqCode-wrap right"> |
|||
<el-upload class="avatar-uploader" accept=".jpg,.png" |
|||
action="https://jsonplaceholder.typicode.com/posts/" :show-file-list="false" |
|||
:on-success="handleAvatarSuccess" :before-upload="beforeAvatarUpload"> |
|||
<GuipButton type="ignore" :btnstyle="{width:'118px'}"> |
|||
<!-- <img src="@/assets/site/uploadIcon.svg" alt="" > --> |
|||
<div class="bgImg"></div> |
|||
重新上传 |
|||
</GuipButton> |
|||
</el-upload> |
|||
<p class="avatar-desc">支持 jpg、png 格式,大小不超过 2MB </p> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<div class="flex-line borderNone"></div> |
|||
<div class="flex-right"></div> |
|||
</div> |
|||
|
|||
</el-tab-pane> |
|||
<el-tab-pane label="支付账单客服" name="3"> |
|||
<div class="flex-wrap"> |
|||
<div class="flex-left"> |
|||
<p class="flex-left-desc">客服微信号</p> |
|||
<GuipInput ref="GuipInput" class="mt12 mb24" width="100%" |
|||
v-model="personalForm8.checkNum1" placeholder="请填写"> |
|||
</GuipInput> |
|||
</div> |
|||
<div class="flex-line borderNone"></div> |
|||
<div class="flex-right"></div> |
|||
</div> |
|||
</el-tab-pane> |
|||
</el-tabs> |
|||
|
|||
|
|||
</el-form> |
|||
<GroupFormBtns @cancel="cancelClick" @confirm="confirmClick('siteForm')" /> |
|||
</div> |
|||
<div class="siteMessage flex-common mt12" id="siteMessage6"> |
|||
<h3>功能显隐</h3> |
|||
<el-form :model="personalForm3" ref="formRef"> |
|||
<div class="flex-wrap"> |
|||
<div class="flex-left"> |
|||
<p class="flex-left-desc">价格显隐</p> |
|||
<div class="left-pay-list mb24"> |
|||
<div class="left-pay-item "> |
|||
<div class="flex-between"> |
|||
<span class="flex">服务列表页价格 |
|||
<GuipToolTip content="----居中----"> |
|||
<img style="margin-left: 13px;" src="@/assets/site/form_qua_ic.svg" alt=""> |
|||
</GuipToolTip> |
|||
</span> |
|||
<GuipSwitch :modelValue="personalForm3.weixinFlag1" activeText="显示" |
|||
inactiveText="隐藏" @change="onSwitchChange"> |
|||
</GuipSwitch> |
|||
</div> |
|||
</div> |
|||
<div class="left-pay-item "> |
|||
<div class="flex-between"> |
|||
<span class="flex">服务提交页价格 |
|||
<GuipToolTip content="----居中----"> |
|||
<img style="margin-left: 13px;" src="@/assets/site/form_qua_ic.svg" alt=""> |
|||
</GuipToolTip> |
|||
</span> |
|||
<GuipSwitch :modelValue="personalForm3.weixinFlag2" activeText="显示" |
|||
inactiveText="隐藏" @change="onSwitchChange"> |
|||
</GuipSwitch> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<div class="flex-line"></div> |
|||
<div class="flex-right"> |
|||
<p class="flex-left-desc">报告与真伪查询</p> |
|||
<div class="left-pay-list mb24"> |
|||
<div class="left-pay-item "> |
|||
<div class="flex-between"> |
|||
<span class="flex">服务列表页价格 |
|||
<GuipToolTip content="----居中----"> |
|||
<img style="margin-left: 13px;" src="@/assets/site/form_qua_ic.svg" alt=""> |
|||
</GuipToolTip> |
|||
</span> |
|||
<GuipSwitch :modelValue="personalForm3.weixinFlag3" activeText="显示" |
|||
inactiveText="隐藏" @change="onSwitchChange"> |
|||
</GuipSwitch> |
|||
</div> |
|||
</div> |
|||
<div class="left-pay-item "> |
|||
<div class="flex-between"> |
|||
<span class="flex">服务提交页价格 |
|||
<GuipToolTip content="----居中----"> |
|||
<img style="margin-left: 13px;" src="@/assets/site/form_qua_ic.svg" alt=""> |
|||
</GuipToolTip> |
|||
</span> |
|||
<GuipSwitch :modelValue="personalForm3.weixinFlag4" activeText="显示" |
|||
inactiveText="隐藏" @change="onSwitchChange"> |
|||
</GuipSwitch> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</el-form> |
|||
<GroupFormBtns @cancel="cancelClick" @confirm="confirmClick('personalForm3')" /> |
|||
</div> |
|||
<div class="siteMessage flex-common mt12" id="siteMessage7"> |
|||
<h3>安全提交</h3> |
|||
<el-form :model="personalForm7" ref="formRef"> |
|||
<div class="flex-wrap"> |
|||
<div class="flex-left"> |
|||
<p class="flex-left-desc">查重服务</p> |
|||
<div class="left-pay-list mb24"> |
|||
<div class="left-pay-item "> |
|||
<div class="flex-between"> |
|||
<span>60分钟内不可提交重复内容</span> |
|||
<GuipSwitch :modelValue="personalForm3.weixinFlag1" activeText="显示" |
|||
inactiveText="隐藏" @change="onSwitchChange"> |
|||
</GuipSwitch> |
|||
</div> |
|||
<el-checkbox-group v-model="checkList" class="checkboxGroup"> |
|||
<el-checkbox label="识别重复标题"></el-checkbox> |
|||
<el-checkbox label="识别重复作者"></el-checkbox> |
|||
<el-checkbox label="识别重复正文"></el-checkbox> |
|||
</el-checkbox-group> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<div class="flex-line"></div> |
|||
<div class="flex-right"> |
|||
<p class="flex-left-desc">AI服务</p> |
|||
<div class="left-pay-list mb24"> |
|||
<div class="left-pay-item "> |
|||
<div class="flex-between"> |
|||
<span>3分钟内不可提交重复内容</span> |
|||
<GuipSwitch :modelValue="personalForm3.weixinFlag3" activeText="显示" |
|||
inactiveText="隐藏" @change="onSwitchChange"> |
|||
</GuipSwitch> |
|||
</div> |
|||
<el-checkbox-group v-model="checkList1" class="checkboxGroup"> |
|||
<el-checkbox label="识别重复标题"></el-checkbox> |
|||
<el-checkbox label="识别重复辅助信息"></el-checkbox> |
|||
</el-checkbox-group> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</el-form> |
|||
<GroupFormBtns @cancel="cancelClick" @confirm="confirmClick('personalForm7')" /> |
|||
</div> |
|||
<div class="siteMessage flex-common mt12" id="siteMessage8"> |
|||
<h3>初始订单数 <span>设定检测基数,首页显示检测数量时,显示三个月内实际数值+该数值</span></h3> |
|||
<el-form :model="personalForm8" ref="formRef"> |
|||
<div class="flex-wrap"> |
|||
<div class="flex-left"> |
|||
<p class="flex-left-desc">检测篇数基数</p> |
|||
<GuipInput ref="GuipInput" class="mt12" width="100%" v-model="personalForm8.checkNum" placeholder="请输入数字"> |
|||
</GuipInput> |
|||
</div> |
|||
<div class="flex-line borderNone"></div> |
|||
<div class="flex-right"></div> |
|||
</div> |
|||
</el-form> |
|||
<GroupFormBtns @cancel="cancelClick" @confirm="confirmClick('personalForm8')" /> |
|||
</div> |
|||
</div> |
|||
</template> |
|||
<script> |
|||
import GuipInput from '@/components/GuipInput.vue'; |
|||
import { mapState } from 'vuex'; |
|||
import store from '../store'; |
|||
import GuipSwitch from '@/components/GuipSwitch.vue'; |
|||
import GuipToolTip from '@/components/GuipToolTip.vue'; |
|||
import GuipButton from '@/components/GuipButton.vue'; |
|||
import GroupFormBtns from '@/components/GroupFormBtns.vue'; |
|||
|
|||
export default { |
|||
// 站点设置 |
|||
name: '', |
|||
props: [''], |
|||
components: { |
|||
GuipInput, |
|||
GuipButton, |
|||
GuipSwitch, |
|||
GuipToolTip, |
|||
GroupFormBtns |
|||
}, |
|||
data() { |
|||
return { |
|||
textObj: { |
|||
'1': '展示在网站右侧悬浮栏的客服,请至少设置1个', |
|||
'2': '展示在报告页右侧悬浮栏的客服,请至少设置1个', |
|||
'3': '显示在微信、支付宝账单详情中,方便用户联系' |
|||
}, |
|||
activeName: '1', |
|||
checkList1: ['识别重复辅助信息'], |
|||
checkList: ['识别重复正文'], |
|||
// 在线客服 |
|||
personalForm3: { |
|||
weixinFlag1: false, |
|||
weixinFlag2: true, |
|||
weixinFlag3: true, |
|||
weixinFlag4: false |
|||
}, |
|||
personalForm7: { |
|||
weixinFlag3: true, |
|||
weixinFlag4: true, |
|||
}, |
|||
personalForm8: { |
|||
checkNum: 0, |
|||
}, |
|||
imageUrl1:'', |
|||
imageUrl2:'', |
|||
imageUrl3:'', |
|||
} |
|||
}, |
|||
computed: { |
|||
...mapState(['pageTitle']) // 从Vuex映射showSidebar状态到组件的计算属性中 |
|||
}, |
|||
created(){ |
|||
store.commit('SET_CUSTOMIZE', true); |
|||
store.commit('SET_SLIDER_MENU','siteSettingData'); |
|||
}, |
|||
mounted() { |
|||
store.commit('SET_PAGETITLE', '个性化设置'); |
|||
}, |
|||
methods: { |
|||
handleTabClick(tab, event) { |
|||
console.log(tab, event); |
|||
}, |
|||
lookTemImg() { |
|||
|
|||
}, |
|||
editTemImg() { |
|||
|
|||
}, |
|||
onSwitchChange(data) { |
|||
console.log(data, '---'); |
|||
}, |
|||
cancelClick() { |
|||
console.log('quxiao'); |
|||
}, |
|||
confirmClick(type) { |
|||
console.log(type, '确认'); |
|||
}, |
|||
// 上传图片 |
|||
handleAvatarSuccess(res, file) { |
|||
this.imageUrl1 = URL.createObjectURL(file.raw); |
|||
}, |
|||
beforeAvatarUpload(file) { |
|||
const isJPG = file.type === 'image/jpeg' || file.type === 'image/png'; |
|||
const isLt2M = file.size / 1024 / 1024 < 2; |
|||
|
|||
if (!isJPG) { |
|||
this.$message.error('上传头像图片只能是 JPG 或 PNG 格式!'); |
|||
} |
|||
if (!isLt2M) { |
|||
this.$message.error('上传头像图片大小不能超过 2MB!'); |
|||
} |
|||
return isJPG && isLt2M; |
|||
}, |
|||
handleClick(tab, event) { |
|||
console.log(tab, event); |
|||
} |
|||
} |
|||
} |
|||
</script> |
|||
<style lang="scss" scoped> |
|||
// ::v-deep .el-tabs__item.is-active { |
|||
// letter-spacing: 0.08em; |
|||
// /* main/main_stardard */ |
|||
// color: #006AFF; |
|||
// font-weight: bold; |
|||
// } |
|||
|
|||
// ::v-deep .el-tabs__nav-wrap::after { |
|||
// content: none; |
|||
// } |
|||
|
|||
::v-deep .el-tabs__header { |
|||
margin-bottom: 0; |
|||
} |
|||
|
|||
.site-personal-wrap { |
|||
width: 100%; |
|||
|
|||
.siteMessage { |
|||
border-radius: 4px; |
|||
transition: all .5s; |
|||
border: 1px solid transparent; |
|||
} |
|||
|
|||
.siteMessage5_desc { |
|||
border-radius: 4px; |
|||
/* middle/middle_blue_1 */ |
|||
background: #F2F7FF; |
|||
/* middle/middle_blue_3 */ |
|||
border: 1px solid #BFDAFF; |
|||
padding: 8px 13px; |
|||
margin-bottom: 32px; |
|||
|
|||
img { |
|||
margin-right: 8px; |
|||
} |
|||
|
|||
} |
|||
|
|||
.checkboxGroup { |
|||
display: flex; |
|||
justify-content: flex-start; |
|||
margin-top: 18px; |
|||
padding: 10px 0; |
|||
} |
|||
|
|||
.tem-home { |
|||
width: 100%; |
|||
border-radius: 4px; |
|||
opacity: 1; |
|||
background: #FFFFFF; |
|||
/* middle/middle_line_1 */ |
|||
border: 1px solid #DFE2E6; |
|||
|
|||
.tem-home-top { |
|||
width: 100%; |
|||
} |
|||
|
|||
.tem-home-bottom { |
|||
display: flex; |
|||
align-items: center; |
|||
padding: 22px 32px; |
|||
justify-content: space-between; |
|||
|
|||
.tem-look { |
|||
margin-right: 36px; |
|||
} |
|||
|
|||
div { |
|||
display: flex; |
|||
align-items: center; |
|||
|
|||
img { |
|||
margin-right: 6px; |
|||
} |
|||
} |
|||
} |
|||
} |
|||
|
|||
.left-pay-list { |
|||
width: 100%; |
|||
border-radius: 4px; |
|||
opacity: 1; |
|||
|
|||
/* middle/middle_grey_0 */ |
|||
// span{ |
|||
// color: #23242B; |
|||
// } |
|||
.left-pay-item { |
|||
padding: 24px; |
|||
color: #23242B; |
|||
background: #FAFAFA; |
|||
margin-top: 12px; |
|||
|
|||
p { |
|||
text-align: left; |
|||
margin-top: 9px; |
|||
/* caption/caption_regular */ |
|||
font-size: 12px; |
|||
font-weight: normal; |
|||
line-height: 13px; |
|||
letter-spacing: 0.08em; |
|||
color: #626573; |
|||
} |
|||
|
|||
.el-form-item { |
|||
margin-bottom: 0; |
|||
} |
|||
} |
|||
} |
|||
|
|||
.kefuImg { |
|||
width: 120px; |
|||
height: 120px; |
|||
} |
|||
|
|||
.qqCode-wrap { |
|||
display: grid; |
|||
justify-items: start; |
|||
// justify-content: flex-start; |
|||
// text-align: left; |
|||
// flex-direction: column; |
|||
} |
|||
|
|||
.qqCode-wrap.right { |
|||
margin: 0 0 8px 12px; |
|||
} |
|||
|
|||
.avatar-desc { |
|||
/* regular/body3-Regular */ |
|||
/* 样式描述:辅助文字 */ |
|||
margin-top: 8px; |
|||
font-family: Inter; |
|||
font-size: 12px; |
|||
font-weight: normal; |
|||
line-height: 20px; |
|||
letter-spacing: normal; |
|||
font-variation-settings: "wght" 400; |
|||
/* Light/中性色 Neutral/Text/Regular */ |
|||
color: var(--el-color-text-regular); |
|||
/* #606266 */ |
|||
} |
|||
} |
|||
.avatar-uploader{ |
|||
.bgImg{ |
|||
width: 20px; |
|||
height: 16px; |
|||
margin-right: 6px; |
|||
background-image: url(../assets/site/uploadIcon.svg); |
|||
} |
|||
&:hover{ |
|||
.bgImg{ |
|||
background-image: url(../assets/site/uploadIcon_light.svg); |
|||
} |
|||
} |
|||
} |
|||
</style> |
@ -1,567 +0,0 @@ |
|||
<template> |
|||
<div class="site-sem-wrap min-flex-right"> |
|||
<div class="siteMessage flex-common" id="siteMessage11"> |
|||
<h3>搜索引擎优化(SEO) <span>通过SEO设置,可以免费获得流量、提高网站在搜索引擎中的排名</span></h3> |
|||
<el-form ref="formRef" :model="semForm1"> |
|||
<div class="flex-wrap"> |
|||
<div class="flex-left"> |
|||
<GuipFormItem column="column" class="mb24" label="站点标题(T:title)"> |
|||
<GuipInput slot="formDom" ref="GuipInput" class=" mb24" width="100%" |
|||
v-model="semForm1.title" placeholder="建议80字内"> |
|||
</GuipInput> |
|||
|
|||
</GuipFormItem> |
|||
<GuipFormItem column="column" label="站点关键词(K:keyword)"> |
|||
<GuipInput slot="formDom" ref="GuipInput" width="100%" height="68px" type="textarea" |
|||
v-model="semForm1.keyWord"> |
|||
</GuipInput> |
|||
</GuipFormItem> |
|||
</div> |
|||
<div class="flex-line "></div> |
|||
<div class="flex-right"> |
|||
<GuipFormItem column="column" label="站点描述(D:description)"> |
|||
<GuipInput slot="formDom" ref="GuipInput" width="100%" height="160px" type="textarea" |
|||
v-model="semForm1.desc"> |
|||
</GuipInput> |
|||
</GuipFormItem> |
|||
</div> |
|||
</div> |
|||
</el-form> |
|||
<GroupFormBtns @cancel="cancelClick" @confirm="confirmClick('semForm1')" /> |
|||
</div> |
|||
<div class="siteMessage flex-common mt12" id="siteMessage12"> |
|||
<h3>搜索引擎竞价(SEM) <span>通过SEM设置,获得流量、提高网站在搜索引擎中的排名</span></h3> |
|||
<el-form ref="baiduRef" class="bidform baidu-form" :model="semFormbid1" v-if="bidList.includes('baidu')"> |
|||
<div class="semBidWrap"> |
|||
<h3 class="flex-between"> |
|||
<p>百度OCPC竞价 <span>自动化的出价和优化,以实现更高的广告投放效果和ROI</span></p> |
|||
<div class="flex close-bid point" @click="deleteBid('baidu')">删除<img |
|||
src="@/assets/register/close.svg" alt=""></div> |
|||
</h3> |
|||
<div class="baidu-wrap bidWrap"> |
|||
<div class="bidwrap-item"> |
|||
<div class="bidwrap-item-top mb24 flex"> |
|||
<img class="bid-item-img" src="@/assets/site/step_1.png" alt=""> |
|||
<div class="top-right column"> |
|||
<b>输入Token</b> |
|||
<p>百度创建转化追踪:转化类型选择“服务购买成功”,接入方式选择“线索API”,复制token,填入下方输入框。<img |
|||
src="@/assets/site/form_qua_ic.svg" alt=""> 指南 </p> |
|||
</div> |
|||
</div> |
|||
<div class="bidwrap-item-bot flex"> |
|||
<div style="flex: 1;margin-right: 10px;"> |
|||
<GuipInput ref="GuipInput" width="100%" v-model="semFormbid1.token" |
|||
placeholder="请输入Token" /> |
|||
</div> |
|||
<GuipButton type="primary" :btnstyle="{ width: '94px', height: '38px' }" @click="semFormConmit('baidu','token')">确认</GuipButton> |
|||
</div> |
|||
</div> |
|||
<div class="bidwrap-item"> |
|||
<div class="bidwrap-item-top mb24 flex"> |
|||
<img class="bid-item-img" src="@/assets/site/step_2.png" alt=""> |
|||
<div class="top-right column"> |
|||
<b>联调创建OCPC</b> |
|||
<p>创建转化追踪后:点击该条记录的“联调”,复制带有bd-vid的推广url,复制到下方输入框,点击按钮开始联调。<img |
|||
src="@/assets/site/form_qua_ic.svg" alt=""> 指南 </p> |
|||
</div> |
|||
</div> |
|||
<div class="bidwrap-item-bot flex"> |
|||
<div style="flex: 1;margin-right: 10px;"> |
|||
<GuipInput ref="GuipInput" width="100%" v-model="semFormbid1.url" |
|||
placeholder="请输入url" /> |
|||
</div> |
|||
<GuipButton type="primary" :btnstyle="{ width: '94px', height: '38px' }" @click="semFormConmit('baidu','url')">开始联调 |
|||
</GuipButton> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</el-form> |
|||
<el-form class="bidform" ref="360Ref" :model="semFormbid2" v-if="bidList.includes('360')"> |
|||
<div class="semBidWrap"> |
|||
<h3 class="flex-between"> |
|||
<p>360OCPC竞价 <span>自动化的出价和优化,以实现更高的广告投放效果和ROI</span></p> |
|||
<div class="flex close-bid point" @click="deleteBid('360')">删除<img |
|||
src="@/assets/register/close.svg" alt=""></div> |
|||
</h3> |
|||
<div class="baidu-wrap bidWrap"> |
|||
<div class="beforeNotice"> |
|||
<h4 class="flex"> <img src="@/assets/site/siteSemInfo_Icon.svg" alt=""> 前期准备事项</h4> |
|||
<p class="mt12 flex">1. <a href="" class="flex"> <img |
|||
src="@/assets/site/form_linkActive.svg" alt="">前往登陆</a>登录360智慧平台</p> |
|||
<p class="mt10 flex">2. <a href="" class="flex"> <img |
|||
src="@/assets/site/form_linkActive.svg" |
|||
alt="">前往ocpc设置页</a>>点击“添加OCPC投放包”按钮。注意转换类型只能选择“订单”,其他的根据表单提示填写。</p> |
|||
</div> |
|||
<div class="bidwrap-item"> |
|||
<div class="column"> |
|||
<p class="common_title">AppKey 和 AppSecret </p> |
|||
<p class="common_text mt10 mb24" style="text-align: left;">点击前期准备事项第2步页面中的【投放说明】按钮,选择【API回传】,点击【获取Key&Secret】,将 AppKey 和 AppSecret 填入表中保存即可</p> |
|||
</div> |
|||
<div class="biditem360 mb24 flex"> |
|||
<img class="bid-item-img" src="@/assets/site/step_1.png" alt=""> |
|||
<b>AppKey</b> |
|||
<div style="flex: 1;margin-right: 10px;"> |
|||
<GuipInput ref="GuipInput" width="100%" v-model="semFormbid2.appKey" |
|||
placeholder="请输入" /> |
|||
</div> |
|||
<GuipButton type="primary" :btnstyle="{ width: '94px', height: '38px' }" |
|||
@click="semFormConmit('360','appKey')">确认</GuipButton> |
|||
</div> |
|||
<div class="biditem360 mb24 flex"> |
|||
<img class="bid-item-img" src="@/assets/site/step_2.png" alt=""> |
|||
<b>AppSecret</b> |
|||
<div style="flex: 1;margin-right: 10px;"> |
|||
<GuipInput ref="GuipInput" width="100%" v-model="semFormbid2.appSecret" |
|||
placeholder="请输入" /> |
|||
</div> |
|||
<GuipButton type="primary" :btnstyle="{ width: '94px', height: '38px' }" |
|||
@click="semFormConmit('360','appSecret')">确认</GuipButton> |
|||
</div> |
|||
|
|||
</div> |
|||
</div> |
|||
</div> |
|||
</el-form> |
|||
<el-form ref="formRef" class="bidform tcpr-wrap" :model="semFormbid3" v-if="bidList.includes('mast')"> |
|||
<div class="semBidWrap"> |
|||
<h3 class="flex-between"> |
|||
<p>必应TCPA竞价 <span>自动化的出价和优化,以实现更高的广告投放效果和ROI</span></p> |
|||
<div class="flex close-bid point" @click="deleteBid('360')">删除<img |
|||
src="@/assets/register/close.svg" alt=""></div> |
|||
</h3> |
|||
<div class="baidu-wrap bidWrap"> |
|||
<div class="beforeNotice"> |
|||
<h4 class="flex"> <img src="@/assets/site/siteSemInfo_Icon.svg" alt=""> 前期准备事项</h4> |
|||
<p class="mt12 flex"><i>1.</i> <a href="" class="flex"> <img |
|||
src="@/assets/site/form_linkActive.svg" alt="">前往微软云</a>(Azure),登录后填写个人资料并完成注册。 |
|||
</p> |
|||
<p class="mt10 flex"><i>2.</i> <a href="" class="flex"> <img |
|||
src="@/assets/site/form_linkActive.svg" |
|||
alt="">前往应用注册</a>,侧边栏点击“应用注册”,然后在右侧应用列表中注册应用程序</p> |
|||
<div> |
|||
<p>名称:填写应用名称</p> |
|||
<p>受支持的帐户类型:选择 任何组织目录(任何 Microsoft Entra ID 租户 - 多租户)中的帐户和个人 Microsoft 帐户(例如 Skype、Xbox)</p> |
|||
<p>重定向URI:忽略</p> |
|||
<p>点击:注册</p> |
|||
</div> |
|||
<p class="mt10"><i>3.</i> <span>应用配置,返回应用列表,在应用列表点击刚创建的应用,然后在应用概览页点击“添加重定向URI”->点击添加平台,选择移动和桌面应用程序->自定义重定向 URI, |
|||
<b>https://www.kuailelunwen.com/callback/microsoft_callback <img class="point" src="@/assets/site/form_copy.svg" alt=""></b></span> |
|||
|
|||
</p> |
|||
</div> |
|||
<div class="bidwrap-item"> |
|||
<div class="biditemMast mb12 flex-between"> |
|||
<div class="bidwrap-item-top flex"> |
|||
<img class="bid-item-img" src="@/assets/site/step_1.png" alt=""> |
|||
<div class="top-right column"> |
|||
<b>配置应用信息</b> |
|||
<p>在微软云平台,获得应用程序(客户端) ID。并联系开户人员,获得开发者令牌Developer token </p> |
|||
</div> |
|||
</div> |
|||
<div class="flex"> |
|||
<span :class="'yesSet'">已设置</span> |
|||
<GuipButton type="normal" :btnstyle="{ width: '126px', height: '38px' }" |
|||
@click="manageDialog('configAppInfo')">管理设置</GuipButton> |
|||
</div> |
|||
</div> |
|||
<div class="biditemMast mb12 flex-between"> |
|||
<div class="bidwrap-item-top flex"> |
|||
<img class="bid-item-img" src="@/assets/site/step_2.png" alt=""> |
|||
<div class="top-right column"> |
|||
<b>配置离线转化信息</b> |
|||
<p class="flex"><a href="" class="flex"> <img |
|||
src="@/assets/site/form_linkActive.svg" alt="">前往微软云</a>,左上角切换有效的账户,从浏览器地址栏链接中获取aid的值和cid的值</p> |
|||
</div> |
|||
</div> |
|||
<div class="flex"> |
|||
<span :class="'notSet'">未设置</span> |
|||
<GuipButton type="primary" :btnstyle="{ width: '126px', height: '38px' }" |
|||
@click="manageDialog('configOffline')">立即设置</GuipButton> |
|||
</div> |
|||
</div> |
|||
<div class="biditemMast mb12 flex-between"> |
|||
<div class="bidwrap-item-top flex"> |
|||
<img class="bid-item-img" src="@/assets/site/step_3.png" alt=""> |
|||
<div class="top-right column"> |
|||
<b>创建离线转化</b> |
|||
<p>在微软云平台创建离线转化,创建成功后2个小时才生效,转化数据查看最晚有5-6小时延迟。 </p> |
|||
</div> |
|||
</div> |
|||
<div class="flex"> |
|||
<span :class="'notSet'">未设置</span> |
|||
<GuipButton type="primary" :btnstyle="{ width: '126px', height: '38px' }" |
|||
@click="manageDialog('createOffline')">立即设置</GuipButton> |
|||
</div> |
|||
</div> |
|||
<div class="biditemMast flex-between"> |
|||
<div class="bidwrap-item-top flex"> |
|||
<img class="bid-item-img" src="@/assets/site/step_4.png" alt=""> |
|||
<div class="top-right column"> |
|||
<b>登陆微软云</b> |
|||
<p>确认前3步完成,点击右侧“登录”按钮,登录微软云。 </p> |
|||
</div> |
|||
</div> |
|||
<div class="flex"> |
|||
<GuipButton type="primary" :btnstyle="{ width: '126px', height: '38px' }" |
|||
@click="manageDialog('login')">登录</GuipButton> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</el-form> |
|||
<div class="addStore flex" @click="addBid"> |
|||
<div></div> |
|||
增加搜索竞价 |
|||
</div> |
|||
</div> |
|||
<div class="siteMessage flex-common mt12" id="siteMessage13"> |
|||
<h3>访问统计 <span>输入统计代码,便于统计浏览点击量(可以不填)</span></h3> |
|||
<el-form ref="formRef" :model="semForm3"> |
|||
<GuipInput ref="GuipInput" width="100%" height="160px" type="textarea" v-model="semForm3.code"> |
|||
</GuipInput> |
|||
</el-form> |
|||
<GroupFormBtns @cancel="cancelClick" @confirm="confirmClick('semForm3')" /> |
|||
</div> |
|||
<GuipDialog type="normal" width="457px" :dialogVisible="dialogVisibleBid" title="增加搜索竞价" :show-close-button="false" |
|||
:show-cancel-button="true" cancelText="取消" confirmText="确定" @confirm="handleConfirm" @cancel="handleCancel" |
|||
@dialogVisibleChange="dialogVisibleChange"> |
|||
<el-radio-group v-model="bidAddRadio" class=" mt12 column" @input="radioChange"> |
|||
<!-- <div style="margin-top: 16px;" class="column radio-wrap"> --> |
|||
<el-radio class="mb24" v-for="key in Object.keys(bidAddList)" :disabled="bidList.includes(key)" |
|||
:key="key" :label="key">{{ |
|||
bidAddList[key] }}{{ bidList.includes(key) ? '(已添加)' : '' }}</el-radio> |
|||
<!-- </div> --> |
|||
</el-radio-group> |
|||
</GuipDialog> |
|||
<GuipDialog type="normal" :dialogVisible="dialogVisibleConfig" :title="diaTitle" :show-close-button="false" |
|||
:show-cancel-button="true" cancelText="取消" confirmText="确定" @confirm="handleConfirmConfig" @cancel="handleCancelConfig" |
|||
@dialogVisibleChange="dialogVisibleChange"> |
|||
<ConfigOffLineConversion v-if="configType == 'configOffline'"/> |
|||
<ConfigAppInformation v-if="configType == 'configAppInfo'"/> |
|||
<CreateOffLine v-if="configType == 'createOffline'"/> |
|||
</GuipDialog> |
|||
</div> |
|||
|
|||
</template> |
|||
<script> |
|||
import GuipInput from '@/components/GuipInput.vue'; |
|||
import { mapState } from 'vuex'; |
|||
import store from '../store'; |
|||
// import GuipButton from '@/components/GuipButton.vue'; |
|||
import GroupFormBtns from '@/components/GroupFormBtns.vue'; |
|||
import GuipFormItem from '@/components/GuipFormItem.vue'; |
|||
import GuipDialog from '@/components/GuipDialog.vue'; |
|||
import GuipButton from '@/components/GuipButton.vue'; |
|||
import ConfigOffLineConversion from '@/components/site/ConfigOffLineConversion.vue'; |
|||
import ConfigAppInformation from '@/components/site/ConfigAppInformation.vue'; |
|||
import CreateOffLine from '@/components/site/CreateOffLine.vue'; |
|||
|
|||
export default { |
|||
// 站点设置 |
|||
name: '', |
|||
props: [''], |
|||
components: { |
|||
CreateOffLine, |
|||
ConfigAppInformation, |
|||
ConfigOffLineConversion, |
|||
GuipInput, |
|||
GuipFormItem, |
|||
GuipButton, |
|||
GroupFormBtns, |
|||
GuipDialog |
|||
}, |
|||
data() { |
|||
return { |
|||
configType:'configAppInfo', |
|||
diaTitle:'配置应用信息', |
|||
bidList: ['baidu', '360', 'mast'], |
|||
bidAddRadio: '', |
|||
bidAddList: { |
|||
'baidu': '百度OCPC竞价', |
|||
'360': '360OCPC竞价', |
|||
'mast': '必应TCPA竞价', |
|||
}, |
|||
configTitle:{ |
|||
createOffline:'创建离线转化', |
|||
configOffline:'配置离线转化信息', |
|||
configAppInfo:'配置应用信息', |
|||
}, |
|||
dialogVisibleBid: false, |
|||
dialogVisibleConfig: false, |
|||
semForm1: { |
|||
title: '', |
|||
keyWord: '', |
|||
desc: '' |
|||
}, |
|||
semForm2: { |
|||
title: '', |
|||
keyWord: '', |
|||
desc: '' |
|||
}, |
|||
semForm3: { |
|||
code: '', |
|||
}, |
|||
semFormbid1: { |
|||
token: '', |
|||
url: '' |
|||
|
|||
}, |
|||
semFormbid2: { |
|||
appKey: '', |
|||
appSecret: '' |
|||
}, |
|||
|
|||
semFormbid3: { |
|||
|
|||
} |
|||
} |
|||
}, |
|||
computed: { |
|||
...mapState(['pageTitle']) // 从Vuex映射showSidebar状态到组件的计算属性中 |
|||
}, |
|||
mounted() { |
|||
store.commit('SET_PAGETITLE', '营销推广'); |
|||
}, |
|||
methods: { |
|||
addBid() { |
|||
this.dialogVisibleBid = true; |
|||
}, |
|||
semFormConmit(type,key) { |
|||
console.log(key, 'key---'); |
|||
}, |
|||
radioChange(data) { |
|||
console.log(data, 'radio--data'); |
|||
}, |
|||
cancelClick() { |
|||
|
|||
console.log('quxiao'); |
|||
}, |
|||
confirmClick(type) { |
|||
console.log(type, '确认'); |
|||
}, |
|||
// 确认按钮事件 |
|||
handleConfirm() { |
|||
this.$message.success('点击了确认按钮'); |
|||
this.dialogVisibleBid = false; |
|||
}, |
|||
// 取消按钮事件 |
|||
handleCancel() { |
|||
this.$message.warning('点击了取消按钮'); |
|||
this.dialogVisibleBid = false; |
|||
}, |
|||
manageDialog(type){ |
|||
this.configType = type; |
|||
this.dialogVisibleConfig = true; |
|||
this.diaTitle = this.configTitle[type] |
|||
}, |
|||
// 确认按钮事件 |
|||
handleConfirmConfig() { |
|||
this.$message.success('点击了确认按钮'); |
|||
this.dialogVisibleConfig = false; |
|||
}, |
|||
// 取消按钮事件 |
|||
handleCancelConfig() { |
|||
this.$message.warning('点击了取消按钮'); |
|||
this.dialogVisibleConfig = false; |
|||
}, |
|||
dialogVisibleChange(data) { |
|||
console.log(data, 'data098908090'); |
|||
}, |
|||
deleteBid(type) { |
|||
let index = this.bidList.indexOf(type) |
|||
this.bidList.splice(index, index + 1) |
|||
} |
|||
} |
|||
} |
|||
|
|||
</script> |
|||
<style scoped lang="scss"> |
|||
.site-sem-wrap { |
|||
width: 100%; |
|||
letter-spacing: 0.08em; |
|||
} |
|||
|
|||
.notSet,.yesSet { |
|||
margin-right: 12px; |
|||
color: #FF4D4F; |
|||
} |
|||
|
|||
.yesSet { |
|||
color: #00C261; |
|||
} |
|||
.bidform { |
|||
&:nth-child(even) { |
|||
margin: 32px 0; |
|||
} |
|||
} |
|||
.baidu-form{ |
|||
.bidwrap-item{ |
|||
margin-bottom: 18px; |
|||
} |
|||
} |
|||
.beforeNotice { |
|||
|
|||
h4 { |
|||
margin: 0; |
|||
gap: 8px; |
|||
} |
|||
|
|||
margin-bottom: 18px; |
|||
text-align: left; |
|||
box-sizing: border-box; |
|||
padding: 20px 14px; |
|||
border-radius: 4px; |
|||
/* middle/middle_blue_1 */ |
|||
background: #F2F7FF; |
|||
/* middle/middle_blue_3 */ |
|||
border: 1px solid #BFDAFF; |
|||
div { |
|||
margin-top: 2px; |
|||
padding-left: 23px; |
|||
p{ |
|||
color: #8A9099; |
|||
} |
|||
|
|||
} |
|||
p{ |
|||
color: #1E2226; |
|||
i{ |
|||
font-style: normal; |
|||
} |
|||
&:last-child{ |
|||
display: flex; |
|||
align-items: stretch; |
|||
b{ |
|||
font-weight: normal; |
|||
color: #8A9099; |
|||
display: inline-flex; |
|||
img{ |
|||
margin-left: 4px; |
|||
} |
|||
} |
|||
} |
|||
} |
|||
a { |
|||
text-decoration: none; |
|||
color: #006AFF; |
|||
margin-right: 10px; |
|||
|
|||
img { |
|||
margin-left: 12px; |
|||
margin-right: 12px; |
|||
} |
|||
} |
|||
} |
|||
|
|||
.biditem360 { |
|||
b { |
|||
display: inline-block; |
|||
width: 80px; |
|||
text-align: left; |
|||
margin-right: 10px; |
|||
} |
|||
} |
|||
|
|||
.addStore { |
|||
margin-top: 24px; |
|||
// transition: all .3s; |
|||
// &:active{ |
|||
// opacity: 0.7; |
|||
// } |
|||
// div{ |
|||
// width: 16px; |
|||
// height: 16px; |
|||
// background-image: url(../assets/addIcon.svg); |
|||
// margin-right: 12px; |
|||
// } |
|||
// &:hover{ |
|||
// div{ |
|||
// background-image: url(../assets/addIcon_light.svg); |
|||
// } |
|||
// border-color: #006AFF; |
|||
// color: #006AFF; |
|||
// } |
|||
} |
|||
|
|||
.radio-wrap {} |
|||
.tcpr-wrap { |
|||
.bidwrap-item{ |
|||
padding: 0 !important; |
|||
background: transparent !important; |
|||
.biditemMast{ |
|||
background: #fff; |
|||
padding: 24px 16px; |
|||
} |
|||
} |
|||
.semBidWrap{ |
|||
padding-bottom: 24rpx; |
|||
} |
|||
} |
|||
.semBidWrap { |
|||
background: #FAFAFA; |
|||
padding: 18px 14px; |
|||
box-sizing: border-box; |
|||
|
|||
.el-form-item { |
|||
margin-bottom: 0; |
|||
} |
|||
|
|||
.close-bid { |
|||
color: #626573; |
|||
font-size: 14px; |
|||
font-weight: normal; |
|||
transition: all .3s; |
|||
&:hover{ |
|||
opacity: 0.7; |
|||
} |
|||
|
|||
img { |
|||
width: 16px; |
|||
height: 16px; |
|||
margin-left: 6px; |
|||
} |
|||
} |
|||
|
|||
|
|||
.bidWrap { |
|||
.bidwrap-item { |
|||
padding: 24px 16px; |
|||
box-sizing: border-box; |
|||
border-radius: 8px; |
|||
background: #FFFFFF; |
|||
|
|||
|
|||
.bid-item-img { |
|||
width: 32px; |
|||
height: 32px; |
|||
margin-right: 22px; |
|||
} |
|||
|
|||
.bidwrap-item-top { |
|||
.top-right { |
|||
p { |
|||
margin-top: 10px; |
|||
} |
|||
a{ |
|||
text-decoration: none; |
|||
color: #006AFF; |
|||
img{ |
|||
margin-right: 10px; |
|||
} |
|||
} |
|||
} |
|||
} |
|||
|
|||
.bidwrap-item-bot { |
|||
padding-left: 54px; |
|||
justify-content: flex-end; |
|||
|
|||
} |
|||
|
|||
} |
|||
} |
|||
|
|||
} |
|||
</style> |
@ -1,70 +0,0 @@ |
|||
<template> |
|||
<div class="siteSetting-wrap"> |
|||
<!-- <SetLeftMenu /> --> |
|||
<SliderMenu :menuData="siteSettingData" :customize="true"></SliderMenu> |
|||
|
|||
<!--:menuList="menuList" :activeFloor="activeFloor" :curIndex="curIndex" --> |
|||
<!-- 主内容区域 --> |
|||
<main class="main-content" ref="scrollContainer" id="main-content"> |
|||
<!-- 面包屑 位置 --> |
|||
|
|||
<PageTitle v-if="path !='/siteSetting/siteSem'" className="min-flex-right"/> |
|||
|
|||
<router-view></router-view> |
|||
<Footer></Footer> |
|||
</main> |
|||
</div> |
|||
</template> |
|||
<script> |
|||
// import SiteBaseSetting from './SiteBaseSetting.vue'; |
|||
import PageTitle from '@/components/PageTitle.vue'; |
|||
import Footer from '@/components/Footer.vue'; |
|||
import { mapState } from 'vuex'; |
|||
|
|||
import SliderMenu from '@/components/SliderMenu.vue' |
|||
export default { |
|||
// 站点设置 |
|||
name: '', |
|||
props: [''], |
|||
components: { |
|||
PageTitle, |
|||
Footer, |
|||
SliderMenu, |
|||
// SiteBaseSetting |
|||
}, |
|||
data() { |
|||
return { |
|||
path:'' |
|||
} |
|||
}, |
|||
mounted(){ |
|||
this.path =this.$route.path; |
|||
console.log(this.$route.path,'090-9090'); |
|||
// this.$refs.scrollContainer.scrollTo(0) |
|||
}, |
|||
computed: { |
|||
...mapState(['siteSettingData']) // 从Vuex映射showSidebar状态到组件的计算属性中 |
|||
}, |
|||
methods: { |
|||
} |
|||
} |
|||
</script> |
|||
<style scoped lang="scss"> |
|||
.siteSetting-wrap { |
|||
display: flex; |
|||
height: calc(100vh - 62px); |
|||
overflow-y: auto; |
|||
} |
|||
|
|||
// .sidebar { |
|||
// width: 250px; |
|||
// background: #f5f5f5; |
|||
// padding: 20px; |
|||
// } |
|||
|
|||
.main-content { |
|||
flex: 1; |
|||
padding: 12px; |
|||
overflow-y: auto; |
|||
} |
|||
</style> |
Loading…
Reference in new issue