修复浏览器标题显示

This commit is contained in:
yulixing 2019-06-17 13:15:43 +08:00
parent acd7cdc432
commit c9b4fd2a01
5 changed files with 421 additions and 120 deletions

View File

@ -1,6 +1,6 @@
import defaultSettings from '@/settings' import defaultSettings from '@/settings'
const title = defaultSettings.title || 'Vue Admin Template' const title = defaultSettings.title || '金蚕运营平台'
export default function getPageTitle(pageTitle) { export default function getPageTitle(pageTitle) {
if (pageTitle) { if (pageTitle) {

View File

@ -28,7 +28,11 @@
<div class="form-box-bd"> <div class="form-box-bd">
<el-row :gutter="16"> <el-row :gutter="16">
<el-col :span="4"> <el-col :span="4">
<el-form-item prop="game_icon" class="uploader-box" label-width="0"> <el-form-item
prop="game_icon"
class="uploader-box"
label-width="0"
>
<el-upload <el-upload
class="uploader" class="uploader"
action="/api/common/upload" action="/api/common/upload"
@ -36,12 +40,20 @@
authorization: 'Bearer ' + token authorization: 'Bearer ' + token
}" }"
:show-file-list="false" :show-file-list="false"
:on-success="(res, file, fileList)=> {return uploadSuccess(res, file, fileList, 'base')}" :on-success="
(res, file, fileList) => {
return uploadSuccess(res, file, fileList, 'base')
}
"
:on-error="uploadErr" :on-error="uploadErr"
name="image-file" name="image-file"
:data="{ sub_path: '/game_icon/', file_type: 'game_icon' }" :data="{ sub_path: '/game_icon/', file_type: 'game_icon' }"
> >
<img v-if="baseForm.game_icon" :src="baseForm.game_icon" class="uploader-img"> <img
v-if="baseForm.game_icon"
:src="baseForm.game_icon"
class="uploader-img"
/>
<i v-else class="el-icon-plus uploader-icon" /> <i v-else class="el-icon-plus uploader-icon" />
</el-upload> </el-upload>
</el-form-item> </el-form-item>
@ -58,13 +70,30 @@
</el-form-item> </el-form-item>
<el-form-item label="游戏类型" prop="game_type"> <el-form-item label="游戏类型" prop="game_type">
<el-select v-model="baseForm.game_type" class="w100"> <el-select v-model="baseForm.game_type" class="w100">
<el-option v-for="(val, key) in gameTypes" :key="key" :label="val" :value="val"/> <el-option
v-for="(val, key) in gameTypes"
:key="key"
:label="val"
:value="val"
/>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item v-if="permEdit"> <el-form-item v-if="permEdit">
<el-button v-if="uid && uid !== 'new'" type="primary" @click="updateBaseForm">保存</el-button> <el-button
<el-button v-if="uid && uid !== 'new'" type="danger" @click="delBaseForm">删除</el-button> v-if="uid && uid !== 'new'"
<el-button v-else type="primary" @click="saveBaseForm">保存游戏</el-button> type="primary"
@click="updateBaseForm"
>保存</el-button
>
<el-button
v-if="uid && uid !== 'new'"
type="danger"
@click="delBaseForm"
>删除</el-button
>
<el-button v-else type="primary" @click="saveBaseForm"
>保存游戏</el-button
>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -82,18 +111,38 @@
class="form-box" class="form-box"
> >
<div class="form-box-hd"> <div class="form-box-hd">
<span>{{ `${item.platform.name}(${item.platform.platform_id})` }}</span> <span>{{
<svg-icon icon-class="close" class="icon-close" @click="delPlatform(index)"/> `${item.platform.name}(${item.platform.platform_id})`
}}</span>
<svg-icon
icon-class="close"
class="icon-close"
@click="delPlatform(index)"
/>
</div> </div>
<div class="form-box-bd"> <div class="form-box-bd">
<el-row :gutter="16"> <el-row :gutter="16">
<el-col :span="4"> <el-col :span="4">
<el-form-item prop="game_icon" class="uploader-box" label-width="0"> <el-form-item
prop="game_icon"
class="uploader-box"
label-width="0"
>
<el-upload <el-upload
class="uploader" class="uploader"
action="/api/common/upload" action="/api/common/upload"
:show-file-list="false" :show-file-list="false"
:on-success="(res, file, fileList)=> {return uploadSuccess(res, file, fileList, 'platform', index)}" :on-success="
(res, file, fileList) => {
return uploadSuccess(
res,
file,
fileList,
'platform',
index
)
}
"
:on-error="uploadErr" :on-error="uploadErr"
:headers="{ :headers="{
authorization: 'Bearer ' + token authorization: 'Bearer ' + token
@ -101,7 +150,11 @@
name="image-file" name="image-file"
:data="{ sub_path: '/game_icon/', file_type: 'game_icon' }" :data="{ sub_path: '/game_icon/', file_type: 'game_icon' }"
> >
<img v-if="item.game_icon" :src="item.game_icon" class="uploader-img"> <img
v-if="item.game_icon"
:src="item.game_icon"
class="uploader-img"
/>
<i v-else class="el-icon-plus uploader-icon" /> <i v-else class="el-icon-plus uploader-icon" />
</el-upload> </el-upload>
</el-form-item> </el-form-item>
@ -113,15 +166,26 @@
<el-form-item label="AppSecret" prop="app_secret"> <el-form-item label="AppSecret" prop="app_secret">
<el-input v-model="item.app_secret" /> <el-input v-model="item.app_secret" />
</el-form-item> </el-form-item>
<el-form-item v-if="item.ftp && item.ftp.ftp_user" label="FTP 账号"> <el-form-item
v-if="item.ftp && item.ftp.ftp_user"
label="FTP 账号"
>
<el-input v-model="item.ftp.ftp_user" disabled /> <el-input v-model="item.ftp.ftp_user" disabled />
</el-form-item> </el-form-item>
<el-form-item v-if="item.ftp && item.ftp.ftp_pass" label="FTP 密码"> <el-form-item
v-if="item.ftp && item.ftp.ftp_pass"
label="FTP 密码"
>
<el-input v-model="item.ftp.ftp_pass" disabled /> <el-input v-model="item.ftp.ftp_pass" disabled />
</el-form-item> </el-form-item>
<el-form-item label="状态" prop="status"> <el-form-item label="状态" prop="status">
<el-select v-model="item.status" class="w100"> <el-select v-model="item.status" class="w100">
<el-option v-for="(val, key) in status" :key="key" :label="val" :value="val"/> <el-option
v-for="(val, key) in status"
:key="key"
:label="val"
:value="val"
/>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="点击数" prop="click_count"> <el-form-item label="点击数" prop="click_count">
@ -140,28 +204,51 @@
v-if="item.ftp && item.ftp.ftp_user" v-if="item.ftp && item.ftp.ftp_user"
type="primary" type="primary"
@click="publishCfg(index)" @click="publishCfg(index)"
>发布</el-button> >发布</el-button
>
<el-button <el-button
v-if="item.ftp && item.ftp.ftp_user && permEdit" v-if="item.ftp && item.ftp.ftp_user && permEdit"
@click="goSettings(index)" @click="goSettings(index)"
>配置</el-button> >配置</el-button
>
<el-button <el-button
v-if="!item.ftp || !item.ftp.ftp_user" v-if="!item.ftp || !item.ftp.ftp_user"
type="primary" type="primary"
@click="createFtp(index)" @click="createFtp(index)"
>创建账号</el-button> >创建账号</el-button
>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
</div> </div>
</el-form> </el-form>
<el-button v-show="uid && uid !== 'new'" v-if="permEdit" class="w100" @click="openModal">添加新平台</el-button> <el-button
v-show="uid && uid !== 'new'"
v-if="permEdit"
class="w100"
@click="openModal"
>添加新平台</el-button
>
</div> </div>
<!-- modal --> <!-- modal -->
<el-dialog title="选择平台" :visible.sync="modalVisible" width="30%" :before-close="closeModal"> <el-dialog
title="选择平台"
:visible.sync="modalVisible"
width="30%"
:before-close="closeModal"
>
<el-form ref="modalForm" :rules="modalFormRules" :model="modalForm"> <el-form ref="modalForm" :rules="modalFormRules" :model="modalForm">
<el-select v-model="modalForm.platform" class="w100" value-key="platform_id"> <el-select
<el-option v-for="item in platforms" :key="item._id" :label="item.name" :value="item"/> v-model="modalForm.platform"
class="w100"
value-key="platform_id"
>
<el-option
v-for="item in platforms"
:key="item._id"
:label="item.name"
:value="item"
/>
</el-select> </el-select>
</el-form> </el-form>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
@ -186,6 +273,7 @@ import {
import { mapGetters } from 'vuex' import { mapGetters } from 'vuex'
import { exists } from 'fs' import { exists } from 'fs'
import { getToken } from '@/utils/auth' import { getToken } from '@/utils/auth'
import getPageTitle from '@/utils/get-page-title'
export default { export default {
name: 'GameDetailsInfo', name: 'GameDetailsInfo',
@ -287,6 +375,7 @@ export default {
this.getGameInfo() this.getGameInfo()
} else { } else {
this.$route.meta.title = '新建游戏' this.$route.meta.title = '新建游戏'
document.title = getPageTitle('新建游戏')
} }
getGameList() getGameList()
.then(res => { .then(res => {
@ -310,6 +399,7 @@ export default {
this.baseForm = this.gameInfo this.baseForm = this.gameInfo
this.platformForm = this.gameInfo.platforms this.platformForm = this.gameInfo.platforms
this.$route.meta.title = this.baseForm.game_name this.$route.meta.title = this.baseForm.game_name
document.title = getPageTitle(this.baseForm.game_name)
} }
}) })
.catch(err => { .catch(err => {

View File

@ -3,15 +3,27 @@
<el-row> <el-row>
<el-col :span="14" class="p-r"> <el-col :span="14" class="p-r">
<div class="al-c"> <div class="al-c">
<h3 class="fw-500">配置详情 - {{ type === 'normal' ? '普通配置' : '私有配置' }}</h3> <h3 class="fw-500">
<span class="dis-b al-c mgb-20" style="color: #E6A23C">{{ tip }}</span> 配置详情 - {{ type === 'normal' ? '普通配置' : '私有配置' }}
</h3>
<span class="dis-b al-c mgb-20" style="color: #E6A23C">{{
tip
}}</span>
</div> </div>
<el-form ref="settingForm" label-width="120px" :model="settingsForm"> <el-form ref="settingForm" label-width="120px" :model="settingsForm">
<el-form-item label="游戏"> <el-form-item label="游戏">
<el-input v-model="gameInfo.game_name" style="width: 70%" disabled/> <el-input
v-model="gameInfo.game_name"
style="width: 70%"
disabled
/>
</el-form-item> </el-form-item>
<el-form-item label="平台"> <el-form-item label="平台">
<el-select v-model="platform_id" style="width: 70%" @change="changePlatform"> <el-select
v-model="platform_id"
style="width: 70%"
@change="changePlatform"
>
<el-option <el-option
v-for="item in platformsArr" v-for="item in platformsArr"
:key="item.platform.platform_id" :key="item.platform.platform_id"
@ -25,7 +37,11 @@
:key="index" :key="index"
:label="`${item.title}`" :label="`${item.title}`"
:prop="`settings[${index}].value`" :prop="`settings[${index}].value`"
:rules="{required: true, message: '配置内容不能为空', trigger: 'blur'}" :rules="{
required: true,
message: '配置内容不能为空',
trigger: 'blur'
}"
> >
<div v-if="item.type === 'bool'"> <div v-if="item.type === 'bool'">
<el-switch <el-switch
@ -36,19 +52,46 @@
/> />
</div> </div>
<div v-else-if="item.type === 'string'"> <div v-else-if="item.type === 'string'">
<el-input v-model="item.value" style="width: 70%" @change="changTip"/> <el-input
<el-button type="primary" @click="openEditor(index)">json</el-button> v-model="item.value"
style="width: 70%"
@change="changTip"
/>
<el-button type="primary" @click="openEditor(index)"
>json</el-button
>
</div> </div>
<div v-else> <div v-else>
<el-input v-model="item.value" style="width: 70%" @change="changTip"/> <el-input
v-model="item.value"
style="width: 70%"
@change="changTip"
/>
</div> </div>
</el-form-item> </el-form-item>
</template> </template>
<div v-if="settingsForm.settings.length === 0" class="al-c mgt-20 mgb-20">暂无配置项</div> <div
v-if="settingsForm.settings.length === 0"
class="al-c mgt-20 mgb-20"
>
暂无配置项
</div>
<el-form-item> <el-form-item>
<el-button v-if="permEdit && this.platform_id " type="warning" @click="save">保存</el-button> <el-button
<el-button v-if="permPublish && this.platform_id " type="primary" @click="publish">发布</el-button> v-if="permEdit && this.platform_id"
<el-button v-if="permEdit && this.platform_id " @click="reset">重置</el-button> type="warning"
@click="save"
>保存</el-button
>
<el-button
v-if="permPublish && this.platform_id"
type="primary"
@click="publish"
>发布</el-button
>
<el-button v-if="permEdit && this.platform_id" @click="reset"
>重置</el-button
>
</el-form-item> </el-form-item>
</el-form> </el-form>
@ -77,14 +120,21 @@
/> />
</el-select> </el-select>
<div class="btn-group"> <div class="btn-group">
<el-button type="success" size="small" @click="addSetting" v-if="permEdit">添加新的配置项</el-button> <el-button
type="success"
size="small"
@click="addSetting"
v-if="permEdit"
>添加新的配置项</el-button
>
<el-button <el-button
v-show="selectedSettings.length > 0" v-show="selectedSettings.length > 0"
type="danger" type="danger"
size="small" size="small"
@click="clearSettings" @click="clearSettings"
v-if="permEdit" v-if="permEdit"
>清空</el-button> >清空</el-button
>
</div> </div>
</div> </div>
</el-col> </el-col>
@ -126,7 +176,11 @@
<span class="ipt-tip">该值写入redis并传入客户端请谨慎填写</span> <span class="ipt-tip">该值写入redis并传入客户端请谨慎填写</span>
</el-form-item> </el-form-item>
<el-form-item label="值类型" prop="value.type"> <el-form-item label="值类型" prop="value.type">
<el-select v-model="newSettingForm.value.type" placeholder="请选择值类型" style="width: 100%"> <el-select
v-model="newSettingForm.value.type"
placeholder="请选择值类型"
style="width: 100%"
>
<el-option label="布尔值" value="bool" /> <el-option label="布尔值" value="bool" />
<el-option label="数值" value="num" /> <el-option label="数值" value="num" />
<el-option label="字符串" value="string" /> <el-option label="字符串" value="string" />
@ -154,6 +208,7 @@ import {
publishGameSettings, publishGameSettings,
saveSettingItem saveSettingItem
} from '@/api/settings' } from '@/api/settings'
import getPageTitle from '@/utils/get-page-title'
export default { export default {
name: 'SettingPanel', name: 'SettingPanel',
@ -240,6 +295,7 @@ export default {
this.gameInfo = data.gameInfo this.gameInfo = data.gameInfo
this.platformsArr = data.gameInfo.platforms this.platformsArr = data.gameInfo.platforms
this.$route.meta.title = this.gameInfo.game_name this.$route.meta.title = this.gameInfo.game_name
document.title = getPageTitle(this.gameInfo.game_name)
if (this.$route.query.platform_id) { if (this.$route.query.platform_id) {
this.platform_id = this.$route.query.platform_id this.platform_id = this.$route.query.platform_id
} else { } else {

View File

@ -24,17 +24,29 @@
:value="item.key" :value="item.key"
/> />
</el-select> </el-select>
<el-button v-if="permEdit" size="mini" @click="modalShareTypeVisible = true">编辑分享类型</el-button> <el-button
v-if="permEdit"
size="mini"
@click="modalShareTypeVisible = true"
>编辑分享类型</el-button
>
</el-form-item> </el-form-item>
<el-form-item label="默认分享" prop="default_share"> <el-form-item label="默认分享" prop="default_share">
<el-switch v-model="shareForm.default_share" /> <el-switch v-model="shareForm.default_share" />
<span <span class="ipt-tip"
class="ipt-tip" >设为默认分享, 那么在遇到该分享类型下没有满足条件的分享图,
>设为默认分享, 那么在遇到该分享类型下没有满足条件的分享图, 会使用该分享图, 一种分享类型下只能有一条默认分享记录. 将当前记录变成默认分享后, 将移除这个游戏同分享类型下其他分享图的默认分享属性</span> 会使用该分享图, 一种分享类型下只能有一条默认分享记录.
将当前记录变成默认分享后,
将移除这个游戏同分享类型下其他分享图的默认分享属性</span
>
</el-form-item> </el-form-item>
<el-form-item label="地域" prop="area"> <el-form-item label="地域" prop="area">
<el-select v-model="shareForm.area" placeholder="请选择地域" style="width: 100%"> <el-select
v-model="shareForm.area"
placeholder="请选择地域"
style="width: 100%"
>
<el-option label="不指定地域" value>不指定地域</el-option> <el-option label="不指定地域" value>不指定地域</el-option>
<el-option <el-option
v-for="(item, index) in areas" v-for="(item, index) in areas"
@ -43,7 +55,9 @@
:value="item._id" :value="item._id"
/> />
</el-select> </el-select>
<el-button v-if="permEdit" size="mini" @click="modalAreaVisible = true">编辑地域</el-button> <el-button v-if="permEdit" size="mini" @click="modalAreaVisible = true"
>编辑地域</el-button
>
</el-form-item> </el-form-item>
<el-form-item label="性别" prop="sex"> <el-form-item label="性别" prop="sex">
<el-radio-group v-model="shareForm.sex"> <el-radio-group v-model="shareForm.sex">
@ -62,7 +76,9 @@
</el-form-item> </el-form-item>
<el-form-item label="分享次数" prop="share_count"> <el-form-item label="分享次数" prop="share_count">
<el-input v-model.number="shareForm.share_count" /> <el-input v-model.number="shareForm.share_count" />
<span class="ipt-tip">分享首先的情况下, 分享n次后, 将切换成广告, 0代表不限次数</span> <span class="ipt-tip"
>分享首先的情况下, 分享n次后, 将切换成广告, 0代表不限次数</span
>
</el-form-item> </el-form-item>
<el-form-item label="分享组" prop="share_word"> <el-form-item label="分享组" prop="share_word">
<el-row <el-row
@ -75,7 +91,7 @@
> >
<el-col :span="2"> <el-col :span="2">
<div class="img-box"> <div class="img-box">
<img class="img img-fit" :src="item.share_image"> <img class="img img-fit" :src="item.share_image" />
</div> </div>
</el-col> </el-col>
<el-col :span="14"> <el-col :span="14">
@ -87,11 +103,20 @@
type="primary" type="primary"
size="mini" size="mini"
@click="editShareGroup(item, index)" @click="editShareGroup(item, index)"
>编辑</el-button> >编辑</el-button
<el-button v-if="permEdit" type="danger" size="mini" @click="delShareGroup(index)">删除</el-button> >
<el-button
v-if="permEdit"
type="danger"
size="mini"
@click="delShareGroup(index)"
>删除</el-button
>
</el-col> </el-col>
</el-row> </el-row>
<el-button v-if="permEdit" size="mini" @click="addShareGroup">添加分享语</el-button> <el-button v-if="permEdit" size="mini" @click="addShareGroup"
>添加分享语</el-button
>
</el-form-item> </el-form-item>
<div v-if="!onlyShare"> <div v-if="!onlyShare">
<el-form-item label="广告 ID" prop="ad_id"> <el-form-item label="广告 ID" prop="ad_id">
@ -99,7 +124,9 @@
</el-form-item> </el-form-item>
<el-form-item label="广告次数" prop="ad_count"> <el-form-item label="广告次数" prop="ad_count">
<el-input v-model.number="shareForm.ad_count" /> <el-input v-model.number="shareForm.ad_count" />
<span class="ipt-tip">广告首先的情况下, 最多播放广告n次后, 将切换成分享, 暂时无用</span> <span class="ipt-tip"
>广告首先的情况下, 最多播放广告n次后, 将切换成分享, 暂时无用</span
>
</el-form-item> </el-form-item>
<el-form-item label="广告播放间隔" prop="ad_cd"> <el-form-item label="广告播放间隔" prop="ad_cd">
<el-input v-model.number="shareForm.ad_cd" /> <el-input v-model.number="shareForm.ad_cd" />
@ -111,14 +138,27 @@
<el-input v-model="shareForm.comment" type="textarea" /> <el-input v-model="shareForm.comment" type="textarea" />
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button v-if="permEdit" type="primary" @click="submitForm('shareForm')">保存</el-button> <el-button
<el-button v-if="permEdit" @click="resetForm('shareForm')">重置</el-button> v-if="permEdit"
type="primary"
@click="submitForm('shareForm')"
>保存</el-button
>
<el-button v-if="permEdit" @click="resetForm('shareForm')"
>重置</el-button
>
<el-button @click="goBack">返回</el-button> <el-button @click="goBack">返回</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
<!-- Modal - 编辑分享类型 --> <!-- Modal - 编辑分享类型 -->
<el-dialog title="分享类型列表" :visible.sync="modalShareTypeVisible" width="35%"> <el-dialog
<el-button v-if="permEdit" type="primary" @click="addShareType">新增</el-button> title="分享类型列表"
:visible.sync="modalShareTypeVisible"
width="35%"
>
<el-button v-if="permEdit" type="primary" @click="addShareType"
>新增</el-button
>
<el-table <el-table
:data="shareTypes" :data="shareTypes"
style="width: 100%" style="width: 100%"
@ -126,12 +166,40 @@
height="350" height="350"
size="mini" size="mini"
> >
<el-table-column prop="key" label="key" show-overflow-tooltip sortable/> <el-table-column
<el-table-column prop="value" label="说明" show-overflow-tooltip sortable/> prop="key"
<el-table-column v-if="permEdit" prop="name" label="操作" fixed="right" width="126"> label="key"
show-overflow-tooltip
sortable
/>
<el-table-column
prop="value"
label="说明"
show-overflow-tooltip
sortable
/>
<el-table-column
v-if="permEdit"
prop="name"
label="操作"
fixed="right"
width="126"
>
<template slot-scope="scope"> <template slot-scope="scope">
<el-button v-if="permEdit" type="text" size="small" @click="editShareType(scope.row)">编辑</el-button> <el-button
<el-button v-if="permEdit" type="text" size="small" @click="delShareType(scope.row)">删除</el-button> v-if="permEdit"
type="text"
size="small"
@click="editShareType(scope.row)"
>编辑</el-button
>
<el-button
v-if="permEdit"
type="text"
size="small"
@click="delShareType(scope.row)"
>删除</el-button
>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -162,12 +230,16 @@
</el-form> </el-form>
<span slot="footer"> <span slot="footer">
<el-button @click="closeShareTypeEditModal"> </el-button> <el-button @click="closeShareTypeEditModal"> </el-button>
<el-button v-if="permEdit" type="primary" @click="saveShareType"> </el-button> <el-button v-if="permEdit" type="primary" @click="saveShareType"
> </el-button
>
</span> </span>
</el-dialog> </el-dialog>
<!-- Modal - 编辑地域 --> <!-- Modal - 编辑地域 -->
<el-dialog title="地域列表" :visible.sync="modalAreaVisible" width="35%"> <el-dialog title="地域列表" :visible.sync="modalAreaVisible" width="35%">
<el-button v-if="permEdit" type="primary" @click="addArea">新增</el-button> <el-button v-if="permEdit" type="primary" @click="addArea"
>新增</el-button
>
<el-table <el-table
:data="areas" :data="areas"
style="width: 100%" style="width: 100%"
@ -175,11 +247,34 @@
size="mini" size="mini"
height="350" height="350"
> >
<el-table-column prop="name" label="名称" show-overflow-tooltip sortable/> <el-table-column
<el-table-column v-if="permEdit" prop="name" label="操作" fixed="right" width="126"> prop="name"
label="名称"
show-overflow-tooltip
sortable
/>
<el-table-column
v-if="permEdit"
prop="name"
label="操作"
fixed="right"
width="126"
>
<template slot-scope="scope"> <template slot-scope="scope">
<el-button v-if="permEdit" type="text" size="small" @click="editArea(scope.row)">编辑</el-button> <el-button
<el-button v-if="permEdit" type="text" size="small" @click="delArea(scope.row)">删除</el-button> v-if="permEdit"
type="text"
size="small"
@click="editArea(scope.row)"
>编辑</el-button
>
<el-button
v-if="permEdit"
type="text"
size="small"
@click="delArea(scope.row)"
>删除</el-button
>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -195,7 +290,12 @@
:before-close="closeModalAreaEdit" :before-close="closeModalAreaEdit"
width="35%" width="35%"
> >
<el-form ref="areaForm" :model="areaForm" :rules="areaFormRules" label-width="50px"> <el-form
ref="areaForm"
:model="areaForm"
:rules="areaFormRules"
label-width="50px"
>
<el-form-item label="说明" prop="name"> <el-form-item label="说明" prop="name">
<el-input v-model="areaForm.name" /> <el-input v-model="areaForm.name" />
</el-form-item> </el-form-item>
@ -213,7 +313,9 @@
</el-form> </el-form>
<span slot="footer"> <span slot="footer">
<el-button @click="closeModalAreaEdit"> </el-button> <el-button @click="closeModalAreaEdit"> </el-button>
<el-button v-if="permEdit" type="primary" @click="saveArea"> </el-button> <el-button v-if="permEdit" type="primary" @click="saveArea"
> </el-button
>
</span> </span>
</el-dialog> </el-dialog>
<!-- Modal - 分享语 --> <!-- Modal - 分享语 -->
@ -249,7 +351,7 @@
v-if="shareGroupForm.share_image" v-if="shareGroupForm.share_image"
:src="shareGroupForm.share_image" :src="shareGroupForm.share_image"
class="uploader-img" class="uploader-img"
> />
<i v-else class="el-icon-plus uploader-icon" /> <i v-else class="el-icon-plus uploader-icon" />
</el-upload> </el-upload>
</el-form-item> </el-form-item>
@ -259,7 +361,9 @@
</el-form> </el-form>
<span slot="footer"> <span slot="footer">
<el-button @click="closeModalShareGroup"> </el-button> <el-button @click="closeModalShareGroup"> </el-button>
<el-button v-if="permEdit" type="primary" @click="saveShareGroup"> </el-button> <el-button v-if="permEdit" type="primary" @click="saveShareGroup"
> </el-button
>
</span> </span>
</el-dialog> </el-dialog>
</div> </div>
@ -279,6 +383,7 @@ import { getGame } from '@/api/games'
import { getRegions, saveArea, getAreas, delArea } from '@/api/common' import { getRegions, saveArea, getAreas, delArea } from '@/api/common'
import { getToken } from '@/utils/auth' import { getToken } from '@/utils/auth'
import { mapGetters } from 'vuex' import { mapGetters } from 'vuex'
import getPageTitle from '@/utils/get-page-title'
export default { export default {
name: 'GameDetailsShareEdit', name: 'GameDetailsShareEdit',
@ -421,6 +526,7 @@ export default {
this.gameInfo = data.gameInfo this.gameInfo = data.gameInfo
this.shareForm.game_id = this.gameInfo.game_id this.shareForm.game_id = this.gameInfo.game_id
this.$route.meta.title = this.gameInfo.game_name this.$route.meta.title = this.gameInfo.game_name
document.title = getPageTitle(this.gameInfo.game_name)
if (this.$route.query.id && this.$route.query.id !== 'new') { if (this.$route.query.id && this.$route.query.id !== 'new') {
this.getShare() this.getShare()
this.getShareList() this.getShareList()

View File

@ -28,8 +28,12 @@
<!-- toolbar --> <!-- toolbar -->
<div class="toolbar clearfix"> <div class="toolbar clearfix">
<div class="l fl"> <div class="l fl">
<el-button v-if="permEdit" type="primary" @click="addShare">新增</el-button> <el-button v-if="permEdit" type="primary" @click="addShare"
<el-button v-if="batch.show && permEdit" type="danger" @click="batchDel">批量删除</el-button> >新增</el-button
>
<el-button v-if="batch.show && permEdit" type="danger" @click="batchDel"
>批量删除</el-button
>
<el-button v-if="permEdit" @click="batchOpt">{{ batch.txt }}</el-button> <el-button v-if="permEdit" @click="batchOpt">{{ batch.txt }}</el-button>
</div> </div>
<div class="r fr"> <div class="r fr">
@ -46,8 +50,18 @@
@row-click="rowClick" @row-click="rowClick"
> >
<el-table-column v-if="batch.show" type="selection" width="55" /> <el-table-column v-if="batch.show" type="selection" width="55" />
<el-table-column prop="gameName" label="游戏" show-overflow-tooltip sortable/> <el-table-column
<el-table-column prop="typeName" label="分享类型" show-overflow-tooltip sortable/> prop="gameName"
label="游戏"
show-overflow-tooltip
sortable
/>
<el-table-column
prop="typeName"
label="分享类型"
show-overflow-tooltip
sortable
/>
<el-table-column <el-table-column
prop="type" prop="type"
label="类型" label="类型"
@ -55,13 +69,28 @@
sortable sortable
:formatter="formatType" :formatter="formatType"
/> />
<el-table-column label="分享图" show-overflow-tooltip sortable width="260"> <el-table-column
label="分享图"
show-overflow-tooltip
sortable
width="260"
>
<template slot-scope="scope"> <template slot-scope="scope">
<img :src="scope.row.share_image" width="30" height="30" style="vertical-align: middle"> <img
:src="scope.row.share_image"
width="30"
height="30"
style="vertical-align: middle"
/>
<span>{{ scope.row.share_word }}</span> <span>{{ scope.row.share_word }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="ad_id" label="广告ID" show-overflow-tooltip sortable/> <el-table-column
prop="ad_id"
label="广告ID"
show-overflow-tooltip
sortable
/>
<el-table-column <el-table-column
prop="default_share" prop="default_share"
label="默认分享" label="默认分享"
@ -76,11 +105,29 @@
sortable sortable
:formatter="formatArea" :formatter="formatArea"
/> />
<el-table-column prop="sex" label="性别" show-overflow-tooltip sortable :formatter="formatSex"/> <el-table-column
prop="sex"
label="性别"
show-overflow-tooltip
sortable
:formatter="formatSex"
/>
<el-table-column prop="name" label="操作" fixed="right" width="126"> <el-table-column prop="name" label="操作" fixed="right" width="126">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button v-if="permView" type="text" size="small" @click.stop="editShare(scope.row)">详情</el-button> <el-button
<el-button v-if="permEdit" type="text" size="small" @click.stop="delShare(scope.row)">删除</el-button> v-if="permView"
type="text"
size="small"
@click.stop="editShare(scope.row)"
>详情</el-button
>
<el-button
v-if="permEdit"
type="text"
size="small"
@click.stop="delShare(scope.row)"
>删除</el-button
>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -103,6 +150,7 @@
import { getShareList, getShareTypes, delShares } from '@/api/share' import { getShareList, getShareTypes, delShares } from '@/api/share'
import { getGame } from '@/api/games' import { getGame } from '@/api/games'
import { mapGetters } from 'vuex' import { mapGetters } from 'vuex'
import getPageTitle from '@/utils/get-page-title'
export default { export default {
name: 'GameDetailShare', name: 'GameDetailShare',
@ -164,6 +212,7 @@ export default {
if (data.errcode === 0) { if (data.errcode === 0) {
this.gameInfo = data.gameInfo this.gameInfo = data.gameInfo
this.$route.meta.title = this.gameInfo.game_name this.$route.meta.title = this.gameInfo.game_name
document.title = getPageTitle(this.gameInfo.game_name)
if (cb && cb instanceof Function) cb() if (cb && cb instanceof Function) cb()
} }
}) })